[llvm] [LVI] Look through pointer operand when evaluating ptrtoints (PR #162627)
Antonio Frighetto via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 9 09:18:27 PDT 2025
antoniofrighetto wrote:
Reduced from CI failure:
```llvm
; ./bin/opt -S -p correlated-propagation test.ll
define i32 @src(ptr %p, i1 %cond) {
entry:
%q = load ptr, ptr %p, align 8
%cmp = icmp ne ptr %q, inttoptr (i64 -4096 to ptr)
call void @llvm.assume(i1 %cmp)
%cmp.1 = icmp ne ptr %q, inttoptr (i64 -8192 to ptr)
call void @llvm.assume(i1 %cmp.1)
br i1 %cond, label %bb.switch, label %bb.default
bb.switch:
%p.val = ptrtoint ptr %q to i64
switch i64 %p.val, label %bb.default [
i64 -4096, label %bb.1
i64 -8192, label %bb.1
]
bb.1:
ret i32 0
bb.default:
ret i32 1
}
```
https://github.com/llvm/llvm-project/pull/162627
More information about the llvm-commits
mailing list