/external/llvm/test/CodeGen/X86/ |
D | vec_fp_to_int.ll | 2 …nknown-unknown -mattr=+avx | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX1 25 ; AVX-LABEL: fptosi_2f64_to_2i64: 26 ; AVX: # BB#0: 27 ; AVX-NEXT: vcvttsd2si %xmm0, %rax 28 ; AVX-NEXT: vmovq %rax, %xmm1 29 ; AVX-NEXT: vpermilpd {{.*#+}} xmm0 = xmm0[1,0] 30 ; AVX-NEXT: vcvttsd2si %xmm0, %rax 31 ; AVX-NEXT: vmovq %rax, %xmm0 32 ; AVX-NEXT: vpunpcklqdq {{.*#+}} xmm0 = xmm1[0],xmm0[0] 33 ; AVX-NEXT: retq [all …]
|
D | machine-combiner.ll | 2 …known-unknown -mcpu=x86-64 -mattr=avx -enable-unsafe-fp-math < %s | FileCheck %s --check-prefix=AVX 15 ; AVX-LABEL: reassociate_adds1: 16 ; AVX: # BB#0: 17 ; AVX-NEXT: vaddss %xmm1, %xmm0, %xmm0 18 ; AVX-NEXT: vaddss %xmm3, %xmm2, %xmm1 19 ; AVX-NEXT: vaddss %xmm1, %xmm0, %xmm0 20 ; AVX-NEXT: retq 35 ; AVX-LABEL: reassociate_adds2: 36 ; AVX: # BB#0: 37 ; AVX-NEXT: vaddss %xmm1, %xmm0, %xmm0 [all …]
|
D | merge-consecutive-loads-256.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx | FileCheck %s --check-prefix=AVX --che… 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx2 | FileCheck %s --check-prefix=AVX --ch… 4 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX -… 7 ; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+avx | FileCheck %s --check-prefix=X32-AVX 10 ; AVX-LABEL: merge_4f64_2f64_23: 11 ; AVX: # BB#0: 12 ; AVX-NEXT: vmovups 32(%rdi), %ymm0 13 ; AVX-NEXT: retq 15 ; X32-AVX-LABEL: merge_4f64_2f64_23: 16 ; X32-AVX: # BB#0: [all …]
|
D | sse-scalar-fp-arith.ll | 3 ; RUN: llc -mcpu=x86-64 -mattr=+avx < %s | FileCheck --check-prefix=AVX %s 17 ; AVX-LABEL: test_add_ss: 18 ; AVX: # BB#0: 19 ; AVX-NEXT: vaddss %xmm1, %xmm0, %xmm0 20 ; AVX-NEXT: retq 34 ; AVX-LABEL: test_sub_ss: 35 ; AVX: # BB#0: 36 ; AVX-NEXT: vsubss %xmm1, %xmm0, %xmm0 37 ; AVX-NEXT: retq 51 ; AVX-LABEL: test_mul_ss: [all …]
|
D | commute-fcmp.ll | 3 …N: llc -O3 -mtriple=x86_64-unknown -mcpu=x86-64 -mattr=+avx2 < %s | FileCheck %s --check-prefix=AVX 16 ; AVX-LABEL: commute_cmpps_eq: 17 ; AVX: # BB#0: 18 ; AVX-NEXT: vcmpeqps (%rdi), %xmm0, %xmm0 19 ; AVX-NEXT: retq 33 ; AVX-LABEL: commute_cmpps_ne: 34 ; AVX: # BB#0: 35 ; AVX-NEXT: vcmpneqps (%rdi), %xmm0, %xmm0 36 ; AVX-NEXT: retq 50 ; AVX-LABEL: commute_cmpps_ord: [all …]
|
D | avx-intrinsics-x86.ll | 2 ; RUN: llc < %s -mtriple=i686-apple-darwin -mattr=avx,aes,pclmul | FileCheck %s --check-prefix=AVX 6 ; AVX-LABEL: test_x86_aesni_aesdec: 7 ; AVX: ## BB#0: 8 ; AVX-NEXT: vaesdec %xmm1, %xmm0, %xmm0 9 ; AVX-NEXT: retl 22 ; AVX-LABEL: test_x86_aesni_aesdeclast: 23 ; AVX: ## BB#0: 24 ; AVX-NEXT: vaesdeclast %xmm1, %xmm0, %xmm0 25 ; AVX-NEXT: retl 38 ; AVX-LABEL: test_x86_aesni_aesenc: [all …]
|
D | vec_floor.ll | 3 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -mattr=+avx | FileCheck %s --check-prefix=AVX 11 ; AVX-LABEL: floor_v2f64: 12 ; AVX: ## BB#0: 13 ; AVX-NEXT: vroundpd $9, %xmm0, %xmm0 14 ; AVX-NEXT: retq 26 ; AVX-LABEL: floor_v4f32: 27 ; AVX: ## BB#0: 28 ; AVX-NEXT: vroundps $9, %xmm0, %xmm0 29 ; AVX-NEXT: retq 42 ; AVX-LABEL: floor_v4f64: [all …]
|
D | all-ones-vector.ll | 3 …lc < %s -mtriple=i386-unknown -mattr=+avx | FileCheck %s --check-prefix=X32 --check-prefix=X32-AVX 5 … < %s -mtriple=x86_64-unknown -mattr=+avx | FileCheck %s --check-prefix=X64 --check-prefix=X64-AVX 13 ; X32-AVX-LABEL: coo: 14 ; X32-AVX: # BB#0: 15 ; X32-AVX-NEXT: vpcmpeqd %xmm0, %xmm0, %xmm0 16 ; X32-AVX-NEXT: retl 23 ; X64-AVX-LABEL: coo: 24 ; X64-AVX: # BB#0: 25 ; X64-AVX-NEXT: vpcmpeqd %xmm0, %xmm0, %xmm0 26 ; X64-AVX-NEXT: retq [all …]
|
D | extractelement-index.ll | 4 ; RUN: llc < %s -mtriple=x86_64-pc-linux -mattr=+avx | FileCheck %s --check-prefix=AVX --check-p… 5 ; RUN: llc < %s -mtriple=x86_64-pc-linux -mattr=+avx2 | FileCheck %s --check-prefix=AVX --check-p… 24 ; AVX-LABEL: extractelement_v16i8_1: 25 ; AVX: # BB#0: 26 ; AVX-NEXT: vpextrb $1, %xmm0, %eax 27 ; AVX-NEXT: # kill: %AL<def> %AL<kill> %EAX<kill> 28 ; AVX-NEXT: retq 46 ; AVX-LABEL: extractelement_v16i8_11: 47 ; AVX: # BB#0: 48 ; AVX-NEXT: vpextrb $11, %xmm0, %eax [all …]
|
D | vec_fpext.ll | 3 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+avx | FileCheck %s --check-prefix=X32-AVX 5 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+avx | FileCheck %s --check-prefix=X64-AVX 17 ; X32-AVX-LABEL: fpext_frommem: 18 ; X32-AVX: # BB#0: # %entry 19 ; X32-AVX-NEXT: movl {{[0-9]+}}(%esp), %eax 20 ; X32-AVX-NEXT: movl {{[0-9]+}}(%esp), %ecx 21 ; X32-AVX-NEXT: vcvtps2pd (%ecx), %xmm0 22 ; X32-AVX-NEXT: vmovups %xmm0, (%eax) 23 ; X32-AVX-NEXT: retl 31 ; X64-AVX-LABEL: fpext_frommem: [all …]
|
/external/swiftshader/third_party/llvm-7.0/llvm/test/CodeGen/X86/ |
D | vector-idiv-sdiv-512.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX -… 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512bw | FileCheck %s --check-prefix=AVX … 10 ; AVX-LABEL: test_div7_8i64: 11 ; AVX: # %bb.0: 12 ; AVX-NEXT: vextracti32x4 $3, %zmm0, %xmm1 13 ; AVX-NEXT: vpextrq $1, %xmm1, %rax 14 ; AVX-NEXT: movabsq $5270498306774157605, %rcx # imm = 0x4924924924924925 15 ; AVX-NEXT: imulq %rcx 16 ; AVX-NEXT: movq %rdx, %rax 17 ; AVX-NEXT: shrq $63, %rax [all …]
|
D | broadcast-elm-cross-splat-vec.ll | 2 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+avx | FileCheck %s --check-prefix=AVX 6 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+avx | FileCheck %s --check-prefix=AVX-64 20 ; AVX-LABEL: f16xi8_i16: 21 ; AVX: # %bb.0: 22 ; AVX-NEXT: vmovdqa {{.*#+}} xmm1 = [0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1] 23 ; AVX-NEXT: vpaddb %xmm1, %xmm0, %xmm0 24 ; AVX-NEXT: vpand %xmm1, %xmm0, %xmm0 25 ; AVX-NEXT: retl 34 ; AVX-64-LABEL: f16xi8_i16: 35 ; AVX-64: # %bb.0: [all …]
|
D | vector-idiv-udiv-512.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX -… 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512bw | FileCheck %s --check-prefix=AVX … 10 ; AVX-LABEL: test_div7_8i64: 11 ; AVX: # %bb.0: 12 ; AVX-NEXT: vextracti32x4 $3, %zmm0, %xmm1 13 ; AVX-NEXT: vpextrq $1, %xmm1, %rcx 14 ; AVX-NEXT: movabsq $2635249153387078803, %rsi # imm = 0x2492492492492493 15 ; AVX-NEXT: movq %rcx, %rax 16 ; AVX-NEXT: mulq %rsi 17 ; AVX-NEXT: subq %rdx, %rcx [all …]
|
D | merge-consecutive-loads-256.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx | FileCheck %s --check-prefix=AVX --che… 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx2 | FileCheck %s --check-prefix=AVX --ch… 4 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx512f | FileCheck %s --check-prefix=AVX -… 7 ; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+avx | FileCheck %s --check-prefix=X32-AVX 10 ; AVX-LABEL: merge_4f64_2f64_23: 11 ; AVX: # %bb.0: 12 ; AVX-NEXT: vmovups 32(%rdi), %ymm0 13 ; AVX-NEXT: retq 15 ; X32-AVX-LABEL: merge_4f64_2f64_23: 16 ; X32-AVX: # %bb.0: [all …]
|
D | fast-isel-select-pseudo-cmov.ll | 4 … -mcpu=corei7-avx | FileCheck %s --check-prefix=CHECK --check-prefix=AVX 5 …ast-isel -fast-isel-abort=1 -mcpu=corei7-avx | FileCheck %s --check-prefix=CHECK --check-prefix=AVX 19 ; AVX-LABEL: select_fcmp_one_f32: 20 ; AVX: ## %bb.0: 21 ; AVX-NEXT: vcmpneq_oqss %xmm1, %xmm0, %xmm0 22 ; AVX-NEXT: vblendvps %xmm0, %xmm2, %xmm3, %xmm0 23 ; AVX-NEXT: retq 40 ; AVX-LABEL: select_fcmp_one_f64: 41 ; AVX: ## %bb.0: 42 ; AVX-NEXT: vcmpneq_oqsd %xmm1, %xmm0, %xmm0 [all …]
|
D | machine-combiner.ll | 2 …e-unsafe-fp-math -machine-combiner-verify-pattern-order=true < %s | FileCheck %s --check-prefix=AVX 7 …avx -enable-unsafe-fp-math -machine-combiner-inc-threshold=0 < %s | FileCheck %s --check-prefix=AVX 20 ; AVX-LABEL: reassociate_adds1: 21 ; AVX: # %bb.0: 22 ; AVX-NEXT: vaddss %xmm1, %xmm0, %xmm0 23 ; AVX-NEXT: vaddss %xmm3, %xmm2, %xmm1 24 ; AVX-NEXT: vaddss %xmm1, %xmm0, %xmm0 25 ; AVX-NEXT: retq 40 ; AVX-LABEL: reassociate_adds2: 41 ; AVX: # %bb.0: [all …]
|
D | extractelement-index.ll | 4 ; RUN: llc < %s -mtriple=x86_64-pc-linux -mattr=+avx | FileCheck %s --check-prefix=AVX --check-p… 5 ; RUN: llc < %s -mtriple=x86_64-pc-linux -mattr=+avx2 | FileCheck %s --check-prefix=AVX --check-p… 25 ; AVX-LABEL: extractelement_v16i8_1: 26 ; AVX: # %bb.0: 27 ; AVX-NEXT: vpextrb $1, %xmm0, %eax 28 ; AVX-NEXT: # kill: def $al killed $al killed $eax 29 ; AVX-NEXT: retq 48 ; AVX-LABEL: extractelement_v16i8_11: 49 ; AVX: # %bb.0: 50 ; AVX-NEXT: vpextrb $11, %xmm0, %eax [all …]
|
D | combine-mul.ll | 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx2 | FileCheck %s --check-prefix=AVX 12 ; AVX-LABEL: combine_vec_mul_zero: 13 ; AVX: # %bb.0: 14 ; AVX-NEXT: vxorps %xmm0, %xmm0, %xmm0 15 ; AVX-NEXT: retq 26 ; AVX-LABEL: combine_vec_mul_one: 27 ; AVX: # %bb.0: 28 ; AVX-NEXT: retq 42 ; AVX-LABEL: combine_vec_mul_negone: 43 ; AVX: # %bb.0: [all …]
|
D | promote-vec3.ll | 4 ; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+avx | FileCheck %s --check-prefix=AVX-32 5 ; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+avx2 | FileCheck %s --check-prefix=AVX-32 6 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx2 | FileCheck %s --check-prefix=AVX-64 39 ; AVX-32-LABEL: zext_i8: 40 ; AVX-32: # %bb.0: 41 ; AVX-32-NEXT: vpxor %xmm0, %xmm0, %xmm0 42 ; AVX-32-NEXT: vpinsrb $0, {{[0-9]+}}(%esp), %xmm0, %xmm0 43 ; AVX-32-NEXT: vpinsrb $4, {{[0-9]+}}(%esp), %xmm0, %xmm0 44 ; AVX-32-NEXT: vpinsrb $8, {{[0-9]+}}(%esp), %xmm0, %xmm0 45 ; AVX-32-NEXT: vmovd %xmm0, %eax [all …]
|
D | combine-add.ll | 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx2 | FileCheck %s --check-prefix=AVX 11 ; AVX-LABEL: combine_vec_add_to_zero: 12 ; AVX: # %bb.0: 13 ; AVX-NEXT: retq 27 ; AVX-LABEL: combine_vec_add_constant_sub: 28 ; AVX: # %bb.0: 29 ; AVX-NEXT: vmovdqa {{.*#+}} xmm1 = [0,2,4,6] 30 ; AVX-NEXT: vpsubd %xmm0, %xmm1, %xmm0 31 ; AVX-NEXT: retq 45 ; AVX-LABEL: combine_vec_add_neg0: [all …]
|
D | widen_load-3.ll | 3 …-linux -mattr=+avx | FileCheck %s --check-prefix=X86 --check-prefix=X86-AVX --check-prefix=X86-… 4 …-linux -mattr=+avx2 | FileCheck %s --check-prefix=X86 --check-prefix=X86-AVX --check-prefix=X86-… 6 …-linux -mattr=+avx | FileCheck %s --check-prefix=X64 --check-prefix=X64-AVX --check-prefix=X64-… 7 …-linux -mattr=+avx2 | FileCheck %s --check-prefix=X64 --check-prefix=X64-AVX --check-prefix=X64-… 28 ; X86-AVX-LABEL: load7_aligned: 29 ; X86-AVX: # %bb.0: 30 ; X86-AVX-NEXT: movl {{[0-9]+}}(%esp), %eax 31 ; X86-AVX-NEXT: movl {{[0-9]+}}(%esp), %ecx 32 ; X86-AVX-NEXT: vmovaps (%ecx), %ymm0 33 ; X86-AVX-NEXT: vmovaps 32(%ecx), %ymm1 [all …]
|
D | vec-copysign.ll | 2 ; RUN: llc < %s -mtriple=x86_64-apple-macosx10.10.0 -mattr=+avx | FileCheck %s --check-prefix=AVX -… 27 ; AVX-LABEL: v4f32: 28 ; AVX: # %bb.0: 29 ; AVX-NEXT: vandps [[SIGNMASK1]](%rip), %xmm1, %xmm1 30 ; AVX-NEXT: vandps [[MAGMASK1]](%rip), %xmm0, %xmm0 31 ; AVX-NEXT: vorps %xmm1, %xmm0, %xmm0 32 ; AVX-NEXT: retq 50 ; AVX: [[SIGNMASK2:L.+]]: 51 ; AVX-NEXT: .long 2147483648 52 ; AVX-NEXT: .long 2147483648 [all …]
|
D | sse42-intrinsics-fast-isel.ll | 3 …386-unknown-unknown -mattr=+avx | FileCheck %s --check-prefixes=CHECK,X86,AVX,X86-AVX,AVX1,X86-AVX1 4 …avx512bw,+avx512dq,+avx512vl | FileCheck %s --check-prefixes=CHECK,X86,AVX,X86-AVX,AVX512,X86-AVX5… 6 …_64-unknown-unknown -mattr=+avx | FileCheck %s --check-prefixes=CHECK,X64,AVX,X64-AVX,AVX1,X64-AVX1 7 …avx512bw,+avx512dq,+avx512vl | FileCheck %s --check-prefixes=CHECK,X64,AVX,X64-AVX,AVX512,X64-AVX5… 24 ; X86-AVX-LABEL: test_mm_cmpestra: 25 ; X86-AVX: # %bb.0: 26 ; X86-AVX-NEXT: pushl %ebx 27 ; X86-AVX-NEXT: movl {{[0-9]+}}(%esp), %edx 28 ; X86-AVX-NEXT: movl {{[0-9]+}}(%esp), %eax 29 ; X86-AVX-NEXT: xorl %ebx, %ebx [all …]
|
D | combine-sub.ll | 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx2 | FileCheck %s --check-prefix=AVX 11 ; AVX-LABEL: combine_vec_sub_zero: 12 ; AVX: # %bb.0: 13 ; AVX-NEXT: retq 25 ; AVX-LABEL: combine_vec_sub_self: 26 ; AVX: # %bb.0: 27 ; AVX-NEXT: vxorps %xmm0, %xmm0, %xmm0 28 ; AVX-NEXT: retq 40 ; AVX-LABEL: combine_vec_sub_constant: 41 ; AVX: # %bb.0: [all …]
|
D | vec_fptrunc.ll | 3 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+avx | FileCheck %s --check-prefix=X32-AVX 5 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+avx | FileCheck %s --check-prefix=X64-AVX 17 ; X32-AVX-LABEL: fptrunc_frommem2: 18 ; X32-AVX: # %bb.0: # %entry 19 ; X32-AVX-NEXT: movl {{[0-9]+}}(%esp), %eax 20 ; X32-AVX-NEXT: movl {{[0-9]+}}(%esp), %ecx 21 ; X32-AVX-NEXT: vcvtpd2psx (%ecx), %xmm0 22 ; X32-AVX-NEXT: vextractps $1, %xmm0, 4(%eax) 23 ; X32-AVX-NEXT: vmovss %xmm0, (%eax) 24 ; X32-AVX-NEXT: retl [all …]
|