Skip to content

Commit fb5524c

Browse files
committed
[AMDGPU][MC][True16] Add more tests.
1 parent f68fb0b commit fb5524c

File tree

4 files changed

+486
-102
lines changed

4 files changed

+486
-102
lines changed

llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1-fake16.s

Lines changed: 210 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,3 +83,213 @@ v_floor_f16_e64_dpp v5, v1 mul:4 row_xmask:0 row_mask:0x1 bank_mask:0x3 bound_ct
8383

8484
v_floor_f16_e64_dpp v255, -|v255| clamp div:2 row_xmask:15 row_mask:0x3 bank_mask:0x0 bound_ctrl:0 fi:1
8585
// GFX11: [0xff,0x81,0xdb,0xd5,0xfa,0x00,0x00,0x38,0xff,0x6f,0x05,0x30]
86+
87+
v_rcp_f16_e64_dpp v5, v1 quad_perm:[3,2,1,0]
88+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1b,0x00,0xff]
89+
90+
v_rcp_f16_e64_dpp v5, v1 quad_perm:[0,1,2,3]
91+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0xe4,0x00,0xff]
92+
93+
v_rcp_f16_e64_dpp v5, v1 row_mirror
94+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x40,0x01,0xff]
95+
96+
v_rcp_f16_e64_dpp v5, v1 row_half_mirror
97+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x41,0x01,0xff]
98+
99+
v_rcp_f16_e64_dpp v5, v1 row_shl:1
100+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x01,0x01,0xff]
101+
102+
v_rcp_f16_e64_dpp v5, v1 row_shl:15
103+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x0f,0x01,0xff]
104+
105+
v_rcp_f16_e64_dpp v5, v1 row_shr:1
106+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x11,0x01,0xff]
107+
108+
v_rcp_f16_e64_dpp v5, v1 row_shr:15
109+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1f,0x01,0xff]
110+
111+
v_rcp_f16_e64_dpp v5, v1 row_ror:1
112+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x21,0x01,0xff]
113+
114+
v_rcp_f16_e64_dpp v5, v1 row_ror:15
115+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x2f,0x01,0xff]
116+
117+
v_rcp_f16_e64_dpp v5, v1 row_share:0 row_mask:0xf bank_mask:0xf
118+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x00,0x01,0x50,0x01,0xff]
119+
120+
v_rcp_f16_e64_dpp v5, v1 mul:2 row_share:15 row_mask:0x0 bank_mask:0x1
121+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x08,0x01,0x5f,0x01,0x01]
122+
123+
v_rcp_f16_e64_dpp v5, v1 mul:4 row_xmask:0 row_mask:0x1 bank_mask:0x3 bound_ctrl:1 fi:0
124+
// GFX11: [0x05,0x00,0xd4,0xd5,0xfa,0x00,0x00,0x10,0x01,0x60,0x09,0x13]
125+
126+
v_rcp_f16_e64_dpp v255, -|v255| clamp div:2 row_xmask:15 row_mask:0x3 bank_mask:0x0 bound_ctrl:0 fi:1
127+
// GFX11: [0xff,0x81,0xd4,0xd5,0xfa,0x00,0x00,0x38,0xff,0x6f,0x05,0x30]
128+
129+
v_sqrt_f16_e64_dpp v5, v1 quad_perm:[3,2,1,0]
130+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1b,0x00,0xff]
131+
132+
v_sqrt_f16_e64_dpp v5, v1 quad_perm:[0,1,2,3]
133+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0xe4,0x00,0xff]
134+
135+
v_sqrt_f16_e64_dpp v5, v1 row_mirror
136+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x40,0x01,0xff]
137+
138+
v_sqrt_f16_e64_dpp v5, v1 row_half_mirror
139+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x41,0x01,0xff]
140+
141+
v_sqrt_f16_e64_dpp v5, v1 row_shl:1
142+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x01,0x01,0xff]
143+
144+
v_sqrt_f16_e64_dpp v5, v1 row_shl:15
145+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x0f,0x01,0xff]
146+
147+
v_sqrt_f16_e64_dpp v5, v1 row_shr:1
148+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x11,0x01,0xff]
149+
150+
v_sqrt_f16_e64_dpp v5, v1 row_shr:15
151+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1f,0x01,0xff]
152+
153+
v_sqrt_f16_e64_dpp v5, v1 row_ror:1
154+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x21,0x01,0xff]
155+
156+
v_sqrt_f16_e64_dpp v5, v1 row_ror:15
157+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x2f,0x01,0xff]
158+
159+
v_sqrt_f16_e64_dpp v5, v1 row_share:0 row_mask:0xf bank_mask:0xf
160+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x00,0x01,0x50,0x01,0xff]
161+
162+
v_sqrt_f16_e64_dpp v5, v1 mul:2 row_share:15 row_mask:0x0 bank_mask:0x1
163+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x08,0x01,0x5f,0x01,0x01]
164+
165+
v_sqrt_f16_e64_dpp v5, v1 mul:4 row_xmask:0 row_mask:0x1 bank_mask:0x3 bound_ctrl:1 fi:0
166+
// GFX11: [0x05,0x00,0xd5,0xd5,0xfa,0x00,0x00,0x10,0x01,0x60,0x09,0x13]
167+
168+
v_sqrt_f16_e64_dpp v255, -|v255| clamp div:2 row_xmask:15 row_mask:0x3 bank_mask:0x0 bound_ctrl:0 fi:1
169+
// GFX11: [0xff,0x81,0xd5,0xd5,0xfa,0x00,0x00,0x38,0xff,0x6f,0x05,0x30]
170+
171+
v_rsq_f16_e64_dpp v5, v1 quad_perm:[3,2,1,0]
172+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1b,0x00,0xff]
173+
174+
v_rsq_f16_e64_dpp v5, v1 quad_perm:[0,1,2,3]
175+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0xe4,0x00,0xff]
176+
177+
v_rsq_f16_e64_dpp v5, v1 row_mirror
178+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x40,0x01,0xff]
179+
180+
v_rsq_f16_e64_dpp v5, v1 row_half_mirror
181+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x41,0x01,0xff]
182+
183+
v_rsq_f16_e64_dpp v5, v1 row_shl:1
184+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x01,0x01,0xff]
185+
186+
v_rsq_f16_e64_dpp v5, v1 row_shl:15
187+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x0f,0x01,0xff]
188+
189+
v_rsq_f16_e64_dpp v5, v1 row_shr:1
190+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x11,0x01,0xff]
191+
192+
v_rsq_f16_e64_dpp v5, v1 row_shr:15
193+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1f,0x01,0xff]
194+
195+
v_rsq_f16_e64_dpp v5, v1 row_ror:1
196+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x21,0x01,0xff]
197+
198+
v_rsq_f16_e64_dpp v5, v1 row_ror:15
199+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x2f,0x01,0xff]
200+
201+
v_rsq_f16_e64_dpp v5, v1 row_share:0 row_mask:0xf bank_mask:0xf
202+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x00,0x01,0x50,0x01,0xff]
203+
204+
v_rsq_f16_e64_dpp v5, v1 mul:2 row_share:15 row_mask:0x0 bank_mask:0x1
205+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x08,0x01,0x5f,0x01,0x01]
206+
207+
v_rsq_f16_e64_dpp v5, v1 mul:4 row_xmask:0 row_mask:0x1 bank_mask:0x3 bound_ctrl:1 fi:0
208+
// GFX11: [0x05,0x00,0xd6,0xd5,0xfa,0x00,0x00,0x10,0x01,0x60,0x09,0x13]
209+
210+
v_rsq_f16_e64_dpp v255, -|v255| clamp div:2 row_xmask:15 row_mask:0x3 bank_mask:0x0 bound_ctrl:0 fi:1
211+
// GFX11: [0xff,0x81,0xd6,0xd5,0xfa,0x00,0x00,0x38,0xff,0x6f,0x05,0x30]
212+
213+
v_log_f16_e64_dpp v5, v1 quad_perm:[3,2,1,0]
214+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1b,0x00,0xff]
215+
216+
v_log_f16_e64_dpp v5, v1 quad_perm:[0,1,2,3]
217+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0xe4,0x00,0xff]
218+
219+
v_log_f16_e64_dpp v5, v1 row_mirror
220+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x40,0x01,0xff]
221+
222+
v_log_f16_e64_dpp v5, v1 row_half_mirror
223+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x41,0x01,0xff]
224+
225+
v_log_f16_e64_dpp v5, v1 row_shl:1
226+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x01,0x01,0xff]
227+
228+
v_log_f16_e64_dpp v5, v1 row_shl:15
229+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x0f,0x01,0xff]
230+
231+
v_log_f16_e64_dpp v5, v1 row_shr:1
232+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x11,0x01,0xff]
233+
234+
v_log_f16_e64_dpp v5, v1 row_shr:15
235+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1f,0x01,0xff]
236+
237+
v_log_f16_e64_dpp v5, v1 row_ror:1
238+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x21,0x01,0xff]
239+
240+
v_log_f16_e64_dpp v5, v1 row_ror:15
241+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x2f,0x01,0xff]
242+
243+
v_log_f16_e64_dpp v5, v1 row_share:0 row_mask:0xf bank_mask:0xf
244+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x00,0x01,0x50,0x01,0xff]
245+
246+
v_log_f16_e64_dpp v5, v1 mul:2 row_share:15 row_mask:0x0 bank_mask:0x1
247+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x08,0x01,0x5f,0x01,0x01]
248+
249+
v_log_f16_e64_dpp v5, v1 mul:4 row_xmask:0 row_mask:0x1 bank_mask:0x3 bound_ctrl:1 fi:0
250+
// GFX11: [0x05,0x00,0xd7,0xd5,0xfa,0x00,0x00,0x10,0x01,0x60,0x09,0x13]
251+
252+
v_log_f16_e64_dpp v255, -|v255| clamp div:2 row_xmask:15 row_mask:0x3 bank_mask:0x0 bound_ctrl:0 fi:1
253+
// GFX11: [0xff,0x81,0xd7,0xd5,0xfa,0x00,0x00,0x38,0xff,0x6f,0x05,0x30]
254+
255+
v_exp_f16_e64_dpp v5, v1 quad_perm:[3,2,1,0]
256+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1b,0x00,0xff]
257+
258+
v_exp_f16_e64_dpp v5, v1 quad_perm:[0,1,2,3]
259+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0xe4,0x00,0xff]
260+
261+
v_exp_f16_e64_dpp v5, v1 row_mirror
262+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x40,0x01,0xff]
263+
264+
v_exp_f16_e64_dpp v5, v1 row_half_mirror
265+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x41,0x01,0xff]
266+
267+
v_exp_f16_e64_dpp v5, v1 row_shl:1
268+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x01,0x01,0xff]
269+
270+
v_exp_f16_e64_dpp v5, v1 row_shl:15
271+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x0f,0x01,0xff]
272+
273+
v_exp_f16_e64_dpp v5, v1 row_shr:1
274+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x11,0x01,0xff]
275+
276+
v_exp_f16_e64_dpp v5, v1 row_shr:15
277+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x1f,0x01,0xff]
278+
279+
v_exp_f16_e64_dpp v5, v1 row_ror:1
280+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x21,0x01,0xff]
281+
282+
v_exp_f16_e64_dpp v5, v1 row_ror:15
283+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x2f,0x01,0xff]
284+
285+
v_exp_f16_e64_dpp v5, v1 row_share:0 row_mask:0xf bank_mask:0xf
286+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x00,0x01,0x50,0x01,0xff]
287+
288+
v_exp_f16_e64_dpp v5, v1 mul:2 row_share:15 row_mask:0x0 bank_mask:0x1
289+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x08,0x01,0x5f,0x01,0x01]
290+
291+
v_exp_f16_e64_dpp v5, v1 mul:4 row_xmask:0 row_mask:0x1 bank_mask:0x3 bound_ctrl:1 fi:0
292+
// GFX11: [0x05,0x00,0xd8,0xd5,0xfa,0x00,0x00,0x10,0x01,0x60,0x09,0x13]
293+
294+
v_exp_f16_e64_dpp v255, -|v255| clamp div:2 row_xmask:15 row_mask:0x3 bank_mask:0x0 bound_ctrl:0 fi:1
295+
// GFX11: [0xff,0x81,0xd8,0xd5,0xfa,0x00,0x00,0x38,0xff,0x6f,0x05,0x30]

0 commit comments

Comments
 (0)