[PATCH] Implement fma correctly

Richard Henderson rth@twiddle.net
Wed Oct 13 15:51:00 GMT 2010


On 10/13/2010 06:40 AM, Ulrich Drepper wrote:
> On Tue, Oct 12, 2010 at 18:02, Richard Henderson <rth@twiddle.net> wrote:
>> Given that you're already manipulating the status word, you
>> could go ahead and force 53-bit rounding at the same time
>> with minimal extra overhead.  Of course, feupdateenv does
>> not reset the rounding size to match.  You'd have to either
>> open-code that function in order avoid doing extra work,
>> or add new helper functions.
> 
> I actually have second thoughts even about the fmaf code.  The problem
> is that now libm is not signal-safe.  There is no limitatino of using
> FP math in signal handlers and you now get different results depending
> on whether fmaf got interrupted or other code got interrupted.
> 
> We might have to do everything in software only without appropriate
> fma hardware support.

The x86 kernel doesn't set up a known fpu state on signal entry?
That seems like a bug to be fixed to me.


r~



More information about the Libc-alpha mailing list