sendaoYan / riscv-port-jdk8u-ysd

https://openjdk.org/projects/riscv-port
GNU General Public License v2.0
0 stars 0 forks source link

[riscv64-8u]c1_CodeStubs_riscv.cpp:354:6: error: ‘class C1_MacroAssembler’ has no member named ‘cbz’ #64

Open sendaoYan opened 1 month ago

sendaoYan commented 1 month ago
+ cd build/linux-riscv64-normal-server-release/hotspot/linux_riscv_compiler2/generated
+ bash -c '/usr/bin/g++ -DLINUX -D_GNU_SOURCE -DRISCV64 -DPRODUCT -I. -I/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/share/vm/prims -I/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/share/vm -I/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/share/vm/precompiled -I/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm -I/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/os_cpu/linux_riscv/vm -I/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/os/linux/vm -I/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/os/posix/vm -I../generated -DHOTSPOT_RELEASE_VERSION="25.412-b00" -DHOTSPOT_BUILD_TARGET="product" -DHOTSPOT_BUILD_USER="yansendao" -DHOTSPOT_LIB_ARCH="riscv64" -DHOTSPOT_VM_DISTRO="OpenJDK"  -DTARGET_OS_FAMILY_linux -DTARGET_ARCH_riscv -DTARGET_ARCH_MODEL_riscv -DTARGET_OS_ARCH_linux_riscv -DTARGET_OS_ARCH_MODEL_linux_riscv64 -DTARGET_COMPILER_gcc -DINCLUDE_JFR=1 -DCOMPILER2 -DCOMPILER1 -fPIC -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new -fvisibility=hidden  -pipe -fno-strict-aliasing  -fno-omit-frame-pointer -O3  -g -DVM_LITTLE_ENDIAN -D_LP64=1 -Werror -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value -Wformat=2 -Wreturn-type   -fstack-protector  -fno-delete-null-pointer-checks -fno-lifetime-dse -std=gnu++98 -DDTRACE_ENABLED -c -MMD -MP -MF ../generated/dependencies/c1_CodeStubs_riscv.o.d -fpch-deps -o c1_CodeStubs_riscv.o /home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp'
/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp: In member function ‘virtual void G1PreBarrierStub::emit_code(LIR_Assembler*)’:
/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp:354:6: error: ‘class C1_MacroAssembler’ has no member named ‘cbz’; did you mean ‘clz’?
  354 |   __ cbz(pre_val_reg, _continuation);
      |      ^~~
      |      clz
/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp:357:6: error: ‘class C1_MacroAssembler’ has no member named ‘b’
  357 |   __ b(_continuation);
      |      ^
/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp: In member function ‘virtual void G1PostBarrierStub::emit_code(LIR_Assembler*)’:
/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp:365:6: error: ‘class C1_MacroAssembler’ has no member named ‘cbz’; did you mean ‘clz’?
  365 |   __ cbz(new_val_reg, _continuation);
      |      ^~~
      |      clz
/home/yansendao/git/riscv-port-jdk8u-ysd/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp:368:6: error: ‘class C1_MacroAssembler’ has no member named ‘b’
  368 |   __ b(_continuation);
      |      ^

make-riscv64-fastdebug.log make-riscv64-release.log make-riscv64-slowdebug.log make-x86_64-fastdebug.log make-x86_64-release.log make-x86_64-slowdebug.log standalone.log make-aarch64-slowdebug.log make-aarch64-release.log make-aarch64-fastdebug.log

sendaoYan commented 1 month ago

make-aarch64-fastdebug.log make-aarch64-release.log make-aarch64-slowdebug.log make-riscv64-fastdebug.log make-riscv64-release.log make-riscv64-slowdebug.log make-x86_64-fastdebug.log make-x86_64-release.log make-x86_64-slowdebug.log standalone.log

sendaoYan commented 1 month ago
diff --git a/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp b/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp
index b021fce29d8..ef2d54c1ea4 100644
--- a/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp
+++ b/hotspot/src/cpu/riscv/vm/c1_CodeStubs_riscv.cpp
@@ -351,10 +351,10 @@ void G1PreBarrierStub::emit_code(LIR_Assembler* ce) {
   if (do_load()) {
     ce->mem2reg(addr(), pre_val(), T_OBJECT, patch_code(), info(), false /*wide*/, false /*unaligned*/);
   }
-  __ cbz(pre_val_reg, _continuation);
+  __ beqz(pre_val_reg, _continuation);  //TODO-RISCV64 cbz -> beqz
   ce->store_parameter(pre_val()->as_register(), 0);
   __ far_call(RuntimeAddress(Runtime1::entry_for(Runtime1::g1_pre_barrier_slow_id)));
-  __ b(_continuation);
+  __ j(_continuation);  //TODO-RISCV64 b -> j
 }

 void G1PostBarrierStub::emit_code(LIR_Assembler* ce) {
@@ -362,10 +362,10 @@ void G1PostBarrierStub::emit_code(LIR_Assembler* ce) {
   assert(addr()->is_register(), "Precondition.");
   assert(new_val()->is_register(), "Precondition.");
   Register new_val_reg = new_val()->as_register();
-  __ cbz(new_val_reg, _continuation);
+  __ beqz(new_val_reg, _continuation);  //TODO-RISCV64 cbz -> beqz
   ce->store_parameter(addr()->as_pointer_register(), 0);
   __ far_call(RuntimeAddress(Runtime1::entry_for(Runtime1::g1_post_barrier_slow_id)));
-  __ b(_continuation);
+  __ j(_continuation);  //TODO-RISCV64 b -> j
 }

 #endif // INCLUDE_ALL_GCS

64.patch

sendaoYan commented 1 month ago

To github.com:sendaoYan/riscv-port-jdk8u-ysd.git bbe034fe8b9..be87e383c9a minus-jbs8276799 -> minus-jbs8276799

sendaoYan commented 1 month ago

standalone.log

sendaoYan commented 1 month ago

make-aarch64-fastdebug.log make-aarch64-release.log make-aarch64-slowdebug.log make-riscv64-fastdebug.log make-riscv64-release.log make-riscv64-slowdebug.log make-x86_64-fastdebug.log make-x86_64-release.log make-x86_64-slowdebug.log standalone.log