SerenityOS/serenity

Failing tests on AArch64/RISC-V

Open

#25,934 opened on May 17, 2025

View on GitHub
 (4 comments) (0 reactions) (0 assignees)C++ (3,328 forks)batch import
bughelp wantedtask list

Repository metrics

Stars
 (33,171 stars)
PR merge metrics
 (Avg merge 5d 11h) (35 merged PRs in 30d)

Description

These tests currently fail on AArch64 and RISC-V:

AArch64:

  • AK/TestComplex: Tests from_polar_magnitude and from_polar_phase fail #26669
  • Kernel/crash: Division by zero doesn't cause a signal #26001
  • LibC/TestFenv: TODO_AARCH64s in aarch64/fenv.cpp #26697
  • LibC/TestLibCSetjmp: Crash, {set,sigset,long}jmp aren't implemented on AArch64 #26000
  • LibC/TestMath: Crash, internal_gamma always uses rintl, but long double math functions are unimplemented on AArch64
  • LibGfx/TestDeltaE: Multiple EXPECT_APPROXIMATEs fail #26691 (probably?)
  • LibPDF/TestPDF: Test postscript fails #26691
  • test-js: Math.tan.js fails, hangs during builtins/Intl/NumberFormat/NumberFormat.prototype.format.js (#26599)
  • Crash tests cause CrashReporter popus even if they crash expectedly (maybe because the kernel always raises SIGSEGV for all hardware exceptions?) #26041
  • TestEFault is currently disabled on AArch64: https://github.com/SerenityOS/serenity/blob/93add0a510fe656a56585c124a59efa45b347feb/Tests/Kernel/CMakeLists.txt#L74 because AArch64 is missing SafeMem implementations that don't panic if the kernel fails to access userspace memory #26002

RISC-V:

  • AK/TestComplex: Tests from_polar_magnitude and from_polar_phase fail #26669
  • LibC/TestMath: Crash, internal_gamma always uses rintl, but long double math functions are unimplemented on RISC-V
  • LibGfx/TestDeltaE: Multiple EXPECT_APPROXIMATEs fail #26691 (probably?)
  • LibPDF/TestPDF: Test postscript fails #26691
  • test-js: Math.tan.js fails, hangs during builtins/Intl/NumberFormat/NumberFormat.prototype.format.js (#26599)

These tests fail on RISC-V if the time wan't set by ntpquery -s (and likely also on AArch64/x86-64 if the time isn't set correctly):

  • LibC/TestLibCTime: Test tzset fails #26698
  • LibTLS/TestTLSHandshake: Test test_TLS_hello_handshake fails #26698
  • test-js: Multiple Date tests fail #26698

All tests that fail on RISC-V also fail on AArch64. These common test failures seem to all be caused by missing/inaccurate math functions.

Contributor guide