From: Chris Lattner Date: Sun, 15 Jan 2006 07:19:53 +0000 (+0000) Subject: reorder passes X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=7c419078876ca16ec82d4ddc5301f8fdaf0fe39e;p=oota-llvm.git reorder passes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25326 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/Sparc/SparcTargetMachine.cpp b/lib/Target/Sparc/SparcTargetMachine.cpp index fbe353fc051..08e38fc7a36 100644 --- a/lib/Target/Sparc/SparcTargetMachine.cpp +++ b/lib/Target/Sparc/SparcTargetMachine.cpp @@ -73,9 +73,6 @@ bool SparcV8TargetMachine::addPassesToEmitFile(PassManager &PM, // FIXME: Implement efficient support for garbage collection intrinsics. PM.add(createLowerGCPass()); - // Make sure that no unreachable blocks are instruction selected. - PM.add(createUnreachableBlockEliminationPass()); - // FIXME: implement the invoke/unwind instructions! PM.add(createLowerInvokePass()); @@ -90,9 +87,14 @@ bool SparcV8TargetMachine::addPassesToEmitFile(PassManager &PM, // Replace malloc and free instructions with library calls. PM.add(createLowerAllocationsPass()); PM.add(createLowerSelectPass()); + // Make sure that no unreachable blocks are instruction selected. + PM.add(createUnreachableBlockEliminationPass()); PM.add(createSparcV8SimpleInstructionSelector(*this)); - } else + } else { + // Make sure that no unreachable blocks are instruction selected. + PM.add(createUnreachableBlockEliminationPass()); PM.add(createSparcV8ISelDag(*this)); + } // Print machine instructions as they were initially generated. if (PrintMachineCode) diff --git a/lib/Target/SparcV8/SparcV8TargetMachine.cpp b/lib/Target/SparcV8/SparcV8TargetMachine.cpp index fbe353fc051..08e38fc7a36 100644 --- a/lib/Target/SparcV8/SparcV8TargetMachine.cpp +++ b/lib/Target/SparcV8/SparcV8TargetMachine.cpp @@ -73,9 +73,6 @@ bool SparcV8TargetMachine::addPassesToEmitFile(PassManager &PM, // FIXME: Implement efficient support for garbage collection intrinsics. PM.add(createLowerGCPass()); - // Make sure that no unreachable blocks are instruction selected. - PM.add(createUnreachableBlockEliminationPass()); - // FIXME: implement the invoke/unwind instructions! PM.add(createLowerInvokePass()); @@ -90,9 +87,14 @@ bool SparcV8TargetMachine::addPassesToEmitFile(PassManager &PM, // Replace malloc and free instructions with library calls. PM.add(createLowerAllocationsPass()); PM.add(createLowerSelectPass()); + // Make sure that no unreachable blocks are instruction selected. + PM.add(createUnreachableBlockEliminationPass()); PM.add(createSparcV8SimpleInstructionSelector(*this)); - } else + } else { + // Make sure that no unreachable blocks are instruction selected. + PM.add(createUnreachableBlockEliminationPass()); PM.add(createSparcV8ISelDag(*this)); + } // Print machine instructions as they were initially generated. if (PrintMachineCode)