[llvm] AMDGPU: Remove legacy pass manager version of AMDGPUUnifyMetadata (PR #144985)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 19 23:13:09 PDT 2025


https://github.com/arsenm created https://github.com/llvm/llvm-project/pull/144985

This is only run in the new pass manager now.

>From 37187288a2625a4b4c476a4270ffa992c6cd7abd Mon Sep 17 00:00:00 2001
From: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: Fri, 20 Jun 2025 15:03:53 +0900
Subject: [PATCH] AMDGPU: Remove legacy pass manager version of
 AMDGPUUnifyMetadata

This is only run in the new pass manager now.
---
 llvm/lib/Target/AMDGPU/AMDGPU.h               |  4 ---
 .../lib/Target/AMDGPU/AMDGPUTargetMachine.cpp |  1 -
 .../lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp | 27 +------------------
 3 files changed, 1 insertion(+), 31 deletions(-)

diff --git a/llvm/lib/Target/AMDGPU/AMDGPU.h b/llvm/lib/Target/AMDGPU/AMDGPU.h
index 5a917734e9c74..39f127802fcf2 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPU.h
+++ b/llvm/lib/Target/AMDGPU/AMDGPU.h
@@ -443,10 +443,6 @@ struct AMDGPUPrintfRuntimeBindingPass
   PreservedAnalyses run(Module &M, ModuleAnalysisManager &AM);
 };
 
-ModulePass* createAMDGPUUnifyMetadataPass();
-void initializeAMDGPUUnifyMetadataPass(PassRegistry&);
-extern char &AMDGPUUnifyMetadataID;
-
 struct AMDGPUUnifyMetadataPass : PassInfoMixin<AMDGPUUnifyMetadataPass> {
   PreservedAnalyses run(Module &M, ModuleAnalysisManager &AM);
 };
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
index f390d39043ed5..ff91cdca46595 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
@@ -538,7 +538,6 @@ extern "C" LLVM_ABI LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAMDGPUTarget() {
   initializeAMDGPUReserveWWMRegsLegacyPass(*PR);
   initializeAMDGPURewriteOutArgumentsPass(*PR);
   initializeAMDGPURewriteUndefForPHILegacyPass(*PR);
-  initializeAMDGPUUnifyMetadataPass(*PR);
   initializeSIAnnotateControlFlowLegacyPass(*PR);
   initializeAMDGPUInsertDelayAluLegacyPass(*PR);
   initializeSIInsertHardClausesLegacyPass(*PR);
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp b/llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
index cd7866b86d55b..e400491c3860e 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
@@ -32,17 +32,6 @@ namespace {
 
   } // end namespace kOCLMD
 
-  /// Unify multiple OpenCL metadata due to linking.
-  class AMDGPUUnifyMetadata : public ModulePass {
-  public:
-    static char ID;
-
-    explicit AMDGPUUnifyMetadata() : ModulePass(ID) {}
-
-  private:
-    bool runOnModule(Module &M) override;
-  };
-
     /// Unify version metadata.
     /// \return true if changes are made.
     /// Assume the named metadata has operands each of which is a pair of
@@ -104,6 +93,7 @@ namespace {
     return true;
   }
 
+  /// Unify multiple OpenCL metadata due to linking.
   bool unifyMetadataImpl(Module &M) {
     const char *Vers[] = {kOCLMD::SpirVer, kOCLMD::OCLVer};
     const char *Exts[] = {kOCLMD::UsedExt, kOCLMD::UsedOptCoreFeat,
@@ -122,21 +112,6 @@ namespace {
 
   } // end anonymous namespace
 
-  char AMDGPUUnifyMetadata::ID = 0;
-
-  char &llvm::AMDGPUUnifyMetadataID = AMDGPUUnifyMetadata::ID;
-
-  INITIALIZE_PASS(AMDGPUUnifyMetadata, "amdgpu-unify-metadata",
-                  "Unify multiple OpenCL metadata due to linking", false, false)
-
-  ModulePass *llvm::createAMDGPUUnifyMetadataPass() {
-    return new AMDGPUUnifyMetadata();
-  }
-
-  bool AMDGPUUnifyMetadata::runOnModule(Module &M) {
-    return unifyMetadataImpl(M);
-  }
-
   PreservedAnalyses AMDGPUUnifyMetadataPass::run(Module &M,
                                                  ModuleAnalysisManager &AM) {
     return unifyMetadataImpl(M) ? PreservedAnalyses::none()



More information about the llvm-commits mailing list