use a 'register pressure reducing' scheduler

make sure only one move is used in a hello world


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29520 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2006-08-04 12:48:42 +00:00
parent 6312da0fc7
commit 341b864c8d
2 changed files with 15 additions and 0 deletions

View File

@ -44,6 +44,8 @@ ARMTargetLowering::ARMTargetLowering(TargetMachine &TM)
setOperationAction(ISD::RET, MVT::Other, Custom);
setOperationAction(ISD::GlobalAddress, MVT::i32, Custom);
setOperationAction(ISD::ConstantPool, MVT::i32, Custom);
setSchedulingPreference(SchedulingForRegPressure);
}
namespace llvm {

13
test/CodeGen/ARM/hello.ll Normal file
View File

@ -0,0 +1,13 @@
; RUN: llvm-as < %s | llc -march=arm &&
; RUN: llvm-as < %s | llc -march=arm | grep mov | wc -l | grep 1
%str = internal constant [12 x sbyte] c"Hello World\00" ; <[12 x sbyte]*> [#uses=1]
implementation ; Functions:
int %main() {
entry:
%tmp = call int %puts( sbyte* getelementptr ([12 x sbyte]* %str, int 0, uint 0) ) ; <int> [#uses=0]
ret int 0
}
declare int %puts(sbyte*)