/llvm-project/llvm/test/CodeGen/X86/ |
H A D | isel-brcond-fcmp.ll | 2 … RUN: llc < %s -global-isel=0 -mtriple=x86_64-apple-darwin10 | FileCheck %s --c… 3 …st-isel-abort=1 -mtriple=x86_64-apple-darwin10 | FileCheck %s --check-prefixes=X64,FASTISEL-X64 4 …-isel -global-isel-abort=1 -mtriple=x86_64-apple-darwin10 | FileCheck %s --check-prefixes=GISEL-X64 7 ; X64-LABEL: fcmp_oeq: 8 ; X64: ## %bb.0: 9 ; X64-NEXT: ucomiss %xmm1, %xmm0 10 ; X64-NEXT: jne LBB0_1 11 ; X64-NEXT: jp LBB0_1 12 ; X64-NEXT: ## %bb.2: ## %bb1 13 ; X64-NEXT: xorl %eax, %eax [all …]
|
H A D | memcmp-more-load-pairs.ll | 3 ; RUN: llc -max-loads-per-memcmp=4 -memcmp-num-loads-per-block=4 < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefixes=X64,X64-SSE,X64-SSE2 4 ; RUN: llc -max-loads-per-memcmp=4 -memcmp-num-loads-per-block=4 < %s -mtriple=x86_64-unknown-unknown -mattr=sse4.1 | FileCheck %s --check-prefixes=X64,X64-SSE,X64-SSE41 5 ; RUN: llc -max-loads-per-memcmp=4 -memcmp-num-loads-per-block=4 < %s -mtriple=x86_64-unknown-unknown -mattr=avx | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX1 6 ; RUN: llc -max-loads-per-memcmp=4 -memcmp-num-loads-per-block=4 < %s -mtriple=x86_64-unknown-unknown -mattr=avx2 | FileCheck %s --check-prefixes=X64,X6 [all...] |
H A D | memcmp.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefixes=X64,X64-SSE,X64-SSE2 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=sse4.1 | FileCheck %s --check-prefixes=X64,X64-SSE,X64-SSE41 4 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=avx | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX1 5 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=avx2 | FileCheck %s --check-prefixes=X64,X6 [all...] |
H A D | memcmp-optsize.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefixes=X64,X64-SSE2 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=avx | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX1 4 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=avx2 | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX2 15 ; X64-LABEL: length2: 16 ; X64 [all...] |
H A D | memcmp-pgso.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefixes=X64,X64-SSE2 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=avx | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX1 4 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=avx2 | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX2 15 ; X64-LABEL: length2: 16 ; X64 [all...] |
H A D | speculative-load-hardening.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu | FileCheck %s --check-prefix=X64 3 ; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -x86-slh-lfence | FileCheck %s --check-prefix=X64-LFENCE 12 ; X64-LABEL: test_trivial_entry_load: 13 ; X64: # %bb.0: # %entry 14 ; X64-NEXT: movq %rsp, %rcx 15 ; X64-NEXT: movq $-1, %rax 16 ; X64-NEXT: sarq $63, %rcx 17 ; X64-NEXT: movl (%rdi), %eax 18 ; X64 [all...] |
H A D | memcmp-minsize.ll | 2 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefixes=X64,X64-SSE2 3 … %s -mtriple=x86_64-unknown-unknown -mattr=avx | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX1 4 …%s -mtriple=x86_64-unknown-unknown -mattr=avx2 | FileCheck %s --check-prefixes=X64,X64-AVX,X64-AVX2 14 ; X64-LABEL: length2: 15 ; X64: # %bb.0: 16 ; X64-NEXT: pushq $2 17 ; X64-NEXT: popq %rdx 18 ; X64-NEXT: jmp memcmp # TAILCALL 24 ; X64-LABEL: length2_eq: 25 ; X64: # %bb.0: [all …]
|
H A D | divrem-by-select.ll | 2 …riple=x86_64-unknown-unknown -mcpu=x86-64-v3 | FileCheck %s --check-prefixes=CHECK-X64,CHECK-X64-V3 3 …riple=x86_64-unknown-unknown -mcpu=x86-64-v4 | FileCheck %s --check-prefixes=CHECK-X64,CHECK-X64-V4 6 ; CHECK-X64-V3-LABEL: udiv_identity_const: 7 ; CHECK-X64-V3: # %bb.0: 8 ; CHECK-X64-V3-NEXT: vpsllq $63, %xmm0, %xmm0 9 ; CHECK-X64-V3-NEXT: vmovddup {{.*#+}} xmm2 = [1,1] 10 ; CHECK-X64-V3-NEXT: # xmm2 = mem[0,0] 11 ; CHECK-X64-V3-NEXT: vblendvpd %xmm0, {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm2, %xmm0 12 ; CHECK-X64-V3-NEXT: vpextrq $1, %xmm0, %rcx 13 ; CHECK-X64-V3-NEXT: vpextrq $1, %xmm1, %rax [all …]
|
H A D | mul-constant-i8.ll | 2 ; RUN: llc < %s -mtriple=x86_64-- | FileCheck %s --check-prefix=X64 5 ; X64-LABEL: test_mul_by_1: 6 ; X64: # %bb.0: 7 ; X64-NEXT: movl %edi, %eax 8 ; X64-NEXT: # kill: def $al killed $al killed $eax 9 ; X64-NEXT: retq 15 ; X64-LABEL: test_mul_by_2: 16 ; X64: # %bb.0: 17 ; X64-NEXT: # kill: def $edi killed $edi def $rdi 18 ; X64-NEXT: leal (%rdi,%rdi), %eax [all …]
|
H A D | segmented-stacks.ll | 3 …s -mcpu=generic -mtriple=x86_64-linux -verify-machineinstrs | FileCheck %s -check-prefix=X64-Linux 4 …e=x86_64-linux -code-model=large -verify-machineinstrs | FileCheck %s -check-prefix=X64-Linux-Large 7 … -mcpu=generic -mtriple=x86_64-darwin -verify-machineinstrs | FileCheck %s -check-prefix=X64-Darwin 9 …mcpu=generic -mtriple=x86_64-freebsd -verify-machineinstrs | FileCheck %s -check-prefix=X64-FreeBSD 11 …pu=generic -mtriple=x86_64-dragonfly -verify-machineinstrs | FileCheck %s -check-prefix=X64-DFlyBSD 12 … -mcpu=generic -mtriple=x86_64-mingw32 -verify-machineinstrs | FileCheck %s -check-prefix=X64-MinGW 27 ; RUN: FileCheck %s -input-file=%t.log -check-prefix=X64-Solaris 31 ; X64-Solaris: Segmented stacks not supported on this platform 37 define void @test_basic() #0 { 39 ; X86-Linux: # %bb.0: [all …]
|
H A D | shift-mask.ll | 3 ; RUN: llc < %s -mtriple=x86_64-pc-linux | FileCheck %s --check-prefixes=X64,X64-MASK 4 …< %s -mtriple=x86_64-pc-linux -mcpu=bdver1 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-SHIFT2 5 …lc < %s -mtriple=x86_64-pc-linux -mcpu=bdver2 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-TBM 6 …lc < %s -mtriple=x86_64-pc-linux -mcpu=bdver3 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-TBM 7 …lc < %s -mtriple=x86_64-pc-linux -mcpu=bdver4 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-TBM 8 …< %s -mtriple=x86_64-pc-linux -mcpu=btver1 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-SHIFT2 9 …mtriple=x86_64-pc-linux -mcpu=btver2 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-BMI,X64-BMI1 10 …mtriple=x86_64-pc-linux -mcpu=znver1 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-BMI,X64-BMI2 11 …mtriple=x86_64-pc-linux -mcpu=znver2 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-BMI,X64-BMI2 12 …4-pc-linux -mattr=+fast-scalar-shift-masks | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-SHIFT2 [all …]
|
H A D | win-catchpad-csrs.ll | 2 …N: llc -verify-machineinstrs -mtriple=x86_64-pc-windows-msvc < %s | FileCheck --check-prefix=X64 %s 30 ret i32 0 36 %h1 = catchpad within %cs [ptr @"\01??_R0H@8", i32 0, ptr null] 47 ; X86: subl ${{[0-9]+}}, %esp 53 ; X86: movl $0, -{{[0-9]+}}(%ebp) 56 ; X86: [[contbb:LBB0_[0-9]+]]: # %try.cont 63 ; X86: [[restorebb:LBB0_[0-9]+]]: 67 ; X86: "?catch$[[catch1bb:[0-9]+]]@?0?try_catch_catch@4HA": 73 ; X86: movl $1, -{{[0-9]+}}(%ebp) 82 ; X86: $handlerMap$0$try_catch_catch: [all …]
|
H A D | mul-constant-i32.ll | 3 …-unknown -mcpu=haswell | FileCheck %s --check-prefixes=X64,X64-HSW 4 …-unknown -mcpu=btver2 | FileCheck %s --check-prefixes=X64,X64-JAG 6 … -mul-constant-optimization=false -mcpu=haswell | FileCheck %s --check-prefixes=X64-NOOPT,HSW-NOOPT 7 … -mul-constant-optimization=false -mcpu=btver2 | FileCheck %s --check-prefixes=X64-NOOPT,JAG-NOOPT 8 …-unknown -mcpu=slm | FileCheck %s --check-prefixes=X64,X64-SLM 9 … -mul-constant-optimization=false -mcpu=slm | FileCheck %s --check-prefixes=X64-NOOPT,SLM-NOOPT 13 ; X86: # %bb.0: 14 ; X86-NEXT: movl {{[0-9]+}}(%esp), %eax 17 ; X64-LABEL: test_mul_by_1: 18 ; X64: # %bb.0: [all …]
|
H A D | fpenv-combine.ll | 2 …: llc -mtriple=x86_64-unknown-linux-gnu -verify-machineinstrs < %s | FileCheck %s -check-prefix=X64 10 define void @get_fpenv_02(ptr %ptr1, ptr %ptr2) #0 { 11 ; X64-LABEL: get_fpenv_02: 12 ; X64: # %bb.0: 13 ; X64-NEXT: pushq %r14 14 ; X64-NEXT: pushq %rbx 15 ; X64-NEXT: subq $40, %rsp 16 ; X64-NEXT: movq %rsi, %rbx 17 ; X64-NEXT: movq %rdi, %r14 18 ; X64-NEXT: movq %rsp, %rdi [all …]
|
H A D | cmp16.ll | 3 ; RUN: llc < %s -mtriple=x86_64-- | FileCheck %s --check-prefixes=X64,X64-GENERIC 5 ; RUN: llc < %s -mtriple=x86_64-- -mattr=+fast-imm16 | FileCheck %s --check-prefixes=X64,X64-FAST 7 ; RUN: llc < %s -mtriple=x86_64-- -mcpu=atom | FileCheck %s --check-prefixes=X64,X64-ATOM 8 ; RUN: llc < %s -mtriple=x86_64-- -mcpu=slm | FileCheck %s --check-prefixes=X64,X64-FAST 9 ; RUN: llc < %s -mtriple=x86_64-- -mcpu=knl | FileCheck %s --check-prefixes=X64,X64 [all...] |
H A D | is_fpclass.ll | 3 ; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s -check-prefixes=X64,X64-GENERIC 4 ; RUN: llc < %s -mtriple=x86_64-linux -mattr=+ndd | FileCheck %s -check-prefixes=X64,X64-NDD 8 ; X86: # %bb.0: # %entry 9 ; X86-NEXT: flds {{[0-9]+}}(%esp) 10 ; X86-NEXT: fucomp %st(0) 17 ; X64-LABEL: isnan_f: 18 ; X64: # %bb.0 [all...] |
H A D | speculative-load-hardening-indirect.ll | 7 …-unknown-linux-gnu -x86-speculative-load-hardening -data-sections | FileCheck %s --check-prefix=X64 8 ; FIXME: Fix machine verifier issues and remove -verify-machineinstrs=0. PR39451. 9 … -relocation-model pic -data-sections -verify-machineinstrs=0 | FileCheck %s --check-prefix=X64-PIC 10 …ulative-load-hardening -data-sections -mattr=+retpoline | FileCheck %s --check-prefix=X64-RETPOLINE 24 ; X64-LABEL: test_indirect_call: 25 ; X64: # %bb.0: # %entry 26 ; X64-NEXT: pushq %rbx 27 ; X64-NEXT: movq %rsp, %rax 28 ; X64-NEXT: movq $-1, %rbx 29 ; X64-NEXT: sarq $63, %rax [all …]
|
H A D | isel-shift.ll | 5 ; RUN: llc < %s -mtriple=x86_64-apple-darwin10 | FileCheck %s --check-prefixes=X64,SDAG,SDAG-X64 6 …86_64-apple-darwin10 -fast-isel -fast-isel-abort=1 | FileCheck %s --check-prefixes=X64,FASTISEL-X64 7 …6_64-apple-darwin10 -global-isel -global-isel-abort=1 | FileCheck %s --check-prefixes=X64,GISEL-X64 11 ; X86: ## %bb.0: 12 ; X86-NEXT: movzbl {{[0-9]+}}(%esp), %ecx 13 ; X86-NEXT: movzbl {{[0-9]+}}(%esp), %eax 17 ; SDAG-X64-LABEL: shl_i8: 18 ; SDAG-X64: ## %bb.0: 19 ; SDAG-X64-NEXT: movl %esi, %ecx 20 ; SDAG-X64-NEXT: movl %edi, %eax [all …]
|
H A D | win-catchpad.ll | 1 ; RUN: llc -stack-symbol-ordering=0 -verify-machineinstrs -mtriple=i686-pc-windows-msvc < %s | File… 2 …UN: llc -stack-symbol-ordering=0 -verify-machineinstrs -mtriple=x86_64-pc-windows-msvc < %s | File… 42 %h1 = catchpad within %cs [ptr @"\01??_R0H@8", i32 0, ptr %e.addr] 53 ret i32 0 57 ; X86: movl %esp, -[[sp_offset:[0-9]+]](%ebp) 58 ; X86: movl $0, -{{[0-9]+}}(%ebp) 59 ; X86: leal -[[local_offs:[0-9]+]](%ebp), %[[addr_reg:[a-z]+]] 63 ; X86: [[contbb:LBB0_[0-9]+]]: # %try.cont 67 ; X86: [[restorebb1:LBB0_[0-9]+]]: # Block address taken 72 ; X86: [[restorebb2:LBB0_[0-9]+]]: # Block address taken [all …]
|
H A D | xor.ll | 3 ; RUN: llc < %s -mtriple=x86_64-linux -mattr=+sse2 | FileCheck %s --check-prefixes=CHECK,X64-LIN 4 ; RUN: llc < %s -mtriple=x86_64-win32 -mattr=+sse2 | FileCheck %s --check-prefixes=CHECK,X64-WIN 9 ; CHECK: # %bb.0: 19 ; CHECK: # %bb.0: 28 ; X86: # %bb.0: # %entry 29 ; X86-NEXT: movl {{[0-9]+}}(%esp), %eax 31 ; X86-NEXT: andl {{[0-9]+}}(%esp), %eax 35 ; X64-LIN-LABEL: test3: 36 ; X64-LIN: # %bb.0 [all...] |
H A D | const-shift-of-constmasked.ll | 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=X64 15 ; X86: # %bb.0: 16 ; X86-NEXT: movzbl {{[0-9]+}}(%esp), %eax 21 ; X64-LABEL: test_i8_7_mask_lshr_1: 22 ; X64: # %bb.0: 23 ; X64-NEXT: movl %edi, %eax 24 ; X64-NEXT: andb $6, %al 25 ; X64-NEXT: shrb %al 26 ; X64-NEXT: # kill: def $al killed $al killed $eax 27 ; X64-NEXT: retq [all …]
|
H A D | vector-mul.ll | 4 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2 | FileCheck %s --check-prefixes=SSE,SSE2,X64-SSE,X64-SSE2 5 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse4.2,-slow-pmulld | FileCheck %s --check-prefixes=SSE,SSE4,X64-SSE,X64-SSE4,X64-SSE4-FAST 6 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse4.2,+slow-pmulld | FileCheck %s --check-prefixes=SSE,SSE4,X64-SSE,X64-SSE4,X64-SSE4-SLOW 7 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+xop | FileCheck %s --check-prefixes=X64-AVX,X64 [all...] |
H A D | fp128-cast.ll | 2 ; RUN: llc < %s -O2 -mtriple=x86_64-linux-android -mattr=+sse | FileCheck %s --check-prefix=X64-SSE 3 ; RUN: llc < %s -O2 -mtriple=x86_64-linux-gnu -mattr=+sse | FileCheck %s --check-prefix=X64-SSE 5 ; RUN: llc < %s -O2 -mtriple=x86_64-linux-android -mattr=+avx | FileCheck %s --check-prefix=X64-AVX 6 ; RUN: llc < %s -O2 -mtriple=x86_64-linux-gnu -mattr=+avx | FileCheck %s --check-prefix=X64-AVX 7 ; RUN: llc < %s -O2 -mtriple=x86_64-linux-android -mattr=+avx512f | FileCheck %s --check-prefix=X64… 8 ; RUN: llc < %s -O2 -mtriple=x86_64-linux-gnu -mattr=+avx512f | FileCheck %s --check-prefix=X64-AVX 12 @vi16 = common dso_local global i16 0, align 2 13 @vi32 = common dso_local global i32 0, align 4 14 @vi64 = common dso_local global i64 0, align 8 15 @vi128 = common dso_local global i128 0, align 16 [all …]
|
H A D | atomic16.ll | 1 …nown-unknown -mcpu=corei7 -verify-machineinstrs -show-mc-encoding | FileCheck %s --check-prefix X64 8 ; X64-LABEL: atomic_fetch_add16 13 ; X64: lock 14 ; X64: incw 18 ; X64: lock 19 ; X64: addw $3, {{.*}} # encoding: [0x66,0xf0 23 ; X64: lock 24 ; X64: xaddw {{.*}} # encoding: [0x66,0xf0 28 ; X64: lock 29 ; X64: addw {{.*}} # encoding: [0x66,0xf0 [all …]
|
H A D | known-never-zero.ll | 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+avx | FileCheck %s --check-prefixes=X64 26 ; X86: # %bb.0: 27 ; X86-NEXT: movl {{[0-9]+}}(%esp), %eax 32 ; X64-LABEL: or_known_nonzero: 33 ; X64: # %bb.0: 34 ; X64-NEXT: orl $1, %edi 35 ; X64-NEXT: rep bsfl %edi, %eax 36 ; X64-NEXT: retq 44 ; X86: # %bb.0 [all...] |