From 14deeba3aa005a642ed2e3f7ae574df9ef214ad8 Mon Sep 17 00:00:00 2001 From: Chris Tate Date: Tue, 27 Oct 2026 17:56:38 -0500 Subject: [PATCH] Journal the Node island flag and relower units that add island call sites --- packages/compiler/src/frontend/lowering/lowerer.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/compiler/src/frontend/lowering/lowerer.ts b/packages/compiler/src/frontend/lowering/lowerer.ts index 01420fe94..282e33faf 100644 --- a/packages/compiler/src/frontend/lowering/lowerer.ts +++ b/packages/compiler/src/frontend/lowering/lowerer.ts @@ -4014,6 +4014,11 @@ export class Lowerer { setTable("freezableArrays", this.freezableArrays), checkedTable("moduleOrder", () => this.moduleOrder.length), checkedTable("diags", () => this.diags.length), + // Node island call sites hold literals of the unit's IR that lowering's + // end rewrites to module tree paths (nodeIslandRecord): a unit that adds + // one lowers again rather than replaying a record. + checkedTable("nodeIslandCallers", () => this.nodeIslandCallers.length), + checkedTable("nodeIslandSpecifiers", () => this.nodeIslandSpecifiers.length), checkedTable("fnSigsBySymbol", () => this.fnSigsBySymbol.size), checkedTable("cjsExportsAssignments", () => this.cjsExportsAssignments.size), checkedTable("inlineRequireCycleCalls", () => this.inlineRequireCycleCalls.size), @@ -4403,6 +4408,11 @@ export class Lowerer { () => this.usesLifetimeRegions, () => (this.usesLifetimeRegions = true), ), + flag( + "usesNodeIsland", + () => this.usesNodeIsland, + () => (this.usesNodeIsland = true), + ), flag( "cjsModuleGraphEnabled", () => this.cjsModuleGraphEnabled,