Home
last modified time | relevance | path

Searched refs:SSSE3 (Results 1 – 25 of 232) sorted by relevance

12345678910

/external/llvm-project/llvm/test/CodeGen/X86/
Dbitcast-int-to-vector-bool-sext.ll2 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSE2
3 …< %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSSE3
14 ; SSE2-SSSE3-LABEL: ext_i2_2i64:
15 ; SSE2-SSSE3: # %bb.0:
16 ; SSE2-SSSE3-NEXT: movd %edi, %xmm0
17 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm1 = xmm0[0,1,0,1]
18 ; SSE2-SSSE3-NEXT: movdqa {{.*#+}} xmm0 = [1,2]
19 ; SSE2-SSSE3-NEXT: pand %xmm0, %xmm1
20 ; SSE2-SSSE3-NEXT: pcmpeqd %xmm0, %xmm1
21 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm0 = xmm1[1,0,3,2]
[all …]
Dbitcast-vector-bool.ll2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE2-SSSE3
3 …UN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE2-SSSE3
13 ; SSE2-SSSE3-LABEL: bitcast_v2i64_to_v2i1:
14 ; SSE2-SSSE3: # %bb.0:
15 ; SSE2-SSSE3-NEXT: movmskpd %xmm0, %ecx
16 ; SSE2-SSSE3-NEXT: movl %ecx, %eax
17 ; SSE2-SSSE3-NEXT: shrb %al
18 ; SSE2-SSSE3-NEXT: addb %cl, %al
19 ; SSE2-SSSE3-NEXT: retq
48 ; SSE2-SSSE3-LABEL: bitcast_v4i32_to_v2i2:
[all …]
Dbitcast-int-to-vector-bool-zext.ll2 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSE2
3 …< %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSSE3
15 ; SSE2-SSSE3-LABEL: ext_i2_2i64:
16 ; SSE2-SSSE3: # %bb.0:
17 ; SSE2-SSSE3-NEXT: movd %edi, %xmm0
18 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm1 = xmm0[0,1,0,1]
19 ; SSE2-SSSE3-NEXT: movdqa {{.*#+}} xmm0 = [1,2]
20 ; SSE2-SSSE3-NEXT: pand %xmm0, %xmm1
21 ; SSE2-SSSE3-NEXT: pcmpeqd %xmm0, %xmm1
22 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm0 = xmm1[1,0,3,2]
[all …]
Dbitcast-and-setcc-256.ll2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+SSE2 | FileCheck %s --check-prefix=SSE2-SSSE3
3 …UN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+SSSE3 | FileCheck %s --check-prefix=SSE2-SSSE3
10 ; SSE2-SSSE3-LABEL: v4i64:
11 ; SSE2-SSSE3: # %bb.0:
12 ; SSE2-SSSE3-NEXT: movdqa {{.*#+}} xmm8 = [2147483648,2147483648]
13 ; SSE2-SSSE3-NEXT: pxor %xmm8, %xmm3
14 ; SSE2-SSSE3-NEXT: pxor %xmm8, %xmm1
15 ; SSE2-SSSE3-NEXT: movdqa %xmm1, %xmm9
16 ; SSE2-SSSE3-NEXT: pcmpgtd %xmm3, %xmm9
17 ; SSE2-SSSE3-NEXT: pcmpeqd %xmm3, %xmm1
[all …]
Dvector-trunc-usat.ll3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSSE3
38 ; SSSE3-LABEL: trunc_usat_v2i64_v2i32:
39 ; SSSE3: # %bb.0:
40 ; SSSE3-NEXT: movdqa {{.*#+}} xmm1 = [9223372039002259456,9223372039002259456]
41 ; SSSE3-NEXT: pxor %xmm0, %xmm1
42 ; SSSE3-NEXT: movdqa {{.*#+}} xmm2 = [9223372039002259455,9223372039002259455]
43 ; SSSE3-NEXT: movdqa %xmm2, %xmm3
44 ; SSSE3-NEXT: pcmpgtd %xmm1, %xmm3
45 ; SSSE3-NEXT: pshufd {{.*#+}} xmm4 = xmm3[0,0,2,2]
46 ; SSSE3-NEXT: pcmpeqd %xmm2, %xmm1
[all …]
Dphaddsub.ll2 …%s -mtriple=x86_64-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSSE3,SSSE3-SLOW
3 …%s -mtriple=x86_64-unknown -mattr=+ssse3,fast-hops | FileCheck %s --check-prefixes=SSSE3,SSSE3-FAST
11 ; SSSE3-LABEL: phaddw1:
12 ; SSSE3: # %bb.0:
13 ; SSSE3-NEXT: phaddw %xmm1, %xmm0
14 ; SSSE3-NEXT: retq
27 ; SSSE3-LABEL: phaddw2:
28 ; SSSE3: # %bb.0:
29 ; SSSE3-NEXT: phaddw %xmm1, %xmm0
30 ; SSSE3-NEXT: retq
[all …]
Dvector-trunc-packus.ll3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3
50 ; SSSE3-LABEL: trunc_packus_v2i64_v2i32:
51 ; SSSE3: # %bb.0:
52 ; SSSE3-NEXT: movdqa {{.*#+}} xmm1 = [2147483648,2147483648]
53 ; SSSE3-NEXT: movdqa %xmm0, %xmm2
54 ; SSSE3-NEXT: pxor %xmm1, %xmm2
55 ; SSSE3-NEXT: movdqa {{.*#+}} xmm3 = [2147483647,2147483647]
56 ; SSSE3-NEXT: movdqa %xmm3, %xmm4
57 ; SSSE3-NEXT: pcmpgtd %xmm2, %xmm4
58 ; SSSE3-NEXT: pshufd {{.*#+}} xmm5 = xmm4[0,0,2,2]
[all …]
Dvector-trunc-ssat.ll3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3
52 ; SSSE3-LABEL: trunc_ssat_v2i64_v2i32:
53 ; SSSE3: # %bb.0:
54 ; SSSE3-NEXT: movdqa {{.*#+}} xmm1 = [2147483648,2147483648]
55 ; SSSE3-NEXT: movdqa %xmm0, %xmm2
56 ; SSSE3-NEXT: pxor %xmm1, %xmm2
57 ; SSSE3-NEXT: movdqa {{.*#+}} xmm3 = [4294967295,4294967295]
58 ; SSSE3-NEXT: movdqa %xmm3, %xmm4
59 ; SSSE3-NEXT: pcmpgtd %xmm2, %xmm4
60 ; SSSE3-NEXT: pshufd {{.*#+}} xmm5 = xmm4[0,0,2,2]
[all …]
Dbitcast-setcc-256.ll2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+SSE2 | FileCheck %s --check-prefix=SSE2-SSSE3
3 …UN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+SSSE3 | FileCheck %s --check-prefix=SSE2-SSSE3
10 ; SSE2-SSSE3-LABEL: v16i16:
11 ; SSE2-SSSE3: # %bb.0:
12 ; SSE2-SSSE3-NEXT: pcmpgtw %xmm3, %xmm1
13 ; SSE2-SSSE3-NEXT: pcmpgtw %xmm2, %xmm0
14 ; SSE2-SSSE3-NEXT: packsswb %xmm1, %xmm0
15 ; SSE2-SSSE3-NEXT: pmovmskb %xmm0, %eax
16 ; SSE2-SSSE3-NEXT: # kill: def $ax killed $ax killed $eax
17 ; SSE2-SSSE3-NEXT: retq
[all …]
Dhaddsub-3.ll3 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSSE3
4 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3,fast-hops | FileCheck %s --check-prefix=SSSE3
20 ; SSSE3-SLOW-LABEL: pr26491:
21 ; SSSE3-SLOW: # %bb.0:
22 ; SSSE3-SLOW-NEXT: movshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
23 ; SSSE3-SLOW-NEXT: addps %xmm0, %xmm1
24 ; SSSE3-SLOW-NEXT: movaps %xmm1, %xmm0
25 ; SSSE3-SLOW-NEXT: unpckhpd {{.*#+}} xmm0 = xmm0[1],xmm1[1]
26 ; SSSE3-SLOW-NEXT: addss %xmm1, %xmm0
27 ; SSSE3-SLOW-NEXT: retq
[all …]
Dbitcast-int-to-vector-bool.ll2 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSE2
3 …< %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSSE3
9 ; SSE2-SSSE3-LABEL: bitcast_i2_2i1:
10 ; SSE2-SSSE3: # %bb.0:
11 ; SSE2-SSSE3-NEXT: movd %edi, %xmm0
12 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm1 = xmm0[0,1,0,1]
13 ; SSE2-SSSE3-NEXT: movdqa {{.*#+}} xmm0 = [1,2]
14 ; SSE2-SSSE3-NEXT: pand %xmm0, %xmm1
15 ; SSE2-SSSE3-NEXT: pcmpeqd %xmm0, %xmm1
16 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm0 = xmm1[1,0,3,2]
[all …]
Dhorizontal-reduce-add.ll3 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSSE3
4 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3,fast-hops | FileCheck %s --check-prefix=SSSE3
21 ; SSSE3-SLOW-LABEL: PR37890_v4i32:
22 ; SSSE3-SLOW: # %bb.0:
23 ; SSSE3-SLOW-NEXT: pshufd {{.*#+}} xmm1 = xmm0[2,3,2,3]
24 ; SSSE3-SLOW-NEXT: paddd %xmm0, %xmm1
25 ; SSSE3-SLOW-NEXT: pshufd {{.*#+}} xmm0 = xmm1[1,1,1,1]
26 ; SSSE3-SLOW-NEXT: paddd %xmm1, %xmm0
27 ; SSSE3-SLOW-NEXT: movd %xmm0, %eax
28 ; SSSE3-SLOW-NEXT: retq
[all …]
Dvec_smulo.ll3 …N: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE,SSSE3
82 ; SSSE3-LABEL: smulo_v2i32:
83 ; SSSE3: # %bb.0:
84 ; SSSE3-NEXT: pxor %xmm2, %xmm2
85 ; SSSE3-NEXT: pxor %xmm3, %xmm3
86 ; SSSE3-NEXT: pcmpgtd %xmm1, %xmm3
87 ; SSSE3-NEXT: pand %xmm0, %xmm3
88 ; SSSE3-NEXT: pcmpgtd %xmm0, %xmm2
89 ; SSSE3-NEXT: pand %xmm1, %xmm2
90 ; SSSE3-NEXT: paddd %xmm3, %xmm2
[all …]
Dhorizontal-reduce-fadd.ll3 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSSE3
4 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3,fast-hops | FileCheck %s --check-prefix=SSSE3
22 ; SSSE3-SLOW-LABEL: PR37890_v4f32:
23 ; SSSE3-SLOW: # %bb.0:
24 ; SSSE3-SLOW-NEXT: movaps %xmm0, %xmm1
25 ; SSSE3-SLOW-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
26 ; SSSE3-SLOW-NEXT: addps %xmm0, %xmm1
27 ; SSSE3-SLOW-NEXT: movshdup {{.*#+}} xmm0 = xmm1[1,1,3,3]
28 ; SSSE3-SLOW-NEXT: addss %xmm0, %xmm1
29 ; SSSE3-SLOW-NEXT: movaps %xmm1, %xmm0
[all …]
Dbitcast-and-setcc-128.ll2 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSE2
3 …< %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSSE3
10 ; SSE2-SSSE3-LABEL: v8i16:
11 ; SSE2-SSSE3: # %bb.0:
12 ; SSE2-SSSE3-NEXT: pcmpgtw %xmm1, %xmm0
13 ; SSE2-SSSE3-NEXT: pcmpgtw %xmm3, %xmm2
14 ; SSE2-SSSE3-NEXT: pand %xmm0, %xmm2
15 ; SSE2-SSSE3-NEXT: packsswb %xmm2, %xmm2
16 ; SSE2-SSSE3-NEXT: pmovmskb %xmm2, %eax
17 ; SSE2-SSSE3-NEXT: # kill: def $al killed $al killed $eax
[all …]
Dvector-shuffle-variable-128.ll3 …N: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE,SSSE3
89 ; SSSE3-LABEL: var_shuffle_v4f32_v4f32_xxxx_i32:
90 ; SSSE3: # %bb.0:
91 ; SSSE3-NEXT: # kill: def $ecx killed $ecx def $rcx
92 ; SSSE3-NEXT: # kill: def $edx killed $edx def $rdx
93 ; SSSE3-NEXT: # kill: def $esi killed $esi def $rsi
94 ; SSSE3-NEXT: # kill: def $edi killed $edi def $rdi
95 ; SSSE3-NEXT: andl $3, %edi
96 ; SSSE3-NEXT: andl $3, %esi
97 ; SSSE3-NEXT: andl $3, %edx
[all …]
Dvector-blend.ll3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3
17 ; SSSE3-LABEL: vsel_float:
18 ; SSSE3: # %bb.0: # %entry
19 ; SSSE3-NEXT: shufps {{.*#+}} xmm0 = xmm0[0,2],xmm1[1,3]
20 ; SSSE3-NEXT: shufps {{.*#+}} xmm0 = xmm0[0,2,1,3]
21 ; SSSE3-NEXT: retq
44 ; SSSE3-LABEL: vsel_float2:
45 ; SSSE3: # %bb.0: # %entry
46 ; SSSE3-NEXT: movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]
47 ; SSSE3-NEXT: movaps %xmm1, %xmm0
[all …]
Dbitcast-setcc-128.ll2 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSE2
3 …< %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSSE3
10 ; SSE2-SSSE3-LABEL: v8i16:
11 ; SSE2-SSSE3: # %bb.0:
12 ; SSE2-SSSE3-NEXT: pcmpgtw %xmm1, %xmm0
13 ; SSE2-SSSE3-NEXT: packsswb %xmm0, %xmm0
14 ; SSE2-SSSE3-NEXT: pmovmskb %xmm0, %eax
15 ; SSE2-SSSE3-NEXT: # kill: def $al killed $al killed $eax
16 ; SSE2-SSSE3-NEXT: retq
48 ; SSE2-SSSE3-LABEL: v4i32:
[all …]
Dssub_sat_vec.ll3 …N: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE,SSSE3
281 ; SSSE3-LABEL: v2i8:
282 ; SSSE3: # %bb.0:
283 ; SSSE3-NEXT: movzwl (%rdi), %eax
284 ; SSSE3-NEXT: movd %eax, %xmm0
285 ; SSSE3-NEXT: movzwl (%rsi), %eax
286 ; SSSE3-NEXT: movd %eax, %xmm1
287 ; SSSE3-NEXT: psubsb %xmm1, %xmm0
288 ; SSSE3-NEXT: movd %xmm0, %eax
289 ; SSSE3-NEXT: movw %ax, (%rdx)
[all …]
Dsadd_sat_vec.ll3 …N: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE,SSSE3
281 ; SSSE3-LABEL: v2i8:
282 ; SSSE3: # %bb.0:
283 ; SSSE3-NEXT: movzwl (%rdi), %eax
284 ; SSSE3-NEXT: movd %eax, %xmm0
285 ; SSSE3-NEXT: movzwl (%rsi), %eax
286 ; SSSE3-NEXT: movd %eax, %xmm1
287 ; SSSE3-NEXT: paddsb %xmm0, %xmm1
288 ; SSSE3-NEXT: movd %xmm1, %eax
289 ; SSSE3-NEXT: movw %ax, (%rdx)
[all …]
Dvec_umulo.ll3 …N: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE,SSSE3
78 ; SSSE3-LABEL: umulo_v2i32:
79 ; SSSE3: # %bb.0:
80 ; SSSE3-NEXT: pshufd {{.*#+}} xmm2 = xmm0[1,1,3,3]
81 ; SSSE3-NEXT: pmuludq %xmm1, %xmm0
82 ; SSSE3-NEXT: pshufd {{.*#+}} xmm3 = xmm0[1,3,2,3]
83 ; SSSE3-NEXT: pshufd {{.*#+}} xmm4 = xmm1[1,1,3,3]
84 ; SSSE3-NEXT: pmuludq %xmm2, %xmm4
85 ; SSSE3-NEXT: pshufd {{.*#+}} xmm1 = xmm4[1,3,2,3]
86 ; SSSE3-NEXT: punpckldq {{.*#+}} xmm3 = xmm3[0],xmm1[0],xmm3[1],xmm1[1]
[all …]
/external/llvm/test/CodeGen/X86/
Dvector-blend.ll3 …< %s -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -mattr=+ssse3 | FileCheck %s --check-prefix=SSSE3
17 ; SSSE3-LABEL: vsel_float:
18 ; SSSE3: # BB#0: # %entry
19 ; SSSE3-NEXT: shufps {{.*#+}} xmm0 = xmm0[0,2],xmm1[1,3]
20 ; SSSE3-NEXT: shufps {{.*#+}} xmm0 = xmm0[0,2,1,3]
21 ; SSSE3-NEXT: retq
44 ; SSSE3-LABEL: vsel_float2:
45 ; SSSE3: # BB#0: # %entry
46 ; SSSE3-NEXT: movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]
47 ; SSSE3-NEXT: movaps %xmm1, %xmm0
[all …]
Dphaddsub.ll2 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSSE3
6 ; SSSE3-LABEL: phaddw1:
7 ; SSSE3: # BB#0:
8 ; SSSE3-NEXT: phaddw %xmm1, %xmm0
9 ; SSSE3-NEXT: retq
22 ; SSSE3-LABEL: phaddw2:
23 ; SSSE3: # BB#0:
24 ; SSSE3-NEXT: phaddw %xmm1, %xmm0
25 ; SSSE3-NEXT: retq
38 ; SSSE3-LABEL: phaddd1:
[all …]
Dvector-sext.ll3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3
19 ; SSSE3-LABEL: sext_16i8_to_8i16:
20 ; SSSE3: # BB#0: # %entry
21 ; SSSE3-NEXT: punpcklbw {{.*#+}} xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
22 ; SSSE3-NEXT: psraw $8, %xmm0
23 ; SSSE3-NEXT: retq
55 ; SSSE3-LABEL: sext_16i8_to_16i16:
56 ; SSSE3: # BB#0: # %entry
57 ; SSSE3-NEXT: punpcklbw {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1],xmm2[2],xmm0[2],xmm2[3],…
58 ; SSSE3-NEXT: psraw $8, %xmm2
[all …]
Dinsertelement-zero.ll4 …mcpu=x86-64 -mattr=+ssse3 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSSE3
25 ; SSSE3-LABEL: insert_v2f64_z1:
26 ; SSSE3: # BB#0:
27 ; SSSE3-NEXT: xorpd %xmm1, %xmm1
28 ; SSSE3-NEXT: movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]
29 ; SSSE3-NEXT: retq
61 ; SSSE3-LABEL: insert_v4f64_0zz3:
62 ; SSSE3: # BB#0:
63 ; SSSE3-NEXT: xorpd %xmm2, %xmm2
64 ; SSSE3-NEXT: unpcklpd {{.*#+}} xmm0 = xmm0[0],xmm2[0]
[all …]

12345678910