Parent: #366 Related: #264, #142 Roadmap: #134
The stable wg-3.0 tree includes seven test/core/relaxed-simd/*.wast files. zig-js now implements the complete relaxed-SIMD binary, validation, and portable execution surface against that exact corpus.
Acceptance:
- Pin and inventory every relaxed-SIMD opcode and immediate from
wg-3.0. - Decode and validate the full opcode set behind an explicit
relaxed_simdfeature gate. - Execute every allowed nondeterministic result without over-constraining platform behavior.
- Preserve architecture-independent interpreter fallback and bit-exact lanes where the spec requires them.
- Pass every applicable command in all seven exact
wg-3.0relaxed-SIMD files. - Add focused units, bounded CI witnesses, feature registry entries, and documentation.
Evidence:
- Exact source:
WebAssembly/spec@9d36019973201a19f9c9ebb0f10828b2fe2374aa(wg-3.0). - Inventory: 20 contiguous
0xfdsubopcodes,0x100through0x113. - Corpus: 77/77 pass, 0 fail, 0 N/A, 0 runner errors across all seven files.
- Harness: 18/18 Python regression tests, including nested vector
eitheralternatives. - Decoder slice: 38/38 pass after moving the former oversized witness from newly-valid
0x100to0x114. - Consolidated project run: 1,219/1,220 before that stale test expectation; the only failure was the obsolete
0x100expectation, and its complete 38-test owning slice passed after correction. - Registry/matrix verifier: green, 14 pinned features and the unchanged 87,838-command published matrix.
Landed on main: