1# RUN: llvm-mc -arch=amdgcn -mcpu=tonga -disassemble -show-encoding < %s | FileCheck %s -check-prefix=VI
2
3# VI:   buffer_load_dword v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x50,0xe0,0x00,0x01,0x01,0x01]
40x00 0x00 0x50 0xe0 0x00 0x01 0x01 0x01
5
6# VI:   buffer_load_dword v1, off, s[4:7], s1 offset:4 ; encoding: [0x04,0x00,0x50,0xe0,0x00,0x01,0x01,0x01]
70x04 0x00 0x50 0xe0 0x00 0x01 0x01 0x01
8
9# VI:   buffer_load_dword v1, off, s[4:7], s1 offset:4 glc ; encoding: [0x04,0x40,0x50,0xe0,0x00,0x01,0x01,0x01]
100x04 0x40 0x50 0xe0 0x00 0x01 0x01 0x01
11
12# VI:   buffer_load_dword v1, off, s[4:7], s1 offset:4 slc ; encoding: [0x04,0x00,0x52,0xe0,0x00,0x01,0x01,0x01]
130x04 0x00 0x52 0xe0 0x00 0x01 0x01 0x01
14
15# VI:   buffer_load_dword v1, off, s[4:7], s1 offset:4 tfe ; encoding: [0x04,0x00,0x50,0xe0,0x00,0x01,0x81,0x01]
160x04 0x00 0x50 0xe0 0x00 0x01 0x81 0x01
17
18# VI:   buffer_load_dword v1, off, s[4:7], s1 glc tfe ; encoding: [0x00,0x40,0x50,0xe0,0x00,0x01,0x81,0x01]
190x00 0x40 0x50 0xe0 0x00 0x01 0x81 0x01
20
21# VI:   buffer_load_dword v1, off, s[4:7], s1 offset:4 glc slc tfe ; encoding: [0x04,0x40,0x52,0xe0,0x00,0x01,0x81,0x01]
220x04 0x40 0x52 0xe0 0x00 0x01 0x81 0x01
23
24# VI:   buffer_load_dword v1, v2, s[4:7], s1 offen ; encoding: [0x00,0x10,0x50,0xe0,0x02,0x01,0x01,0x01]
250x00 0x10 0x50 0xe0 0x02 0x01 0x01 0x01
26
27# VI:   buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 ; encoding: [0x04,0x10,0x50,0xe0,0x02,0x01,0x01,0x01]
280x04 0x10 0x50 0xe0 0x02 0x01 0x01 0x01
29
30# VI:   buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc ; encoding: [0x04,0x50,0x50,0xe0,0x02,0x01,0x01,0x01]
310x04 0x50 0x50 0xe0 0x02 0x01 0x01 0x01
32
33# VI:   buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 slc ; encoding: [0x04,0x10,0x52,0xe0,0x02,0x01,0x01,0x01]
340x04 0x10 0x52 0xe0 0x02 0x01 0x01 0x01
35
36# VI:   buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 tfe ; encoding: [0x04,0x10,0x50,0xe0,0x02,0x01,0x81,0x01]
370x04 0x10 0x50 0xe0 0x02 0x01 0x81 0x01
38
39# VI:   buffer_load_dword v1, v2, s[4:7], s1 offen glc tfe ; encoding: [0x00,0x50,0x50,0xe0,0x02,0x01,0x81,0x01]
400x00 0x50 0x50 0xe0 0x02 0x01 0x81 0x01
41
42# VI:   buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe ; encoding: [0x04,0x50,0x52,0xe0,0x02,0x01,0x81,0x01]
430x04 0x50 0x52 0xe0 0x02 0x01 0x81 0x01
44
45# VI:   buffer_load_dword v1, v2, s[4:7], s1 idxen ; encoding: [0x00,0x20,0x50,0xe0,0x02,0x01,0x01,0x01]
460x00 0x20 0x50 0xe0 0x02 0x01 0x01 0x01
47
48# VI:   buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 ; encoding: [0x04,0x20,0x50,0xe0,0x02,0x01,0x01,0x01]
490x04 0x20 0x50 0xe0 0x02 0x01 0x01 0x01
50
51# VI:   buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc ; encoding: [0x04,0x60,0x50,0xe0,0x02,0x01,0x01,0x01]
520x04 0x60 0x50 0xe0 0x02 0x01 0x01 0x01
53
54# VI:   buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 slc ; encoding: [0x04,0x20,0x52,0xe0,0x02,0x01,0x01,0x01]
550x04 0x20 0x52 0xe0 0x02 0x01 0x01 0x01
56
57# VI:   buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 tfe ; encoding: [0x04,0x20,0x50,0xe0,0x02,0x01,0x81,0x01]
580x04 0x20 0x50 0xe0 0x02 0x01 0x81 0x01
59
60# VI:   buffer_load_dword v1, v2, s[4:7], s1 idxen glc tfe ; encoding: [0x00,0x60,0x50,0xe0,0x02,0x01,0x81,0x01]
610x00 0x60 0x50 0xe0 0x02 0x01 0x81 0x01
62
63# VI:   buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe ; encoding: [0x04,0x60,0x52,0xe0,0x02,0x01,0x81,0x01]
640x04 0x60 0x52 0xe0 0x02 0x01 0x81 0x01
65
66# VI:   buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen ; encoding: [0x00,0x30,0x50,0xe0,0x02,0x01,0x01,0x01]
670x00 0x30 0x50 0xe0 0x02 0x01 0x01 0x01
68
69# VI:   buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 ; encoding: [0x04,0x30,0x50,0xe0,0x02,0x01,0x01,0x01]
700x04 0x30 0x50 0xe0 0x02 0x01 0x01 0x01
71
72# VI:   buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc ; encoding: [0x04,0x70,0x50,0xe0,0x02,0x01,0x01,0x01]
730x04 0x70 0x50 0xe0 0x02 0x01 0x01 0x01
74
75# VI:   buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc ; encoding: [0x04,0x30,0x52,0xe0,0x02,0x01,0x01,0x01]
760x04 0x30 0x52 0xe0 0x02 0x01 0x01 0x01
77
78# VI:   buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe ; encoding: [0x04,0x30,0x50,0xe0,0x02,0x01,0x81,0x01]
790x04 0x30 0x50 0xe0 0x02 0x01 0x81 0x01
80
81# VI:   buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe ; encoding: [0x00,0x70,0x50,0xe0,0x02,0x01,0x81,0x01]
820x00 0x70 0x50 0xe0 0x02 0x01 0x81 0x01
83
84# VI:   buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe ; encoding: [0x04,0x70,0x52,0xe0,0x02,0x01,0x81,0x01]
850x04 0x70 0x52 0xe0 0x02 0x01 0x81 0x01
86
87# VI:   buffer_store_dword v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x70,0xe0,0x00,0x01,0x01,0x01]
880x00 0x00 0x70 0xe0 0x00 0x01 0x01 0x01
89
90# VI:   buffer_store_dword v1, off, s[4:7], s1 offset:4 ; encoding: [0x04,0x00,0x70,0xe0,0x00,0x01,0x01,0x01]
910x04 0x00 0x70 0xe0 0x00 0x01 0x01 0x01
92
93# VI:   buffer_store_dword v1, off, s[4:7], s1 offset:4 glc ; encoding: [0x04,0x40,0x70,0xe0,0x00,0x01,0x01,0x01]
940x04 0x40 0x70 0xe0 0x00 0x01 0x01 0x01
95
96# VI:   buffer_store_dword v1, off, s[4:7], s1 offset:4 slc ; encoding: [0x04,0x00,0x72,0xe0,0x00,0x01,0x01,0x01]
970x04 0x00 0x72 0xe0 0x00 0x01 0x01 0x01
98
99# VI:   buffer_store_dword v1, off, s[4:7], s1 offset:4 tfe ; encoding: [0x04,0x00,0x70,0xe0,0x00,0x01,0x81,0x01]
1000x04 0x00 0x70 0xe0 0x00 0x01 0x81 0x01
101
102# VI:   buffer_store_dword v1, off, s[4:7], s1 glc tfe ; encoding: [0x00,0x40,0x70,0xe0,0x00,0x01,0x81,0x01]
1030x00 0x40 0x70 0xe0 0x00 0x01 0x81 0x01
104
105# VI:   buffer_store_dword v1, off, s[4:7], s1 offset:4 glc slc tfe ; encoding: [0x04,0x40,0x72,0xe0,0x00,0x01,0x81,0x01]
1060x04 0x40 0x72 0xe0 0x00 0x01 0x81 0x01
107
108# VI:   buffer_store_dword v1, v2, s[4:7], s1 offen ; encoding: [0x00,0x10,0x70,0xe0,0x02,0x01,0x01,0x01]
1090x00 0x10 0x70 0xe0 0x02 0x01 0x01 0x01
110
111# VI:   buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 ; encoding: [0x04,0x10,0x70,0xe0,0x02,0x01,0x01,0x01]
1120x04 0x10 0x70 0xe0 0x02 0x01 0x01 0x01
113
114# VI:   buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc ; encoding: [0x04,0x50,0x70,0xe0,0x02,0x01,0x01,0x01]
1150x04 0x50 0x70 0xe0 0x02 0x01 0x01 0x01
116
117# VI:   buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 slc ; encoding: [0x04,0x10,0x72,0xe0,0x02,0x01,0x01,0x01]
1180x04 0x10 0x72 0xe0 0x02 0x01 0x01 0x01
119
120# VI:   buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 tfe ; encoding: [0x04,0x10,0x70,0xe0,0x02,0x01,0x81,0x01]
1210x04 0x10 0x70 0xe0 0x02 0x01 0x81 0x01
122
123# VI:   buffer_store_dword v1, v2, s[4:7], s1 offen glc tfe ; encoding: [0x00,0x50,0x70,0xe0,0x02,0x01,0x81,0x01]
1240x00 0x50 0x70 0xe0 0x02 0x01 0x81 0x01
125
126# VI:   buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe ; encoding: [0x04,0x50,0x72,0xe0,0x02,0x01,0x81,0x01]
1270x04 0x50 0x72 0xe0 0x02 0x01 0x81 0x01
128
129# VI:   buffer_store_dword v1, v2, s[4:7], s1 idxen ; encoding: [0x00,0x20,0x70,0xe0,0x02,0x01,0x01,0x01]
1300x00 0x20 0x70 0xe0 0x02 0x01 0x01 0x01
131
132# VI:   buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 ; encoding: [0x04,0x20,0x70,0xe0,0x02,0x01,0x01,0x01]
1330x04 0x20 0x70 0xe0 0x02 0x01 0x01 0x01
134
135# VI:   buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc ; encoding: [0x04,0x60,0x70,0xe0,0x02,0x01,0x01,0x01]
1360x04 0x60 0x70 0xe0 0x02 0x01 0x01 0x01
137
138# VI:   buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 slc ; encoding: [0x04,0x20,0x72,0xe0,0x02,0x01,0x01,0x01]
1390x04 0x20 0x72 0xe0 0x02 0x01 0x01 0x01
140
141# VI:   buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 tfe ; encoding: [0x04,0x20,0x70,0xe0,0x02,0x01,0x81,0x01]
1420x04 0x20 0x70 0xe0 0x02 0x01 0x81 0x01
143
144# VI:   buffer_store_dword v1, v2, s[4:7], s1 idxen glc tfe ; encoding: [0x00,0x60,0x70,0xe0,0x02,0x01,0x81,0x01]
1450x00 0x60 0x70 0xe0 0x02 0x01 0x81 0x01
146
147# VI:   buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe ; encoding: [0x04,0x60,0x72,0xe0,0x02,0x01,0x81,0x01]
1480x04 0x60 0x72 0xe0 0x02 0x01 0x81 0x01
149
150# VI:   buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen ; encoding: [0x00,0x30,0x70,0xe0,0x02,0x01,0x01,0x01]
1510x00 0x30 0x70 0xe0 0x02 0x01 0x01 0x01
152
153# VI:   buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 ; encoding: [0x04,0x30,0x70,0xe0,0x02,0x01,0x01,0x01]
1540x04 0x30 0x70 0xe0 0x02 0x01 0x01 0x01
155
156# VI:   buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc ; encoding: [0x04,0x70,0x70,0xe0,0x02,0x01,0x01,0x01]
1570x04 0x70 0x70 0xe0 0x02 0x01 0x01 0x01
158
159# VI:   buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc ; encoding: [0x04,0x30,0x72,0xe0,0x02,0x01,0x01,0x01]
1600x04 0x30 0x72 0xe0 0x02 0x01 0x01 0x01
161
162# VI:   buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe ; encoding: [0x04,0x30,0x70,0xe0,0x02,0x01,0x81,0x01]
1630x04 0x30 0x70 0xe0 0x02 0x01 0x81 0x01
164
165# VI:   buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe ; encoding: [0x00,0x70,0x70,0xe0,0x02,0x01,0x81,0x01]
1660x00 0x70 0x70 0xe0 0x02 0x01 0x81 0x01
167
168# VI:   buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe ; encoding: [0x04,0x70,0x72,0xe0,0x02,0x01,0x81,0x01]
1690x04 0x70 0x72 0xe0 0x02 0x01 0x81 0x01
170
171# VI:   buffer_load_format_x v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x00,0xe0,0x00,0x01,0x01,0x01]
1720x00 0x00 0x00 0xe0 0x00 0x01 0x01 0x01
173
174# VI:   buffer_load_format_xy v[1:2], off, s[4:7], s1 ; encoding: [0x00,0x00,0x04,0xe0,0x00,0x01,0x01,0x01]
1750x00 0x00 0x04 0xe0 0x00 0x01 0x01 0x01
176
177# VI:   buffer_load_format_xyz v[1:3], off, s[4:7], s1 ; encoding: [0x00,0x00,0x08,0xe0,0x00,0x01,0x01,0x01]
1780x00 0x00 0x08 0xe0 0x00 0x01 0x01 0x01
179
180# VI:   buffer_load_format_xyzw v[1:4], off, s[4:7], s1 ; encoding: [0x00,0x00,0x0c,0xe0,0x00,0x01,0x01,0x01]
1810x00 0x00 0x0c 0xe0 0x00 0x01 0x01 0x01
182
183# VI:   buffer_store_format_x v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x10,0xe0,0x00,0x01,0x01,0x01]
1840x00 0x00 0x10 0xe0 0x00 0x01 0x01 0x01
185
186# VI:   buffer_store_format_xy v[1:2], off, s[4:7], s1 ; encoding: [0x00,0x00,0x14,0xe0,0x00,0x01,0x01,0x01]
1870x00 0x00 0x14 0xe0 0x00 0x01 0x01 0x01
188
189# VI:   buffer_store_format_xyz v[1:3], off, s[4:7], s1 ; encoding: [0x00,0x00,0x18,0xe0,0x00,0x01,0x01,0x01]
1900x00 0x00 0x18 0xe0 0x00 0x01 0x01 0x01
191
192# VI:   buffer_store_format_xyzw v[1:4], off, s[4:7], s1 ; encoding: [0x00,0x00,0x1c,0xe0,0x00,0x01,0x01,0x01]
1930x00 0x00 0x1c 0xe0 0x00 0x01 0x01 0x01
194
195# VI:   buffer_load_ubyte v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x40,0xe0,0x00,0x01,0x01,0x01]
1960x00 0x00 0x40 0xe0 0x00 0x01 0x01 0x01
197
198# VI:   buffer_load_sbyte v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x44,0xe0,0x00,0x01,0x01,0x01]
1990x00 0x00 0x44 0xe0 0x00 0x01 0x01 0x01
200
201# VI:   buffer_load_ushort v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x48,0xe0,0x00,0x01,0x01,0x01]
2020x00 0x00 0x48 0xe0 0x00 0x01 0x01 0x01
203
204# VI:   buffer_load_sshort v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x4c,0xe0,0x00,0x01,0x01,0x01]
2050x00 0x00 0x4c 0xe0 0x00 0x01 0x01 0x01
206
207# VI:   buffer_load_dword v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x50,0xe0,0x00,0x01,0x01,0x01]
2080x00 0x00 0x50 0xe0 0x00 0x01 0x01 0x01
209
210# VI:   buffer_load_dwordx2 v[1:2], off, s[4:7], s1 ; encoding: [0x00,0x00,0x54,0xe0,0x00,0x01,0x01,0x01]
2110x00 0x00 0x54 0xe0 0x00 0x01 0x01 0x01
212
213# VI:   buffer_load_dwordx3 v[0:2], off, s[4:7], s0 offset:4095 ; encoding: [0xff,0x0f,0x58,0xe0,0x00,0x00,0x01,0x00]
2140xff,0x0f,0x58,0xe0,0x00,0x00,0x01,0x00
215
216# VI:   buffer_load_dwordx4 v[1:4], off, s[4:7], s1 ; encoding: [0x00,0x00,0x5c,0xe0,0x00,0x01,0x01,0x01]
2170x00 0x00 0x5c 0xe0 0x00 0x01 0x01 0x01
218
219# VI:   buffer_store_byte v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x60,0xe0,0x00,0x01,0x01,0x01]
2200x00 0x00 0x60 0xe0 0x00 0x01 0x01 0x01
221
222# VI:   buffer_store_short v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x68,0xe0,0x00,0x01,0x01,0x01]
2230x00 0x00 0x68 0xe0 0x00 0x01 0x01 0x01
224
225# VI:   buffer_store_dword v1, off, s[4:7], s1 ; encoding: [0x00,0x00,0x70,0xe0,0x00,0x01,0x01,0x01]
2260x00 0x00 0x70 0xe0 0x00 0x01 0x01 0x01
227
228# VI:   buffer_store_dwordx2 v[1:2], off, s[4:7], s1 ; encoding: [0x00,0x00,0x74,0xe0,0x00,0x01,0x01,0x01]
2290x00 0x00 0x74 0xe0 0x00 0x01 0x01 0x01
230
231# VI:   buffer_store_dwordx3 v[0:2], off, s[4:7], s0 offset:4095 ; encoding: [0xff,0x0f,0x78,0xe0,0x00,0x00,0x01,0x00]
2320xff,0x0f,0x78,0xe0,0x00,0x00,0x01,0x00
233
234# VI:   buffer_store_dwordx4 v[1:4], off, s[4:7], s1 ; encoding: [0x00,0x00,0x7c,0xe0,0x00,0x01,0x01,0x01]
2350x00 0x00 0x7c 0xe0 0x00 0x01 0x01 0x01
236
237# VI:   buffer_wbinvl1   ; encoding: [0x00,0x00,0xf8,0xe0,0x00,0x00,0x00,0x00]
2380x00 0x00 0xf8 0xe0 0x00 0x00 0x00 0x00
239
240# VI: buffer_wbinvl1_vol ; encoding: [0x00,0x00,0xfc,0xe0,0x00,0x00,0x00,0x00]
2410x00 0x00 0xfc 0xe0 0x00 0x00 0x00 0x00
242
243# VI:   buffer_atomic_inc v1, off, s[8:11], 56 ; encoding: [0x00,0x00,0x2c,0xe1,0x00,0x01,0x02,0xb8]
2440x00 0x00 0x2c 0xe1 0x00 0x01 0x02 0xb8
245
246# VI:   buffer_atomic_inc v1, off, s[8:11], 56 slc ; encoding: [0x00,0x00,0x2e,0xe1,0x00,0x01,0x02,0xb8]
2470x00 0x00 0x2e 0xe1 0x00 0x01 0x02 0xb8
248
249# VI:   buffer_atomic_inc v1, off, s[8:11], s4 slc ; encoding: [0x00,0x00,0x2e,0xe1,0x00,0x01,0x02,0x04]
2500x00 0x00 0x2e 0xe1 0x00 0x01 0x02 0x04
251
252# VI:   buffer_atomic_inc v1, off, s[8:11], 56 offset:4 ; encoding: [0x04,0x00,0x2c,0xe1,0x00,0x01,0x02,0xb8]
2530x04 0x00 0x2c 0xe1 0x00 0x01 0x02 0xb8
254
255# VI:   buffer_atomic_inc v1, off, s[8:11], 56 offset:4 slc ; encoding: [0x04,0x00,0x2e,0xe1,0x00,0x01,0x02,0xb8]
2560x04 0x00 0x2e 0xe1 0x00 0x01 0x02 0xb8
257
258# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen ; encoding: [0x00,0x10,0x2c,0xe1,0x02,0x01,0x02,0xb8]
2590x00 0x10 0x2c 0xe1 0x02 0x01 0x02 0xb8
260
261# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen slc ; encoding: [0x00,0x10,0x2e,0xe1,0x02,0x01,0x02,0xb8]
2620x00 0x10 0x2e 0xe1 0x02 0x01 0x02 0xb8
263
264# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen offset:4 ; encoding: [0x04,0x10,0x2c,0xe1,0x02,0x01,0x02,0xb8]
2650x04 0x10 0x2c 0xe1 0x02 0x01 0x02 0xb8
266
267# VI:   buffer_atomic_inc v1, v2, s[8:11], s4 offen offset:4 ; encoding: [0x04,0x10,0x2c,0xe1,0x02,0x01,0x02,0x04]
2680x04 0x10 0x2c 0xe1 0x02 0x01 0x02 0x04
269
270# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen offset:4 slc ; encoding: [0x04,0x10,0x2e,0xe1,0x02,0x01,0x02,0xb8]
2710x04 0x10 0x2e 0xe1 0x02 0x01 0x02 0xb8
272
273# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen ; encoding: [0x00,0x20,0x2c,0xe1,0x02,0x01,0x02,0xb8]
2740x00 0x20 0x2c 0xe1 0x02 0x01 0x02 0xb8
275
276# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen slc ; encoding: [0x00,0x20,0x2e,0xe1,0x02,0x01,0x02,0xb8]
2770x00 0x20 0x2e 0xe1 0x02 0x01 0x02 0xb8
278
279# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen offset:4 ; encoding: [0x04,0x20,0x2c,0xe1,0x02,0x01,0x02,0xb8]
2800x04 0x20 0x2c 0xe1 0x02 0x01 0x02 0xb8
281
282# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen offset:4 slc ; encoding: [0x04,0x20,0x2e,0xe1,0x02,0x01,0x02,0xb8]
2830x04 0x20 0x2e 0xe1 0x02 0x01 0x02 0xb8
284
285# VI:   buffer_atomic_inc v1, v2, s[8:11], s4 idxen offset:4 slc ; encoding: [0x04,0x20,0x2e,0xe1,0x02,0x01,0x02,0x04]
2860x04 0x20 0x2e 0xe1 0x02 0x01 0x02 0x04
287
288# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen ; encoding: [0x00,0x30,0x2c,0xe1,0x02,0x01,0x02,0xb8]
2890x00 0x30 0x2c 0xe1 0x02 0x01 0x02 0xb8
290
291# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], s4 idxen offen ; encoding: [0x00,0x30,0x2c,0xe1,0x02,0x01,0x02,0x04]
2920x00 0x30 0x2c 0xe1 0x02 0x01 0x02 0x04
293
294# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen slc ; encoding: [0x00,0x30,0x2e,0xe1,0x02,0x01,0x02,0xb8]
2950x00 0x30 0x2e 0xe1 0x02 0x01 0x02 0xb8
296
297# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen offset:4 ; encoding: [0x04,0x30,0x2c,0xe1,0x02,0x01,0x02,0xb8]
2980x04 0x30 0x2c 0xe1 0x02 0x01 0x02 0xb8
299
300# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen offset:4 slc ; encoding: [0x04,0x30,0x2e,0xe1,0x02,0x01,0x02,0xb8]
3010x04 0x30 0x2e 0xe1 0x02 0x01 0x02 0xb8
302
303# VI:   buffer_atomic_inc v1, off, s[8:11], 56 glc ; encoding: [0x00,0x40,0x2c,0xe1,0x00,0x01,0x02,0xb8]
3040x00 0x40 0x2c 0xe1 0x00 0x01 0x02 0xb8
305
306# VI:   buffer_atomic_inc v1, off, s[8:11], 56 glc slc ; encoding: [0x00,0x40,0x2e,0xe1,0x00,0x01,0x02,0xb8]
3070x00 0x40 0x2e 0xe1 0x00 0x01 0x02 0xb8
308
309# VI:   buffer_atomic_inc v1, off, s[8:11], s4 glc slc ; encoding: [0x00,0x40,0x2e,0xe1,0x00,0x01,0x02,0x04]
3100x00 0x40 0x2e 0xe1 0x00 0x01 0x02 0x04
311
312# VI:   buffer_atomic_inc v1, off, s[8:11], 56 offset:4 glc ; encoding: [0x04,0x40,0x2c,0xe1,0x00,0x01,0x02,0xb8]
3130x04 0x40 0x2c 0xe1 0x00 0x01 0x02 0xb8
314
315# VI:   buffer_atomic_inc v1, off, s[8:11], 56 offset:4 glc slc ; encoding: [0x04,0x40,0x2e,0xe1,0x00,0x01,0x02,0xb8]
3160x04 0x40 0x2e 0xe1 0x00 0x01 0x02 0xb8
317
318# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen glc ; encoding: [0x00,0x50,0x2c,0xe1,0x02,0x01,0x02,0xb8]
3190x00 0x50 0x2c 0xe1 0x02 0x01 0x02 0xb8
320
321# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen glc slc ; encoding: [0x00,0x50,0x2e,0xe1,0x02,0x01,0x02,0xb8]
3220x00 0x50 0x2e 0xe1 0x02 0x01 0x02 0xb8
323
324# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen offset:4 glc ; encoding: [0x04,0x50,0x2c,0xe1,0x02,0x01,0x02,0xb8]
3250x04 0x50 0x2c 0xe1 0x02 0x01 0x02 0xb8
326
327# VI:   buffer_atomic_inc v1, v2, s[8:11], s4 offen offset:4 glc ; encoding: [0x04,0x50,0x2c,0xe1,0x02,0x01,0x02,0x04]
3280x04 0x50 0x2c 0xe1 0x02 0x01 0x02 0x04
329
330# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 offen offset:4 glc slc ; encoding: [0x04,0x50,0x2e,0xe1,0x02,0x01,0x02,0xb8]
3310x04 0x50 0x2e 0xe1 0x02 0x01 0x02 0xb8
332
333# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen glc ; encoding: [0x00,0x60,0x2c,0xe1,0x02,0x01,0x02,0xb8]
3340x00 0x60 0x2c 0xe1 0x02 0x01 0x02 0xb8
335
336# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen glc slc ; encoding: [0x00,0x60,0x2e,0xe1,0x02,0x01,0x02,0xb8]
3370x00 0x60 0x2e 0xe1 0x02 0x01 0x02 0xb8
338
339# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen offset:4 glc ; encoding: [0x04,0x60,0x2c,0xe1,0x02,0x01,0x02,0xb8]
3400x04 0x60 0x2c 0xe1 0x02 0x01 0x02 0xb8
341
342# VI:   buffer_atomic_inc v1, v2, s[8:11], 56 idxen offset:4 glc slc ; encoding: [0x04,0x60,0x2e,0xe1,0x02,0x01,0x02,0xb8]
3430x04 0x60 0x2e 0xe1 0x02 0x01 0x02 0xb8
344
345# VI:   buffer_atomic_inc v1, v2, s[8:11], s4 idxen offset:4 glc slc ; encoding: [0x04,0x60,0x2e,0xe1,0x02,0x01,0x02,0x04]
3460x04 0x60 0x2e 0xe1 0x02 0x01 0x02 0x04
347
348# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen glc ; encoding: [0x00,0x70,0x2c,0xe1,0x02,0x01,0x02,0xb8]
3490x00 0x70 0x2c 0xe1 0x02 0x01 0x02 0xb8
350
351# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], s4 idxen offen glc ; encoding: [0x00,0x70,0x2c,0xe1,0x02,0x01,0x02,0x04]
3520x00 0x70 0x2c 0xe1 0x02 0x01 0x02 0x04
353
354# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen glc slc ; encoding: [0x00,0x70,0x2e,0xe1,0x02,0x01,0x02,0xb8]
3550x00 0x70 0x2e 0xe1 0x02 0x01 0x02 0xb8
356
357# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen offset:4 glc ; encoding: [0x04,0x70,0x2c,0xe1,0x02,0x01,0x02,0xb8]
3580x04 0x70 0x2c 0xe1 0x02 0x01 0x02 0xb8
359
360# VI:   buffer_atomic_inc v1, v[2:3], s[8:11], 56 idxen offen offset:4 glc slc ; encoding: [0x04,0x70,0x2e,0xe1,0x02,0x01,0x02,0xb8]
3610x04 0x70 0x2e 0xe1 0x02 0x01 0x02 0xb8
362
363#===------------------------------------------------------------------------===#
364# Lds support
365#===------------------------------------------------------------------------===#
366
367# VI:   buffer_load_sbyte v5, off, s[8:11], s3 lds ; encoding: [0x00,0x00,0x45,0xe0,0x00,0x05,0x02,0x03]
3680x00,0x00,0x45,0xe0,0x00,0x05,0x02,0x03
369
370# VI:   buffer_load_sbyte v5, off, s[8:11], s3 glc slc lds ; encoding: [0x00,0x40,0x47,0xe0,0x00,0x05,0x02,0x03]
3710x00,0x40,0x47,0xe0,0x00,0x05,0x02,0x03
372
373# VI:   buffer_load_sbyte v5, off, s[8:11], s3 offset:4095 glc slc lds ; encoding: [0xff,0x4f,0x47,0xe0,0x00,0x05,0x02,0x03]
3740xff,0x4f,0x47,0xe0,0x00,0x05,0x02,0x03
375
376# VI:   buffer_load_sbyte v5, v0, s[8:11], s3 offen offset:4095 slc lds ; encoding: [0xff,0x1f,0x47,0xe0,0x00,0x05,0x02,0x03]
3770xff,0x1f,0x47,0xe0,0x00,0x05,0x02,0x03
378
379# VI:   buffer_load_sbyte v5, v0, s[8:11], s3 offen lds ; encoding: [0x00,0x10,0x45,0xe0,0x00,0x05,0x02,0x03]
3800x00,0x10,0x45,0xe0,0x00,0x05,0x02,0x03
381
382# VI:   buffer_load_sbyte v5, v0, s[8:11], s3 idxen glc slc lds ; encoding: [0x00,0x60,0x47,0xe0,0x00,0x05,0x02,0x03]
3830x00,0x60,0x47,0xe0,0x00,0x05,0x02,0x03
384
385# VI:   buffer_load_sbyte v5, v[0:1], s[8:11], s3 idxen offen offset:4095 lds ; encoding: [0xff,0x3f,0x45,0xe0,0x00,0x05,0x02,0x03]
3860xff,0x3f,0x45,0xe0,0x00,0x05,0x02,0x03
387
388# VI:   buffer_load_sbyte v5, v[0:1], s[8:11], s3 idxen offen offset:4095 glc slc lds ; encoding: [0xff,0x7f,0x47,0xe0,0x00,0x05,0x02,0x03]
3890xff,0x7f,0x47,0xe0,0x00,0x05,0x02,0x03
390
391# VI:   buffer_load_ubyte v5, off, s[8:11], s3 offset:4095 lds ; encoding: [0xff,0x0f,0x41,0xe0,0x00,0x05,0x02,0x03]
3920xff,0x0f,0x41,0xe0,0x00,0x05,0x02,0x03
393
394# VI:   buffer_load_sshort v5, v0, s[8:11], s3 offen offset:4095 glc slc lds ; encoding: [0xff,0x5f,0x4f,0xe0,0x00,0x05,0x02,0x03]
3950xff,0x5f,0x4f,0xe0,0x00,0x05,0x02,0x03
396
397# VI:   buffer_load_ushort v5, v0, s[8:11], s3 idxen offset:4095 glc slc lds ; encoding: [0xff,0x6f,0x4b,0xe0,0x00,0x05,0x02,0x03]
3980xff,0x6f,0x4b,0xe0,0x00,0x05,0x02,0x03
399
400# VI:   buffer_load_dword v5, v0, s[8:11], s101 offen lds ; encoding: [0x00,0x10,0x51,0xe0,0x00,0x05,0x02,0x65]
4010x00,0x10,0x51,0xe0,0x00,0x05,0x02,0x65
402
403# VI:   buffer_load_format_x v5, v[0:1], s[8:11], s3 idxen offen offset:4095 glc slc lds ; encoding: [0xff,0x7f,0x03,0xe0,0x00,0x05,0x02,0x03]
4040xff,0x7f,0x03,0xe0,0x00,0x05,0x02,0x03
405
406# VI:   buffer_store_lds_dword s[4:7], s0 lds ; encoding: [0x00,0x00,0xf5,0xe0,0x00,0x00,0x01,0x00]
4070x00,0x00,0xf5,0xe0,0x00,0x00,0x01,0x00
408
409# VI:   buffer_store_lds_dword s[4:7], s0 offset:4095 lds ; encoding: [0xff,0x0f,0xf5,0xe0,0x00,0x00,0x01,0x00]
4100xff,0x0f,0xf5,0xe0,0x00,0x00,0x01,0x00
411
412# VI:   buffer_store_lds_dword s[4:7], s8 offset:4 lds glc slc ; encoding: [0x04,0x40,0xf7,0xe0,0x00,0x00,0x01,0x08]
4130x04,0x40,0xf7,0xe0,0x00,0x00,0x01,0x08
414