LLVM API Documentation
Go to the source code of this file.
Classes | |
class | llvm::CGSCCPassManager |
struct | llvm::CGSCCPassManager::CGSCCPassModel< PassT > |
class | llvm::CGSCCAnalysisManager |
A function analysis manager to coordinate and cache analyses run over a module. More... | |
class | llvm::CGSCCAnalysisManagerModuleProxy |
A module analysis which acts as a proxy for a CGSCC analysis manager. More... | |
class | llvm::CGSCCAnalysisManagerModuleProxy::Result |
class | llvm::ModuleAnalysisManagerCGSCCProxy |
A CGSCC analysis which acts as a proxy for a module analysis manager. More... | |
class | llvm::ModuleAnalysisManagerCGSCCProxy::Result |
Result proxy object for ModuleAnalysisManagerCGSCCProxy . More... | |
class | llvm::ModuleToPostOrderCGSCCPassAdaptor< CGSCCPassT > |
The core module pass which does a post-order walk of the SCCs and runs a CGSCC pass over each one. More... | |
class | llvm::FunctionAnalysisManagerCGSCCProxy |
A CGSCC analysis which acts as a proxy for a function analysis manager. More... | |
class | llvm::FunctionAnalysisManagerCGSCCProxy::Result |
class | llvm::CGSCCAnalysisManagerFunctionProxy |
A function analysis which acts as a proxy for a CGSCC analysis manager. More... | |
class | llvm::CGSCCAnalysisManagerFunctionProxy::Result |
Result proxy object for ModuleAnalysisManagerFunctionProxy . More... | |
class | llvm::CGSCCToFunctionPassAdaptor< FunctionPassT > |
Adaptor that maps from a SCC to its functions. More... | |
Namespaces | |
namespace | llvm |
List of target independent CodeGen pass IDs. | |
Functions | |
template<typename CGSCCPassT > | |
ModuleToPostOrderCGSCCPassAdaptor < CGSCCPassT > | llvm::createModuleToPostOrderCGSCCPassAdaptor (CGSCCPassT Pass) |
A function to deduce a function pass type and wrap it in the templated adaptor. | |
template<typename FunctionPassT > | |
CGSCCToFunctionPassAdaptor < FunctionPassT > | llvm::createCGSCCToFunctionPassAdaptor (FunctionPassT Pass) |
A function to deduce a function pass type and wrap it in the templated adaptor. |
This header provides classes for managing passes over SCCs of the call graph. These passes form an important component of LLVM's interprocedural optimizations. Because they operate on the SCCs of the call graph, and they wtraverse the graph in post order, they can effectively do pair-wise interprocedural optimizations for all call edges in the program. At each call site edge, the callee has already been optimized as much as is possible. This in turn allows very accurate analysis of it for IPO.
Definition in file CGSCCPassManager.h.