[jdk8u-dev] RFR: 8315020: The macro definition for LoongArch64 zero build is not accurate.

mirabilos duke at openjdk.org
Thu May 9 20:35:34 UTC 2024


On Sun, 28 Apr 2024 06:48:33 GMT, Leslie Zhai <lzhai at openjdk.org> wrote:

> Hi,
> 
> I'd like to backport this patch to jdk8u. `common/autoconf/platform.m4` and `hotspot/src/os/linux/vm/os_linux.cpp` do not apply cleanly due to context difference, but it is easy to resolve them manually.
> 
> A native build on LoongArch hardware is tested.
> 
> Debian: https://mail.openjdk.org/pipermail/jdk8u-dev/2024-April/018378.html
> 
> 
> $ ./build/images/j2sdk-image/bin/java -version
> openjdk version "1.8.0_412"
> OpenJDK Runtime Environment (build 1.8.0_412-8u412-ga-1-b08)
> OpenJDK 64-Bit Zero VM (build 25.412-b08, interpreted mode)
> 
> 
> Loongnix Desktop:
> 
> 
> $ ./build/linux-loongarch64-normal-zero-release/images/j2sdk-image/bin/java -version
> openjdk version "1.8.0_422-internal"
> OpenJDK Runtime Environment (build 1.8.0_422-internal-zhaixiang_2024_04_28_10_57-b00)
> OpenJDK 64-Bit Zero VM (build 25.422-b00, interpreted mode)
> 
> 
> The risk of the downport is low.
> 
> Thanks,
> Leslie Zhai

common/autoconf/platform.m4 line 384:

> 382:   # ZERO_ARCHDEF is used to enable architecture-specific code
> 383:   case "${OPENJDK_TARGET_CPU}" in
> 384:     loongarch64)  ZERO_ARCHDEF=LOONGARCH64 ;;

This is not necessary, line 390 already does that.

hotspot/src/os/linux/vm/os_linux.cpp line 2011:

> 2009:   #elif  (defined AARCH64)
> 2010:     static  Elf32_Half running_arch_code=EM_AARCH64;
> 2011:   #elif  (defined LOONGARCH64)

+1, this fixes the compile issue I reported.

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

PR Review Comment: https://git.openjdk.org/jdk8u-dev/pull/489#discussion_r1582221847
PR Review Comment: https://git.openjdk.org/jdk8u-dev/pull/489#discussion_r1582221996


More information about the jdk8u-dev mailing list