[llvm] [NewPM] Port CFIInstrInserter to the new pass manager (PR #217494)

Bill Wendling via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 19 18:01:08 PDT 2026


================
@@ -195,15 +187,40 @@ class CFIInstrInserter : public MachineFunctionPass {
   /// outgoing offset and register of the MBB.
   unsigned verify(MachineFunction &MF);
 };
-}  // namespace
 
-char CFIInstrInserter::ID = 0;
-INITIALIZE_PASS(CFIInstrInserter, "cfi-instr-inserter",
+class CFIInstrInserterLegacy : public MachineFunctionPass {
+public:
+  static char ID;
+
+  CFIInstrInserterLegacy() : MachineFunctionPass(ID) {}
+
+  void getAnalysisUsage(AnalysisUsage &AU) const override {
+    AU.setPreservesAll();
+    MachineFunctionPass::getAnalysisUsage(AU);
+  }
+
+  bool runOnMachineFunction(MachineFunction &MF) override {
+    return CFIInstrInserterImpl().run(MF);
+  }
+};
+} // namespace
+
+char CFIInstrInserterLegacy::ID = 0;
+INITIALIZE_PASS(CFIInstrInserterLegacy, "cfi-instr-inserter",
                 "Check CFA info and insert CFI instructions if needed", false,
                 false)
-FunctionPass *llvm::createCFIInstrInserter() { return new CFIInstrInserter(); }
+FunctionPass *llvm::createCFIInstrInserter() {
----------------
isanbard wrote:

Done.

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


More information about the llvm-commits mailing list