/external/swiftshader/third_party/llvm-7.0/llvm/test/CodeGen/X86/ |
D | bitcast-and-setcc-128.ll | 2 …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 %xmm0, %xmm2 16 ; SSE2-SSSE3-NEXT: pmovmskb %xmm2, %eax 17 ; SSE2-SSSE3-NEXT: # kill: def $al killed $al killed $eax [all …]
|
D | bitcast-int-to-vector-bool-sext.ll | 2 …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: # kill: def $edi killed $edi def $rdi 17 ; SSE2-SSSE3-NEXT: movq %rdi, %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 [all …]
|
D | bitcast-int-to-vector-bool-zext.ll | 2 …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: # kill: def $edi killed $edi def $rdi 18 ; SSE2-SSSE3-NEXT: movq %rdi, %xmm0 19 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm1 = xmm0[0,1,0,1] 20 ; SSE2-SSSE3-NEXT: movdqa {{.*#+}} xmm0 = [1,2] 21 ; SSE2-SSSE3-NEXT: pand %xmm0, %xmm1 22 ; SSE2-SSSE3-NEXT: pcmpeqd %xmm0, %xmm1 [all …]
|
D | phaddsub.ll | 2 ; 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 …]
|
D | vector-trunc-packus.ll | 3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3 74 ; SSSE3-LABEL: trunc_packus_v4i64_v4i32: 75 ; SSSE3: # %bb.0: 76 ; SSSE3-NEXT: movdqa {{.*#+}} xmm8 = [4294967295,4294967295] 77 ; SSSE3-NEXT: movdqa {{.*#+}} xmm2 = [2147483648,0,2147483648,0] 78 ; SSSE3-NEXT: movdqa %xmm0, %xmm3 79 ; SSSE3-NEXT: pxor %xmm2, %xmm3 80 ; SSSE3-NEXT: movdqa {{.*#+}} xmm5 = [2147483647,2147483647] 81 ; SSSE3-NEXT: movdqa %xmm5, %xmm6 82 ; SSSE3-NEXT: pcmpgtd %xmm3, %xmm6 [all …]
|
D | vector-trunc-usat.ll | 3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3 50 ; SSSE3-LABEL: trunc_usat_v4i64_v4i32: 51 ; SSSE3: # %bb.0: 52 ; SSSE3-NEXT: movdqa {{.*#+}} xmm2 = [2147483648,2147483648,2147483648,2147483648] 53 ; SSSE3-NEXT: movdqa %xmm0, %xmm3 54 ; SSSE3-NEXT: pxor %xmm2, %xmm3 55 ; SSSE3-NEXT: movdqa {{.*#+}} xmm4 = [9223372039002259455,9223372039002259455] 56 ; SSSE3-NEXT: movdqa %xmm4, %xmm5 57 ; SSSE3-NEXT: pcmpgtd %xmm3, %xmm5 58 ; SSSE3-NEXT: pshufd {{.*#+}} xmm6 = xmm5[0,0,2,2] [all …]
|
D | bitcast-and-setcc-256.ll | 2 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+SSE2 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSE2 3 …llc < %s -mtriple=x86_64-unknown-unknown -mattr=+SSSE3 | FileCheck %s --check-prefixes=SSE2-SSSE3,… 10 ; SSE2-SSSE3-LABEL: v4i64: 11 ; SSE2-SSSE3: # %bb.0: 12 ; SSE2-SSSE3-NEXT: movdqa {{.*#+}} xmm8 = [2147483648,0,2147483648,0] 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: pshufd {{.*#+}} xmm10 = xmm9[0,0,2,2] [all …]
|
D | vector-trunc-ssat.ll | 3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3 79 ; SSSE3-LABEL: trunc_ssat_v4i64_v4i32: 80 ; SSSE3: # %bb.0: 81 ; SSSE3-NEXT: movdqa {{.*#+}} xmm8 = [2147483647,2147483647] 82 ; SSSE3-NEXT: movdqa {{.*#+}} xmm2 = [2147483648,0,2147483648,0] 83 ; SSSE3-NEXT: movdqa %xmm0, %xmm3 84 ; SSSE3-NEXT: pxor %xmm2, %xmm3 85 ; SSSE3-NEXT: movdqa {{.*#+}} xmm5 = [4294967295,4294967295] 86 ; SSSE3-NEXT: movdqa %xmm5, %xmm6 87 ; SSSE3-NEXT: pcmpgtd %xmm3, %xmm6 [all …]
|
D | bitcast-setcc-128.ll | 2 …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 …]
|
D | bitcast-setcc-256.ll | 2 …c < %s -mtriple=x86_64-unknown-unknown -mattr=+SSE2 | FileCheck %s --check-prefixes=SSE2-SSSE3,SSE2 3 …llc < %s -mtriple=x86_64-unknown-unknown -mattr=+SSSE3 | FileCheck %s --check-prefixes=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 …]
|
D | vector-blend.ll | 3 …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 …]
|
D | bitcast-int-to-vector-bool.ll | 2 …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: # kill: def $edi killed $edi def $rdi 12 ; SSE2-SSSE3-NEXT: movq %rdi, %xmm0 13 ; SSE2-SSSE3-NEXT: pshufd {{.*#+}} xmm1 = xmm0[0,1,0,1] 14 ; SSE2-SSSE3-NEXT: movdqa {{.*#+}} xmm0 = [1,2] 15 ; SSE2-SSSE3-NEXT: pand %xmm0, %xmm1 16 ; SSE2-SSSE3-NEXT: pcmpeqd %xmm0, %xmm1 [all …]
|
D | haddsub-shuf.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSSE3 10 ; SSSE3-LABEL: hadd_v4f32: 11 ; SSSE3: # %bb.0: 12 ; SSSE3-NEXT: haddps %xmm0, %xmm0 13 ; SSSE3-NEXT: retq 27 ; SSSE3-LABEL: hadd_v8f32a: 28 ; SSSE3: # %bb.0: 29 ; SSSE3-NEXT: movaps %xmm0, %xmm2 30 ; SSSE3-NEXT: haddps %xmm1, %xmm2 31 ; SSSE3-NEXT: movddup {{.*#+}} xmm0 = xmm2[0,0] [all …]
|
D | vector-sext.ll | 3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3 20 ; SSSE3-LABEL: sext_16i8_to_8i16: 21 ; SSSE3: # %bb.0: # %entry 22 ; SSSE3-NEXT: punpcklbw {{.*#+}} xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7] 23 ; SSSE3-NEXT: psraw $8, %xmm0 24 ; SSSE3-NEXT: retq 56 ; SSSE3-LABEL: sext_16i8_to_16i16: 57 ; SSSE3: # %bb.0: # %entry 58 ; SSSE3-NEXT: punpcklbw {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1],xmm2[2],xmm0[2],xmm2[3],… 59 ; SSSE3-NEXT: psraw $8, %xmm2 [all …]
|
D | vector-shuffle-variable-128.ll | 3 …own-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=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: movaps %xmm0, -{{[0-9]+}}(%rsp) 97 ; SSSE3-NEXT: movss {{.*#+}} xmm0 = mem[0],zero,zero,zero [all …]
|
D | insertelement-zero.ll | 4 …own-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSSE3 23 ; SSSE3-LABEL: insert_v2f64_z1: 24 ; SSSE3: # %bb.0: 25 ; SSSE3-NEXT: xorpd %xmm1, %xmm1 26 ; SSSE3-NEXT: movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1] 27 ; SSSE3-NEXT: retq 59 ; SSSE3-LABEL: insert_v4f64_0zz3: 60 ; SSSE3: # %bb.0: 61 ; SSSE3-NEXT: movq {{.*#+}} xmm0 = xmm0[0],zero 62 ; SSSE3-NEXT: xorpd %xmm2, %xmm2 [all …]
|
D | psubus.ll | 3 …mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=SSE --check-prefix=SSSE3 126 ; SSSE3-LABEL: test6: 127 ; SSSE3: # %bb.0: # %vector.ph 128 ; SSSE3-NEXT: movd %edi, %xmm1 129 ; SSSE3-NEXT: pxor %xmm2, %xmm2 130 ; SSSE3-NEXT: pshufb %xmm2, %xmm1 131 ; SSSE3-NEXT: psubusb %xmm1, %xmm0 132 ; SSSE3-NEXT: retq 418 ; SSSE3-LABEL: test12: 419 ; SSSE3: # %bb.0: # %vector.ph [all …]
|
D | var-permute-128.ll | 3 …N: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+ssse3 | FileCheck %s --check-prefixes=SSE,SSSE3 28 ; SSSE3-LABEL: var_shuffle_v2i64: 29 ; SSSE3: # %bb.0: 30 ; SSSE3-NEXT: movq %xmm1, %rax 31 ; SSSE3-NEXT: andl $1, %eax 32 ; SSSE3-NEXT: pshufd {{.*#+}} xmm1 = xmm1[2,3,0,1] 33 ; SSSE3-NEXT: movq %xmm1, %rcx 34 ; SSSE3-NEXT: andl $1, %ecx 35 ; SSSE3-NEXT: movaps %xmm0, -{{[0-9]+}}(%rsp) 36 ; SSSE3-NEXT: movsd {{.*#+}} xmm0 = mem[0],zero [all …]
|
D | insertelement-ones.ll | 4 …own-unknown -mattr=+ssse3 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSSE3 22 ; SSSE3-LABEL: insert_v2i64_x1: 23 ; SSSE3: # %bb.0: 24 ; SSSE3-NEXT: movlpd {{.*#+}} xmm0 = mem[0],xmm0[1] 25 ; SSSE3-NEXT: retq 65 ; SSSE3-LABEL: insert_v4i64_01x3: 66 ; SSSE3: # %bb.0: 67 ; SSSE3-NEXT: movlpd {{.*#+}} xmm1 = mem[0],xmm1[1] 68 ; SSSE3-NEXT: retq 115 ; SSSE3-LABEL: insert_v4i32_01x3: [all …]
|
/external/llvm/test/CodeGen/X86/ |
D | vector-blend.ll | 3 …< %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 …]
|
D | phaddsub.ll | 2 ; 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 …]
|
D | vector-sext.ll | 3 …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 …]
|
D | insertelement-zero.ll | 4 …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 …]
|
D | vector-shuffle-variable-128.ll | 3 …mcpu=x86-64 -mattr=+ssse3 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSSE3 77 ; SSSE3-LABEL: var_shuffle_v4f32_v4f32_xxxx_i32: 78 ; SSSE3: # BB#0: 79 ; SSSE3-NEXT: movslq %edi, %rax 80 ; SSSE3-NEXT: movslq %esi, %rsi 81 ; SSSE3-NEXT: movslq %edx, %rdx 82 ; SSSE3-NEXT: movaps %xmm0, -{{[0-9]+}}(%rsp) 83 ; SSSE3-NEXT: movslq %ecx, %rcx 84 ; SSSE3-NEXT: movss {{.*#+}} xmm0 = mem[0],zero,zero,zero 85 ; SSSE3-NEXT: movss {{.*#+}} xmm1 = mem[0],zero,zero,zero [all …]
|
D | vector-shuffle-128-v4.ll | 4 …mcpu=x86-64 -mattr=+ssse3 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSSE3 259 ; SSSE3-LABEL: shuffle_v4f32_0022: 260 ; SSSE3: # BB#0: 261 ; SSSE3-NEXT: movsldup {{.*#+}} xmm0 = xmm0[0,0,2,2] 262 ; SSSE3-NEXT: retq 287 ; SSSE3-LABEL: shuffle_v4f32_1133: 288 ; SSSE3: # BB#0: 289 ; SSSE3-NEXT: movshdup {{.*#+}} xmm0 = xmm0[1,1,3,3] 290 ; SSSE3-NEXT: retq 347 ; SSSE3-LABEL: shuffle_v4i32_0124: [all …]
|