[llvm-branch-commits] [llvm] [AMDGPU] Make amdgpu.noclobber respect acquire operations (PR #219991)

Shilei Tian via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Aug 31 08:32:06 PDT 2026


================
@@ -393,15 +391,29 @@ bool isReallyAClobber(const Value *Ptr, MemoryDef *Def, AAResults *AA) {
     }
   }
 
-  // Ignore atomics not aliasing with the original load, any atomic is a
-  // universal MemoryDef from MSSA's point of view too, just like a fence.
-  const auto checkNoAlias = [AA, Ptr](auto I) -> bool {
-    return I && AA->isNoAlias(I->getPointerOperand(), Ptr);
+  // Ignore non-acquire atomics not aliasing with the original load, any atomic
+  // is a universal MemoryDef from MSSA's point of view too, just like a fence.
+  // Acquire (or stronger) fences/atomics act as clobbers because they can bring
+  // in effects from other threads.
+  const auto mayAlias = [AA, Ptr](auto I) -> bool {
----------------
shiltian wrote:

```suggestion
  const auto MayAlias = [AA, Ptr](auto I) -> bool {
```

https://github.com/llvm/llvm-project/pull/219991


More information about the llvm-branch-commits mailing list