/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 | 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 | 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 | 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 | 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 | 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.ll | 1 …: llc < %s -mtriple=i686-apple-darwin9 -mattr=sse4.1 -mcpu=penryn | FileCheck %s --check-prefix=X32 7 ; X32-LABEL: pinsrd_1: 8 ; X32: ## BB#0: 9 ; X32-NEXT: pinsrd $1, {{[0-9]+}}(%esp), %xmm0 10 ; X32-NEXT: retl 21 ; X32-LABEL: pinsrb_1: 22 ; X32: ## BB#0: 23 ; X32-NEXT: pinsrb $1, {{[0-9]+}}(%esp), %xmm0 24 ; X32-NEXT: retl 35 ; X32-LABEL: pmovzxbq_1: [all …]
|
D | emutls-pie.ll | 2 ; RUN: | FileCheck -check-prefix=X32 %s 6 ; RUN: | FileCheck -check-prefix=X32 %s 15 ; X32-LABEL: my_get_xyz: 16 ; X32: movl my_emutls_v_xyz@GOT(%ebx), %eax 17 ; X32-NEXT: movl %eax, (%esp) 18 ; X32-NEXT: calll my_emutls_get_address@PLT 19 ; X32-NEXT: movl (%eax), %eax 20 ; X32-NEXT: addl $8, %esp 21 ; X32-NEXT: popl %ebx 22 ; X32-NEXT: retl [all …]
|
D | vector-shuffle-mmx.ll | 2 ; RUN: llc < %s -mtriple=i686-darwin -mattr=+mmx,+sse2 | FileCheck --check-prefix=X32 %s 8 ; X32-LABEL: test0: 9 ; X32: ## BB#0: ## %entry 10 ; X32-NEXT: movl {{[0-9]+}}(%esp), %eax 11 ; X32-NEXT: movsd {{.*#+}} xmm0 = mem[0],zero 12 ; X32-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,1,2,3] 13 ; X32-NEXT: movq %xmm0, (%eax) 14 ; X32-NEXT: retl 32 ; X32-LABEL: test1: 33 ; X32: ## BB#0: ## %entry [all …]
|
D | vector-rotate-128.ll | 10 …known -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32-SSE --check-prefix=X32-SSE2 83 ; X32-SSE-LABEL: var_rotate_v2i64: 84 ; X32-SSE: # BB#0: 85 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm2 = [64,0,64,0] 86 ; X32-SSE-NEXT: psubq %xmm1, %xmm2 87 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm3 = xmm1[2,3,0,1] 88 ; X32-SSE-NEXT: movdqa %xmm0, %xmm4 89 ; X32-SSE-NEXT: psllq %xmm3, %xmm4 90 ; X32-SSE-NEXT: movq {{.*#+}} xmm1 = xmm1[0],zero 91 ; X32-SSE-NEXT: movdqa %xmm0, %xmm3 [all …]
|
D | vector-shift-shl-128.ll | 10 …known -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32-SSE --check-prefix=X32-SSE2 59 ; X32-SSE-LABEL: var_shift_v2i64: 60 ; X32-SSE: # BB#0: 61 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm3 = xmm1[2,3,0,1] 62 ; X32-SSE-NEXT: movdqa %xmm0, %xmm2 63 ; X32-SSE-NEXT: psllq %xmm3, %xmm2 64 ; X32-SSE-NEXT: movq {{.*#+}} xmm1 = xmm1[0],zero 65 ; X32-SSE-NEXT: psllq %xmm1, %xmm0 66 ; X32-SSE-NEXT: movsd {{.*#+}} xmm2 = xmm0[0],xmm2[1] 67 ; X32-SSE-NEXT: movapd %xmm2, %xmm0 [all …]
|
D | sse3-intrinsics-fast-isel.ll | 2 …el -mtriple=i386-unknown-unknown -mattr=+sse3 | FileCheck %s --check-prefix=ALL --check-prefix=X32 8 ; X32-LABEL: test_mm_addsub_pd: 9 ; X32: # BB#0: 10 ; X32-NEXT: addsubpd %xmm1, %xmm0 11 ; X32-NEXT: retl 23 ; X32-LABEL: test_mm_addsub_ps: 24 ; X32: # BB#0: 25 ; X32-NEXT: addsubps %xmm1, %xmm0 26 ; X32-NEXT: retl 38 ; X32-LABEL: test_mm_hadd_pd: [all …]
|
D | vector-shift-ashr-128.ll | 10 …known -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32-SSE --check-prefix=X32-SSE2 80 ; X32-SSE-LABEL: var_shift_v2i64: 81 ; X32-SSE: # BB#0: 82 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm2 = xmm1[2,3,0,1] 83 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm3 = [0,2147483648,0,2147483648] 84 ; X32-SSE-NEXT: movdqa %xmm3, %xmm4 85 ; X32-SSE-NEXT: psrlq %xmm2, %xmm4 86 ; X32-SSE-NEXT: movq {{.*#+}} xmm5 = xmm1[0],zero 87 ; X32-SSE-NEXT: psrlq %xmm5, %xmm3 88 ; X32-SSE-NEXT: movsd {{.*#+}} xmm4 = xmm3[0],xmm4[1] [all …]
|
D | vector-shift-lshr-128.ll | 10 …known -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32-SSE --check-prefix=X32-SSE2 61 ; X32-SSE-LABEL: var_shift_v2i64: 62 ; X32-SSE: # BB#0: 63 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm3 = xmm1[2,3,0,1] 64 ; X32-SSE-NEXT: movdqa %xmm0, %xmm2 65 ; X32-SSE-NEXT: psrlq %xmm3, %xmm2 66 ; X32-SSE-NEXT: movq {{.*#+}} xmm1 = xmm1[0],zero 67 ; X32-SSE-NEXT: psrlq %xmm1, %xmm0 68 ; X32-SSE-NEXT: movsd {{.*#+}} xmm2 = xmm0[0],xmm2[1] 69 ; X32-SSE-NEXT: movapd %xmm2, %xmm0 [all …]
|
D | atomic_mi.ll | 2 …RUN: llc < %s -mtriple=i686-unknown-unknown -verify-machineinstrs | FileCheck %s --check-prefix X32 35 ; X32-LABEL: store_atomic_imm_8: 36 ; X32: movb 37 ; X32-NOT: movb 46 ; X32-LABEL: store_atomic_imm_16: 47 ; X32: movw 48 ; X32-NOT: movw 59 ; X32-LABEL: store_atomic_imm_32: 60 ; X32: movl 4(%esp), %eax 61 ; X32: movl [all …]
|
D | v2f32.ll | 3 …RUN: llc < %s -mcpu=yonah -march=x86 -mtriple=i386-linux-gnu -o - | FileCheck %s --check-prefix=X32 14 ; X32-LABEL: test1: 15 ; X32: # BB#0: 16 ; X32-NEXT: movl {{[0-9]+}}(%esp), %eax 17 ; X32-NEXT: movshdup {{.*#+}} xmm1 = xmm0[1,1,3,3] 18 ; X32-NEXT: addss %xmm0, %xmm1 19 ; X32-NEXT: movss %xmm1, (%eax) 20 ; X32-NEXT: retl 34 ; X32-LABEL: test2: 35 ; X32: # BB#0: [all …]
|
D | xor.ll | 1 ; RUN: llc < %s -mtriple=i686-unknown -mattr=+sse2 | FileCheck %s -check-prefix=X32 10 ; X32-LABEL: test1: 11 ; X32: xorps %xmm0, %xmm0 12 ; X32: ret 19 ; X32-LABEL: test2: 20 ; X32: xorl %eax, %eax 21 ; X32: ret 37 ; X32-LABEL: test3: 38 ; X32: movl 8(%esp), %eax 39 ; X32: notl %eax [all …]
|
D | musttail-varargs.ll | 2 … llc < %s -enable-tail-merge=0 -mtriple=x86_64-linux-gnux32 | FileCheck %s --check-prefix=LINUX-X32 61 ; LINUX-X32-LABEL: f_thunk: 62 ; LINUX-X32-DAG: movl %edi, {{.*}} 63 ; LINUX-X32-DAG: movq %rsi, {{.*}} 64 ; LINUX-X32-DAG: movq %rdx, {{.*}} 65 ; LINUX-X32-DAG: movq %rcx, {{.*}} 66 ; LINUX-X32-DAG: movq %r8, {{.*}} 67 ; LINUX-X32-DAG: movq %r9, {{.*}} 68 ; LINUX-X32-DAG: movb %al, {{.*}} 69 ; LINUX-X32-DAG: movaps %xmm0, {{[0-9]*}}(%esp) [all …]
|
D | ssse3-intrinsics-fast-isel.ll | 1 …el -mtriple=i386-unknown-unknown -mattr=ssse3 | FileCheck %s --check-prefix=ALL --check-prefix=X32 7 ; X32-LABEL: test_mm_abs_epi8: 8 ; X32: # BB#0: 9 ; X32-NEXT: pabsb %xmm0, %xmm0 10 ; X32-NEXT: retl 24 ; X32-LABEL: test_mm_abs_epi16: 25 ; X32: # BB#0: 26 ; X32-NEXT: pabsw %xmm0, %xmm0 27 ; X32-NEXT: retl 41 ; X32-LABEL: test_mm_abs_epi32: [all …]
|
D | sse4a-intrinsics-fast-isel.ll | 2 …l -mtriple=i386-unknown-unknown -mattr=+sse4a | FileCheck %s --check-prefix=ALL --check-prefix=X32 8 ; X32-LABEL: test_mm_extracti_si64: 9 ; X32: # BB#0: 10 ; X32-NEXT: extrq $2, $3, %xmm0 11 ; X32-NEXT: retl 23 ; X32-LABEL: test_mm_extract_si64: 24 ; X32: # BB#0: 25 ; X32-NEXT: extrq %xmm1, %xmm0 26 ; X32-NEXT: retl 39 ; X32-LABEL: test_mm_inserti_si64: [all …]
|
D | movgs.ll | 1 … %s -march=x86 -mtriple=i386-linux-gnu -mcpu=penryn -mattr=sse4.1 | FileCheck %s --check-prefix=X32 6 ; X32-LABEL: test1: 7 ; X32: # BB#0: # %entry 8 ; X32-NEXT: movl %gs:196, %eax 9 ; X32-NEXT: movl (%eax), %eax 10 ; X32-NEXT: retl 24 ; X32-LABEL: test2: 25 ; X32: # BB#0: # %entry 26 ; X32-NEXT: subl $12, %esp 27 ; X32-NEXT: movl {{[0-9]+}}(%esp), %eax [all …]
|