mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-24 23:16:05 +00:00
parent
d77ccae4a6
commit
4f130fa943
@ -3545,6 +3545,7 @@ def fopenmp : Flag<["-"], "fopenmp">, Group<f_Group>,
|
||||
Visibility<[ClangOption, CC1Option, FlangOption, FC1Option]>,
|
||||
HelpText<"Parse OpenMP pragmas and generate parallel code.">;
|
||||
def fno_openmp : Flag<["-"], "fno-openmp">, Group<f_Group>,
|
||||
Visibility<[ClangOption, CC1Option, FlangOption, FC1Option]>,
|
||||
Flags<[NoArgumentUnused]>;
|
||||
class OpenMPVersionHelp<string program, string default> {
|
||||
string str = !strconcat(
|
||||
|
@ -968,7 +968,9 @@ static bool parseDialectArgs(CompilerInvocation &res, llvm::opt::ArgList &args,
|
||||
/// generated.
|
||||
static bool parseOpenMPArgs(CompilerInvocation &res, llvm::opt::ArgList &args,
|
||||
clang::DiagnosticsEngine &diags) {
|
||||
if (!args.hasArg(clang::driver::options::OPT_fopenmp))
|
||||
llvm::opt::Arg *arg = args.getLastArg(clang::driver::options::OPT_fopenmp,
|
||||
clang::driver::options::OPT_fno_openmp);
|
||||
if (!arg || arg->getOption().matches(clang::driver::options::OPT_fno_openmp))
|
||||
return true;
|
||||
|
||||
unsigned numErrorsBefore = diags.getNumErrors();
|
||||
|
12
flang/test/Driver/fno-openmp.f90
Normal file
12
flang/test/Driver/fno-openmp.f90
Normal file
@ -0,0 +1,12 @@
|
||||
! RUN: %flang_fc1 -fopenmp -fno-openmp %s -emit-hlfir -o - | FileCheck --check-prefix=CHECK-NO-OMP %s
|
||||
! RUN: %flang_fc1 -fno-openmp %s -emit-hlfir -o - | FileCheck --check-prefix=CHECK-NO-OMP %s
|
||||
! RUN: %flang_fc1 -fno-openmp -fopenmp %s -emit-hlfir -o - | FileCheck --check-prefix=CHECK-OMP %s
|
||||
! RUN: %flang_fc1 -fopenmp %s -emit-hlfir -o - | FileCheck --check-prefix=CHECK-OMP %s
|
||||
|
||||
subroutine main
|
||||
! CHECK-NO-OMP-NOT: omp.parallel
|
||||
! CHECK-OMP: omp.parallel
|
||||
!$omp parallel
|
||||
print *,"test"
|
||||
!$omp end parallel
|
||||
end subroutine
|
@ -11,6 +11,9 @@
|
||||
! RUN: %flang -target x86_64-windows-gnu -fopenmp=libgomp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-NO-OPENMP --check-prefix=CHECK-WARNING
|
||||
! RUN: %flang -target x86_64-windows-gnu -fopenmp=libiomp5 -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
|
||||
|
||||
!RUN: %flang -fno-openmp -fopenmp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-OPENMP
|
||||
!RUN: %flang -fopenmp -fno-openmp -c %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-FC1-NO-OPENMP
|
||||
|
||||
! CHECK-FC1-OPENMP: "-fc1"
|
||||
! CHECK-FC1-OPENMP: "-fopenmp"
|
||||
!
|
||||
@ -59,8 +62,14 @@
|
||||
! RUN: %flang -target x86_64-freebsd -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANY
|
||||
! RUN: %flang -target x86_64-windows-gnu -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANYMD
|
||||
!
|
||||
! RUN: %flang -target x86_64-linux-gnu -fno-openmp -fopenmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-LD-ANY
|
||||
! RUN: %flang -target x86_64-linux-gnu -fopenmp -fno-openmp %s -o %t -### 2>&1 | FileCheck %s --check-prefix=CHECK-NO-LD-ANY
|
||||
!
|
||||
! CHECK-LD-ANY: "{{.*}}ld{{(.exe)?}}"
|
||||
! CHECK-LD-ANY: "-l{{(omp|gomp|iomp5)}}"
|
||||
!
|
||||
! CHECK-NO-LD-ANY: "{{.*}}ld{{(.exe)?}}"
|
||||
! CHECK-NO-LD-ANY-NOT: "-l{{(omp|gomp|iomp5)}}"
|
||||
!
|
||||
! CHECK-LD-ANYMD: "{{.*}}ld{{(.exe)?}}"
|
||||
! CHECK-LD-ANYMD: "-l{{(omp|gomp|iomp5md)}}"
|
||||
|
Loading…
x
Reference in New Issue
Block a user