From 6ea0c0a28343b2676baf480db490b5a27fa11d7c Mon Sep 17 00:00:00 2001 From: paperchalice Date: Tue, 30 Apr 2024 09:54:48 +0800 Subject: [NewPM][CodeGen] Add `MachineFunctionAnalysis` (#88610) In new pass system, `MachineFunction` could be an analysis result again, machine module pass can now fetch them from analysis manager. `MachineModuleInfo` no longer owns them. Remove `FreeMachineFunctionPass`, replaced by `InvalidateAnalysisPass`. Now `FreeMachineFunction` is replaced by `InvalidateAnalysisPass`, the workaround in `MachineFunctionPassManager` is no longer needed, there is no difference between `unittests/MIR/PassBuilderCallbacksTest.cpp` and `unittests/IR/PassBuilderCallbacksTest.cpp`. --- llvm/lib/CodeGen/FreeMachineFunction.cpp | 22 ---------------------- 1 file changed, 22 deletions(-) delete mode 100644 llvm/lib/CodeGen/FreeMachineFunction.cpp (limited to 'llvm/lib/CodeGen/FreeMachineFunction.cpp') diff --git a/llvm/lib/CodeGen/FreeMachineFunction.cpp b/llvm/lib/CodeGen/FreeMachineFunction.cpp deleted file mode 100644 index f38f3e6..0000000 --- a/llvm/lib/CodeGen/FreeMachineFunction.cpp +++ /dev/null @@ -1,22 +0,0 @@ -//===- FreeMachineFunction.cpp --------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#include "llvm/CodeGen/FreeMachineFunction.h" -#include "llvm/CodeGen/MachineFunction.h" -#include "llvm/CodeGen/MachineModuleInfo.h" - -using namespace llvm; - -PreservedAnalyses -FreeMachineFunctionPass::run(MachineFunction &MF, - MachineFunctionAnalysisManager &MFAM) { - auto &MMI = MF.getMMI(); - MFAM.invalidate(MF, PreservedAnalyses::none()); - MMI.deleteMachineFunctionFor(MF.getFunction()); // MF is dangling now. - return PreservedAnalyses::none(); -} -- cgit v1.1