LLVM 22.0.0git
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 719 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 721 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 736 of file PassManager.h.

References getCachedResult(), and 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 726 of file PassManager.h.

References getCachedResult(), and IR.

Referenced by cachedResultExists(), and getCachedResult().

◆ 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 785 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

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

References llvm::is_contained().


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