Open axiangyushanhaijing opened 1 year ago
查看报错log发现:
--------------- T H R E A D ---------------
Current thread (0x0000004040001800): JavaThread "BenchmarkThread startup.sunflow 1" [_thread_in_Java, id=1857545, stack(0x00000040476ca000,0x00000040478ca000)]
siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x000000000db97998
Registers:
pc =0x000000400ba11cbc is at begin+368 in a stub
MethodHandle::interpreter_entry::_linkToStatic [0x000000400ba11b4c, 0x000000400ba11ccc[ (384 bytes)
x1(ra) =0x000000400b8aa400 is at code_begin+2944 in an Interpreter codelet
invoke return entry points [0x000000400b8a9880, 0x000000400b8aa700] 3712 bytes
x2(sp) =0x00000040478c4890 is pointing into the stack for thread: 0x0000004040001800
x3(gp) =0x0000004000002800 is an unknown value
x4(tp) =0x00000040478c98f0 is pointing into the stack for thread: 0x0000004040001800
x5(t0) =0x00000000000000bc is an unknown value
x6(t1) =0x00000000000000bc is an unknown value
x7(t2) =0x0000000000000001 is an unknown value
x8(s0) =0x00000040478c4910 is pointing into the stack for thread: 0x0000004040001800
x9(s1) =0x00000000000000b8 is an unknown value
x10(a0) =0x0000000000000000 is an unknown value
x11(a1) =0x0000000000000008 is an unknown value
x12(a2) =0x0000000000000008 is an unknown value
x13(a3) =0x0000000080400001 is an unknown value
x14(a4) =0x0000000000000001 is an unknown value
x15(a5) =0x0000000000000000 is an unknown value
x16(a6) =0xfffffffffffffffe is an unknown value
针对MethodHandle::interpreter_entry::_linkToStatic相关代码进行review 已提 #263
截止2023.02.06为止,基于 #265 ,总共能够通过26个case,通过率:68.4%
截止2023.3.24 通过32个case,失败6个,通过率:84.2%。
参考:https://github.com/openjdk-riscv/jdk11u/issues/331#issuecomment-1014443531
使用命令
qemu64 /home/zhangxiang/rv-jdk8u/jdk8u/build/linux-riscv64-normal-core-slowdebug/jdk/bin/java-bak -jar SPECjvm2008.jar -ikv -ict -coe -i 1 -wt 0 -ops 1 -bt 1 $var >> new0324slowdebug_SPECjvm2008.log 2>&1
失败log:
ERROR: unable to delete directory: /tmp/SPECjvm2008/compiler.sunflow/sunflow/src/org
ERROR: unable to delete directory: /tmp/SPECjvm2008/compiler.sunflow/sunflow/src
ERROR: unable to delete directory: /tmp/SPECjvm2008/compiler.sunflow/sunflow
ERROR: unable to delete directory: /tmp/SPECjvm2008/compiler.sunflow
ERROR: unable to delete directory: /tmp/SPECjvm2008
ERROR: could not create: /tmp/SPECjvm2008/compiler.sunflow/sourcefiles.txt
java.io.FileNotFoundException: /tmp/SPECjvm2008/compiler.sunflow/sourcefiles.txt (Permission denied)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
at java.io.FileOutputStream.<init>(FileOutputStream.java:162)
at java.io.FileWriter.<init>(FileWriter.java:90)
通过对比x86的测试情况,当前测试情况与x86保持一致。
参考 教程 方法,开始测试jdk8
当前报错