From abde52aa667118d18e9551ab87a15b95c267b3b6 Mon Sep 17 00:00:00 2001 From: paperchalice Date: Wed, 10 Jul 2024 19:34:48 +0800 Subject: [CodeGen][NewPM] Port `LiveIntervals` to new pass manager (#98118) - Add `LiveIntervalsAnalysis`. - Add `LiveIntervalsPrinterPass`. - Use `LiveIntervalsWrapperPass` in legacy pass manager. - Use `std::unique_ptr` instead of raw pointer for `LICalc`, so destructor and default move constructor can handle it correctly. This would be the last analysis required by `PHIElimination`. --- llvm/lib/CodeGen/InlineSpiller.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'llvm/lib/CodeGen/InlineSpiller.cpp') diff --git a/llvm/lib/CodeGen/InlineSpiller.cpp b/llvm/lib/CodeGen/InlineSpiller.cpp index dc03f590ded3..6abbf8b6d7e0 100644 --- a/llvm/lib/CodeGen/InlineSpiller.cpp +++ b/llvm/lib/CodeGen/InlineSpiller.cpp @@ -131,7 +131,7 @@ class HoistSpillHelper : private LiveRangeEdit::Delegate { public: HoistSpillHelper(MachineFunctionPass &pass, MachineFunction &mf, VirtRegMap &vrm) - : MF(mf), LIS(pass.getAnalysis()), + : MF(mf), LIS(pass.getAnalysis().getLIS()), LSS(pass.getAnalysis()), MDT(pass.getAnalysis().getDomTree()), VRM(vrm), MRI(mf.getRegInfo()), TII(*mf.getSubtarget().getInstrInfo()), @@ -188,7 +188,7 @@ class InlineSpiller : public Spiller { public: InlineSpiller(MachineFunctionPass &Pass, MachineFunction &MF, VirtRegMap &VRM, VirtRegAuxInfo &VRAI) - : MF(MF), LIS(Pass.getAnalysis()), + : MF(MF), LIS(Pass.getAnalysis().getLIS()), LSS(Pass.getAnalysis()), MDT(Pass.getAnalysis().getDomTree()), VRM(VRM), MRI(MF.getRegInfo()), TII(*MF.getSubtarget().getInstrInfo()), -- cgit v1.2.3