[AMDGPU] Check for immediate SrcC in mfma in AsmParser
[llvm-core.git] / test / MC / AMDGPU / gfx10_asm_dpp8.s
blob7ef2c44ad917a70d7224ee5bb7e683ea88d36ce6
1 // RUN: not llvm-mc -arch=amdgcn -mcpu=gfx1010 -mattr=+WavefrontSize32,-WavefrontSize64 -show-encoding %s | FileCheck --check-prefixes=GFX10,W32 %s
2 // RUN: not llvm-mc -arch=amdgcn -mcpu=gfx1010 -mattr=-WavefrontSize32,+WavefrontSize64 -show-encoding %s | FileCheck --check-prefixes=GFX10,W64 %s
3 // RUN: not llvm-mc -arch=amdgcn -mcpu=gfx1010 -mattr=+WavefrontSize32,-WavefrontSize64 -show-encoding %s 2>&1 | FileCheck --check-prefixes=GFX10-ERR,W32-ERR %s
4 // RUN: not llvm-mc -arch=amdgcn -mcpu=gfx1010 -mattr=-WavefrontSize32,+WavefrontSize64 -show-encoding %s 2>&1 | FileCheck --check-prefixes=GFX10-ERR,W64-ERR %s
6 v_mov_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
7 // GFX10: encoding: [0xe9,0x02,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
9 v_cvt_f32_i32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
10 // GFX10: encoding: [0xe9,0x0a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
12 v_cvt_f32_u32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
13 // GFX10: encoding: [0xe9,0x0c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
15 v_cvt_u32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
16 // GFX10: encoding: [0xe9,0x0e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
18 v_cvt_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
19 // GFX10: encoding: [0xe9,0x10,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
21 v_mov_fed_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
22 // GFX10: encoding: [0xe9,0x12,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
24 v_cvt_f16_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
25 // GFX10: encoding: [0xe9,0x14,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
27 v_cvt_f32_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
28 // GFX10: encoding: [0xe9,0x16,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
30 v_cvt_rpi_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
31 // GFX10: encoding: [0xe9,0x18,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
33 v_cvt_flr_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
34 // GFX10: encoding: [0xe9,0x1a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
36 v_cvt_off_f32_i4_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
37 // GFX10: encoding: [0xe9,0x1c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
39 v_cvt_f32_ubyte0_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
40 // GFX10: encoding: [0xe9,0x22,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
42 v_cvt_f32_ubyte1_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
43 // GFX10: encoding: [0xe9,0x24,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
45 v_cvt_f32_ubyte2_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
46 // GFX10: encoding: [0xe9,0x26,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
48 v_cvt_f32_ubyte3_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
49 // GFX10: encoding: [0xe9,0x28,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
51 v_fract_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
52 // GFX10: encoding: [0xe9,0x40,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
54 v_trunc_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
55 // GFX10: encoding: [0xe9,0x42,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
57 v_ceil_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
58 // GFX10: encoding: [0xe9,0x44,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
60 v_rndne_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
61 // GFX10: encoding: [0xe9,0x46,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
63 v_floor_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
64 // GFX10: encoding: [0xe9,0x48,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
66 v_exp_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
67 // GFX10: encoding: [0xe9,0x4a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
69 v_log_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
70 // GFX10: encoding: [0xe9,0x4e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
72 v_rcp_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
73 // GFX10: encoding: [0xe9,0x54,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
75 v_rcp_iflag_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
76 // GFX10: encoding: [0xe9,0x56,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
78 v_rsq_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
79 // GFX10: encoding: [0xe9,0x5c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
81 v_sqrt_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
82 // GFX10: encoding: [0xe9,0x66,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
84 v_sin_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
85 // GFX10: encoding: [0xe9,0x6a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
87 v_cos_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
88 // GFX10: encoding: [0xe9,0x6c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
90 v_not_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
91 // GFX10: encoding: [0xe9,0x6e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
93 v_bfrev_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
94 // GFX10: encoding: [0xe9,0x70,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
96 v_ffbh_u32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
97 // GFX10: encoding: [0xe9,0x72,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
99 v_ffbl_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
100 // GFX10: encoding: [0xe9,0x74,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
102 v_ffbh_i32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
103 // GFX10: encoding: [0xe9,0x76,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
105 v_frexp_exp_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
106 // GFX10: encoding: [0xe9,0x7e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
108 v_frexp_mant_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
109 // GFX10: encoding: [0xe9,0x80,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
111 v_cvt_f16_u16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
112 // GFX10: encoding: [0xe9,0xa0,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
114 v_cvt_f16_i16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
115 // GFX10: encoding: [0xe9,0xa2,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
117 v_cvt_u16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
118 // GFX10: encoding: [0xe9,0xa4,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
120 v_cvt_i16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
121 // GFX10: encoding: [0xe9,0xa6,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
123 v_rcp_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
124 // GFX10: encoding: [0xe9,0xa8,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
126 v_sqrt_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
127 // GFX10: encoding: [0xe9,0xaa,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
129 v_rsq_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
130 // GFX10: encoding: [0xe9,0xac,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
132 v_log_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
133 // GFX10: encoding: [0xe9,0xae,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
135 v_exp_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
136 // GFX10: encoding: [0xe9,0xb0,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
138 v_frexp_mant_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
139 // GFX10: encoding: [0xe9,0xb2,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
141 v_frexp_exp_i16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
142 // GFX10: encoding: [0xe9,0xb4,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
144 v_floor_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
145 // GFX10: encoding: [0xe9,0xb6,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
147 v_ceil_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
148 // GFX10: encoding: [0xe9,0xb8,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
150 v_trunc_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
151 // GFX10: encoding: [0xe9,0xba,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
153 v_rndne_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
154 // GFX10: encoding: [0xe9,0xbc,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
156 v_fract_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
157 // GFX10: encoding: [0xe9,0xbe,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
159 v_sin_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
160 // GFX10: encoding: [0xe9,0xc0,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
162 v_cos_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
163 // GFX10: encoding: [0xe9,0xc2,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
165 v_cvt_norm_i16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
166 // GFX10: encoding: [0xe9,0xc6,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
168 v_cvt_norm_u16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7]
169 // GFX10: encoding: [0xe9,0xc8,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
171 v_add_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
172 // GFX10: encoding: [0xe9,0x04,0x0a,0x06,0x01,0x88,0xc6,0xfa]
174 v_sub_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
175 // GFX10: encoding: [0xe9,0x04,0x0a,0x08,0x01,0x88,0xc6,0xfa]
177 v_subrev_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
178 // GFX10: encoding: [0xe9,0x04,0x0a,0x0a,0x01,0x88,0xc6,0xfa]
180 v_mul_legacy_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
181 // GFX10: encoding: [0xe9,0x04,0x0a,0x0e,0x01,0x88,0xc6,0xfa]
183 v_mul_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
184 // GFX10: encoding: [0xe9,0x04,0x0a,0x10,0x01,0x88,0xc6,0xfa]
186 v_mul_i32_i24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
187 // GFX10: encoding: [0xe9,0x04,0x0a,0x12,0x01,0x88,0xc6,0xfa]
189 v_mul_hi_i32_i24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
190 // GFX10: encoding: [0xe9,0x04,0x0a,0x14,0x01,0x88,0xc6,0xfa]
192 v_mul_u32_u24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
193 // GFX10: encoding: [0xe9,0x04,0x0a,0x16,0x01,0x88,0xc6,0xfa]
195 v_mul_hi_u32_u24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
196 // GFX10: encoding: [0xe9,0x04,0x0a,0x18,0x01,0x88,0xc6,0xfa]
198 v_min_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
199 // GFX10: encoding: [0xe9,0x04,0x0a,0x1e,0x01,0x88,0xc6,0xfa]
201 v_max_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
202 // GFX10: encoding: [0xe9,0x04,0x0a,0x20,0x01,0x88,0xc6,0xfa]
204 v_min_i32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
205 // GFX10: encoding: [0xe9,0x04,0x0a,0x22,0x01,0x88,0xc6,0xfa]
207 v_max_i32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
208 // GFX10: encoding: [0xe9,0x04,0x0a,0x24,0x01,0x88,0xc6,0xfa]
210 v_min_u32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
211 // GFX10: encoding: [0xe9,0x04,0x0a,0x26,0x01,0x88,0xc6,0xfa]
213 v_max_u32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
214 // GFX10: encoding: [0xe9,0x04,0x0a,0x28,0x01,0x88,0xc6,0xfa]
216 v_lshrrev_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
217 // GFX10: encoding: [0xe9,0x04,0x0a,0x2c,0x01,0x88,0xc6,0xfa]
219 v_ashrrev_i32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
220 // GFX10: encoding: [0xe9,0x04,0x0a,0x30,0x01,0x88,0xc6,0xfa]
222 v_lshlrev_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
223 // GFX10: encoding: [0xe9,0x04,0x0a,0x34,0x01,0x88,0xc6,0xfa]
225 v_and_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
226 // GFX10: encoding: [0xe9,0x04,0x0a,0x36,0x01,0x88,0xc6,0xfa]
228 v_or_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
229 // GFX10: encoding: [0xe9,0x04,0x0a,0x38,0x01,0x88,0xc6,0xfa]
231 v_xor_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
232 // GFX10: encoding: [0xe9,0x04,0x0a,0x3a,0x01,0x88,0xc6,0xfa]
234 v_xnor_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
235 // GFX10: encoding: [0xe9,0x04,0x0a,0x3c,0x01,0x88,0xc6,0xfa]
237 v_add_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
238 // GFX10: encoding: [0xe9,0x04,0x0a,0x64,0x01,0x88,0xc6,0xfa]
240 v_sub_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
241 // GFX10: encoding: [0xe9,0x04,0x0a,0x66,0x01,0x88,0xc6,0xfa]
243 v_subrev_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
244 // GFX10: encoding: [0xe9,0x04,0x0a,0x68,0x01,0x88,0xc6,0xfa]
246 v_mul_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
247 // GFX10: encoding: [0xe9,0x04,0x0a,0x6a,0x01,0x88,0xc6,0xfa]
249 v_max_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
250 // GFX10: encoding: [0xe9,0x04,0x0a,0x72,0x01,0x88,0xc6,0xfa]
252 v_min_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
253 // GFX10: encoding: [0xe9,0x04,0x0a,0x74,0x01,0x88,0xc6,0xfa]
255 v_ldexp_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7]
256 // GFX10: encoding: [0xe9,0x04,0x0a,0x76,0x01,0x88,0xc6,0xfa]
258 v_mov_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:0
259 // GFX10: encoding: [0xe9,0x02,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
261 v_mov_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
262 // GFX10: encoding: [0xea,0x02,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
264 v_cvt_f32_i32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
265 // GFX10: encoding: [0xea,0x0a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
267 v_cvt_f32_u32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
268 // GFX10: encoding: [0xea,0x0c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
270 v_cvt_u32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
271 // GFX10: encoding: [0xea,0x0e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
273 v_cvt_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
274 // GFX10: encoding: [0xea,0x10,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
276 v_mov_fed_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
277 // GFX10: encoding: [0xea,0x12,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
279 v_cvt_f16_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
280 // GFX10: encoding: [0xea,0x14,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
282 v_cvt_f32_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
283 // GFX10: encoding: [0xea,0x16,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
285 v_cvt_rpi_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
286 // GFX10: encoding: [0xea,0x18,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
288 v_cvt_flr_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
289 // GFX10: encoding: [0xea,0x1a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
291 v_cvt_off_f32_i4_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
292 // GFX10: encoding: [0xea,0x1c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
294 v_cvt_f32_ubyte0_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
295 // GFX10: encoding: [0xea,0x22,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
297 v_cvt_f32_ubyte1_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
298 // GFX10: encoding: [0xea,0x24,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
300 v_cvt_f32_ubyte2_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
301 // GFX10: encoding: [0xea,0x26,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
303 v_cvt_f32_ubyte3_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
304 // GFX10: encoding: [0xea,0x28,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
306 v_fract_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
307 // GFX10: encoding: [0xea,0x40,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
309 v_trunc_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
310 // GFX10: encoding: [0xea,0x42,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
312 v_ceil_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
313 // GFX10: encoding: [0xea,0x44,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
315 v_rndne_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
316 // GFX10: encoding: [0xea,0x46,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
318 v_floor_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
319 // GFX10: encoding: [0xea,0x48,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
321 v_exp_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
322 // GFX10: encoding: [0xea,0x4a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
324 v_log_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
325 // GFX10: encoding: [0xea,0x4e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
327 v_rcp_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
328 // GFX10: encoding: [0xea,0x54,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
330 v_rcp_iflag_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
331 // GFX10: encoding: [0xea,0x56,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
333 v_rsq_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
334 // GFX10: encoding: [0xea,0x5c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
336 v_sqrt_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
337 // GFX10: encoding: [0xea,0x66,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
339 v_sin_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
340 // GFX10: encoding: [0xea,0x6a,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
342 v_cos_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
343 // GFX10: encoding: [0xea,0x6c,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
345 v_not_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
346 // GFX10: encoding: [0xea,0x6e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
348 v_bfrev_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
349 // GFX10: encoding: [0xea,0x70,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
351 v_ffbh_u32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
352 // GFX10: encoding: [0xea,0x72,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
354 v_ffbl_b32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
355 // GFX10: encoding: [0xea,0x74,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
357 v_ffbh_i32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
358 // GFX10: encoding: [0xea,0x76,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
360 v_frexp_exp_i32_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
361 // GFX10: encoding: [0xea,0x7e,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
363 v_frexp_mant_f32_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
364 // GFX10: encoding: [0xea,0x80,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
366 v_cvt_f16_u16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
367 // GFX10: encoding: [0xea,0xa0,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
369 v_cvt_f16_i16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
370 // GFX10: encoding: [0xea,0xa2,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
372 v_cvt_u16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
373 // GFX10: encoding: [0xea,0xa4,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
375 v_cvt_i16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
376 // GFX10: encoding: [0xea,0xa6,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
378 v_rcp_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
379 // GFX10: encoding: [0xea,0xa8,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
381 v_sqrt_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
382 // GFX10: encoding: [0xea,0xaa,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
384 v_rsq_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
385 // GFX10: encoding: [0xea,0xac,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
387 v_log_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
388 // GFX10: encoding: [0xea,0xae,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
390 v_exp_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
391 // GFX10: encoding: [0xea,0xb0,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
393 v_frexp_mant_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
394 // GFX10: encoding: [0xea,0xb2,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
396 v_frexp_exp_i16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
397 // GFX10: encoding: [0xea,0xb4,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
399 v_floor_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
400 // GFX10: encoding: [0xea,0xb6,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
402 v_ceil_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
403 // GFX10: encoding: [0xea,0xb8,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
405 v_trunc_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
406 // GFX10: encoding: [0xea,0xba,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
408 v_rndne_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
409 // GFX10: encoding: [0xea,0xbc,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
411 v_fract_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
412 // GFX10: encoding: [0xea,0xbe,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
414 v_sin_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
415 // GFX10: encoding: [0xea,0xc0,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
417 v_cos_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
418 // GFX10: encoding: [0xea,0xc2,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
420 v_cvt_norm_i16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
421 // GFX10: encoding: [0xea,0xc6,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
423 v_cvt_norm_u16_f16_dpp v5, v1 dpp8:[0,1,2,3,4,5,6,7] fi:1
424 // GFX10: encoding: [0xea,0xc8,0x0a,0x7e,0x01,0x88,0xc6,0xfa]
426 v_add_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
427 // GFX10: encoding: [0xea,0x04,0x0a,0x06,0x01,0x88,0xc6,0xfa]
429 v_sub_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
430 // GFX10: encoding: [0xea,0x04,0x0a,0x08,0x01,0x88,0xc6,0xfa]
432 v_subrev_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
433 // GFX10: encoding: [0xea,0x04,0x0a,0x0a,0x01,0x88,0xc6,0xfa]
435 v_mul_legacy_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
436 // GFX10: encoding: [0xea,0x04,0x0a,0x0e,0x01,0x88,0xc6,0xfa]
438 v_mul_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
439 // GFX10: encoding: [0xea,0x04,0x0a,0x10,0x01,0x88,0xc6,0xfa]
441 v_mul_i32_i24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
442 // GFX10: encoding: [0xea,0x04,0x0a,0x12,0x01,0x88,0xc6,0xfa]
444 v_mul_hi_i32_i24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
445 // GFX10: encoding: [0xea,0x04,0x0a,0x14,0x01,0x88,0xc6,0xfa]
447 v_mul_u32_u24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
448 // GFX10: encoding: [0xea,0x04,0x0a,0x16,0x01,0x88,0xc6,0xfa]
450 v_mul_hi_u32_u24_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
451 // GFX10: encoding: [0xea,0x04,0x0a,0x18,0x01,0x88,0xc6,0xfa]
453 v_min_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
454 // GFX10: encoding: [0xea,0x04,0x0a,0x1e,0x01,0x88,0xc6,0xfa]
456 v_max_f32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
457 // GFX10: encoding: [0xea,0x04,0x0a,0x20,0x01,0x88,0xc6,0xfa]
459 v_min_i32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
460 // GFX10: encoding: [0xea,0x04,0x0a,0x22,0x01,0x88,0xc6,0xfa]
462 v_max_i32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
463 // GFX10: encoding: [0xea,0x04,0x0a,0x24,0x01,0x88,0xc6,0xfa]
465 v_min_u32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
466 // GFX10: encoding: [0xea,0x04,0x0a,0x26,0x01,0x88,0xc6,0xfa]
468 v_max_u32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
469 // GFX10: encoding: [0xea,0x04,0x0a,0x28,0x01,0x88,0xc6,0xfa]
471 v_lshrrev_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
472 // GFX10: encoding: [0xea,0x04,0x0a,0x2c,0x01,0x88,0xc6,0xfa]
474 v_ashrrev_i32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
475 // GFX10: encoding: [0xea,0x04,0x0a,0x30,0x01,0x88,0xc6,0xfa]
477 v_lshlrev_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
478 // GFX10: encoding: [0xea,0x04,0x0a,0x34,0x01,0x88,0xc6,0xfa]
480 v_and_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
481 // GFX10: encoding: [0xea,0x04,0x0a,0x36,0x01,0x88,0xc6,0xfa]
483 v_or_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
484 // GFX10: encoding: [0xea,0x04,0x0a,0x38,0x01,0x88,0xc6,0xfa]
486 v_xor_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
487 // GFX10: encoding: [0xea,0x04,0x0a,0x3a,0x01,0x88,0xc6,0xfa]
489 v_xnor_b32_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
490 // GFX10: encoding: [0xea,0x04,0x0a,0x3c,0x01,0x88,0xc6,0xfa]
492 v_add_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
493 // GFX10: encoding: [0xea,0x04,0x0a,0x64,0x01,0x88,0xc6,0xfa]
495 v_sub_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
496 // GFX10: encoding: [0xea,0x04,0x0a,0x66,0x01,0x88,0xc6,0xfa]
498 v_subrev_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
499 // GFX10: encoding: [0xea,0x04,0x0a,0x68,0x01,0x88,0xc6,0xfa]
501 v_mul_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
502 // GFX10: encoding: [0xea,0x04,0x0a,0x6a,0x01,0x88,0xc6,0xfa]
504 v_max_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
505 // GFX10: encoding: [0xea,0x04,0x0a,0x72,0x01,0x88,0xc6,0xfa]
507 v_min_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
508 // GFX10: encoding: [0xea,0x04,0x0a,0x74,0x01,0x88,0xc6,0xfa]
510 v_ldexp_f16_dpp v5, v1, v2 dpp8:[0,1,2,3,4,5,6,7] fi:1
511 // GFX10: encoding: [0xea,0x04,0x0a,0x76,0x01,0x88,0xc6,0xfa]
513 v_add_co_ci_u32_dpp v0, vcc_lo, v0, v0, vcc_lo dpp8:[7,6,5,4,3,2,1,0]
514 // W32: [0xe9,0x00,0x00,0x50,0x00,0x77,0x39,0x05]
515 // W64-ERR: error: instruction not supported on this GPU
517 v_sub_co_ci_u32_dpp v0, vcc_lo, v0, v0, vcc_lo dpp8:[7,6,5,4,3,2,1,0] fi:0
518 // W32: [0xe9,0x00,0x00,0x52,0x00,0x77,0x39,0x05]
519 // W64-ERR: error: instruction not supported on this GPU
521 v_subrev_co_ci_u32_dpp v0, vcc_lo, v0, v0, vcc_lo dpp8:[7,6,5,4,3,2,1,0] fi:1
522 // W32: [0xea,0x00,0x00,0x54,0x00,0x77,0x39,0x05]
523 // W64-ERR: error: instruction not supported on this GPU
525 v_add_co_ci_u32_dpp v0, vcc, v0, v0, vcc dpp8:[7,6,5,4,3,2,1,0] fi:1
526 // W64: [0xea,0x00,0x00,0x50,0x00,0x77,0x39,0x05]
527 // W32-ERR: error: instruction not supported on this GPU
529 v_sub_co_ci_u32_dpp v0, vcc, v0, v0, vcc dpp8:[7,6,5,4,3,2,1,0] fi:1
530 // W64: [0xea,0x00,0x00,0x52,0x00,0x77,0x39,0x05]
531 // W32-ERR: error: instruction not supported on this GPU
533 v_subrev_co_ci_u32_dpp v0, vcc, v0, v0, vcc dpp8:[7,6,5,4,3,2,1,0]
534 // W64: [0xe9,0x00,0x00,0x54,0x00,0x77,0x39,0x05]
535 // W32-ERR: error: instruction not supported on this GPU
537 v_add_nc_u32_dpp v5, v1, v255 dpp8:[7,6,5,4,3,2,1,0]
538 // GFX10: [0xe9,0xfe,0x0b,0x4a,0x01,0x77,0x39,0x05]
540 v_add_nc_u32_dpp v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0] fi:1
541 // GFX10: [0xea,0x04,0x0a,0x4a,0x01,0x77,0x39,0x05]
543 v_sub_nc_u32_dpp v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0]
544 // GFX10: [0xe9,0x04,0x0a,0x4c,0x01,0x77,0x39,0x05]
546 v_sub_nc_u32_dpp v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0] fi:1
547 // GFX10: [0xea,0x04,0x0a,0x4c,0x01,0x77,0x39,0x05]
549 v_subrev_nc_u32_dpp v5, v1, v255 dpp8:[7,6,5,4,3,2,1,0]
550 // GFX10: [0xe9,0xfe,0x0b,0x4e,0x01,0x77,0x39,0x05]
552 v_subrev_nc_u32_dpp v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0] fi:1
553 // GFX10: [0xea,0x04,0x0a,0x4e,0x01,0x77,0x39,0x05]
555 v_mac_f32 v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0]
556 // GFX10: v_mac_f32_dpp v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0] ; encoding: [0xe9,0x04,0x0a,0x3e,0x01,0x77,0x39,0x05]
558 v_mac_f32 v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0] fi:1
559 // GFX10: v_mac_f32_dpp v5, v1, v2 dpp8:[7,6,5,4,3,2,1,0] fi:1 ; encoding: [0xea,0x04,0x0a,0x3e,0x01,0x77,0x39,0x05]