Lines Matching refs:AVX512

6 …e=i686-unknown-unknown -mattr=+avx512f -mattr=+avx512vl -O3 | FileCheck %s --check-prefix=AVX512-32
7 …x86_64-unknown-unknown -mattr=+avx512f -mattr=+avx512vl -O3 | FileCheck %s --check-prefix=AVX512-64
94 ; AVX512-32-LABEL: test_v2f32_ogt_s:
95 ; AVX512-32: # %bb.0:
96 ; AVX512-32-NEXT: pushl %ebp
97 ; AVX512-32-NEXT: movl %esp, %ebp
98 ; AVX512-32-NEXT: andl $-16, %esp
99 ; AVX512-32-NEXT: subl $16, %esp
100 ; AVX512-32-NEXT: movw $-3, %ax
101 ; AVX512-32-NEXT: kmovw %eax, %k0
102 ; AVX512-32-NEXT: vcomiss 8(%ebp), %xmm2
103 ; AVX512-32-NEXT: seta %al
104 ; AVX512-32-NEXT: kmovw %eax, %k1
105 ; AVX512-32-NEXT: kandw %k0, %k1, %k0
106 ; AVX512-32-NEXT: vmovshdup {{.*#+}} xmm2 = xmm2[1,1,3,3]
107 ; AVX512-32-NEXT: vcomiss 12(%ebp), %xmm2
108 ; AVX512-32-NEXT: seta %al
109 ; AVX512-32-NEXT: kmovw %eax, %k1
110 ; AVX512-32-NEXT: kshiftlw $15, %k1, %k1
111 ; AVX512-32-NEXT: kshiftrw $14, %k1, %k1
112 ; AVX512-32-NEXT: korw %k1, %k0, %k1
113 ; AVX512-32-NEXT: vpblendmd %xmm0, %xmm1, %xmm0 {%k1}
114 ; AVX512-32-NEXT: movl %ebp, %esp
115 ; AVX512-32-NEXT: popl %ebp
116 ; AVX512-32-NEXT: retl
118 ; AVX512-64-LABEL: test_v2f32_ogt_s:
119 ; AVX512-64: # %bb.0:
120 ; AVX512-64-NEXT: movw $-3, %ax
121 ; AVX512-64-NEXT: kmovw %eax, %k0
122 ; AVX512-64-NEXT: vcomiss %xmm3, %xmm2
123 ; AVX512-64-NEXT: seta %al
124 ; AVX512-64-NEXT: kmovw %eax, %k1
125 ; AVX512-64-NEXT: kandw %k0, %k1, %k0
126 ; AVX512-64-NEXT: vmovshdup {{.*#+}} xmm3 = xmm3[1,1,3,3]
127 ; AVX512-64-NEXT: vmovshdup {{.*#+}} xmm2 = xmm2[1,1,3,3]
128 ; AVX512-64-NEXT: vcomiss %xmm3, %xmm2
129 ; AVX512-64-NEXT: seta %al
130 ; AVX512-64-NEXT: kmovw %eax, %k1
131 ; AVX512-64-NEXT: kshiftlw $15, %k1, %k1
132 ; AVX512-64-NEXT: kshiftrw $14, %k1, %k1
133 ; AVX512-64-NEXT: korw %k1, %k0, %k1
134 ; AVX512-64-NEXT: vpblendmd %xmm0, %xmm1, %xmm0 {%k1}
135 ; AVX512-64-NEXT: retq
285 ; AVX512-32-LABEL: test_v2f32_oeq_q:
286 ; AVX512-32: # %bb.0:
287 ; AVX512-32-NEXT: pushl %ebp
288 ; AVX512-32-NEXT: movl %esp, %ebp
289 ; AVX512-32-NEXT: andl $-16, %esp
290 ; AVX512-32-NEXT: subl $16, %esp
291 ; AVX512-32-NEXT: movw $-3, %ax
292 ; AVX512-32-NEXT: kmovw %eax, %k0
293 ; AVX512-32-NEXT: vucomiss 8(%ebp), %xmm2
294 ; AVX512-32-NEXT: setnp %al
295 ; AVX512-32-NEXT: sete %cl
296 ; AVX512-32-NEXT: testb %al, %cl
297 ; AVX512-32-NEXT: setne %al
298 ; AVX512-32-NEXT: kmovw %eax, %k1
299 ; AVX512-32-NEXT: kandw %k0, %k1, %k0
300 ; AVX512-32-NEXT: vmovshdup {{.*#+}} xmm2 = xmm2[1,1,3,3]
301 ; AVX512-32-NEXT: vucomiss 12(%ebp), %xmm2
302 ; AVX512-32-NEXT: setnp %al
303 ; AVX512-32-NEXT: sete %cl
304 ; AVX512-32-NEXT: testb %al, %cl
305 ; AVX512-32-NEXT: setne %al
306 ; AVX512-32-NEXT: kmovw %eax, %k1
307 ; AVX512-32-NEXT: kshiftlw $15, %k1, %k1
308 ; AVX512-32-NEXT: kshiftrw $14, %k1, %k1
309 ; AVX512-32-NEXT: korw %k1, %k0, %k1
310 ; AVX512-32-NEXT: vpblendmd %xmm0, %xmm1, %xmm0 {%k1}
311 ; AVX512-32-NEXT: movl %ebp, %esp
312 ; AVX512-32-NEXT: popl %ebp
313 ; AVX512-32-NEXT: retl
315 ; AVX512-64-LABEL: test_v2f32_oeq_q:
316 ; AVX512-64: # %bb.0:
317 ; AVX512-64-NEXT: vucomiss %xmm3, %xmm2
318 ; AVX512-64-NEXT: setnp %al
319 ; AVX512-64-NEXT: sete %cl
320 ; AVX512-64-NEXT: testb %al, %cl
321 ; AVX512-64-NEXT: setne %al
322 ; AVX512-64-NEXT: kmovw %eax, %k0
323 ; AVX512-64-NEXT: movw $-3, %ax
324 ; AVX512-64-NEXT: kmovw %eax, %k1
325 ; AVX512-64-NEXT: kandw %k1, %k0, %k0
326 ; AVX512-64-NEXT: vmovshdup {{.*#+}} xmm3 = xmm3[1,1,3,3]
327 ; AVX512-64-NEXT: vmovshdup {{.*#+}} xmm2 = xmm2[1,1,3,3]
328 ; AVX512-64-NEXT: vucomiss %xmm3, %xmm2
329 ; AVX512-64-NEXT: setnp %al
330 ; AVX512-64-NEXT: sete %cl
331 ; AVX512-64-NEXT: testb %al, %cl
332 ; AVX512-64-NEXT: setne %al
333 ; AVX512-64-NEXT: kmovw %eax, %k1
334 ; AVX512-64-NEXT: kshiftlw $15, %k1, %k1
335 ; AVX512-64-NEXT: kshiftrw $14, %k1, %k1
336 ; AVX512-64-NEXT: korw %k1, %k0, %k1
337 ; AVX512-64-NEXT: vpblendmd %xmm0, %xmm1, %xmm0 {%k1}
338 ; AVX512-64-NEXT: retq