| ... | @@ -319,13 +319,18 @@ test "vector division operators" { | ... | @@ -319,13 +319,18 @@ test "vector division operators" { |
| 319 | } | 319 | } |
| 320 | | 320 | |
| 321 | fn doTheTest() void { | 321 | fn doTheTest() void { |
| 322 | if (std.builtin.os.tag != .windows) | 322 | // https://github.com/ziglang/zig/issues/4952 |
| | 323 | if (std.builtin.os.tag != .windows) { |
| 323 | doTheTestDiv(f16, [4]f16{ 4.0, -4.0, 4.0, -4.0 }, [4]f16{ 1.0, 2.0, -1.0, -2.0 }); | 324 | doTheTestDiv(f16, [4]f16{ 4.0, -4.0, 4.0, -4.0 }, [4]f16{ 1.0, 2.0, -1.0, -2.0 }); |
| | 325 | } |
| | 326 | |
| 324 | doTheTestDiv(f32, [4]f32{ 4.0, -4.0, 4.0, -4.0 }, [4]f32{ 1.0, 2.0, -1.0, -2.0 }); | 327 | doTheTestDiv(f32, [4]f32{ 4.0, -4.0, 4.0, -4.0 }, [4]f32{ 1.0, 2.0, -1.0, -2.0 }); |
| 325 | doTheTestDiv(f64, [4]f64{ 4.0, -4.0, 4.0, -4.0 }, [4]f64{ 1.0, 2.0, -1.0, -2.0 }); | 328 | doTheTestDiv(f64, [4]f64{ 4.0, -4.0, 4.0, -4.0 }, [4]f64{ 1.0, 2.0, -1.0, -2.0 }); |
| 326 | | 329 | |
| 327 | if (std.builtin.os.tag != .windows) | 330 | // https://github.com/ziglang/zig/issues/4952 |
| | 331 | if (std.builtin.os.tag != .windows) { |
| 328 | doTheTestMod(f16, [4]f16{ 4.0, -4.0, 4.0, -4.0 }, [4]f16{ 1.0, 2.0, 0.5, 3.0 }); | 332 | doTheTestMod(f16, [4]f16{ 4.0, -4.0, 4.0, -4.0 }, [4]f16{ 1.0, 2.0, 0.5, 3.0 }); |
| | 333 | } |
| 329 | doTheTestMod(f32, [4]f32{ 4.0, -4.0, 4.0, -4.0 }, [4]f32{ 1.0, 2.0, 0.5, 3.0 }); | 334 | doTheTestMod(f32, [4]f32{ 4.0, -4.0, 4.0, -4.0 }, [4]f32{ 1.0, 2.0, 0.5, 3.0 }); |
| 330 | doTheTestMod(f64, [4]f64{ 4.0, -4.0, 4.0, -4.0 }, [4]f64{ 1.0, 2.0, 0.5, 3.0 }); | 335 | doTheTestMod(f64, [4]f64{ 4.0, -4.0, 4.0, -4.0 }, [4]f64{ 1.0, 2.0, 0.5, 3.0 }); |
| 331 | | 336 | |
| ... | @@ -440,9 +445,28 @@ test "vector shift operators" { | ... | @@ -440,9 +445,28 @@ test "vector shift operators" { |
| 440 | } | 445 | } |
| 441 | }; | 446 | }; |
| 442 | | 447 | |
| 443 | // LLVM miscompiles pretty much every case on other architectures so don't | 448 | switch (std.builtin.arch) { |
| 444 | // even bother running this test | 449 | .i386, |
| 445 | if (std.builtin.arch != .x86_64) return error.SkipZigTest; | 450 | .aarch64, |
| | 451 | .aarch64_be, |
| | 452 | .aarch64_32, |
| | 453 | .arm, |
| | 454 | .armeb, |
| | 455 | .thumb, |
| | 456 | .thumbeb, |
| | 457 | .mips, |
| | 458 | .mipsel, |
| | 459 | .mips64, |
| | 460 | .mips64el, |
| | 461 | .riscv64, |
| | 462 | .sparcv9, |
| | 463 | => { |
| | 464 | // LLVM miscompiles on this architecture |
| | 465 | // https://github.com/ziglang/zig/issues/4951 |
| | 466 | return error.SkipZigTest; |
| | 467 | }, |
| | 468 | else => {}, |
| | 469 | } |
| 446 | | 470 | |
| 447 | S.doTheTest(); | 471 | S.doTheTest(); |
| 448 | comptime S.doTheTest(); | 472 | comptime S.doTheTest(); |