Skip to content

Fix WASM CMake packing widths for SYMM and TRMM - #6098

Merged
martin-frbg merged 1 commit into
OpenMathLib:developfrom
arsnyder16:asnyder/fix-wasm-cmake-packing
Oct 7, 2026
Merged

martin-frbg merged 1 commit into
OpenMathLib:developfrom
arsnyder16:asnyder/fix-wasm-cmake-packing

Conversation

@arsnyder16

Copy link
Copy Markdown
Contributor

Fixes #6097.

CMake cross-builds for WASM128_GENERIC select default 2-wide symmetric and triangular packers that are incompatible with the current WASM kernels. This appears to be a regression following the recent 4×4 kernel update and 8×4 SGEMM update, which changed the kernel widths without updating the CMake settings. Make already uses the correct widths.

Set SGEMM’s unroll widths to 8×4 and DGEMM’s to 4×4, matching param.h and KERNEL.WASM128_GENERIC. This corrects SYMM and TRMM results without modifying the kernels or other targets.

Add exact-valued single- and double-precision SYMM/TRMM regression tests to the existing unit-test suite, registered for both CMake and Make builds. The issue includes a minimal standalone reproducer.

@martin-frbg martin-frbg added this to the 0.3.35 milestone Oct 7, 2026
@martin-frbg

Copy link
Copy Markdown
Collaborator

Thank you

@martin-frbg
martin-frbg merged commit 277ef78 into OpenMathLib:develop Oct 7, 2026
110 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Incorrect SYMM/TRMM results in WASM CMake builds

2 participants