mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-05-16 07:38:43 +00:00
Don't run RAFast in the optimizing regalloc pipeline.
The fast register allocator is not supposed to work in the optimizing pipeline. It doesn't make sense to compute live intervals, run full copy coalescing, and then run RAFast. Fast register allocation in the optimizing pipeline is better done by RABasic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158242 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0f68fbb9e5
commit
6660ed5f2f
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -mtriple=arm-linux-gnueabi -regalloc=fast
|
; RUN: llc < %s -mtriple=arm-linux-gnueabi -regalloc=fast -optimize-regalloc=0
|
||||||
; PR1925
|
; PR1925
|
||||||
|
|
||||||
%struct.encode_aux_nearestmatch = type { i32*, i32*, i32*, i32*, i32, i32 }
|
%struct.encode_aux_nearestmatch = type { i32*, i32*, i32*, i32*, i32, i32 }
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -mtriple=arm-apple-darwin -regalloc=fast
|
; RUN: llc < %s -mtriple=arm-apple-darwin -regalloc=fast -optimize-regalloc=0
|
||||||
; PR1925
|
; PR1925
|
||||||
|
|
||||||
%"struct.kc::impl_Ccode_option" = type { %"struct.kc::impl_abstract_phylum" }
|
%"struct.kc::impl_Ccode_option" = type { %"struct.kc::impl_abstract_phylum" }
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -regalloc=fast -verify-machineinstrs
|
; RUN: llc < %s -regalloc=fast -optimize-regalloc=0 -verify-machineinstrs
|
||||||
target triple = "arm-pc-linux-gnu"
|
target triple = "arm-pc-linux-gnu"
|
||||||
|
|
||||||
; This test case would accidentally use the same physreg for two virtregs
|
; This test case would accidentally use the same physreg for two virtregs
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-a8 -regalloc=fast | FileCheck %s -check-prefix=A8
|
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-a8 -regalloc=fast -optimize-regalloc=0 | FileCheck %s -check-prefix=A8
|
||||||
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-m3 -regalloc=fast | FileCheck %s -check-prefix=M3
|
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-m3 -regalloc=fast -optimize-regalloc=0 | FileCheck %s -check-prefix=M3
|
||||||
; rdar://6949835
|
; rdar://6949835
|
||||||
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-a8 -regalloc=basic | FileCheck %s -check-prefix=BASIC
|
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-a8 -regalloc=basic | FileCheck %s -check-prefix=BASIC
|
||||||
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-a8 -regalloc=greedy | FileCheck %s -check-prefix=GREEDY
|
; RUN: llc < %s -mtriple=thumbv7-apple-ios -mcpu=cortex-a8 -regalloc=greedy | FileCheck %s -check-prefix=GREEDY
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -regalloc=fast
|
; RUN: llc < %s -regalloc=fast -optimize-regalloc=0
|
||||||
|
|
||||||
%struct.CHESS_POSITION = type { i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i32, i32, i8, i8, [64 x i8], i8, i8, i8, i8, i8 }
|
%struct.CHESS_POSITION = type { i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i32, i32, i8, i8, [64 x i8], i8, i8, i8, i8, i8 }
|
||||||
@search = external global %struct.CHESS_POSITION ; <%struct.CHESS_POSITION*> [#uses=2]
|
@search = external global %struct.CHESS_POSITION ; <%struct.CHESS_POSITION*> [#uses=2]
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
; Make sure EdgeBoundles handles the case when the function size is less then
|
; Make sure EdgeBoundles handles the case when the function size is less then
|
||||||
; the number of block IDs.
|
; the number of block IDs.
|
||||||
; RUN: llc -regalloc=fast < %s
|
; RUN: llc -regalloc=fast -optimize-regalloc=0 < %s
|
||||||
|
|
||||||
define void @foo() nounwind {
|
define void @foo() nounwind {
|
||||||
entry:
|
entry:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
; RUN: llc < %s | FileCheck %s
|
; RUN: llc < %s | FileCheck %s
|
||||||
; RUN: llc < %s -regalloc=fast | FileCheck %s
|
; RUN: llc < %s -regalloc=fast -optimize-regalloc=0 | FileCheck %s
|
||||||
; The first argument of subfc must not be the same as any other register.
|
; The first argument of subfc must not be the same as any other register.
|
||||||
|
|
||||||
; CHECK: subfc [[REG:r.]],
|
; CHECK: subfc [[REG:r.]],
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -mtriple=powerpc64-apple-darwin9 -regalloc=fast -relocation-model=pic
|
; RUN: llc < %s -mtriple=powerpc64-apple-darwin9 -regalloc=fast -optimize-regalloc=0 -relocation-model=pic
|
||||||
|
|
||||||
%struct.NSError = type opaque
|
%struct.NSError = type opaque
|
||||||
%struct.NSManagedObjectContext = type opaque
|
%struct.NSManagedObjectContext = type opaque
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -mtriple=powerpc64-apple-darwin9 -regalloc=fast -relocation-model=pic
|
; RUN: llc < %s -mtriple=powerpc64-apple-darwin9 -regalloc=fast -optimize-regalloc=0 -relocation-model=pic
|
||||||
|
|
||||||
%struct.NSError = type opaque
|
%struct.NSError = type opaque
|
||||||
%struct.NSManagedObjectContext = type opaque
|
%struct.NSManagedObjectContext = type opaque
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -mtriple=powerpc-apple-darwin -regalloc=fast
|
; RUN: llc < %s -mtriple=powerpc-apple-darwin -regalloc=fast -optimize-regalloc=0
|
||||||
|
|
||||||
define i32 @bork(i64 %foo, i64 %bar) {
|
define i32 @bork(i64 %foo, i64 %bar) {
|
||||||
entry:
|
entry:
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -march=x86 -mattr=+sse2 -regalloc=fast
|
; RUN: llc < %s -march=x86 -mattr=+sse2 -regalloc=fast -optimize-regalloc=0
|
||||||
|
|
||||||
define void @SolveCubic(double %a, double %b, double %c, double %d, i32* %solutions, double* %x) {
|
define void @SolveCubic(double %a, double %b, double %c, double %d, i32* %solutions, double* %x) {
|
||||||
entry:
|
entry:
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -regalloc=fast -march=x86 -mattr=+mmx | grep esi
|
; RUN: llc < %s -regalloc=fast -optimize-regalloc=0 -march=x86 -mattr=+mmx | grep esi
|
||||||
; PR2082
|
; PR2082
|
||||||
; Local register allocator was refusing to use ESI, EDI, and EBP so it ran out of
|
; Local register allocator was refusing to use ESI, EDI, and EBP so it ran out of
|
||||||
; registers.
|
; registers.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -mtriple=i386-apple-darwin -regalloc=fast
|
; RUN: llc < %s -mtriple=i386-apple-darwin -regalloc=fast -optimize-regalloc=0
|
||||||
|
|
||||||
@_ZTVN10Evaluation10GridOutputILi3EEE = external constant [5 x i32 (...)*] ; <[5 x i32 (...)*]*> [#uses=1]
|
@_ZTVN10Evaluation10GridOutputILi3EEE = external constant [5 x i32 (...)*] ; <[5 x i32 (...)*]*> [#uses=1]
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
; RUN: llc < %s -march=x86 | FileCheck %s
|
; RUN: llc < %s -march=x86 | FileCheck %s
|
||||||
; RUN: llc < %s -march=x86 -regalloc=fast | FileCheck %s
|
; RUN: llc < %s -march=x86 -regalloc=fast -optimize-regalloc=0 | FileCheck %s
|
||||||
|
|
||||||
; %0 must not be put in EAX or EDX.
|
; %0 must not be put in EAX or EDX.
|
||||||
; In the first asm, $0 and $2 must not be put in EAX.
|
; In the first asm, $0 and $2 must not be put in EAX.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -march=x86 -regalloc=fast | FileCheck %s
|
; RUN: llc < %s -march=x86 -regalloc=fast -optimize-regalloc=0 | FileCheck %s
|
||||||
; RUN: llc < %s -march=x86 -regalloc=basic | FileCheck %s
|
; RUN: llc < %s -march=x86 -regalloc=basic | FileCheck %s
|
||||||
; RUN: llc < %s -march=x86 -regalloc=greedy | FileCheck %s
|
; RUN: llc < %s -march=x86 -regalloc=greedy | FileCheck %s
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -march=x86-64 -mtriple=x86_64-linux-gnu -regalloc=fast -relocation-model=pic > %t2
|
; RUN: llc < %s -march=x86-64 -mtriple=x86_64-linux-gnu -regalloc=fast -optimize-regalloc=0 -relocation-model=pic > %t2
|
||||||
; RUN: grep {leaq.*TLSGD} %t2
|
; RUN: grep {leaq.*TLSGD} %t2
|
||||||
; RUN: grep {__tls_get_addr} %t2
|
; RUN: grep {__tls_get_addr} %t2
|
||||||
; PR4004
|
; PR4004
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc -regalloc=fast %s -o %t
|
; RUN: llc -regalloc=fast -optimize-regalloc=0 %s -o %t
|
||||||
; PR7066
|
; PR7066
|
||||||
|
|
||||||
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc -regalloc=fast -verify-machineinstrs < %s
|
; RUN: llc -regalloc=fast -optimize-regalloc=0 -verify-machineinstrs < %s
|
||||||
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
||||||
target triple = "x86_64-apple-darwin"
|
target triple = "x86_64-apple-darwin"
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc -regalloc=fast < %s | FileCheck %s
|
; RUN: llc -regalloc=fast -optimize-regalloc=0 < %s | FileCheck %s
|
||||||
; PR7382
|
; PR7382
|
||||||
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
|
||||||
target triple = "x86_64-unknown-linux-gnu"
|
target triple = "x86_64-unknown-linux-gnu"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: not llc -march x86 -regalloc=fast < %s 2> %t1
|
; RUN: not llc -march x86 -regalloc=fast -optimize-regalloc=0 < %s 2> %t1
|
||||||
; RUN: not llc -march x86 -regalloc=basic < %s 2> %t2
|
; RUN: not llc -march x86 -regalloc=basic < %s 2> %t2
|
||||||
; RUN: not llc -march x86 -regalloc=greedy < %s 2> %t3
|
; RUN: not llc -march x86 -regalloc=greedy < %s 2> %t3
|
||||||
; RUN: FileCheck %s < %t1
|
; RUN: FileCheck %s < %t1
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -regalloc=fast -verify-machineinstrs -mtriple=x86_64-apple-darwin10
|
; RUN: llc < %s -regalloc=fast -optimize-regalloc=0 -verify-machineinstrs -mtriple=x86_64-apple-darwin10
|
||||||
; <rdar://problem/7755473>
|
; <rdar://problem/7755473>
|
||||||
; PR12821
|
; PR12821
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc < %s -march=x86 -mtriple=i386-apple-darwin9 -regalloc=fast | FileCheck %s
|
; RUN: llc < %s -march=x86 -mtriple=i386-apple-darwin9 -regalloc=fast -optimize-regalloc=0 | FileCheck %s
|
||||||
; RUN: llc -O0 < %s -march=x86 -mtriple=i386-apple-darwin9 -regalloc=fast | FileCheck %s
|
; RUN: llc -O0 < %s -march=x86 -mtriple=i386-apple-darwin9 -regalloc=fast | FileCheck %s
|
||||||
; CHECKed instructions should be the same with or without -O0.
|
; CHECKed instructions should be the same with or without -O0.
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
; RUN: llc -mtriple=x86_64-pc-linux %s -o - -regalloc=fast | FileCheck %s
|
; RUN: llc -mtriple=x86_64-pc-linux %s -o - -regalloc=fast -optimize-regalloc=0 | FileCheck %s
|
||||||
|
|
||||||
; We used to consider the early clobber in the second asm statement as
|
; We used to consider the early clobber in the second asm statement as
|
||||||
; defining %0 before it was read. This caused us to omit the
|
; defining %0 before it was read. This caused us to omit the
|
||||||
|
Loading…
x
Reference in New Issue
Block a user