@@ -1561,34 +1561,28 @@ define <33 x i32> @v33i32_func_void() #0 {
1561
1561
; GFX11-NEXT: buffer_load_b128 v[9:12], off, s[0:3], 0 offset:80
1562
1562
; GFX11-NEXT: buffer_load_b128 v[13:16], off, s[0:3], 0 offset:64
1563
1563
; GFX11-NEXT: buffer_load_b128 v[17:20], off, s[0:3], 0 offset:48
1564
- ; GFX11-NEXT: buffer_load_b128 v[21:24], off, s[0:3], 0 offset:16
1565
- ; GFX11-NEXT: buffer_load_b128 v[25:28], off, s[0:3], 0
1566
- ; GFX11-NEXT: buffer_load_b128 v[29:32], off, s[0:3], 0 offset:32
1564
+ ; GFX11-NEXT: buffer_load_b128 v[21:24], off, s[0:3], 0 offset:32
1565
+ ; GFX11-NEXT: buffer_load_b128 v[25:28], off, s[0:3], 0 offset:16
1566
+ ; GFX11-NEXT: buffer_load_b128 v[29:32], off, s[0:3], 0
1567
1567
; GFX11-NEXT: buffer_load_b32 v33, off, s[0:3], 0 offset:128
1568
- ; GFX11-NEXT: v_readfirstlane_b32 s0, v0
1569
- ; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1)
1570
- ; GFX11-NEXT: s_add_i32 s1, s0, 0x70
1571
- ; GFX11-NEXT: s_add_i32 s2, s0, 0x60
1572
- ; GFX11-NEXT: s_add_i32 s3, s0, 0x50
1573
- ; GFX11-NEXT: s_add_i32 s4, s0, 48
1574
1568
; GFX11-NEXT: s_waitcnt vmcnt(8)
1575
- ; GFX11-NEXT: scratch_store_b128 off , v[1:4], s1
1569
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[1:4], off offset:112
1576
1570
; GFX11-NEXT: s_waitcnt vmcnt(7)
1577
- ; GFX11-NEXT: scratch_store_b128 off , v[5:8], s2
1571
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[5:8], off offset:96
1578
1572
; GFX11-NEXT: s_waitcnt vmcnt(6)
1579
- ; GFX11-NEXT: scratch_store_b128 off , v[9:12], s3
1573
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[9:12], off offset:80
1580
1574
; GFX11-NEXT: s_waitcnt vmcnt(5)
1581
- ; GFX11-NEXT: scratch_store_b128 off , v[13:16], s0 offset:64
1575
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[13:16], off offset:64
1582
1576
; GFX11-NEXT: s_waitcnt vmcnt(4)
1583
- ; GFX11-NEXT: scratch_store_b128 off , v[17:20], s4
1577
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[17:20], off offset:48
1584
1578
; GFX11-NEXT: s_waitcnt vmcnt(3)
1585
- ; GFX11-NEXT: scratch_store_b128 off , v[21:24], s0 offset:16
1579
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[21:24], off offset:32
1586
1580
; GFX11-NEXT: s_waitcnt vmcnt(2)
1587
- ; GFX11-NEXT: scratch_store_b128 off , v[25:28], s0
1581
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[25:28], off offset:16
1588
1582
; GFX11-NEXT: s_waitcnt vmcnt(1)
1589
- ; GFX11-NEXT: scratch_store_b128 off , v[29:32], s0 offset:32
1583
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[29:32], off
1590
1584
; GFX11-NEXT: s_waitcnt vmcnt(0)
1591
- ; GFX11-NEXT: scratch_store_b32 off , v33, s0 offset:128
1585
+ ; GFX11-NEXT: scratch_store_b32 v0 , v33, off offset:128
1592
1586
; GFX11-NEXT: s_setpc_b64 s[30:31]
1593
1587
%ptr = load volatile ptr addrspace (1 ), ptr addrspace (4 ) undef
1594
1588
%val = load <33 x i32 >, ptr addrspace (1 ) %ptr
@@ -1850,34 +1844,28 @@ define { <32 x i32>, i32 } @struct_v32i32_i32_func_void() #0 {
1850
1844
; GFX11-NEXT: buffer_load_b128 v[9:12], off, s[0:3], 0 offset:80
1851
1845
; GFX11-NEXT: buffer_load_b128 v[13:16], off, s[0:3], 0 offset:64
1852
1846
; GFX11-NEXT: buffer_load_b128 v[17:20], off, s[0:3], 0 offset:48
1853
- ; GFX11-NEXT: buffer_load_b128 v[21:24], off, s[0:3], 0 offset:16
1854
- ; GFX11-NEXT: buffer_load_b128 v[25:28], off, s[0:3], 0
1855
- ; GFX11-NEXT: buffer_load_b128 v[29:32], off, s[0:3], 0 offset:32
1847
+ ; GFX11-NEXT: buffer_load_b128 v[21:24], off, s[0:3], 0 offset:32
1848
+ ; GFX11-NEXT: buffer_load_b128 v[25:28], off, s[0:3], 0 offset:16
1849
+ ; GFX11-NEXT: buffer_load_b128 v[29:32], off, s[0:3], 0
1856
1850
; GFX11-NEXT: buffer_load_b32 v33, off, s[0:3], 0 offset:128
1857
- ; GFX11-NEXT: v_readfirstlane_b32 s0, v0
1858
- ; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1)
1859
- ; GFX11-NEXT: s_add_i32 s1, s0, 0x70
1860
- ; GFX11-NEXT: s_add_i32 s2, s0, 0x60
1861
- ; GFX11-NEXT: s_add_i32 s3, s0, 0x50
1862
- ; GFX11-NEXT: s_add_i32 s4, s0, 48
1863
1851
; GFX11-NEXT: s_waitcnt vmcnt(8)
1864
- ; GFX11-NEXT: scratch_store_b128 off , v[1:4], s1
1852
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[1:4], off offset:112
1865
1853
; GFX11-NEXT: s_waitcnt vmcnt(7)
1866
- ; GFX11-NEXT: scratch_store_b128 off , v[5:8], s2
1854
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[5:8], off offset:96
1867
1855
; GFX11-NEXT: s_waitcnt vmcnt(6)
1868
- ; GFX11-NEXT: scratch_store_b128 off , v[9:12], s3
1856
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[9:12], off offset:80
1869
1857
; GFX11-NEXT: s_waitcnt vmcnt(5)
1870
- ; GFX11-NEXT: scratch_store_b128 off , v[13:16], s0 offset:64
1858
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[13:16], off offset:64
1871
1859
; GFX11-NEXT: s_waitcnt vmcnt(4)
1872
- ; GFX11-NEXT: scratch_store_b128 off , v[17:20], s4
1860
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[17:20], off offset:48
1873
1861
; GFX11-NEXT: s_waitcnt vmcnt(3)
1874
- ; GFX11-NEXT: scratch_store_b128 off , v[21:24], s0 offset:16
1862
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[21:24], off offset:32
1875
1863
; GFX11-NEXT: s_waitcnt vmcnt(2)
1876
- ; GFX11-NEXT: scratch_store_b128 off , v[25:28], s0
1864
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[25:28], off offset:16
1877
1865
; GFX11-NEXT: s_waitcnt vmcnt(1)
1878
- ; GFX11-NEXT: scratch_store_b128 off , v[29:32], s0 offset:32
1866
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[29:32], off
1879
1867
; GFX11-NEXT: s_waitcnt vmcnt(0)
1880
- ; GFX11-NEXT: scratch_store_b32 off , v33, s0 offset:128
1868
+ ; GFX11-NEXT: scratch_store_b32 v0 , v33, off offset:128
1881
1869
; GFX11-NEXT: s_setpc_b64 s[30:31]
1882
1870
%ptr = load volatile ptr addrspace (1 ), ptr addrspace (4 ) undef
1883
1871
%val = load { <32 x i32 >, i32 }, ptr addrspace (1 ) %ptr
@@ -2143,33 +2131,24 @@ define { i32, <32 x i32> } @struct_i32_v32i32_func_void() #0 {
2143
2131
; GFX11-NEXT: buffer_load_b128 v[25:28], off, s[0:3], 0 offset:144
2144
2132
; GFX11-NEXT: buffer_load_b128 v[29:32], off, s[0:3], 0 offset:128
2145
2133
; GFX11-NEXT: buffer_load_b32 v33, off, s[0:3], 0
2146
- ; GFX11-NEXT: v_readfirstlane_b32 s0, v0
2147
- ; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1)
2148
- ; GFX11-NEXT: s_add_i32 s1, s0, 0xf0
2149
- ; GFX11-NEXT: s_add_i32 s2, s0, 0xe0
2150
- ; GFX11-NEXT: s_add_i32 s3, s0, 0xd0
2151
- ; GFX11-NEXT: s_add_i32 s4, s0, 0xc0
2152
- ; GFX11-NEXT: s_add_i32 s5, s0, 0xb0
2153
- ; GFX11-NEXT: s_add_i32 s6, s0, 0xa0
2154
- ; GFX11-NEXT: s_add_i32 s7, s0, 0x90
2155
2134
; GFX11-NEXT: s_waitcnt vmcnt(8)
2156
- ; GFX11-NEXT: scratch_store_b128 off , v[1:4], s1
2135
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[1:4], off offset:240
2157
2136
; GFX11-NEXT: s_waitcnt vmcnt(7)
2158
- ; GFX11-NEXT: scratch_store_b128 off , v[5:8], s2
2137
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[5:8], off offset:224
2159
2138
; GFX11-NEXT: s_waitcnt vmcnt(6)
2160
- ; GFX11-NEXT: scratch_store_b128 off , v[9:12], s3
2139
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[9:12], off offset:208
2161
2140
; GFX11-NEXT: s_waitcnt vmcnt(5)
2162
- ; GFX11-NEXT: scratch_store_b128 off , v[13:16], s4
2141
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[13:16], off offset:192
2163
2142
; GFX11-NEXT: s_waitcnt vmcnt(4)
2164
- ; GFX11-NEXT: scratch_store_b128 off , v[17:20], s5
2143
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[17:20], off offset:176
2165
2144
; GFX11-NEXT: s_waitcnt vmcnt(3)
2166
- ; GFX11-NEXT: scratch_store_b128 off , v[21:24], s6
2145
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[21:24], off offset:160
2167
2146
; GFX11-NEXT: s_waitcnt vmcnt(2)
2168
- ; GFX11-NEXT: scratch_store_b128 off , v[25:28], s7
2147
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[25:28], off offset:144
2169
2148
; GFX11-NEXT: s_waitcnt vmcnt(1)
2170
- ; GFX11-NEXT: scratch_store_b128 off , v[29:32], s0 offset:128
2149
+ ; GFX11-NEXT: scratch_store_b128 v0 , v[29:32], off offset:128
2171
2150
; GFX11-NEXT: s_waitcnt vmcnt(0)
2172
- ; GFX11-NEXT: scratch_store_b32 off , v33, s0
2151
+ ; GFX11-NEXT: scratch_store_b32 v0 , v33, off
2173
2152
; GFX11-NEXT: s_setpc_b64 s[30:31]
2174
2153
%ptr = load volatile ptr addrspace (1 ), ptr addrspace (4 ) undef
2175
2154
%val = load { i32 , <32 x i32 > }, ptr addrspace (1 ) %ptr
0 commit comments