[#llvm-CGSCCToFunctionPassAdaptor] = xref:llvm.adoc[llvm]::CGSCCToFunctionPassAdaptor :relfileprefix: ../ :mrdocs: Adaptor that maps from a SCC to its functions. == Synopsis Declared in `<llvm/Analysis/CGSCCPassManager.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class CGSCCToFunctionPassAdaptor : public xref:llvm/RequiredPassInfoMixin-047.adoc[RequiredPassInfoMixin<CGSCCToFunctionPassAdaptor>] ---- == Description Designed to allow composition of a FunctionPass(Manager) and a CGSCCPassManager. Note that if this pass is constructed with a pointer to a `CGSCCAnalysisManager` it will run the `FunctionAnalysisManagerCGSCCProxy` analysis prior to running the function pass over the SCC to enable a `FunctionAnalysisManager` to be used within this run safely. == Base Classes [cols="1,4"] |=== | Name| Description | `xref:llvm/RequiredPassInfoMixin-047.adoc[RequiredPassInfoMixin<CGSCCToFunctionPassAdaptor>]` | A CRTP mix‐in for passes that should not be skipped. |=== == Type Aliases [cols="1,4"] |=== | Name| Description | xref:llvm/CGSCCToFunctionPassAdaptor/PassConceptT.adoc[`PassConceptT`] | Type‐erased function pass concept used by this adaptor. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/CGSCCToFunctionPassAdaptor/2constructor-0c.adoc[`CGSCCToFunctionPassAdaptor`] [.small]#[constructor]# | Constructors | xref:llvm/CGSCCToFunctionPassAdaptor/operator_assign.adoc[`operator=`] | Assign from `RHS` using copy‐and‐swap. | xref:llvm/CGSCCToFunctionPassAdaptor/printPipeline.adoc[`printPipeline`] | Print this adaptor and its nested function pass as a pipeline. | xref:llvm/CGSCCToFunctionPassAdaptor/run.adoc[`run`] | Runs the function pass across every function in the module. |=== == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/CGSCCToFunctionPassAdaptor/isRequired.adoc[`isRequired`] | Return true; required passes cannot be skipped. |=== == Friends [cols="1,4"] |=== | Name| Description | `xref:llvm/swap-049.adoc[llvm::swap]` | Swap the nested passes of two adaptors. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:llvm/createCGSCCToFunctionPassAdaptor.adoc[`createCGSCCToFunctionPassAdaptor`] | A function to deduce a function pass type and wrap it in the templated adaptor. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#