Changes in directory llvm/lib/Target/SparcV8:
SparcV8TargetMachine.cpp updated: 1.33 -> 1.34 --- Log message: Run lower-switch after lower-invoke. Only run lower-allocations and lower-select for the simple isel --- Diffs of the changes: (+10 -12) SparcV8TargetMachine.cpp | 22 ++++++++++------------ 1 files changed, 10 insertions(+), 12 deletions(-) Index: llvm/lib/Target/SparcV8/SparcV8TargetMachine.cpp diff -u llvm/lib/Target/SparcV8/SparcV8TargetMachine.cpp:1.33 llvm/lib/Target/SparcV8/SparcV8TargetMachine.cpp:1.34 --- llvm/lib/Target/SparcV8/SparcV8TargetMachine.cpp:1.33 Sat Dec 17 01:47:01 2005 +++ llvm/lib/Target/SparcV8/SparcV8TargetMachine.cpp Tue Dec 20 02:00:11 2005 @@ -73,28 +73,25 @@ // FIXME: Implement efficient support for garbage collection intrinsics. PM.add(createLowerGCPass()); - // Replace malloc and free instructions with library calls. - PM.add(createLowerAllocationsPass()); - - // FIXME: implement the switch instruction in the instruction selector. - PM.add(createLowerSwitchPass()); + // Make sure that no unreachable blocks are instruction selected. + PM.add(createUnreachableBlockEliminationPass()); // FIXME: implement the invoke/unwind instructions! PM.add(createLowerInvokePass()); - // Make sure that no unreachable blocks are instruction selected. - PM.add(createUnreachableBlockEliminationPass()); - - // FIXME: implement the select instruction in the instruction selector. - PM.add(createLowerSelectPass()); + // FIXME: implement the switch instruction in the instruction selector. + PM.add(createLowerSwitchPass()); // Print LLVM code input to instruction selector: if (PrintMachineCode) PM.add(new PrintFunctionPass()); - if (DisableV8DAGDAG) + if (DisableV8DAGDAG) { + // Replace malloc and free instructions with library calls. + PM.add(createLowerAllocationsPass()); + PM.add(createLowerSelectPass()); PM.add(createSparcV8SimpleInstructionSelector(*this)); - else + } else PM.add(createSparcV8ISelDag(*this)); // Print machine instructions as they were initially generated. @@ -110,6 +107,7 @@ PM.add(createMachineFunctionPrinterPass(&std::cerr)); PM.add(createSparcV8FPMoverPass(*this)); + PM.add(createSparcV8DelaySlotFillerPass(*this)); // Print machine instructions after filling delay slots. _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits