[llvm] [CodeGen][NewPM] Port `AsmPrinter` to new pass manager (PR #99320)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Wed May 21 08:08:53 PDT 2025


================
@@ -541,11 +548,20 @@ bool AsmPrinter::doInitialization(Module &M) {
       OutStreamer->emitXCOFFRenameDirective(XSym, XSym->getSymbolTableName());
   }
 
-  GCModuleInfo *MI = getAnalysisIfAvailable<GCModuleInfo>();
-  assert(MI && "AsmPrinter didn't require GCModuleInfo?");
-  for (const auto &I : *MI)
-    if (GCMetadataPrinter *MP = getOrCreateGCPrinter(*I))
-      MP->beginAssembly(M, *MI, *this);
+  if (inNewPassManager()) {
+    auto &MI = MAM->getResult<CollectorMetadataAnalysis>(M);
+    for (const auto &[Name, Strategy] : MI)
----------------
arsenm wrote:

Braces 

https://github.com/llvm/llvm-project/pull/99320


More information about the llvm-commits mailing list