aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2010-05-04 00:58:39 +0000
committerEvan Cheng <evan.cheng@apple.com>2010-05-04 00:58:39 +0000
commitf1ced259b5617e9c15fcafd47e090c22e2702062 (patch)
tree7b5e6959f18ef9bc0c4772475743530bcc5e002b /lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
parenta0161cd6f8f426b5ee8d815578088e090c799b80 (diff)
downloadexternal_llvm-f1ced259b5617e9c15fcafd47e090c22e2702062.zip
external_llvm-f1ced259b5617e9c15fcafd47e090c22e2702062.tar.gz
external_llvm-f1ced259b5617e9c15fcafd47e090c22e2702062.tar.bz2
Instruction selection optimizations may have moved the def of a function argument out of the entry block. rdar://7937489
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102993 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp')
-rw-r--r--lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
index f48fdfc..422cb7a 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
@@ -227,7 +227,8 @@ bool SelectionDAGISel::runOnMachineFunction(MachineFunction &mf) {
else {
MachineInstr *Def = RegInfo->getVRegDef(Reg);
MachineBasicBlock::iterator InsertPos = Def;
- EntryMBB->insert(llvm::next(InsertPos), MI);
+ // FIXME: VR def may not be in entry block.
+ Def->getParent()->insert(llvm::next(InsertPos), MI);
}
}