WebAssembly / WebAssembly/wabt
mips test/interp/simd-binary.txt simd-unary.txt test failures
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 8.1k
- Forks
- 827
- Avg merge
- 4d 6h
- Merged PRs (30d)
- 18
Description
Hi,
wabt, as built on debian, fails on mips64el architecture:
https://buildd.debian.org/status/fetch.php?pkg=wabt&arch=mips64el&ver=1.0.34%2Bdsfg2%2B%7Ecs1.0.32-4&stamp=1739635385&raw=0
but it doesn't fail on loong64.
- test/interp/simd-binary.txt
STDOUT MISMATCH:
--- expected
+++ actual
@@ -31,17 +31,17 @@
v128_and_0() => v128 i32x4:0x00020001 0x00040002 0x00000003 0x00000004
v128_or_0() => v128 i32x4:0x00ff0001 0x00fe0002 0x44000003 0x55000004
v128_xor_0() => v128 i32x4:0x00fd0000 0x00fa0000 0x44000000 0x55000000
-f32x4_min_0() => v128 i32x4:0x80000000 0x7fc00000 0x449a5000 0xbf800000
-f64x2_min_0() => v128 i32x4:0x00000000 0xc0934a00 0x00000000 0x7ff80000
-f32x4_max_0() => v128 i32x4:0x00000000 0x7fc00000 0x449a5000 0x3f800000
-f64x2_max_0() => v128 i32x4:0x00000000 0x00000000 0x00000000 0x7ff80000
-f32x4_add_0() => v128 i32x4:0x00000000 0x7fc00000 0x449a7000 0xc49a2000
-f64x2_add_0() => v128 i32x4:0x00000000 0xc0934400 0x00000000 0x7ff80000
-f32x4_sub_0() => v128 i32x4:0x80000000 0x7fc00000 0x449a3000 0xc49a8000
-f64x2_sub_0() => v128 i32x4:0x00000000 0x40935000 0x00000000 0x7ff80000
-f32x4_div_0() => v128 i32x4:0x7fc00000 0x7fc00000 0x3fc00000 0xc0000000
+f32x4_min_0() => v128 i32x4:0x80000000 0x7fbfffff 0x449a5000 0xbf800000
+f64x2_min_0() => v128 i32x4:0x00000000 0xc0934a00 0xffffffff 0x7ff7ffff
+f32x4_max_0() => v128 i32x4:0x00000000 0x7fbfffff 0x449a5000 0x3f800000
+f64x2_max_0() => v128 i32x4:0x00000000 0x00000000 0xffffffff 0x7ff7ffff
+f32x4_add_0() => v128 i32x4:0x00000000 0x7fbfffff 0x449a7000 0xc49a2000
+f64x2_add_0() => v128 i32x4:0x00000000 0xc0934400 0xffffffff 0x7ff7ffff
+f32x4_sub_0() => v128 i32x4:0x80000000 0x7fbfffff 0x449a3000 0xc49a8000
+f64x2_sub_0() => v128 i32x4:0x00000000 0x40935000 0xffffffff 0x7ff7ffff
+f32x4_div_0() => v128 i32x4:0x7fbfffff 0x7fbfffff 0x3fc00000 0xc0000000
f64x2_div_0() => v128 i32x4:0x00000000 0x3ff80000 0x00000000 0xc0000000
-f32x4_mul_0() => v128 i32x4:0x80000000 0x7fc00000 0x3fc00000 0xc0900000
+f32x4_mul_0() => v128 i32x4:0x80000000 0x7fbfffff 0x3fc00000 0xc0900000
f64x2_mul_0() => v128 i32x4:0x00000000 0x3ff80000 0x00000000 0xc0120000
v8x16_swizzle_0() => v128 i32x4:0x0d090501 0x020e0a06 0x03070f0b 0x0c080410
v8x16_swizzle_1() => v128 i32x4:0x44444444 0x44444444 0x88888888 0x88888888
- test/interp/simd-unary.txt
STDOUT MISMATCH:
--- expected
+++ actual
@@ -23,8 +23,8 @@
f32x4_abs_0() => v128 i32x4:0x00000000 0x7fc00000 0x449a5000 0x3f800000
f64x2_abs_0() => v128 i32x4:0x00000000 0x00000000 0x00000000 0x7ff80000
f64x2_abs_1() => v128 i32x4:0x00000000 0x40934a00 0x00000000 0x3ff00000
-f32x4_sqrt_0() => v128 i32x4:0x7fc00000 0x7fc00000 0x40000000 0x40400000
-f64x2_sqrt_0() => v128 i32x4:0x00000000 0x7ff80000 0x00000000 0x7ff80000
+f32x4_sqrt_0() => v128 i32x4:0x7fbfffff 0x7fbfffff 0x40000000 0x40400000
+f64x2_sqrt_0() => v128 i32x4:0xffffffff 0x7ff7ffff 0xffffffff 0x7ff7ffff
f64x2_sqrt_1() => v128 i32x4:0x00000000 0x40000000 0x00000000 0x40080000
f32x4_convert_i32x4_s_0() => v128 i32x4:0x3f800000 0xbf800000 0x00000000 0x40400000
f32x4_convert_i32x4_u_0() => v128 i32x4:0x3f800000 0x40000000 0x00000000 0x40400000
Note that "run-tests" pass on all other architectures where its build-deps are available (even armel, s390x, riscv64).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the MIPS64el failures in test/interp/simd-binary.txt and test/interp/simd-unary.txt, then compare the failing NaN outputs with the results on other architectures. Trace the interpreter paths exercised by these SIMD tests; done means run-tests passes on MIPS64el without changing the expected behavior on the other architectures mentioned.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- operating-systems, testing-qa
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100