[flang-commits] [flang] [Flang][OpenMP] Make implicitly captured scalars fully firstprivatized (PR #147442)
Pranav Bhandarkar via flang-commits
flang-commits at lists.llvm.org
Mon Jul 28 09:08:21 PDT 2025
================
@@ -2470,6 +2470,36 @@ genSingleOp(lower::AbstractConverter &converter, lower::SymMap &symTable,
queue, item, clauseOps);
}
+static bool isDuplicateMappedSymbol(
+ const semantics::Symbol &sym,
+ const llvm::SetVector<const semantics::Symbol *> &privatizedSyms,
+ const llvm::SmallVectorImpl<const semantics::Symbol *> &hasDevSyms,
+ const llvm::SmallVectorImpl<const semantics::Symbol *> &mappedSyms) {
+ llvm::SmallVector<const semantics::Symbol *> concatSyms;
+ concatSyms.reserve(privatizedSyms.size() + hasDevSyms.size() +
+ mappedSyms.size());
+ concatSyms.append(privatizedSyms.begin(), privatizedSyms.end());
+ concatSyms.append(hasDevSyms.begin(), hasDevSyms.end());
+ concatSyms.append(mappedSyms.begin(), mappedSyms.end());
+
+ auto checkSymbol = [&](const semantics::Symbol &checkSym) {
+ if (llvm::is_contained(concatSyms, &checkSym))
+ return true;
+
+ return std::any_of(concatSyms.begin(), concatSyms.end(),
----------------
bhandarkar-pranav wrote:
Again, a nit really. But, doens't this second check subsume the check above?
https://github.com/llvm/llvm-project/pull/147442
More information about the flang-commits
mailing list