LLVM  14.0.0git
Public Member Functions | List of all members
llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result Class Reference

Result proxy object for OuterAnalysisManagerProxy. More...

#include "llvm/IR/PassManager.h"

Public Member Functions

 Result (const AnalysisManagerT &OuterAM)
 
template<typename PassT , typename IRUnitTParam >
PassT::Result * getCachedResult (IRUnitTParam &IR) const
 Get a cached analysis. More...
 
template<typename PassT , typename IRUnitTParam >
bool cachedResultExists (IRUnitTParam &IR) const
 Method provided for unit testing, not intended for general use. More...
 
bool invalidate (IRUnitT &IRUnit, const PreservedAnalyses &PA, typename AnalysisManager< IRUnitT, ExtraArgTs... >::Invalidator &Inv)
 When invalidation occurs, remove any registered invalidation events. More...
 
template<typename OuterAnalysisT , typename InvalidatedAnalysisT >
void registerOuterAnalysisInvalidation ()
 Register a deferred invalidation event for when the outer analysis manager processes its invalidations. More...
 
const SmallDenseMap< AnalysisKey *, TinyPtrVector< AnalysisKey * >, 2 > & getOuterInvalidations () const
 Access the map from outer analyses to deferred invalidation requiring analyses. More...
 

Detailed Description

template<typename AnalysisManagerT, typename IRUnitT, typename... ExtraArgTs>
class llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result

Result proxy object for OuterAnalysisManagerProxy.

Definition at line 1070 of file PassManager.h.

Constructor & Destructor Documentation

◆ Result()

template<typename AnalysisManagerT , typename IRUnitT , typename... ExtraArgTs>
llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::Result ( const AnalysisManagerT &  OuterAM)
inlineexplicit

Definition at line 1072 of file PassManager.h.

Member Function Documentation

◆ cachedResultExists()

template<typename AnalysisManagerT , typename IRUnitT , typename... ExtraArgTs>
template<typename PassT , typename IRUnitTParam >
bool llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::cachedResultExists ( IRUnitTParam &  IR) const
inline

Method provided for unit testing, not intended for general use.

Definition at line 1087 of file PassManager.h.

References IR.

◆ getCachedResult()

template<typename AnalysisManagerT , typename IRUnitT , typename... ExtraArgTs>
template<typename PassT , typename IRUnitTParam >
PassT::Result* llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::getCachedResult ( IRUnitTParam &  IR) const
inline

Get a cached analysis.

If the analysis can be invalidated, this will assert.

Definition at line 1077 of file PassManager.h.

References IR.

◆ getOuterInvalidations()

template<typename AnalysisManagerT , typename IRUnitT , typename... ExtraArgTs>
const SmallDenseMap<AnalysisKey *, TinyPtrVector<AnalysisKey *>, 2>& llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::getOuterInvalidations ( ) const
inline

Access the map from outer analyses to deferred invalidation requiring analyses.

Definition at line 1136 of file PassManager.h.

◆ invalidate()

template<typename AnalysisManagerT , typename IRUnitT , typename... ExtraArgTs>
bool llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::invalidate ( IRUnitT &  IRUnit,
const PreservedAnalyses PA,
typename AnalysisManager< IRUnitT, ExtraArgTs... >::Invalidator &  Inv 
)
inline

When invalidation occurs, remove any registered invalidation events.

Definition at line 1094 of file PassManager.h.

References llvm::SmallVectorImpl< T >::erase(), llvm::erase_if(), and llvm::AnalysisManager< IRUnitT, ExtraArgTs >::Invalidator::invalidate().

◆ registerOuterAnalysisInvalidation()

template<typename AnalysisManagerT , typename IRUnitT , typename... ExtraArgTs>
template<typename OuterAnalysisT , typename InvalidatedAnalysisT >
void llvm::OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::registerOuterAnalysisInvalidation ( )
inline

Register a deferred invalidation event for when the outer analysis manager processes its invalidations.

Definition at line 1120 of file PassManager.h.

References llvm::is_contained().


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