LLVM 24.0.0git
llvm::detail::PassModel< IRUnitT, PassT, AnalysisManagerT, ExtraArgTs > Class Template Referencefinal

A template wrapper used to implement PassConcept. More...

#include "llvm/IR/PassManagerInternal.h"

Inheritance diagram for llvm::detail::PassModel< IRUnitT, PassT, AnalysisManagerT, ExtraArgTs >:
[legend]

Static Public Member Functions

static PassConceptT::unique_ptr create (PassT &&Pass)

Additional Inherited Members

Public Types inherited from llvm::detail::PassConcept< IRUnitT, AnalysisManagerT, ExtraArgTs... >
using unique_ptr
Public Member Functions inherited from llvm::detail::PassConcept< IRUnitT, AnalysisManagerT, ExtraArgTs... >
 PassConcept (const PassConcept &)=delete
PassConceptoperator= (const PassConcept &)=delete
PreservedAnalyses run (IRUnitT &IR, AnalysisManagerT &AM, ExtraArgTs... ExtraArgs)
 Run the pass.
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)
StringRef name () const
 Get name of a pass.
bool isRequired () const
 Indicate whether a pass can optionally be exempted from skipping by PassInstrumentation.
Protected Member Functions inherited from llvm::detail::PassConcept< IRUnitT, AnalysisManagerT, ExtraArgTs... >
 PassConcept (StringRef Name, bool IsRequired, DestroyTy Destroy, RunTy Run, PrintPipelineTy PrintPipeline)
void operator delete (void *P)

Detailed Description

template<typename IRUnitT, typename PassT, typename AnalysisManagerT, typename... ExtraArgTs>
class llvm::detail::PassModel< IRUnitT, PassT, AnalysisManagerT, ExtraArgTs >

A template wrapper used to implement PassConcept.

Can be instantiated for any object which provides a run method accepting an IRUnitT& and an AnalysisManager<IRUnit>&.

Definition at line 110 of file PassManagerInternal.h.

Member Function Documentation

◆ create()

template<typename IRUnitT, typename PassT, typename AnalysisManagerT, typename... ExtraArgTs>
PassConceptT::unique_ptr llvm::detail::PassModel< IRUnitT, PassT, AnalysisManagerT, ExtraArgTs >::create ( PassT && Pass)
inlinestatic

Definition at line 143 of file PassManagerInternal.h.


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