LLVM: llvm::PMStack Class Reference (original) (raw)
PMStack - This class implements a stack data structure of PMDataManager pointers. More...
#include "[llvm/IR/LegacyPassManagers.h](LegacyPassManagers%5F8h%5Fsource.html)"
| Public Types | |
|---|---|
| typedef std::vector< PMDataManager * >::const_reverse_iterator | iterator |
| Public Member Functions | |
|---|---|
| iterator | begin () const |
| iterator | end () const |
| LLVM_ABI void | pop () |
| PMDataManager * | top () const |
| LLVM_ABI void | push (PMDataManager *PM) |
| bool | empty () const |
| LLVM_ABI void | dump () const |
Detailed Description
PMStack - This class implements a stack data structure of PMDataManager pointers.
Top level pass managers (see PassManager.cpp) maintain active Pass Managers using PMStack. Each Pass implements assignPassManager() to connect itself with appropriate manager. assignPassManager() walks PMStack to find suitable manager.
Definition at line 137 of file LegacyPassManagers.h.
Member Typedef Documentation
◆ iterator
Member Function Documentation
◆ begin()
| iterator llvm::PMStack::begin ( ) const | inline |
|---|
◆ dump()
◆ empty()
| bool llvm::PMStack::empty ( ) const | inline |
|---|
◆ end()
| iterator llvm::PMStack::end ( ) const | inline |
|---|
◆ pop()
◆ push()
Definition at line 1659 of file LegacyPassManager.cpp.
References llvm::PMTopLevelManager::addIndirectPassManager(), assert(), empty(), llvm::PMDataManager::getDepth(), llvm::PMDataManager::getPassManagerType(), llvm::PMDataManager::getTopLevelManager(), llvm::PMT_FunctionPassManager, llvm::PMT_ModulePassManager, llvm::PMDataManager::setDepth(), llvm::PMDataManager::setTopLevelManager(), and top().
Referenced by llvm::CallGraphSCCPass::assignPassManager(), llvm::FunctionPass::assignPassManager(), llvm::LoopPass::assignPassManager(), and llvm::RegionPass::assignPassManager().
◆ top()
The documentation for this class was generated from the following files:
- include/llvm/IR/LegacyPassManagers.h
- lib/IR/LegacyPassManager.cpp