[flang-commits] [flang] [llvm] [CodeGen] Take the executable stack from a module flag (PR #215152)

Sairudra More via flang-commits flang-commits at lists.llvm.org
Sun Aug 9 21:24:41 PDT 2026


================
@@ -236,10 +261,16 @@ class BoxedProcedurePass
           processOp(op, rewriter, typeConverter);
         });
       }
+
+      if (needsExecutableStack)
+        requestExecutableStack(getModule());
     }
   }
 
 private:
+  /// Set when a stack based trampoline has been emitted.
+  bool needsExecutableStack = false;
----------------
Saieiei wrote:

`needsExecutableStack` is per-run state, but it is stored on the pass instance and is never reset. MLIR passes must not maintain mutable state across `runOnOperation()` invocations, since the same pass may run on multiple operations. Could this be reset at the beginning of `runOnOperation()` or made run-local?

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


More information about the flang-commits mailing list