Wardenfar opened PR #11435 from Wardenfar:fix_splat_vec64_iconst to bytecodealliance:main:
The following clif file produces a verification error during compilation with optimization enabled (not target dependent) :
clif-util compile --target aarch64 --set opt_level=speed bug.cliffunction %i16x4() -> i16x4 { block0: v1 = iconst.i16 0 v2 = splat.i16x4 v1 return v2 }Error: function %i16x4() -> i16x4 fast { const0 = 0x00000000000000000000000000000000 block0: v3 = vconst.i16x4 const0 ; ^~~~~~~~~~~~~~~~~~~~~~~~ ; error: inst3: The instruction expects const0 to have a size of 8 bytes but it has 16 return v3 ; v3 = const0 } ; 1 verifier error detected (see above). Compilation aborted.The constant is incorrectly simplified as a 128-bit constant, producing a validation error.
This PR restricts this simplification only for 128-bit vectors and add some regression tests.
Wardenfar requested wasmtime-compiler-reviewers for a review on PR #11435.
Wardenfar requested abrown for a review on PR #11435.
cfallin submitted PR review:
Thanks!
cfallin merged PR #11435.
Last updated: Dec 06 2025 at 06:05 UTC