@@ -1295,8 +1295,7 @@ define amdgpu_ps float @mubuf_atomicrmw_sgpr_ptr_offset4095(ptr addrspace(1) inr
1295
1295
; GFX12-NEXT: v_dual_mov_b32 v0, 2 :: v_dual_mov_b32 v1, 0
1296
1296
; GFX12-NEXT: global_atomic_add_u32 v0, v1, v0, s[2:3] offset:16380 th:TH_ATOMIC_RETURN
1297
1297
; GFX12-NEXT: s_waitcnt vmcnt(0)
1298
- ; GFX12-NEXT: buffer_gl0_inv
1299
- ; GFX12-NEXT: buffer_gl1_inv
1298
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1300
1299
; GFX12-NEXT: ; return to shader part epilog
1301
1300
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4095
1302
1301
%result = atomicrmw add ptr addrspace (1 ) %gep , i32 2 syncscope("agent" ) seq_cst
@@ -1347,8 +1346,7 @@ define amdgpu_ps float @mubuf_atomicrmw_sgpr_ptr_offset4294967296(ptr addrspace(
1347
1346
; GFX12-NEXT: v_mov_b32_e32 v2, 2
1348
1347
; GFX12-NEXT: global_atomic_add_u32 v0, v[0:1], v2, off th:TH_ATOMIC_RETURN
1349
1348
; GFX12-NEXT: s_waitcnt vmcnt(0)
1350
- ; GFX12-NEXT: buffer_gl0_inv
1351
- ; GFX12-NEXT: buffer_gl1_inv
1349
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1352
1350
; GFX12-NEXT: ; return to shader part epilog
1353
1351
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4294967296
1354
1352
%result = atomicrmw add ptr addrspace (1 ) %gep , i32 2 syncscope("agent" ) seq_cst
@@ -1389,8 +1387,7 @@ define amdgpu_ps float @mubuf_atomicrmw_vgpr_ptr_offset4095(ptr addrspace(1) %pt
1389
1387
; GFX12-NEXT: v_mov_b32_e32 v2, 2
1390
1388
; GFX12-NEXT: global_atomic_add_u32 v0, v[0:1], v2, off offset:16380 th:TH_ATOMIC_RETURN
1391
1389
; GFX12-NEXT: s_waitcnt vmcnt(0)
1392
- ; GFX12-NEXT: buffer_gl0_inv
1393
- ; GFX12-NEXT: buffer_gl1_inv
1390
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1394
1391
; GFX12-NEXT: ; return to shader part epilog
1395
1392
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4095
1396
1393
%result = atomicrmw add ptr addrspace (1 ) %gep , i32 2 syncscope("agent" ) seq_cst
@@ -1438,8 +1435,7 @@ define amdgpu_ps float @mubuf_atomicrmw_vgpr_ptr_offset4294967296(ptr addrspace(
1438
1435
; GFX12-NEXT: v_mov_b32_e32 v2, 2
1439
1436
; GFX12-NEXT: global_atomic_add_u32 v0, v[0:1], v2, off th:TH_ATOMIC_RETURN
1440
1437
; GFX12-NEXT: s_waitcnt vmcnt(0)
1441
- ; GFX12-NEXT: buffer_gl0_inv
1442
- ; GFX12-NEXT: buffer_gl1_inv
1438
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1443
1439
; GFX12-NEXT: ; return to shader part epilog
1444
1440
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4294967296
1445
1441
%result = atomicrmw add ptr addrspace (1 ) %gep , i32 2 syncscope("agent" ) seq_cst
@@ -1491,8 +1487,7 @@ define amdgpu_ps float @mubuf_atomicrmw_sgpr_ptr_vgpr_offset(ptr addrspace(1) in
1491
1487
; GFX12-NEXT: v_add_co_ci_u32_e32 v1, vcc_lo, v3, v1, vcc_lo
1492
1488
; GFX12-NEXT: global_atomic_add_u32 v0, v[0:1], v4, off th:TH_ATOMIC_RETURN
1493
1489
; GFX12-NEXT: s_waitcnt vmcnt(0)
1494
- ; GFX12-NEXT: buffer_gl0_inv
1495
- ; GFX12-NEXT: buffer_gl1_inv
1490
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1496
1491
; GFX12-NEXT: ; return to shader part epilog
1497
1492
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i32 %voffset
1498
1493
%result = atomicrmw add ptr addrspace (1 ) %gep , i32 2 syncscope("agent" ) seq_cst
@@ -1536,8 +1531,7 @@ define amdgpu_ps float @mubuf_cmpxchg_sgpr_ptr_offset4095(ptr addrspace(1) inreg
1536
1531
; GFX12-NEXT: v_mov_b32_e32 v0, 0
1537
1532
; GFX12-NEXT: global_atomic_cmpswap_b32 v0, v0, v[1:2], s[2:3] offset:16380 th:TH_ATOMIC_RETURN
1538
1533
; GFX12-NEXT: s_waitcnt vmcnt(0)
1539
- ; GFX12-NEXT: buffer_gl0_inv
1540
- ; GFX12-NEXT: buffer_gl1_inv
1534
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1541
1535
; GFX12-NEXT: ; return to shader part epilog
1542
1536
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4095
1543
1537
%result.struct = cmpxchg ptr addrspace (1 ) %gep , i32 %old , i32 %in syncscope("agent" ) seq_cst seq_cst
@@ -1590,8 +1584,7 @@ define amdgpu_ps float @mubuf_cmpxchg_sgpr_ptr_offset4294967296(ptr addrspace(1)
1590
1584
; GFX12-NEXT: v_dual_mov_b32 v4, s1 :: v_dual_mov_b32 v3, s0
1591
1585
; GFX12-NEXT: global_atomic_cmpswap_b32 v0, v[3:4], v[1:2], off th:TH_ATOMIC_RETURN
1592
1586
; GFX12-NEXT: s_waitcnt vmcnt(0)
1593
- ; GFX12-NEXT: buffer_gl0_inv
1594
- ; GFX12-NEXT: buffer_gl1_inv
1587
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1595
1588
; GFX12-NEXT: ; return to shader part epilog
1596
1589
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4294967296
1597
1590
%result.struct = cmpxchg ptr addrspace (1 ) %gep , i32 %old , i32 %in syncscope("agent" ) seq_cst seq_cst
@@ -1633,8 +1626,7 @@ define amdgpu_ps float @mubuf_cmpxchg_vgpr_ptr_offset4095(ptr addrspace(1) %ptr,
1633
1626
; GFX12-NEXT: v_mov_b32_e32 v4, v2
1634
1627
; GFX12-NEXT: global_atomic_cmpswap_b32 v0, v[0:1], v[3:4], off offset:16380 th:TH_ATOMIC_RETURN
1635
1628
; GFX12-NEXT: s_waitcnt vmcnt(0)
1636
- ; GFX12-NEXT: buffer_gl0_inv
1637
- ; GFX12-NEXT: buffer_gl1_inv
1629
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1638
1630
; GFX12-NEXT: ; return to shader part epilog
1639
1631
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4095
1640
1632
%result.struct = cmpxchg ptr addrspace (1 ) %gep , i32 %old , i32 %in syncscope("agent" ) seq_cst seq_cst
@@ -1682,8 +1674,7 @@ define amdgpu_ps float @mubuf_cmpxchg_vgpr_ptr_offset4294967296(ptr addrspace(1)
1682
1674
; GFX12-NEXT: v_add_co_ci_u32_e32 v1, vcc_lo, v1, v6, vcc_lo
1683
1675
; GFX12-NEXT: global_atomic_cmpswap_b32 v0, v[0:1], v[3:4], off th:TH_ATOMIC_RETURN
1684
1676
; GFX12-NEXT: s_waitcnt vmcnt(0)
1685
- ; GFX12-NEXT: buffer_gl0_inv
1686
- ; GFX12-NEXT: buffer_gl1_inv
1677
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1687
1678
; GFX12-NEXT: ; return to shader part epilog
1688
1679
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i64 4294967296
1689
1680
%result.struct = cmpxchg ptr addrspace (1 ) %gep , i32 %old , i32 %in syncscope("agent" ) seq_cst seq_cst
@@ -1736,8 +1727,7 @@ define amdgpu_ps float @mubuf_cmpxchg_sgpr_ptr_vgpr_offset(ptr addrspace(1) inre
1736
1727
; GFX12-NEXT: v_add_co_ci_u32_e32 v1, vcc_lo, v5, v1, vcc_lo
1737
1728
; GFX12-NEXT: global_atomic_cmpswap_b32 v0, v[0:1], v[2:3], off th:TH_ATOMIC_RETURN
1738
1729
; GFX12-NEXT: s_waitcnt vmcnt(0)
1739
- ; GFX12-NEXT: buffer_gl0_inv
1740
- ; GFX12-NEXT: buffer_gl1_inv
1730
+ ; GFX12-NEXT: global_inv scope:SCOPE_DEV
1741
1731
; GFX12-NEXT: ; return to shader part epilog
1742
1732
%gep = getelementptr i32 , ptr addrspace (1 ) %ptr , i32 %voffset
1743
1733
%result.struct = cmpxchg ptr addrspace (1 ) %gep , i32 %old , i32 %in syncscope("agent" ) seq_cst seq_cst
0 commit comments