RFR: 8308452: Extend internal Architecture enum with byte order and address size [v3]
Naoto Sato
naoto at openjdk.org
Wed May 31 16:04:02 UTC 2023
On Wed, 31 May 2023 14:08:09 GMT, Roger Riggs <rriggs at openjdk.org> wrote:
>> The internal enum jdk.internal.util.Architecture does not provide information about the big or little endianness or the address size (64 or 32 bits). The endian-ness and address size are intrinsic to the architecture.
>>
>> The values of the enum are extended to separately identify the big endian and little-endian uses of the ISA.
>> For example, `PPC64` and `PPC64LE` for the big and little-endian versions.
>> The enum values directly reflect the build-time artifacts and resulting executables.
>>
>> This information about an architecture will make the enum more useful especially to identify a target platform in a cross-platform use case. A method is added to map well known aliases for the platforms to the Architecture enum.
>
> Roger Riggs has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains eight commits:
>
> - Don't map ppc64le to ppc64 when processing the PlatformProps.java.template
> - Merge branch 'master' into 8308452-cross-platform-arch
> - Correct handling of ppc64le/ppc64 using non-canonical architecture.
> Keep canonical architecture names for s390, amd/x86_64.
> - Merge branch 'master' into 8308452-cross-platform-arch
> - Merge branch 'master' into 8308452-cross-platform-arch
> - Review suggestions
> - Correct address size for ARM (32-bit)
> - 8308452: Extend internal Architecture enum with byte order and address size
src/java.base/share/classes/jdk/internal/util/OperatingSystem.java line 29:
> 27: import jdk.internal.vm.annotation.ForceInline;
> 28:
> 29: import java.util.Locale;
Nit: Stray import?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14063#discussion_r1211959219
More information about the core-libs-dev
mailing list