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

Detailed Description

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

Result proxy object for OuterAnalysisManagerProxy.

Definition at line 695 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 697 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 712 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 702 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 761 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 719 of file PassManager.h.

References llvm::erase_if(), llvm::AnalysisManager< IRUnitT, ExtraArgTs >::Invalidator::invalidate(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().

◆ 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 745 of file PassManager.h.

References llvm::is_contained().


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