diff --git a/flang/lib/Lower/OpenMP/ClauseProcessor.cpp b/flang/lib/Lower/OpenMP/ClauseProcessor.cpp index ebdda9885d5c2..99b0d4dd696d4 100644 --- a/flang/lib/Lower/OpenMP/ClauseProcessor.cpp +++ b/flang/lib/Lower/OpenMP/ClauseProcessor.cpp @@ -1148,7 +1148,8 @@ void ClauseProcessor::processMapObjects( typeSpec = &object.sym()->GetType()->derivedTypeSpec(); if (typeSpec) { - mapperIdName = typeSpec->name().ToString() + ".omp.default.mapper"; + mapperIdName = + typeSpec->name().ToString() + llvm::omp::OmpDefaultMapperName; if (auto *sym = converter.getCurrentScope().FindSymbol(mapperIdName)) mapperIdName = converter.mangleName(mapperIdName, sym->owner()); } diff --git a/flang/lib/Lower/OpenMP/OpenMP.cpp b/flang/lib/Lower/OpenMP/OpenMP.cpp index ddb08f74b3841..fa711060c6b90 100644 --- a/flang/lib/Lower/OpenMP/OpenMP.cpp +++ b/flang/lib/Lower/OpenMP/OpenMP.cpp @@ -2423,7 +2423,7 @@ genTargetOp(lower::AbstractConverter &converter, lower::SymMap &symTable, if (sym.GetType()->category() == semantics::DeclTypeSpec::TypeDerived) { auto &typeSpec = sym.GetType()->derivedTypeSpec(); std::string mapperIdName = - typeSpec.name().ToString() + ".omp.default.mapper"; + typeSpec.name().ToString() + llvm::omp::OmpDefaultMapperName; if (auto *sym = converter.getCurrentScope().FindSymbol(mapperIdName)) mapperIdName = converter.mangleName(mapperIdName, sym->owner()); if (converter.getModuleOp().lookupSymbol(mapperIdName)) diff --git a/flang/lib/Parser/openmp-parsers.cpp b/flang/lib/Parser/openmp-parsers.cpp index c08cd1ab80559..08326fad8c143 100644 --- a/flang/lib/Parser/openmp-parsers.cpp +++ b/flang/lib/Parser/openmp-parsers.cpp @@ -1402,7 +1402,7 @@ static OmpMapperSpecifier ConstructOmpMapperSpecifier( // This matches the syntax: :: if (DerivedTypeSpec * derived{std::get_if(&typeSpec.u)}) { return OmpMapperSpecifier{ - std::get(derived->t).ToString() + ".omp.default.mapper", + std::get(derived->t).ToString() + llvm::omp::OmpDefaultMapperName, std::move(typeSpec), std::move(varName)}; } return OmpMapperSpecifier{std::string("omp.default.mapper"), diff --git a/llvm/include/llvm/Frontend/OpenMP/OMPConstants.h b/llvm/include/llvm/Frontend/OpenMP/OMPConstants.h index 338b56226f204..6e1bce12af8e4 100644 --- a/llvm/include/llvm/Frontend/OpenMP/OMPConstants.h +++ b/llvm/include/llvm/Frontend/OpenMP/OMPConstants.h @@ -190,6 +190,9 @@ enum class OMPScheduleType { LLVM_MARK_AS_BITMASK_ENUM(/* LargestValue */ ModifierMask) }; +// Default OpenMP mapper name suffix. +inline constexpr const char *OmpDefaultMapperName = ".omp.default.mapper"; + /// Values for bit flags used to specify the mapping type for /// offloading. enum class OpenMPOffloadMappingFlags : uint64_t {