LLVM 22.0.0git
llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result Class Reference

#include "llvm/IR/PassManager.h"

Public Member Functions

 Result (AnalysisManagerT &InnerAM)
 Result (Result &&Arg)
 ~Result ()
Resultoperator= (Result &&RHS)
AnalysisManagerT & getManager ()
 Accessor for the analysis manager.
bool invalidate (IRUnitT &IR, const PreservedAnalyses &PA, typename AnalysisManager< IRUnitT, ExtraArgTs... >::Invalidator &Inv)
 Handler for invalidation of the outer IR unit, IRUnitT.

Detailed Description

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

Definition at line 587 of file PassManager.h.

Constructor & Destructor Documentation

◆ Result() [1/2]

template<typename AnalysisManagerT, typename IRUnitT, typename... ExtraArgTs>
llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::Result ( AnalysisManagerT & InnerAM)
inlineexplicit

Definition at line 589 of file PassManager.h.

Referenced by operator=(), and Result().

◆ Result() [2/2]

template<typename AnalysisManagerT, typename IRUnitT, typename... ExtraArgTs>
llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::Result ( Result && Arg)
inline

Definition at line 591 of file PassManager.h.

References llvm::move(), and Result().

◆ ~Result()

template<typename AnalysisManagerT, typename IRUnitT, typename... ExtraArgTs>
llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::~Result ( )
inline

Definition at line 598 of file PassManager.h.

Member Function Documentation

◆ getManager()

template<typename AnalysisManagerT, typename IRUnitT, typename... ExtraArgTs>
AnalysisManagerT & llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::getManager ( )
inline

Accessor for the analysis manager.

Definition at line 618 of file PassManager.h.

◆ invalidate()

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

Handler for invalidation of the outer IR unit, IRUnitT.

If the proxy analysis itself is not preserved, we assume that the set of inner IR objects contained in IRUnit may have changed. In this case, we have to call clear() on the inner analysis manager, as it may now have stale pointers to its inner IR objects.

Regardless of whether the proxy analysis is marked as preserved, all of the analyses in the inner analysis manager are potentially invalidated based on the set of preserved analyses.

References IR.

◆ operator=()

template<typename AnalysisManagerT, typename IRUnitT, typename... ExtraArgTs>
Result & llvm::InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs >::Result::operator= ( Result && RHS)
inline

Definition at line 608 of file PassManager.h.

References Result(), and RHS.


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