SIGFPE with FPE_FLTRES
Tom Rodriguez
Thomas.Rodriguez at Sun.COM
Wed Mar 25 23:28:51 UTC 2009
That's even more odd to me. x86_64 shouldn't be using the old FP
instructions and the SSE based one don't produce an inexact traps as
far as I can tell. Maybe they are still being emitted somewhere,
possibly for the transcendentals? Actually I can see that the
template interpreter still uses them so maybe something is happening
there with a left over precision exception?
tom
On Mar 25, 2009, at 4:10 PM, David Holmes - Sun Microsystems wrote:
> The code was innocuous as far as I can see. One place does some
> basic calculations with some values used for GC statistics. The
> other was a crash here:
>
> double cpuTimer::seconds() const {
> double count = (double) _counter;
> double freq = (double) os::elapsed_frequency();
> return count/freq;
> }
>
> and os::elapsed_frquency is a constant (1000*1000*1000) on Solaris.
>
> Both crashes occurs on 64-bit on Solaris AMD64.
>
> Thanks,
> David
>
> Tom Rodriguez said the following on 03/26/09 08:53:
>> FPE_FLTRES appears to concern inexact results being produced but
>> these kinds of exception should always be masked for us. In what
>> kind of code was this reported?
>> tom
>> On Mar 24, 2009, at 5:58 PM, David Holmes - Sun Microsystems wrote:
>>> Can someone tell me when you can encounter a SIGFPE with si_code
>>> FPE_FLTRES? I'm suspecting this may be a case where a "bad"
>>> operation doesn't in itself fail but the next (innocent) FP
>>> operation gets hit with the FPE.
>>>
>>> Thanks,
>>> David Holmes
More information about the core-libs-dev
mailing list