[llvm] [AMDGPU][GlobalISel] Add RegBankLegalize support for G_BITREVERSE (PR #172101)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Sat Dec 13 01:49:31 PST 2025


================
@@ -193,8 +197,12 @@ define amdgpu_kernel void @v_brev_i16(ptr addrspace(1) noalias %out, ptr addrspa
 ; GFX11-GISEL-FAKE16-NEXT:    s_waitcnt lgkmcnt(0)
 ; GFX11-GISEL-FAKE16-NEXT:    global_load_u16 v1, v0, s[2:3]
 ; GFX11-GISEL-FAKE16-NEXT:    s_waitcnt vmcnt(0)
-; GFX11-GISEL-FAKE16-NEXT:    v_bfrev_b32_e32 v1, v1
-; GFX11-GISEL-FAKE16-NEXT:    global_store_d16_hi_b16 v0, v1, s[0:1]
+; GFX11-GISEL-FAKE16-NEXT:    v_readfirstlane_b32 s2, v1
+; GFX11-GISEL-FAKE16-NEXT:    s_brev_b32 s2, s2
+; GFX11-GISEL-FAKE16-NEXT:    s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
+; GFX11-GISEL-FAKE16-NEXT:    s_lshr_b32 s2, s2, 16
+; GFX11-GISEL-FAKE16-NEXT:    v_mov_b32_e32 v1, s2
+; GFX11-GISEL-FAKE16-NEXT:    global_store_b16 v0, v1, s[0:1]
----------------
arsenm wrote:

This is the kind of case that's worse that needs to consider use context 

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


More information about the llvm-commits mailing list