LLVM 22.0.0git
llvm::ExtraFunctionPassManager< MarkerTy > Class Template Reference

A pass manager to run a set of extra function passes if the ShouldRunExtraPasses marker analysis is present. More...

#include "llvm/Transforms/Utils/ExtraPassManager.h"

Inheritance diagram for llvm::ExtraFunctionPassManager< MarkerTy >:
[legend]

Public Member Functions

template<typename PassT>
void addPass (PassT &&Pass)
PreservedAnalyses run (Function &F, FunctionAnalysisManager &AM)
Public Member Functions inherited from llvm::PassInfoMixin< ExtraFunctionPassManager< MarkerTy > >
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)

Static Public Member Functions

static bool isRequired ()
Static Public Member Functions inherited from llvm::PassInfoMixin< ExtraFunctionPassManager< MarkerTy > >
static StringRef name ()
 Gets the name of the pass we are mixed into.

Detailed Description

template<typename MarkerTy>
class llvm::ExtraFunctionPassManager< MarkerTy >

A pass manager to run a set of extra function passes if the ShouldRunExtraPasses marker analysis is present.

This allows passes to request additional transformations on demand. An example is extra simplifications after loop-vectorization, if runtime checks have been added.

Definition at line 58 of file ExtraPassManager.h.

Member Function Documentation

◆ addPass()

template<typename MarkerTy>
template<typename PassT>
void llvm::ExtraFunctionPassManager< MarkerTy >::addPass ( PassT && Pass)
inline

Definition at line 63 of file ExtraPassManager.h.

◆ isRequired()

template<typename MarkerTy>
bool llvm::ExtraFunctionPassManager< MarkerTy >::isRequired ( )
inlinestatic

Definition at line 75 of file ExtraPassManager.h.

◆ run()


The documentation for this class was generated from the following file: