summaryrefslogtreecommitdiff
path: root/include/llvm/Analysis/RegionInfo.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/Analysis/RegionInfo.h')
-rw-r--r--include/llvm/Analysis/RegionInfo.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/llvm/Analysis/RegionInfo.h b/include/llvm/Analysis/RegionInfo.h
index 2e34928b28adf..7196223599494 100644
--- a/include/llvm/Analysis/RegionInfo.h
+++ b/include/llvm/Analysis/RegionInfo.h
@@ -254,7 +254,7 @@ public:
template <class Tr>
class RegionBase : public RegionNodeBase<Tr> {
friend class RegionInfoBase<Tr>;
-
+
using FuncT = typename Tr::FuncT;
using BlockT = typename Tr::BlockT;
using RegionInfoT = typename Tr::RegionInfoT;
@@ -407,6 +407,11 @@ public:
/// else NULL.
BlockT *getExitingBlock() const;
+ /// @brief Collect all blocks of this region's single exit edge, if existing.
+ ///
+ /// @return True if this region contains all the predecessors of the exit.
+ bool getExitingBlocks(SmallVectorImpl<BlockT *> &Exitings) const;
+
/// @brief Is this a simple region?
///
/// A region is simple if it has exactly one exit and one entry edge.