class PassInstrumentationAnalysis

Declaration

class PassInstrumentationAnalysis : public AnalysisInfoMixin { /* full declaration omitted */ };

Description

Pseudo-analysis pass that exposes the \c PassInstrumentation to pass managers. Goes before AnalysisManager definition to provide its internals (e.g PassInstrumentationAnalysis::ID) for use there if needed. FIXME: figure out a way to move PassInstrumentationAnalysis into its own header.

Declared at: llvm/include/llvm/IR/PassManager.h:600

Inherits from: AnalysisInfoMixin

Member Variables

private llvm::PassInstrumentationCallbacks* Callbacks
private static llvm::AnalysisKey Key

Method Overview

  • public PassInstrumentationAnalysis(llvm::PassInstrumentationCallbacks * Callbacks = nullptr)
  • public template <typename IRUnitT, typename AnalysisManagerT, typename... ExtraArgTs>llvm::PassInstrumentationAnalysis::Result run(IRUnitT &, AnalysisManagerT &, ExtraArgTs &&...)

Methods

PassInstrumentationAnalysis(
    llvm::PassInstrumentationCallbacks*
        Callbacks = nullptr)

Description

PassInstrumentationCallbacks object is shared, owned by something else, not this analysis.

Declared at: llvm/include/llvm/IR/PassManager.h:610

Parameters

llvm::PassInstrumentationCallbacks* Callbacks = nullptr

template <typename IRUnitT,
          typename AnalysisManagerT,
          typename... ExtraArgTs>
llvm::PassInstrumentationAnalysis::Result
run(IRUnitT&, AnalysisManagerT&, ExtraArgTs&&...)

Declared at: llvm/include/llvm/IR/PassManager.h:616

Templates

IRUnitT
AnalysisManagerT
ExtraArgTs

Parameters

IRUnitT&
AnalysisManagerT&
ExtraArgTs&&...