/external/llvm/test/CodeGen/X86/ |
D | atomic6432.ll | 1 ; RUN: llc < %s -O0 -march=x86 -mcpu=corei7 -verify-machineinstrs | FileCheck %s --check-prefix X32 6 ; X32-LABEL: atomic_fetch_add64: 9 ; X32: addl 10 ; X32: adcl 11 ; X32: lock 12 ; X32: cmpxchg8b 14 ; X32: addl 15 ; X32: adcl 16 ; X32: lock 17 ; X32: cmpxchg8b [all …]
|
D | emutls.ll | 1 ; RUN: llc < %s -emulated-tls -march=x86 -mtriple=i386-linux-gnu | FileCheck -check-prefix=X32 %s 3 ; RUN: llc < %s -emulated-tls -march=x86 -mtriple=x86-linux-android | FileCheck -check-prefix=X32 %s 14 ; X32-LABEL: my_get_xyz: 15 ; X32: movl $my_emutls_v_xyz, (%esp) 16 ; X32-NEXT: calll my_emutls_get_address 17 ; X32-NEXT: movl (%eax), %eax 18 ; X32-NEXT: addl $12, %esp 19 ; X32-NEXT: retl 43 ; X32-LABEL: f1: 44 ; X32: movl $__emutls_v.i1, (%esp) [all …]
|
D | atomic8.ll | 2 ; RUN: llc < %s -O0 -march=x86 -mcpu=corei7 -verify-machineinstrs | FileCheck %s --check-prefix X32 8 ; X32-LABEL: atomic_fetch_add8: 14 ; X32: lock 15 ; X32: incb 19 ; X32: lock 20 ; X32: addb $3 24 ; X32: lock 25 ; X32: xaddb 29 ; X32: lock 30 ; X32: addb [all …]
|
D | atomic16.ll | 2 … -mtriple=i386-unknown-unknown -mcpu=corei7 -verify-machineinstrs | FileCheck %s --check-prefix X32 8 ; X32-LABEL: atomic_fetch_add16 14 ; X32: lock 15 ; X32: incw 19 ; X32: lock 20 ; X32: addw $3 24 ; X32: lock 25 ; X32: xaddw 29 ; X32: lock 30 ; X32: addw [all …]
|
D | avx512vl-intrinsics-fast-isel.ll | 2 …i386-unknown-unknown -mattr=+avx512f,+avx512vl | FileCheck %s --check-prefix=ALL --check-prefix=X32 8 ; X32-LABEL: test_mm_broadcastd_epi32: 9 ; X32: # BB#0: 10 ; X32-NEXT: vpbroadcastd %xmm0, %xmm0 11 ; X32-NEXT: retl 24 ; X32-LABEL: test_mm_mask_broadcastd_epi32: 25 ; X32: # BB#0: 26 ; X32-NEXT: pushl %eax 27 ; X32-NEXT: .Ltmp0: 28 ; X32-NEXT: .cfi_def_cfa_offset 8 [all …]
|
D | bmi-intrinsics-fast-isel.ll | 2 …UN: llc < %s -fast-isel -mtriple=i686-unknown-unknown -mattr=+bmi | FileCheck %s --check-prefix=X32 12 ; X32-LABEL: test__tzcnt_u16: 13 ; X32: # BB#0: 14 ; X32-NEXT: movzwl {{[0-9]+}}(%esp), %eax 15 ; X32-NEXT: movzwl %ax, %ecx 16 ; X32-NEXT: cmpl $0, %ecx 17 ; X32-NEXT: jne .LBB0_1 18 ; X32-NEXT: # BB#2: 19 ; X32-NEXT: movw $16, %ax 20 ; X32-NEXT: retl [all …]
|
D | sse-intrinsics-fast-isel.ll | 2 …isel -mtriple=i386-unknown-unknown -mattr=+sse | FileCheck %s --check-prefix=ALL --check-prefix=X32 8 ; X32-LABEL: test_mm_add_ps: 9 ; X32: # BB#0: 10 ; X32-NEXT: addps %xmm1, %xmm0 11 ; X32-NEXT: retl 22 ; X32-LABEL: test_mm_add_ss: 23 ; X32: # BB#0: 24 ; X32-NEXT: addss %xmm1, %xmm0 25 ; X32-NEXT: retl 39 ; X32-LABEL: test_mm_and_ps: [all …]
|
D | vec_extract-mmx.ll | 2 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+mmx,+sse2 | FileCheck %s --check-prefix=X32 6 ; X32-LABEL: test0: 7 ; X32: # BB#0: # %entry 8 ; X32-NEXT: pushl %ebp 9 ; X32-NEXT: movl %esp, %ebp 10 ; X32-NEXT: andl $-8, %esp 11 ; X32-NEXT: subl $24, %esp 12 ; X32-NEXT: movl 8(%ebp), %eax 13 ; X32-NEXT: movl (%eax), %ecx 14 ; X32-NEXT: movl 4(%eax), %eax [all …]
|
D | atomic64.ll | 7 ; X32-LABEL: atomic_fetch_add64: 27 ; X32-LABEL: atomic_fetch_sub64: 46 ; X32-LABEL: atomic_fetch_and64: 63 ; X32-LABEL: atomic_fetch_or64: 80 ; X32-LABEL: atomic_fetch_xor64: 97 ; X32-LABEL: atomic_fetch_nand64: 103 ; X32: andl 104 ; X32: andl 105 ; X32: notl 106 ; X32: notl [all …]
|
D | avx-intrinsics-fast-isel.ll | 2 …ple=i386-unknown-unknown -mattr=avx,aes,pclmul | FileCheck %s --check-prefix=ALL --check-prefix=X32 8 ; X32-LABEL: test_mm256_add_pd: 9 ; X32: # BB#0: 10 ; X32-NEXT: vaddpd %ymm1, %ymm0, %ymm0 11 ; X32-NEXT: retl 22 ; X32-LABEL: test_mm256_add_ps: 23 ; X32: # BB#0: 24 ; X32-NEXT: vaddps %ymm1, %ymm0, %ymm0 25 ; X32-NEXT: retl 36 ; X32-LABEL: test_mm256_addsub_pd: [all …]
|
D | tbm-intrinsics-fast-isel.ll | 2 …UN: llc < %s -fast-isel -mtriple=i686-unknown-unknown -mattr=+tbm | FileCheck %s --check-prefix=X32 8 ; X32-LABEL: test__bextri_u32: 9 ; X32: # BB#0: 10 ; X32-NEXT: bextr $1, {{[0-9]+}}(%esp), %eax 11 ; X32-NEXT: retl 22 ; X32-LABEL: test__blcfill_u32: 23 ; X32: # BB#0: 24 ; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx 25 ; X32-NEXT: leal 1(%ecx), %eax 26 ; X32-NEXT: andl %ecx, %eax [all …]
|
D | fold-vector-sext-crash2.ll | 1 ; RUN: llc < %s -march=x86 | FileCheck %s -check-prefix=X32 17 ; X32-LABEL: test_sext1 18 ; X32: movl $-1 19 ; X32-NEXT: movl $-1 20 ; X32-NEXT: movl $-1 21 ; X32-NEXT: movl $-1 22 ; X32-NEXT: movl $-1 23 ; X32-NEXT: movl $-1 24 ; X32-NEXT: movl $-1 25 ; X32-NEXT: movl $-99 [all …]
|
D | vec_ins_extract-1.ll | 2 ; RUN: llc < %s -mtriple=i386-unknown -mattr=+sse4.1 | FileCheck %s --check-prefix=X32 9 ; X32-LABEL: t0: 10 ; X32: # BB#0: 11 ; X32-NEXT: pushl %ebp 12 ; X32-NEXT: movl %esp, %ebp 13 ; X32-NEXT: andl $-16, %esp 14 ; X32-NEXT: subl $32, %esp 15 ; X32-NEXT: movaps %xmm0, (%esp) 16 ; X32-NEXT: movl $76, (%esp,%eax,4) 17 ; X32-NEXT: movl (%esp), %eax [all …]
|
D | segmented-stacks.ll | 1 …< %s -mcpu=generic -mtriple=i686-linux -verify-machineinstrs | FileCheck %s -check-prefix=X32-Linux 5 …%s -mcpu=generic -mtriple=i686-darwin -verify-machineinstrs | FileCheck %s -check-prefix=X32-Darwin 7 …%s -mcpu=generic -mtriple=i686-mingw32 -verify-machineinstrs | FileCheck %s -check-prefix=X32-MinGW 9 …mcpu=generic -mtriple=i686-dragonfly -verify-machineinstrs | FileCheck %s -check-prefix=X32-DFlyBSD 28 ; RUN: FileCheck %s -input-file=%t.log -check-prefix=X32-FreeBSD 31 ; X32-FreeBSD: Segmented stacks not supported on FreeBSD i386 41 ; X32-Linux-LABEL: test_basic: 43 ; X32-Linux: cmpl %gs:48, %esp 44 ; X32-Linux-NEXT: ja .LBB0_2 46 ; X32-Linux: pushl $0 [all …]
|
D | sse2-intrinsics-fast-isel.ll | 2 …sel -mtriple=i386-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32 8 ; X32-LABEL: test_mm_add_epi8: 9 ; X32: # BB#0: 10 ; X32-NEXT: paddb %xmm1, %xmm0 11 ; X32-NEXT: retl 25 ; X32-LABEL: test_mm_add_epi16: 26 ; X32: # BB#0: 27 ; X32-NEXT: paddw %xmm1, %xmm0 28 ; X32-NEXT: retl 42 ; X32-LABEL: test_mm_add_epi32: [all …]
|
D | all-ones-vector.ll | 2 …lc < %s -mtriple=i386-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X32 --check-prefix=X32-SSE 3 …lc < %s -mtriple=i386-unknown -mattr=+avx | FileCheck %s --check-prefix=X32 --check-prefix=X32-AVX 8 ; X32-SSE-LABEL: coo: 9 ; X32-SSE: # BB#0: 10 ; X32-SSE-NEXT: pcmpeqd %xmm0, %xmm0 11 ; X32-SSE-NEXT: retl 13 ; X32-AVX-LABEL: coo: 14 ; X32-AVX: # BB#0: 15 ; X32-AVX-NEXT: vpcmpeqd %xmm0, %xmm0, %xmm0 16 ; X32-AVX-NEXT: retl [all …]
|
D | vec_fpext.ll | 2 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+sse4.1 | FileCheck %s --check-prefix=X32-SSE 3 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+avx | FileCheck %s --check-prefix=X32-AVX 9 ; X32-SSE-LABEL: fpext_frommem: 10 ; X32-SSE: # BB#0: # %entry 11 ; X32-SSE-NEXT: movl {{[0-9]+}}(%esp), %eax 12 ; X32-SSE-NEXT: movl {{[0-9]+}}(%esp), %ecx 13 ; X32-SSE-NEXT: cvtps2pd (%ecx), %xmm0 14 ; X32-SSE-NEXT: movups %xmm0, (%eax) 15 ; X32-SSE-NEXT: retl 17 ; X32-AVX-LABEL: fpext_frommem: [all …]
|
D | emutls-pic.ll | 1 …lated-tls -march=x86 -mtriple=i386-linux-gnu -relocation-model=pic | FileCheck -check-prefix=X32 %s 3 …d-tls -march=x86 -mtriple=i386-linux-android -relocation-model=pic | FileCheck -check-prefix=X32 %s 11 ; X32-LABEL: my_get_xyz: 12 ; X32: movl my_emutls_v_xyz@GOT(%ebx), %eax 13 ; X32-NEXT: movl %eax, (%esp) 14 ; X32-NEXT: calll my_emutls_get_address@PLT 37 ; X32-LABEL: f1: 38 ; X32: movl __emutls_v.i@GOT(%ebx), %eax 39 ; X32-NEXT: movl %eax, (%esp) 40 ; X32-NEXT: calll __emutls_get_address@PLT [all …]
|
D | vec_fptrunc.ll | 2 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+sse4.1 | FileCheck %s --check-prefix=X32-SSE 3 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+avx | FileCheck %s --check-prefix=X32-AVX 8 ; X32-SSE-LABEL: fptrunc_frommem2: 9 ; X32-SSE: # BB#0: # %entry 10 ; X32-SSE-NEXT: movl {{[0-9]+}}(%esp), %eax 11 ; X32-SSE-NEXT: movl {{[0-9]+}}(%esp), %ecx 12 ; X32-SSE-NEXT: cvtpd2ps (%ecx), %xmm0 13 ; X32-SSE-NEXT: extractps $1, %xmm0, 4(%eax) 14 ; X32-SSE-NEXT: movss %xmm0, (%eax) 15 ; X32-SSE-NEXT: retl [all …]
|
D | tls-pie.ll | 2 ; RUN: | FileCheck -check-prefix=X32 %s 10 ; X32-LABEL: f1: 11 ; X32: movl %gs:i@NTPOFF, %eax 12 ; X32-NEXT: ret 23 ; X32-LABEL: f2: 24 ; X32: movl %gs:0, %eax 25 ; X32-NEXT: leal i@NTPOFF(%eax), %eax 26 ; X32-NEXT: ret 37 ; X32-LABEL: f3: 38 ; X32: calll .L{{[0-9]+}}$pb [all …]
|
D | sse-fcopysign.ll | 1 …N: llc < %s -mtriple=i686-unknown -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32 9 ; X32-LABEL: @tst1 10 ; X32: movss {{.*#+}} xmm0 = mem[0],zero,zero,zero 11 ; X32-NEXT: movss {{.*#+}} xmm1 = mem[0],zero,zero,zero 12 ; X32-NEXT: movss %xmm1, 4(%esp) 13 ; X32-NEXT: movss %xmm0, (%esp) 14 ; X32-NEXT: calll copysignf 15 ; X32-NEXT: addl $8, %esp 16 ; X32-NEXT: retl 28 ; X32-LABEL: @tst2 [all …]
|
D | sse41-intrinsics-fast-isel.ll | 2 …l -mtriple=i386-unknown-unknown -mattr=+sse4.1 | FileCheck %s --check-prefix=ALL --check-prefix=X32 8 ; X32-LABEL: test_mm_blend_epi16: 9 ; X32: # BB#0: 10 ; X32-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2],xmm1[3],xmm0[4],xmm1[5],xmm0[6,7] 11 ; X32-NEXT: retl 25 ; X32-LABEL: test_mm_blend_pd: 26 ; X32: # BB#0: 27 ; X32-NEXT: blendpd {{.*#+}} xmm0 = xmm0[0],xmm1[1] 28 ; X32-NEXT: retl 39 ; X32-LABEL: test_mm_blend_ps: [all …]
|
D | nontemporal.ll | 2 ; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X32-SSE 3 ; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+avx | FileCheck %s --check-prefix=X32-AVX 8 ; X32-SSE-LABEL: f: 9 ; X32-SSE: # BB#0: 10 ; X32-SSE-NEXT: pushl %ebp 11 ; X32-SSE-NEXT: movl %esp, %ebp 12 ; X32-SSE-NEXT: pushl %esi 13 ; X32-SSE-NEXT: andl $-16, %esp 14 ; X32-SSE-NEXT: subl $16, %esp 15 ; X32-SSE-NEXT: movl 72(%ebp), %eax [all …]
|
D | avx-vbroadcast.ll | 2 ; RUN: llc < %s -mtriple=i686-apple-darwin -mattr=+avx | FileCheck %s --check-prefix=X32 6 ; X32-LABEL: A: 7 ; X32: ## BB#0: ## %entry 8 ; X32-NEXT: movl {{[0-9]+}}(%esp), %eax 9 ; X32-NEXT: movl (%eax), %ecx 10 ; X32-NEXT: movl 4(%eax), %eax 11 ; X32-NEXT: vmovd %ecx, %xmm0 12 ; X32-NEXT: vpinsrd $1, %eax, %xmm0, %xmm0 13 ; X32-NEXT: vpinsrd $2, %ecx, %xmm0, %xmm0 14 ; X32-NEXT: vpinsrd $3, %eax, %xmm0, %xmm0 [all …]
|
D | widen_bitops-0.ll | 2 …-mtriple=i686-unknown -mattr=+sse4.2 | FileCheck %s --check-prefix=X32-SSE --check-prefix=X32-SSE42 10 ; X32-SSE-LABEL: and_i24_as_v3i8: 11 ; X32-SSE: # BB#0: 12 ; X32-SSE-NEXT: movl {{[0-9]+}}(%esp), %eax 13 ; X32-SSE-NEXT: andl {{[0-9]+}}(%esp), %eax 14 ; X32-SSE-NEXT: retl 29 ; X32-SSE-LABEL: xor_i24_as_v3i8: 30 ; X32-SSE: # BB#0: 31 ; X32-SSE-NEXT: movl {{[0-9]+}}(%esp), %eax 32 ; X32-SSE-NEXT: xorl {{[0-9]+}}(%esp), %eax [all …]
|