aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/FastISel.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-04-23 15:29:50 +0000
committerDan Gohman <gohman@apple.com>2010-04-23 15:29:50 +0000
commite8c92dd439581bec7e3516cbdbea74e2e60fe7f0 (patch)
tree01314e686d15d650cd33c1f405dbc0d50a9b57dd /lib/CodeGen/SelectionDAG/FastISel.cpp
parent27ef9976c2e7a93f0cd088cb098e4860bba29159 (diff)
Move FastISel's HandlePHINodesInSuccessorBlocks call down into FastISel
itself too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102176 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/FastISel.cpp')
-rw-r--r--lib/CodeGen/SelectionDAG/FastISel.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/FastISel.cpp b/lib/CodeGen/SelectionDAG/FastISel.cpp
index 132c42ef0d..c40eaf6292 100644
--- a/lib/CodeGen/SelectionDAG/FastISel.cpp
+++ b/lib/CodeGen/SelectionDAG/FastISel.cpp
@@ -553,6 +553,12 @@ bool FastISel::SelectBitCast(const User *I) {
bool
FastISel::SelectInstruction(const Instruction *I) {
+ // Just before the terminator instruction, insert instructions to
+ // feed PHI nodes in successor blocks.
+ if (isa<TerminatorInst>(I))
+ if (!HandlePHINodesInSuccessorBlocks(I->getParent()))
+ return false;
+
DL = I->getDebugLoc();
// First, try doing target-independent selection.