Lines Matching refs:VI
2 …iji -mattr=-flat-for-global -verify-machineinstrs < %s | FileCheck %s -check-prefixes=GCN,VIPLUS,VI
7 ; VI-LABEL: v_test_imax_sge_i16:
8 ; VI: ; %bb.0:
9 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
10 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
11 ; VI-NEXT: v_lshlrev_b32_e32 v4, 1, v0
12 ; VI-NEXT: s_waitcnt lgkmcnt(0)
13 ; VI-NEXT: v_mov_b32_e32 v1, s7
14 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v4
15 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
16 ; VI-NEXT: v_mov_b32_e32 v3, s1
17 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v4
18 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
19 ; VI-NEXT: flat_load_ushort v0, v[0:1]
20 ; VI-NEXT: flat_load_ushort v1, v[2:3]
21 ; VI-NEXT: v_mov_b32_e32 v5, s5
22 ; VI-NEXT: v_add_u32_e32 v4, vcc, s4, v4
23 ; VI-NEXT: v_addc_u32_e32 v5, vcc, 0, v5, vcc
24 ; VI-NEXT: s_waitcnt vmcnt(0)
25 ; VI-NEXT: v_max_i16_e32 v0, v0, v1
26 ; VI-NEXT: flat_store_short v[4:5], v0
27 ; VI-NEXT: s_endpgm
55 ; VI-LABEL: v_test_imax_sge_v2i16:
56 ; VI: ; %bb.0:
57 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
58 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
59 ; VI-NEXT: v_lshlrev_b32_e32 v4, 2, v0
60 ; VI-NEXT: s_waitcnt lgkmcnt(0)
61 ; VI-NEXT: v_mov_b32_e32 v1, s7
62 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v4
63 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
64 ; VI-NEXT: v_mov_b32_e32 v3, s1
65 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v4
66 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
67 ; VI-NEXT: flat_load_dword v5, v[0:1]
68 ; VI-NEXT: flat_load_dword v2, v[2:3]
69 ; VI-NEXT: v_mov_b32_e32 v1, s5
70 ; VI-NEXT: v_add_u32_e32 v0, vcc, s4, v4
71 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
72 ; VI-NEXT: s_waitcnt vmcnt(0)
73 ; VI-NEXT: v_max_i16_e32 v3, v5, v2
74 ; VI-NEXT: v_max_i16_sdwa v2, v5, v2 dst_sel:WORD_1 dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_s…
75 ; VI-NEXT: v_or_b32_e32 v2, v3, v2
76 ; VI-NEXT: flat_store_dword v[0:1], v2
77 ; VI-NEXT: s_endpgm
105 ; VI-LABEL: v_test_imax_sge_v3i16:
106 ; VI: ; %bb.0:
107 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
108 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
109 ; VI-NEXT: v_lshlrev_b32_e32 v6, 3, v0
110 ; VI-NEXT: s_waitcnt lgkmcnt(0)
111 ; VI-NEXT: v_mov_b32_e32 v1, s7
112 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v6
113 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
114 ; VI-NEXT: v_mov_b32_e32 v3, s1
115 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v6
116 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
117 ; VI-NEXT: v_add_u32_e32 v4, vcc, 4, v0
118 ; VI-NEXT: v_addc_u32_e32 v5, vcc, 0, v1, vcc
119 ; VI-NEXT: flat_load_ushort v4, v[4:5]
120 ; VI-NEXT: flat_load_dword v5, v[0:1]
121 ; VI-NEXT: v_add_u32_e32 v0, vcc, 4, v2
122 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v3, vcc
123 ; VI-NEXT: flat_load_dword v7, v[2:3]
124 ; VI-NEXT: flat_load_ushort v8, v[0:1]
125 ; VI-NEXT: v_add_u32_e32 v0, vcc, s4, v6
126 ; VI-NEXT: v_mov_b32_e32 v1, s5
127 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
128 ; VI-NEXT: v_add_u32_e32 v2, vcc, 4, v0
129 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v1, vcc
130 ; VI-NEXT: s_waitcnt vmcnt(1)
131 ; VI-NEXT: v_max_i16_e32 v6, v5, v7
132 ; VI-NEXT: v_max_i16_sdwa v5, v5, v7 dst_sel:WORD_1 dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_s…
133 ; VI-NEXT: s_waitcnt vmcnt(0)
134 ; VI-NEXT: v_max_i16_e32 v4, v4, v8
135 ; VI-NEXT: v_or_b32_e32 v5, v6, v5
136 ; VI-NEXT: flat_store_short v[2:3], v4
137 ; VI-NEXT: flat_store_dword v[0:1], v5
138 ; VI-NEXT: s_endpgm
173 ; VI-LABEL: v_test_imax_sge_v4i16:
174 ; VI: ; %bb.0:
175 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
176 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
177 ; VI-NEXT: v_lshlrev_b32_e32 v4, 3, v0
178 ; VI-NEXT: s_waitcnt lgkmcnt(0)
179 ; VI-NEXT: v_mov_b32_e32 v1, s7
180 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v4
181 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
182 ; VI-NEXT: v_mov_b32_e32 v3, s1
183 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v4
184 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
185 ; VI-NEXT: flat_load_dwordx2 v[0:1], v[0:1]
186 ; VI-NEXT: flat_load_dwordx2 v[2:3], v[2:3]
187 ; VI-NEXT: v_mov_b32_e32 v5, s5
188 ; VI-NEXT: v_add_u32_e32 v4, vcc, s4, v4
189 ; VI-NEXT: v_addc_u32_e32 v5, vcc, 0, v5, vcc
190 ; VI-NEXT: s_waitcnt vmcnt(0)
191 ; VI-NEXT: v_max_i16_e32 v6, v1, v3
192 ; VI-NEXT: v_max_i16_sdwa v1, v1, v3 dst_sel:WORD_1 dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_s…
193 ; VI-NEXT: v_max_i16_e32 v3, v0, v2
194 ; VI-NEXT: v_max_i16_sdwa v0, v0, v2 dst_sel:WORD_1 dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_s…
195 ; VI-NEXT: v_or_b32_e32 v1, v6, v1
196 ; VI-NEXT: v_or_b32_e32 v0, v3, v0
197 ; VI-NEXT: flat_store_dwordx2 v[4:5], v[0:1]
198 ; VI-NEXT: s_endpgm
227 ; VI-LABEL: v_test_imax_sgt_i16:
228 ; VI: ; %bb.0:
229 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
230 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
231 ; VI-NEXT: v_lshlrev_b32_e32 v4, 1, v0
232 ; VI-NEXT: s_waitcnt lgkmcnt(0)
233 ; VI-NEXT: v_mov_b32_e32 v1, s7
234 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v4
235 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
236 ; VI-NEXT: v_mov_b32_e32 v3, s1
237 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v4
238 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
239 ; VI-NEXT: flat_load_ushort v0, v[0:1]
240 ; VI-NEXT: flat_load_ushort v1, v[2:3]
241 ; VI-NEXT: v_mov_b32_e32 v5, s5
242 ; VI-NEXT: v_add_u32_e32 v4, vcc, s4, v4
243 ; VI-NEXT: v_addc_u32_e32 v5, vcc, 0, v5, vcc
244 ; VI-NEXT: s_waitcnt vmcnt(0)
245 ; VI-NEXT: v_max_i16_e32 v0, v0, v1
246 ; VI-NEXT: flat_store_short v[4:5], v0
247 ; VI-NEXT: s_endpgm
275 ; VI-LABEL: v_test_umax_uge_i16:
276 ; VI: ; %bb.0:
277 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
278 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
279 ; VI-NEXT: v_lshlrev_b32_e32 v4, 1, v0
280 ; VI-NEXT: s_waitcnt lgkmcnt(0)
281 ; VI-NEXT: v_mov_b32_e32 v1, s7
282 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v4
283 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
284 ; VI-NEXT: v_mov_b32_e32 v3, s1
285 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v4
286 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
287 ; VI-NEXT: flat_load_ushort v0, v[0:1]
288 ; VI-NEXT: flat_load_ushort v1, v[2:3]
289 ; VI-NEXT: v_mov_b32_e32 v5, s5
290 ; VI-NEXT: v_add_u32_e32 v4, vcc, s4, v4
291 ; VI-NEXT: v_addc_u32_e32 v5, vcc, 0, v5, vcc
292 ; VI-NEXT: s_waitcnt vmcnt(0)
293 ; VI-NEXT: v_max_u16_e32 v0, v0, v1
294 ; VI-NEXT: flat_store_short v[4:5], v0
295 ; VI-NEXT: s_endpgm
323 ; VI-LABEL: v_test_umax_ugt_i16:
324 ; VI: ; %bb.0:
325 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
326 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
327 ; VI-NEXT: v_lshlrev_b32_e32 v4, 1, v0
328 ; VI-NEXT: s_waitcnt lgkmcnt(0)
329 ; VI-NEXT: v_mov_b32_e32 v1, s7
330 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v4
331 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
332 ; VI-NEXT: v_mov_b32_e32 v3, s1
333 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v4
334 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
335 ; VI-NEXT: flat_load_ushort v0, v[0:1]
336 ; VI-NEXT: flat_load_ushort v1, v[2:3]
337 ; VI-NEXT: v_mov_b32_e32 v5, s5
338 ; VI-NEXT: v_add_u32_e32 v4, vcc, s4, v4
339 ; VI-NEXT: v_addc_u32_e32 v5, vcc, 0, v5, vcc
340 ; VI-NEXT: s_waitcnt vmcnt(0)
341 ; VI-NEXT: v_max_u16_e32 v0, v0, v1
342 ; VI-NEXT: flat_store_short v[4:5], v0
343 ; VI-NEXT: s_endpgm
370 ; VI-LABEL: v_test_umax_ugt_v2i16:
371 ; VI: ; %bb.0:
372 ; VI-NEXT: s_load_dwordx4 s[4:7], s[0:1], 0x24
373 ; VI-NEXT: s_load_dwordx2 s[0:1], s[0:1], 0x34
374 ; VI-NEXT: v_lshlrev_b32_e32 v4, 2, v0
375 ; VI-NEXT: s_waitcnt lgkmcnt(0)
376 ; VI-NEXT: v_mov_b32_e32 v1, s7
377 ; VI-NEXT: v_add_u32_e32 v0, vcc, s6, v4
378 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
379 ; VI-NEXT: v_mov_b32_e32 v3, s1
380 ; VI-NEXT: v_add_u32_e32 v2, vcc, s0, v4
381 ; VI-NEXT: v_addc_u32_e32 v3, vcc, 0, v3, vcc
382 ; VI-NEXT: flat_load_dword v5, v[0:1]
383 ; VI-NEXT: flat_load_dword v2, v[2:3]
384 ; VI-NEXT: v_mov_b32_e32 v1, s5
385 ; VI-NEXT: v_add_u32_e32 v0, vcc, s4, v4
386 ; VI-NEXT: v_addc_u32_e32 v1, vcc, 0, v1, vcc
387 ; VI-NEXT: s_waitcnt vmcnt(0)
388 ; VI-NEXT: v_max_u16_e32 v3, v5, v2
389 ; VI-NEXT: v_max_u16_sdwa v2, v5, v2 dst_sel:WORD_1 dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_s…
390 ; VI-NEXT: v_or_b32_e32 v2, v3, v2
391 ; VI-NEXT: flat_store_dword v[0:1], v2
392 ; VI-NEXT: s_endpgm