mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-19 20:34:38 +00:00
Prepare remaining tests for -join-physreg going away.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130893 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
4f5de9bb40
commit
49b2803ec2
@ -4,7 +4,7 @@
|
||||
|
||||
; CHECK: ## InlineAsm End
|
||||
; CHECK-NEXT: BB0_2:
|
||||
; CHECK-NEXT: movl %esi, %eax
|
||||
; CHECK-NEXT: {{movl %esi, %eax|addl %edi, %esi}}
|
||||
|
||||
|
||||
@"\01LC" = internal constant [7 x i8] c"n0=%d\0A\00" ; <[7 x i8]*> [#uses=1]
|
||||
|
@ -28,5 +28,5 @@ lpad: ; preds = %cont, %entry
|
||||
}
|
||||
|
||||
; CHECK: call{{.*}}f
|
||||
; CHECK-NEXT: Ltmp0:
|
||||
; CHECK-NEXT: movl %eax, %esi
|
||||
; CHECK: movl %eax, %esi
|
||||
; CHECK: call{{.*}}g
|
||||
|
@ -12,16 +12,16 @@
|
||||
; RUN: llc < %s -asm-verbose=0 -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=dynamic-no-pic -code-model=small | FileCheck %s -check-prefix=DARWIN-64-DYNAMIC
|
||||
; RUN: llc < %s -asm-verbose=0 -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=pic -code-model=small | FileCheck %s -check-prefix=DARWIN-64-PIC
|
||||
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=i686-unknown-linux-gnu -march=x86 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=LINUX-32-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=i686-unknown-linux-gnu -march=x86 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=LINUX-32-PIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=x86_64-unknown-linux-gnu -march=x86-64 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=LINUX-64-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=x86_64-unknown-linux-gnu -march=x86-64 -relocation-model=pic -code-model=small | FileCheck %s -check-prefix=LINUX-64-PIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=i686-apple-darwin -march=x86 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=DARWIN-32-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=i686-apple-darwin -march=x86 -relocation-model=dynamic-no-pic -code-model=small | FileCheck %s -check-prefix=DARWIN-32-DYNAMIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=i686-apple-darwin -march=x86 -relocation-model=pic -code-model=small | FileCheck %s -check-prefix=DARWIN-32-PIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=DARWIN-64-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=dynamic-no-pic -code-model=small | FileCheck %s -check-prefix=DARWIN-64-DYNAMIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=pic -code-model=small | FileCheck %s -check-prefix=DARWIN-64-PIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=i686-unknown-linux-gnu -march=x86 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=LINUX-32-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=i686-unknown-linux-gnu -march=x86 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=LINUX-32-PIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=x86_64-unknown-linux-gnu -march=x86-64 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=LINUX-64-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=x86_64-unknown-linux-gnu -march=x86-64 -relocation-model=pic -code-model=small | FileCheck %s -check-prefix=LINUX-64-PIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=i686-apple-darwin -march=x86 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=DARWIN-32-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=i686-apple-darwin -march=x86 -relocation-model=dynamic-no-pic -code-model=small | FileCheck %s -check-prefix=DARWIN-32-DYNAMIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=i686-apple-darwin -march=x86 -relocation-model=pic -code-model=small | FileCheck %s -check-prefix=DARWIN-32-PIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=static -code-model=small | FileCheck %s -check-prefix=DARWIN-64-STATIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=dynamic-no-pic -code-model=small | FileCheck %s -check-prefix=DARWIN-64-DYNAMIC
|
||||
; RUN: llc < %s -asm-verbose=0 -regalloc=basic -join-physregs -mtriple=x86_64-apple-darwin -march=x86-64 -relocation-model=pic -code-model=small | FileCheck %s -check-prefix=DARWIN-64-PIC
|
||||
|
||||
@src = external global [131072 x i32]
|
||||
@dst = external global [131072 x i32]
|
||||
|
@ -1,6 +1,8 @@
|
||||
; RUN: llc < %s -march=x86 | FileCheck %s -check-prefix=X32
|
||||
; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s -check-prefix=X64
|
||||
; RUN: llc < %s -mtriple=x86_64-win32 | FileCheck %s -check-prefix=X64
|
||||
; RUN: llc < %s -mtriple=x86_64-linux -join-physregs | FileCheck %s -check-prefix=X64
|
||||
; RUN: llc < %s -mtriple=x86_64-win32 -join-physregs | FileCheck %s -check-prefix=X64
|
||||
|
||||
; Some of these tests depend on -join-physregs to commute instructions.
|
||||
|
||||
; The immediate can be encoded in a smaller way if the
|
||||
; instruction is a sub instead of an add.
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llc < %s -march=x86-64 -mtriple=x86_64-pc-linux-gnu -show-mc-encoding | FileCheck %s
|
||||
; RUN: llc < %s -march=x86-64 -mtriple=x86_64-pc-linux-gnu -show-mc-encoding -join-physregs | FileCheck %s
|
||||
|
||||
; PR8365
|
||||
; CHECK: andl $-64, %edi # encoding: [0x83,0xe7,0xc0]
|
||||
|
@ -9,7 +9,6 @@ entry:
|
||||
; CHECK: main:
|
||||
; CHECK: movl $1, (%esp)
|
||||
; CHECK: leal 16(%esp), %edi
|
||||
; CHECK: movl $36, %ecx
|
||||
; CHECK: leal 160(%esp), %esi
|
||||
; CHECK: rep;movsl
|
||||
%s = alloca %struct.S ; <%struct.S*> [#uses=2]
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=x86_64-linux -join-physregs | FileCheck %s
|
||||
; CHECK-NOT: mov
|
||||
; CHECK: paddw
|
||||
; CHECK-NOT: mov
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: llc -mtriple=x86_64-apple-darwin10 < %s | FileCheck %s
|
||||
; RUN: llc -mtriple=x86_64-apple-darwin10 -regalloc=basic < %s | FileCheck %s
|
||||
; RUN: llc -mtriple=x86_64-apple-darwin10 -regalloc=basic -join-physregs < %s | FileCheck %s
|
||||
|
||||
%struct.a = type { i32 }
|
||||
|
||||
|
@ -41,14 +41,13 @@ for.end: ; preds = %for.body, %entry
|
||||
|
||||
; CHECK: jle
|
||||
; CHECK-NOT: cmov
|
||||
; CHECK: xorl {{%edi, %edi|%ecx, %ecx}}
|
||||
; CHECK: xorl {{%edi, %edi|%ecx, %ecx|%eax, %eax}}
|
||||
; CHECK-NEXT: align
|
||||
; CHECK-NEXT: BB1_2:
|
||||
; CHECK-NEXT: callq
|
||||
; CHECK: callq
|
||||
; CHECK-NEXT: incl [[BX:%[a-z0-9]+]]
|
||||
; CHECK-NEXT: cmpl [[R14:%[a-z0-9]+]], [[BX]]
|
||||
; CHECK-NEXT: movq %rax, %r{{di|cx}}
|
||||
; CHECK-NEXT: jl
|
||||
; CHECK: jl
|
||||
|
||||
define void @_Z18GenerateStatusPagei(i32 %jobs_to_display) nounwind {
|
||||
entry:
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llc < %s -march=x86 | grep mov | count 4
|
||||
; RUN: llc < %s -march=x86 | FileCheck %s
|
||||
; PR2659
|
||||
|
||||
define i32 @binomial(i32 %n, i32 %k) nounwind {
|
||||
@ -12,7 +12,8 @@ forcond.preheader: ; preds = %entry
|
||||
|
||||
ifthen: ; preds = %entry
|
||||
ret i32 0
|
||||
|
||||
; CHECK: forbody
|
||||
; CHECK-NOT: mov
|
||||
forbody: ; preds = %forbody, %forcond.preheader
|
||||
%indvar = phi i32 [ 0, %forcond.preheader ], [ %divisor.02, %forbody ] ; <i32> [#uses=3]
|
||||
%accumulator.01 = phi i32 [ 1, %forcond.preheader ], [ %div, %forbody ] ; <i32> [#uses=1]
|
||||
|
@ -1,6 +1,11 @@
|
||||
; RUN: llc < %s -mtriple=i386-apple-darwin | FileCheck %s
|
||||
; RUN: llc < %s -mtriple=i386-apple-darwin -join-physregs | FileCheck %s
|
||||
; rdar://5571034
|
||||
|
||||
; This requires physreg joining, %vreg13 is live everywhere:
|
||||
; 304L %CL<def> = COPY %vreg13:sub_8bit; GR32_ABCD:%vreg13
|
||||
; 320L %vreg15<def> = COPY %vreg19; GR32:%vreg15 GR32_NOSP:%vreg19
|
||||
; 336L %vreg15<def> = SAR32rCL %vreg15, %EFLAGS<imp-def,dead>, %CL<imp-use,kill>; GR32:%vreg15
|
||||
|
||||
define void @foo(i32* nocapture %quadrant, i32* nocapture %ptr, i32 %bbSize, i32 %bbStart, i32 %shifts) nounwind ssp {
|
||||
; CHECK: foo:
|
||||
entry:
|
||||
|
@ -1,7 +1,9 @@
|
||||
; RUN: llc < %s -march=x86 -mattr=sse41 -stack-alignment=16 > %t
|
||||
; RUN: llc < %s -march=x86 -mattr=sse41 -stack-alignment=16 -join-physregs > %t
|
||||
; RUN: grep pmul %t | count 12
|
||||
; RUN: grep mov %t | count 11
|
||||
|
||||
; The f() arguments in %xmm0 and %xmm1 cause an extra movdqa without -join-physregs.
|
||||
|
||||
define <4 x i32> @a(<4 x i32> %i) nounwind {
|
||||
%A = mul <4 x i32> %i, < i32 117, i32 117, i32 117, i32 117 >
|
||||
ret <4 x i32> %A
|
||||
|
@ -1,5 +1,4 @@
|
||||
; RUN: llc < %s -march=x86 -mtriple=i686-apple-darwin9.4.0 | grep movl | count 4
|
||||
; RUN: llc < %s -march=x86 -mtriple=i686-apple-darwin9.4.0 | FileCheck %s
|
||||
; RUN: llc < %s -march=x86 -mtriple=i686-apple-darwin9.4.0 -disable-branch-fold | FileCheck %s
|
||||
; PR2659
|
||||
|
||||
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
|
||||
@ -19,7 +18,11 @@ forcond.preheader: ; preds = %entry
|
||||
; CHECK-NOT: xorl
|
||||
; CHECK-NOT: movl
|
||||
; CHECK-NOT: LBB
|
||||
; CHECK: je
|
||||
; CHECK: jne
|
||||
|
||||
; There should be no moves required in the for loop body.
|
||||
; CHECK: %forbody
|
||||
; CHECK-NOT: mov
|
||||
|
||||
ifthen: ; preds = %entry
|
||||
ret i32 0
|
||||
|
@ -229,7 +229,7 @@ entry:
|
||||
; 64: t14:
|
||||
; 64: movq 32(%rdi)
|
||||
; 64-NOT: movq 16(%rdi)
|
||||
; 64: jmpq *16(%rdi)
|
||||
; 64: jmpq *16({{%rdi|%rax}})
|
||||
%0 = getelementptr inbounds %struct.__block_literal_2* %.block_descriptor, i64 0, i32 5 ; <void ()**> [#uses=1]
|
||||
%1 = load void ()** %0, align 8 ; <void ()*> [#uses=2]
|
||||
%2 = bitcast void ()* %1 to %struct.__block_literal_1* ; <%struct.__block_literal_1*> [#uses=1]
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: llc < %s -march=x86-64 -asm-verbose=false | FileCheck %s
|
||||
; RUN: llc < %s -march=x86-64 -asm-verbose=false -enable-unsafe-fp-math -enable-no-nans-fp-math | FileCheck -check-prefix=UNSAFE %s
|
||||
; RUN: llc < %s -march=x86-64 -asm-verbose=false -enable-no-nans-fp-math | FileCheck -check-prefix=FINITE %s
|
||||
; RUN: llc < %s -march=x86-64 -asm-verbose=false -join-physregs | FileCheck %s
|
||||
; RUN: llc < %s -march=x86-64 -asm-verbose=false -join-physregs -enable-unsafe-fp-math -enable-no-nans-fp-math | FileCheck -check-prefix=UNSAFE %s
|
||||
; RUN: llc < %s -march=x86-64 -asm-verbose=false -join-physregs -enable-no-nans-fp-math | FileCheck -check-prefix=FINITE %s
|
||||
|
||||
; Some of these patterns can be matched as SSE min or max. Some of
|
||||
; then can be matched provided that the operands are swapped.
|
||||
@ -12,6 +12,9 @@
|
||||
; y_ : use -0.0 instead of %y
|
||||
; _inverse : swap the arms of the select.
|
||||
|
||||
; Some of these tests depend on -join-physregs commuting instructions to
|
||||
; eliminate copies.
|
||||
|
||||
; CHECK: ogt:
|
||||
; CHECK-NEXT: maxsd %xmm1, %xmm0
|
||||
; CHECK-NEXT: ret
|
||||
|
Loading…
x
Reference in New Issue
Block a user