Lines Matching refs:stable_iterator
156 class stable_iterator {
162 stable_iterator(ptrdiff_t Size) : Size(Size) {}
165 static stable_iterator invalid() { return stable_iterator(-1); }
166 stable_iterator() : Size(-1) {}
173 bool encloses(stable_iterator I) const { return Size <= I.Size; }
179 bool strictlyEncloses(stable_iterator I) const { return Size < I.Size; }
181 friend bool operator==(stable_iterator A, stable_iterator B) {
184 friend bool operator!=(stable_iterator A, stable_iterator B) {
337 stable_iterator InnermostNormalCleanup;
340 stable_iterator InnermostEHScope;
477 stable_iterator getInnermostNormalCleanup() const {
480 stable_iterator getInnermostActiveNormalCleanup() const;
482 stable_iterator getInnermostEHScope() const {
486 stable_iterator getInnermostActiveEHScope() const;
501 stable_iterator stable_begin() const {
502 return stable_iterator(EndOfBuffer - StartOfData);
506 static stable_iterator stable_end() {
507 return stable_iterator(0);
510 /// Translates an iterator into a stable_iterator.
511 stable_iterator stabilize(iterator it) const;
515 iterator find(stable_iterator save) const;
517 /// Removes the cleanup pointed to by the given stable_iterator.
518 void removeCleanup(stable_iterator save);
556 EHScopeStack::stable_iterator Depth,
562 EHScopeStack::stable_iterator getScopeDepth() const { return ScopeDepth; }
567 EHScopeStack::stable_iterator ScopeDepth;
591 EHScopeStack::stable_iterator PrologueCleanupDepth;
792 void DeactivateCleanupBlock(EHScopeStack::stable_iterator Cleanup,
802 void ActivateCleanupBlock(EHScopeStack::stable_iterator Cleanup,
808 EHScopeStack::stable_iterator CleanupStackDepth;
891 void PopCleanupBlocks(EHScopeStack::stable_iterator OldCleanupStackSize);
927 llvm::BasicBlock *getEHDispatchBlock(EHScopeStack::stable_iterator scope);