[llvm] [LAA][NFC] Factor out MemoryDepChecker::isStoreLoadForwardingConflict (PR #212085)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 25 04:22:15 PDT 2026


================

----------------
fhahn wrote:

I'm not sure that is NFC, at least for very large accesses. For this to not be UB, we would probably need an address space where such large objects are allowed; but in any case, we should not assert

```
define void @f(ptr %A) {  
entry:
  br label %loop

loop:
  %iv = phi i64 [ 0, %entry ], [ %next, %loop ]
  %gep.1 = getelementptr [144115188075855872 x i8], ptr %A, i64 %iv
  %gep.2 = getelementptr [144115188075855872 x i8], ptr %gep.1, i64 64
  store [144115188075855872 x i8] zeroinitializer, ptr %gep.2
  %l = load [144115188075855872 x i8], ptr %gep.1
  %next = add nuw nsw i64 %iv, 1
  %ec = icmp eq i64 %iv, 1000
  br i1 %ec, label %exit, label %loop

exit:
  ret void
}
```

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


More information about the llvm-commits mailing list