From f94cdac931176adefb8f640e753e640324aa473a Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Mon, 24 Aug 2026 23:52:50 -0600 Subject: [PATCH] fix(jtbl): drop the stale 2-table pad spec that made ov_SC07_002 unbuildable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The binary has been RED since wave bp (commit:2687), where the gate-time jtbl carve wrote 'JTBL_PADS := 0,0 # tables=+0x0,+0x20' for ov_SC07_002_jr_8017C8D0.o. The object emits ONE rodata .align, so jtbl_rodata_pads refused every build: consumed 1 rodata .align(s) but 2 pad spec(s) given — table-count drift vs the carve make: *** [build/src/ov_SC07_002/ov_SC07_002_jr_8017C8D0.o] Error 1 The carve itself is legitimate — jr_isolate_all's jr_inventory resolves every committed .rodata carve in this binary to exactly one banked owner (R32/R33), so this was never an orphaned carve. Only the pad SPEC was wrong, and §8e's own rule is that a single-table span gets no line at all (its pipeline stays byte-identical to pre-§8e). Removing the line restores it: sha1 fad71342019704d1dd6ec25f2f3934c97e322624 == config/check.ov_SC07_002.sha Found by the A-prop agent's scoped R22 (141 binaries affected, 96 SHA-checked), which also fixed ov_SC07_010 — a binary whose committed tree state had provably never been built. Two RED binaries had been sitting in the fleet while every lane gated against them; neither was noticed because no lane checks a binary it is not currently touching. --- config/overlays.mk | 1 - 1 file changed, 1 deletion(-) diff --git a/config/overlays.mk b/config/overlays.mk index 7863af3a2..289813b2e 100644 --- a/config/overlays.mk +++ b/config/overlays.mk @@ -4725,7 +4725,6 @@ build/src/ov_SC07_002/ov_SC07_002_jr_80159C84.o: JTBL_PADS := 0,4 # §8e pads ( build/src/ov_SC07_002/ov_SC07_002_jr_8015AE2C.o: JTBL_PADS := 0,4 # §8e pads (jtbl_carve.py) tables=+0x0,+0x20 build/src/ov_SC07_002/ov_SC07_002_jr_8016AB6C.o: JTBL_PADS := 0,0 # §8e pads (jtbl_carve.py) tables=+0x0,+0x20 build/src/ov_SC07_002/ov_SC07_002_jr_80178D40.o: JTBL_PADS := 0,0 # §8e pads (jtbl_carve.py) tables=+0x0,+0x178 -build/src/ov_SC07_002/ov_SC07_002_jr_8017C8D0.o: JTBL_PADS := 0,0 # §8e pads (jtbl_carve.py) tables=+0x0,+0x20 build/src/ov_SC07_002/ov_SC07_002_o0c.o: JTBL_PADS := 0,4,4,4 # §8e pads (jtbl_carve.py) tables=+0x0,+0x38,+0xa8,+0x118 ov_SC07_002_CHECK_SHA := config/check.ov_SC07_002.sha ov_SC07_002_SYMBOLS := config/symbols.ov_SC07_002.txt