class CGSCCToFunctionPassAdaptor

Declaration

class CGSCCToFunctionPassAdaptor : public PassInfoMixin { /* full declaration omitted */ };

Description

Adaptor that maps from a SCC to its functions. Designed to allow composition of a FunctionPass(Manager) and a CGSCCPassManager. Note that if this pass is constructed with a pointer to a \c CGSCCAnalysisManager it will run the\c FunctionAnalysisManagerCGSCCProxy analysis prior to running the function pass over the SCC to enable a \c FunctionAnalysisManager to be used within this run safely.

Declared at: llvm/include/llvm/Analysis/CGSCCPassManager.h:459

Inherits from: PassInfoMixin

Member Variables

private std::unique_ptr<PassConceptT> Pass
private bool EagerlyInvalidate
private bool NoRerun

Method Overview

  • public CGSCCToFunctionPassAdaptor(std::unique_ptr<PassConceptT> Pass, bool EagerlyInvalidate, bool NoRerun)
  • public CGSCCToFunctionPassAdaptor(llvm::CGSCCToFunctionPassAdaptor && Arg)
  • public static bool isRequired()
  • public void printPipeline(llvm::raw_ostream & OS, function_ref<llvm::StringRef (llvm::StringRef)> MapClassName2PassName)
  • public llvm::PreservedAnalyses run(LazyCallGraph::SCC & C, llvm::CGSCCAnalysisManager & AM, llvm::LazyCallGraph & CG, llvm::CGSCCUpdateResult & UR)

Methods

CGSCCToFunctionPassAdaptor(
    std::unique_ptr<PassConceptT> Pass,
    bool EagerlyInvalidate,
    bool NoRerun)

Declared at: llvm/include/llvm/Analysis/CGSCCPassManager.h:464

Parameters

std::unique_ptr<PassConceptT> Pass
bool EagerlyInvalidate
bool NoRerun

CGSCCToFunctionPassAdaptor(
    llvm::CGSCCToFunctionPassAdaptor&& Arg)

Declared at: llvm/include/llvm/Analysis/CGSCCPassManager.h:469

Parameters

llvm::CGSCCToFunctionPassAdaptor&& Arg

static bool isRequired()

Declared at: llvm/include/llvm/Analysis/CGSCCPassManager.h:497

void printPipeline(
    llvm::raw_ostream& OS,
    function_ref<llvm::StringRef(llvm::StringRef)>
        MapClassName2PassName)

Declared at: llvm/include/llvm/Analysis/CGSCCPassManager.h:487

Parameters

llvm::raw_ostream& OS
function_ref<llvm::StringRef(llvm::StringRef)> MapClassName2PassName

llvm::PreservedAnalyses run(
    LazyCallGraph::SCC& C,
    llvm::CGSCCAnalysisManager& AM,
    llvm::LazyCallGraph& CG,
    llvm::CGSCCUpdateResult& UR)

Description

Runs the function pass across every function in the module.

Declared at: llvm/include/llvm/Analysis/CGSCCPassManager.h:484

Parameters

LazyCallGraph::SCC& C
llvm::CGSCCAnalysisManager& AM
llvm::LazyCallGraph& CG
llvm::CGSCCUpdateResult& UR