LLVM  mainline
Public Member Functions | Static Public Attributes
llvm::LPPassManager Class Reference

#include <LoopPass.h>

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

List of all members.

Public Member Functions

 LPPassManager ()
bool runOnFunction (Function &F) override
 run - Execute all of the passes scheduled for execution.
void getAnalysisUsage (AnalysisUsage &Info) const override
 Pass Manager itself does not invalidate any analysis info.
const char * getPassName () const override
 getPassName - Return a nice clean name for a pass.
PMDataManagergetAsPMDataManager () override
PassgetAsPass () override
void dumpPassStructure (unsigned Offset) override
 Print passes managed by this manager.
LoopPassgetContainedPass (unsigned N)
PassManagerType getPassManagerType () const override
LoopaddLoop (Loop *ParentLoop)
void cloneBasicBlockSimpleAnalysis (BasicBlock *From, BasicBlock *To, Loop *L)
 SimpleAnalysis - Provides simple interface to update analysis info maintained by various passes.
void deleteSimpleAnalysisValue (Value *V, Loop *L)
 deleteSimpleAnalysisValue - Invoke deleteAnalysisValue hook for all passes that implement simple analysis interface.
void deleteSimpleAnalysisLoop (Loop *L)
 Invoke deleteAnalysisLoop hook for all passes that implement simple analysis interface.

Static Public Attributes

static char ID = 0

Detailed Description

Definition at line 96 of file LoopPass.h.


Constructor & Destructor Documentation

Definition at line 63 of file LoopPass.cpp.


Member Function Documentation

Loop & LPPassManager::addLoop ( Loop ParentLoop)

SimpleAnalysis - Provides simple interface to update analysis info maintained by various passes.

cloneBasicBlockSimpleAnalysis - Invoke cloneBasicBlockAnalysis hook for all loop passes.

Note, if required this interface can be extracted into a separate abstract class but it would require additional use of multiple inheritance in Pass class hierarchy, something we are trying to avoid. cloneBasicBlockSimpleAnalysis - Invoke cloneBasicBlockAnalysis hook for all passes that implement simple analysis interface.

Definition at line 97 of file LoopPass.cpp.

References llvm::LoopPass::cloneBasicBlockAnalysis(), getContainedPass(), llvm::PMDataManager::getNumContainedPasses(), and llvm::codeview::Index.

Invoke deleteAnalysisLoop hook for all passes that implement simple analysis interface.

Invoke deleteAnalysisLoop hook for all passes.

Definition at line 121 of file LoopPass.cpp.

References llvm::LoopPass::deleteAnalysisLoop(), getContainedPass(), llvm::PMDataManager::getNumContainedPasses(), and llvm::codeview::Index.

Referenced by runOnFunction().

deleteSimpleAnalysisValue - Invoke deleteAnalysisValue hook for all passes that implement simple analysis interface.

deleteSimpleAnalysisValue - Invoke deleteAnalysisValue hook for all passes.

Definition at line 106 of file LoopPass.cpp.

References llvm::LoopPass::deleteAnalysisValue(), getContainedPass(), llvm::PMDataManager::getNumContainedPasses(), I, and llvm::codeview::Index.

Referenced by ReplaceUsesOfWith().

void LPPassManager::dumpPassStructure ( unsigned  Offset) [override, virtual]
void LPPassManager::getAnalysisUsage ( AnalysisUsage Info) const [override, virtual]

Pass Manager itself does not invalidate any analysis info.

Reimplemented from llvm::Pass.

Definition at line 137 of file LoopPass.cpp.

References llvm::AnalysisUsage::addRequired(), and llvm::AnalysisUsage::setPreservesAll().

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

Implements llvm::PMDataManager.

Definition at line 114 of file LoopPass.h.

Referenced by llvm::LoopPass::assignPassManager().

PMDataManager* llvm::LPPassManager::getAsPMDataManager ( ) [inline, override, virtual]

Reimplemented from llvm::Pass.

Definition at line 113 of file LoopPass.h.

PassManagerType llvm::LPPassManager::getPassManagerType ( ) const [inline, override, virtual]

Reimplemented from llvm::PMDataManager.

Definition at line 125 of file LoopPass.h.

References llvm::PMT_LoopPassManager.

const char* llvm::LPPassManager::getPassName ( ) const [inline, override, virtual]

getPassName - Return a nice clean name for a pass.

This usually implemented in terms of the name that is registered by one of the Registration templates, but can be overloaded directly.

Reimplemented from llvm::Pass.

Definition at line 109 of file LoopPass.h.

bool LPPassManager::runOnFunction ( Function F) [override, virtual]

Member Data Documentation

char LPPassManager::ID = 0 [static]

Definition at line 98 of file LoopPass.h.


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