aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorDominik Adamski <dominik.adamski@amd.com>2023-05-22 06:11:53 -0500
committerDominik Adamski <dominik.adamski@amd.com>2023-06-05 05:00:15 -0500
commit4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a (patch)
tree1115f5e6fcb6051e5df669638be34879ef12d9c1 /flang/lib/Frontend/CompilerInvocation.cpp
parent53cc33b00b5bf5cec5de214c1566289c927a83ca (diff)
downloadllvm-4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a.zip
llvm-4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a.tar.gz
llvm-4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a.tar.bz2
[OpenMP][bbc][flang] Add _OPENMP macro definition
OpenMP standard (section 3.3 for OpenMP 5.2) requires that _OPENMP macro contains release date of given OpenMP standard version. Differential Revision: https://reviews.llvm.org/D151083 Reviewed By: kiranchandramohan
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--flang/lib/Frontend/CompilerInvocation.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/flang/lib/Frontend/CompilerInvocation.cpp b/flang/lib/Frontend/CompilerInvocation.cpp
index 0297317..55fe989 100644
--- a/flang/lib/Frontend/CompilerInvocation.cpp
+++ b/flang/lib/Frontend/CompilerInvocation.cpp
@@ -12,6 +12,7 @@
#include "flang/Frontend/CompilerInvocation.h"
#include "flang/Common/Fortran-features.h"
+#include "flang/Common/OpenMP-features.h"
#include "flang/Common/Version.h"
#include "flang/Frontend/CodeGenOptions.h"
#include "flang/Frontend/PreprocessorOptions.h"
@@ -1005,7 +1006,6 @@ void CompilerInvocation::setDefaultFortranOpts() {
void CompilerInvocation::setDefaultPredefinitions() {
auto &fortranOptions = getFortranOpts();
const auto &frontendOptions = getFrontendOpts();
-
// Populate the macro list with version numbers and other predefinitions.
fortranOptions.predefinitions.emplace_back("__flang__", "1");
fortranOptions.predefinitions.emplace_back("__flang_major__",
@@ -1022,7 +1022,8 @@ void CompilerInvocation::setDefaultPredefinitions() {
}
if (frontendOptions.features.IsEnabled(
Fortran::common::LanguageFeature::OpenMP)) {
- fortranOptions.predefinitions.emplace_back("_OPENMP", "201511");
+ Fortran::common::setOpenMPMacro(getLangOpts().OpenMPVersion,
+ fortranOptions.predefinitions);
}
llvm::Triple targetTriple{llvm::Triple(this->targetOpts.triple)};
if (targetTriple.getArch() == llvm::Triple::ArchType::x86_64) {