Home
last modified time | relevance | path

Searched refs:AVX512F (Results 1 – 25 of 256) sorted by relevance

1234567891011

/external/llvm/test/CodeGen/X86/
Dvector-shuffle-512-v8.ll2 …ple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX512F
3 …=i386-unknown-linux-gnu -mattr=+avx512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX512F-32
6 ; AVX512F-LABEL: shuffle_v8f64_00000000:
7 ; AVX512F: # BB#0:
8 ; AVX512F-NEXT: vbroadcastsd %xmm0, %zmm0
9 ; AVX512F-NEXT: retq
11 ; AVX512F-32-LABEL: shuffle_v8f64_00000000:
12 ; AVX512F-32: # BB#0:
13 ; AVX512F-32-NEXT: vbroadcastsd %xmm0, %zmm0
14 ; AVX512F-32-NEXT: retl
[all …]
Dvector-popcnt-512.ll2 …=knl -mattr=+avx512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX512 --check-prefix=AVX512F
6 ; AVX512F-LABEL: testv8i64:
7 ; AVX512F: ## BB#0:
8 ; AVX512F-NEXT: vextracti64x4 $1, %zmm0, %ymm1
9 ; AVX512F-NEXT: vmovdqa {{.*#+}} ymm2 = [15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,1…
10 ; AVX512F-NEXT: vpand %ymm2, %ymm1, %ymm3
11 ; AVX512F-NEXT: vmovdqa {{.*#+}} ymm4 = [0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4,0,1,1,2,1,2,2,3,1,2,2,3…
12 ; AVX512F-NEXT: vpshufb %ymm3, %ymm4, %ymm3
13 ; AVX512F-NEXT: vpsrlw $4, %ymm1, %ymm1
14 ; AVX512F-NEXT: vpand %ymm2, %ymm1, %ymm1
[all …]
Dvector-shuffle-v1.ll2 ; RUN: llc < %s -mcpu=x86-64 -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F
8 ; AVX512F-LABEL: shuf2i1_1_0:
9 ; AVX512F: # BB#0:
10 ; AVX512F-NEXT: vpshufd {{.*#+}} xmm0 = xmm0[2,3,0,1]
11 ; AVX512F-NEXT: retq
28 ; AVX512F-LABEL: shuf2i1_1_2:
29 ; AVX512F: # BB#0:
30 ; AVX512F-NEXT: movl $1, %eax
31 ; AVX512F-NEXT: vmovq %rax, %xmm1
32 ; AVX512F-NEXT: vpalignr {{.*#+}} xmm0 = xmm0[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
[all …]
Dmasked_memop.ll4 …x86_64-apple-darwin -mattr=avx512f < %s | FileCheck %s --check-prefix=AVX512 --check-prefix=AVX512F
197 ; AVX512F-LABEL: test5:
198 ; AVX512F: ## BB#0:
199 ; AVX512F-NEXT: ## kill: %YMM0<def> %YMM0<kill> %ZMM0<def>
200 ; AVX512F-NEXT: vpxor %ymm2, %ymm2, %ymm2
201 ; AVX512F-NEXT: vpcmpeqd %zmm2, %zmm0, %k1
202 ; AVX512F-NEXT: vmovupd (%rdi), %zmm1 {%k1}
203 ; AVX512F-NEXT: vmovaps %zmm1, %zmm0
204 ; AVX512F-NEXT: retq
227 ; AVX512F-LABEL: test6:
[all …]
Davx512bw-intrinsics.ll3 …wn-linux-gnu -mcpu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512F-32
33 ; AVX512F-32-LABEL: test_cmp_b_512:
34 ; AVX512F-32: # BB#0:
35 ; AVX512F-32-NEXT: subl $68, %esp
36 ; AVX512F-32-NEXT: .Ltmp0:
37 ; AVX512F-32-NEXT: .cfi_def_cfa_offset 72
38 ; AVX512F-32-NEXT: vpcmpeqb %zmm1, %zmm0, %k0
39 ; AVX512F-32-NEXT: kmovq %k0, {{[0-9]+}}(%esp)
40 ; AVX512F-32-NEXT: movl {{[0-9]+}}(%esp), %eax
41 ; AVX512F-32-NEXT: movl {{[0-9]+}}(%esp), %edx
[all …]
Dmerge-consecutive-loads-512.ll2 …%s -mtriple=x86_64-unknown -mattr=+avx512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX512F
6 …N: llc < %s -mtriple=i686-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=X32-AVX512F
16 ; X32-AVX512F-LABEL: merge_8f64_2f64_12u4:
17 ; X32-AVX512F: # BB#0:
18 ; X32-AVX512F-NEXT: movl {{[0-9]+}}(%esp), %eax
19 ; X32-AVX512F-NEXT: vmovupd 16(%eax), %ymm0
20 ; X32-AVX512F-NEXT: vinsertf128 $1, 64(%eax), %ymm0, %ymm1
21 ; X32-AVX512F-NEXT: vinsertf64x4 $1, %ymm1, %zmm0, %zmm0
22 ; X32-AVX512F-NEXT: retl
44 ; X32-AVX512F-LABEL: merge_8f64_2f64_23z5:
[all …]
Davx512bw-intrinsics-upgrade.ll3 …wn-linux-gnu -mcpu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=ALL --check-prefix=AVX512F-32
15 ; AVX512F-32-LABEL: test_int_x86_avx512_mask_storeu_b_512:
16 ; AVX512F-32: # BB#0:
17 ; AVX512F-32-NEXT: movl {{[0-9]+}}(%esp), %eax
18 ; AVX512F-32-NEXT: movl {{[0-9]+}}(%esp), %ecx
19 ; AVX512F-32-NEXT: kmovq {{[0-9]+}}(%esp), %k1
20 ; AVX512F-32-NEXT: vmovdqu8 %zmm0, (%ecx) {%k1}
21 ; AVX512F-32-NEXT: vmovdqu8 %zmm0, (%eax)
22 ; AVX512F-32-NEXT: retl
38 ; AVX512F-32-LABEL: test_int_x86_avx512_mask_storeu_w_512:
[all …]
/external/llvm-project/llvm/test/CodeGen/X86/
Dvector-shuffle-512-v8.ll2 …ple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX512F
3 …=i386-unknown-linux-gnu -mattr=+avx512f | FileCheck %s --check-prefix=ALL --check-prefix=AVX512F-32
47 ; AVX512F-LABEL: shuffle_v8f64_00000010:
48 ; AVX512F: # %bb.0:
49 ; AVX512F-NEXT: vmovaps {{.*#+}} zmm1 = [0,0,0,0,0,0,1,0]
50 ; AVX512F-NEXT: vpermpd %zmm0, %zmm1, %zmm0
51 ; AVX512F-NEXT: retq
53 ; AVX512F-32-LABEL: shuffle_v8f64_00000010:
54 ; AVX512F-32: # %bb.0:
55 ; AVX512F-32-NEXT: vmovaps {{.*#+}} zmm1 = [0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0]
[all …]
Dvec-strict-cmp-256.ll6 …llc < %s -mtriple=i686-unknown-unknown -mattr=+avx512f -O3 | FileCheck %s --check-prefix=AVX512F-32
7 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f -O3 | FileCheck %s --check-prefix=AVX512F-64
46 ; AVX512F-32-LABEL: test_v8f32_oeq_q:
47 ; AVX512F-32: # %bb.0:
48 ; AVX512F-32-NEXT: pushl %ebp
49 ; AVX512F-32-NEXT: movl %esp, %ebp
50 ; AVX512F-32-NEXT: andl $-32, %esp
51 ; AVX512F-32-NEXT: subl $32, %esp
52 ; AVX512F-32-NEXT: # kill: def $ymm1 killed $ymm1 def $zmm1
53 ; AVX512F-32-NEXT: # kill: def $ymm0 killed $ymm0 def $zmm0
[all …]
Davx512vl-vec-test-testn.ll4 …64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F --check-prefix=AVX512F-X64
5 …86-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F --check-prefix=AVX512F-X86
16 ; AVX512F-LABEL: TEST_mm_test_epi64_mask:
17 ; AVX512F: # %bb.0: # %entry
18 ; AVX512F-NEXT: # kill: def $xmm1 killed $xmm1 def $zmm1
19 ; AVX512F-NEXT: # kill: def $xmm0 killed $xmm0 def $zmm0
20 ; AVX512F-NEXT: vptestmq %zmm0, %zmm1, %k0
21 ; AVX512F-NEXT: kshiftlw $14, %k0, %k0
22 ; AVX512F-NEXT: kshiftrw $14, %k0, %k0
23 ; AVX512F-NEXT: kmovw %k0, %eax
[all …]
Dvector-popcnt-512-ult-ugt.ll2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F
10 ; AVX512F-LABEL: ugt_1_v64i8:
11 ; AVX512F: # %bb.0:
12 ; AVX512F-NEXT: vextracti64x4 $1, %zmm0, %ymm1
13 ; AVX512F-NEXT: vpcmpeqd %ymm2, %ymm2, %ymm2
14 ; AVX512F-NEXT: vpaddb %ymm2, %ymm1, %ymm3
15 ; AVX512F-NEXT: vpand %ymm3, %ymm1, %ymm1
16 ; AVX512F-NEXT: vpxor %xmm3, %xmm3, %xmm3
17 ; AVX512F-NEXT: vpcmpeqb %ymm3, %ymm1, %ymm1
18 ; AVX512F-NEXT: vpaddb %ymm2, %ymm0, %ymm2
[all …]
Dvector-idiv-sdiv-512.ll2 …ple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX --check-prefix=AVX512F
103 ; AVX512F-LABEL: test_div7_32i16:
104 ; AVX512F: # %bb.0:
105 ; AVX512F-NEXT: vextracti64x4 $1, %zmm0, %ymm1
106 ; AVX512F-NEXT: vmovdqa {{.*#+}} ymm2 = [18725,18725,18725,18725,18725,18725,18725,18725,18725,1…
107 ; AVX512F-NEXT: vpmulhw %ymm2, %ymm1, %ymm1
108 ; AVX512F-NEXT: vpsrlw $15, %ymm1, %ymm3
109 ; AVX512F-NEXT: vpsraw $1, %ymm1, %ymm1
110 ; AVX512F-NEXT: vpaddw %ymm3, %ymm1, %ymm1
111 ; AVX512F-NEXT: vpmulhw %ymm2, %ymm0, %ymm0
[all …]
Davx512bw-intrinsics-canonical.ll3 …-mtriple=i386-unknown-linux-gnu -mcpu=knl -mattr=+avx512bw | FileCheck %s --check-prefix=AVX512F-32
17 ; AVX512F-32-LABEL: test_mask_adds_epi16_rr_512:
18 ; AVX512F-32: # %bb.0:
19 ; AVX512F-32-NEXT: vpaddsw %zmm1, %zmm0, %zmm0
20 ; AVX512F-32-NEXT: retl
34 ; AVX512F-32-LABEL: test_mask_adds_epi16_rrk_512:
35 ; AVX512F-32: # %bb.0:
36 ; AVX512F-32-NEXT: kmovd {{[0-9]+}}(%esp), %k1
37 ; AVX512F-32-NEXT: vpaddsw %zmm1, %zmm0, %zmm2 {%k1}
38 ; AVX512F-32-NEXT: vmovdqa64 %zmm2, %zmm0
[all …]
Davg-mask.ll2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F
6 ; AVX512F-LABEL: avg_v16i8_mask:
7 ; AVX512F: # %bb.0:
8 ; AVX512F-NEXT: vpavgb %xmm1, %xmm0, %xmm0
9 ; AVX512F-NEXT: kmovw %edi, %k1
10 ; AVX512F-NEXT: vpternlogd $255, %zmm1, %zmm1, %zmm1 {%k1} {z}
11 ; AVX512F-NEXT: vpmovdb %zmm1, %xmm1
12 ; AVX512F-NEXT: vpblendvb %xmm1, %xmm0, %xmm2, %xmm0
13 ; AVX512F-NEXT: vzeroupper
14 ; AVX512F-NEXT: retq
[all …]
Dpr34177.ll2 ; RUN: llc < %s -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F
9 ; AVX512F-LABEL: test:
10 ; AVX512F: # %bb.0:
11 ; AVX512F-NEXT: vmovq %xmm0, %rax
12 ; AVX512F-NEXT: vpextrq $1, %xmm0, %rcx
13 ; AVX512F-NEXT: vextracti128 $1, %ymm0, %xmm0
14 ; AVX512F-NEXT: vmovq %xmm0, %rdx
15 ; AVX512F-NEXT: vpextrq $1, %xmm0, %rsi
16 ; AVX512F-NEXT: cmpq $3, %rsi
17 ; AVX512F-NEXT: fld1
[all …]
Dvec-strict-cmp-128.ll8 …c < %s -mtriple=i686-unknown-unknown -mattr=+avx512f -O3 | FileCheck %s --check-prefixes=AVX512F-32
9 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f -O3 | FileCheck %s --check-prefixes=AVX512F-64
70 ; AVX512F-32-LABEL: test_v4f32_oeq_q:
71 ; AVX512F-32: # %bb.0:
72 ; AVX512F-32-NEXT: pushl %ebp
73 ; AVX512F-32-NEXT: movl %esp, %ebp
74 ; AVX512F-32-NEXT: andl $-16, %esp
75 ; AVX512F-32-NEXT: subl $16, %esp
76 ; AVX512F-32-NEXT: # kill: def $xmm1 killed $xmm1 def $zmm1
77 ; AVX512F-32-NEXT: # kill: def $xmm0 killed $xmm0 def $zmm0
[all …]
Dvector-shuffle-v1.ll2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F
7 ; AVX512F-LABEL: shuf2i1_1_0:
8 ; AVX512F: # %bb.0:
9 ; AVX512F-NEXT: vpsllq $63, %xmm0, %xmm0
10 ; AVX512F-NEXT: vptestmq %zmm0, %zmm0, %k1
11 ; AVX512F-NEXT: vpternlogq $255, %zmm0, %zmm0, %zmm0 {%k1} {z}
12 ; AVX512F-NEXT: vpshufd {{.*#+}} xmm0 = xmm0[2,3,0,1]
13 ; AVX512F-NEXT: vptestmq %zmm0, %zmm0, %k1
14 ; AVX512F-NEXT: vpternlogq $255, %zmm0, %zmm0, %zmm0 {%k1} {z}
15 ; AVX512F-NEXT: # kill: def $xmm0 killed $xmm0 killed $zmm0
[all …]
Dvar-permute-512.ll2 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefixes=AVX512,AVX512F
95 ; AVX512F-LABEL: var_shuffle_v32i16:
96 ; AVX512F: # %bb.0:
97 ; AVX512F-NEXT: pushq %rbp
98 ; AVX512F-NEXT: movq %rsp, %rbp
99 ; AVX512F-NEXT: andq $-64, %rsp
100 ; AVX512F-NEXT: subq $128, %rsp
101 ; AVX512F-NEXT: vextracti128 $1, %ymm1, %xmm2
102 ; AVX512F-NEXT: vextracti32x4 $2, %zmm1, %xmm3
103 ; AVX512F-NEXT: vextracti32x4 $3, %zmm1, %xmm4
[all …]
Dvec-strict-cmp-sub128.ll8 …e=i686-unknown-unknown -mattr=+avx512f -mattr=+avx512f -O3 | FileCheck %s --check-prefix=AVX512F-32
9 …x86_64-unknown-unknown -mattr=+avx512f -mattr=+avx512f -O3 | FileCheck %s --check-prefix=AVX512F-64
137 ; AVX512F-32-LABEL: test_v2f32_ogt_s:
138 ; AVX512F-32: # %bb.0:
139 ; AVX512F-32-NEXT: pushl %ebp
140 ; AVX512F-32-NEXT: movl %esp, %ebp
141 ; AVX512F-32-NEXT: andl $-16, %esp
142 ; AVX512F-32-NEXT: subl $16, %esp
143 ; AVX512F-32-NEXT: # kill: def $xmm1 killed $xmm1 def $zmm1
144 ; AVX512F-32-NEXT: # kill: def $xmm0 killed $xmm0 def $zmm0
[all …]
Davx512-select.ll2 …c < %s -mtriple=i686-unknown-unknown -mattr=avx512f | FileCheck %s --check-prefixes=X86,X86-AVX512F
3 …< %s -mtriple=x86_64-unknown-unknown -mattr=avx512f | FileCheck %s --check-prefixes=X64,X64-AVX512F
152 ; X86-AVX512F-LABEL: select05_mem:
153 ; X86-AVX512F: # %bb.0:
154 ; X86-AVX512F-NEXT: movl {{[0-9]+}}(%esp), %eax
155 ; X86-AVX512F-NEXT: movl {{[0-9]+}}(%esp), %ecx
156 ; X86-AVX512F-NEXT: kmovw (%ecx), %k0
157 ; X86-AVX512F-NEXT: kmovw (%eax), %k1
158 ; X86-AVX512F-NEXT: korw %k1, %k0, %k0
159 ; X86-AVX512F-NEXT: kmovw %k0, %eax
[all …]
Dvector-popcnt-512.ll2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512F
9 ; AVX512F-LABEL: testv8i64:
10 ; AVX512F: # %bb.0:
11 ; AVX512F-NEXT: vextracti64x4 $1, %zmm0, %ymm1
12 ; AVX512F-NEXT: vmovdqa {{.*#+}} ymm2 = [15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,1…
13 ; AVX512F-NEXT: vpand %ymm2, %ymm1, %ymm3
14 ; AVX512F-NEXT: vmovdqa {{.*#+}} ymm4 = [0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4,0,1,1,2,1,2,2,3,1,2,2,3…
15 ; AVX512F-NEXT: vpshufb %ymm3, %ymm4, %ymm3
16 ; AVX512F-NEXT: vpsrlw $4, %ymm1, %ymm1
17 ; AVX512F-NEXT: vpand %ymm2, %ymm1, %ymm1
[all …]
Dvec-strict-fptoint-256.ll4 …e=i686-unknown-unknown -mattr=+avx512f -O3 | FileCheck %s --check-prefixes=CHECK,AVX512F,AVX512F-32
5 …x86_64-unknown-unknown -mattr=+avx512f -O3 | FileCheck %s --check-prefixes=CHECK,AVX512F,AVX512F-64
93 ; AVX512F-32-LABEL: strict_vector_fptosi_v4f64_to_v4i64:
94 ; AVX512F-32: # %bb.0:
95 ; AVX512F-32-NEXT: pushl %ebp
96 ; AVX512F-32-NEXT: .cfi_def_cfa_offset 8
97 ; AVX512F-32-NEXT: .cfi_offset %ebp, -8
98 ; AVX512F-32-NEXT: movl %esp, %ebp
99 ; AVX512F-32-NEXT: .cfi_def_cfa_register %ebp
100 ; AVX512F-32-NEXT: andl $-8, %esp
[all …]
Dvector-idiv-udiv-512.ll2 …ple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX --check-prefix=AVX512F
104 ; AVX512F-LABEL: test_div7_32i16:
105 ; AVX512F: # %bb.0:
106 ; AVX512F-NEXT: vmovdqa {{.*#+}} ymm1 = [9363,9363,9363,9363,9363,9363,9363,9363,9363,9363,9363,…
107 ; AVX512F-NEXT: vpmulhuw %ymm1, %ymm0, %ymm2
108 ; AVX512F-NEXT: vpsubw %ymm2, %ymm0, %ymm3
109 ; AVX512F-NEXT: vpsrlw $1, %ymm3, %ymm3
110 ; AVX512F-NEXT: vpaddw %ymm2, %ymm3, %ymm2
111 ; AVX512F-NEXT: vpsrlw $2, %ymm2, %ymm2
112 ; AVX512F-NEXT: vextracti64x4 $1, %zmm0, %ymm0
[all …]
Dbitcast-setcc-128.ll6 … %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512vl | FileCheck %s --check-prefix=AVX512F
26 ; AVX512F-LABEL: v8i16:
27 ; AVX512F: # %bb.0:
28 ; AVX512F-NEXT: vpcmpgtw %xmm1, %xmm0, %xmm0
29 ; AVX512F-NEXT: vpmovsxwd %xmm0, %ymm0
30 ; AVX512F-NEXT: vptestmd %ymm0, %ymm0, %k0
31 ; AVX512F-NEXT: kmovw %k0, %eax
32 ; AVX512F-NEXT: # kill: def $al killed $al killed $eax
33 ; AVX512F-NEXT: vzeroupper
34 ; AVX512F-NEXT: retq
[all …]
Dmerge-consecutive-loads-512.ll6 …N: llc < %s -mtriple=i686-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=X86-AVX512F
16 ; X86-AVX512F-LABEL: merge_8f64_2f64_12u4:
17 ; X86-AVX512F: # %bb.0:
18 ; X86-AVX512F-NEXT: movl {{[0-9]+}}(%esp), %eax
19 ; X86-AVX512F-NEXT: vmovups 16(%eax), %ymm0
20 ; X86-AVX512F-NEXT: vinsertf128 $1, 64(%eax), %ymm0, %ymm1
21 ; X86-AVX512F-NEXT: vinsertf64x4 $1, %ymm1, %zmm0, %zmm0
22 ; X86-AVX512F-NEXT: retl
44 ; X86-AVX512F-LABEL: merge_8f64_2f64_23z5:
45 ; X86-AVX512F: # %bb.0:
[all …]

1234567891011