LLVM  8.0.1
Public Types | Public Member Functions | List of all members
llvm::AAManager Class Reference

A manager for alias analyses. More...

#include "llvm/Analysis/AliasAnalysis.h"

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

Public Types

using Result = AAResults
 

Public Member Functions

template<typename AnalysisT >
void registerFunctionAnalysis ()
 Register a specific AA result. More...
 
template<typename AnalysisT >
void registerModuleAnalysis ()
 Register a specific AA result. More...
 
Result run (Function &F, FunctionAnalysisManager &AM)
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::AnalysisInfoMixin< AAManager >
static AnalysisKeyID ()
 Returns an opaque, unique ID for this analysis type. More...
 
- Static Public Member Functions inherited from llvm::PassInfoMixin< AAManager >
static StringRef name ()
 Gets the name of the pass we are mixed into. More...
 

Detailed Description

A manager for alias analyses.

This class can have analyses registered with it and when run, it will run all of them and aggregate their results into single AA results interface that dispatches across all of the alias analysis results available.

Note that the order in which analyses are registered is very significant. That is the order in which the results will be aggregated and queried.

This manager effectively wraps the AnalysisManager for registering alias analyses. When you register your alias analysis with this manager, it will ensure the analysis itself is registered with its AnalysisManager.

Definition at line 987 of file AliasAnalysis.h.

Member Typedef Documentation

◆ Result

Definition at line 989 of file AliasAnalysis.h.

Member Function Documentation

◆ registerFunctionAnalysis()

template<typename AnalysisT >
void llvm::AAManager::registerFunctionAnalysis ( )
inline

Register a specific AA result.

Definition at line 992 of file AliasAnalysis.h.

Referenced by llvm::PassBuilder::buildDefaultAAPipeline().

◆ registerModuleAnalysis()

template<typename AnalysisT >
void llvm::AAManager::registerModuleAnalysis ( )
inline

Register a specific AA result.

Definition at line 997 of file AliasAnalysis.h.

Referenced by llvm::PassBuilder::buildDefaultAAPipeline().

◆ run()

Result llvm::AAManager::run ( Function F,
FunctionAnalysisManager AM 
)
inline

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