diff options
| author | kcbanner <kcbanner@gmail.com> | 2022-12-16 23:20:54 -0500 |
|---|---|---|
| committer | kcbanner <kcbanner@gmail.com> | 2023-01-01 16:44:28 -0500 |
| commit | 4f8f7b749cbac5eb7c282e8ffeab248ae7933fb9 (patch) | |
| tree | 6561b97190fd80aca0ad185f88099e4de96fb7a9 /lib | |
| parent | b6f0af57a2bb9f7d2f74d1cb4a89af501bc1e885 (diff) | |
| download | zig-4f8f7b749cbac5eb7c282e8ffeab248ae7933fb9.tar.gz zig-4f8f7b749cbac5eb7c282e8ffeab248ae7933fb9.zip | |
cbe: fixup incorrect bits value in 128 bit add/sub
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/zig.h | 9 |
1 files changed, 4 insertions, 5 deletions
@@ -79,7 +79,6 @@ typedef char bool; #if zig_has_attribute(aligned) #define zig_align_fn(alignment) __attribute__((aligned(alignment))) #elif _MSC_VER -// TODO: Figure out how to do this under MSVC #define zig_align_fn(alignment) #else #define zig_align_fn zig_align_fn_unavailable @@ -1346,25 +1345,25 @@ static inline zig_i128 zig_shl_i128(zig_i128 lhs, zig_u8 rhs) { static inline zig_u128 zig_add_u128(zig_u128 lhs, zig_u128 rhs) { zig_u128 res; - res.hi = lhs.hi + rhs.hi + zig_addo_u64(&res.lo, lhs.lo, rhs.lo, zig_maxInt_u64); + res.hi = lhs.hi + rhs.hi + zig_addo_u64(&res.lo, lhs.lo, rhs.lo, 64); return res; } static inline zig_i128 zig_add_i128(zig_i128 lhs, zig_i128 rhs) { zig_i128 res; - res.hi = lhs.hi + rhs.hi + zig_addo_u64(&res.lo, lhs.lo, rhs.lo, zig_maxInt_u64); + res.hi = lhs.hi + rhs.hi + zig_addo_u64(&res.lo, lhs.lo, rhs.lo, 64); return res; } static inline zig_u128 zig_sub_u128(zig_u128 lhs, zig_u128 rhs) { zig_u128 res; - res.hi = lhs.hi - rhs.hi - zig_subo_u64(&res.lo, lhs.lo, rhs.lo, zig_maxInt_u64); + res.hi = lhs.hi - rhs.hi - zig_subo_u64(&res.lo, lhs.lo, rhs.lo, 64); return res; } static inline zig_i128 zig_sub_i128(zig_i128 lhs, zig_i128 rhs) { zig_i128 res; - res.hi = lhs.hi - rhs.hi - zig_subo_u64(&res.lo, lhs.lo, rhs.lo, zig_maxInt_u64); + res.hi = lhs.hi - rhs.hi - zig_subo_u64(&res.lo, lhs.lo, rhs.lo, 64); return res; } |
