[flang-commits] [flang] [flang][OpenMP] don't privatise loop index marked shared (PR #108176)
Leandro Lupori via flang-commits
flang-commits at lists.llvm.org
Wed Sep 11 13:05:13 PDT 2024
================
@@ -2121,15 +2121,18 @@ void OmpAttributeVisitor::CreateImplicitSymbols(
}
return lastDeclSymbol;
};
- auto makeSharedSymbol = [&]() {
+ auto makeSharedSymbol = [&](bool setFlag) {
const Symbol *hostSymbol =
lastDeclSymbol ? lastDeclSymbol : &symbol->GetUltimate();
- MakeAssocSymbol(symbol->name(), *hostSymbol,
+ Symbol &assocSymbol = MakeAssocSymbol(symbol->name(), *hostSymbol,
context_.FindScope(dirContext.directiveSource));
+ if (setFlag) {
+ assocSymbol.set(Symbol::Flag::OmpShared);
+ }
};
- auto useLastDeclSymbol = [&]() {
+ auto useLastDeclSymbol = [&](bool setFlag) {
if (lastDeclSymbol) {
- makeSharedSymbol();
+ makeSharedSymbol(setFlag);
----------------
luporl wrote:
`useLastDeclSymbol` should just create an association, without adding any DSA.
So `setFlag` can be removed and this line replaced by `makeSharedSymbol(/*addFlag=*/false);`.
https://github.com/llvm/llvm-project/pull/108176
More information about the flang-commits
mailing list