diff --git a/llvm/lib/Transforms/IPO/OpenMPOpt.cpp b/llvm/lib/Transforms/IPO/OpenMPOpt.cpp index b2356ef346dae3..09178a23173670 100644 --- a/llvm/lib/Transforms/IPO/OpenMPOpt.cpp +++ b/llvm/lib/Transforms/IPO/OpenMPOpt.cpp @@ -2940,7 +2940,7 @@ ChangeStatus AAExecutionDomainFunction::updateImpl(Attributor &A) { ED.IsReachedFromAlignedBarrierOnly = IsNoSync && ED.IsReachedFromAlignedBarrierOnly; AlignedBarrierLastInBlock &= ED.IsReachedFromAlignedBarrierOnly; - ED.EncounteredNonLocalSideEffect |= true; + ED.EncounteredNonLocalSideEffect |= !CB->doesNotAccessMemory(); if (!IsNoSync) SyncInstWorklist.push_back(&I); }