[llvm] [CodeGen] Port gc-empty-basic-blocks to new pass manager (PR #137585)

Christudasan Devadasan via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 28 23:08:20 PDT 2025


================
@@ -26,6 +27,17 @@ using namespace llvm;
 
 STATISTIC(NumEmptyBlocksRemoved, "Number of empty blocks removed");
 
+static bool removeEmptyBlocks(MachineFunction &MF);
+
+PreservedAnalyses
+GCEmptyBasicBlocksPass::run(MachineFunction &MF,
+                            MachineFunctionAnalysisManager &MFAM) {
+  bool Changed = removeEmptyBlocks(MF);
+  if (Changed)
+    return getMachineFunctionPassPreservedAnalyses();
+  return PreservedAnalyses::all();
+}
+
 class GCEmptyBasicBlocks : public MachineFunctionPass {
----------------
cdevadas wrote:

I would recommend renaming the class name `GCEmptyBasicBlocks` to `GCEmptyBasicBlocksLegacy` to indicate the legacy pass definition.

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


More information about the llvm-commits mailing list