| ... | ... | @@ -689,12 +689,24 @@ test "f128 at compile time is lossy" { |
| 689 | 689 | } |
| 690 | 690 | |
| 691 | 691 | test "comptime fixed-width float zero divided by zero produces NaN" { |
| 692 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO |
| 693 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO |
| 694 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 695 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 696 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO |
| 697 | |
| 692 | 698 | inline for (.{ f16, f32, f64, f80, f128 }) |F| { |
| 693 | 699 | try expect(math.isNan(@as(F, 0) / @as(F, 0))); |
| 694 | 700 | } |
| 695 | 701 | } |
| 696 | 702 | |
| 697 | 703 | test "comptime fixed-width float non-zero divided by zero produces signed Inf" { |
| 704 | if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO |
| 705 | if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO |
| 706 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 707 | if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO |
| 708 | if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO |
| 709 | |
| 698 | 710 | inline for (.{ f16, f32, f64, f80, f128 }) |F| { |
| 699 | 711 | const pos = @as(F, 1) / @as(F, 0); |
| 700 | 712 | const neg = @as(F, -1) / @as(F, 0); |