@@ -364,6 +364,7 @@ define i16 @global_one_as_atomic_min_i16(ptr addrspace(1) %ptr, i16 %val) {
364364; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
365365; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
366366; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
367+ ; GFX1250-NEXT: s_wait_xcnt 0x0
367368; GFX1250-NEXT: global_atomic_cmpswap_b32 v5, v[0:1], v[6:7], off th:TH_ATOMIC_RETURN scope:SCOPE_SYS
368369; GFX1250-NEXT: s_wait_loadcnt 0x0
369370; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
@@ -406,6 +407,7 @@ define i16 @global_one_as_atomic_umin_i16(ptr addrspace(1) %ptr, i16 %val) {
406407; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
407408; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
408409; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
410+ ; GFX1250-NEXT: s_wait_xcnt 0x0
409411; GFX1250-NEXT: global_atomic_cmpswap_b32 v5, v[0:1], v[6:7], off th:TH_ATOMIC_RETURN scope:SCOPE_SYS
410412; GFX1250-NEXT: s_wait_loadcnt 0x0
411413; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
@@ -448,6 +450,7 @@ define i16 @global_one_as_atomic_max_i16(ptr addrspace(1) %ptr, i16 %val) {
448450; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
449451; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
450452; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
453+ ; GFX1250-NEXT: s_wait_xcnt 0x0
451454; GFX1250-NEXT: global_atomic_cmpswap_b32 v5, v[0:1], v[6:7], off th:TH_ATOMIC_RETURN scope:SCOPE_SYS
452455; GFX1250-NEXT: s_wait_loadcnt 0x0
453456; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
@@ -490,6 +493,7 @@ define i16 @global_one_as_atomic_umax_i16(ptr addrspace(1) %ptr, i16 %val) {
490493; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
491494; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
492495; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
496+ ; GFX1250-NEXT: s_wait_xcnt 0x0
493497; GFX1250-NEXT: global_atomic_cmpswap_b32 v5, v[0:1], v[6:7], off th:TH_ATOMIC_RETURN scope:SCOPE_SYS
494498; GFX1250-NEXT: s_wait_loadcnt 0x0
495499; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
@@ -1334,6 +1338,7 @@ define i16 @flat_one_as_atomic_min_i16(ptr %ptr, i16 %val) {
13341338; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
13351339; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
13361340; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
1341+ ; GFX1250-NEXT: s_wait_xcnt 0x0
13371342; GFX1250-NEXT: flat_atomic_cmpswap_b32 v5, v[0:1], v[6:7] th:TH_ATOMIC_RETURN scope:SCOPE_SYS
13381343; GFX1250-NEXT: s_wait_loadcnt_dscnt 0x0
13391344; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
@@ -1376,6 +1381,7 @@ define i16 @flat_one_as_atomic_umin_i16(ptr %ptr, i16 %val) {
13761381; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
13771382; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
13781383; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
1384+ ; GFX1250-NEXT: s_wait_xcnt 0x0
13791385; GFX1250-NEXT: flat_atomic_cmpswap_b32 v5, v[0:1], v[6:7] th:TH_ATOMIC_RETURN scope:SCOPE_SYS
13801386; GFX1250-NEXT: s_wait_loadcnt_dscnt 0x0
13811387; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
@@ -1418,6 +1424,7 @@ define i16 @flat_one_as_atomic_max_i16(ptr %ptr, i16 %val) {
14181424; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
14191425; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
14201426; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
1427+ ; GFX1250-NEXT: s_wait_xcnt 0x0
14211428; GFX1250-NEXT: flat_atomic_cmpswap_b32 v5, v[0:1], v[6:7] th:TH_ATOMIC_RETURN scope:SCOPE_SYS
14221429; GFX1250-NEXT: s_wait_loadcnt_dscnt 0x0
14231430; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
@@ -1460,6 +1467,7 @@ define i16 @flat_one_as_atomic_umax_i16(ptr %ptr, i16 %val) {
14601467; GFX1250-NEXT: v_lshlrev_b32_e32 v5, v3, v5
14611468; GFX1250-NEXT: s_delay_alu instid0(VALU_DEP_1)
14621469; GFX1250-NEXT: v_and_or_b32 v6, v7, v4, v5
1470+ ; GFX1250-NEXT: s_wait_xcnt 0x0
14631471; GFX1250-NEXT: flat_atomic_cmpswap_b32 v5, v[0:1], v[6:7] th:TH_ATOMIC_RETURN scope:SCOPE_SYS
14641472; GFX1250-NEXT: s_wait_loadcnt_dscnt 0x0
14651473; GFX1250-NEXT: v_cmp_eq_u32_e32 vcc_lo, v5, v7
0 commit comments