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::PassManager Class Reference

PassManager manages ModulePassManagers. More...

#include <PassManager.h>

Inheritance diagram for llvm::PassManager:

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

Collaboration graph
[legend]
List of all members.

Public Member Functions

 PassManager ()
 Create new pass manager.
 ~PassManager ()
void add (Pass *P)
bool run (Module &M)

Detailed Description

PassManager manages ModulePassManagers.

Definition at line 47 of file PassManager.h.


Constructor & Destructor Documentation

PassManager::PassManager  ) 
 

Create new pass manager.

Definition at line 1464 of file PassManager.cpp.

References llvm::PMDataManager::setTopLevelManager().

PassManager::~PassManager  ) 
 

Definition at line 1470 of file PassManager.cpp.


Member Function Documentation

void PassManager::add Pass P  )  [virtual]
 

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'.

Implements llvm::PassManagerBase.

Definition at line 1479 of file PassManager.cpp.

References llvm::PassManagerImpl::add().

Referenced by MSILTarget::addPassesToEmitWholeFile(), llvm::CPPTargetMachine::addPassesToEmitWholeFile(), llvm::CTargetMachine::addPassesToEmitWholeFile(), and llvm::verifyModule().

bool PassManager::run Module M  ) 
 

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 1486 of file PassManager.cpp.

References llvm::PassManagerImpl::run().

Referenced by llvm::verifyModule().


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


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