LLVM  3.7.0
Classes | Public Member Functions | Static Public Member Functions | List of all members
llvm::ModuleAnalysisManagerCGSCCProxy Class Reference

A CGSCC analysis which acts as a proxy for a module analysis manager. More...

#include <CGSCCPassManager.h>

Classes

class  Result
 Result proxy object for ModuleAnalysisManagerCGSCCProxy. More...
 

Public Member Functions

 ModuleAnalysisManagerCGSCCProxy (const ModuleAnalysisManager &MAM)
 
 ModuleAnalysisManagerCGSCCProxy (const ModuleAnalysisManagerCGSCCProxy &Arg)
 
 ModuleAnalysisManagerCGSCCProxy (ModuleAnalysisManagerCGSCCProxy &&Arg)
 
ModuleAnalysisManagerCGSCCProxyoperator= (ModuleAnalysisManagerCGSCCProxy RHS)
 
Result run (LazyCallGraph::SCC &)
 Run the analysis pass and create our proxy result object. More...
 

Static Public Member Functions

static void * ID ()
 
static StringRef name ()
 

Detailed Description

A CGSCC analysis which acts as a proxy for a module analysis manager.

This primarily provides an accessor to a parent module analysis manager to CGSCC passes. Only the const interface of the module analysis manager is provided to indicate that once inside of a CGSCC analysis pass you cannot request a module analysis to actually run. Instead, the user must rely on the getCachedResult API.

This proxy doesn't manage the invalidation in any way. That is handled by the recursive return path of each layer of the pass manager and the returned PreservedAnalysis set.

Definition at line 133 of file CGSCCPassManager.h.

Constructor & Destructor Documentation

llvm::ModuleAnalysisManagerCGSCCProxy::ModuleAnalysisManagerCGSCCProxy ( const ModuleAnalysisManager MAM)
inline

Definition at line 161 of file CGSCCPassManager.h.

llvm::ModuleAnalysisManagerCGSCCProxy::ModuleAnalysisManagerCGSCCProxy ( const ModuleAnalysisManagerCGSCCProxy Arg)
inline

Definition at line 165 of file CGSCCPassManager.h.

llvm::ModuleAnalysisManagerCGSCCProxy::ModuleAnalysisManagerCGSCCProxy ( ModuleAnalysisManagerCGSCCProxy &&  Arg)
inline

Definition at line 167 of file CGSCCPassManager.h.

Member Function Documentation

static void* llvm::ModuleAnalysisManagerCGSCCProxy::ID ( )
inlinestatic

Definition at line 157 of file CGSCCPassManager.h.

static StringRef llvm::ModuleAnalysisManagerCGSCCProxy::name ( )
inlinestatic

Definition at line 159 of file CGSCCPassManager.h.

ModuleAnalysisManagerCGSCCProxy& llvm::ModuleAnalysisManagerCGSCCProxy::operator= ( ModuleAnalysisManagerCGSCCProxy  RHS)
inline

Definition at line 170 of file CGSCCPassManager.h.

References std::swap().

Result llvm::ModuleAnalysisManagerCGSCCProxy::run ( LazyCallGraph::SCC )
inline

Run the analysis pass and create our proxy result object.

Nothing to see here, it just forwards the MAM reference into the result.

Definition at line 178 of file CGSCCPassManager.h.


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