/external/llvm/test/Analysis/CostModel/X86/ |
D | testshiftashr.ll | 1 ; RUN: llc -mtriple=x86_64-apple-darwin -mcpu=core2 < %s | FileCheck --check-prefix=SSE2-CODEGEN %s 2 …triple=x86_64-apple-darwin -mcpu=core2 -cost-model -analyze < %s | FileCheck --check-prefix=SSE2 %s 7 ; SSE2: shift2i16 8 ; SSE2: cost of 12 {{.*}} ashr 9 ; SSE2-CODEGEN: shift2i16 10 ; SSE2-CODEGEN: psrlq 19 ; SSE2: shift4i16 20 ; SSE2: cost of 16 {{.*}} ashr 21 ; SSE2-CODEGEN: shift4i16 22 ; SSE2-CODEGEN: psrad [all …]
|
D | testshiftlshr.ll | 1 ; RUN: llc -mtriple=x86_64-apple-darwin -mcpu=core2 < %s | FileCheck --check-prefix=SSE2-CODEGEN %s 2 …triple=x86_64-apple-darwin -mcpu=core2 -cost-model -analyze < %s | FileCheck --check-prefix=SSE2 %s 7 ; SSE2: shift2i16 8 ; SSE2: cost of 4 {{.*}} lshr 9 ; SSE2-CODEGEN: shift2i16 10 ; SSE2-CODEGEN: psrlq 19 ; SSE2: shift4i16 20 ; SSE2: cost of 16 {{.*}} lshr 21 ; SSE2-CODEGEN: shift4i16 22 ; SSE2-CODEGEN: psrld [all …]
|
D | testshiftshl.ll | 1 ; RUN: llc -mtriple=x86_64-apple-darwin -mcpu=core2 < %s | FileCheck --check-prefix=SSE2-CODEGEN %s 2 …triple=x86_64-apple-darwin -mcpu=core2 -cost-model -analyze < %s | FileCheck --check-prefix=SSE2 %s 7 ; SSE2: shift2i16 8 ; SSE2: cost of 4 {{.*}} shl 9 ; SSE2-CODEGEN: shift2i16 10 ; SSE2-CODEGEN: psllq 19 ; SSE2: shift4i16 20 ; SSE2: cost of 10 {{.*}} shl 21 ; SSE2-CODEGEN: shift4i16 22 ; SSE2-CODEGEN: pmuludq [all …]
|
D | sse-itoi.ll | 1 …riple=x86_64-apple-darwin -mattr=+sse2 -cost-model -analyze < %s | FileCheck --check-prefix=SSE2 %s 5 ; SSE2: zext_v4i8_to_v4i64 6 ; SSE2: cost of 4 {{.*}} zext 18 ; SSE2: sext_v4i8_to_v4i64 19 ; SSE2: cost of 8 {{.*}} sext 31 ; SSE2: zext_v4i16_to_v4i64 32 ; SSE2: cost of 3 {{.*}} zext 44 ; SSE2: sext_v4i16_to_v4i64 45 ; SSE2: cost of 10 {{.*}} sext 58 ; SSE2: zext_v4i32_to_v4i64 [all …]
|
D | sitofp.ll | 1 …darwin -mattr=+sse2 -cost-model -analyze < %s | FileCheck --check-prefix=SSE --check-prefix=SSE2 %s 7 ; SSE2-LABEL: sitofpv2i8v2double 8 ; SSE2: cost of 20 {{.*}} sitofp 23 ; SSE2-LABEL: sitofpv4i8v4double 24 ; SSE2: cost of 40 {{.*}} sitofp 39 ; SSE2-LABEL: sitofpv8i8v8double 40 ; SSE2: cost of 80 {{.*}} sitofp 55 ; SSE2-LABEL: sitofpv16i8v16double 56 ; SSE2: cost of 160 {{.*}} sitofp 71 ; SSE2-LABEL: sitofpv32i8v32double [all …]
|
/external/llvm/test/CodeGen/X86/ |
D | vselect-minmax.ll | 2 … -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE --check-prefix=SSE2 10 ; SSE2-LABEL: test1: 11 ; SSE2: # BB#0: # %entry 12 ; SSE2-NEXT: movdqa %xmm1, %xmm2 13 ; SSE2-NEXT: pcmpgtb %xmm0, %xmm2 14 ; SSE2-NEXT: pand %xmm2, %xmm0 15 ; SSE2-NEXT: pandn %xmm1, %xmm2 16 ; SSE2-NEXT: por %xmm2, %xmm0 17 ; SSE2-NEXT: retq 35 ; SSE2-LABEL: test2: [all …]
|
D | widen_conv-4.ll | 2 …c < %s -mtriple=i686-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X86 --check-prefix=X86-SSE2 4 …< %s -mtriple=x86_64-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X64 --check-prefix=X64-SSE2 10 ; X86-SSE2-LABEL: convert_v7i16_v7f32: 11 ; X86-SSE2: # BB#0: # %entry 12 ; X86-SSE2-NEXT: movl {{[0-9]+}}(%esp), %eax 13 ; X86-SSE2-NEXT: pxor %xmm1, %xmm1 14 ; X86-SSE2-NEXT: movdqa %xmm0, %xmm2 15 ; X86-SSE2-NEXT: punpckhwd {{.*#+}} xmm2 = xmm2[4],xmm1[4],xmm2[5],xmm1[5],xmm2[6],xmm1[6],xmm2[… 16 ; X86-SSE2-NEXT: cvtdq2ps %xmm2, %xmm2 17 ; X86-SSE2-NEXT: punpcklwd {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[… [all …]
|
D | widen_conv-3.ll | 2 …c < %s -mtriple=i686-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X86 --check-prefix=X86-SSE2 4 …< %s -mtriple=x86_64-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X64 --check-prefix=X64-SSE2 10 ; X86-SSE2-LABEL: convert_v2i16_to_v2f32: 11 ; X86-SSE2: # BB#0: # %entry 12 ; X86-SSE2-NEXT: movl {{[0-9]+}}(%esp), %eax 13 ; X86-SSE2-NEXT: psllq $48, %xmm0 14 ; X86-SSE2-NEXT: psrad $16, %xmm0 15 ; X86-SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,3,2,3] 16 ; X86-SSE2-NEXT: cvtdq2ps %xmm0, %xmm0 17 ; X86-SSE2-NEXT: movss %xmm0, (%eax) [all …]
|
D | vector-bitreverse.ll | 2 …known-unknown -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSE2 1022 ; SSE2-LABEL: test_bitreverse_v16i8: 1023 ; SSE2: # BB#0: 1024 ; SSE2-NEXT: movdqa %xmm0, %xmm2 1025 ; SSE2-NEXT: psrlw $7, %xmm2 1026 ; SSE2-NEXT: movdqa {{.*#+}} xmm1 = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] 1027 ; SSE2-NEXT: pand %xmm1, %xmm1 1028 ; SSE2-NEXT: pand %xmm2, %xmm1 1029 ; SSE2-NEXT: movdqa %xmm0, %xmm2 1030 ; SSE2-NEXT: psllw $7, %xmm2 [all …]
|
D | vector-idiv-sdiv-128.ll | 2 … -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE --check-prefix=SSE2 12 ; SSE2-LABEL: test_div7_2i64: 13 ; SSE2: # BB#0: 14 ; SSE2-NEXT: movd %xmm0, %rax 15 ; SSE2-NEXT: movabsq $5270498306774157605, %rcx # imm = 0x4924924924924925 16 ; SSE2-NEXT: imulq %rcx 17 ; SSE2-NEXT: movq %rdx, %rax 18 ; SSE2-NEXT: shrq $63, %rax 19 ; SSE2-NEXT: sarq %rdx 20 ; SSE2-NEXT: addq %rax, %rdx [all …]
|
D | vec_minmax_uint.ll | 2 …known-unknown -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSE2 15 ; SSE2-LABEL: max_gt_v2i64: 16 ; SSE2: # BB#0: 17 ; SSE2-NEXT: movdqa {{.*#+}} xmm2 = [2147483648,2147483648,2147483648,2147483648] 18 ; SSE2-NEXT: movdqa %xmm1, %xmm3 19 ; SSE2-NEXT: pxor %xmm2, %xmm3 20 ; SSE2-NEXT: pxor %xmm0, %xmm2 21 ; SSE2-NEXT: movdqa %xmm2, %xmm4 22 ; SSE2-NEXT: pcmpgtd %xmm3, %xmm4 23 ; SSE2-NEXT: pshufd {{.*#+}} xmm5 = xmm4[0,0,2,2] [all …]
|
D | sad.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE2 11 ; SSE2-LABEL: sad_16i8: 12 ; SSE2: # BB#0: # %entry 13 ; SSE2-NEXT: pxor %xmm0, %xmm0 14 ; SSE2-NEXT: movq $-1024, %rax # imm = 0xFC00 15 ; SSE2-NEXT: pxor %xmm1, %xmm1 16 ; SSE2-NEXT: .p2align 4, 0x90 17 ; SSE2-NEXT: .LBB0_1: # %vector.body 18 ; SSE2-NEXT: # =>This Inner Loop Header: Depth=1 19 ; SSE2-NEXT: movdqu a+1024(%rax), %xmm2 [all …]
|
D | vector-compare-results.ll | 2 … -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE --check-prefix=SSE2 43 ; SSE2-LABEL: test_cmp_v2i64: 44 ; SSE2: # BB#0: 45 ; SSE2-NEXT: movdqa {{.*#+}} xmm2 = [2147483648,0,2147483648,0] 46 ; SSE2-NEXT: pxor %xmm2, %xmm1 47 ; SSE2-NEXT: pxor %xmm2, %xmm0 48 ; SSE2-NEXT: movdqa %xmm0, %xmm2 49 ; SSE2-NEXT: pcmpgtd %xmm1, %xmm2 50 ; SSE2-NEXT: pshufd {{.*#+}} xmm3 = xmm2[0,0,2,2] 51 ; SSE2-NEXT: pcmpeqd %xmm1, %xmm0 [all …]
|
D | lower-vec-shift-2.ll | 2 ; RUN: llc -mtriple=x86_64-unknown-unknown -mattr=+sse2 < %s | FileCheck %s --check-prefix=SSE2 6 ; SSE2-LABEL: test1: 7 ; SSE2: # BB#0: # %entry 8 ; SSE2-NEXT: movd %xmm1, %eax 9 ; SSE2-NEXT: movzwl %ax, %eax 10 ; SSE2-NEXT: movd %eax, %xmm1 11 ; SSE2-NEXT: psllw %xmm1, %xmm0 12 ; SSE2-NEXT: retq 27 ; SSE2-LABEL: test2: 28 ; SSE2: # BB#0: # %entry [all …]
|
D | pmul.ll | 2 …RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=SSE --check-prefix=SSE2 9 ; SSE2-LABEL: mul_v16i8c: 10 ; SSE2: # BB#0: # %entry 11 ; SSE2-NEXT: movdqa {{.*#+}} xmm1 = [117,117,117,117,117,117,117,117,117,117,117,117,117,117,117… 12 ; SSE2-NEXT: psraw $8, %xmm1 13 ; SSE2-NEXT: movdqa %xmm0, %xmm2 14 ; SSE2-NEXT: punpckhbw {{.*#+}} xmm2 = xmm2[8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15] 15 ; SSE2-NEXT: psraw $8, %xmm2 16 ; SSE2-NEXT: pmullw %xmm1, %xmm2 17 ; SSE2-NEXT: movdqa {{.*#+}} xmm3 = [255,255,255,255,255,255,255,255] [all …]
|
D | vec_minmax_sint.ll | 2 …known-unknown -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSE2 15 ; SSE2-LABEL: max_gt_v2i64: 16 ; SSE2: # BB#0: 17 ; SSE2-NEXT: movdqa {{.*#+}} xmm2 = [2147483648,0,2147483648,0] 18 ; SSE2-NEXT: movdqa %xmm1, %xmm3 19 ; SSE2-NEXT: pxor %xmm2, %xmm3 20 ; SSE2-NEXT: pxor %xmm0, %xmm2 21 ; SSE2-NEXT: movdqa %xmm2, %xmm4 22 ; SSE2-NEXT: pcmpgtd %xmm3, %xmm4 23 ; SSE2-NEXT: pshufd {{.*#+}} xmm5 = xmm4[0,0,2,2] [all …]
|
D | vector-idiv-udiv-128.ll | 2 … -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE --check-prefix=SSE2 12 ; SSE2-LABEL: test_div7_2i64: 13 ; SSE2: # BB#0: 14 ; SSE2-NEXT: movd %xmm0, %rcx 15 ; SSE2-NEXT: movabsq $2635249153387078803, %rsi # imm = 0x2492492492492493 16 ; SSE2-NEXT: movq %rcx, %rax 17 ; SSE2-NEXT: mulq %rsi 18 ; SSE2-NEXT: subq %rdx, %rcx 19 ; SSE2-NEXT: shrq %rcx 20 ; SSE2-NEXT: addq %rdx, %rcx [all …]
|
D | memcpy-2.ll | 1 …s -mattr=+sse2 -mtriple=i686-apple-darwin -mcpu=core2 | FileCheck %s -check-prefix=SSE2-Darwin 2 …%s -mattr=+sse2 -mtriple=i686-pc-mingw32 -mcpu=core2 | FileCheck %s -check-prefix=SSE2-Mingw32 14 ; SSE2-Darwin-LABEL: t1: 15 ; SSE2-Darwin: movsd _.str+16, %xmm0 16 ; SSE2-Darwin: movsd %xmm0, 16(%esp) 17 ; SSE2-Darwin: movaps _.str, %xmm0 18 ; SSE2-Darwin: movaps %xmm0 19 ; SSE2-Darwin: movb $0, 24(%esp) 21 ; SSE2-Mingw32-LABEL: t1: 22 ; SSE2-Mingw32: movsd _.str+16, %xmm0 [all …]
|
D | vector-blend.ll | 2 …c < %s -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -mattr=+sse2 | FileCheck %s --check-prefix=SSE2 11 ; SSE2-LABEL: vsel_float: 12 ; SSE2: # BB#0: # %entry 13 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[0,2],xmm1[1,3] 14 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[0,2,1,3] 15 ; SSE2-NEXT: retq 38 ; SSE2-LABEL: vsel_float2: 39 ; SSE2: # BB#0: # %entry 40 ; SSE2-NEXT: movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3] 41 ; SSE2-NEXT: movaps %xmm1, %xmm0 [all …]
|
D | viabs.ll | 2 … < %s -mtriple=x86_64-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE --check-prefix=SSE2 9 ; SSE2-LABEL: test1: 10 ; SSE2: # BB#0: 11 ; SSE2-NEXT: movdqa %xmm0, %xmm1 12 ; SSE2-NEXT: psrad $31, %xmm1 13 ; SSE2-NEXT: paddd %xmm1, %xmm0 14 ; SSE2-NEXT: pxor %xmm1, %xmm0 15 ; SSE2-NEXT: retq 33 ; SSE2-LABEL: test2: 34 ; SSE2: # BB#0: [all …]
|
D | vec_compare-sse4.ll | 2 ; RUN: llc < %s -mtriple=i686-apple-darwin9 -mattr=-sse3,+sse2 | FileCheck %s --check-prefix=SSE2 7 ; SSE2-LABEL: test1: 8 ; SSE2: ## BB#0: 9 ; SSE2-NEXT: movdqa {{.*#+}} xmm2 = [2147483648,0,2147483648,0] 10 ; SSE2-NEXT: pxor %xmm2, %xmm1 11 ; SSE2-NEXT: pxor %xmm2, %xmm0 12 ; SSE2-NEXT: movdqa %xmm0, %xmm2 13 ; SSE2-NEXT: pcmpgtd %xmm1, %xmm2 14 ; SSE2-NEXT: pshufd {{.*#+}} xmm3 = xmm2[0,0,2,2] 15 ; SSE2-NEXT: pcmpeqd %xmm1, %xmm0 [all …]
|
D | vector-rotate-128.ll | 2 …known-unknown -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSE2 10 …known -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32-SSE --check-prefix=X32-SSE2 17 ; SSE2-LABEL: var_rotate_v2i64: 18 ; SSE2: # BB#0: 19 ; SSE2-NEXT: movdqa {{.*#+}} xmm2 = [64,64] 20 ; SSE2-NEXT: psubq %xmm1, %xmm2 21 ; SSE2-NEXT: pshufd {{.*#+}} xmm3 = xmm1[2,3,0,1] 22 ; SSE2-NEXT: movdqa %xmm0, %xmm4 23 ; SSE2-NEXT: psllq %xmm3, %xmm4 24 ; SSE2-NEXT: movdqa %xmm0, %xmm3 [all …]
|
D | vector-lzcnt-128.ll | 2 …ple=x86_64-unknown-unknown | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSE2 15 ; SSE2-LABEL: testv2i64: 16 ; SSE2: # BB#0: 17 ; SSE2-NEXT: movd %xmm0, %rax 18 ; SSE2-NEXT: bsrq %rax, %rax 19 ; SSE2-NEXT: movl $127, %ecx 20 ; SSE2-NEXT: cmoveq %rcx, %rax 21 ; SSE2-NEXT: xorq $63, %rax 22 ; SSE2-NEXT: movd %rax, %xmm1 23 ; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[2,3,0,1] [all …]
|
D | vector-sext.ll | 2 … -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=SSE --check-prefix=SSE2 13 ; SSE2-LABEL: sext_16i8_to_8i16: 14 ; SSE2: # BB#0: # %entry 15 ; SSE2-NEXT: punpcklbw {{.*#+}} xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7] 16 ; SSE2-NEXT: psraw $8, %xmm0 17 ; SSE2-NEXT: retq 46 ; SSE2-LABEL: sext_16i8_to_16i16: 47 ; SSE2: # BB#0: # %entry 48 ; SSE2-NEXT: punpcklbw {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1],xmm2[2],xmm0[2],xmm2[3],x… 49 ; SSE2-NEXT: psraw $8, %xmm2 [all …]
|
D | vector-shuffle-128-v8.ll | 2 …known-unknown -mcpu=x86-64 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSE2 38 ; SSE2-LABEL: shuffle_v8i16_456789AB: 39 ; SSE2: # BB#0: 40 ; SSE2-NEXT: shufpd {{.*#+}} xmm0 = xmm0[1],xmm1[0] 41 ; SSE2-NEXT: retq 140 ; SSE2-LABEL: shuffle_v8i16_44440000: 141 ; SSE2: # BB#0: 142 ; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[2,1,0,3] 143 ; SSE2-NEXT: pshuflw {{.*#+}} xmm0 = xmm0[0,0,0,0,4,5,6,7] 144 ; SSE2-NEXT: pshufhw {{.*#+}} xmm0 = xmm0[0,1,2,3,4,4,4,4] [all …]
|