[llvm] [AMDGPU] Pass sret pointers in SGPRs (PR #203486)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 12 03:51:32 PDT 2026
arsenm wrote:
> The sret pointer is a constant offset from the wave-uniform stack pointer,
You don't know that. sret is not required to directly reference a uniform alloca. Consider something like this:
```
define void @sret_func(ptr addrspace(5) sret(i32) %sret) {
store i32 0, ptr addrspace(5) %sret
ret void
}
define i32 @call_func(ptr addrspace(1) %indirect) {
%ptr = load ptr addrspace(5), ptr addrspace(1) %indirect
call void @sret_func(ptr addrspace(5) %ptr)
%ld = load i32, ptr addrspace(5) %ptr
ret i32 %ld
}
```
https://github.com/llvm/llvm-project/pull/203486
More information about the llvm-commits
mailing list