RFR: 8266950: Remove vestigial support for non-strict floating-point execution [v5]

David Holmes david.holmes at oracle.com
Tue May 25 09:35:29 UTC 2021


On 25/05/2021 6:20 pm, Nick Gasson wrote:
> On Sun, 23 May 2021 23:14:08 GMT, David Holmes <dholmes at openjdk.org> wrote:
> 
>>> As part of JEP 306, the vestiges of HotSpot support for non-strict floating-point execution can be removed. All methods implicitly have strictfp semantics so the explicit checks for is_strict() can be replaced by true and the code reformulated accordingly.
>>>
>>> There are still some names that include "strict" that could potentially be renamed to remove it, but the fact we have to have strict fp semantics is still important on some platforms, so the names help reinforce that IMO.
> 
> src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp line 427:
> 
>> 425:   LIR_Opr tmp = LIR_OprFact::illegalOpr;
>> 426:   if (x->op() == Bytecodes::_dmul || x->op() == Bytecodes::_ddiv) {
>> 427:     tmp = new_register(T_DOUBLE);
> 
> This variable `tmp` doesn't seem to be used. I guess this code originally came from x86 where it's passed through to `arithmetic_op_fpu()`.

Well spotted Nick. I've removed this dead code and am re-testing.

Thanks,
David

> -------------
> 
> PR: https://git.openjdk.java.net/jdk/pull/3991
> 


More information about the hotspot-runtime-dev mailing list