RFR: 8295159: DSO created with -ffast-math breaks Java floating-point arithmetic [v7]

Joe Darcy joe.darcy at oracle.com
Mon Oct 31 15:49:34 UTC 2022


On 10/25/2022 7:27 AM, Andrew Haley wrote:
> On Thu, 20 Oct 2022 20:26:47 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:
>
>> The GCC bugs with `-ffast-math` only corrupts `FTZ` and `DAZ`.
>>
>> But `RC` and exception masks may be corrupted as well the same way and I believe the consequences are be similar (silent divergence in results during FP computations).
> I think we can catch the things that are likely, and will result in silent corruption. We should limit this, I think, to rounding modes and denormals-to-zero. I don't think we should bother with exception masks.
>
> -------------
>
> PR: https://git.openjdk.org/jdk/pull/10661


In terms of the overhead of using floating-point expression evaluation 
as a guard, are there still platforms where operating on subnormal 
values is pathologically slower? Some generations of SPARC chips had 
that behavior where a subnormal multiply would take, say 10,000 cycles, 
rather than 3 or 4 since the subnormal operations were implemented via 
trap handling.

-Joe




More information about the build-dev mailing list