struct PassModel

Declaration

template <typename IRUnitT,
          typename PassT,
          typename PreservedAnalysesT,
          typename AnalysisManagerT,
          typename... ExtraArgTs>
struct PassModel { /* full declaration omitted */ };

Description

A template wrapper used to implement the polymorphic API. Can be instantiated for any object which provides a \c run method accepting an \c IRUnitT& and an \c AnalysisManager<IRUnit>&. It requires the pass to be a copyable object.

Declared at: llvm/include/llvm/IR/PassManagerInternal.h:60

Templates

IRUnitT
PassT
PreservedAnalysesT
AnalysisManagerT
ExtraArgTs

Member Variables

public PassT Pass

Method Overview

Methods

PassModel<IRUnitT,
          PassT,
          PreservedAnalysesT,
          AnalysisManagerT,
          ExtraArgTs...>(PassT Pass)

Declared at: llvm/include/llvm/IR/PassManagerInternal.h:61

Parameters

PassT Pass

PassModel<IRUnitT,
          PassT,
          PreservedAnalysesT,
          AnalysisManagerT,
          ExtraArgTs...>(
    const PassModel<IRUnitT,
                    PassT,
                    PreservedAnalysesT,
                    AnalysisManagerT,
                    ExtraArgTs...>& Arg)

Declared at: llvm/include/llvm/IR/PassManagerInternal.h:64

Parameters

const PassModel<IRUnitT, PassT, PreservedAnalysesT, AnalysisManagerT, ExtraArgTs...>& Arg

PassModel<IRUnitT,
          PassT,
          PreservedAnalysesT,
          AnalysisManagerT,
          ExtraArgTs...>(
    PassModel<IRUnitT,
              PassT,
              PreservedAnalysesT,
              AnalysisManagerT,
              ExtraArgTs...>&& Arg)

Declared at: llvm/include/llvm/IR/PassManagerInternal.h:65

Parameters

PassModel<IRUnitT, PassT, PreservedAnalysesT, AnalysisManagerT, ExtraArgTs...>&& Arg

llvm::StringRef name() const

Declared at: llvm/include/llvm/IR/PassManagerInternal.h:82

PreservedAnalysesT run(IRUnitT& IR,
                       AnalysisManagerT& AM,
                       ExtraArgTs... ExtraArgs)

Declared at: llvm/include/llvm/IR/PassManagerInternal.h:77

Parameters

IRUnitT& IR
AnalysisManagerT& AM
ExtraArgTs... ExtraArgs