================
@@ -1021,3 +1026,31 @@ bool
WebAssemblyRegStackify::runOnMachineFunction(MachineFunction &MF) {
return Changed;
}
+
+bool WebAssemblyRegStackifyLegacy::runOnMachineFunction(MachineFunction &MF) {
+ MachineDominatorTree *MDT = nullptr;
+ LiveIntervals *LIS = nullptr;
+ if (Optimize) {
+ MDT = &getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree();
+ LIS = &getAnalysis<LiveIntervalsWrapperPass>().getLIS();
+ }
+ return regStackify(MF, Optimize, MDT, LIS);
+}
+
+PreservedAnalyses
+WebAssemblyRegStackifyPass::run(MachineFunction &MF,
+ MachineFunctionAnalysisManager &MFAM) {
+ MachineDominatorTree *MDT = nullptr;
+ LiveIntervals *LIS = nullptr;
+ if (Optimize) {
+ MDT = &MFAM.getResult<MachineDominatorTreeAnalysis>(MF);
+ LIS = &MFAM.getResult<LiveIntervalsAnalysis>(MF);
+ }
+ bool Changed = regStackify(MF, Optimize, MDT, LIS);
+ if (!Changed)
+ return PreservedAnalyses::all();
+ return getMachineFunctionPassPreservedAnalyses()
+ .preserveSet<CFGAnalyses>()
+ .preserve<LiveIntervalsAnalysis>()
----------------
aheejin wrote:
https://github.com/llvm/llvm-project/blob/6a33b69d8bae737e5e1d60c7b7776a0b1f885bfa/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp#L59
`LiveVariables` is included in th I guess?is `LiveIntervalsAnslysis` I guess?
https://github.com/llvm/llvm-project/pull/210224
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits