From 5427ea65b48c1c2a64610cc02372e6d221cdb5e5 Mon Sep 17 00:00:00 2001 From: PaperChalice Date: Sat, 10 Feb 2024 14:33:31 +0800 Subject: [PATCH] [CodeGenPassBuilder] Remove analysis registering interfaces PassBuilder already can do this. --- llvm/include/llvm/Passes/CodeGenPassBuilder.h | 67 +------------------ 1 file changed, 1 insertion(+), 66 deletions(-) diff --git a/llvm/include/llvm/Passes/CodeGenPassBuilder.h b/llvm/include/llvm/Passes/CodeGenPassBuilder.h index fa6dbd4a49730..80bbfb75185a9 100644 --- a/llvm/include/llvm/Passes/CodeGenPassBuilder.h +++ b/llvm/include/llvm/Passes/CodeGenPassBuilder.h @@ -7,8 +7,7 @@ //===----------------------------------------------------------------------===// /// \file /// -/// Interfaces for registering analysis passes, producing common pass manager -/// configurations, and parsing of pass pipelines. +/// Interfaces for producing common pass manager configurations. /// //===----------------------------------------------------------------------===// @@ -137,16 +136,6 @@ template class CodeGenPassBuilder { raw_pwrite_stream &Out, raw_pwrite_stream *DwoOut, CodeGenFileType FileType) const; - void registerModuleAnalyses(ModuleAnalysisManager &) const; - void registerFunctionAnalyses(FunctionAnalysisManager &) const; - void registerMachineFunctionAnalyses(MachineFunctionAnalysisManager &) const; - - void registerAnalyses(MachineFunctionAnalysisManager &MFAM) const { - registerModuleAnalyses(*MFAM.MAM); - registerFunctionAnalyses(*MFAM.FAM); - registerMachineFunctionAnalyses(MFAM); - } - PassInstrumentationCallbacks *getPassInstrumentationCallbacks() const { return PIC; } @@ -239,14 +228,6 @@ template class CodeGenPassBuilder { CGPassBuilderOption Opt; PassInstrumentationCallbacks *PIC; - /// Target override these hooks to parse target-specific analyses. - void registerTargetAnalysis(ModuleAnalysisManager &) const {} - void registerTargetAnalysis(FunctionAnalysisManager &) const {} - void registerTargetAnalysis(MachineFunctionAnalysisManager &) const {} - std::pair getTargetPassNameFromLegacyName(StringRef) const { - return {"", false}; - } - template TMC &getTM() const { return static_cast(TM); } CodeGenOptLevel getOptLevel() const { return TM.getOptLevel(); } @@ -577,52 +558,6 @@ Error CodeGenPassBuilder::verifyStartStop( return Error::success(); } -static inline AAManager registerAAAnalyses() { - AAManager AA; - - // The order in which these are registered determines their priority when - // being queried. - - // Basic AliasAnalysis support. - // Add TypeBasedAliasAnalysis before BasicAliasAnalysis so that - // BasicAliasAnalysis wins if they disagree. This is intended to help - // support "obvious" type-punning idioms. - AA.registerFunctionAnalysis(); - AA.registerFunctionAnalysis(); - AA.registerFunctionAnalysis(); - - return AA; -} - -template -void CodeGenPassBuilder::registerModuleAnalyses( - ModuleAnalysisManager &MAM) const { -#define MODULE_ANALYSIS(NAME, CREATE_PASS) \ - MAM.registerPass([&] { return CREATE_PASS; }); -#include "MachinePassRegistry.def" - derived().registerTargetAnalysis(MAM); -} - -template -void CodeGenPassBuilder::registerFunctionAnalyses( - FunctionAnalysisManager &FAM) const { - FAM.registerPass([this] { return registerAAAnalyses(); }); - -#define FUNCTION_ANALYSIS(NAME, CREATE_PASS) \ - FAM.registerPass([&] { return CREATE_PASS; }); -#include "MachinePassRegistry.def" - derived().registerTargetAnalysis(FAM); -} - -template -void CodeGenPassBuilder::registerMachineFunctionAnalyses( - MachineFunctionAnalysisManager &MFAM) const { -#define MACHINE_FUNCTION_ANALYSIS(NAME, CREATE_PASS) \ - MFAM.registerPass([&] { return CREATE_PASS; }); -#include "MachinePassRegistry.def" - derived().registerTargetAnalysis(MFAM); -} - template void CodeGenPassBuilder::addISelPasses(AddIRPass &addPass) const { derived().addGlobalMergePass(addPass);