@@ -20,7 +20,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align4(i32 %n) {
2020; GFX9-NEXT: v_mov_b32_e32 v1, s4
2121; GFX9-NEXT: s_lshl_b32 s5, s5, 6
2222; GFX9-NEXT: s_mov_b32 s33, 0
23- ; GFX9-NEXT: s_add_i32 s32, s4, s5
23+ ; GFX9-NEXT: s_add_u32 s32, s4, s5
2424; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen
2525; GFX9-NEXT: s_endpgm
2626;
@@ -39,7 +39,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align4(i32 %n) {
3939; GFX10-NEXT: s_lshl2_add_u32 s5, s5, 15
4040; GFX10-NEXT: s_and_b32 s5, s5, -16
4141; GFX10-NEXT: s_lshl_b32 s5, s5, 5
42- ; GFX10-NEXT: s_add_i32 s32, s4, s5
42+ ; GFX10-NEXT: s_add_u32 s32, s4, s5
4343; GFX10-NEXT: s_endpgm
4444;
4545; GFX11-LABEL: kernel_dynamic_stackalloc_sgpr_align4:
@@ -56,7 +56,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align4(i32 %n) {
5656; GFX11-NEXT: s_and_b32 s1, s1, -16
5757; GFX11-NEXT: s_lshl_b32 s1, s1, 5
5858; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1)
59- ; GFX11-NEXT: s_add_i32 s32, s0, s1
59+ ; GFX11-NEXT: s_add_u32 s32, s0, s1
6060; GFX11-NEXT: s_endpgm
6161 %alloca = alloca i32 , i32 %n , align 4 , addrspace (5 )
6262 store i32 0 , ptr addrspace (5 ) %alloca
@@ -84,7 +84,7 @@ define void @func_dynamic_stackalloc_sgpr_align4() {
8484; GFX9-NEXT: s_lshl2_add_u32 s4, s4, 15
8585; GFX9-NEXT: s_and_b32 s4, s4, -16
8686; GFX9-NEXT: s_lshl_b32 s4, s4, 6
87- ; GFX9-NEXT: s_add_i32 s32, s6, s4
87+ ; GFX9-NEXT: s_add_u32 s32, s6, s4
8888; GFX9-NEXT: s_mov_b32 s32, s33
8989; GFX9-NEXT: s_mov_b32 s33, s7
9090; GFX9-NEXT: s_waitcnt vmcnt(0)
@@ -110,7 +110,7 @@ define void @func_dynamic_stackalloc_sgpr_align4() {
110110; GFX10-NEXT: s_lshl2_add_u32 s4, s4, 15
111111; GFX10-NEXT: s_and_b32 s4, s4, -16
112112; GFX10-NEXT: s_lshl_b32 s4, s4, 5
113- ; GFX10-NEXT: s_add_i32 s32, s6, s4
113+ ; GFX10-NEXT: s_add_u32 s32, s6, s4
114114; GFX10-NEXT: s_mov_b32 s32, s33
115115; GFX10-NEXT: s_mov_b32 s33, s7
116116; GFX10-NEXT: s_setpc_b64 s[30:31]
@@ -136,7 +136,7 @@ define void @func_dynamic_stackalloc_sgpr_align4() {
136136; GFX11-NEXT: s_and_b32 s0, s0, -16
137137; GFX11-NEXT: s_lshl_b32 s0, s0, 5
138138; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1)
139- ; GFX11-NEXT: s_add_i32 s32, s2, s0
139+ ; GFX11-NEXT: s_add_u32 s32, s2, s0
140140; GFX11-NEXT: s_mov_b32 s32, s33
141141; GFX11-NEXT: s_mov_b32 s33, s3
142142; GFX11-NEXT: s_setpc_b64 s[30:31]
@@ -161,7 +161,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align16(i32 %n) {
161161; GFX9-NEXT: v_mov_b32_e32 v1, s4
162162; GFX9-NEXT: s_lshl_b32 s5, s5, 6
163163; GFX9-NEXT: s_mov_b32 s33, 0
164- ; GFX9-NEXT: s_add_i32 s32, s4, s5
164+ ; GFX9-NEXT: s_add_u32 s32, s4, s5
165165; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen
166166; GFX9-NEXT: s_endpgm
167167;
@@ -180,7 +180,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align16(i32 %n) {
180180; GFX10-NEXT: s_lshl2_add_u32 s5, s5, 15
181181; GFX10-NEXT: s_and_b32 s5, s5, -16
182182; GFX10-NEXT: s_lshl_b32 s5, s5, 5
183- ; GFX10-NEXT: s_add_i32 s32, s4, s5
183+ ; GFX10-NEXT: s_add_u32 s32, s4, s5
184184; GFX10-NEXT: s_endpgm
185185;
186186; GFX11-LABEL: kernel_dynamic_stackalloc_sgpr_align16:
@@ -197,7 +197,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align16(i32 %n) {
197197; GFX11-NEXT: s_and_b32 s1, s1, -16
198198; GFX11-NEXT: s_lshl_b32 s1, s1, 5
199199; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1)
200- ; GFX11-NEXT: s_add_i32 s32, s0, s1
200+ ; GFX11-NEXT: s_add_u32 s32, s0, s1
201201; GFX11-NEXT: s_endpgm
202202 %alloca = alloca i32 , i32 %n , align 16 , addrspace (5 )
203203 store i32 0 , ptr addrspace (5 ) %alloca
@@ -225,7 +225,7 @@ define void @func_dynamic_stackalloc_sgpr_align16() {
225225; GFX9-NEXT: s_lshl2_add_u32 s4, s4, 15
226226; GFX9-NEXT: s_and_b32 s4, s4, -16
227227; GFX9-NEXT: s_lshl_b32 s4, s4, 6
228- ; GFX9-NEXT: s_add_i32 s32, s6, s4
228+ ; GFX9-NEXT: s_add_u32 s32, s6, s4
229229; GFX9-NEXT: s_mov_b32 s32, s33
230230; GFX9-NEXT: s_mov_b32 s33, s7
231231; GFX9-NEXT: s_waitcnt vmcnt(0)
@@ -251,7 +251,7 @@ define void @func_dynamic_stackalloc_sgpr_align16() {
251251; GFX10-NEXT: s_lshl2_add_u32 s4, s4, 15
252252; GFX10-NEXT: s_and_b32 s4, s4, -16
253253; GFX10-NEXT: s_lshl_b32 s4, s4, 5
254- ; GFX10-NEXT: s_add_i32 s32, s6, s4
254+ ; GFX10-NEXT: s_add_u32 s32, s6, s4
255255; GFX10-NEXT: s_mov_b32 s32, s33
256256; GFX10-NEXT: s_mov_b32 s33, s7
257257; GFX10-NEXT: s_setpc_b64 s[30:31]
@@ -277,7 +277,7 @@ define void @func_dynamic_stackalloc_sgpr_align16() {
277277; GFX11-NEXT: s_and_b32 s0, s0, -16
278278; GFX11-NEXT: s_lshl_b32 s0, s0, 5
279279; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1)
280- ; GFX11-NEXT: s_add_i32 s32, s2, s0
280+ ; GFX11-NEXT: s_add_u32 s32, s2, s0
281281; GFX11-NEXT: s_mov_b32 s32, s33
282282; GFX11-NEXT: s_mov_b32 s33, s3
283283; GFX11-NEXT: s_setpc_b64 s[30:31]
@@ -294,7 +294,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align32(i32 %n) {
294294; GFX9-NEXT: s_movk_i32 s32, 0x800
295295; GFX9-NEXT: s_add_u32 s0, s0, s17
296296; GFX9-NEXT: s_addc_u32 s1, s1, 0
297- ; GFX9-NEXT: s_add_i32 s5, s32, 0x7ff
297+ ; GFX9-NEXT: s_add_u32 s5, s32, 0x7ff
298298; GFX9-NEXT: s_waitcnt lgkmcnt(0)
299299; GFX9-NEXT: s_lshl2_add_u32 s4, s4, 15
300300; GFX9-NEXT: s_and_b32 s5, s5, 0xfffff800
@@ -303,7 +303,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align32(i32 %n) {
303303; GFX9-NEXT: v_mov_b32_e32 v1, s5
304304; GFX9-NEXT: s_lshl_b32 s4, s4, 6
305305; GFX9-NEXT: s_mov_b32 s33, 0
306- ; GFX9-NEXT: s_add_i32 s32, s5, s4
306+ ; GFX9-NEXT: s_add_u32 s32, s5, s4
307307; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen
308308; GFX9-NEXT: s_endpgm
309309;
@@ -313,7 +313,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align32(i32 %n) {
313313; GFX10-NEXT: s_movk_i32 s32, 0x400
314314; GFX10-NEXT: s_add_u32 s0, s0, s17
315315; GFX10-NEXT: s_addc_u32 s1, s1, 0
316- ; GFX10-NEXT: s_add_i32 s5, s32, 0x3ff
316+ ; GFX10-NEXT: s_add_u32 s5, s32, 0x3ff
317317; GFX10-NEXT: v_mov_b32_e32 v0, 0
318318; GFX10-NEXT: s_and_b32 s5, s5, 0xfffffc00
319319; GFX10-NEXT: s_mov_b32 s33, 0
@@ -323,15 +323,15 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align32(i32 %n) {
323323; GFX10-NEXT: s_lshl2_add_u32 s4, s4, 15
324324; GFX10-NEXT: s_and_b32 s4, s4, -16
325325; GFX10-NEXT: s_lshl_b32 s4, s4, 5
326- ; GFX10-NEXT: s_add_i32 s32, s5, s4
326+ ; GFX10-NEXT: s_add_u32 s32, s5, s4
327327; GFX10-NEXT: s_endpgm
328328;
329329; GFX11-LABEL: kernel_dynamic_stackalloc_sgpr_align32:
330330; GFX11: ; %bb.0:
331331; GFX11-NEXT: s_load_b32 s0, s[4:5], 0x0
332332; GFX11-NEXT: s_mov_b32 s32, 32
333333; GFX11-NEXT: v_mov_b32_e32 v0, 0
334- ; GFX11-NEXT: s_add_i32 s1, s32, 0x3ff
334+ ; GFX11-NEXT: s_add_u32 s1, s32, 0x3ff
335335; GFX11-NEXT: s_mov_b32 s33, 0
336336; GFX11-NEXT: s_and_b32 s1, s1, 0xfffffc00
337337; GFX11-NEXT: scratch_store_b32 off, v0, s1
@@ -341,7 +341,7 @@ define amdgpu_kernel void @kernel_dynamic_stackalloc_sgpr_align32(i32 %n) {
341341; GFX11-NEXT: s_and_b32 s0, s0, -16
342342; GFX11-NEXT: s_lshl_b32 s0, s0, 5
343343; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1)
344- ; GFX11-NEXT: s_add_i32 s32, s1, s0
344+ ; GFX11-NEXT: s_add_u32 s32, s1, s0
345345; GFX11-NEXT: s_endpgm
346346 %alloca = alloca i32 , i32 %n , align 32 , addrspace (5 )
347347 store i32 0 , ptr addrspace (5 ) %alloca
@@ -366,15 +366,15 @@ define void @func_dynamic_stackalloc_sgpr_align32(ptr addrspace(1) %out) {
366366; GFX9-NEXT: s_mov_b32 s33, s6
367367; GFX9-NEXT: s_waitcnt lgkmcnt(0)
368368; GFX9-NEXT: s_load_dword s4, s[4:5], 0x0
369- ; GFX9-NEXT: s_add_i32 s5, s32, 0x7ff
369+ ; GFX9-NEXT: s_add_u32 s5, s32, 0x7ff
370370; GFX9-NEXT: s_and_b32 s5, s5, 0xfffff800
371371; GFX9-NEXT: v_mov_b32_e32 v1, s5
372372; GFX9-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen
373373; GFX9-NEXT: s_waitcnt lgkmcnt(0)
374374; GFX9-NEXT: s_lshl2_add_u32 s4, s4, 15
375375; GFX9-NEXT: s_and_b32 s4, s4, -16
376376; GFX9-NEXT: s_lshl_b32 s4, s4, 6
377- ; GFX9-NEXT: s_add_i32 s32, s5, s4
377+ ; GFX9-NEXT: s_add_u32 s32, s5, s4
378378; GFX9-NEXT: s_mov_b32 s32, s34
379379; GFX9-NEXT: s_mov_b32 s34, s7
380380; GFX9-NEXT: s_waitcnt vmcnt(0)
@@ -397,15 +397,15 @@ define void @func_dynamic_stackalloc_sgpr_align32(ptr addrspace(1) %out) {
397397; GFX10-NEXT: s_mov_b32 s33, s6
398398; GFX10-NEXT: s_waitcnt lgkmcnt(0)
399399; GFX10-NEXT: s_load_dword s4, s[4:5], 0x0
400- ; GFX10-NEXT: s_add_i32 s5, s32, 0x3ff
400+ ; GFX10-NEXT: s_add_u32 s5, s32, 0x3ff
401401; GFX10-NEXT: s_and_b32 s5, s5, 0xfffffc00
402402; GFX10-NEXT: v_mov_b32_e32 v1, s5
403403; GFX10-NEXT: buffer_store_dword v0, v1, s[0:3], 0 offen
404404; GFX10-NEXT: s_waitcnt lgkmcnt(0)
405405; GFX10-NEXT: s_lshl2_add_u32 s4, s4, 15
406406; GFX10-NEXT: s_and_b32 s4, s4, -16
407407; GFX10-NEXT: s_lshl_b32 s4, s4, 5
408- ; GFX10-NEXT: s_add_i32 s32, s5, s4
408+ ; GFX10-NEXT: s_add_u32 s32, s5, s4
409409; GFX10-NEXT: s_mov_b32 s32, s34
410410; GFX10-NEXT: s_mov_b32 s34, s7
411411; GFX10-NEXT: s_setpc_b64 s[30:31]
@@ -427,7 +427,7 @@ define void @func_dynamic_stackalloc_sgpr_align32(ptr addrspace(1) %out) {
427427; GFX11-NEXT: s_mov_b32 s33, s2
428428; GFX11-NEXT: s_waitcnt lgkmcnt(0)
429429; GFX11-NEXT: s_load_b32 s0, s[0:1], 0x0
430- ; GFX11-NEXT: s_add_i32 s1, s32, 0x3ff
430+ ; GFX11-NEXT: s_add_u32 s1, s32, 0x3ff
431431; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) | instskip(SKIP_3) | instid1(SALU_CYCLE_1)
432432; GFX11-NEXT: s_and_b32 s1, s1, 0xfffffc00
433433; GFX11-NEXT: scratch_store_b32 off, v0, s1
@@ -436,7 +436,7 @@ define void @func_dynamic_stackalloc_sgpr_align32(ptr addrspace(1) %out) {
436436; GFX11-NEXT: s_and_b32 s0, s0, -16
437437; GFX11-NEXT: s_delay_alu instid0(SALU_CYCLE_1) | instskip(NEXT) | instid1(SALU_CYCLE_1)
438438; GFX11-NEXT: s_lshl_b32 s0, s0, 5
439- ; GFX11-NEXT: s_add_i32 s32, s1, s0
439+ ; GFX11-NEXT: s_add_u32 s32, s1, s0
440440; GFX11-NEXT: s_mov_b32 s32, s34
441441; GFX11-NEXT: s_mov_b32 s34, s3
442442; GFX11-NEXT: s_setpc_b64 s[30:31]
0 commit comments