Home
last modified time | relevance | path

Searched refs:AVX512 (Results 1 – 25 of 412) sorted by relevance

12345678910>>...17

/external/llvm-project/llvm/test/CodeGen/X86/
Davx512-load-trunc-store-i1.ll2 …-unknown -mattr=+avx512f,+avx512bw,+avx512vl,+avx512dq -O2 | FileCheck %s --check-prefix=AVX512-ALL
3 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f -O2| FileCheck %s --check-prefix=AVX512-ONLY
6 ; AVX512-ALL-LABEL: load_v1i2_trunc_v1i1_store:
7 ; AVX512-ALL: # %bb.0:
8 ; AVX512-ALL-NEXT: kmovb (%rdi), %k0
9 ; AVX512-ALL-NEXT: kshiftlb $7, %k0, %k0
10 ; AVX512-ALL-NEXT: kshiftrb $7, %k0, %k0
11 ; AVX512-ALL-NEXT: kmovb %k0, (%rsi)
12 ; AVX512-ALL-NEXT: retq
14 ; AVX512-ONLY-LABEL: load_v1i2_trunc_v1i1_store:
[all …]
Dfast-isel-select-pseudo-cmov.ll6 … -verify-machineinstrs | FileCheck %s --check-prefix=CHECK --check-prefixes=ISEL,AVX512,AVX512-ISEL
7 …-machineinstrs | FileCheck %s --check-prefix=CHECK --check-prefixes=FASTISEL,AVX512,AVX512-FASTISEL
27 ; AVX512-LABEL: select_fcmp_one_f32:
28 ; AVX512: ## %bb.0:
29 ; AVX512-NEXT: vcmpneq_oqss %xmm1, %xmm0, %k1
30 ; AVX512-NEXT: vmovss %xmm2, %xmm3, %xmm3 {%k1}
31 ; AVX512-NEXT: vmovaps %xmm3, %xmm0
32 ; AVX512-NEXT: retq
55 ; AVX512-LABEL: select_fcmp_one_f64:
56 ; AVX512: ## %bb.0:
[all …]
Davx512-extract-subvector-load-store.ll2 …x512f,+avx512bw,+avx512vl,+avx512dq,+fast-variable-shuffle -O2 | FileCheck %s --check-prefix=AVX512
6 ; AVX512-LABEL: load_v8i1_broadcast_4_v2i1:
7 ; AVX512: # %bb.0:
8 ; AVX512-NEXT: kmovb (%rdi), %k0
9 ; AVX512-NEXT: kshiftrb $4, %k0, %k0
10 ; AVX512-NEXT: vpmovm2q %k0, %xmm2
11 ; AVX512-NEXT: vpbroadcastq %xmm2, %xmm2
12 ; AVX512-NEXT: vpmovq2m %xmm2, %k1
13 ; AVX512-NEXT: vmovapd %xmm0, %xmm1 {%k1}
14 ; AVX512-NEXT: vmovapd %xmm1, (%rsi)
[all …]
Dvector-reduce-fmax-nnan.ll6 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefix=AVX512
7 …ple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
33 ; AVX512-LABEL: test_v2f32:
34 ; AVX512: # %bb.0:
35 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
36 ; AVX512-NEXT: vmaxss %xmm1, %xmm0, %xmm0
37 ; AVX512-NEXT: retq
78 ; AVX512-LABEL: test_v4f32:
79 ; AVX512: # %bb.0:
80 ; AVX512-NEXT: vpermilps {{.*#+}} xmm1 = xmm0[3,3,3,3]
[all …]
Dvector-reduce-fmin-nnan.ll6 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefix=AVX512
7 …ple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
41 ; AVX512-LABEL: test_v2f32:
42 ; AVX512: # %bb.0:
43 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
44 ; AVX512-NEXT: vminss %xmm1, %xmm0, %xmm0
45 ; AVX512-NEXT: retq
80 ; AVX512-LABEL: test_v3f32:
81 ; AVX512: # %bb.0:
82 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
[all …]
Dvector-reduce-fmul.ll6 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefix=AVX512
7 …ple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
35 ; AVX512-LABEL: test_v2f32:
36 ; AVX512: # %bb.0:
37 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
38 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm1[1,1,3,3]
39 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
40 ; AVX512-NEXT: retq
82 ; AVX512-LABEL: test_v4f32:
83 ; AVX512: # %bb.0:
[all …]
Dvec-strict-cmp-256.ll4 …e=i686-unknown-unknown -mattr=+avx512f -mattr=+avx512vl -O3 | FileCheck %s --check-prefix=AVX512-32
5 …x86_64-unknown-unknown -mattr=+avx512f -mattr=+avx512vl -O3 | FileCheck %s --check-prefix=AVX512-64
28 ; AVX512-32-LABEL: test_v8f32_oeq_q:
29 ; AVX512-32: # %bb.0:
30 ; AVX512-32-NEXT: pushl %ebp
31 ; AVX512-32-NEXT: movl %esp, %ebp
32 ; AVX512-32-NEXT: andl $-32, %esp
33 ; AVX512-32-NEXT: subl $32, %esp
34 ; AVX512-32-NEXT: vcmpeqps 8(%ebp), %ymm2, %k1
35 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
[all …]
Dnontemporal-3.ll7 … %s -mtriple=x86_64-unknown-unknown -mattr=+avx512dq,+avx512vl | FileCheck %s --check-prefix=AVX512
8 … %s -mtriple=x86_64-unknown-unknown -mattr=+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
29 ; AVX512-LABEL: test_zero_v2f64_align1:
30 ; AVX512: # %bb.0:
31 ; AVX512-NEXT: xorl %eax, %eax
32 ; AVX512-NEXT: movntiq %rax, 8(%rdi)
33 ; AVX512-NEXT: movntiq %rax, (%rdi)
34 ; AVX512-NEXT: retq
54 ; AVX512-LABEL: test_zero_v4f32_align1:
55 ; AVX512: # %bb.0:
[all …]
Dvector-reduce-fmul-fast.ll6 … < %s -mtriple=x86_64-- -mcpu=x86-64 -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefix=AVX512
7 …iple=x86_64-- -mcpu=x86-64 -mattr=+avx512f,+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
36 ; AVX512-LABEL: test_v2f32:
37 ; AVX512: # %bb.0:
38 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
39 ; AVX512-NEXT: vmulss %xmm2, %xmm1, %xmm1
40 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
41 ; AVX512-NEXT: retq
77 ; AVX512-LABEL: test_v4f32:
78 ; AVX512: # %bb.0:
[all …]
Dfma_patterns.ll5 …own -mattr=+avx512dq,+avx512vl -fp-contract=fast | FileCheck %s --check-prefixes=AVX512,AVX512-INFS
9 …12vl -fp-contract=fast -enable-no-infs-fp-math | FileCheck %s --check-prefixes=AVX512,AVX512-NOINFS
26 ; AVX512-LABEL: test_f32_fmadd:
27 ; AVX512: # %bb.0:
28 ; AVX512-NEXT: vfmadd213ss {{.*#+}} xmm0 = (xmm1 * xmm0) + xmm2
29 ; AVX512-NEXT: retq
46 ; AVX512-LABEL: test_4f32_fmadd:
47 ; AVX512: # %bb.0:
48 ; AVX512-NEXT: vfmadd213ps {{.*#+}} xmm0 = (xmm1 * xmm0) + xmm2
49 ; AVX512-NEXT: retq
[all …]
Dsubvector-broadcast.ll4 … < %s -mtriple=i686-unknown-unknown -mattr=+avx512vl | FileCheck %s --check-prefixes=X86,X86-AVX512
5 …iple=i686-unknown-unknown -mattr=+avx512bw,+avx512vl | FileCheck %s --check-prefixes=X86,X86-AVX512
6 …iple=i686-unknown-unknown -mattr=+avx512dq,+avx512vl | FileCheck %s --check-prefixes=X86,X86-AVX512
9 … %s -mtriple=x86_64-unknown-unknown -mattr=+avx512vl | FileCheck %s --check-prefixes=X64,X64-AVX512
10 …le=x86_64-unknown-unknown -mattr=+avx512bw,+avx512vl | FileCheck %s --check-prefixes=X64,X64-AVX512
11 …le=x86_64-unknown-unknown -mattr=+avx512dq,+avx512vl | FileCheck %s --check-prefixes=X64,X64-AVX512
41 ; X86-AVX512-LABEL: test_broadcast_2f64_8f64:
42 ; X86-AVX512: # %bb.0:
43 ; X86-AVX512-NEXT: movl {{[0-9]+}}(%esp), %eax
44 ; X86-AVX512-NEXT: vbroadcastf32x4 {{.*#+}} zmm0 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]
[all …]
Davx512-scalar.ll2 …-darwin -mcpu=knl --show-mc-encoding | FileCheck %s --check-prefix=AVX512 --check-prefix=AVX512-KNL
3 …-darwin -mcpu=skx --show-mc-encoding | FileCheck %s --check-prefix=AVX512 --check-prefix=AVX512-SKX
7 ; AVX512-LABEL: test_fdiv:
8 ; AVX512: ## %bb.0:
9 ; AVX512-NEXT: vdivss %xmm1, %xmm0, %xmm0 ## EVEX TO VEX Compression encoding: [0xc5,0xfa,0x5e,0…
10 ; AVX512-NEXT: retq ## encoding: [0xc3]
21 ; AVX512-LABEL: test_fsub:
22 ; AVX512: ## %bb.0:
23 ; AVX512-NEXT: vsubss %xmm1, %xmm0, %xmm0 ## EVEX TO VEX Compression encoding: [0xc5,0xfa,0x5c,0…
24 ; AVX512-NEXT: retq ## encoding: [0xc3]
[all …]
Dshuffle-strided-with-offset-512.ll2 …ple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX512 --check-prefix=AVX…
3 …own-unknown -mattr=+avx512vl,+fast-variable-shuffle | FileCheck %s --check-prefixes=AVX512,AVX512VL
4 …own-unknown -mattr=+avx512bw,+fast-variable-shuffle | FileCheck %s --check-prefixes=AVX512,AVX512BW
5 …-mattr=+avx512bw,+avx512vl,+fast-variable-shuffle | FileCheck %s --check-prefixes=AVX512,AVX512BWVL
155 ; AVX512-LABEL: shuffle_v64i8_to_v16i8_1:
156 ; AVX512: # %bb.0:
157 ; AVX512-NEXT: vmovdqa (%rdi), %xmm0
158 ; AVX512-NEXT: vmovdqa 16(%rdi), %xmm1
159 ; AVX512-NEXT: vmovdqa 32(%rdi), %xmm2
160 ; AVX512-NEXT: vmovdqa 48(%rdi), %xmm3
[all …]
Dvector-reduce-fadd.ll7 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefix=AVX512
8 …ple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
36 ; AVX512-LABEL: test_v2f32:
37 ; AVX512: # %bb.0:
38 ; AVX512-NEXT: vaddss %xmm1, %xmm0, %xmm0
39 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm1[1,1,3,3]
40 ; AVX512-NEXT: vaddss %xmm1, %xmm0, %xmm0
41 ; AVX512-NEXT: retq
83 ; AVX512-LABEL: test_v4f32:
84 ; AVX512: # %bb.0:
[all …]
Dfast-isel-select-sse.ll6 …ify-machineinstrs -mattr=avx512f | FileCheck %s --check-prefix=AVX512
7 …ify-machineinstrs -fast-isel -fast-isel-abort=1 -mattr=avx512f | FileCheck %s --check-prefix=AVX512
27 ; AVX512-LABEL: select_fcmp_oeq_f32:
28 ; AVX512: # %bb.0:
29 ; AVX512-NEXT: vcmpeqss %xmm1, %xmm0, %k1
30 ; AVX512-NEXT: vmovss %xmm2, %xmm3, %xmm3 {%k1}
31 ; AVX512-NEXT: vmovaps %xmm3, %xmm0
32 ; AVX512-NEXT: retq
54 ; AVX512-LABEL: select_fcmp_oeq_f64:
55 ; AVX512: # %bb.0:
[all …]
Dvector-reduce-fmax-fmin-fast.ll6 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefix=AVX512
7 …ple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
37 ; AVX512-LABEL: test_v2f32:
38 ; AVX512: # %bb.0:
39 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
40 ; AVX512-NEXT: vminss %xmm1, %xmm0, %xmm0
41 ; AVX512-NEXT: retq
74 ; AVX512-LABEL: test_v4f32:
75 ; AVX512: # %bb.0:
76 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
[all …]
Dnontemporal-loads-2.ll6 …triple=x86_64-unknown-unknown -mattr=+avx512dq,+avx512vl | FileCheck %s --check-prefixes=AVX,AVX512
7 …triple=x86_64-unknown-unknown -mattr=+avx512bw,+avx512vl | FileCheck %s --check-prefixes=AVX,AVX512
398 ; AVX512-LABEL: test_v8f64_align1:
399 ; AVX512: # %bb.0:
400 ; AVX512-NEXT: vmovups (%rdi), %zmm0
401 ; AVX512-NEXT: retq
427 ; AVX512-LABEL: test_v16f32_align1:
428 ; AVX512: # %bb.0:
429 ; AVX512-NEXT: vmovups (%rdi), %zmm0
430 ; AVX512-NEXT: retq
[all …]
Drounding-ops.ll4 …ble-peephole -mtriple=x86_64-apple-macosx -mattr=+avx512f | FileCheck -check-prefix=CHECK-AVX512 %s
17 ; CHECK-AVX512-LABEL: test1:
18 ; CHECK-AVX512: ## %bb.0:
19 ; CHECK-AVX512-NEXT: vroundss $9, %xmm0, %xmm0, %xmm0
20 ; CHECK-AVX512-NEXT: retq
38 ; CHECK-AVX512-LABEL: test2:
39 ; CHECK-AVX512: ## %bb.0:
40 ; CHECK-AVX512-NEXT: vroundsd $9, %xmm0, %xmm0, %xmm0
41 ; CHECK-AVX512-NEXT: retq
59 ; CHECK-AVX512-LABEL: test3:
[all …]
Dcommute-fcmp.ll4 …le=x86_64-unknown -mattr=+avx512vl,+avx512dq -disable-peephole | FileCheck %s --check-prefix=AVX512
22 ; AVX512-LABEL: commute_cmpps_eq:
23 ; AVX512: # %bb.0:
24 ; AVX512-NEXT: vcmpeqps (%rdi), %xmm0, %xmm0
25 ; AVX512-NEXT: retq
43 ; AVX512-LABEL: commute_cmpps_ne:
44 ; AVX512: # %bb.0:
45 ; AVX512-NEXT: vcmpneqps (%rdi), %xmm0, %xmm0
46 ; AVX512-NEXT: retq
64 ; AVX512-LABEL: commute_cmpps_ord:
[all …]
Dvec-strict-cmp-sub128.ll6 …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
[all …]
Davoid-sfb.ll5 … %s -mtriple=x86_64-linux -mcpu=skx -verify-machineinstrs | FileCheck %s -check-prefix=CHECK-AVX512
61 ; CHECK-AVX512-LABEL: test_conditional_block:
62 ; CHECK-AVX512: # %bb.0: # %entry
63 ; CHECK-AVX512-NEXT: cmpl $18, %edx
64 ; CHECK-AVX512-NEXT: jl .LBB0_2
65 ; CHECK-AVX512-NEXT: # %bb.1: # %if.then
66 ; CHECK-AVX512-NEXT: movl %edx, 4(%rdi)
67 ; CHECK-AVX512-NEXT: .LBB0_2: # %if.end
68 ; CHECK-AVX512-NEXT: vmovups (%r8), %xmm0
69 ; CHECK-AVX512-NEXT: vmovups %xmm0, (%rcx)
[all …]
Dvector-reduce-add.ll7 …< %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw | FileCheck %s --check-prefix=AVX512
8 …ple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512vl | FileCheck %s --check-prefix=AVX512
29 ; AVX512-LABEL: test_v2i64:
30 ; AVX512: # %bb.0:
31 ; AVX512-NEXT: vpshufd {{.*#+}} xmm1 = xmm0[2,3,2,3]
32 ; AVX512-NEXT: vpaddq %xmm1, %xmm0, %xmm0
33 ; AVX512-NEXT: vmovq %xmm0, %rax
34 ; AVX512-NEXT: retq
68 ; AVX512-LABEL: test_v4i64:
69 ; AVX512: # %bb.0:
[all …]
/external/llvm/test/CodeGen/X86/
Dvector-half-conversions.ll4 …wn -mattr=+avx512f,+f16c | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512
185 ; AVX512-LABEL: cvt_8i16_to_8f32:
186 ; AVX512: # BB#0:
187 ; AVX512-NEXT: vpextrq $1, %xmm0, %rdx
188 ; AVX512-NEXT: movq %rdx, %r8
189 ; AVX512-NEXT: movq %rdx, %r10
190 ; AVX512-NEXT: movswl %dx, %r9d
191 ; AVX512-NEXT: # kill: %EDX<def> %EDX<kill> %RDX<kill>
192 ; AVX512-NEXT: shrl $16, %edx
193 ; AVX512-NEXT: shrq $32, %r8
[all …]
Dfma_patterns.ll6 …mattr=+avx512dq,+avx512vl -fp-contract=fast | FileCheck %s --check-prefix=ALL --check-prefix=AVX512
23 ; AVX512-LABEL: test_f32_fmadd:
24 ; AVX512: # BB#0:
25 ; AVX512-NEXT: vfmadd213ss %xmm2, %xmm0, %xmm1
26 ; AVX512-NEXT: vmovaps %zmm1, %zmm0
27 ; AVX512-NEXT: retq
44 ; AVX512-LABEL: test_4f32_fmadd:
45 ; AVX512: # BB#0:
46 ; AVX512-NEXT: vfmadd213ps %xmm2, %xmm1, %xmm0
47 ; AVX512-NEXT: retq
[all …]
/external/llvm-project/llvm/test/Transforms/LoopVectorize/X86/
Dmasked_load_store.ll4 ; RUN: opt < %s -loop-vectorize -mcpu=knl -S | FileCheck %s -check-prefix=AVX512
206 ; AVX512-LABEL: @foo1(
207 ; AVX512-NEXT: iter.check:
208 ; AVX512-NEXT: [[A1:%.*]] = bitcast i32* [[A:%.*]] to i8*
209 ; AVX512-NEXT: [[TRIGGER3:%.*]] = bitcast i32* [[TRIGGER:%.*]] to i8*
210 ; AVX512-NEXT: [[B6:%.*]] = bitcast i32* [[B:%.*]] to i8*
211 ; AVX512-NEXT: br i1 false, label [[VEC_EPILOG_SCALAR_PH:%.*]], label [[VECTOR_MEMCHECK:%.*]]
212 ; AVX512: vector.memcheck:
213 ; AVX512-NEXT: [[SCEVGEP:%.*]] = getelementptr i32, i32* [[A]], i64 10000
214 ; AVX512-NEXT: [[SCEVGEP2:%.*]] = bitcast i32* [[SCEVGEP]] to i8*
[all …]

12345678910>>...17