LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::UnifyFunctionExitNodes Struct Reference

#include <UnifyFunctionExitNodes.h>

Inheritance diagram for llvm::UnifyFunctionExitNodes:

Inheritance graph
[legend]
Collaboration diagram for llvm::UnifyFunctionExitNodes:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 UnifyFunctionExitNodes ()
virtual void getAnalysisUsage (AnalysisUsage &AU) const
BasicBlockgetReturnBlock () const
BasicBlockgetUnwindBlock () const
BasicBlockgetUnreachableBlock () const
virtual bool runOnFunction (Function &F)

Public Attributes

BasicBlockReturnBlock
BasicBlockUnwindBlock
BasicBlockUnreachableBlock

Static Public Attributes

char ID = 0

Constructor & Destructor Documentation

llvm::UnifyFunctionExitNodes::UnifyFunctionExitNodes  )  [inline]
 

Definition at line 29 of file UnifyFunctionExitNodes.h.


Member Function Documentation

void UnifyFunctionExitNodes::getAnalysisUsage AnalysisUsage AU  )  const [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 35 of file UnifyFunctionExitNodes.cpp.

References llvm::AnalysisUsage::addPreservedID(), llvm::BreakCriticalEdgesID, llvm::LowerSwitchID, and llvm::PromoteMemoryToRegisterID.

BasicBlock* llvm::UnifyFunctionExitNodes::getReturnBlock  )  const [inline]
 

Definition at line 38 of file UnifyFunctionExitNodes.h.

BasicBlock* llvm::UnifyFunctionExitNodes::getUnreachableBlock  )  const [inline]
 

Definition at line 40 of file UnifyFunctionExitNodes.h.

BasicBlock* llvm::UnifyFunctionExitNodes::getUnwindBlock  )  const [inline]
 

Definition at line 39 of file UnifyFunctionExitNodes.h.

bool UnifyFunctionExitNodes::runOnFunction Function F  )  [virtual]
 

runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.

Implements llvm::FunctionPass.

Definition at line 49 of file UnifyFunctionExitNodes.cpp.

References llvm::PHINode::addIncoming(), llvm::Function::begin(), llvm::PHINode::Create(), llvm::ReturnInst::Create(), llvm::BranchInst::Create(), llvm::BasicBlock::Create(), llvm::Function::end(), llvm::BasicBlock::front(), llvm::BasicBlock::getInstList(), llvm::User::getOperand(), llvm::Function::getReturnType(), llvm::BasicBlock::getTerminator(), ReturnBlock, UnreachableBlock, and UnwindBlock.


Member Data Documentation

char UnifyFunctionExitNodes::ID = 0 [static]
 

Definition at line 27 of file UnifyFunctionExitNodes.cpp.

BasicBlock* llvm::UnifyFunctionExitNodes::ReturnBlock
 

Definition at line 26 of file UnifyFunctionExitNodes.h.

Referenced by runOnFunction().

BasicBlock * llvm::UnifyFunctionExitNodes::UnreachableBlock
 

Definition at line 26 of file UnifyFunctionExitNodes.h.

Referenced by runOnFunction().

BasicBlock * llvm::UnifyFunctionExitNodes::UnwindBlock
 

Definition at line 26 of file UnifyFunctionExitNodes.h.

Referenced by runOnFunction().


The documentation for this struct was generated from the following files:


This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.