RFR: 8342769: gcc port broken on HotSpot
Julian Waters
jwaters at openjdk.org
Tue Oct 22 03:48:11 UTC 2024
On Tue, 22 Oct 2024 02:03:29 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> Several areas in HotSpot are broken in the gcc port. These, with the exception of 1 rather big oversight within SharedRuntime::frem and SharedRuntime::drem, are all minor correctness issues within the code. These mostly can be fixed with simple changes to the code. Note that I am not sure whether the SharedRuntime::frem and SharedRuntime::drem fix is correct. It may be that they can be removed entirely
>
> src/hotspot/cpu/x86/sharedRuntime_x86.cpp line 102:
>
>> 100: const julong double_sign_mask = CONST64(0x7FFFFFFFFFFFFFFF);
>> 101: const julong double_infinity = CONST64(0x7FF0000000000000);
>> 102: #endif
>
> Isn't all this better suited for sharedRuntime_x86_64.cpp?
You mean the entire custom frem and drem implementation unique to x64 Windows, or just this block of constants here? These constants are used by the custom Windows implementation, so they have to be in the same file. Moving the entire definition for Windows x64 to sharedRuntime_x86_64.cpp seems to be duplicating code even more, and I still don't know whether this is the right solution. It may be that this custom implementation may not be needed anymore and should be removed, which is why I left it in the sharedRuntime_x86.cpp file for the time being
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21627#discussion_r1809806538
More information about the hotspot-dev
mailing list