This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug ports/2749] powerpc32 does not build --without-fp
- From: "sjmunroe at us dot ibm dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sources dot redhat dot com
- Date: 15 Sep 2006 19:46:03 -0000
- Subject: [Bug ports/2749] powerpc32 does not build --without-fp
- References: <20060609223502.2749.sjmunroe@us.ibm.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From sjmunroe at us dot ibm dot com 2006-09-15 19:46 -------
>Note that the soft-fp fix must be accepted for glibc mainline before it
>can go in libgcc's copy, as per FSF policies.
Yes thats next.
>For the fmsub implementation, you do FP_PACK_SEMIRAW_Q between the
>subtraction and the truncation. This is not correct since it can lead to
>double rounding (first the value is rounded to a quad value exactly half
>way between two double values, then it gets rounded to a double value that
>wasn't the closest to the infinite-precision result). The truncation
>needs to be done on the output of the subtraction with sticky bits still
>in place, not on the rounded result.
We tried this orginally but we found that FP_SUB_Q/FP_MUL_Q can leave extranious
bits in high order bits of the expanded mantisa (word[3]). This can cause errors
down stream, so we added to full pack/unpack between stages.
To remove the:
+ FP_PACK_SEMIRAW_Q(v,V);
+ FP_UNPACK_SEMIRAW_Q(V,v);
sequence we will need explicitely clear the high order 16 bits of V_f[3]. But
this is not a glibc issue and should not delay the acceptance of soft-fp fixes.
>I think the bulk of the fmsub implementation should go in a macro in
>op-common.h, that could be used to implement the standard fma and fmaf
>library functions.
First, lets keep it simple and get long double working. Then since this is you
proposal, are you voluteering to implement it ;-)
--
http://sourceware.org/bugzilla/show_bug.cgi?id=2749
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.