(Almost) always call reserveOperandSpace() on newly created PHINodes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128535 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jay Foad
2011-03-30 11:19:20 +00:00
parent 8be7d8b43c
commit d8b4fb4aab
26 changed files with 54 additions and 21 deletions

View File

@@ -441,6 +441,7 @@ bool DwarfEHPrepare::NormalizeLandingPads() {
// in NewBB.
PHINode *NewPN = PHINode::Create(PN->getType(), PN->getName()+".unwind",
NewBB);
NewPN->reserveOperandSpace(PN->getNumIncomingValues());
// Add an entry for each unwind edge, using the value from the old PHI.
for (pred_iterator PI = PB; PI != PE; ++PI)
NewPN->addIncoming(PN->getIncomingValueForBlock(*PI), *PI);