[libc][test] fix memory leak pt.2 (#122384)
[llvm-project.git] / llvm / test / MC / AMDGPU / gfx12_asm_vimage.s
blob8bf9b92e8d1d8d7276c243a69eaa91f57ef190df
1 ; RUN: llvm-mc -triple=amdgcn -mcpu=gfx1200 -show-encoding %s | FileCheck --check-prefixes=GFX12 %s
3 image_load v[0:3], v0, s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D
4 // GFX12: encoding: [0x00,0x00,0xc0,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
6 image_load v[1:4], [v2, v3], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D
7 // GFX12: encoding: [0x01,0x00,0xc0,0xd3,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
9 image_load v[4:7], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_3D
10 // GFX12: encoding: [0x02,0x00,0xc0,0xd3,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
12 image_load v[252:255], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_CUBE
13 // GFX12: encoding: [0x03,0x00,0xc0,0xd3,0xfc,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
15 image_load v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_1D_ARRAY
16 // GFX12: encoding: [0x04,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
18 image_load v[0:3], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_ARRAY
19 // GFX12: encoding: [0x05,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
21 image_load v[0:3], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA
22 // GFX12: encoding: [0x06,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
24 image_load v[0:3], [v4, v5, v6, v7], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
25 // GFX12: encoding: [0x07,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x06,0x07]
27 image_load v[0:1], v255, s[0:7] dmask:0x9 dim:1D
28 // GFX12: encoding: [0x00,0x00,0x40,0xd2,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x00]
30 image_load v255, [v254, v255], s[0:7] dmask:0x1 dim:2D
31 // GFX12: encoding: [0x01,0x00,0x40,0xd0,0xff,0x00,0x00,0x00,0xfe,0xff,0x00,0x00]
33 image_load v0, [v2, v22, v222], s[0:7] dmask:0x1 dim:3D
34 // GFX12: encoding: [0x02,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x02,0x16,0xde,0x00]
36 image_load v0, [v2, v3, v4], s[0:7] dmask:0x1 dim:CUBE
37 // GFX12: encoding: [0x03,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x02,0x03,0x04,0x00]
39 image_load v0, [v2, v3], s[0:7] dmask:0x1 dim:1D_ARRAY
40 // GFX12: encoding: [0x04,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x02,0x03,0x00,0x00]
42 image_load v0, [v2, v3, v4], s[0:7] dmask:0x1 dim:2D_ARRAY
43 // GFX12: encoding: [0x05,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x02,0x03,0x04,0x00]
45 image_load v0, [v2, v3, v4], s[0:7] dmask:0x1 dim:2D_MSAA
46 // GFX12: encoding: [0x06,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x02,0x03,0x04,0x00]
48 image_load v0, [v2, v3, v4, v5], s[0:7] dmask:0x1 dim:2D_MSAA_ARRAY
49 // GFX12: encoding: [0x07,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x02,0x03,0x04,0x05]
51 image_load v[0:3], v0, s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D a16
52 // GFX12: encoding: [0x40,0x00,0xc0,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
54 image_load v[1:4], v2, s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D a16
55 // GFX12: encoding: [0x41,0x00,0xc0,0xd3,0x01,0x08,0x00,0x00,0x02,0x00,0x00,0x00]
57 image_load v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_3D a16
58 // GFX12: encoding: [0x42,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
60 image_load v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_CUBE a16
61 // GFX12: encoding: [0x43,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
63 image_load v[0:3], v4, s[8:15] dmask:0xf dim:SQ_RSRC_IMG_1D_ARRAY a16
64 // GFX12: encoding: [0x44,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x00,0x00,0x00]
66 image_load v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_ARRAY a16
67 // GFX12: encoding: [0x45,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
69 image_load v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA a16
70 // GFX12: encoding: [0x46,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
72 image_load v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY a16
73 // GFX12: encoding: [0x47,0x00,0xc0,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
75 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D d16
76 // GFX12: encoding: [0x20,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
78 image_load v0, v0, s[0:7] dmask:0x6 dim:SQ_RSRC_IMG_1D d16
79 // GFX12: encoding: [0x20,0x00,0x80,0xd1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
81 image_load v[0:1], v0, s[0:7] dmask:0xe dim:SQ_RSRC_IMG_1D d16
82 // GFX12: encoding: [0x20,0x00,0x80,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
84 image_load v[0:1], v0, s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D d16
85 // GFX12: encoding: [0x20,0x00,0xc0,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
87 image_load v1, [v0, v1], s[16:23] dmask:0x1 dim:SQ_RSRC_IMG_2D
88 // GFX12: encoding: [0x01,0x00,0x40,0xd0,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
90 image_load v[1:2], [v0, v1], s[16:23] dmask:0x1 dim:SQ_RSRC_IMG_2D tfe
91 // GFX12: encoding: [0x01,0x00,0x40,0xd0,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
93 image_load v[1:2], [v0, v1], s[16:23] dmask:0x3 dim:SQ_RSRC_IMG_2D
94 // GFX12: encoding: [0x01,0x00,0xc0,0xd0,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
96 image_load v[1:3], [v0, v1], s[16:23] dmask:0x3 dim:SQ_RSRC_IMG_2D tfe
97 // GFX12: encoding: [0x01,0x00,0xc0,0xd0,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
99 image_load v[1:3], [v0, v1], s[16:23] dmask:0x7 dim:SQ_RSRC_IMG_2D
100 // GFX12: encoding: [0x01,0x00,0xc0,0xd1,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
102 image_load v[1:4], [v0, v1], s[16:23] dmask:0x7 dim:SQ_RSRC_IMG_2D tfe
103 // GFX12: encoding: [0x01,0x00,0xc0,0xd1,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
105 image_load v[1:4], [v0, v1], s[16:23] dmask:0xf dim:SQ_RSRC_IMG_2D
106 // GFX12: encoding: [0x01,0x00,0xc0,0xd3,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
108 image_load v[1:5], [v0, v1], s[16:23] dmask:0xf dim:SQ_RSRC_IMG_2D tfe
109 // GFX12: encoding: [0x01,0x00,0xc0,0xd3,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
111 // FIXME: This test is incorrect because r128 assumes a 128-bit RSRC.
112 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D r128
113 // GFX12: encoding: [0x10,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
115 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_CU
116 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
118 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_SE
119 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00]
121 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_DEV
122 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00]
124 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_SYS
125 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x0c,0x00,0x00,0x00,0x00,0x00]
127 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_RT
128 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
130 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT
131 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00]
133 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_HT
134 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
136 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_LU
137 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00]
139 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT_RT
140 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00]
142 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_RT_NT
143 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x50,0x00,0x00,0x00,0x00,0x00]
145 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT_HT
146 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00]
148 image_load v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_BYPASS scope:SCOPE_SYS
149 // GFX12: encoding: [0x00,0x00,0x40,0xd0,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00]
151 image_load v[0:2], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_ARRAY th:TH_LOAD_HT scope:SCOPE_SE a16 tfe d16
152 // GFX12: encoding: [0x65,0x00,0xc0,0xd3,0x00,0x10,0xa4,0x00,0x04,0x05,0x00,0x00]
154 // FIXME: This test is incorrect because r128 assumes a 128-bit RSRC.
155 image_load v[0:2], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_ARRAY th:TH_LOAD_HT scope:SCOPE_SE r128 a16 tfe d16
156 // GFX12: encoding: [0x75,0x00,0xc0,0xd3,0x00,0x10,0xa4,0x00,0x04,0x05,0x00,0x00]
158 image_load v[4:7], [v1, v0], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D
159 // GFX12: encoding: [0x01,0x00,0xc0,0xd3,0x04,0x08,0x00,0x00,0x01,0x00,0x00,0x00]
161 image_load v[1:4], [v2, v1, v0], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_3D
162 // GFX12: encoding: [0x02,0x00,0xc0,0xd3,0x01,0x08,0x00,0x00,0x02,0x01,0x00,0x00]
164 image_load v[1:4], [v3, v2, v1, v0], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
165 // GFX12: encoding: [0x07,0x00,0xc0,0xd3,0x01,0x08,0x00,0x00,0x03,0x02,0x01,0x00]
167 image_load_mip v[252:255], [v0, v1], s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D
168 // GFX12: encoding: [0x00,0x40,0xc0,0xd3,0xfc,0x00,0x00,0x00,0x00,0x01,0x00,0x00]
170 image_load_mip v[253:255], [v255, v254], s[0:7] dmask:0xe dim:SQ_RSRC_IMG_1D
171 // GFX12: encoding: [0x00,0x40,0x80,0xd3,0xfd,0x00,0x00,0x00,0xff,0xfe,0x00,0x00]
173 image_load_mip v[254:255], [v254, v255, v253], s[0:7] dmask:0xc dim:SQ_RSRC_IMG_2D
174 // GFX12: encoding: [0x01,0x40,0x00,0xd3,0xfe,0x00,0x00,0x00,0xfe,0xff,0xfd,0x00]
176 image_load_mip v255, [v254, v255, v253, v252], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_3D
177 // GFX12: encoding: [0x02,0x40,0x00,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0xfc]
179 image_load_mip v255, [v254, v255, v253, v252], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_CUBE
180 // GFX12: encoding: [0x03,0x40,0x00,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0xfc]
182 image_load_mip v255, [v254, v255, v253], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_1D_ARRAY
183 // GFX12: encoding: [0x04,0x40,0x00,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0x00]
185 image_load_mip v255, [v254, v255, v253, v255], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_2D_ARRAY
186 // GFX12: encoding: [0x05,0x40,0x00,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0xff]
188 image_load_mip v[252:255], [v0, v1], s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT
189 // GFX12: encoding: [0x00,0x40,0xc0,0xd3,0xfc,0x00,0x10,0x00,0x00,0x01,0x00,0x00]
191 image_load_pck v5, v1, s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D
192 // GFX12: encoding: [0x00,0x80,0x40,0xd0,0x05,0x10,0x00,0x00,0x01,0x00,0x00,0x00]
194 image_load_pck v[5:6], [v1, v2], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D
195 // GFX12: encoding: [0x01,0x80,0xc0,0xd0,0x05,0x10,0x00,0x00,0x01,0x02,0x00,0x00]
197 image_load_pck v[5:6], [v1, v2, v3], s[8:15] dmask:0xc dim:SQ_RSRC_IMG_3D
198 // GFX12: encoding: [0x02,0x80,0x00,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
200 image_load_pck v[5:6], [v1, v2, v3], s[8:15] dmask:0xa dim:SQ_RSRC_IMG_CUBE
201 // GFX12: encoding: [0x03,0x80,0x80,0xd2,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
203 image_load_pck v[5:7], [v1, v2], s[8:15] dmask:0xb dim:SQ_RSRC_IMG_1D_ARRAY
204 // GFX12: encoding: [0x04,0x80,0xc0,0xd2,0x05,0x10,0x00,0x00,0x01,0x02,0x00,0x00]
206 image_load_pck v[5:7], [v1, v2, v3], s[8:15] dmask:0xd dim:SQ_RSRC_IMG_2D_ARRAY
207 // GFX12: encoding: [0x05,0x80,0x40,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
209 image_load_pck v[5:7], [v1, v2, v3], s[8:15] dmask:0x7 dim:SQ_RSRC_IMG_2D_MSAA
210 // GFX12: encoding: [0x06,0x80,0xc0,0xd1,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
212 image_load_pck v[5:8], [v1, v2, v3, v4], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
213 // GFX12: encoding: [0x07,0x80,0xc0,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x04]
215 image_load_pck v5, v1, s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT
216 // GFX12: encoding: [0x00,0x80,0x40,0xd0,0x05,0x10,0x10,0x00,0x01,0x00,0x00,0x00]
218 image_load_pck_sgn v5, v1, s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D
219 // GFX12: encoding: [0x00,0xc0,0x40,0xd0,0x05,0x10,0x00,0x00,0x01,0x00,0x00,0x00]
221 image_load_pck_sgn v[5:6], [v1, v2], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D
222 // GFX12: encoding: [0x01,0xc0,0xc0,0xd0,0x05,0x10,0x00,0x00,0x01,0x02,0x00,0x00]
224 image_load_pck_sgn v[5:6], [v1, v2, v3], s[8:15] dmask:0xc dim:SQ_RSRC_IMG_3D
225 // GFX12: encoding: [0x02,0xc0,0x00,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
227 image_load_pck_sgn v[5:6], [v1, v2, v3], s[8:15] dmask:0xa dim:SQ_RSRC_IMG_CUBE
228 // GFX12: encoding: [0x03,0xc0,0x80,0xd2,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
230 image_load_pck_sgn v[5:7], [v1, v2], s[8:15] dmask:0xb dim:SQ_RSRC_IMG_1D_ARRAY
231 // GFX12: encoding: [0x04,0xc0,0xc0,0xd2,0x05,0x10,0x00,0x00,0x01,0x02,0x00,0x00]
233 image_load_pck_sgn v[5:7], [v1, v2, v3], s[8:15] dmask:0xd dim:SQ_RSRC_IMG_2D_ARRAY
234 // GFX12: encoding: [0x05,0xc0,0x40,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
236 image_load_pck_sgn v[5:7], [v1, v2, v3], s[8:15] dmask:0x7 dim:SQ_RSRC_IMG_2D_MSAA
237 // GFX12: encoding: [0x06,0xc0,0xc0,0xd1,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
239 image_load_pck_sgn v[5:8], [v1, v2, v3, v4], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
240 // GFX12: encoding: [0x07,0xc0,0xc0,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x04]
242 image_load_pck_sgn v5, v1, s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT
243 // GFX12: encoding: [0x00,0xc0,0x40,0xd0,0x05,0x10,0x10,0x00,0x01,0x00,0x00,0x00]
245 image_load_mip_pck v5, [v0, v1], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D
246 // GFX12: encoding: [0x00,0x00,0x41,0xd0,0x05,0x10,0x00,0x00,0x00,0x01,0x00,0x00]
248 image_load_mip_pck v[5:6], [v0, v1, v2], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D
249 // GFX12: encoding: [0x01,0x00,0xc1,0xd0,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x00]
251 image_load_mip_pck v[5:6], [v0, v1, v2, v3], s[8:15] dmask:0xc dim:SQ_RSRC_IMG_3D
252 // GFX12: encoding: [0x02,0x00,0x01,0xd3,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
254 image_load_mip_pck v[5:6], [v0, v1, v2, v3], s[8:15] dmask:0xa dim:SQ_RSRC_IMG_CUBE
255 // GFX12: encoding: [0x03,0x00,0x81,0xd2,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
257 image_load_mip_pck v[5:7], [v0, v1, v2], s[8:15] dmask:0xb dim:SQ_RSRC_IMG_1D_ARRAY
258 // GFX12: encoding: [0x04,0x00,0xc1,0xd2,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x00]
260 image_load_mip_pck v[5:7], [v0, v1, v2, v3], s[8:15] dmask:0xd dim:SQ_RSRC_IMG_2D_ARRAY
261 // GFX12: encoding: [0x05,0x00,0x41,0xd3,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
263 image_load_mip_pck v5, [v0, v1], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT
264 // GFX12: encoding: [0x00,0x00,0x41,0xd0,0x05,0x10,0x10,0x00,0x00,0x01,0x00,0x00]
266 image_load_mip_pck_sgn v5, [v0, v1], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D
267 // GFX12: encoding: [0x00,0x40,0x41,0xd0,0x05,0x10,0x00,0x00,0x00,0x01,0x00,0x00]
269 image_load_mip_pck_sgn v[5:6], [v0, v1, v2], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D
270 // GFX12: encoding: [0x01,0x40,0xc1,0xd0,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x00]
272 image_load_mip_pck_sgn v[5:6], [v0, v1, v2, v3], s[8:15] dmask:0xc dim:SQ_RSRC_IMG_3D
273 // GFX12: encoding: [0x02,0x40,0x01,0xd3,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
275 image_load_mip_pck_sgn v[5:6], [v0, v1, v2, v3], s[8:15] dmask:0xa dim:SQ_RSRC_IMG_CUBE
276 // GFX12: encoding: [0x03,0x40,0x81,0xd2,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
278 image_load_mip_pck_sgn v[5:7], [v0, v1, v2], s[8:15] dmask:0xb dim:SQ_RSRC_IMG_1D_ARRAY
279 // GFX12: encoding: [0x04,0x40,0xc1,0xd2,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x00]
281 image_load_mip_pck_sgn v[5:7], [v0, v1, v2, v3], s[8:15] dmask:0xd dim:SQ_RSRC_IMG_2D_ARRAY
282 // GFX12: encoding: [0x05,0x40,0x41,0xd3,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
284 image_load_mip_pck_sgn v5, [v0, v1], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT
285 // GFX12: encoding: [0x00,0x40,0x41,0xd0,0x05,0x10,0x10,0x00,0x00,0x01,0x00,0x00]
287 image_store v[0:3], v0, s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D
288 // GFX12: encoding: [0x00,0x80,0xc1,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
290 image_store v[1:4], [v2, v3], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D
291 // GFX12: encoding: [0x01,0x80,0xc1,0xd3,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
293 image_store v[4:7], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_3D
294 // GFX12: encoding: [0x02,0x80,0xc1,0xd3,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
296 image_store v[252:255], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_CUBE
297 // GFX12: encoding: [0x03,0x80,0xc1,0xd3,0xfc,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
299 image_store v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_1D_ARRAY
300 // GFX12: encoding: [0x04,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
302 image_store v[0:3], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_ARRAY
303 // GFX12: encoding: [0x05,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
305 image_store v[0:3], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA
306 // GFX12: encoding: [0x06,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
308 image_store v[0:3], [v4, v5, v6, v7], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
309 // GFX12: encoding: [0x07,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x06,0x07]
311 image_store v[0:3], v0, s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D a16
312 // GFX12: encoding: [0x40,0x80,0xc1,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
314 image_store v[1:4], v2, s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D a16
315 // GFX12: encoding: [0x41,0x80,0xc1,0xd3,0x01,0x08,0x00,0x00,0x02,0x00,0x00,0x00]
317 image_store v[4:7], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_3D a16
318 // GFX12: encoding: [0x42,0x80,0xc1,0xd3,0x04,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
320 image_store v[252:255], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_CUBE a16
321 // GFX12: encoding: [0x43,0x80,0xc1,0xd3,0xfc,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
323 image_store v[0:3], v4, s[8:15] dmask:0xf dim:SQ_RSRC_IMG_1D_ARRAY a16
324 // GFX12: encoding: [0x44,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x00,0x00,0x00]
326 image_store v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_ARRAY a16
327 // GFX12: encoding: [0x45,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
329 image_store v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA a16
330 // GFX12: encoding: [0x46,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
332 image_store v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY a16
333 // GFX12: encoding: [0x47,0x80,0xc1,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
335 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D d16
336 // GFX12: encoding: [0x20,0x80,0x41,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
338 image_store v0, v0, s[0:7] dmask:0x6 dim:SQ_RSRC_IMG_1D d16
339 // GFX12: encoding: [0x20,0x80,0x81,0xd1,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
341 image_store v[0:1], v0, s[0:7] dmask:0xe dim:SQ_RSRC_IMG_1D d16
342 // GFX12: encoding: [0x20,0x80,0x81,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
344 image_store v[0:1], v0, s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D d16
345 // GFX12: encoding: [0x20,0x80,0xc1,0xd3,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
347 image_store v1, [v0, v1], s[16:23] dmask:0x1 dim:SQ_RSRC_IMG_2D
348 // GFX12: encoding: [0x01,0x80,0x41,0xd0,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
350 image_store v[1:2], [v0, v1], s[16:23] dmask:0x1 dim:SQ_RSRC_IMG_2D tfe
351 // GFX12: encoding: [0x01,0x80,0x41,0xd0,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
353 image_store v[1:2], [v0, v1], s[16:23] dmask:0x3 dim:SQ_RSRC_IMG_2D
354 // GFX12: encoding: [0x01,0x80,0xc1,0xd0,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
356 image_store v[1:3], [v0, v1], s[16:23] dmask:0x3 dim:SQ_RSRC_IMG_2D tfe
357 // GFX12: encoding: [0x01,0x80,0xc1,0xd0,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
359 image_store v[1:3], [v0, v1], s[16:23] dmask:0x7 dim:SQ_RSRC_IMG_2D
360 // GFX12: encoding: [0x01,0x80,0xc1,0xd1,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
362 image_store v[1:4], [v0, v1], s[16:23] dmask:0x7 dim:SQ_RSRC_IMG_2D tfe
363 // GFX12: encoding: [0x01,0x80,0xc1,0xd1,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
365 image_store v[1:4], [v0, v1], s[16:23] dmask:0xf dim:SQ_RSRC_IMG_2D
366 // GFX12: encoding: [0x01,0x80,0xc1,0xd3,0x01,0x20,0x00,0x00,0x00,0x01,0x00,0x00]
368 image_store v[1:5], [v0, v1], s[16:23] dmask:0xf dim:SQ_RSRC_IMG_2D tfe
369 // GFX12: encoding: [0x01,0x80,0xc1,0xd3,0x01,0x20,0x80,0x00,0x00,0x01,0x00,0x00]
371 // FIXME: This test is incorrect because r128 assumes a 128-bit RSRC.
372 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D r128
373 // GFX12: encoding: [0x10,0x80,0x41,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
375 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_CU
376 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
378 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_SE
379 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00]
381 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_DEV
382 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00]
384 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_SYS
385 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x0c,0x00,0x00,0x00,0x00,0x00]
387 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_RT
388 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
390 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_NT
391 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00]
393 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_HT
394 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
396 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_RT_WB
397 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00]
399 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_NT_RT
400 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00]
402 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_RT_NT
403 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x50,0x00,0x00,0x00,0x00,0x00]
405 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_NT_HT
406 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00]
408 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_NT_WB
409 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x70,0x00,0x00,0x00,0x00,0x00]
411 image_store v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_BYPASS scope:SCOPE_SYS
412 // GFX12: encoding: [0x00,0x80,0x41,0xd0,0x00,0x00,0x3c,0x00,0x00,0x00,0x00,0x00]
414 image_store v[1:4], [v2, v0], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D
415 // GFX12: encoding: [0x01,0x80,0xc1,0xd3,0x01,0x08,0x00,0x00,0x02,0x00,0x00,0x00]
417 image_store v[1:4], [v2, v1, v0], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_3D
418 // GFX12: encoding: [0x02,0x80,0xc1,0xd3,0x01,0x08,0x00,0x00,0x02,0x01,0x00,0x00]
420 image_store v[1:4], [v3, v2, v1, v0], s[4:11] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
421 // GFX12: encoding: [0x07,0x80,0xc1,0xd3,0x01,0x08,0x00,0x00,0x03,0x02,0x01,0x00]
423 image_store_mip v[252:255], [v0, v1], s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D
424 // GFX12: encoding: [0x00,0xc0,0xc1,0xd3,0xfc,0x00,0x00,0x00,0x00,0x01,0x00,0x00]
426 image_store_mip v[253:255], [v255, v254], s[0:7] dmask:0xe dim:SQ_RSRC_IMG_1D
427 // GFX12: encoding: [0x00,0xc0,0x81,0xd3,0xfd,0x00,0x00,0x00,0xff,0xfe,0x00,0x00]
429 image_store_mip v[254:255], [v254, v255, v253], s[0:7] dmask:0xc dim:SQ_RSRC_IMG_2D
430 // GFX12: encoding: [0x01,0xc0,0x01,0xd3,0xfe,0x00,0x00,0x00,0xfe,0xff,0xfd,0x00]
432 image_store_mip v255, [v254, v255, v253, v252], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_3D
433 // GFX12: encoding: [0x02,0xc0,0x01,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0xfc]
435 image_store_mip v255, [v254, v255, v253, v252], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_CUBE
436 // GFX12: encoding: [0x03,0xc0,0x01,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0xfc]
438 image_store_mip v255, [v254, v255, v253], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_1D_ARRAY
439 // GFX12: encoding: [0x04,0xc0,0x01,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0x00]
441 image_store_mip v255, [v254, v255, v253, v255], s[0:7] dmask:0x8 dim:SQ_RSRC_IMG_2D_ARRAY
442 // GFX12: encoding: [0x05,0xc0,0x01,0xd2,0xff,0x00,0x00,0x00,0xfe,0xff,0xfd,0xff]
444 image_store_mip v[252:255], [v0, v1], s[0:7] dmask:0xf dim:SQ_RSRC_IMG_1D th:TH_STORE_NT
445 // GFX12: encoding: [0x00,0xc0,0xc1,0xd3,0xfc,0x00,0x10,0x00,0x00,0x01,0x00,0x00]
447 image_store_pck v5, v1, s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D
448 // GFX12: encoding: [0x00,0x00,0x42,0xd0,0x05,0x10,0x00,0x00,0x01,0x00,0x00,0x00]
450 image_store_pck v[5:6], [v1, v2], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D
451 // GFX12: encoding: [0x01,0x00,0xc2,0xd0,0x05,0x10,0x00,0x00,0x01,0x02,0x00,0x00]
453 image_store_pck v[5:6], [v1, v2, v3], s[8:15] dmask:0xc dim:SQ_RSRC_IMG_3D
454 // GFX12: encoding: [0x02,0x00,0x02,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
456 image_store_pck v[5:6], [v1, v2, v3], s[8:15] dmask:0xa dim:SQ_RSRC_IMG_CUBE
457 // GFX12: encoding: [0x03,0x00,0x82,0xd2,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
459 image_store_pck v[5:7], [v1, v2], s[8:15] dmask:0xb dim:SQ_RSRC_IMG_1D_ARRAY
460 // GFX12: encoding: [0x04,0x00,0xc2,0xd2,0x05,0x10,0x00,0x00,0x01,0x02,0x00,0x00]
462 image_store_pck v[5:7], [v1, v2, v3], s[8:15] dmask:0xd dim:SQ_RSRC_IMG_2D_ARRAY
463 // GFX12: encoding: [0x05,0x00,0x42,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
465 image_store_pck v[5:7], [v1, v2, v3], s[8:15] dmask:0x7 dim:SQ_RSRC_IMG_2D_MSAA
466 // GFX12: encoding: [0x06,0x00,0xc2,0xd1,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x00]
468 image_store_pck v[5:8], [v1, v2, v3, v4], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
469 // GFX12: encoding: [0x07,0x00,0xc2,0xd3,0x05,0x10,0x00,0x00,0x01,0x02,0x03,0x04]
471 image_store_pck v5, v1, s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_NT
472 // GFX12: encoding: [0x00,0x00,0x42,0xd0,0x05,0x10,0x10,0x00,0x01,0x00,0x00,0x00]
474 image_store_mip_pck v5, [v0, v1], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D
475 // GFX12: encoding: [0x00,0x40,0x42,0xd0,0x05,0x10,0x00,0x00,0x00,0x01,0x00,0x00]
477 image_store_mip_pck v[5:6], [v0, v1, v2], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D
478 // GFX12: encoding: [0x01,0x40,0xc2,0xd0,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x00]
480 image_store_mip_pck v[5:6], [v0, v1, v2, v3], s[8:15] dmask:0xc dim:SQ_RSRC_IMG_3D
481 // GFX12: encoding: [0x02,0x40,0x02,0xd3,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
483 image_store_mip_pck v[5:6], [v0, v1, v2, v3], s[8:15] dmask:0xa dim:SQ_RSRC_IMG_CUBE
484 // GFX12: encoding: [0x03,0x40,0x82,0xd2,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
486 image_store_mip_pck v[5:7], [v0, v1, v2], s[8:15] dmask:0xb dim:SQ_RSRC_IMG_1D_ARRAY
487 // GFX12: encoding: [0x04,0x40,0xc2,0xd2,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x00]
489 image_store_mip_pck v[5:7], [v0, v1, v2, v3], s[8:15] dmask:0xd dim:SQ_RSRC_IMG_2D_ARRAY
490 // GFX12: encoding: [0x05,0x40,0x42,0xd3,0x05,0x10,0x00,0x00,0x00,0x01,0x02,0x03]
492 image_store_mip_pck v5, [v0, v1], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_STORE_NT
493 // GFX12: encoding: [0x00,0x40,0x42,0xd0,0x05,0x10,0x10,0x00,0x00,0x01,0x00,0x00]
495 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
496 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
498 image_atomic_swap v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
499 // GFX12: encoding: [0x01,0x80,0x42,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
501 image_atomic_swap v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
502 // GFX12: encoding: [0x02,0x80,0x42,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
504 image_atomic_swap v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
505 // GFX12: encoding: [0x03,0x80,0x42,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
507 image_atomic_swap v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
508 // GFX12: encoding: [0x04,0x80,0xc2,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
510 image_atomic_swap v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
511 // GFX12: encoding: [0x05,0x80,0xc2,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
513 image_atomic_swap v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
514 // GFX12: encoding: [0x06,0x80,0xc2,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
516 image_atomic_swap v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
517 // GFX12: encoding: [0x07,0x80,0xc2,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
519 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_CU
520 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
522 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_SE
523 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00]
525 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_DEV
526 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00]
528 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D scope:SCOPE_SYS
529 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x0c,0x00,0x00,0x00,0x00,0x00]
531 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_RETURN
532 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00]
534 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_RT
535 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
537 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_RT_RETURN
538 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00]
540 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
541 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
543 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT_RETURN
544 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00]
546 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_CASCADE_RT scope:SCOPE_DEV
547 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x48,0x00,0x00,0x00,0x00,0x00]
549 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_CASCADE_NT scope:SCOPE_SYS
550 // GFX12: encoding: [0x00,0x80,0x42,0xd0,0x00,0x00,0x6c,0x00,0x00,0x00,0x00,0x00]
552 // FIXME: This test is incorrect because r128 assumes a 128-bit RSRC.
553 image_atomic_swap v0, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D r128
554 // GFX12: encoding: [0x11,0x80,0x42,0xd0,0x00,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
556 image_atomic_swap v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D a16
557 // GFX12: encoding: [0x40,0x80,0x42,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
559 image_atomic_swap v1, v2, s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D a16
560 // GFX12: encoding: [0x41,0x80,0x42,0xd0,0x01,0x08,0x00,0x00,0x02,0x00,0x00,0x00]
562 image_atomic_swap v4, [v4, v5], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D a16
563 // GFX12: encoding: [0x42,0x80,0x42,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
565 image_atomic_swap v255, [v4, v5], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE a16
566 // GFX12: encoding: [0x43,0x80,0x42,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
568 image_atomic_swap v[0:1], v4, s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY a16
569 // GFX12: encoding: [0x44,0x80,0xc2,0xd0,0x00,0x10,0x00,0x00,0x04,0x00,0x00,0x00]
571 image_atomic_swap v[1:2], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY a16
572 // GFX12: encoding: [0x45,0x80,0xc2,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
574 image_atomic_swap v[3:4], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA a16
575 // GFX12: encoding: [0x46,0x80,0xc2,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
577 image_atomic_swap v[254:255], [v4, v5], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY a16
578 // GFX12: encoding: [0x47,0x80,0xc2,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x00,0x00]
580 image_atomic_swap v1, [v2, v0], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
581 // GFX12: encoding: [0x01,0x80,0x42,0xd0,0x01,0x08,0x00,0x00,0x02,0x00,0x00,0x00]
583 image_atomic_swap v1, [v2, v1, v0], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_3D
584 // GFX12: encoding: [0x02,0x80,0x42,0xd0,0x01,0x08,0x00,0x00,0x02,0x01,0x00,0x00]
586 image_atomic_swap v1, [v3, v2, v1, v0], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
587 // GFX12: encoding: [0x07,0x80,0x42,0xd0,0x01,0x08,0x00,0x00,0x03,0x02,0x01,0x00]
589 image_atomic_cmpswap v[0:1], v0, s[0:7] dmask:0x3 dim:SQ_RSRC_IMG_1D
590 // GFX12: encoding: [0x00,0xc0,0xc2,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
592 image_atomic_cmpswap v[1:2], [v2, v3], s[4:11] dmask:0x3 dim:SQ_RSRC_IMG_2D
593 // GFX12: encoding: [0x01,0xc0,0xc2,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
595 image_atomic_cmpswap v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_3D
596 // GFX12: encoding: [0x02,0xc0,0xc2,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
598 image_atomic_cmpswap v[254:255], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_CUBE
599 // GFX12: encoding: [0x03,0xc0,0xc2,0xd0,0xfe,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
601 image_atomic_cmpswap v[0:3], [v4, v5], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_1D_ARRAY
602 // GFX12: encoding: [0x04,0xc0,0xc2,0xd3,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
604 image_atomic_cmpswap v[1:4], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_ARRAY
605 // GFX12: encoding: [0x05,0xc0,0xc2,0xd3,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
607 image_atomic_cmpswap v[4:7], [v4, v5, v6], s[8:15] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA
608 // GFX12: encoding: [0x06,0xc0,0xc2,0xd3,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
610 image_atomic_cmpswap v[252:255], [v4, v5, v6, v7], s[96:103] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
611 // GFX12: encoding: [0x07,0xc0,0xc2,0xd3,0xfc,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
613 image_atomic_cmpswap v[0:1], v0, s[0:7] dmask:0x3 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
614 // GFX12: encoding: [0x00,0xc0,0xc2,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
616 image_atomic_add_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
617 // GFX12: encoding: [0x00,0x00,0x43,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
619 image_atomic_add_uint v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
620 // GFX12: encoding: [0x01,0x00,0x43,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
622 image_atomic_add_uint v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
623 // GFX12: encoding: [0x02,0x00,0x43,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
625 image_atomic_add_uint v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
626 // GFX12: encoding: [0x03,0x00,0x43,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
628 image_atomic_add_uint v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
629 // GFX12: encoding: [0x04,0x00,0xc3,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
631 image_atomic_add_uint v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
632 // GFX12: encoding: [0x05,0x00,0xc3,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
634 image_atomic_add_uint v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
635 // GFX12: encoding: [0x06,0x00,0xc3,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
637 image_atomic_add_uint v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
638 // GFX12: encoding: [0x07,0x00,0xc3,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
640 image_atomic_add_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
641 // GFX12: encoding: [0x00,0x00,0x43,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
643 image_atomic_add_uint v1, [v2, v0], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
644 // GFX12: encoding: [0x01,0x00,0x43,0xd0,0x01,0x08,0x00,0x00,0x02,0x00,0x00,0x00]
646 image_atomic_add_uint v1, [v2, v1, v0], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_3D
647 // GFX12: encoding: [0x02,0x00,0x43,0xd0,0x01,0x08,0x00,0x00,0x02,0x01,0x00,0x00]
649 image_atomic_add_uint v1, [v3, v2, v1, v0], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
650 // GFX12: encoding: [0x07,0x00,0x43,0xd0,0x01,0x08,0x00,0x00,0x03,0x02,0x01,0x00]
652 image_atomic_sub_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
653 // GFX12: encoding: [0x00,0x40,0x43,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
655 image_atomic_sub_uint v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
656 // GFX12: encoding: [0x01,0x40,0x43,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
658 image_atomic_sub_uint v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
659 // GFX12: encoding: [0x02,0x40,0x43,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
661 image_atomic_sub_uint v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
662 // GFX12: encoding: [0x03,0x40,0x43,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
664 image_atomic_sub_uint v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
665 // GFX12: encoding: [0x04,0x40,0xc3,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
667 image_atomic_sub_uint v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
668 // GFX12: encoding: [0x05,0x40,0xc3,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
670 image_atomic_sub_uint v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
671 // GFX12: encoding: [0x06,0x40,0xc3,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
673 image_atomic_sub_uint v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
674 // GFX12: encoding: [0x07,0x40,0xc3,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
676 image_atomic_sub_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
677 // GFX12: encoding: [0x00,0x40,0x43,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
679 image_atomic_min_int v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
680 // GFX12: encoding: [0x00,0x80,0x43,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
682 image_atomic_min_int v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
683 // GFX12: encoding: [0x01,0x80,0x43,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
685 image_atomic_min_int v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
686 // GFX12: encoding: [0x02,0x80,0x43,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
688 image_atomic_min_int v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
689 // GFX12: encoding: [0x03,0x80,0x43,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
691 image_atomic_min_int v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
692 // GFX12: encoding: [0x04,0x80,0xc3,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
694 image_atomic_min_int v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
695 // GFX12: encoding: [0x05,0x80,0xc3,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
697 image_atomic_min_int v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
698 // GFX12: encoding: [0x06,0x80,0xc3,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
700 image_atomic_min_int v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
701 // GFX12: encoding: [0x07,0x80,0xc3,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
703 image_atomic_min_int v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
704 // GFX12: encoding: [0x00,0x80,0x43,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
706 image_atomic_min_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
707 // GFX12: encoding: [0x00,0xc0,0x43,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
709 image_atomic_min_uint v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
710 // GFX12: encoding: [0x01,0xc0,0x43,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
712 image_atomic_min_uint v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
713 // GFX12: encoding: [0x02,0xc0,0x43,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
715 image_atomic_min_uint v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
716 // GFX12: encoding: [0x03,0xc0,0x43,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
718 image_atomic_min_uint v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
719 // GFX12: encoding: [0x04,0xc0,0xc3,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
721 image_atomic_min_uint v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
722 // GFX12: encoding: [0x05,0xc0,0xc3,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
724 image_atomic_min_uint v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
725 // GFX12: encoding: [0x06,0xc0,0xc3,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
727 image_atomic_min_uint v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
728 // GFX12: encoding: [0x07,0xc0,0xc3,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
730 image_atomic_min_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
731 // GFX12: encoding: [0x00,0xc0,0x43,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
733 image_atomic_max_int v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
734 // GFX12: encoding: [0x00,0x00,0x44,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
736 image_atomic_max_int v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
737 // GFX12: encoding: [0x01,0x00,0x44,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
739 image_atomic_max_int v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
740 // GFX12: encoding: [0x02,0x00,0x44,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
742 image_atomic_max_int v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
743 // GFX12: encoding: [0x03,0x00,0x44,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
745 image_atomic_max_int v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
746 // GFX12: encoding: [0x04,0x00,0xc4,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
748 image_atomic_max_int v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
749 // GFX12: encoding: [0x05,0x00,0xc4,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
751 image_atomic_max_int v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
752 // GFX12: encoding: [0x06,0x00,0xc4,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
754 image_atomic_max_int v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
755 // GFX12: encoding: [0x07,0x00,0xc4,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
757 image_atomic_max_int v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
758 // GFX12: encoding: [0x00,0x00,0x44,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
760 image_atomic_max_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
761 // GFX12: encoding: [0x00,0x40,0x44,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
763 image_atomic_max_uint v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
764 // GFX12: encoding: [0x01,0x40,0x44,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
766 image_atomic_max_uint v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
767 // GFX12: encoding: [0x02,0x40,0x44,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
769 image_atomic_max_uint v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
770 // GFX12: encoding: [0x03,0x40,0x44,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
772 image_atomic_max_uint v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
773 // GFX12: encoding: [0x04,0x40,0xc4,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
775 image_atomic_max_uint v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
776 // GFX12: encoding: [0x05,0x40,0xc4,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
778 image_atomic_max_uint v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
779 // GFX12: encoding: [0x06,0x40,0xc4,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
781 image_atomic_max_uint v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
782 // GFX12: encoding: [0x07,0x40,0xc4,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
784 image_atomic_max_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
785 // GFX12: encoding: [0x00,0x40,0x44,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
787 image_atomic_and v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
788 // GFX12: encoding: [0x00,0x80,0x44,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
790 image_atomic_and v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
791 // GFX12: encoding: [0x01,0x80,0x44,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
793 image_atomic_and v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
794 // GFX12: encoding: [0x02,0x80,0x44,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
796 image_atomic_and v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
797 // GFX12: encoding: [0x03,0x80,0x44,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
799 image_atomic_and v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
800 // GFX12: encoding: [0x04,0x80,0xc4,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
802 image_atomic_and v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
803 // GFX12: encoding: [0x05,0x80,0xc4,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
805 image_atomic_and v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
806 // GFX12: encoding: [0x06,0x80,0xc4,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
808 image_atomic_and v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
809 // GFX12: encoding: [0x07,0x80,0xc4,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
811 image_atomic_and v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
812 // GFX12: encoding: [0x00,0x80,0x44,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
814 image_atomic_or v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
815 // GFX12: encoding: [0x00,0xc0,0x44,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
817 image_atomic_or v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
818 // GFX12: encoding: [0x01,0xc0,0x44,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
820 image_atomic_or v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
821 // GFX12: encoding: [0x02,0xc0,0x44,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
823 image_atomic_or v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
824 // GFX12: encoding: [0x03,0xc0,0x44,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
826 image_atomic_or v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
827 // GFX12: encoding: [0x04,0xc0,0xc4,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
829 image_atomic_or v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
830 // GFX12: encoding: [0x05,0xc0,0xc4,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
832 image_atomic_or v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
833 // GFX12: encoding: [0x06,0xc0,0xc4,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
835 image_atomic_or v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
836 // GFX12: encoding: [0x07,0xc0,0xc4,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
838 image_atomic_or v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
839 // GFX12: encoding: [0x00,0xc0,0x44,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
841 image_atomic_xor v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
842 // GFX12: encoding: [0x00,0x00,0x45,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
844 image_atomic_xor v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
845 // GFX12: encoding: [0x01,0x00,0x45,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
847 image_atomic_xor v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
848 // GFX12: encoding: [0x02,0x00,0x45,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
850 image_atomic_xor v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
851 // GFX12: encoding: [0x03,0x00,0x45,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
853 image_atomic_xor v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
854 // GFX12: encoding: [0x04,0x00,0xc5,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
856 image_atomic_xor v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
857 // GFX12: encoding: [0x05,0x00,0xc5,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
859 image_atomic_xor v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
860 // GFX12: encoding: [0x06,0x00,0xc5,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
862 image_atomic_xor v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
863 // GFX12: encoding: [0x07,0x00,0xc5,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
865 image_atomic_xor v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
866 // GFX12: encoding: [0x00,0x00,0x45,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
868 image_atomic_inc_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
869 // GFX12: encoding: [0x00,0x40,0x45,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
871 image_atomic_inc_uint v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
872 // GFX12: encoding: [0x01,0x40,0x45,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
874 image_atomic_inc_uint v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
875 // GFX12: encoding: [0x02,0x40,0x45,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
877 image_atomic_inc_uint v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
878 // GFX12: encoding: [0x03,0x40,0x45,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
880 image_atomic_inc_uint v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
881 // GFX12: encoding: [0x04,0x40,0xc5,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
883 image_atomic_inc_uint v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
884 // GFX12: encoding: [0x05,0x40,0xc5,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
886 image_atomic_inc_uint v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
887 // GFX12: encoding: [0x06,0x40,0xc5,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
889 image_atomic_inc_uint v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
890 // GFX12: encoding: [0x07,0x40,0xc5,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
892 image_atomic_inc_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
893 // GFX12: encoding: [0x00,0x40,0x45,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
895 image_atomic_dec_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
896 // GFX12: encoding: [0x00,0x80,0x45,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
898 image_atomic_dec_uint v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
899 // GFX12: encoding: [0x01,0x80,0x45,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
901 image_atomic_dec_uint v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
902 // GFX12: encoding: [0x02,0x80,0x45,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
904 image_atomic_dec_uint v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
905 // GFX12: encoding: [0x03,0x80,0x45,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
907 image_atomic_dec_uint v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
908 // GFX12: encoding: [0x04,0x80,0xc5,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
910 image_atomic_dec_uint v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
911 // GFX12: encoding: [0x05,0x80,0xc5,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
913 image_atomic_dec_uint v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
914 // GFX12: encoding: [0x06,0x80,0xc5,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
916 image_atomic_dec_uint v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
917 // GFX12: encoding: [0x07,0x80,0xc5,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
919 image_atomic_dec_uint v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
920 // GFX12: encoding: [0x00,0x80,0x45,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
922 image_atomic_pk_add_f16 v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
923 // GFX12: encoding: [0x00,0x80,0x61,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
925 image_atomic_pk_add_f16 v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
926 // GFX12: encoding: [0x01,0x80,0x61,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
928 image_atomic_pk_add_f16 v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
929 // GFX12: encoding: [0x02,0x80,0x61,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
931 image_atomic_pk_add_f16 v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
932 // GFX12: encoding: [0x03,0x80,0x61,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
934 image_atomic_pk_add_f16 v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
935 // GFX12: encoding: [0x04,0x80,0xe1,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
937 image_atomic_pk_add_f16 v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
938 // GFX12: encoding: [0x05,0x80,0xe1,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
940 image_atomic_pk_add_f16 v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
941 // GFX12: encoding: [0x06,0x80,0xe1,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
943 image_atomic_pk_add_f16 v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
944 // GFX12: encoding: [0x07,0x80,0xe1,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
946 image_atomic_pk_add_f16 v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
947 // GFX12: encoding: [0x00,0x80,0x61,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
949 image_atomic_pk_add_bf16 v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
950 // GFX12: encoding: [0x00,0xc0,0x61,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
952 image_atomic_pk_add_bf16 v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
953 // GFX12: encoding: [0x01,0xc0,0x61,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
955 image_atomic_pk_add_bf16 v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
956 // GFX12: encoding: [0x02,0xc0,0x61,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
958 image_atomic_pk_add_bf16 v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
959 // GFX12: encoding: [0x03,0xc0,0x61,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
961 image_atomic_pk_add_bf16 v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
962 // GFX12: encoding: [0x04,0xc0,0xe1,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
964 image_atomic_pk_add_bf16 v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
965 // GFX12: encoding: [0x05,0xc0,0xe1,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
967 image_atomic_pk_add_bf16 v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
968 // GFX12: encoding: [0x06,0xc0,0xe1,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
970 image_atomic_pk_add_bf16 v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
971 // GFX12: encoding: [0x07,0xc0,0xe1,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
973 image_atomic_pk_add_bf16 v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
974 // GFX12: encoding: [0x00,0xc0,0x61,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
976 image_atomic_add_flt v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
977 // GFX12: encoding: [0x00,0xc0,0x60,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
979 image_atomic_add_flt v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
980 // GFX12: encoding: [0x01,0xc0,0x60,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
982 image_atomic_add_flt v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
983 // GFX12: encoding: [0x02,0xc0,0x60,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
985 image_atomic_add_flt v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
986 // GFX12: encoding: [0x03,0xc0,0x60,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
988 image_atomic_add_flt v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
989 // GFX12: encoding: [0x04,0xc0,0xe0,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
991 image_atomic_add_flt v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
992 // GFX12: encoding: [0x05,0xc0,0xe0,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
994 image_atomic_add_flt v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
995 // GFX12: encoding: [0x06,0xc0,0xe0,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
997 image_atomic_add_flt v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
998 // GFX12: encoding: [0x07,0xc0,0xe0,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
1000 image_atomic_add_flt v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
1001 // GFX12: encoding: [0x00,0xc0,0x60,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
1003 image_atomic_min_flt v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
1004 // GFX12: encoding: [0x00,0x00,0x61,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
1006 image_atomic_min_flt v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
1007 // GFX12: encoding: [0x01,0x00,0x61,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
1009 image_atomic_min_flt v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
1010 // GFX12: encoding: [0x02,0x00,0x61,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1012 image_atomic_min_flt v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
1013 // GFX12: encoding: [0x03,0x00,0x61,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1015 image_atomic_min_flt v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
1016 // GFX12: encoding: [0x04,0x00,0xe1,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
1018 image_atomic_min_flt v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
1019 // GFX12: encoding: [0x05,0x00,0xe1,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1021 image_atomic_min_flt v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
1022 // GFX12: encoding: [0x06,0x00,0xe1,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1024 image_atomic_min_flt v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
1025 // GFX12: encoding: [0x07,0x00,0xe1,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
1027 image_atomic_min_flt v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
1028 // GFX12: encoding: [0x00,0x00,0x61,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
1030 image_atomic_max_flt v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D
1031 // GFX12: encoding: [0x00,0x40,0x61,0xd0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
1033 image_atomic_max_flt v1, [v2, v3], s[4:11] dmask:0x1 dim:SQ_RSRC_IMG_2D
1034 // GFX12: encoding: [0x01,0x40,0x61,0xd0,0x01,0x08,0x00,0x00,0x02,0x03,0x00,0x00]
1036 image_atomic_max_flt v4, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_3D
1037 // GFX12: encoding: [0x02,0x40,0x61,0xd0,0x04,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1039 image_atomic_max_flt v255, [v4, v5, v6], s[8:15] dmask:0x1 dim:SQ_RSRC_IMG_CUBE
1040 // GFX12: encoding: [0x03,0x40,0x61,0xd0,0xff,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1042 image_atomic_max_flt v[0:1], [v4, v5], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_1D_ARRAY
1043 // GFX12: encoding: [0x04,0x40,0xe1,0xd0,0x00,0x10,0x00,0x00,0x04,0x05,0x00,0x00]
1045 image_atomic_max_flt v[1:2], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_ARRAY
1046 // GFX12: encoding: [0x05,0x40,0xe1,0xd0,0x01,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1048 image_atomic_max_flt v[3:4], [v4, v5, v6], s[8:15] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA
1049 // GFX12: encoding: [0x06,0x40,0xe1,0xd0,0x03,0x10,0x00,0x00,0x04,0x05,0x06,0x00]
1051 image_atomic_max_flt v[254:255], [v4, v5, v6, v7], s[96:103] dmask:0x3 dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
1052 // GFX12: encoding: [0x07,0x40,0xe1,0xd0,0xfe,0xc0,0x00,0x00,0x04,0x05,0x06,0x07]
1054 image_atomic_max_flt v0, v0, s[0:7] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_ATOMIC_NT
1055 // GFX12: encoding: [0x00,0x40,0x61,0xd0,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00]
1057 image_bvh_intersect_ray v[4:7], [v9, v10, v[11:13], v[14:16], v[17:19]], s[4:7]
1058 // GFX12: encoding: [0x10,0x40,0xc6,0xd3,0x04,0x08,0x00,0x11,0x09,0x0a,0x0b,0x0e]
1060 image_bvh_intersect_ray v[4:7], [v9, v10, v[11:13], v[14:16]], s[4:7] a16
1061 // GFX12: encoding: [0x50,0x40,0xc6,0xd3,0x04,0x08,0x00,0x00,0x09,0x0a,0x0b,0x0e]
1063 image_bvh64_intersect_ray v[4:7], [v[9:10], v11, v[12:14], v[15:17], v[18:20]], s[4:7]
1064 // GFX12: encoding: [0x10,0x80,0xc6,0xd3,0x04,0x08,0x00,0x12,0x09,0x0b,0x0c,0x0f]
1066 image_bvh64_intersect_ray v[4:7], [v[9:10], v11, v[12:14], v[15:17]], s[4:7] a16
1067 // GFX12: encoding: [0x50,0x80,0xc6,0xd3,0x04,0x08,0x00,0x00,0x09,0x0b,0x0c,0x0f]
1069 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D
1070 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1072 image_get_resinfo v4, v32, s[96:103] dmask:0x2 dim:SQ_RSRC_IMG_2D
1073 // GFX12: encoding: [0x01,0xc0,0x85,0xd0,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1075 image_get_resinfo v4, v32, s[96:103] dmask:0x8 dim:SQ_RSRC_IMG_3D
1076 // GFX12: encoding: [0x02,0xc0,0x05,0xd2,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1078 image_get_resinfo v[4:5], v32, s[96:103] dmask:0x5 dim:SQ_RSRC_IMG_CUBE
1079 // GFX12: encoding: [0x03,0xc0,0x45,0xd1,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1081 image_get_resinfo v[4:5], v32, s[96:103] dmask:0xa dim:SQ_RSRC_IMG_1D_ARRAY
1082 // GFX12: encoding: [0x04,0xc0,0x85,0xd2,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1084 image_get_resinfo v[4:6], v32, s[96:103] dmask:0xb dim:SQ_RSRC_IMG_2D_ARRAY
1085 // GFX12: encoding: [0x05,0xc0,0xc5,0xd2,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1087 image_get_resinfo v[4:6], v32, s[96:103] dmask:0xe dim:SQ_RSRC_IMG_2D_MSAA
1088 // GFX12: encoding: [0x06,0xc0,0x85,0xd3,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1090 image_get_resinfo v[4:7], v32, s[96:103] dmask:0xf dim:SQ_RSRC_IMG_2D_MSAA_ARRAY
1091 // GFX12: encoding: [0x07,0xc0,0xc5,0xd3,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1093 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_RT
1094 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x00,0x00,0x20,0x00,0x00,0x00]
1096 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT
1097 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x10,0x00,0x20,0x00,0x00,0x00]
1099 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_HT
1100 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x20,0x00,0x20,0x00,0x00,0x00]
1102 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_LU
1103 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x30,0x00,0x20,0x00,0x00,0x00]
1105 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT_RT
1106 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x40,0x00,0x20,0x00,0x00,0x00]
1108 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_RT_NT
1109 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x50,0x00,0x20,0x00,0x00,0x00]
1111 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_NT_HT
1112 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x60,0x00,0x20,0x00,0x00,0x00]
1114 image_get_resinfo v4, v32, s[96:103] dmask:0x1 dim:SQ_RSRC_IMG_1D th:TH_LOAD_BYPASS scope:SCOPE_SYS
1115 // GFX12: encoding: [0x00,0xc0,0x45,0xd0,0x04,0xc0,0x3c,0x00,0x20,0x00,0x00,0x00]