llvm::updateCGAndAnalysisManagerForCGSCCPass

Helper to update the call graph after running a CGSCC pass.

Synopsis

Declared in <llvm/Analysis/CGSCCPassManager.h>

LazyCallGraph::SCC&
updateCGAndAnalysisManagerForCGSCCPass(
    LazyCallGraph& G,
    LazyCallGraph::SCC& C,
    LazyCallGraph::Node& N,
    CGSCCAnalysisManager& AM,
    CGSCCUpdateResult& UR,
    FunctionAnalysisManager& FAM);

Description

CGSCC passes can only mutate the call graph in specific ways. This routine provides a helper that updates the call graph in those ways including returning whether any changes were made and populating a CG update result struct for the overall CGSCC walk.

Return Value

The SCC that should be considered current after the update.

Parameters

NameDescription
GLazy call graph to update.
CSCC currently being processed.
NCall graph node involved in the update.
AMCGSCC analysis manager.
URStructure for communicating call graph updates.
FAMFunction analysis manager.