@@ -101,7 +101,8 @@ define amdgpu_kernel void @s_add_co_br_user(i32 %i) {
101
101
; GFX7-NEXT: s_lshr_b32 flat_scratch_hi, s12, 8
102
102
; GFX7-NEXT: s_mov_b32 flat_scratch_lo, s13
103
103
; GFX7-NEXT: s_waitcnt lgkmcnt(0)
104
- ; GFX7-NEXT: v_add_i32_e64 v0, s[0:1], s2, s2
104
+ ; GFX7-NEXT: s_add_u32 s0, s2, s2
105
+ ; GFX7-NEXT: s_cselect_b64 s[0:1], -1, 0
105
106
; GFX7-NEXT: s_or_b32 s0, s0, s1
106
107
; GFX7-NEXT: s_cmp_lg_u32 s0, 0
107
108
; GFX7-NEXT: s_addc_u32 s0, s2, 0
@@ -126,7 +127,8 @@ define amdgpu_kernel void @s_add_co_br_user(i32 %i) {
126
127
; GFX9: ; %bb.0: ; %bb
127
128
; GFX9-NEXT: s_load_dword s2, s[8:9], 0x0
128
129
; GFX9-NEXT: s_waitcnt lgkmcnt(0)
129
- ; GFX9-NEXT: v_add_co_u32_e64 v0, s[0:1], s2, s2
130
+ ; GFX9-NEXT: s_add_u32 s0, s2, s2
131
+ ; GFX9-NEXT: s_cselect_b64 s[0:1], -1, 0
130
132
; GFX9-NEXT: s_cmp_lg_u64 s[0:1], 0
131
133
; GFX9-NEXT: s_addc_u32 s0, s2, 0
132
134
; GFX9-NEXT: s_cselect_b64 s[0:1], -1, 0
@@ -150,7 +152,8 @@ define amdgpu_kernel void @s_add_co_br_user(i32 %i) {
150
152
; GFX10: ; %bb.0: ; %bb
151
153
; GFX10-NEXT: s_load_dword s0, s[8:9], 0x0
152
154
; GFX10-NEXT: s_waitcnt lgkmcnt(0)
153
- ; GFX10-NEXT: v_add_co_u32 v0, s1, s0, s0
155
+ ; GFX10-NEXT: s_add_u32 s1, s0, s0
156
+ ; GFX10-NEXT: s_cselect_b32 s1, -1, 0
154
157
; GFX10-NEXT: s_cmp_lg_u32 s1, 0
155
158
; GFX10-NEXT: s_addc_u32 s0, s0, 0
156
159
; GFX10-NEXT: s_cselect_b32 s0, -1, 0
@@ -174,11 +177,12 @@ define amdgpu_kernel void @s_add_co_br_user(i32 %i) {
174
177
; GFX11: ; %bb.0: ; %bb
175
178
; GFX11-NEXT: s_load_b32 s0, s[4:5], 0x0
176
179
; GFX11-NEXT: s_waitcnt lgkmcnt(0)
177
- ; GFX11-NEXT: v_add_co_u32 v0, s1, s0, s0
180
+ ; GFX11-NEXT: s_add_u32 s1, s0, s0
181
+ ; GFX11-NEXT: s_cselect_b32 s1, -1, 0
182
+ ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_2) | instid1(SALU_CYCLE_1)
178
183
; GFX11-NEXT: s_cmp_lg_u32 s1, 0
179
184
; GFX11-NEXT: s_addc_u32 s0, s0, 0
180
185
; GFX11-NEXT: s_cselect_b32 s0, -1, 0
181
- ; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1)
182
186
; GFX11-NEXT: s_and_not1_b32 vcc_lo, exec_lo, s0
183
187
; GFX11-NEXT: s_cbranch_vccnz .LBB1_2
184
188
; GFX11-NEXT: ; %bb.1: ; %bb0
0 commit comments