[llvm] [AMDGPU][GlobalISel] Allow selecting buffer_load/store of pointers (PR #110714)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 2 07:14:41 PDT 2024
================
@@ -5805,6 +5806,10 @@ Register AMDGPULegalizerInfo::fixStoreSourceType(
if (hasBufferRsrcWorkaround(Ty))
return castBufferRsrcToV4I32(VData, B);
+ if (shouldBitcastLoadStoreType(ST, Ty, MemTy) || Ty.isPointerVector()) {
----------------
arsenm wrote:
I don't think they do work fine. The buffer cases should behave identically to G_LOAD and G_STORE, and both currently rely on the bitcast legalization.
Based on the 64-bit check, the 128-bit <2 x ptr> cases work. The 64-bit cases, e.g. <2 x ptr addrspace(3)> fail:
https://godbolt.org/z/4vWacff1d
So yes, tests should change and start working
https://github.com/llvm/llvm-project/pull/110714
More information about the llvm-commits
mailing list