[llvm] [IPO] Added attributor for identifying invariant loads (PR #141800)

Krzysztof Drewniak via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 2 11:16:00 PDT 2025


https://github.com/krzysz00 commented:

This _feels_ reasonable, but I don't fully know the attributer framework well enough to review it properly.

Also, do we want to add some mechanism for declaring that ptr(4) and ptr(6) are all definitionally constant and use it here?

Finally, call for a test
```
define amdgpu_kernel void @test_noalias_buffer_desc(ptr addrspace(1) align 4 noalias %ptr) {
  %buffer.rsrc = call ptr addrspace(7) @llvm.amdgcn.make.buffer.rsrc.p7.p1(ptr addrspace(1) %ptr, i16 0, i32 256, i32 0)
  %val = load i32, ptr addrspace(7) %buffer.rsrc, align 4
  call void @clobber(i32 %val)
  ret void
}
```



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


More information about the llvm-commits mailing list