RFR: 8302191: Performance degradation for float/double modulo on Linux [v10]

Jan Kratochvil duke at openjdk.org
Tue Mar 7 08:52:01 UTC 2023


On Tue, 7 Mar 2023 01:45:50 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> Jan Kratochvil has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Fix win32 broken build.
>
> src/hotspot/share/runtime/sharedRuntime.cpp line 238:
> 
>> 236: #endif
>> 237: 
>> 238: #if !defined(TARGET_COMPILER_gcc) || defined(_WIN64)
> 
> That is the wrong condition - it would activate for any non-Windows, non-gcc compiler. This code is only for _WIN64 is it not? regardless of the (theoretical) compiler used on win64?

For non-Windows non-gcc compiler it will use:
>   return ((jfloat)fmod((double)x,(double)y));

Which I find correct.

> src/hotspot/share/runtime/sharedRuntime.cpp line 272:
> 
>> 270: #endif
>> 271: JRT_END
>> 272: #endif // !X86 || _WIN64
> 
> !X86 ???

True, thanks for finding it.

-------------

PR: https://git.openjdk.org/jdk/pull/12508


More information about the hotspot-dev mailing list