motiejus/zig

fork of https://codeberg.org/ziglang/zig
git clone https://git.jakstys.lt/motiejus/zig.git
Log | Tree | Refs | README | LICENSE

commit 26119bd98d2f867eb06eeea9431883931d806dd5 (tree)
parent 5285f41267f20150d58a40a96e4380a3b611955d
Author: Alex Rønne Petersen <alex@alexrp.com>
Date:   Wed, 28 Aug 2024 21:04:45 +0200

test: Skip some floating point tests that fail on `arm-linux-(gnu,musl)eabi`.

https://github.com/ziglang/zig/issues/21234

Diffstat:
Mlib/std/math/gamma.zig | 3+++
Mtest/behavior/floatop.zig | 2++
Mtest/behavior/math.zig | 1+
3 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/lib/std/math/gamma.zig b/lib/std/math/gamma.zig @@ -3,6 +3,7 @@ // // https://git.musl-libc.org/cgit/musl/tree/src/math/tgamma.c +const builtin = @import("builtin"); const std = @import("../std.zig"); /// Returns the gamma function of x, @@ -262,6 +263,8 @@ test gamma { } test "gamma.special" { + if (builtin.cpu.arch.isArmOrThumb() and builtin.target.floatAbi() == .soft) return error.SkipZigTest; // https://github.com/ziglang/zig/issues/21234 + inline for (&.{ f32, f64 }) |T| { try expect(std.math.isNan(gamma(T, -std.math.nan(T)))); try expect(std.math.isNan(gamma(T, std.math.nan(T)))); diff --git a/test/behavior/floatop.zig b/test/behavior/floatop.zig @@ -126,6 +126,7 @@ test "cmp f16" { if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest; if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest; + if (builtin.cpu.arch.isArmOrThumb() and builtin.target.floatAbi() == .soft) return error.SkipZigTest; // https://github.com/ziglang/zig/issues/21234 try testCmp(f16); try comptime testCmp(f16); @@ -134,6 +135,7 @@ test "cmp f16" { test "cmp f32/f64" { if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest; + if (builtin.cpu.arch.isArmOrThumb() and builtin.target.floatAbi() == .soft) return error.SkipZigTest; // https://github.com/ziglang/zig/issues/21234 try testCmp(f32); try comptime testCmp(f32); diff --git a/test/behavior/math.zig b/test/behavior/math.zig @@ -1597,6 +1597,7 @@ test "NaN comparison" { if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest; if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf and builtin.target.ofmt != .macho) return error.SkipZigTest; if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest; + if (builtin.cpu.arch.isArmOrThumb() and builtin.target.floatAbi() == .soft) return error.SkipZigTest; // https://github.com/ziglang/zig/issues/21234 try testNanEqNan(f16); try testNanEqNan(f32);