From: Dan Gohman Date: Fri, 8 May 2009 20:07:23 +0000 (+0000) Subject: Add a getExitBlock utility function to LoopInfo which returns the X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=1827e8263c9cb5dc29eea4999d8729f7376af4e1;p=oota-llvm.git Add a getExitBlock utility function to LoopInfo which returns the exit block of a loop, if there is exactly one, similar to getExitingBlock. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71245 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Analysis/LoopInfo.h b/include/llvm/Analysis/LoopInfo.h index 01e5fa96fcc..69773a66ec1 100644 --- a/include/llvm/Analysis/LoopInfo.h +++ b/include/llvm/Analysis/LoopInfo.h @@ -213,6 +213,16 @@ public: ExitBlocks.push_back(*I); } + /// getExitBlock - If getExitBlocks would return exactly one block, + /// return that block. Otherwise return null. + BlockT *getExitBlock() const { + SmallVector ExitBlocks; + getExitBlocks(ExitBlocks); + if (ExitBlocks.size() == 1) + return ExitBlocks[0]; + return 0; + } + /// getUniqueExitBlocks - Return all unique successor blocks of this loop. /// These are the blocks _outside of the current loop_ which are branched to. /// This assumes that loop is in canonical form.