================ @@ -2767,11 +2775,26 @@ bool SIMemoryLegalizer::expandAtomicCmpxchgOrRmw(const SIMemOpInfo &MOI, return Changed; } -bool SIMemoryLegalizer::runOnMachineFunction(MachineFunction &MF) { - bool Changed = false; - +bool SIMemoryLegalizerLegacy::runOnMachineFunction(MachineFunction &MF) { const MachineModuleInfo &MMI = getAnalysis<MachineModuleInfoWrapperPass>().getMMI(); + return SIMemoryLegalizer(MMI).run(MF); +} + +PreservedAnalyses +SIMemoryLegalizerPass::run(MachineFunction &MF, + MachineFunctionAnalysisManager &MFAM) { + auto *MMI = MFAM.getResult<ModuleAnalysisManagerMachineFunctionProxy>(MF) + .getCachedResult<MachineModuleAnalysis>( + *MF.getFunction().getParent()); + assert(MMI && "MachineModuleAnalysis must be available"); + if (!SIMemoryLegalizer(MMI->getMMI()).run(MF)) ---------------- arsenm wrote:
This pass shouldn't really depend on MachineModuleInfo (not this patch's fault though) https://github.com/llvm/llvm-project/pull/130060 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits