Reverse r47989. Part of removing 'unwinds to' support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50087 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nick Lewycky 2008-04-22 05:16:51 +00:00
parent dc2421f786
commit 59091c4630

View File

@ -53,16 +53,13 @@ public:
inline pointer operator*() const { inline pointer operator*() const {
assert(!It.atEnd() && "pred_iterator out of range!"); assert(!It.atEnd() && "pred_iterator out of range!");
if (isa<TerminatorInst>(*It)) // not dyn_cast due to const-correctness return cast<TerminatorInst>(*It)->getParent();
return cast<TerminatorInst>(*It)->getParent();
return cast<_Ptr>(*It);
} }
inline pointer *operator->() const { return &(operator*()); } inline pointer *operator->() const { return &(operator*()); }
inline _Self& operator++() { // Preincrement inline _Self& operator++() { // Preincrement
assert(!It.atEnd() && "pred_iterator out of range!"); assert(!It.atEnd() && "pred_iterator out of range!");
++It; advancePastNonPreds(); ++It; advancePastNonTerminators();
return *this; return *this;
} }
@ -106,8 +103,6 @@ public:
inline SuccIterator(Term_ T, bool) // end iterator inline SuccIterator(Term_ T, bool) // end iterator
: Term(T), idx(Term->getNumSuccessors()) { : Term(T), idx(Term->getNumSuccessors()) {
assert(T && "getTerminator returned null!"); assert(T && "getTerminator returned null!");
if (Term->getParent()->getUnwindDest())
++idx;
} }
inline const _Self &operator=(const _Self &I) { inline const _Self &operator=(const _Self &I) {
@ -123,12 +118,7 @@ public:
inline bool operator==(const _Self& x) const { return idx == x.idx; } inline bool operator==(const _Self& x) const { return idx == x.idx; }
inline bool operator!=(const _Self& x) const { return !operator==(x); } inline bool operator!=(const _Self& x) const { return !operator==(x); }
inline pointer operator*() const { inline pointer operator*() const { return Term->getSuccessor(idx); }
if (idx == Term->getNumSuccessors())
return Term->getParent()->getUnwindDest();
return Term->getSuccessor(idx);
}
inline pointer operator->() const { return operator*(); } inline pointer operator->() const { return operator*(); }
inline _Self& operator++() { ++idx; return *this; } // Preincrement inline _Self& operator++() { ++idx; return *this; } // Preincrement