From boris.ulasevich at bell-sw.com Tue May 3 06:18:18 2022 From: boris.ulasevich at bell-sw.com (Boris Ulasevich) Date: Tue, 3 May 2022 09:18:18 +0300 Subject: RFR 8285378: Remove unnecessary nop for C1 exception and deopt handler Message-ID: <4ca866f6-dde6-6838-ce8f-bffea7b398de@bell-sw.com> Hi, I am going to make a small change to the old code copied to all platforms. I would be grateful if someone could help with testing the change on the riscv and s390 platforms. https://github.com/openjdk/jdk/pull/8341 thanks, Boris From dingli at iscas.ac.cn Fri May 6 09:35:44 2022 From: dingli at iscas.ac.cn (Dingli Zhang) Date: Fri, 6 May 2022 17:35:44 +0800 Subject: Comment typo of imm index Message-ID: <74DB8ABF-E2D3-4E55-9477-BC13710F60AF@iscas.ac.cn> Hi, I found a small problem about imm index in the comments. I think 'imm[31:28]? may be 'imm[31:20]' for ?0x7ff' in the following two places: src/hotspot/cpu/riscv/assembler_riscv.cpp: ``` void Assembler::li64(Register Rd, int64_t imm) { // Load upper 32 bits. upper = imm[63:32], but if imm[31] == 1 or // (imm[31:28] == 0x7ff && imm[19] == 1), upper = imm[63:32] + 1. int64_t lower = imm & 0xffffffff; ``` src/hotspot/cpu/riscv/macroAssembler_riscv.cpp: ``` // Load upper 32 bits. Upper = target[63:32], but if target[31] = 1 or (target[31:28] == 0x7ff && target[19] == 1), // upper = target[63:32] + 1. ``` Best regards, Dingli From jiangfeilong at huawei.com Sat May 7 02:33:57 2022 From: jiangfeilong at huawei.com (jiangfeilong) Date: Sat, 7 May 2022 02:33:57 +0000 Subject: Comment typo of imm index In-Reply-To: <74DB8ABF-E2D3-4E55-9477-BC13710F60AF@iscas.ac.cn> References: <74DB8ABF-E2D3-4E55-9477-BC13710F60AF@iscas.ac.cn> Message-ID: <55d8a89725ac48ffb13ee590ca42996b@huawei.com> Hi Dingli, Thanks for pointing this out. We will get these typos fixed in our next PR :). Thanks, Feilong -----Original Message----- From: riscv-port-dev On Behalf Of Dingli Zhang Sent: Friday, May 6, 2022 5:36 PM To: riscv-port-dev at openjdk.java.net Subject: Comment typo of imm index Hi, I found a small problem about imm index in the comments. I think 'imm[31:28]? may be 'imm[31:20]' for ?0x7ff' in the following two places: src/hotspot/cpu/riscv/assembler_riscv.cpp: ``` void Assembler::li64(Register Rd, int64_t imm) { // Load upper 32 bits. upper = imm[63:32], but if imm[31] == 1 or // (imm[31:28] == 0x7ff && imm[19] == 1), upper = imm[63:32] + 1. int64_t lower = imm & 0xffffffff; ``` src/hotspot/cpu/riscv/macroAssembler_riscv.cpp: ``` // Load upper 32 bits. Upper = target[63:32], but if target[31] = 1 or (target[31:28] == 0x7ff && target[19] == 1), // upper = target[63:32] + 1. ``` Best regards, Dingli From Abhishek.kumar at exaleapsemi.com Mon May 9 12:32:43 2022 From: Abhishek.kumar at exaleapsemi.com (Abhishek Kumar) Date: Mon, 9 May 2022 12:32:43 +0000 Subject: cross-compile of openjdk for riscv64 Message-ID: Hi, I am trying to compile openjdk for riscv64 and the sources used these https://openjdk.java.net/projects/riscv-port. OpenJDK: RISC-V Port Project RISC-V Port Project. The goal of this Project is to deliver a full-featured port of OpenJDK on the Linux/RISC-V platform which may be integrated into the main OpenJDK development branch.. This Project is sponsored by the Porters Group.. Community. Members; Mailing list riscv-port-dev (); Links Repository; Wiki page openjdk.java.net ? ? I tried bellow steps to build jdk. (1) setup toolchain and libs: export RISCV64=path to toolchain export LD_LIBRARY_PATH=$RISCV64/lib64:/usr/local/gcc/lib64:/usr/local/gcc/lib export PATH="$RISCV64/bin:$PATH" export CC=$RISCV64/bin/riscv64-unknown-linux-gnu-gcc export CXX=$RISCV64/bin/riscv64-unknown-linux-gnu-g++ (2) configure: bash configure --openjdk-target=riscv64-unknown-linux-gnu BUILD_CC=../../install/bin/riscv64-unknown-linux-gnu-gcc BUILD_CXX=../../install/bin/riscv64-unknown-linux-gnu-g++ --with-boot-jdk=../boot-jdk/jdk-18.0.1.1/ --with-sysroot=../../rootfs/ (3)compile: make all so all these steps I followed ,configure is successfull but I am getting error in make ,bellow is the error, please help me out how can I fix it. abhishek at virtual-machine:~/abhi/jdk$ make Building target 'default (exploded-image)' in configuration 'linux-riscv64-server-release' Compiling 8 files for BUILD_TOOLS_LANGTOOLS Compiling 1 files for BUILD_TOOLS_HOTSPOT Creating hotspot/variant-server/tools/adlc/adlc from 13 file(s) Compiling 2 files for BUILD_JVMTI_TOOLS Compiling 17 properties into resource bundles for jdk.javadoc Generating classes for compiler.properties launcher.properties Compiling 15 properties into resource bundles for jdk.jdeps Compiling 9 properties into resource bundles for jdk.jshell Compiling 20 properties into resource bundles for jdk.compiler Compiling 127 files for BUILD_java.compiler.interim Compiling 406 files for BUILD_jdk.compiler.interim Compiling 242 files for BUILD_jdk.javadoc.interim Creating support/modules_libs/java.base/server/libjvm.so from 1052 file(s) Compiling 186 files for BUILD_TOOLS_JDK Compiling 2 files for COMPILE_DEPEND /home/abhishek/abhi/jdk/src/java.base/share/classes/sun/nio/ch/SocketOptionRegistry.java.template:29:10: fatal error: stdio.h: No such file or directory 29 | #include | ^~~~~~~~~ compilation terminated. gensrc/GensrcMisc.gmk:95: recipe for target '/home/abhishek/abhi/jdk/build/linux-riscv64-server-release/support/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java' failed make[3]: *** [/home/abhishek/abhi/jdk/build/linux-riscv64-server-release/support/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java] Error 1 make[3]: *** Deleting file '/home/abhishek/abhi/jdk/build/linux-riscv64-server-release/support/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java' make[3]: *** Waiting for unfinished jobs.... make/Main.gmk:110: recipe for target 'java.base-gensrc-src' failed make[2]: *** [java.base-gensrc-src] Error 2 make[2]: *** Waiting for unfinished jobs.... Thanks, Abhishek Kumar From jiangfeilong at huawei.com Tue May 10 06:03:18 2022 From: jiangfeilong at huawei.com (jiangfeilong) Date: Tue, 10 May 2022 06:03:18 +0000 Subject: cross-compile of openjdk for riscv64 In-Reply-To: References: Message-ID: <190959e536104272aa0f6aed71768833@huawei.com> Hi Abhishek, In your configuration of cross-compilation, the riscv64 toolchain gcc/g++ is set as BUILD_CC and BUILD_CXX, while it should be the gcc/g++ of your host machine. P.S.: If your host has newer version of gcc/g++ (e.g. >= gcc7), you can just ignore BUILD_CC and BUILD_CXX optins. Thanks, Feilong Jiang -----Original Message----- From: riscv-port-dev On Behalf Of Abhishek Kumar Sent: Monday, May 9, 2022 8:33 PM To: riscv-port-dev at openjdk.java.net Subject: cross-compile of openjdk for riscv64 Hi, I am trying to compile openjdk for riscv64 and the sources used these https://openjdk.java.net/projects/riscv-port. OpenJDK: RISC-V Port Project RISC-V Port Project. The goal of this Project is to deliver a full-featured port of OpenJDK on the Linux/RISC-V platform which may be integrated into the main OpenJDK development branch.. This Project is sponsored by the Porters Group.. Community. Members; Mailing list riscv-port-dev (); Links Repository; Wiki page openjdk.java.net ? ? I tried bellow steps to build jdk. (1) setup toolchain and libs: export RISCV64=path to toolchain export LD_LIBRARY_PATH=$RISCV64/lib64:/usr/local/gcc/lib64:/usr/local/gcc/lib export PATH="$RISCV64/bin:$PATH" export CC=$RISCV64/bin/riscv64-unknown-linux-gnu-gcc export CXX=$RISCV64/bin/riscv64-unknown-linux-gnu-g++ (2) configure: bash configure --openjdk-target=riscv64-unknown-linux-gnu BUILD_CC=../../install/bin/riscv64-unknown-linux-gnu-gcc BUILD_CXX=../../install/bin/riscv64-unknown-linux-gnu-g++ --with-boot-jdk=../boot-jdk/jdk-18.0.1.1/ --with-sysroot=../../rootfs/ (3)compile: make all so all these steps I followed ,configure is successfull but I am getting error in make ,bellow is the error, please help me out how can I fix it. abhishek at virtual-machine:~/abhi/jdk$ make Building target 'default (exploded-image)' in configuration 'linux-riscv64-server-release' Compiling 8 files for BUILD_TOOLS_LANGTOOLS Compiling 1 files for BUILD_TOOLS_HOTSPOT Creating hotspot/variant-server/tools/adlc/adlc from 13 file(s) Compiling 2 files for BUILD_JVMTI_TOOLS Compiling 17 properties into resource bundles for jdk.javadoc Generating classes for compiler.properties launcher.properties Compiling 15 properties into resource bundles for jdk.jdeps Compiling 9 properties into resource bundles for jdk.jshell Compiling 20 properties into resource bundles for jdk.compiler Compiling 127 files for BUILD_java.compiler.interim Compiling 406 files for BUILD_jdk.compiler.interim Compiling 242 files for BUILD_jdk.javadoc.interim Creating support/modules_libs/java.base/server/libjvm.so from 1052 file(s) Compiling 186 files for BUILD_TOOLS_JDK Compiling 2 files for COMPILE_DEPEND /home/abhishek/abhi/jdk/src/java.base/share/classes/sun/nio/ch/SocketOptionRegistry.java.template:29:10: fatal error: stdio.h: No such file or directory 29 | #include | ^~~~~~~~~ compilation terminated. gensrc/GensrcMisc.gmk:95: recipe for target '/home/abhishek/abhi/jdk/build/linux-riscv64-server-release/support/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java' failed make[3]: *** [/home/abhishek/abhi/jdk/build/linux-riscv64-server-release/support/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java] Error 1 make[3]: *** Deleting file '/home/abhishek/abhi/jdk/build/linux-riscv64-server-release/support/gensrc/java.base/sun/nio/ch/SocketOptionRegistry.java' make[3]: *** Waiting for unfinished jobs.... make/Main.gmk:110: recipe for target 'java.base-gensrc-src' failed make[2]: *** [java.base-gensrc-src] Error 2 make[2]: *** Waiting for unfinished jobs.... Thanks, Abhishek Kumar From aph-open at littlepinkcloud.com Mon May 23 15:27:26 2022 From: aph-open at littlepinkcloud.com (Andrew Haley) Date: Mon, 23 May 2022 16:27:26 +0100 Subject: Porters: are you ready for 8284161: Implementation of Virtual Threads (Preview) ? Message-ID: Are you aware aware that the commit for 8284161 https://github.com/openjdk/jdk/pull/8166 will require changes to your port? Will you be able to fix it in time for JDK 19? You don't have to implement virtual threads: it may only be necessary to stub some things out, but there may be other issues as well. Please check, and please shout out if you don't expect to get your port working in time for JDK 19. -- Andrew Haley (he/him) Java Platform Lead Engineer Red Hat UK Ltd. https://keybase.io/andrewhaley EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671 From aph at redhat.com Mon May 23 15:25:43 2022 From: aph at redhat.com (Andrew Haley) Date: Mon, 23 May 2022 16:25:43 +0100 Subject: Porters: are you ready for 8284161: Implementation of Virtual Threads (Preview) ? Message-ID: <23309ab5-c63b-d7bd-1711-c1c7eecde6d7@redhat.com> Are you aware aware that the commit for 8284161 https://github.com/openjdk/jdk/pull/8166 will require changes to your port? Will you be able to fix it in time for JDK 19? You don't have to implement virtual threads: it may only be necessary to stub some things out, but there may be other issues as well. Please check, and please shout out if you don't expect to get your port working in time for JDK 19. -- Andrew Haley (he/him) Java Platform Lead Engineer Red Hat UK Ltd. https://keybase.io/andrewhaley EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671