diff options
| author | Chris Lattner <sabre@nondot.org> | 2001-10-18 05:27:33 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2001-10-18 05:27:33 +0000 |
| commit | 6fea0324d7b8207fdfe5a36450ac6e9a69757b87 (patch) | |
| tree | ff7f6a070986a457effb08b4b3dc20b0b348445a /llvm/lib/Transforms/HoistPHIConstants.cpp | |
| parent | fb742a58eedf1eb22735d411c604db68bac2466b (diff) | |
| download | bcm5719-llvm-6fea0324d7b8207fdfe5a36450ac6e9a69757b87.tar.gz bcm5719-llvm-6fea0324d7b8207fdfe5a36450ac6e9a69757b87.zip | |
Convert to new simpler pass itf
llvm-svn: 880
Diffstat (limited to 'llvm/lib/Transforms/HoistPHIConstants.cpp')
| -rw-r--r-- | llvm/lib/Transforms/HoistPHIConstants.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/llvm/lib/Transforms/HoistPHIConstants.cpp b/llvm/lib/Transforms/HoistPHIConstants.cpp index de806fc4098..a47ab26c75f 100644 --- a/llvm/lib/Transforms/HoistPHIConstants.cpp +++ b/llvm/lib/Transforms/HoistPHIConstants.cpp @@ -40,8 +40,9 @@ static Value *NormalizePhiOperand(PHINode *PN, Value *CPV, // Entry point for normalizing constant args in PHIs //--------------------------------------------------------------------------- -bool HoistPHIConstants::doPerMethodWork(Method *M) { +bool HoistPHIConstants::doHoistPHIConstants(Method *M) { CachedCopyMap Cache; + bool Changed = false; for (Method::iterator BI = M->begin(), BE = M->end(); BI != BE; ++BI) for (BasicBlock::iterator II = (*BI)->begin(); II != (*BI)->end(); ++II) { @@ -51,11 +52,13 @@ bool HoistPHIConstants::doPerMethodWork(Method *M) { PHINode *PN = cast<PHINode>(Inst); for (unsigned i = 0; i < PN->getNumIncomingValues(); ++i) { Value *Op = PN->getIncomingValue(i); - if (isa<ConstPoolVal>(Op)) + if (isa<ConstPoolVal>(Op)) { PN->setIncomingValue(i, NormalizePhiOperand(PN, Op, PN->getIncomingBlock(i), Cache)); + Changed = true; + } } } - return false; + return Changed; } |

