[llvm-branch-commits] [llvm] [WebAssembly] Port AsmPrinter (PR #210448)
Aiden Grossman via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sat Jul 18 16:27:15 PDT 2026
https://github.com/boomanaiden154 updated https://github.com/llvm/llvm-project/pull/210448
>From 50061795ac490d048594d9068fff279b218a74d2 Mon Sep 17 00:00:00 2001
From: Aiden Grossman <aidengrossman at google.com>
Date: Fri, 17 Jul 2026 22:25:33 +0000
Subject: [PATCH 1/2] formatting
Created using spr 1.3.7
---
.../WebAssembly/WebAssemblyAsmPrinter.cpp | 21 +++++++++++++------
.../WebAssemblyCodeGenPassBuilder.cpp | 9 +++++---
2 files changed, 21 insertions(+), 9 deletions(-)
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
index 97f0c522712f9..c82743834311d 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
@@ -823,22 +823,31 @@ LLVMInitializeWebAssemblyAsmPrinter() {
RegisterAsmPrinter<WebAssemblyAsmPrinter> Y(getTheWebAssemblyTarget64());
}
-PreservedAnalyses WebAssemblyAsmPrinterBeginPass::run(Module &M, ModuleAnalysisManager &MAM) {
- WebAssemblyAsmPrinter &AsmPrinter = static_cast<WebAssemblyAsmPrinter&>(MAM.getResult<AsmPrinterAnalysis>(M).getPrinter());
+PreservedAnalyses
+WebAssemblyAsmPrinterBeginPass::run(Module &M, ModuleAnalysisManager &MAM) {
+ WebAssemblyAsmPrinter &AsmPrinter = static_cast<WebAssemblyAsmPrinter &>(
+ MAM.getResult<AsmPrinterAnalysis>(M).getPrinter());
setupModuleAsmPrinter(M, MAM, AsmPrinter);
AsmPrinter.doInitialization(M);
return PreservedAnalyses::all();
}
-PreservedAnalyses WebAssemblyAsmPrinterPass::run(MachineFunction &MF, MachineFunctionAnalysisManager &MFAM) {
- WebAssemblyAsmPrinter &AsmPrinter = static_cast<WebAssemblyAsmPrinter&>(MFAM.getResult<ModuleAnalysisManagerMachineFunctionProxy>(MF).getCachedResult<AsmPrinterAnalysis>(*MF.getFunction().getParent())->getPrinter());
+PreservedAnalyses
+WebAssemblyAsmPrinterPass::run(MachineFunction &MF,
+ MachineFunctionAnalysisManager &MFAM) {
+ WebAssemblyAsmPrinter &AsmPrinter = static_cast<WebAssemblyAsmPrinter &>(
+ MFAM.getResult<ModuleAnalysisManagerMachineFunctionProxy>(MF)
+ .getCachedResult<AsmPrinterAnalysis>(*MF.getFunction().getParent())
+ ->getPrinter());
setupMachineFunctionAsmPrinter(MFAM, MF, AsmPrinter);
AsmPrinter.runOnMachineFunction(MF);
return PreservedAnalyses::all();
}
-PreservedAnalyses WebAssemblyAsmPrinterEndPass::run(Module &M, ModuleAnalysisManager &MAM) {
- WebAssemblyAsmPrinter &AsmPrinter = static_cast<WebAssemblyAsmPrinter&>(MAM.getResult<AsmPrinterAnalysis>(M).getPrinter());
+PreservedAnalyses
+WebAssemblyAsmPrinterEndPass::run(Module &M, ModuleAnalysisManager &MAM) {
+ WebAssemblyAsmPrinter &AsmPrinter = static_cast<WebAssemblyAsmPrinter &>(
+ MAM.getResult<AsmPrinterAnalysis>(M).getPrinter());
setupModuleAsmPrinter(M, MAM, AsmPrinter);
AsmPrinter.doFinalization(M);
return PreservedAnalyses::all();
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
index 06c7193391852..a7c75e9b54c91 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
@@ -249,15 +249,18 @@ void WebAssemblyCodeGenPassBuilder::addPreEmitPass(
addModulePass(WebAssemblyMCLowerPrePass(), PMW);
}
-void WebAssemblyCodeGenPassBuilder::addAsmPrinterBegin(PassManagerWrapper &PMW) const {
+void WebAssemblyCodeGenPassBuilder::addAsmPrinterBegin(
+ PassManagerWrapper &PMW) const {
addModulePass(WebAssemblyAsmPrinterBeginPass(), PMW);
}
-void WebAssemblyCodeGenPassBuilder::addAsmPrinter(PassManagerWrapper &PMW) const {
+void WebAssemblyCodeGenPassBuilder::addAsmPrinter(
+ PassManagerWrapper &PMW) const {
addMachineFunctionPass(WebAssemblyAsmPrinterPass(), PMW);
}
-void WebAssemblyCodeGenPassBuilder::adddAsmPrinterEnd(PassManagerWrapper &PMW) const {
+void WebAssemblyCodeGenPassBuilder::adddAsmPrinterEnd(
+ PassManagerWrapper &PMW) const {
addModulePass(WebAssemblyAsmPrinterEndPass(), PMW);
}
>From ed5d141ff234e762b4f14e859f4fd3f38865561a Mon Sep 17 00:00:00 2001
From: Aiden Grossman <aidengrossman at google.com>
Date: Sat, 18 Jul 2026 03:25:37 +0000
Subject: [PATCH 2/2] fix
Created using spr 1.3.7
---
llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp | 4 ++--
llvm/tools/llc/llc.cpp | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
index a7c75e9b54c91..1c8d0f0f45333 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
@@ -83,7 +83,7 @@ class WebAssemblyCodeGenPassBuilder
void addPreEmitPass(PassManagerWrapper &PMW) const;
void addAsmPrinterBegin(PassManagerWrapper &PMW) const;
void addAsmPrinter(PassManagerWrapper &PMW) const;
- void adddAsmPrinterEnd(PassManagerWrapper &PMW) const;
+ void addAsmPrinterEnd(PassManagerWrapper &PMW) const;
};
void WebAssemblyCodeGenPassBuilder::addIRPasses(PassManagerWrapper &PMW) const {
@@ -259,7 +259,7 @@ void WebAssemblyCodeGenPassBuilder::addAsmPrinter(
addMachineFunctionPass(WebAssemblyAsmPrinterPass(), PMW);
}
-void WebAssemblyCodeGenPassBuilder::adddAsmPrinterEnd(
+void WebAssemblyCodeGenPassBuilder::addAsmPrinterEnd(
PassManagerWrapper &PMW) const {
addModulePass(WebAssemblyAsmPrinterEndPass(), PMW);
}
diff --git a/llvm/tools/llc/llc.cpp b/llvm/tools/llc/llc.cpp
index dcd54c18401d0..fabc0e16ee0cf 100644
--- a/llvm/tools/llc/llc.cpp
+++ b/llvm/tools/llc/llc.cpp
@@ -219,7 +219,7 @@ static cl::list<std::string> PassPlugins("load-pass-plugin",
cl::desc("Load plugin library"));
static cl::opt<bool> EnableNewPassManager(
- "enable-new-pm", cl::desc("Enable the new pass manager"), cl::init(false));
+ "enable-new-pm", cl::desc("Enable the new pass manager"), cl::init(true));
// This flag specifies a textual description of the optimization pass pipeline
// to run over the module. This flag switches opt to use the new pass manager
More information about the llvm-branch-commits
mailing list