LLVM API Documentation
#include <UnifyFunctionExitNodes.h>
Public Member Functions | |
UnifyFunctionExitNodes () | |
void | getAnalysisUsage (AnalysisUsage &AU) const override |
BasicBlock * | getReturnBlock () const |
BasicBlock * | getUnwindBlock () const |
BasicBlock * | getUnreachableBlock () const |
bool | runOnFunction (Function &F) override |
Public Attributes | |
BasicBlock * | ReturnBlock |
BasicBlock * | UnwindBlock |
BasicBlock * | UnreachableBlock |
Static Public Attributes | |
static char | ID = 0 |
Definition at line 25 of file UnifyFunctionExitNodes.h.
llvm::UnifyFunctionExitNodes::UnifyFunctionExitNodes | ( | ) | [inline] |
Definition at line 30 of file UnifyFunctionExitNodes.h.
References llvm::PassRegistry::getPassRegistry(), and llvm::initializeUnifyFunctionExitNodesPass().
void UnifyFunctionExitNodes::getAnalysisUsage | ( | AnalysisUsage & | ) | const [override, virtual] |
getAnalysisUsage - This function should be overriden by passes that need analysis information to do their job. If a pass specifies that it uses a particular analysis result to this function, it can then use the getAnalysis<AnalysisType>() function, below.
Reimplemented from llvm::Pass.
Definition at line 34 of file UnifyFunctionExitNodes.cpp.
References llvm::AnalysisUsage::addPreserved(), llvm::AnalysisUsage::addPreservedID(), llvm::BreakCriticalEdgesID, and llvm::LowerSwitchID.
BasicBlock* llvm::UnifyFunctionExitNodes::getReturnBlock | ( | ) | const [inline] |
Definition at line 41 of file UnifyFunctionExitNodes.h.
References ReturnBlock.
BasicBlock* llvm::UnifyFunctionExitNodes::getUnreachableBlock | ( | ) | const [inline] |
Definition at line 43 of file UnifyFunctionExitNodes.h.
References UnreachableBlock.
BasicBlock* llvm::UnifyFunctionExitNodes::getUnwindBlock | ( | ) | const [inline] |
Definition at line 42 of file UnifyFunctionExitNodes.h.
References UnwindBlock.
bool UnifyFunctionExitNodes::runOnFunction | ( | Function & | F | ) | [override, virtual] |
runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.
Implements llvm::FunctionPass.
Definition at line 48 of file UnifyFunctionExitNodes.cpp.
References llvm::Function::begin(), llvm::BasicBlock::Create(), llvm::PHINode::Create(), llvm::ReturnInst::Create(), llvm::BranchInst::Create(), llvm::Function::end(), F(), llvm::BasicBlock::front(), llvm::Function::getContext(), llvm::BasicBlock::getInstList(), llvm::User::getOperand(), llvm::Function::getReturnType(), llvm::BasicBlock::getTerminator(), I, llvm::Type::isVoidTy(), llvm::iplist< NodeTy, Traits >::pop_back(), llvm::iplist< NodeTy, Traits >::push_back(), ReturnBlock, and UnreachableBlock.
char UnifyFunctionExitNodes::ID = 0 [static] |
Definition at line 29 of file UnifyFunctionExitNodes.h.
Definition at line 26 of file UnifyFunctionExitNodes.h.
Referenced by getReturnBlock(), and runOnFunction().
Definition at line 26 of file UnifyFunctionExitNodes.h.
Referenced by getUnreachableBlock(), and runOnFunction().
Definition at line 26 of file UnifyFunctionExitNodes.h.
Referenced by getUnwindBlock().