Pull assignment out of for loop conditional in order for this to

compile under windows. Patch contributed by Paolo Invernizzi!

llvm-svn: 16534
This commit is contained in:
Alkis Evlogimenos 2004-09-28 02:40:37 +00:00
parent fc59e0e8a3
commit 3ce42ec7ee
2 changed files with 11 additions and 10 deletions

View File

@ -1224,8 +1224,8 @@ void CWriter::printPHICopiesForSuccessors(BasicBlock *CurBlock,
unsigned Indent) {
for (succ_iterator SI = succ_begin(CurBlock), E = succ_end(CurBlock);
SI != E; ++SI)
for (BasicBlock::iterator I = SI->begin();
PHINode *PN = dyn_cast<PHINode>(I); ++I) {
for (BasicBlock::iterator I = SI->begin(); isa<PHINode>(I); ++I) {
PHINode *PN = cast<PHINode>(I);
// now we have to do the printing
Out << std::string(Indent, ' ');
Out << " " << Mang->getValueName(I) << "__PHI_TEMPORARY = ";

View File

@ -213,8 +213,8 @@ BasicBlock *LoopSimplify::SplitBlockPredecessors(BasicBlock *BB,
if (!Preds.empty()) { // Is the loop not obviously dead?
// Check to see if the values being merged into the new block need PHI
// nodes. If so, insert them.
for (BasicBlock::iterator I = BB->begin();
PHINode *PN = dyn_cast<PHINode>(I); ) {
for (BasicBlock::iterator I = BB->begin(); isa<PHINode>(I); ) {
PHINode *PN = cast<PHINode>(I);
++I;
// Check to see if all of the values coming in are the same. If so, we
@ -266,10 +266,11 @@ BasicBlock *LoopSimplify::SplitBlockPredecessors(BasicBlock *BB,
}
} else { // Otherwise the loop is dead...
for (BasicBlock::iterator I = BB->begin();
PHINode *PN = dyn_cast<PHINode>(I); ++I)
for (BasicBlock::iterator I = BB->begin(); isa<PHINode>(I); ++I) {
PHINode *PN = cast<PHINode>(I);
// Insert dummy values as the incoming value...
PN->addIncoming(Constant::getNullValue(PN->getType()), NewBB);
}
}
return NewBB;
}
@ -426,8 +427,8 @@ static void AddBlockAndPredsToSet(BasicBlock *BB, BasicBlock *StopBlock,
/// FindPHIToPartitionLoops - The first part of loop-nestification is to find a
/// PHI node that tells us how to partition the loops.
static PHINode *FindPHIToPartitionLoops(Loop *L) {
for (BasicBlock::iterator I = L->getHeader()->begin();
PHINode *PN = dyn_cast<PHINode>(I); ) {
for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ) {
PHINode *PN = cast<PHINode>(I);
++I;
if (Value *V = hasConstantValue(PN)) {
// This is a degenerate PHI already, don't modify it!
@ -565,8 +566,8 @@ void LoopSimplify::InsertUniqueBackedgeBlock(Loop *L) {
// Now that the block has been inserted into the function, create PHI nodes in
// the backedge block which correspond to any PHI nodes in the header block.
for (BasicBlock::iterator I = Header->begin();
PHINode *PN = dyn_cast<PHINode>(I); ++I) {
for (BasicBlock::iterator I = Header->begin(); isa<PHINode>(I); ++I) {
PHINode *PN = cast<PHINode>(I);
PHINode *NewPN = new PHINode(PN->getType(), PN->getName()+".be",
BETerminator);
NewPN->op_reserve(2*BackedgeBlocks.size());