summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/Analysis/LoopInfo.h2
-rw-r--r--include/llvm/CodeGen/MachineLoopInfo.h1
-rw-r--r--lib/CodeGen/LiveInterval.cpp2
-rw-r--r--lib/CodeGen/LoopAligner.cpp2
-rw-r--r--lib/CodeGen/SimpleRegisterCoalescing.cpp4
-rw-r--r--lib/CodeGen/StrongPHIElimination.cpp2
-rw-r--r--lib/Transforms/IPO/LoopExtractor.cpp2
-rw-r--r--lib/Transforms/Scalar/LoopIndexSplit.cpp4
-rw-r--r--lib/Transforms/Utils/SimplifyCFG.cpp2
9 files changed, 12 insertions, 9 deletions
diff --git a/include/llvm/Analysis/LoopInfo.h b/include/llvm/Analysis/LoopInfo.h
index e22f22f070..1b684d73d3 100644
--- a/include/llvm/Analysis/LoopInfo.h
+++ b/include/llvm/Analysis/LoopInfo.h
@@ -648,6 +648,7 @@ public:
typedef typename std::vector<LoopBase<BlockT>*>::const_iterator iterator;
iterator begin() const { return TopLevelLoops.begin(); }
iterator end() const { return TopLevelLoops.end(); }
+ bool empty() const { return TopLevelLoops.empty(); }
/// getLoopFor - Return the inner most loop that BB lives in. If a basic
/// block is in no loop (for example the entry node), null is returned.
@@ -947,6 +948,7 @@ public:
typedef std::vector<Loop*>::const_iterator iterator;
inline iterator begin() const { return LI->begin(); }
inline iterator end() const { return LI->end(); }
+ bool empty() const { return LI->empty(); }
/// getLoopFor - Return the inner most loop that BB lives in. If a basic
/// block is in no loop (for example the entry node), null is returned.
diff --git a/include/llvm/CodeGen/MachineLoopInfo.h b/include/llvm/CodeGen/MachineLoopInfo.h
index 8b46825f25..fa2d2290e3 100644
--- a/include/llvm/CodeGen/MachineLoopInfo.h
+++ b/include/llvm/CodeGen/MachineLoopInfo.h
@@ -92,6 +92,7 @@ public:
typedef std::vector<MachineLoop*>::const_iterator iterator;
inline iterator begin() const { return LI->begin(); }
inline iterator end() const { return LI->end(); }
+ bool empty() const { return LI->empty(); }
/// getLoopFor - Return the inner most loop that BB lives in. If a basic
/// block is in no loop (for example the entry node), null is returned.
diff --git a/lib/CodeGen/LiveInterval.cpp b/lib/CodeGen/LiveInterval.cpp
index 0f5de9257a..ff430d71c7 100644
--- a/lib/CodeGen/LiveInterval.cpp
+++ b/lib/CodeGen/LiveInterval.cpp
@@ -547,7 +547,7 @@ void LiveInterval::MergeValueInAsValue(const LiveInterval &RHS,
/// used with an unknown definition value.
void LiveInterval::MergeInClobberRanges(const LiveInterval &Clobbers,
BumpPtrAllocator &VNInfoAllocator) {
- if (Clobbers.begin() == Clobbers.end()) return;
+ if (Clobbers.empty()) return;
// Find a value # to use for the clobber ranges. If there is already a value#
// for unknown values, use it.
diff --git a/lib/CodeGen/LoopAligner.cpp b/lib/CodeGen/LoopAligner.cpp
index 1888391d5e..44f5bb461d 100644
--- a/lib/CodeGen/LoopAligner.cpp
+++ b/lib/CodeGen/LoopAligner.cpp
@@ -46,7 +46,7 @@ FunctionPass *llvm::createLoopAlignerPass() { return new LoopAligner(); }
bool LoopAligner::runOnMachineFunction(MachineFunction &MF) {
const MachineLoopInfo *MLI = &getAnalysis<MachineLoopInfo>();
- if (MLI->begin() == MLI->end())
+ if (MLI->empty())
return false; // No loops.
const TargetLowering *TLI = MF.getTarget().getTargetLowering();
diff --git a/lib/CodeGen/SimpleRegisterCoalescing.cpp b/lib/CodeGen/SimpleRegisterCoalescing.cpp
index b3e3409da3..72db79dee4 100644
--- a/lib/CodeGen/SimpleRegisterCoalescing.cpp
+++ b/lib/CodeGen/SimpleRegisterCoalescing.cpp
@@ -1852,7 +1852,7 @@ void SimpleRegisterCoalescing::joinIntervals() {
JoinQueue = new JoinPriorityQueue<CopyRecSort>(this);
std::vector<CopyRec> TryAgainList;
- if (loopInfo->begin() == loopInfo->end()) {
+ if (loopInfo->empty()) {
// If there are no loops in the function, join intervals in function order.
for (MachineFunction::iterator I = mf_->begin(), E = mf_->end();
I != E; ++I)
@@ -2049,7 +2049,7 @@ SimpleRegisterCoalescing::TurnCopyIntoImpDef(MachineBasicBlock::iterator &I,
CopyMI->setDesc(tii_->get(TargetInstrInfo::IMPLICIT_DEF));
for (int i = CopyMI->getNumOperands() - 1, e = 0; i > e; --i)
CopyMI->RemoveOperand(i);
- bool NoUse = mri_->use_begin(SrcReg) == mri_->use_end();
+ bool NoUse = mri_->use_empty(SrcReg);
if (NoUse) {
for (MachineRegisterInfo::reg_iterator I = mri_->reg_begin(SrcReg),
E = mri_->reg_end(); I != E; ) {
diff --git a/lib/CodeGen/StrongPHIElimination.cpp b/lib/CodeGen/StrongPHIElimination.cpp
index 37f54ce93a..9f59417b5d 100644
--- a/lib/CodeGen/StrongPHIElimination.cpp
+++ b/lib/CodeGen/StrongPHIElimination.cpp
@@ -848,7 +848,7 @@ void StrongPHIElimination::mergeLiveIntervals(unsigned primary,
RHS.removeValNo(*VI);
}
- if (RHS.begin() == RHS.end())
+ if (RHS.empty())
LI.removeInterval(RHS.reg);
}
diff --git a/lib/Transforms/IPO/LoopExtractor.cpp b/lib/Transforms/IPO/LoopExtractor.cpp
index 10ec3065af..8e55b3f091 100644
--- a/lib/Transforms/IPO/LoopExtractor.cpp
+++ b/lib/Transforms/IPO/LoopExtractor.cpp
@@ -79,7 +79,7 @@ bool LoopExtractor::runOnFunction(Function &F) {
LoopInfo &LI = getAnalysis<LoopInfo>();
// If this function has no loops, there is nothing to do.
- if (LI.begin() == LI.end())
+ if (LI.empty())
return false;
DominatorTree &DT = getAnalysis<DominatorTree>();
diff --git a/lib/Transforms/Scalar/LoopIndexSplit.cpp b/lib/Transforms/Scalar/LoopIndexSplit.cpp
index 135ce33ee6..1ab9a18cf6 100644
--- a/lib/Transforms/Scalar/LoopIndexSplit.cpp
+++ b/lib/Transforms/Scalar/LoopIndexSplit.cpp
@@ -1006,9 +1006,9 @@ bool LoopIndexSplit::updateLoopIterationSpace(SplitInfo &SD) {
// Remove split condition.
SD.SplitCondition->eraseFromParent();
- if (Op0->use_begin() == Op0->use_end())
+ if (Op0->use_empty())
Op0->eraseFromParent();
- if (Op1->use_begin() == Op1->use_end())
+ if (Op1->use_empty())
Op1->eraseFromParent();
BranchInst *ExitInsn =
diff --git a/lib/Transforms/Utils/SimplifyCFG.cpp b/lib/Transforms/Utils/SimplifyCFG.cpp
index d04fce6892..efd17650f2 100644
--- a/lib/Transforms/Utils/SimplifyCFG.cpp
+++ b/lib/Transforms/Utils/SimplifyCFG.cpp
@@ -107,7 +107,7 @@ static bool CanPropagatePredecessorsForPHIs(BasicBlock *BB, BasicBlock *Succ) {
CommonPreds.insert(*PI);
// Shortcut, if there are no common predecessors, merging is always safe
- if (CommonPreds.begin() == CommonPreds.end())
+ if (CommonPreds.empty())
return true;
// Look at all the phi nodes in Succ, to see if they present a conflict when