1 # RUN: llvm-mc -triple=amdgcn -mcpu=gfx1100 -disassemble %s | FileCheck -strict-whitespace -check-prefix=GFX11 %s
3 # GFX11: v_interp_p10_f32 v0, v1, v2, v3 wait_exp:0{{$}}
4 0x00,0x00,0x00,0xcd,0x01,0x05,0x0e,0x04
6 # Check that unused bits in the encoding are ignored.
7 # GFX11: v_interp_p10_f32 v0, v1, v2, v3 wait_exp:0{{$}}
8 0x00,0x00,0x80,0xcd,0x01,0x05,0x0e,0x1c
10 # GFX11: v_interp_p10_f32 v1, v10, v20, v30 wait_exp:0{{$}}
11 0x01,0x00,0x00,0xcd,0x0a,0x29,0x7a,0x04
13 # GFX11: v_interp_p10_f32 v2, v11, v21, v31 wait_exp:0{{$}}
14 0x02,0x00,0x00,0xcd,0x0b,0x2b,0x7e,0x04
16 # GFX11: v_interp_p10_f32 v3, v12, v22, v32 wait_exp:0{{$}}
17 0x03,0x00,0x00,0xcd,0x0c,0x2d,0x82,0x04
19 # GFX11: v_interp_p10_f32 v0, v1, v2, v3 clamp wait_exp:0{{$}}
20 0x00,0x80,0x00,0xcd,0x01,0x05,0x0e,0x04
22 # GFX11: v_interp_p10_f32 v0, -v1, v2, v3 wait_exp:0{{$}}
23 0x00,0x00,0x00,0xcd,0x01,0x05,0x0e,0x24
25 # GFX11: v_interp_p10_f32 v0, v1, -v2, v3 wait_exp:0{{$}}
26 0x00,0x00,0x00,0xcd,0x01,0x05,0x0e,0x44
28 # GFX11: v_interp_p10_f32 v0, v1, v2, -v3 wait_exp:0{{$}}
29 0x00,0x00,0x00,0xcd,0x01,0x05,0x0e,0x84
31 # GFX11: v_interp_p10_f32 v0, v1, v2, v3 wait_exp:1{{$}}
32 0x00,0x01,0x00,0xcd,0x01,0x05,0x0e,0x04
34 # GFX11: v_interp_p10_f32 v0, v1, v2, v3 wait_exp:7{{$}}
35 0x00,0x07,0x00,0xcd,0x01,0x05,0x0e,0x04
37 # GFX11: v_interp_p10_f32 v0, v1, v2, v3 clamp wait_exp:7{{$}}
38 0x00,0x87,0x00,0xcd,0x01,0x05,0x0e,0x04
40 # GFX11: v_interp_p2_f32 v0, v1, v2, v3 wait_exp:0{{$}}
41 0x00,0x00,0x01,0xcd,0x01,0x05,0x0e,0x04
43 # GFX11: v_interp_p2_f32 v1, v10, v20, v30 wait_exp:0{{$}}
44 0x01,0x00,0x01,0xcd,0x0a,0x29,0x7a,0x04
46 # GFX11: v_interp_p2_f32 v2, v11, v21, v31 wait_exp:0{{$}}
47 0x02,0x00,0x01,0xcd,0x0b,0x2b,0x7e,0x04
49 # GFX11: v_interp_p2_f32 v3, v12, v22, v32 wait_exp:0{{$}}
50 0x03,0x00,0x01,0xcd,0x0c,0x2d,0x82,0x04
52 # GFX11: v_interp_p2_f32 v0, v1, v2, v3 clamp wait_exp:0{{$}}
53 0x00,0x80,0x01,0xcd,0x01,0x05,0x0e,0x04
55 # GFX11: v_interp_p2_f32 v0, -v1, v2, v3 wait_exp:0{{$}}
56 0x00,0x00,0x01,0xcd,0x01,0x05,0x0e,0x24
58 # GFX11: v_interp_p2_f32 v0, v1, -v2, v3 wait_exp:0{{$}}
59 0x00,0x00,0x01,0xcd,0x01,0x05,0x0e,0x44
61 # GFX11: v_interp_p2_f32 v0, v1, v2, -v3 wait_exp:0{{$}}
62 0x00,0x00,0x01,0xcd,0x01,0x05,0x0e,0x84
64 # GFX11: v_interp_p2_f32 v0, v1, v2, v3 wait_exp:1{{$}}
65 0x00,0x01,0x01,0xcd,0x01,0x05,0x0e,0x04
67 # GFX11: v_interp_p2_f32 v0, v1, v2, v3 wait_exp:7{{$}}
68 0x00,0x07,0x01,0xcd,0x01,0x05,0x0e,0x04
70 # GFX11: v_interp_p2_f32 v0, v1, v2, v3 clamp wait_exp:7{{$}}
71 0x00,0x87,0x01,0xcd,0x01,0x05,0x0e,0x04
73 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 wait_exp:0{{$}}
74 0x00,0x00,0x02,0xcd,0x01,0x05,0x0e,0x04
76 # GFX11: v_interp_p10_f16_f32 v0, -v1, v2, v3 wait_exp:0{{$}}
77 0x00,0x00,0x02,0xcd,0x01,0x05,0x0e,0x24
79 # GFX11: v_interp_p10_f16_f32 v0, v1, -v2, v3 wait_exp:0{{$}}
80 0x00,0x00,0x02,0xcd,0x01,0x05,0x0e,0x44
82 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, -v3 wait_exp:0{{$}}
83 0x00,0x00,0x02,0xcd,0x01,0x05,0x0e,0x84
85 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 clamp wait_exp:0{{$}}
86 0x00,0x80,0x02,0xcd,0x01,0x05,0x0e,0x04
88 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 wait_exp:1{{$}}
89 0x00,0x01,0x02,0xcd,0x01,0x05,0x0e,0x04
91 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 wait_exp:7{{$}}
92 0x00,0x07,0x02,0xcd,0x01,0x05,0x0e,0x04
94 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,0] wait_exp:0{{$}}
95 0x00,0x08,0x02,0xcd,0x01,0x05,0x0e,0x04
97 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 op_sel:[0,1,0,0] wait_exp:0{{$}}
98 0x00,0x10,0x02,0xcd,0x01,0x05,0x0e,0x04
100 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 op_sel:[0,0,1,0] wait_exp:0{{$}}
101 0x00,0x20,0x02,0xcd,0x01,0x05,0x0e,0x04
103 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 op_sel:[0,0,0,1] wait_exp:0{{$}}
104 0x00,0x40,0x02,0xcd,0x01,0x05,0x0e,0x04
106 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 op_sel:[1,1,1,1] wait_exp:0{{$}}
107 0x00,0x78,0x02,0xcd,0x01,0x05,0x0e,0x04
109 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,1] wait_exp:5{{$}}
110 0x00,0x4d,0x02,0xcd,0x01,0x05,0x0e,0x04
112 # GFX11: v_interp_p10_f16_f32 v0, v1, v2, v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
113 0x00,0xcd,0x02,0xcd,0x01,0x05,0x0e,0x04
115 # GFX11: v_interp_p10_f16_f32 v0, -v1, -v2, -v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
116 0x00,0xcd,0x02,0xcd,0x01,0x05,0x0e,0xe4
118 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 wait_exp:0{{$}}
119 0x00,0x00,0x03,0xcd,0x01,0x05,0x0e,0x04
121 # GFX11: v_interp_p2_f16_f32 v0, -v1, v2, v3 wait_exp:0{{$}}
122 0x00,0x00,0x03,0xcd,0x01,0x05,0x0e,0x24
124 # GFX11: v_interp_p2_f16_f32 v0, v1, -v2, v3 wait_exp:0{{$}}
125 0x00,0x00,0x03,0xcd,0x01,0x05,0x0e,0x44
127 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, -v3 wait_exp:0{{$}}
128 0x00,0x00,0x03,0xcd,0x01,0x05,0x0e,0x84
130 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 clamp wait_exp:0{{$}}
131 0x00,0x80,0x03,0xcd,0x01,0x05,0x0e,0x04
133 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 wait_exp:1{{$}}
134 0x00,0x01,0x03,0xcd,0x01,0x05,0x0e,0x04
136 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 wait_exp:7{{$}}
137 0x00,0x07,0x03,0xcd,0x01,0x05,0x0e,0x04
139 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,0] wait_exp:0{{$}}
140 0x00,0x08,0x03,0xcd,0x01,0x05,0x0e,0x04
142 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 op_sel:[0,1,0,0] wait_exp:0{{$}}
143 0x00,0x10,0x03,0xcd,0x01,0x05,0x0e,0x04
145 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 op_sel:[0,0,1,0] wait_exp:0{{$}}
146 0x00,0x20,0x03,0xcd,0x01,0x05,0x0e,0x04
148 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 op_sel:[0,0,0,1] wait_exp:0{{$}}
149 0x00,0x40,0x03,0xcd,0x01,0x05,0x0e,0x04
151 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 op_sel:[1,1,1,1] wait_exp:0{{$}}
152 0x00,0x78,0x03,0xcd,0x01,0x05,0x0e,0x04
154 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,1] wait_exp:5{{$}}
155 0x00,0x4d,0x03,0xcd,0x01,0x05,0x0e,0x04
157 # GFX11: v_interp_p2_f16_f32 v0, v1, v2, v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
158 0x00,0xcd,0x03,0xcd,0x01,0x05,0x0e,0x04
160 # GFX11: v_interp_p2_f16_f32 v0, -v1, -v2, -v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
161 0x00,0xcd,0x03,0xcd,0x01,0x05,0x0e,0xe4
163 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 wait_exp:0{{$}}
164 0x00,0x00,0x04,0xcd,0x01,0x05,0x0e,0x04
166 # GFX11: v_interp_p10_rtz_f16_f32 v0, -v1, v2, v3 wait_exp:0{{$}}
167 0x00,0x00,0x04,0xcd,0x01,0x05,0x0e,0x24
169 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, -v2, v3 wait_exp:0{{$}}
170 0x00,0x00,0x04,0xcd,0x01,0x05,0x0e,0x44
172 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, -v3 wait_exp:0{{$}}
173 0x00,0x00,0x04,0xcd,0x01,0x05,0x0e,0x84
175 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 clamp wait_exp:0{{$}}
176 0x00,0x80,0x04,0xcd,0x01,0x05,0x0e,0x04
178 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 wait_exp:1{{$}}
179 0x00,0x01,0x04,0xcd,0x01,0x05,0x0e,0x04
181 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 wait_exp:7{{$}}
182 0x00,0x07,0x04,0xcd,0x01,0x05,0x0e,0x04
184 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,0] wait_exp:0{{$}}
185 0x00,0x08,0x04,0xcd,0x01,0x05,0x0e,0x04
187 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 op_sel:[0,1,0,0] wait_exp:0{{$}}
188 0x00,0x10,0x04,0xcd,0x01,0x05,0x0e,0x04
190 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 op_sel:[0,0,1,0] wait_exp:0{{$}}
191 0x00,0x20,0x04,0xcd,0x01,0x05,0x0e,0x04
193 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 op_sel:[0,0,0,1] wait_exp:0{{$}}
194 0x00,0x40,0x04,0xcd,0x01,0x05,0x0e,0x04
196 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 op_sel:[1,1,1,1] wait_exp:0{{$}}
197 0x00,0x78,0x04,0xcd,0x01,0x05,0x0e,0x04
199 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,1] wait_exp:5{{$}}
200 0x00,0x4d,0x04,0xcd,0x01,0x05,0x0e,0x04
202 # GFX11: v_interp_p10_rtz_f16_f32 v0, v1, v2, v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
203 0x00,0xcd,0x04,0xcd,0x01,0x05,0x0e,0x04
205 # GFX11: v_interp_p10_rtz_f16_f32 v0, -v1, -v2, -v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
206 0x00,0xcd,0x04,0xcd,0x01,0x05,0x0e,0xe4
208 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 wait_exp:0{{$}}
209 0x00,0x00,0x05,0xcd,0x01,0x05,0x0e,0x04
211 # GFX11: v_interp_p2_rtz_f16_f32 v0, -v1, v2, v3 wait_exp:0{{$}}
212 0x00,0x00,0x05,0xcd,0x01,0x05,0x0e,0x24
214 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, -v2, v3 wait_exp:0{{$}}
215 0x00,0x00,0x05,0xcd,0x01,0x05,0x0e,0x44
217 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, -v3 wait_exp:0{{$}}
218 0x00,0x00,0x05,0xcd,0x01,0x05,0x0e,0x84
220 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 clamp wait_exp:0{{$}}
221 0x00,0x80,0x05,0xcd,0x01,0x05,0x0e,0x04
223 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 wait_exp:1{{$}}
224 0x00,0x01,0x05,0xcd,0x01,0x05,0x0e,0x04
226 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 wait_exp:7{{$}}
227 0x00,0x07,0x05,0xcd,0x01,0x05,0x0e,0x04
229 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,0] wait_exp:0{{$}}
230 0x00,0x08,0x05,0xcd,0x01,0x05,0x0e,0x04
232 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 op_sel:[0,1,0,0] wait_exp:0{{$}}
233 0x00,0x10,0x05,0xcd,0x01,0x05,0x0e,0x04
235 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 op_sel:[0,0,1,0] wait_exp:0{{$}}
236 0x00,0x20,0x05,0xcd,0x01,0x05,0x0e,0x04
238 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 op_sel:[0,0,0,1] wait_exp:0{{$}}
239 0x00,0x40,0x05,0xcd,0x01,0x05,0x0e,0x04
241 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 op_sel:[1,1,1,1] wait_exp:0{{$}}
242 0x00,0x78,0x05,0xcd,0x01,0x05,0x0e,0x04
244 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 op_sel:[1,0,0,1] wait_exp:5{{$}}
245 0x00,0x4d,0x05,0xcd,0x01,0x05,0x0e,0x04
247 # GFX11: v_interp_p2_rtz_f16_f32 v0, v1, v2, v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
248 0x00,0xcd,0x05,0xcd,0x01,0x05,0x0e,0x04
250 # GFX11: v_interp_p2_rtz_f16_f32 v0, -v1, -v2, -v3 clamp op_sel:[1,0,0,1] wait_exp:5{{$}}
251 0x00,0xcd,0x05,0xcd,0x01,0x05,0x0e,0xe4