diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2022-03-28 17:45:50 +0200 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2022-03-28 17:45:50 +0200 |
| commit | e6729036e44af2a52c52ce9f1f99e01d1e642cf3 (patch) | |
| tree | dedc9ad09cc815f11a4ca72f31c43caef240ed3e /test/behavior/math.zig | |
| parent | 107052aded5dc1666c687838e8e2995654f17a45 (diff) | |
| download | zig-e6729036e44af2a52c52ce9f1f99e01d1e642cf3.tar.gz zig-e6729036e44af2a52c52ce9f1f99e01d1e642cf3.zip | |
x64: partially fix genImul, enable overflow tests
Diffstat (limited to 'test/behavior/math.zig')
| -rw-r--r-- | test/behavior/math.zig | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/test/behavior/math.zig b/test/behavior/math.zig index 3abbece353..314d52be66 100644 --- a/test/behavior/math.zig +++ b/test/behavior/math.zig @@ -639,7 +639,6 @@ test "128-bit multiplication" { test "@addWithOverflow" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO @@ -684,7 +683,6 @@ test "small int addition" { test "@mulWithOverflow" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO @@ -698,14 +696,16 @@ test "@mulWithOverflow" { var b: u8 = 2; try expect(!@mulWithOverflow(u8, a, b, &result)); try expect(result == 246); - b = 4; - try expect(@mulWithOverflow(u8, a, b, &result)); - try expect(result == 236); + + if (builtin.zig_backend != .stage2_x86_64) { // TODO fix mul/imul on x86_64 + b = 4; + try expect(@mulWithOverflow(u8, a, b, &result)); + try expect(result == 236); + } } test "@subWithOverflow" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO @@ -747,7 +747,6 @@ test "@shlWithOverflow" { test "overflow arithmetic with u0 values" { if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO - if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO var result: u0 = undefined; try expect(!@addWithOverflow(u0, 0, 0, &result)); |
