LLVM API Documentation

Public Member Functions | Static Public Attributes
llvm::legacy::FunctionPassManagerImpl Class Reference

FunctionPassManagerImpl manages FPPassManagers. More...

Inheritance diagram for llvm::legacy::FunctionPassManagerImpl:
Inheritance graph
[legend]
Collaboration diagram for llvm::legacy::FunctionPassManagerImpl:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 FunctionPassManagerImpl ()
void add (Pass *P)
PasscreatePrinterPass (raw_ostream &O, const std::string &Banner) const override
 createPrinterPass - Get a function printer pass.
void releaseMemoryOnTheFly ()
bool run (Function &F)
bool doInitialization (Module &M) override
bool doFinalization (Module &M) override
PMDataManagergetAsPMDataManager () override
PassgetAsPass () override
PassManagerType getTopLevelPassManagerType () override
void getAnalysisUsage (AnalysisUsage &Info) const override
 Pass Manager itself does not invalidate any analysis info.
FPPassManagergetContainedManager (unsigned N)

Static Public Attributes

static char ID = 0

Detailed Description

FunctionPassManagerImpl manages FPPassManagers.

Definition at line 218 of file LegacyPassManager.cpp.


Constructor & Destructor Documentation

Definition at line 226 of file LegacyPassManager.cpp.


Member Function Documentation

add - Add a pass to the queue of passes to run. This passes ownership of the Pass to the PassManager. When the PassManager is destroyed, the pass will be destroyed as well, so there is no need to delete the pass. This implies that all passes MUST be allocated with 'new'.

Definition at line 234 of file LegacyPassManager.cpp.

Referenced by llvm::legacy::FunctionPassManager::add().

Pass* llvm::legacy::FunctionPassManagerImpl::createPrinterPass ( raw_ostream O,
const std::string &  Banner 
) const [inline, override, virtual]

createPrinterPass - Get a function printer pass.

Implements llvm::Pass.

Definition at line 239 of file LegacyPassManager.cpp.

References llvm::createPrintFunctionPass().

bool FunctionPassManagerImpl::doFinalization ( Module M) [override, virtual]
void llvm::legacy::FunctionPassManagerImpl::getAnalysisUsage ( AnalysisUsage Info) const [inline, override, virtual]

Pass Manager itself does not invalidate any analysis info.

Reimplemented from llvm::Pass.

Definition at line 268 of file LegacyPassManager.cpp.

References llvm::AnalysisUsage::setPreservesAll().

Pass* llvm::legacy::FunctionPassManagerImpl::getAsPass ( ) [inline, override, virtual]

Implements llvm::PMDataManager.

Definition at line 262 of file LegacyPassManager.cpp.

Implements llvm::PMTopLevelManager.

Definition at line 261 of file LegacyPassManager.cpp.

Implements llvm::PMTopLevelManager.

Definition at line 263 of file LegacyPassManager.cpp.

References llvm::PMT_FunctionPassManager.

run - Execute all of the passes scheduled for execution. Keep track of whether any of the passes modifies the module, and if so, return true.

Definition at line 1487 of file LegacyPassManager.cpp.

References llvm::FPPassManager::cleanup(), getContainedManager(), llvm::Function::getContext(), llvm::PMTopLevelManager::getNumContainedManagers(), llvm::PMTopLevelManager::initializeAllAnalysisInfo(), llvm::FPPassManager::runOnFunction(), and llvm::LLVMContext::yield().

Referenced by llvm::legacy::FunctionPassManager::run().


Member Data Documentation

Definition at line 225 of file LegacyPassManager.cpp.


The documentation for this class was generated from the following file: