class OuterAnalysisManagerProxy::Result
Declaration
class OuterAnalysisManagerProxy::Result { /* full declaration omitted */ };
Description
Result proxy object for \c OuterAnalysisManagerProxy.
Declared at: llvm/include/llvm/IR/PassManager.h:1067
Member Variables
- private const AnalysisManagerT* OuterAM
- private SmallDenseMap<llvm::AnalysisKey*, TinyPtrVector<llvm::AnalysisKey*>, 2> OuterAnalysisInvalidationMap
- A map from an outer analysis ID to the set of this IR-unit's analyses which need to be invalidated.
Method Overview
- public Result(const AnalysisManagerT & OuterAM)
- public template <typename PassT, typename IRUnitTParam>bool cachedResultExists(IRUnitTParam & IR) const
- public template <typename PassT, typename IRUnitTParam>typename PassT::Result * getCachedResult(IRUnitTParam & IR) const
- public const SmallDenseMap<llvm::AnalysisKey *, TinyPtrVector<llvm::AnalysisKey *>, 2> & getOuterInvalidations() const
- public bool invalidate(IRUnitT & IRUnit, const llvm::PreservedAnalyses & PA, typename AnalysisManager<IRUnitT, ExtraArgTs...>::Invalidator & Inv)
- public template <typename OuterAnalysisT, typename InvalidatedAnalysisT>void registerOuterAnalysisInvalidation()
Methods
¶Result(const AnalysisManagerT& OuterAM)
Result(const AnalysisManagerT& OuterAM)
Declared at: llvm/include/llvm/IR/PassManager.h:1069
Parameters
- const AnalysisManagerT& OuterAM
¶template <typename PassT, typename IRUnitTParam>
bool cachedResultExists(IRUnitTParam& IR) const
template <typename PassT, typename IRUnitTParam>
bool cachedResultExists(IRUnitTParam& IR) const
Description
Method provided for unit testing, not intended for general use.
Declared at: llvm/include/llvm/IR/PassManager.h:1084
Templates
- PassT
- IRUnitTParam
Parameters
- IRUnitTParam& IR
¶template <typename PassT, typename IRUnitTParam>
typename PassT::Result* getCachedResult(
IRUnitTParam& IR) const
template <typename PassT, typename IRUnitTParam>
typename PassT::Result* getCachedResult(
IRUnitTParam& IR) const
Description
Get a cached analysis. If the analysis can be invalidated, this will assert.
Declared at: llvm/include/llvm/IR/PassManager.h:1074
Templates
- PassT
- IRUnitTParam
Parameters
- IRUnitTParam& IR
¶const SmallDenseMap<
llvm::AnalysisKey*,
TinyPtrVector<llvm::AnalysisKey*>,
2>&
getOuterInvalidations() const
const SmallDenseMap<
llvm::AnalysisKey*,
TinyPtrVector<llvm::AnalysisKey*>,
2>&
getOuterInvalidations() const
Description
Access the map from outer analyses to deferred invalidation requiring analyses.
Declared at: llvm/include/llvm/IR/PassManager.h:1133
¶bool invalidate(
IRUnitT& IRUnit,
const llvm::PreservedAnalyses& PA,
typename AnalysisManager<
IRUnitT,
ExtraArgTs...>::Invalidator& Inv)
bool invalidate(
IRUnitT& IRUnit,
const llvm::PreservedAnalyses& PA,
typename AnalysisManager<
IRUnitT,
ExtraArgTs...>::Invalidator& Inv)
Description
When invalidation occurs, remove any registered invalidation events.
Declared at: llvm/include/llvm/IR/PassManager.h:1091
Parameters
- IRUnitT& IRUnit
- const llvm::PreservedAnalyses& PA
- typename AnalysisManager<IRUnitT, ExtraArgTs...>:: Invalidator& Inv
¶template <typename OuterAnalysisT,
typename InvalidatedAnalysisT>
void registerOuterAnalysisInvalidation()
template <typename OuterAnalysisT,
typename InvalidatedAnalysisT>
void registerOuterAnalysisInvalidation()
Description
Register a deferred invalidation event for when the outer analysis manager processes its invalidations.
Declared at: llvm/include/llvm/IR/PassManager.h:1117
Templates
- OuterAnalysisT
- InvalidatedAnalysisT