feat(igla): Wave Loop 882 — module-scope [583][2]^6 Pt non-power-of-two outer-dimension array-of-struct variable from call with indexed signed writes - #1813
Conversation
…wo outer-dimension array-of-struct variable from call with indexed signed writes (Closes #1812) - OUTER = 583, MID_IDX = 291 - Elements = 583 × 2⁶ = 37,312 - Packed vector = 37,312 × 32 = 1,193,984 bits ≈ 1.139 MiBit - Continues the non-power-of-two outer-dimension array-of-struct packed-vector ladder. - Zero compiler / reference-model / FROZEN_HASH changes for witness. - Generator copy-hazard prevented by pre-run grep of all three stale-reference locations. Validation matrix: - t27c parse → PASS - t27c icarus-lowerable → lowerable - t27c icarus-simulate → PASSED (17 cycles) - t27c icarus-cocotb → reference-model OK - t27c seal --save → seal saved - cargo test --release --test icarus_lowerable accepts_w882_bench_module_583x2p6_aos_var_call_write → passed - Full suite → 342/0 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Closing — nothing left to land once this is measured against current
|
| Path | Status on master |
|---|---|
scripts/gen_w882.py |
already there, byte-identical (blob 77c9f845f41488a3f5960155a5db5b27f9434492), landed via commit 0e2442540c80 — "Wave Loop 882 … (Closes #1812)" |
bootstrap/tests/icarus_lowerable.rs |
master already carries accepts_w882_bench_module_583x2p6_aos_var_call_write among its 352 accepts_w* tests; this hunk adds nothing new. The +1890 count is an artifact of an ~848-commit-old merge base. No test is removed by this close |
specs/scratch/w882_bench_module_583x2p6_aos_var_call_write.t27 |
specs/scratch/ is gitignored (.gitignore:113) and does not exist on master |
.trinity/seals/scratch_w882_bench_module_583x2p6_aos_var_call_write.json |
gitignored (.gitignore:120); master carries zero scratch_* seals, so re-adding this one would red the seal gate |
Worth recording rather than losing: this PR never contained a W882 narrative record — no docs/reports/FPGA_LOOP_CLOSEOUT_W882_*.md, no .claude/plans/wave-loop-883.md, no .trinity/experience.md entry. master's experience log runs W898 → W884 and then jumps to W777, so W881–W883 have no entry there. Closing this PR discards nothing that ever existed; the gap is separate, and only the W883 half of it is recoverable (from #1815).
The branch wave-loop-882 is left in place, so the scratch witness stays reachable if it is ever needed.
Series close-out: #1810, #1813, #1842, #1844, #1847, #1850, #1852, #1854, #1856 and #1858 are all closed for this reason. #1815 was the only PR in the series with unique durable content and was rebuilt on top of master.
Pull request was closed
Continue the mechanical packed-vector array-of-struct ladder.
[583][2]^6 Ptmodule-scope variable from call with indexed signed writes.Acceptance criteria:
scripts/gen_w882.pywith copy hazard fixed before first run.specs/scratch/w882_bench_module_583x2p6_aos_var_call_write.t27parses.t27c icarus-lowerable,icarus-simulate,icarus-cocotb, andseal --savePASS.bootstrap/tests/icarus_lowerable.rs.cargo test --release --test icarus_lowerablepasses at 342/0.bootstrap/stage0/FROZEN_HASHunchanged.Closes #{issue}, push branch, open PR.