diff options
author | Dan Gohman <gohman@apple.com> | 2010-04-22 20:55:53 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-04-22 20:55:53 +0000 |
commit | c105a2b5b7d8969e78bd4b203e980dced8a1c689 (patch) | |
tree | 6927c16d30b83980e7337661ff433dd0b42ba686 /lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | |
parent | 18ee3bb0b784d29fdff40301d5691e7e855de547 (diff) |
Sink SelectionDAGBuilder's HandlePHINodesInSuccessorBlocks down
into SelectionDAGBuilder itself.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102128 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp')
-rw-r--r-- | lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp index 8353c18d60..875672e4e1 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp @@ -233,21 +233,9 @@ SelectionDAGISel::SelectBasicBlock(MachineBasicBlock *BB, // Lower all of the non-terminator instructions. If a call is emitted // as a tail call, cease emitting nodes for this block. Terminators // are handled below. - for (BasicBlock::const_iterator I = Begin; - I != End && !SDB->HasTailCall && !isa<TerminatorInst>(I); - ++I) + for (BasicBlock::const_iterator I = Begin; I != End && !SDB->HasTailCall; ++I) SDB->visit(*I); - if (!SDB->HasTailCall) { - // Handle PHI nodes in successor blocks. - if (End == LLVMBB->end()) { - SDB->HandlePHINodesInSuccessorBlocks(LLVMBB); - - // Lower the terminator after the copies are emitted. - SDB->visit(*LLVMBB->getTerminator()); - } - } - // Make sure the root of the DAG is up-to-date. CurDAG->setRoot(SDB->getControlRoot()); |