This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Fix underflow and inexact signalling in soft-fp whenpacking.
From: David Miller <davem@davemloft.net>
Date: Fri, 25 May 2012 20:16:32 -0400 (EDT)
> What's interesting is "ldbl_min / 4" using glibc's current soft-fp
> generates the underflow exception on sparc 64-bit not sparc 32-bit.
>
> The only difference is that sparc 32-bit uses _FP_DIV_MEAT_4_udiv()
> and sparc 64-bit uses _FP_DIV_MEAT_2_udiv() for it's _FP_DIV_MEAT_Q()
> definition.
Actually, FP_DIV in both the 32-bit and 64-bit sparc cases generates
the same exact result, and the same exact _fex value.
The problem is that 32-bit sparc's soft-fp code has never been able to
generate underflow exceptions properly when it is set in _fex.
I'm testing fixes to that problems as well as some changes which
normalize other areas in which 32-bit and 64-bit sparc soft-fp is
unnecessarily different.
Once I sort all of this out I'll revisit the logic that signals
underflow in the generic soft-fp packing macros.