LLVM
8.0.1
|
Wrapper to model the analysis pass concept. More...
#include "llvm/IR/PassManagerInternal.h"
Public Types | |
using | ResultModelT = AnalysisResultModel< IRUnitT, PassT, typename PassT::Result, PreservedAnalysesT, InvalidatorT > |
Public Member Functions | |
AnalysisPassModel (PassT Pass) | |
AnalysisPassModel (const AnalysisPassModel &Arg) | |
AnalysisPassModel (AnalysisPassModel &&Arg) | |
AnalysisPassModel & | operator= (AnalysisPassModel RHS) |
std::unique_ptr< AnalysisResultConcept< IRUnitT, PreservedAnalysesT, InvalidatorT > > | run (IRUnitT &IR, AnalysisManager< IRUnitT, ExtraArgTs... > &AM, ExtraArgTs... ExtraArgs) override |
The model delegates to the PassT::run method. More... | |
StringRef | name () const override |
The model delegates to a static PassT::name method. More... | |
Public Member Functions inherited from llvm::detail::AnalysisPassConcept< IRUnitT, PreservedAnalysesT, InvalidatorT, ExtraArgTs... > | |
virtual | ~AnalysisPassConcept ()=default |
Public Attributes | |
PassT | Pass |
Friends | |
void | swap (AnalysisPassModel &LHS, AnalysisPassModel &RHS) |
Wrapper to model the analysis pass concept.
Can wrap any type which implements a suitable run
method. The method must accept an IRUnitT&
and an AnalysisManager<IRUnitT>&
as arguments and produce an object which can be wrapped in a AnalysisResultModel
.
Definition at line 263 of file PassManagerInternal.h.
using llvm::detail::AnalysisPassModel< IRUnitT, PassT, PreservedAnalysesT, InvalidatorT, ExtraArgTs >::ResultModelT = AnalysisResultModel<IRUnitT, PassT, typename PassT::Result, PreservedAnalysesT, InvalidatorT> |
Definition at line 284 of file PassManagerInternal.h.
|
inlineexplicit |
Definition at line 265 of file PassManagerInternal.h.
|
inline |
Definition at line 268 of file PassManagerInternal.h.
|
inline |
Definition at line 269 of file PassManagerInternal.h.
|
inlineoverridevirtual |
The model delegates to a static PassT::name
method.
The returned string ref must point to constant immutable data!
Implements llvm::detail::AnalysisPassConcept< IRUnitT, PreservedAnalysesT, InvalidatorT, ExtraArgTs... >.
Definition at line 300 of file PassManagerInternal.h.
References name.
|
inline |
Definition at line 276 of file PassManagerInternal.h.
References std::swap().
|
inlineoverridevirtual |
The model delegates to the PassT::run
method.
The return is wrapped in an AnalysisResultModel
.
Implements llvm::detail::AnalysisPassConcept< IRUnitT, PreservedAnalysesT, InvalidatorT, ExtraArgTs... >.
Definition at line 291 of file PassManagerInternal.h.
|
friend |
Definition at line 271 of file PassManagerInternal.h.
PassT llvm::detail::AnalysisPassModel< IRUnitT, PassT, PreservedAnalysesT, InvalidatorT, ExtraArgTs >::Pass |
Definition at line 302 of file PassManagerInternal.h.