LLVM 20.0.0git
|
A CRTP mix-in to automatically provide informational APIs needed for passes. More...
#include "llvm/IR/PassManager.h"
Inherited by llvm::AnalysisInfoMixin< PreservedCFGCheckerAnalysis >, llvm::AnalysisInfoMixin< PreservedFunctionHashAnalysis >, llvm::AnalysisInfoMixin< PreservedModuleHashAnalysis >, llvm::AnalysisInfoMixin< AAManager >, llvm::AnalysisInfoMixin< AMDGPUAA >, llvm::AnalysisInfoMixin< AssumptionAnalysis >, llvm::AnalysisInfoMixin< BasicAA >, llvm::AnalysisInfoMixin< BasicBlockSectionsProfileReaderAnalysis >, llvm::AnalysisInfoMixin< BlockFrequencyAnalysis >, llvm::AnalysisInfoMixin< BranchProbabilityAnalysis >, llvm::AnalysisInfoMixin< CallGraphAnalysis >, llvm::AnalysisInfoMixin< CollectorMetadataAnalysis >, llvm::AnalysisInfoMixin< CtxProfAnalysis >, llvm::AnalysisInfoMixin< CycleAnalysis >, llvm::AnalysisInfoMixin< DDGAnalysis >, llvm::AnalysisInfoMixin< DXILMetadataAnalysis >, llvm::AnalysisInfoMixin< DXILResourceBindingAnalysis >, llvm::AnalysisInfoMixin< DXILResourceMDAnalysis >, llvm::AnalysisInfoMixin< DXILResourceTypeAnalysis >, llvm::AnalysisInfoMixin< DebugAssignmentTrackingAnalysis >, llvm::AnalysisInfoMixin< DemandedBitsAnalysis >, llvm::AnalysisInfoMixin< DependenceAnalysis >, llvm::AnalysisInfoMixin< DominanceFrontierAnalysis >, llvm::AnalysisInfoMixin< DominatorTreeAnalysis >, llvm::AnalysisInfoMixin< EdgeBundlesAnalysis >, llvm::AnalysisInfoMixin< FunctionAnalysisManagerCGSCCProxy >, llvm::AnalysisInfoMixin< FunctionAnalysisManagerMachineFunctionProxy >, llvm::AnalysisInfoMixin< FunctionPropertiesAnalysis >, llvm::AnalysisInfoMixin< GCFunctionAnalysis >, llvm::AnalysisInfoMixin< GlobalsAA >, llvm::AnalysisInfoMixin< IRSimilarityAnalysis >, llvm::AnalysisInfoMixin< IVUsersAnalysis >, llvm::AnalysisInfoMixin< InlineAdvisorAnalysis >, llvm::AnalysisInfoMixin< InlineSizeEstimatorAnalysis >, llvm::AnalysisInfoMixin< InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT > >, llvm::AnalysisInfoMixin< LastRunTrackingAnalysis >, llvm::AnalysisInfoMixin< LazyCallGraphAnalysis >, llvm::AnalysisInfoMixin< LazyValueAnalysis >, llvm::AnalysisInfoMixin< LiveDebugVariablesAnalysis >, llvm::AnalysisInfoMixin< LiveIntervalsAnalysis >, llvm::AnalysisInfoMixin< LiveRegMatrixAnalysis >, llvm::AnalysisInfoMixin< LiveStacksAnalysis >, llvm::AnalysisInfoMixin< LiveVariablesAnalysis >, llvm::AnalysisInfoMixin< LoopAccessAnalysis >, llvm::AnalysisInfoMixin< LoopAnalysis >, llvm::AnalysisInfoMixin< LoopNestAnalysis >, llvm::AnalysisInfoMixin< MachineBlockFrequencyAnalysis >, llvm::AnalysisInfoMixin< MachineBranchProbabilityAnalysis >, llvm::AnalysisInfoMixin< MachineDominatorTreeAnalysis >, llvm::AnalysisInfoMixin< MachineFunctionAnalysis >, llvm::AnalysisInfoMixin< MachineLoopAnalysis >, llvm::AnalysisInfoMixin< MachineModuleAnalysis >, llvm::AnalysisInfoMixin< MachineOptimizationRemarkEmitterAnalysis >, llvm::AnalysisInfoMixin< MachinePostDominatorTreeAnalysis >, llvm::AnalysisInfoMixin< MachineTraceMetricsAnalysis >, llvm::AnalysisInfoMixin< MemoryDependenceAnalysis >, llvm::AnalysisInfoMixin< MemorySSAAnalysis >, llvm::AnalysisInfoMixin< ModuleSummaryIndexAnalysis >, llvm::AnalysisInfoMixin< NVPTXAA >, llvm::AnalysisInfoMixin< NoOpCGSCCAnalysis >, llvm::AnalysisInfoMixin< NoOpFunctionAnalysis >, llvm::AnalysisInfoMixin< NoOpLoopAnalysis >, llvm::AnalysisInfoMixin< NoOpModuleAnalysis >, llvm::AnalysisInfoMixin< OptimizationRemarkEmitterAnalysis >, llvm::AnalysisInfoMixin< OuterAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs... > >, llvm::AnalysisInfoMixin< PassInstrumentationAnalysis >, llvm::AnalysisInfoMixin< PhiValuesAnalysis >, llvm::AnalysisInfoMixin< PhysicalRegisterUsageAnalysis >, llvm::AnalysisInfoMixin< PluginInlineAdvisorAnalysis >, llvm::AnalysisInfoMixin< PluginInlineOrderAnalysis >, llvm::AnalysisInfoMixin< PostDominatorTreeAnalysis >, llvm::AnalysisInfoMixin< ProfileSummaryAnalysis >, llvm::AnalysisInfoMixin< RegUsageInfoCollectorPass >, llvm::AnalysisInfoMixin< RegionInfoAnalysis >, llvm::AnalysisInfoMixin< SCEVAA >, llvm::AnalysisInfoMixin< SPIRVConvergenceRegionAnalysis >, llvm::AnalysisInfoMixin< SSPLayoutAnalysis >, llvm::AnalysisInfoMixin< ScalarEvolutionAnalysis >, llvm::AnalysisInfoMixin< ScopedNoAliasAA >, llvm::AnalysisInfoMixin< ShouldNotRunFunctionPassesAnalysis >, llvm::AnalysisInfoMixin< ShouldRunExtraSimpleLoopUnswitch >, llvm::AnalysisInfoMixin< ShouldRunExtraVectorPasses >, llvm::AnalysisInfoMixin< SlotIndexesAnalysis >, llvm::AnalysisInfoMixin< SpillPlacementAnalysis >, llvm::AnalysisInfoMixin< StackSafetyAnalysis >, llvm::AnalysisInfoMixin< StackSafetyGlobalAnalysis >, llvm::AnalysisInfoMixin< TargetIRAnalysis >, llvm::AnalysisInfoMixin< TargetLibraryAnalysis >, llvm::AnalysisInfoMixin< TypeBasedAA >, llvm::AnalysisInfoMixin< UniformityInfoAnalysis >, llvm::AnalysisInfoMixin< VerifierAnalysis >, llvm::AnalysisInfoMixin< VirtRegMapAnalysis >, llvm::AnalysisInfoMixin< ShaderFlagsAnalysis >, llvm::AnalysisInfoMixin< ObjCARCAA >, llvm::DOTGraphTraitsPrinter< DominatorTreeAnalysis, true >, llvm::DOTGraphTraitsPrinter< DominatorTreeAnalysis, false >, llvm::DOTGraphTraitsPrinter< PostDominatorTreeAnalysis, true >, llvm::DOTGraphTraitsPrinter< PostDominatorTreeAnalysis, false >, llvm::DOTGraphTraitsViewer< DominatorTreeAnalysis, true >, llvm::DOTGraphTraitsViewer< DominatorTreeAnalysis, false >, llvm::DOTGraphTraitsViewer< PostDominatorTreeAnalysis, true >, llvm::DOTGraphTraitsViewer< PostDominatorTreeAnalysis, false >, llvm::MachineLICMBasePass< EarlyMachineLICMPass, true >, llvm::MachineLICMBasePass< MachineLICMPass, false >, llvm::PassManager< Function >, llvm::PassManager< MachineFunction >, llvm::PassManager< Module >, llvm::PassManager< LazyCallGraph::SCC, CGSCCAnalysisManager, LazyCallGraph &, CGSCCUpdateResult & >, llvm::TailDuplicatePassBase< EarlyTailDuplicatePass, true >, llvm::TailDuplicatePassBase< TailDuplicatePass, false >, llvm::AnalysisInfoMixin< DerivedT >, llvm::DOTGraphTraitsPrinter< AnalysisT, IsSimple, GraphT, AnalysisGraphTraitsT >, llvm::DOTGraphTraitsViewer< AnalysisT, IsSimple, GraphT, AnalysisGraphTraitsT >, llvm::MachineLICMBasePass< DerivedT, PreRegAlloc >, llvm::PassManager< IRUnitT, AnalysisManagerT, ExtraArgTs >, llvm::RequireAnalysisPass< AnalysisT, IRUnitT, AnalysisManagerT, ExtraArgTs >, and llvm::TailDuplicatePassBase< DerivedT, PreRegAlloc >.
Public Member Functions | |
void | printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName) |
Static Public Member Functions | |
static StringRef | name () |
Gets the name of the pass we are mixed into. | |
A CRTP mix-in to automatically provide informational APIs needed for passes.
This provides some boilerplate for types that are passes.
Definition at line 69 of file PassManager.h.
|
inlinestatic |
Gets the name of the pass we are mixed into.
Definition at line 71 of file PassManager.h.
References Name.
|
inline |
Definition at line 79 of file PassManager.h.