summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2019-08-07 14:02:11 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2019-08-07 14:02:11 +0000
commit2e3a07fcb87e44140ff1a203da4d77eff1a78e77 (patch)
treee20362850a1564f50d21584a545203dbccab640c
parent0e1fea675407c2d34096b109e9a460f23fbd59d7 (diff)
downloadbcm5719-llvm-2e3a07fcb87e44140ff1a203da4d77eff1a78e77.tar.gz
bcm5719-llvm-2e3a07fcb87e44140ff1a203da4d77eff1a78e77.zip
[OPENMP]Add standard macro value _OPENMP for OpenMP 5.0.
According to the OpenMP standard, compiler must define _OPENMP macro, which has value in format yyyymm, where yyyy is the year of the standard and mm is the month of the standard. For OpenMP 5.0 this value must be set to 201811. llvm-svn: 368170
-rw-r--r--clang/lib/Frontend/InitPreprocessor.cpp3
-rw-r--r--clang/test/OpenMP/driver.c3
-rw-r--r--clang/test/OpenMP/predefined_macro.c1
3 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Frontend/InitPreprocessor.cpp b/clang/lib/Frontend/InitPreprocessor.cpp
index 3906e2ae1b9..79b5395372f 100644
--- a/clang/lib/Frontend/InitPreprocessor.cpp
+++ b/clang/lib/Frontend/InitPreprocessor.cpp
@@ -1038,6 +1038,9 @@ static void InitializePredefinedMacros(const TargetInfo &TI,
case 45:
Builder.defineMacro("_OPENMP", "201511");
break;
+ case 50:
+ Builder.defineMacro("_OPENMP", "201811");
+ break;
default:
// Default version is OpenMP 3.1
Builder.defineMacro("_OPENMP", "201107");
diff --git a/clang/test/OpenMP/driver.c b/clang/test/OpenMP/driver.c
index 4c8b1df538e..58d5538e64f 100644
--- a/clang/test/OpenMP/driver.c
+++ b/clang/test/OpenMP/driver.c
@@ -28,6 +28,9 @@
// CHECK-45-VERSION: #define _OPENMP 201511
// CHECK-45-VERSION2: #define _OPENMP 201511
+// RUN: %clang %s -c -E -dM -fopenmp=libomp -fopenmp-version=50 | FileCheck --check-prefix=CHECK-50-VERSION %s
+// CHECK-50-VERSION: #define _OPENMP 201811
+
// RUN: %clang %s -c -E -dM -fopenmp-version=1 | FileCheck --check-prefix=CHECK-VERSION %s
// RUN: %clang %s -c -E -dM -fopenmp-version=31 | FileCheck --check-prefix=CHECK-VERSION %s
// RUN: %clang %s -c -E -dM -fopenmp-version=40 | FileCheck --check-prefix=CHECK-VERSION %s
diff --git a/clang/test/OpenMP/predefined_macro.c b/clang/test/OpenMP/predefined_macro.c
index b27b32b561f..c9722d596d4 100644
--- a/clang/test/OpenMP/predefined_macro.c
+++ b/clang/test/OpenMP/predefined_macro.c
@@ -3,6 +3,7 @@
// RUN: %clang_cc1 -fopenmp-simd -verify -o - %s
// RUN: %clang_cc1 -fopenmp-simd -fopenmp-version=45 -verify -o - %s
+// RUN: %clang_cc1 -fopenmp-simd -fopenmp-version=50 -verify -o - %s
// expected-no-diagnostics
#ifdef FOPENMP
// -fopenmp option is specified
OpenPOWER on IntegriCloud