zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 70c4b2424bc05a375dedd7c3ee527c9ba608b545 (tree)
parent 9636d76b6d26d142f7d23e6d25eec1c28cf571b4
Author: Pavel Verigo <paul.verigo@gmail.com>
Date:   Thu, 16 Apr 2026 20:19:09 +0200

limb64: make fixLastLimb endian aware

Diffstat:
Mlib/compiler_rt/limb64.zig | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/lib/compiler_rt/limb64.zig b/lib/compiler_rt/limb64.zig @@ -57,9 +57,10 @@ fn fixLastLimb(out_ptr: [*]u64, is_signed: bool, bits: u16) void { if (limb_cnt == true_limb_cnt) return; const true_out = out_ptr[0..true_limb_cnt]; - const sign: u64 = if (!is_signed or @as(i64, @bitCast(true_out[limb_cnt - 1])) >= 0) 0 else ~@as(u64, 0); + const ms = limbGet(true_out, limb_cnt - 1); + const sign: u64 = if (!is_signed or @as(i64, @bitCast(ms)) >= 0) 0 else ~@as(u64, 0); for (limb_cnt..true_limb_cnt) |i| { - true_out[i] = sign; + limbSet(true_out, i, sign); } }