Home | History | Annotate | Download | only in Analysis

Lines Matching defs:exit

10 // Calculate a program structure tree built out of single entry single exit
143 /// @brief A single entry single exit Region.
154 /// BasicBlocks that merge several entry or exit edges so that after the merge
155 /// just one entry and one exit edge exists.
161 /// The \e Exit of a Region is the first BasicBlock that is passed after
162 /// leaving the Region. It is not an element of the Region. The exit BasicBlock,
215 // The exit BasicBlock of this region.
217 BasicBlock *exit;
246 /// @param Exit The exit basic block of the region.
251 Region(BasicBlock *Entry, BasicBlock *Exit, RegionInfo* RI,
267 /// @brief Replace the exit basic block of the region with the new basic
270 /// @param BB The new exit basic block of the region.
273 /// @brief Get the exit BasicBlock of the Region.
274 /// @return The exit BasicBlock of the Region, NULL if this is the TopLevel
276 BasicBlock *getExit() const { return exit; }
299 bool isTopLevelRegion() const { return exit == NULL; }
316 /// @brief Return the first block of this region's single exit edge,
319 /// @return The BasicBlock starting this region's single exit edge,
325 /// A region is simple if it has exactly one exit and one entry edge.
545 // entry, because it was inherited from exit. In the other case there is an
546 // edge going from entry to BB without passing exit.
548 BasicBlock* exit) const;
550 // isRegion - Check if entry and exit surround a valid region, based on
552 bool isRegion(BasicBlock* entry, BasicBlock* exit) const;
554 // insertShortCut - Saves a shortcut pointing from entry to exit.
556 void insertShortCut(BasicBlock* entry, BasicBlock* exit,
564 bool isTrivialRegion(BasicBlock *entry, BasicBlock *exit) const;
566 // createRegion - Creates a single entry single exit region.
567 Region *createRegion(BasicBlock *entry, BasicBlock *exit);
590 // edge and exactly one exit edge.
627 /// @brief Return the exit of the maximal refined region, that starts at a