@@ -728,9 +728,8 @@ define amdgpu_kernel void @add_i32_varying_vdata(ptr addrspace(1) %out, ptr addr
728728; GFX10W32-NEXT: ; =>This Inner Loop Header: Depth=1
729729; GFX10W32-NEXT: s_ff1_i32_b32 s2, s1
730730; GFX10W32-NEXT: v_readlane_b32 s3, v0, s2
731- ; GFX10W32-NEXT: s_lshl_b32 s6, 1, s2
732731; GFX10W32-NEXT: v_writelane_b32 v1, s0, s2
733- ; GFX10W32-NEXT: s_andn2_b32 s1, s1, s6
732+ ; GFX10W32-NEXT: s_bitset0_b32 s1, s2
734733; GFX10W32-NEXT: s_add_i32 s0, s0, s3
735734; GFX10W32-NEXT: s_cmp_lg_u32 s1, 0
736735; GFX10W32-NEXT: s_cbranch_scc1 .LBB2_1
@@ -813,9 +812,8 @@ define amdgpu_kernel void @add_i32_varying_vdata(ptr addrspace(1) %out, ptr addr
813812; GFX11W32-NEXT: s_ctz_i32_b32 s2, s1
814813; GFX11W32-NEXT: s_delay_alu instid0(VALU_DEP_1) | instid1(SALU_CYCLE_1)
815814; GFX11W32-NEXT: v_readlane_b32 s3, v1, s2
816- ; GFX11W32-NEXT: s_lshl_b32 s6, 1, s2
817815; GFX11W32-NEXT: v_writelane_b32 v0, s0, s2
818- ; GFX11W32-NEXT: s_and_not1_b32 s1, s1, s6
816+ ; GFX11W32-NEXT: s_bitset0_b32 s1, s2
819817; GFX11W32-NEXT: s_add_i32 s0, s0, s3
820818; GFX11W32-NEXT: s_cmp_lg_u32 s1, 0
821819; GFX11W32-NEXT: s_cbranch_scc1 .LBB2_1
@@ -898,9 +896,8 @@ define amdgpu_kernel void @add_i32_varying_vdata(ptr addrspace(1) %out, ptr addr
898896; GFX12W32-NEXT: s_ctz_i32_b32 s2, s1
899897; GFX12W32-NEXT: s_wait_alu 0xfffe
900898; GFX12W32-NEXT: v_readlane_b32 s3, v1, s2
901- ; GFX12W32-NEXT: s_lshl_b32 s6, 1, s2
902899; GFX12W32-NEXT: v_writelane_b32 v0, s0, s2
903- ; GFX12W32-NEXT: s_and_not1_b32 s1, s1, s6
900+ ; GFX12W32-NEXT: s_bitset0_b32 s1, s2
904901; GFX12W32-NEXT: s_add_co_i32 s0, s0, s3
905902; GFX12W32-NEXT: s_wait_alu 0xfffe
906903; GFX12W32-NEXT: s_cmp_lg_u32 s1, 0
@@ -1120,9 +1117,8 @@ define amdgpu_kernel void @struct_add_i32_varying_vdata(ptr addrspace(1) %out, p
11201117; GFX10W32-NEXT: ; =>This Inner Loop Header: Depth=1
11211118; GFX10W32-NEXT: s_ff1_i32_b32 s2, s1
11221119; GFX10W32-NEXT: v_readlane_b32 s3, v0, s2
1123- ; GFX10W32-NEXT: s_lshl_b32 s6, 1, s2
11241120; GFX10W32-NEXT: v_writelane_b32 v1, s0, s2
1125- ; GFX10W32-NEXT: s_andn2_b32 s1, s1, s6
1121+ ; GFX10W32-NEXT: s_bitset0_b32 s1, s2
11261122; GFX10W32-NEXT: s_add_i32 s0, s0, s3
11271123; GFX10W32-NEXT: s_cmp_lg_u32 s1, 0
11281124; GFX10W32-NEXT: s_cbranch_scc1 .LBB3_1
@@ -1211,9 +1207,8 @@ define amdgpu_kernel void @struct_add_i32_varying_vdata(ptr addrspace(1) %out, p
12111207; GFX11W32-NEXT: s_ctz_i32_b32 s2, s1
12121208; GFX11W32-NEXT: s_delay_alu instid0(VALU_DEP_1) | instid1(SALU_CYCLE_1)
12131209; GFX11W32-NEXT: v_readlane_b32 s3, v1, s2
1214- ; GFX11W32-NEXT: s_lshl_b32 s6, 1, s2
12151210; GFX11W32-NEXT: v_writelane_b32 v0, s0, s2
1216- ; GFX11W32-NEXT: s_and_not1_b32 s1, s1, s6
1211+ ; GFX11W32-NEXT: s_bitset0_b32 s1, s2
12171212; GFX11W32-NEXT: s_add_i32 s0, s0, s3
12181213; GFX11W32-NEXT: s_cmp_lg_u32 s1, 0
12191214; GFX11W32-NEXT: s_cbranch_scc1 .LBB3_1
@@ -1301,9 +1296,8 @@ define amdgpu_kernel void @struct_add_i32_varying_vdata(ptr addrspace(1) %out, p
13011296; GFX12W32-NEXT: s_ctz_i32_b32 s2, s1
13021297; GFX12W32-NEXT: s_wait_alu 0xfffe
13031298; GFX12W32-NEXT: v_readlane_b32 s3, v1, s2
1304- ; GFX12W32-NEXT: s_lshl_b32 s6, 1, s2
13051299; GFX12W32-NEXT: v_writelane_b32 v0, s0, s2
1306- ; GFX12W32-NEXT: s_and_not1_b32 s1, s1, s6
1300+ ; GFX12W32-NEXT: s_bitset0_b32 s1, s2
13071301; GFX12W32-NEXT: s_add_co_i32 s0, s0, s3
13081302; GFX12W32-NEXT: s_wait_alu 0xfffe
13091303; GFX12W32-NEXT: s_cmp_lg_u32 s1, 0
@@ -2183,9 +2177,8 @@ define amdgpu_kernel void @sub_i32_varying_vdata(ptr addrspace(1) %out, ptr addr
21832177; GFX10W32-NEXT: ; =>This Inner Loop Header: Depth=1
21842178; GFX10W32-NEXT: s_ff1_i32_b32 s2, s1
21852179; GFX10W32-NEXT: v_readlane_b32 s3, v0, s2
2186- ; GFX10W32-NEXT: s_lshl_b32 s6, 1, s2
21872180; GFX10W32-NEXT: v_writelane_b32 v1, s0, s2
2188- ; GFX10W32-NEXT: s_andn2_b32 s1, s1, s6
2181+ ; GFX10W32-NEXT: s_bitset0_b32 s1, s2
21892182; GFX10W32-NEXT: s_add_i32 s0, s0, s3
21902183; GFX10W32-NEXT: s_cmp_lg_u32 s1, 0
21912184; GFX10W32-NEXT: s_cbranch_scc1 .LBB7_1
@@ -2268,9 +2261,8 @@ define amdgpu_kernel void @sub_i32_varying_vdata(ptr addrspace(1) %out, ptr addr
22682261; GFX11W32-NEXT: s_ctz_i32_b32 s2, s1
22692262; GFX11W32-NEXT: s_delay_alu instid0(VALU_DEP_1) | instid1(SALU_CYCLE_1)
22702263; GFX11W32-NEXT: v_readlane_b32 s3, v1, s2
2271- ; GFX11W32-NEXT: s_lshl_b32 s6, 1, s2
22722264; GFX11W32-NEXT: v_writelane_b32 v0, s0, s2
2273- ; GFX11W32-NEXT: s_and_not1_b32 s1, s1, s6
2265+ ; GFX11W32-NEXT: s_bitset0_b32 s1, s2
22742266; GFX11W32-NEXT: s_add_i32 s0, s0, s3
22752267; GFX11W32-NEXT: s_cmp_lg_u32 s1, 0
22762268; GFX11W32-NEXT: s_cbranch_scc1 .LBB7_1
@@ -2354,9 +2346,8 @@ define amdgpu_kernel void @sub_i32_varying_vdata(ptr addrspace(1) %out, ptr addr
23542346; GFX12W32-NEXT: s_ctz_i32_b32 s2, s1
23552347; GFX12W32-NEXT: s_wait_alu 0xfffe
23562348; GFX12W32-NEXT: v_readlane_b32 s3, v1, s2
2357- ; GFX12W32-NEXT: s_lshl_b32 s6, 1, s2
23582349; GFX12W32-NEXT: v_writelane_b32 v0, s0, s2
2359- ; GFX12W32-NEXT: s_and_not1_b32 s1, s1, s6
2350+ ; GFX12W32-NEXT: s_bitset0_b32 s1, s2
23602351; GFX12W32-NEXT: s_add_co_i32 s0, s0, s3
23612352; GFX12W32-NEXT: s_wait_alu 0xfffe
23622353; GFX12W32-NEXT: s_cmp_lg_u32 s1, 0
0 commit comments