aboutsummaryrefslogtreecommitdiff
path: root/test/behavior/math.zig
diff options
context:
space:
mode:
authorJacob Young <jacobly0@users.noreply.github.com>2025-05-31 23:14:48 -0400
committermlugg <mlugg@mlugg.co.uk>2025-06-01 08:24:01 +0100
commit9edfccb9a7d23dbf02444023d042d5008a39462e (patch)
tree3eafb1c2bed9f2170d6861ca466dca9e6d74392a /test/behavior/math.zig
parentec579aa0f372b2054ad659aaacd190c1a986d7f2 (diff)
downloadzig-9edfccb9a7d23dbf02444023d042d5008a39462e.tar.gz
zig-9edfccb9a7d23dbf02444023d042d5008a39462e.zip
Legalize: implement scalarization of overflow intrinsics
Diffstat (limited to 'test/behavior/math.zig')
-rw-r--r--test/behavior/math.zig10
1 files changed, 7 insertions, 3 deletions
diff --git a/test/behavior/math.zig b/test/behavior/math.zig
index 842390d0fa..8eec0a4df9 100644
--- a/test/behavior/math.zig
+++ b/test/behavior/math.zig
@@ -471,10 +471,12 @@ test "division" {
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
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.zig_backend == .stage2_riscv64) return error.SkipZigTest;
if (builtin.zig_backend == .stage2_spirv64) return error.SkipZigTest;
+ if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt == .coff and
+ !comptime std.Target.x86.featureSetHas(builtin.cpu.features, .f16c)) return error.SkipZigTest;
+
try testIntDivision();
try comptime testIntDivision();
@@ -1619,10 +1621,10 @@ test "vector integer addition" {
if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
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;
const S = struct {
fn doTheTest() !void {
@@ -1926,7 +1928,9 @@ test "float vector division of comptime zero by runtime nan is nan" {
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_riscv64) return error.SkipZigTest;
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_x86_64 and builtin.target.ofmt == .coff and
+ !comptime std.Target.x86.featureSetHas(builtin.cpu.features, .sse4_1)) return error.SkipZigTest;
const ct_zero: @Vector(1, f32) = .{0};
var rt_nan: @Vector(1, f32) = .{math.nan(f32)};