[llvm] [LICM] Improve LICM when calls only change Inaccessible memory (PR #169379)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 23 03:28:52 PDT 2026


================
@@ -251,11 +251,11 @@ define i32 @neg_conflicting_read(ptr noalias %loc, ptr noalias %otherloc) {
 ; CHECK-SAME: ptr noalias [[LOC:%.*]], ptr noalias [[OTHERLOC:%.*]]) {
 ; CHECK-NEXT:  [[ENTRY:.*]]:
 ; CHECK-NEXT:    call void @store(i32 0, ptr [[LOC]])
+; CHECK-NEXT:    call void @store(i32 0, ptr [[LOC]])
----------------
nikic wrote:

I think this is because you have `MDI && ` where it should be `!MDI ||`. Though I believe my suggestion for an alternative implementation would also address this.

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


More information about the llvm-commits mailing list