zig

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

commit 8e0b2f0e52b195933ae7df9d66f8763fd53b0281 (tree)
parent f9481402f0c6f2eb4618bb0385aff18c12912c26
Author: LemonBoy <thatlemon@gmail.com>
Date:   Thu, 15 Apr 2021 18:14:25 +0200

compiler-rt: Fix typo in implementation of fp truncation ops

The problem went unnoticed for years, yay.

Diffstat:
Mlib/std/special/compiler_rt/truncXfYf2.zig | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/std/special/compiler_rt/truncXfYf2.zig b/lib/std/special/compiler_rt/truncXfYf2.zig @@ -122,7 +122,7 @@ fn truncXfYf2(comptime dst_t: type, comptime src_t: type, a: src_t) dst_t { if (shift > srcSigBits) { absResult = 0; } else { - const sticky: src_rep_t = significand << @intCast(SrcShift, srcBits - shift); + const sticky: src_rep_t = @boolToInt(significand << @intCast(SrcShift, srcBits - shift) != 0); const denormalizedSignificand: src_rep_t = significand >> @intCast(SrcShift, shift) | sticky; absResult = @intCast(dst_rep_t, denormalizedSignificand >> (srcSigBits - dstSigBits)); const roundBits: src_rep_t = denormalizedSignificand & roundMask;