[llvm] [WebAssembly] Port WebAssemblyArgumentMovePass (PR #209368)

Heejin Ahn via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 17 23:42:25 PDT 2026


================
@@ -92,3 +96,15 @@ bool WebAssemblyArgumentMove::runOnMachineFunction(MachineFunction &MF) {
 
   return Changed;
 }
+
+bool WebAssemblyArgumentMoveLegacy::runOnMachineFunction(MachineFunction &MF) {
+  return argumentMove(MF);
+}
+
+PreservedAnalyses
+WebAssemblyArgumentMovePass::run(MachineFunction &MF,
+                                 MachineFunctionAnalysisManager &MFAM) {
+  return argumentMove(MF) ? getMachineFunctionPassPreservedAnalyses()
+                                .preserveSet<CFGAnalyses>()
+                          : PreservedAnalyses::all();
----------------
aheejin wrote:

https://github.com/llvm/llvm-project/blob/6a33b69d8bae737e5e1d60c7b7776a0b1f885bfa/llvm/lib/Target/WebAssembly/WebAssemblyArgumentMove.cpp#L51-L56

We seem to preserve `MachineBlockFrequencyInfo` and `MachineDominator` too. Do we have counterparts of these in the new PM?

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


More information about the llvm-commits mailing list