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

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

#include <PassManager.h>

Classes

class  Result
 Result proxy object for ModuleAnalysisManagerFunctionProxy. More...
 

Public Member Functions

 ModuleAnalysisManagerFunctionProxy (const ModuleAnalysisManager &MAM)
 
 ModuleAnalysisManagerFunctionProxy (const ModuleAnalysisManagerFunctionProxy &Arg)
 
 ModuleAnalysisManagerFunctionProxy (ModuleAnalysisManagerFunctionProxy &&Arg)
 
ModuleAnalysisManagerFunctionProxyoperator= (ModuleAnalysisManagerFunctionProxy RHS)
 
Result run (Function &)
 Run the analysis pass and create our proxy result object. More...
 

Static Public Member Functions

static void * ID ()
 
static StringRef name ()
 

Detailed Description

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

This primarily provides an accessor to a parent module analysis manager to function passes. Only the const interface of the module analysis manager is provided to indicate that once inside of a function 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 688 of file PassManager.h.

Constructor & Destructor Documentation

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

Definition at line 716 of file PassManager.h.

llvm::ModuleAnalysisManagerFunctionProxy::ModuleAnalysisManagerFunctionProxy ( const ModuleAnalysisManagerFunctionProxy Arg)
inline

Definition at line 720 of file PassManager.h.

llvm::ModuleAnalysisManagerFunctionProxy::ModuleAnalysisManagerFunctionProxy ( ModuleAnalysisManagerFunctionProxy &&  Arg)
inline

Definition at line 723 of file PassManager.h.

Member Function Documentation

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

Definition at line 712 of file PassManager.h.

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

Definition at line 714 of file PassManager.h.

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

Definition at line 726 of file PassManager.h.

References std::swap().

Result llvm::ModuleAnalysisManagerFunctionProxy::run ( Function )
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 734 of file PassManager.h.


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