[llvm] [AMDGPU][SDAG] Legalise v2i32 or/xor/and instructions to make use of 64-bit wide instructions (PR #140694)
    Janek van Oirschot via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Fri Jun  6 06:50:51 PDT 2025
    
    
  
================
@@ -18,8 +18,8 @@ define amdgpu_kernel void @or_v2i32(ptr addrspace(1) %out, ptr addrspace(1) %in)
 ; GFX6-NEXT:    s_mov_b32 s4, s0
 ; GFX6-NEXT:    s_mov_b32 s5, s1
 ; GFX6-NEXT:    s_waitcnt vmcnt(0)
----------------
JanekvO wrote:
> But I don't understand the historical reasons for setting that flag in some bitwise op tests and not others.
I assume it has to do with the fact that the vectors are materialized in the IR through the `ptr addrspace(1)` (i.e., global addrspace). To me it still feels a bit counter-intuitive to see these changes if `-amdgpu-scalarize-global-loads=true` but that it could also be that my intuition is plainly wrong.
I was just expecting to be able to see the result of the legalization in these or/xor/and tests
https://github.com/llvm/llvm-project/pull/140694
    
    
More information about the llvm-commits
mailing list