[llvm] [DAG] SimplifyMultipleUseDemandedBits - bypass ADD nodes if either operand is zero (PR #112588)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 28 09:01:37 PDT 2024


================
@@ -39,8 +39,8 @@ define amdgpu_kernel void @srem_i16_7(ptr addrspace(1) %out, ptr addrspace(1) %i
 ; TAHITI-NEXT:    s_waitcnt vmcnt(0)
 ; TAHITI-NEXT:    v_readfirstlane_b32 s0, v0
 ; TAHITI-NEXT:    s_mulk_i32 s0, 0x4925
-; TAHITI-NEXT:    s_lshr_b32 s1, s0, 31
 ; TAHITI-NEXT:    s_ashr_i32 s0, s0, 17
+; TAHITI-NEXT:    s_bfe_u32 s1, s0, 0x1000f
----------------
arsenm wrote:

This is worse. The BFE has a bigger encoding because it needs to embed the weird immediate 

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


More information about the llvm-commits mailing list