Make LLI behave just like LLC with regard to the compile passes it uses.

llvm-svn: 6444
This commit is contained in:
Misha Brukman 2003-05-30 20:00:13 +00:00
parent fdb2f4b7cd
commit c1830a472a
1 changed files with 15 additions and 0 deletions

View File

@ -208,8 +208,20 @@ bool UltraSparc::addPassesToJITCompile(PassManager &PM) {
//so %fp+offset-8 and %fp+offset-16 are empty slots now!
PM.add(createStackSlotsPass(*this));
// Specialize LLVM code for this target machine and then
// run basic dataflow optimizations on LLVM code.
if (!DisablePreSelect) {
PM.add(createPreSelectionPass(*this));
PM.add(createReassociatePass());
PM.add(createLICMPass());
PM.add(createGCSEPass());
}
PM.add(createInstructionSelectionPass(*this));
if (!DisableSched)
PM.add(createInstructionSchedulingWithSSAPass(*this));
// new pass: convert Value* in MachineOperand to an unsigned register
// this brings it in line with what the X86 JIT's RegisterAllocator expects
//PM.add(createAddRegNumToValuesPass());
@ -217,5 +229,8 @@ bool UltraSparc::addPassesToJITCompile(PassManager &PM) {
PM.add(getRegisterAllocator(*this));
PM.add(getPrologEpilogInsertionPass());
if (!DisablePeephole)
PM.add(createPeepholeOptsPass(*this));
return false; // success!
}