LLVM 18.0.0git
|
A pass manager to run a set of extra function simplification passes after vectorization, if requested. More...
#include "llvm/Transforms/Vectorize/LoopVectorize.h"
Public Member Functions | |
PreservedAnalyses | run (Function &F, FunctionAnalysisManager &AM) |
![]() | |
PassManager ()=default | |
Construct a pass manager. | |
PassManager (PassManager &&Arg) | |
PassManager & | operator= (PassManager &&RHS) |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
PreservedAnalyses | run (Function &IR, AnalysisManager< Function > &AM, ExtraArgTs... ExtraArgs) |
Run all of the passes in this manager over the given unit of IR. | |
PreservedAnalyses | run (LazyCallGraph::SCC &InitialC, CGSCCAnalysisManager &AM, LazyCallGraph &G, CGSCCUpdateResult &UR) |
PreservedAnalyses | run (LazyCallGraph::SCC &InitialC, CGSCCAnalysisManager &AM, LazyCallGraph &G, CGSCCUpdateResult &UR) |
Explicitly specialize the pass manager run method to handle call graph updates. | |
LLVM_ATTRIBUTE_MINSIZE std::enable_if_t<!std::is_same< PassT, PassManager >::value > | addPass (PassT &&Pass) |
LLVM_ATTRIBUTE_MINSIZE std::enable_if_t< std::is_same< PassT, PassManager >::value > | addPass (PassT &&Pass) |
When adding a pass manager pass that has the same type as this pass manager, simply move the passes over. | |
bool | isEmpty () const |
Returns if the pass manager contains any passes. | |
![]() | |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
Additional Inherited Members | |
![]() | |
static bool | isRequired () |
![]() | |
static StringRef | name () |
Gets the name of the pass we are mixed into. | |
![]() | |
using | PassConceptT = detail::PassConcept< Function, AnalysisManager< Function >, ExtraArgTs... > |
![]() | |
std::vector< std::unique_ptr< PassConceptT > > | Passes |
A pass manager to run a set of extra function simplification passes after vectorization, if requested.
LoopVectorize caches the ShouldRunExtraVectorPasses analysis to request extra simplifications, if they could be beneficial.
Definition at line 104 of file LoopVectorize.h.
|
inline |
Definition at line 105 of file LoopVectorize.h.
References llvm::PreservedAnalyses::all(), F, llvm::AnalysisManager< IRUnitT, ExtraArgTs >::getCachedResult(), and llvm::PassManager< Function >::run().