LLVM  3.7.0
llvm::detail::PassModel< IRUnitT, PassT, PreservedAnalysesT, AcceptsAnalysisManager > Struct Template Reference

A template wrapper used to implement the polymorphic API. More...

#include <PassManagerInternal.h>

Detailed Description

template<typename IRUnitT, typename PassT, typename PreservedAnalysesT = PreservedAnalyses, bool AcceptsAnalysisManager = PassRunAcceptsAnalysisManager< IRUnitT, PassT, PreservedAnalysesT>::Value>
struct llvm::detail::PassModel< IRUnitT, PassT, PreservedAnalysesT, AcceptsAnalysisManager >

A template wrapper used to implement the polymorphic API.

Can be instantiated for any object which provides a run method accepting an IRUnitT. It requires the pass to be a copyable object. When the run method also accepts an AnalysisManager<IRUnitT>*, we pass it along.

Definition at line 78 of file PassManagerInternal.h.


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