Skip to content

Commit 57ef29f

Browse files
committed
[OpenMP] Remove use of removed '-f[no-]openmp-new-driver' flag
The changes in D130020 removed all support for the old method of compiling OpenMP offloading programs. This means that `-fopenmp-new-driver` has no effect and `-fno-openmp-new-driver` does not work. This patch removes the use and documentation of this flag. Note that the `--offload-new-driver` flag still exists for using the new driver optionally with CUDA and HIP. Reviewed By: tra Differential Revision: https://reviews.llvm.org/D133367
1 parent f049b2c commit 57ef29f

File tree

4 files changed

+4
-14
lines changed

4 files changed

+4
-14
lines changed

clang/docs/ClangCommandLineReference.rst

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2181,10 +2181,6 @@ Enable all Clang extensions for OpenMP directives and clauses
21812181

21822182
Set rpath on OpenMP executables
21832183

2184-
.. option:: -fopenmp-new-driver
2185-
2186-
Use the new driver for OpenMP offloading.
2187-
21882184
.. option:: -fopenmp-offload-mandatory
21892185

21902186
Do not create a host fallback if offloading to the device fails.

clang/lib/Driver/Driver.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3902,9 +3902,7 @@ void Driver::BuildActions(Compilation &C, DerivedArgList &Args,
39023902
OffloadingActionBuilder OffloadBuilder(C, Args, Inputs);
39033903

39043904
bool UseNewOffloadingDriver =
3905-
(C.isOffloadingHostKind(Action::OFK_OpenMP) &&
3906-
Args.hasFlag(options::OPT_fopenmp_new_driver,
3907-
options::OPT_no_offload_new_driver, true)) ||
3905+
C.isOffloadingHostKind(Action::OFK_OpenMP) ||
39083906
Args.hasFlag(options::OPT_offload_new_driver,
39093907
options::OPT_no_offload_new_driver, false);
39103908

clang/lib/Driver/ToolChains/Clang.cpp

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4459,9 +4459,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
44594459
bool IsDeviceOffloadAction = !(JA.isDeviceOffloading(Action::OFK_None) ||
44604460
JA.isDeviceOffloading(Action::OFK_Host));
44614461
bool IsHostOffloadingAction =
4462-
(JA.isHostOffloading(Action::OFK_OpenMP) &&
4463-
Args.hasFlag(options::OPT_fopenmp_new_driver,
4464-
options::OPT_no_offload_new_driver, true)) ||
4462+
JA.isHostOffloading(Action::OFK_OpenMP) ||
44654463
(JA.isHostOffloading(C.getActiveOffloadKinds()) &&
44664464
Args.hasFlag(options::OPT_offload_new_driver,
44674465
options::OPT_no_offload_new_driver, false));
@@ -4762,9 +4760,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
47624760

47634761
if (IsUsingLTO) {
47644762
// Only AMDGPU supports device-side LTO.
4765-
if (IsDeviceOffloadAction &&
4766-
!Args.hasFlag(options::OPT_fopenmp_new_driver,
4767-
options::OPT_no_offload_new_driver, true) &&
4763+
if (IsDeviceOffloadAction && !JA.isHostOffloading(Action::OFK_OpenMP) &&
47684764
!Args.hasFlag(options::OPT_offload_new_driver,
47694765
options::OPT_no_offload_new_driver, false) &&
47704766
!Triple.isAMDGPU()) {

clang/test/Driver/amdgpu-openmp-toolchain.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,5 +49,5 @@
4949
// RUN: %clang -### --target=x86_64-unknown-linux-gnu -emit-llvm -S -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx803 -nogpulib %s 2>&1 | FileCheck %s --check-prefix=CHECK-EMIT-LLVM-IR
5050
// CHECK-EMIT-LLVM-IR: "-cc1" "-triple" "amdgcn-amd-amdhsa"{{.*}}"-emit-llvm"
5151

52-
// RUN: %clang -### -target x86_64-pc-linux-gnu -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx803 -lm --rocm-device-lib-path=%S/Inputs/rocm/amdgcn/bitcode -fopenmp-new-driver %s 2>&1 | FileCheck %s --check-prefix=CHECK-LIB-DEVICE-NEW
52+
// RUN: %clang -### -target x86_64-pc-linux-gnu -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx803 -lm --rocm-device-lib-path=%S/Inputs/rocm/amdgcn/bitcode %s 2>&1 | FileCheck %s --check-prefix=CHECK-LIB-DEVICE-NEW
5353
// CHECK-LIB-DEVICE-NEW: {{.*}}clang-linker-wrapper{{.*}}--bitcode-library=openmp-amdgcn-amd-amdhsa-gfx803={{.*}}ocml.bc"{{.*}}ockl.bc"{{.*}}oclc_daz_opt_on.bc"{{.*}}oclc_unsafe_math_off.bc"{{.*}}oclc_finite_only_off.bc"{{.*}}oclc_correctly_rounded_sqrt_on.bc"{{.*}}oclc_wavefrontsize64_on.bc"{{.*}}oclc_isa_version_803.bc"

0 commit comments

Comments
 (0)