reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

include/llvm/Analysis/LoopInfo.h
   80   std::vector<BlockT *> Blocks;
   82   SmallPtrSet<const BlockT *, 8> DenseBlockSet;
   89   LoopBase(const LoopBase<BlockT, LoopT> &) = delete;
   90   const LoopBase<BlockT, LoopT> &
   91   operator=(const LoopBase<BlockT, LoopT> &) = delete;
  105   BlockT *getHeader() const { return getBlocks().front(); }
  125   bool contains(const BlockT *BB) const {
  154   ArrayRef<BlockT *> getBlocks() const {
  158   typedef typename ArrayRef<BlockT *>::const_iterator block_iterator;
  175   std::vector<BlockT *> &getBlocksVector() {
  181   SmallPtrSetImpl<const BlockT *> &getBlocksSet() {
  187   const SmallPtrSetImpl<const BlockT *> &getBlocksSet() const {
  208   bool isLoopExiting(const BlockT *BB) const {
  222   bool isLoopLatch(const BlockT *BB) const {
  226     BlockT *Header = getHeader();
  227     auto PredBegin = GraphTraits<Inverse<BlockT *>>::child_begin(Header);
  228     auto PredEnd = GraphTraits<Inverse<BlockT *>>::child_end(Header);
  236     BlockT *H = getHeader();
  256   void getExitingBlocks(SmallVectorImpl<BlockT *> &ExitingBlocks) const;
  260   BlockT *getExitingBlock() const;
  264   void getExitBlocks(SmallVectorImpl<BlockT *> &ExitBlocks) const;
  268   BlockT *getExitBlock() const;
  276   void getUniqueExitBlocks(SmallVectorImpl<BlockT *> &ExitBlocks) const;
  282   void getUniqueNonLatchExitBlocks(SmallVectorImpl<BlockT *> &ExitBlocks) const;
  286   BlockT *getUniqueExitBlock() const;
  289   typedef std::pair<BlockT *, BlockT *> Edge;
  289   typedef std::pair<BlockT *, BlockT *> Edge;
  300   BlockT *getLoopPreheader() const;
  306   BlockT *getLoopPredecessor() const;
  310   BlockT *getLoopLatch() const;
  314   void getLoopLatches(SmallVectorImpl<BlockT *> &LoopLatches) const {
  316     BlockT *H = getHeader();
  365   void addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LI);
  365   void addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LI);
  403   void addBlockEntry(BlockT *BB) {
  423   void moveToHeader(BlockT *BB) {
  440   void removeBlockFromLoop(BlockT *BB) {
  470   explicit LoopBase(BlockT *BB) : ParentLoop(nullptr) {