Index: src/IceCfg.cpp |
diff --git a/src/IceCfg.cpp b/src/IceCfg.cpp |
index 2f0e9947599ede3a4ee82bb2001b3001f9e75d19..9726ff92f876099bbb4a7b807185541eaba4fa4c 100644 |
--- a/src/IceCfg.cpp |
+++ b/src/IceCfg.cpp |
@@ -294,24 +294,22 @@ void Cfg::liveness(LivenessMode Mode) { |
for (CfgNode *Node : Nodes) { |
InstNumberT FirstInstNum = Inst::NumberSentinel; |
InstNumberT LastInstNum = Inst::NumberSentinel; |
- for (auto I = Node->getPhis().begin(), E = Node->getPhis().end(); I != E; |
- ++I) { |
- I->deleteIfDead(); |
- if (Mode == Liveness_Intervals && !I->isDeleted()) { |
+ for (Inst &I : Node->getPhis()) { |
+ I.deleteIfDead(); |
+ if (Mode == Liveness_Intervals && !I.isDeleted()) { |
if (FirstInstNum == Inst::NumberSentinel) |
- FirstInstNum = I->getNumber(); |
- assert(I->getNumber() > LastInstNum); |
- LastInstNum = I->getNumber(); |
+ FirstInstNum = I.getNumber(); |
+ assert(I.getNumber() > LastInstNum); |
+ LastInstNum = I.getNumber(); |
} |
} |
- for (auto I = Node->getInsts().begin(), E = Node->getInsts().end(); I != E; |
- ++I) { |
- I->deleteIfDead(); |
- if (Mode == Liveness_Intervals && !I->isDeleted()) { |
+ for (Inst &I : Node->getInsts()) { |
+ I.deleteIfDead(); |
+ if (Mode == Liveness_Intervals && !I.isDeleted()) { |
if (FirstInstNum == Inst::NumberSentinel) |
- FirstInstNum = I->getNumber(); |
- assert(I->getNumber() > LastInstNum); |
- LastInstNum = I->getNumber(); |
+ FirstInstNum = I.getNumber(); |
+ assert(I.getNumber() > LastInstNum); |
+ LastInstNum = I.getNumber(); |
} |
} |
if (Mode == Liveness_Intervals) { |
@@ -339,14 +337,13 @@ bool Cfg::validateLiveness() const { |
Ostream &Str = Ctx->getStrDump(); |
for (CfgNode *Node : Nodes) { |
Inst *FirstInst = nullptr; |
- for (auto Inst = Node->getInsts().begin(), E = Node->getInsts().end(); |
- Inst != E; ++Inst) { |
- if (Inst->isDeleted()) |
+ for (Inst &Inst : Node->getInsts()) { |
+ if (Inst.isDeleted()) |
continue; |
if (FirstInst == nullptr) |
- FirstInst = Inst; |
- InstNumberT InstNumber = Inst->getNumber(); |
- if (Variable *Dest = Inst->getDest()) { |
+ FirstInst = &Inst; |
+ InstNumberT InstNumber = Inst.getNumber(); |
+ if (Variable *Dest = Inst.getDest()) { |
if (!Dest->getIgnoreLiveness()) { |
bool Invalid = false; |
const bool IsDest = true; |
@@ -359,20 +356,20 @@ bool Cfg::validateLiveness() const { |
// temporary may be live at the end of the previous block, |
// and if it is also assigned in the first instruction of |
// this block, the adjacent live ranges get merged. |
- if (static_cast<class Inst *>(Inst) != FirstInst && |
- !Inst->isDestNonKillable() && |
+ if (static_cast<class Inst *>(&Inst) != FirstInst && |
+ !Inst.isDestNonKillable() && |
Dest->getLiveRange().containsValue(InstNumber - 1, IsDest)) |
Invalid = true; |
if (Invalid) { |
Valid = false; |
- Str << "Liveness error: inst " << Inst->getNumber() << " dest "; |
+ Str << "Liveness error: inst " << Inst.getNumber() << " dest "; |
Dest->dump(this); |
Str << " live range " << Dest->getLiveRange() << "\n"; |
} |
} |
} |
- for (SizeT I = 0; I < Inst->getSrcSize(); ++I) { |
- Operand *Src = Inst->getSrc(I); |
+ for (SizeT I = 0; I < Inst.getSrcSize(); ++I) { |
+ Operand *Src = Inst.getSrc(I); |
SizeT NumVars = Src->getNumVars(); |
for (SizeT J = 0; J < NumVars; ++J) { |
const Variable *Var = Src->getVar(J); |
@@ -380,7 +377,7 @@ bool Cfg::validateLiveness() const { |
if (!Var->getIgnoreLiveness() && |
!Var->getLiveRange().containsValue(InstNumber, IsDest)) { |
Valid = false; |
- Str << "Liveness error: inst " << Inst->getNumber() << " var "; |
+ Str << "Liveness error: inst " << Inst.getNumber() << " var "; |
Var->dump(this); |
Str << " live range " << Var->getLiveRange() << "\n"; |
} |