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

#include <PassManager.h>

Public Member Functions

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

Detailed Description

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

Definition at line 909 of file PassManager.h.

Constructor & Destructor Documentation

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

Definition at line 911 of file PassManager.h.

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

Definition at line 912 of file PassManager.h.

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

Definition at line 926 of file PassManager.h.

Member Function Documentation

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

Accessor for the analysis manager.

Definition at line 937 of file PassManager.h.

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.

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

Definition at line 918 of file PassManager.h.


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