Maxine-VM icon indicating copy to clipboard operation
Maxine-VM copied to clipboard

[RISCV64]Fedora(on QEMU) run test,FatalError: stack reset position two

Open DingliZhang opened this issue 3 years ago • 16 comments

I had followed the instructions in Build and Usage Instructions and Running Maxine VM on the Fedora RISC-V VM but it seems had some problems about stack, Is it the same question as #20 ? Thx a lot.

[root@fedora-riscv linux]# ./maxvm -version
openjdk version "1.8.0_265"
OpenJDK Runtime Environment (build 1.8.0_265-8u265-b01-0ubuntu2~16.04-b01)
Maxine Virtual Machine (build 2.9.0, mixed mode, baseline-compile first)
FatalError: stack reset position two
could not find top-level exception handler

FATAL VM ERROR[1]: could not find top-level exception handler
Faulting thread: main[id=1]
------ Stack dump for thread main[id=1] ------
        -> com.sun.max.vm.runtime.FatalError.dumpStackAndThreadLocals(Lcom/sun/max/unsafe/Pointer;Z)V {MaxTargetMethod@0x3f9fbcf9e0} [0x3f9fbcf9e0+360]
        -> com.sun.max.vm.runtime.FatalError.unexpected(Ljava/lang/String;ZLjava/lang/Throwable;Lcom/sun/max/unsafe/Pointer;)Lcom/sun/max/vm/runtime/FatalError; {MaxTargetMethod@0x3f9fa6a848} [0x3f9fa6a848+1484]
        -> com.sun.max.vm.runtime.FatalError.unexpected(Ljava/lang/String;)Lcom/sun/max/vm/runtime/FatalError; {MaxTargetMethod@0x3f9f843110} [0x3f9f843110+124]
        -> com.sun.max.vm.runtime.Throw.raise(Ljava/lang/Throwable;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/CodePointer;)V {MaxTargetMethod@0x3f9fadf0d8} [0x3f9fadf0d8+584]
        -> com.sun.max.vm.runtime.Throw.convertAndRaise(Ljava/lang/Throwable;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/CodePointer;)V {MaxTargetMethod@0x3f9f83fe40} [0x3f9f83fe40+308]
        -> com.oracle.max.vm.ext.maxri.MaxRuntimeCalls.runtimeUnwindException(Ljava/lang/Throwable;)V {MaxTargetMethod@0x3f9f83fb30} [0x3f9f83fb30+216]
        -> java.lang.Shutdown.exit(I)V {MaxTargetMethod@0x3f9fb01000} [0x3f9fb01000+1080]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2556]
        -> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread main[id=1] ------
                              SAFEPOINT_LATCH: {E} 0x1e624160  {D} 0x1e6242c8  {T} <trigger latch>
                                         ETLA: {E} 0x1e624160  {D} 0x1e624160  {T} 0x1e624160
                                         DTLA: {E} 0x1e6242c8  {D} 0x1e6242c8  {T} 0x1e6242c8
                                         TTLA: {E} 0x1e623ff8  {D} 0x1e623ff8  {T} 0x1e623ff8
                         NATIVE_THREAD_LOCALS: {E} 0x1e624430  {D} 0x1e624430  {T} 0x1e624430
                                 FORWARD_LINK: {E} 0  {D} 0  {T} 0
                                BACKWARD_LINK: {E} 0x1e647160  {D} 0x1e647160  {T} 0x1e647160
                                 VM_OPERATION: {E} 0  {D} 0  {T} 0
                                           ID: {E} 0x1  {D} 0x1  {T} 0x1
                                    VM_THREAD: {E} 0x3f9d1009c0 main[id=1]  {D} 0x3f9d1009c0 main[id=1]  {T} 0x3f9d1009c0 main[id=1]
                                      JNI_ENV: {E} 0x3fdae31010  {D} 0x3fdae31010  {T} 0x3fdae31010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fff8f5e60  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0x1  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fff8f7000  {D} 0x3fff8f7000  {T} 0x3fff8f7000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fff0f9000  {D} 0x3fff0f9000  {T} 0x3fff0f9000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1e624480  {D} 0x1e624480  {T} 0x1e624480
                         STACK_REFERENCE_SIZE: {E} 0x20008  {D} 0x20008  {T} 0x20008
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0  {D} 0  {T} 0
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3fbafa30b0  {D} 0x3fbafa30b0  {T} 0x3fbafa30b0
                     TRACE_UNDER_CONSTRUCTION: {E} 0  {D} 0  {T} 0
                                 VMLOG_RECORD: {E} 0x3f9e8b7210  {D} 0x3f9e8b7210  {T} 0x3f9e8b7210
                                 VMLOG_BUFFER: {E} 0x3f9ecf3c80  {D} 0x3f9ecf3c80  {T} 0x3f9ecf3c80
                         VMLOG_BUFFER_OFFSETS: {E} 0x8a0  {D} 0x8a0  {T} 0x8a0
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fbd9b43d8  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fbd9a75d0  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fbae13000  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread Signal Dispatcher[id=3] ------
        -> com.sun.max.vm.runtime.SignalDispatcher.nativeSignalWait()V {MaxTargetMethod@0x3f9f98c1e0} [0x3f9f98c1e0+1220]
        -> com.sun.max.vm.runtime.SignalDispatcher.waitForSignal()I {MaxTargetMethod@0x3f9fd3bc98} [0x3f9fd3bc98+540]
        -> com.sun.max.vm.runtime.SignalDispatcher.run()V {MaxTargetMethod@0x3f9fbda3f8} [0x3f9fbda3f8+272]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
        -> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread Signal Dispatcher[id=3] ------
                              SAFEPOINT_LATCH: {E} 0x1e659160  {D} 0x1e6592c8  {T} <trigger latch>
                                         ETLA: {E} 0x1e659160  {D} 0x1e659160  {T} 0x1e659160
                                         DTLA: {E} 0x1e6592c8  {D} 0x1e6592c8  {T} 0x1e6592c8
                                         TTLA: {E} 0x1e658ff8  {D} 0x1e658ff8  {T} 0x1e658ff8
                         NATIVE_THREAD_LOCALS: {E} 0x1e659430  {D} 0x1e659430  {T} 0x1e659430
                                 FORWARD_LINK: {E} 0x1e653160  {D} 0x1e653160  {T} 0x1e653160
                                BACKWARD_LINK: {E} 0  {D} 0  {T} 0
                                 VM_OPERATION: {E} 0  {D} 0  {T} 0
                                           ID: {E} 0x3  {D} 0x3  {T} 0x3
                                    VM_THREAD: {E} 0x3f9c301140 Signal Dispatcher[id=3]  {D} 0x3f9c301140 Signal Dispatcher[id=3]  {T} 0x3f9c301140 Signal Dispatcher[id=3]
                                      JNI_ENV: {E} 0x3fdae31010  {D} 0x3fdae31010  {T} 0x3fdae31010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbab0e550  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbab10000  {D} 0x3fbab10000  {T} 0x3fbab10000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbaa12000  {D} 0x3fbaa12000  {T} 0x3fbaa12000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1e659480  {D} 0x1e659480  {T} 0x1e659480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                                 VMLOG_RECORD: {E} 0x3fbae53038  {D} 0x3fbae53038  {T} 0x3fbae53038
                                 VMLOG_BUFFER: {E} 0  {D} 0  {T} 0
                         VMLOG_BUFFER_OFFSETS: {E} 0  {D} 0  {T} 0
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fbae63000  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fbae53058  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fbae53000  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread Finalizer[id=5] ------
        -> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9fa004b8} [0x3f9fa004b8+1256]
        -> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01ce550} [0x3fa01ce550+960]
        -> com.sun.max.vm.monitor.modal.sync.ProxyAcquirableJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01cdbe8} [0x3fa01cdbe8+208]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3fa005dfe8} [0x3fa005dfe8+704]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fed1e70} [0x3f9fed1e70+684]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fd21468} [0x3f9fd21468+760]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9fbc7f48} [0x3f9fbc7f48+160]
        -> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9fa55430} [0x3f9fa55430+120]
        -> java.lang.ref.ReferenceQueue.remove(J)Ljava/lang/ref/Reference; {MaxTargetMethod@0x3f9fedff48} [0x3f9fedff48+800]
        -> java.lang.ref.ReferenceQueue.remove()Ljava/lang/ref/Reference; {MaxTargetMethod@0x3f9fd32308} [0x3f9fd32308+116]
        -> java.lang.ref.Finalizer$FinalizerThread.run()V {MaxTargetMethod@0x3f9fbd4ae0} [0x3f9fbd4ae0+684]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
        -> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread Finalizer[id=5] ------
                              SAFEPOINT_LATCH: {E} 0x1e653160  {D} 0x1e6532c8  {T} <trigger latch>
                                         ETLA: {E} 0x1e653160  {D} 0x1e653160  {T} 0x1e653160
                                         DTLA: {E} 0x1e6532c8  {D} 0x1e6532c8  {T} 0x1e6532c8
                                         TTLA: {E} 0x1e652ff8  {D} 0x1e652ff8  {T} 0x1e652ff8
                         NATIVE_THREAD_LOCALS: {E} 0x1e653430  {D} 0x1e653430  {T} 0x1e653430
                                 FORWARD_LINK: {E} 0x1e64d160  {D} 0x1e64d160  {T} 0x1e64d160
                                BACKWARD_LINK: {E} 0x1e659160  {D} 0x1e659160  {T} 0x1e659160
                                 VM_OPERATION: {E} 0  {D} 0  {T} 0
                                           ID: {E} 0x5  {D} 0x5  {T} 0x5
                                    VM_THREAD: {E} 0x3f9b60d570 Finalizer[id=5]  {D} 0x3f9b60d570 Finalizer[id=5]  {T} 0x3f9b60d570 Finalizer[id=5]
                                      JNI_ENV: {E} 0x3fdae31010  {D} 0x3fdae31010  {T} 0x3fdae31010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbac0f2f0  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbac11000  {D} 0x3fbac11000  {T} 0x3fbac11000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbab13000  {D} 0x3fbab13000  {T} 0x3fbab13000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1e653480  {D} 0x1e653480  {T} 0x1e653480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                                 VMLOG_RECORD: {E} 0x3fbae33038  {D} 0x3fbae33038  {T} 0x3fbae33038
                                 VMLOG_BUFFER: {E} 0x3f8c000b90  {D} 0x3f8c000b90  {T} 0x3f8c000b90
                         VMLOG_BUFFER_OFFSETS: {E} 0x18  {D} 0x18  {T} 0x18
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fbae43000  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fbae33058  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fbae33000  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread Reference Handler[id=4] ------
        -> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9fa004b8} [0x3f9fa004b8+1256]
        -> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01ce550} [0x3fa01ce550+960]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3fa005dfe8} [0x3fa005dfe8+704]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fed1e70} [0x3f9fed1e70+684]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fd21468} [0x3f9fd21468+936]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9fbc7f48} [0x3f9fbc7f48+160]
        -> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9fa55430} [0x3f9fa55430+120]
        -> java.lang.ref.Reference.tryHandlePending(Z)Z {MaxTargetMethod@0x3f9fd2ccb8} [0x3f9fd2ccb8+988]
        -> java.lang.ref.Reference$ReferenceHandler.run()V {MaxTargetMethod@0x3f9fbd15d8} [0x3f9fbd15d8+100]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
        -> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread Reference Handler[id=4] ------
                              SAFEPOINT_LATCH: {E} 0x1e64d160  {D} 0x1e64d2c8  {T} <trigger latch>
                                         ETLA: {E} 0x1e64d160  {D} 0x1e64d160  {T} 0x1e64d160
                                         DTLA: {E} 0x1e64d2c8  {D} 0x1e64d2c8  {T} 0x1e64d2c8
                                         TTLA: {E} 0x1e64cff8  {D} 0x1e64cff8  {T} 0x1e64cff8
                         NATIVE_THREAD_LOCALS: {E} 0x1e64d430  {D} 0x1e64d430  {T} 0x1e64d430
                                 FORWARD_LINK: {E} 0x1e647160  {D} 0x1e647160  {T} 0x1e647160
                                BACKWARD_LINK: {E} 0x1e653160  {D} 0x1e653160  {T} 0x1e653160
                                 VM_OPERATION: {E} 0  {D} 0  {T} 0
                                           ID: {E} 0x4  {D} 0x4  {T} 0x4
                                    VM_THREAD: {E} 0x3f9ca6f978 Reference Handler[id=4]  {D} 0x3f9ca6f978 Reference Handler[id=4]  {T} 0x3f9ca6f978 Reference Handler[id=4]
                                      JNI_ENV: {E} 0x3fdae31010  {D} 0x3fdae31010  {T} 0x3fdae31010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbad103b0  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbad12000  {D} 0x3fbad12000  {T} 0x3fbad12000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbac14000  {D} 0x3fbac14000  {T} 0x3fbac14000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1e64d480  {D} 0x1e64d480  {T} 0x1e64d480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                                 VMLOG_RECORD: {E} 0x3fbae43038  {D} 0x3fbae43038  {T} 0x3fbae43038
                                 VMLOG_BUFFER: {E} 0x3f94000b90  {D} 0x3f94000b90  {T} 0x3f94000b90
                         VMLOG_BUFFER_OFFSETS: {E} 0x18  {D} 0x18  {T} 0x18
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fbae53000  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fbae43058  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fbae43000  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread VmOperationThread[id=2] ------
        -> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9fa004b8} [0x3f9fa004b8+1256]
        -> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01ce550} [0x3fa01ce550+960]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3fa005dfe8} [0x3fa005dfe8+704]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fed1e70} [0x3f9fed1e70+684]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fd21468} [0x3f9fd21468+936]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9fbc7f48} [0x3f9fbc7f48+160]
        -> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9fa55430} [0x3f9fa55430+120]
        -> com.sun.max.vm.runtime.VmOperationThread.run()V {MaxTargetMethod@0x3f9fbd7510} [0x3f9fbd7510+740]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
        -> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread VmOperationThread[id=2] ------
                              SAFEPOINT_LATCH: {E} 0x1e647160  {D} 0x1e6472c8  {T} <trigger latch>
                                         ETLA: {E} 0x1e647160  {D} 0x1e647160  {T} 0x1e647160
                                         DTLA: {E} 0x1e6472c8  {D} 0x1e6472c8  {T} 0x1e6472c8
                                         TTLA: {E} 0x1e646ff8  {D} 0x1e646ff8  {T} 0x1e646ff8
                         NATIVE_THREAD_LOCALS: {E} 0x1e647430  {D} 0x1e647430  {T} 0x1e647430
                                 FORWARD_LINK: {E} 0x1e624160  {D} 0x1e624160  {T} 0x1e624160
                                BACKWARD_LINK: {E} 0x1e64d160  {D} 0x1e64d160  {T} 0x1e64d160
                                 VM_OPERATION: {E} 0  {D} 0  {T} 0
                                           ID: {E} 0x2  {D} 0x2  {T} 0x2
                                    VM_THREAD: {E} 0x3f9bba2be8 VmOperationThread[id=2]  {D} 0x3f9bba2be8 VmOperationThread[id=2]  {T} 0x3f9bba2be8 VmOperationThread[id=2]
                                      JNI_ENV: {E} 0x3fdae31010  {D} 0x3fdae31010  {T} 0x3fdae31010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbae112d0  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbae13000  {D} 0x3fbae13000  {T} 0x3fbae13000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbad15000  {D} 0x3fbad15000  {T} 0x3fbad15000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1e647480  {D} 0x1e647480  {T} 0x1e647480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920  {D} 0x3f9eb15920  {T} 0x3f9eb15920
                                 VMLOG_RECORD: {E} 0x3fbae23038  {D} 0x3fbae23038  {T} 0x3fbae23038
                                 VMLOG_BUFFER: {E} 0x3fb4000b90  {D} 0x3fb4000b90  {T} 0x3fb4000b90
                         VMLOG_BUFFER_OFFSETS: {E} 0x30  {D} 0x30  {T} 0x30
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fbae33000  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fbae23058  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fbae23000  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0

DingliZhang avatar Sep 16 '20 09:09 DingliZhang

Hi,

We have tested OpenJDK 8 (u222) (https://maxine-vm.readthedocs.io/en/latest/Status.html#platform-label) for RISC-V. Can you please check with that version instead of the 265 you use?

Thanks

kotselidis avatar Sep 16 '20 10:09 kotselidis

Hello Prof.kotselidis @kotselidis ! thanks for reply, ./maxvm -version looks normal after I use OpenJDK 8 (u222) cross-compiler maxine-VM on ubuntu and copy the image to Fedora(on QEMU) but when I tested against the DaCapo-9.12-bach-MR1 benchmark suites the problem has come up again. Should I change the bootJDK (openJDK with Zero build 25.212-b04) version on Fedora(on QEMU) ?

[root@fedora-riscv linux]# ./maxvm -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_222-b10)
Maxine Virtual Machine (AdoptOpenJDK)(build 2.9.0, mixed mode, baseline-compile first)

[root@fedora-riscv linux]# ./maxvm -jar /root/dacapo-9.12-MR1-bach.jar  -t 1 xalan
Using scaled threading model. 4 processors detected, 1 threads used to drive the workload, in a possible range of [1,100]
===== DaCapo 9.12-MR1 xalan starting =====
Normal completion.
FatalError: stack reset position two
sanity check

FATAL VM ERROR[1]: sanity check
Faulting thread: VmOperationThread[id=2]
------ Stack dump for thread VmOperationThread[id=2] ------
        -> com.sun.max.vm.runtime.FatalError.dumpStackAndThreadLocals(Lcom/sun/max/unsafe/Pointer;Z)V {MaxTargetMethod@0x3f9df93a98} [0x3f9df93a98+360]
        -> com.sun.max.vm.runtime.FatalError.unexpected(Ljava/lang/String;ZLjava/lang/Throwable;Lcom/sun/max/unsafe/Pointer;)Lcom/sun/max/vm/runtime/FatalError; {MaxTargetMethod@0x3f9de2fd78} [0x3f9de2fd78+1484]
        -> com.oracle.max.vm.ext.maxri.MaxTargetMethod.redirectTo(Lcom/sun/max/vm/compiler/target/TargetMethod;)V {MaxTargetMethod@0x3f9e3b7d80} [0x3f9e3b7d80+592]
        -> com.sun.max.vm.compiler.deopt.Deoptimization.doIt()V {MaxTargetMethod@0x3f9e24e0a8} [0x3f9e24e0a8+1352]
        -> com.sun.max.vm.runtime.VmOperation.run()V {MaxTargetMethod@0x3f9e0bc1a8} [0x3f9e0bc1a8+620]
        -> com.sun.max.vm.runtime.VmOperationThread.run()V {MaxTargetMethod@0x3f9df988a8} [0x3f9df988a8+1568]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9dec5010} [0x3f9dec5010+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9dc26938} [0x3f9dc26938+2024]
        -> native{./libjvm.so (0x3fd91ea000) at thread_run (0x3fd91ffabe+408)}
------ Thread locals for thread VmOperationThread[id=2] ------
                              SAFEPOINT_LATCH: {E} 0x1f0b3160  {D} 0x1f0b32c8  {T} <trigger latch>
                                         ETLA: {E} 0x1f0b3160  {D} 0x1f0b3160  {T} 0x1f0b3160
                                         DTLA: {E} 0x1f0b32c8  {D} 0x1f0b32c8  {T} 0x1f0b32c8
                                         TTLA: {E} 0x1f0b2ff8  {D} 0x1f0b2ff8  {T} 0x1f0b2ff8
                         NATIVE_THREAD_LOCALS: {E} 0x1f0b3430  {D} 0x1f0b3430  {T} 0x1f0b3430
                                 FORWARD_LINK: {E} 0x1f090160  {D} 0x1f090160  {T} 0x1f090160
                                BACKWARD_LINK: {E} 0x1f0bf160  {D} 0x1f0bf160  {T} 0x1f0bf160
                                 VM_OPERATION: {E} 0  {D} 0  {T} 0
                                           ID: {E} 0x2  {D} 0x2  {T} 0x2
                                    VM_THREAD: {E} 0x3f99efeeb8 VmOperationThread[id=2]  {D} 0x3f99efeeb8 VmOperationThread[id=2]  {T} 0x3f99efeeb8 VmOperationThread[id=2]
                                      JNI_ENV: {E} 0x3fd9208010  {D} 0x3fd9208010  {T} 0x3fd9208010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fb91e8820  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0x1  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fb91ea000  {D} 0x3fb91ea000  {T} 0x3fb91ea000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fb90ec000  {D} 0x3fb90ec000  {T} 0x3fb90ec000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0x3fb91e8490  {D} 0x3fb91e8490  {T} 0x3fb91e8490
                          STACK_REFERENCE_MAP: {E} 0x1f0b3480  {D} 0x1f0b3480  {T} 0x1f0b3480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                                 VMLOG_RECORD: {E} 0x3fc91ea810  {D} 0x3fc91ea810  {T} 0x3fc91ea810
                                 VMLOG_BUFFER: {E} 0x3fb4000b90  {D} 0x3fb4000b90  {T} 0x3fb4000b90
                         VMLOG_BUFFER_OFFSETS: {E} 0x18  {D} 0x18  {T} 0x18
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fd2a01000  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fd29f1018  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fc91ea830  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread Signal Dispatcher[id=3] ------
        -> com.sun.max.vm.runtime.SignalDispatcher.nativeSignalWait()V {MaxTargetMethod@0x3f9dd485f8} [0x3f9dd485f8+1220]
        -> com.sun.max.vm.runtime.SignalDispatcher.waitForSignal()I {MaxTargetMethod@0x3f9e100090} [0x3f9e100090+540]
        -> com.sun.max.vm.runtime.SignalDispatcher.run()V {MaxTargetMethod@0x3f9df9d2c0} [0x3f9df9d2c0+272]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9dec5010} [0x3f9dec5010+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9dc26938} [0x3f9dc26938+2024]
        -> native{./libjvm.so (0x3fd91ea000) at thread_run (0x3fd91ffabe+408)}
------ Thread locals for thread Signal Dispatcher[id=3] ------
                              SAFEPOINT_LATCH: {E} 0x1f0c4ff8  {D} 0x1f0c52c8  {T} <trigger latch>
                                         ETLA: {E} 0x1f0c5160  {D} 0x1f0c5160  {T} 0x1f0c5160
                                         DTLA: {E} 0x1f0c52c8  {D} 0x1f0c52c8  {T} 0x1f0c52c8
                                         TTLA: {E} 0x1f0c4ff8  {D} 0x1f0c4ff8  {T} 0x1f0c4ff8
                         NATIVE_THREAD_LOCALS: {E} 0x1f0c5430  {D} 0x1f0c5430  {T} 0x1f0c5430
                                 FORWARD_LINK: {E} 0x1f0b9160  {D} 0x1f0b9160  {T} 0x1f0b9160
                                BACKWARD_LINK: {E} 0x1f394160  {D} 0x1f394160  {T} 0x1f394160
                                 VM_OPERATION: {E} 0x3fd29ebae8  {D} 0  {T} 0
                                           ID: {E} 0x3  {D} 0x3  {T} 0x3
                                    VM_THREAD: {E} 0x3f9a6ee750 Signal Dispatcher[id=3]  {D} 0x3f9a6ee750 Signal Dispatcher[id=3]  {T} 0x3f9a6ee750 Signal Dispatcher[id=3]
                                      JNI_ENV: {E} 0x3fd9208010  {D} 0x3fd9208010  {T} 0x3fd9208010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fb8ee5550  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0x2  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fb8ee7000  {D} 0x3fb8ee7000  {T} 0x3fb8ee7000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fb8de9000  {D} 0x3fb8de9000  {T} 0x3fb8de9000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1f0c5480  {D} 0x1f0c5480  {T} 0x1f0c5480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                                 VMLOG_RECORD: {E} 0x3fc91ea6f8  {D} 0x3fc91ea6f8  {T} 0x3fc91ea6f8
                                 VMLOG_BUFFER: {E} 0  {D} 0  {T} 0
                         VMLOG_BUFFER_OFFSETS: {E} 0  {D} 0  {T} 0
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fc91ea718  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread Reference Handler[id=4] ------
        -> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9dd07a38} [0x3f9dd07a38+1256]
        -> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3f9e5759f8} [0x3f9e5759f8+960]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3f9e40a540} [0x3f9e40a540+704]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9e289960} [0x3f9e289960+684]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9e0e0850} [0x3f9e0e0850+936]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9df89a18} [0x3f9df89a18+160]
        -> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9de174b0} [0x3f9de174b0+120]
        -> java.lang.ref.Reference.tryHandlePending(Z)Z {MaxTargetMethod@0x3f9e0fca88} [0x3f9e0fca88+988]
        -> java.lang.ref.Reference$ReferenceHandler.run()V {MaxTargetMethod@0x3f9df9a8b0} [0x3f9df9a8b0+100]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9dec5010} [0x3f9dec5010+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9dc26938} [0x3f9dc26938+2024]
        -> native{./libjvm.so (0x3fd91ea000) at thread_run (0x3fd91ffabe+408)}
------ Thread locals for thread Reference Handler[id=4] ------
                              SAFEPOINT_LATCH: {E} 0x1f0b8ff8  {D} 0x1f0b92c8  {T} <trigger latch>
                                         ETLA: {E} 0x1f0b9160  {D} 0x1f0b9160  {T} 0x1f0b9160
                                         DTLA: {E} 0x1f0b92c8  {D} 0x1f0b92c8  {T} 0x1f0b92c8
                                         TTLA: {E} 0x1f0b8ff8  {D} 0x1f0b8ff8  {T} 0x1f0b8ff8
                         NATIVE_THREAD_LOCALS: {E} 0x1f0b9430  {D} 0x1f0b9430  {T} 0x1f0b9430
                                 FORWARD_LINK: {E} 0x1f0bf160  {D} 0x1f0bf160  {T} 0x1f0bf160
                                BACKWARD_LINK: {E} 0x1f0c5160  {D} 0x1f0c5160  {T} 0x1f0c5160
                                 VM_OPERATION: {E} 0x3fd29ebae8  {D} 0  {T} 0
                                           ID: {E} 0x4  {D} 0x4  {T} 0x4
                                    VM_THREAD: {E} 0x3f9965d858 Reference Handler[id=4]  {D} 0x3f9965d858 Reference Handler[id=4]  {T} 0x3f9965d858 Reference Handler[id=4]
                                      JNI_ENV: {E} 0x3fd9208010  {D} 0x3fd9208010  {T} 0x3fd9208010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fb90e73b0  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0x2  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fb90e9000  {D} 0x3fb90e9000  {T} 0x3fb90e9000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fb8feb000  {D} 0x3fb8feb000  {T} 0x3fb8feb000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1f0b9480  {D} 0x1f0b9480  {T} 0x1f0b9480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                                 VMLOG_RECORD: {E} 0x3fc91ea750  {D} 0x3fc91ea750  {T} 0x3fc91ea750
                                 VMLOG_BUFFER: {E} 0  {D} 0  {T} 0
                         VMLOG_BUFFER_OFFSETS: {E} 0  {D} 0  {T} 0
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fc91ea770  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread Finalizer[id=5] ------
        -> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9dd07a38} [0x3f9dd07a38+1256]
        -> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3f9e5759f8} [0x3f9e5759f8+960]
        -> com.sun.max.vm.monitor.modal.sync.ProxyAcquirableJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3f9e574fd0} [0x3f9e574fd0+208]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3f9e40a540} [0x3f9e40a540+704]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9e289960} [0x3f9e289960+684]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9e0e0850} [0x3f9e0e0850+936]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9df89a18} [0x3f9df89a18+160]
        -> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9de174b0} [0x3f9de174b0+120]
        -> java.lang.ref.ReferenceQueue.remove(J)Ljava/lang/ref/Reference; {MaxTargetMethod@0x3f9e2ab2b8} [0x3f9e2ab2b8+800]
        -> java.lang.ref.ReferenceQueue.remove()Ljava/lang/ref/Reference; {MaxTargetMethod@0x3f9e0fd168} [0x3f9e0fd168+116]
        -> java.lang.ref.Finalizer$FinalizerThread.run()V {MaxTargetMethod@0x3f9df9ad18} [0x3f9df9ad18+684]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9dec5010} [0x3f9dec5010+268]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9dc26938} [0x3f9dc26938+2024]
        -> native{./libjvm.so (0x3fd91ea000) at thread_run (0x3fd91ffabe+408)}
------ Thread locals for thread Finalizer[id=5] ------
                              SAFEPOINT_LATCH: {E} 0x1f0beff8  {D} 0x1f0bf2c8  {T} <trigger latch>
                                         ETLA: {E} 0x1f0bf160  {D} 0x1f0bf160  {T} 0x1f0bf160
                                         DTLA: {E} 0x1f0bf2c8  {D} 0x1f0bf2c8  {T} 0x1f0bf2c8
                                         TTLA: {E} 0x1f0beff8  {D} 0x1f0beff8  {T} 0x1f0beff8
                         NATIVE_THREAD_LOCALS: {E} 0x1f0bf430  {D} 0x1f0bf430  {T} 0x1f0bf430
                                 FORWARD_LINK: {E} 0x1f0b3160  {D} 0x1f0b3160  {T} 0x1f0b3160
                                BACKWARD_LINK: {E} 0x1f0b9160  {D} 0x1f0b9160  {T} 0x1f0b9160
                                 VM_OPERATION: {E} 0x3fd29ebae8  {D} 0  {T} 0
                                           ID: {E} 0x5  {D} 0x5  {T} 0x5
                                    VM_THREAD: {E} 0x3f993a74a8 Finalizer[id=5]  {D} 0x3f993a74a8 Finalizer[id=5]  {T} 0x3f993a74a8 Finalizer[id=5]
                                      JNI_ENV: {E} 0x3fd9208010  {D} 0x3fd9208010  {T} 0x3fd9208010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fb8fe62f0  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0x2  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fb8fe8000  {D} 0x3fb8fe8000  {T} 0x3fb8fe8000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fb8eea000  {D} 0x3fb8eea000  {T} 0x3fb8eea000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1f0bf480  {D} 0x1f0bf480  {T} 0x1f0bf480
                         STACK_REFERENCE_SIZE: {E} 0x3fc8  {D} 0x3fc8  {T} 0x3fc8
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0  {D} 0  {T} 0
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                     TRACE_UNDER_CONSTRUCTION: {E} 0x3f9bca3760  {D} 0x3f9bca3760  {T} 0x3f9bca3760
                                 VMLOG_RECORD: {E} 0x3fc91ea7a8  {D} 0x3fc91ea7a8  {T} 0x3fc91ea7a8
                                 VMLOG_BUFFER: {E} 0x3f8c000b90  {D} 0x3f8c000b90  {T} 0x3f8c000b90
                         VMLOG_BUFFER_OFFSETS: {E} 0x18  {D} 0x18  {T} 0x18
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fcb19be30  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fcb18f3c8  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fc91ea7c8  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
------ Stack dump for thread main[id=1] ------
        -> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9dd07a38} [0x3f9dd07a38+1256]
        -> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3f9e5759f8} [0x3f9e5759f8+960]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3f9e40a540} [0x3f9e40a540+704]
        -> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9e289960} [0x3f9e289960+684]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9e0e0850} [0x3f9e0e0850+936]
        -> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9df89a18} [0x3f9df89a18+160]
        -> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9de174b0} [0x3f9de174b0+120]
        -> com.sun.max.vm.runtime.VmOperationThread.addOperation(Lcom/sun/max/vm/runtime/VmOperation;Lcom/sun/max/vm/thread/VmThread;Lcom/sun/max/vm/runtime/VmOperationThread;)V {MaxTargetMethod@0x3f9e0bb508} [0x3f9e0bb508+1292]
        -> com.sun.max.vm.runtime.VmOperationThread.submit(Lcom/sun/max/vm/runtime/VmOperation;)V {MaxTargetMethod@0x3f9df6a998} [0x3f9df6a998+1500]
        -> com.sun.max.vm.compiler.deps.ConcreteTypeDependencyProcessor.invalidateDependencies(Ljava/util/ArrayList;Lcom/sun/max/vm/actor/holder/ClassActor;)V {MaxTargetMethod@0x3f9e304bd8} [0x3f9e304bd8+2004]
        -> com.sun.max.vm.compiler.deps.DependenciesManager.addToHierarchy(Lcom/sun/max/vm/actor/holder/ClassActor;)V {MaxTargetMethod@0x3f9e167cc0} [0x3f9e167cc0+388]
        -> com.sun.max.vm.type.ClassRegistry.define0(Lcom/sun/max/vm/actor/holder/ClassActor;)Lcom/sun/max/vm/actor/holder/ClassActor; {MaxTargetMethod@0x3f9e0103a8} [0x3f9e0103a8+1248]
        -> com.sun.max.vm.classfile.ClassfileReader.defineClassActor(Ljava/lang/String;Ljava/lang/ClassLoader;[BIILjava/security/ProtectionDomain;Ljava/lang/Object;Z)Lcom/sun/max/vm/actor/holder/ClassActor; {MaxTargetMethod@0x3f9df64bb8} [0x3f9df64bb8+1808]
        -> com.sun.max.vm.type.BootClassLoader.resolveClassOrNull(Lcom/sun/max/program/Classpath;Ljava/lang/String;)Ljava/lang/Class; {MaxTargetMethod@0x3f9df57f90} [0x3f9df57f90+888]
        -> java.lang.ClassLoader.findBootstrapClass(Ljava/lang/String;)Ljava/lang/Class; {MaxTargetMethod@0x3f9dd1abd0} [0x3f9dd1abd0+316]
        -> java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class; {MaxTargetMethod@0x3f9e04e4f0} [0x3f9e04e4f0+472]
        -> java.lang.ClassLoader.loadClass(Ljava/lang/String;)Ljava/lang/Class; {MaxTargetMethod@0x3f9ded4400} [0x3f9ded4400+116]
        -> java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; {MaxTargetMethod@0x3f9e19a158} [0x3f9e19a158+456]
        -> java.lang.Class.forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class; {MaxTargetMethod@0x3f9e162b40} [0x3f9e162b40+1296]
        -> com.sun.max.vm.type.JavaTypeDescriptor.resolveToJavaClass(Lcom/sun/max/vm/type/Descriptor;Ljava/lang/ClassLoader;)Ljava/lang/Class; {MaxTargetMethod@0x3f9e009858} [0x3f9e009858+1404]
        -> com.sun.max.vm.type.TypeDescriptor.resolveType(Ljava/lang/ClassLoader;)Ljava/lang/Class; {MaxTargetMethod@0x3f9dea8800} [0x3f9dea8800+260]
        -> com.sun.max.vm.classfile.constant.ClassConstant$Unresolved.resolve(Lcom/sun/max/vm/classfile/constant/ConstantPool;I)Lcom/sun/max/vm/actor/holder/ClassActor; {MaxTargetMethod@0x3f9dea9208} [0x3f9dea9208+124]
        -> com.sun.max.vm.runtime.Snippets.resolveClassForNew0(Lcom/sun/max/vm/runtime/ResolutionGuard;)V {MaxTargetMethod@0x3f9dc15b70} [0x3f9dc15b70+1288]
        -> sun.security.jca.ProviderList.<clinit>()V {T1XTargetMethod@0x3f9fcb26c8} [0x3f9fcb26c8+3440]
        -> $INVOKE_STUB$.sun_security_jca_ProviderList$clinit$291.invoke([Lcom/sun/max/vm/value/Value;)Lcom/sun/max/vm/value/Value; {T1XTargetMethod@0x3f9fcb0e00} [0x3f9fcb0e00+2460]
        -> OPT2BASELINE-Adapter(RR) {RISCV64AdapterGenerator$Opt2Baseline$Opt2BaselineAdapter@0x3faf0d7018} [0x3faf0d7018+24]
        -> com.sun.max.vm.actor.member.MethodActor.invoke([Lcom/sun/max/vm/value/Value;)Lcom/sun/max/vm/value/Value; {MaxTargetMethod@0x3f9e023fa8} [0x3f9e023fa8+120]
        -> com.sun.max.vm.actor.holder.ClassActor.callInitializer()V {MaxTargetMethod@0x3f9deb86b0} [0x3f9deb86b0+364]
        -> com.sun.max.vm.actor.holder.ClassActor.makeInitialized()V {MaxTargetMethod@0x3f9dc14350} [0x3f9dc14350+228]
        -> com.oracle.max.vm.ext.t1x.T1XTemplateSource.resolveAndGetStaticReference(Lcom/sun/max/vm/runtime/ResolutionGuard$InPool;)Lcom/sun/max/vm/reference/Reference; {MaxTargetMethod@0x3f9dc140d8} [0x3f9dc140d8+164]
        -> sun.security.jca.Providers.<clinit>()V {T1XTargetMethod@0x3f9fcaf400} [0x3f9fcaf400+792]
        -> $INVOKE_STUB$.sun_security_jca_Providers$clinit$290.invoke([Lcom/sun/max/vm/value/Value;)Lcom/sun/max/vm/value/Value; {T1XTargetMethod@0x3f9fcadb88} [0x3f9fcadb88+2460]
        -> OPT2BASELINE-Adapter(RR) {RISCV64AdapterGenerator$Opt2Baseline$Opt2BaselineAdapter@0x3faf0d7018} [0x3faf0d7018+24]
        -> com.sun.max.vm.actor.member.MethodActor.invoke([Lcom/sun/max/vm/value/Value;)Lcom/sun/max/vm/value/Value; {MaxTargetMethod@0x3f9e023fa8} [0x3f9e023fa8+120]
        -> com.sun.max.vm.actor.holder.ClassActor.callInitializer()V {MaxTargetMethod@0x3f9deb86b0} [0x3f9deb86b0+364]
        -> com.sun.max.vm.actor.holder.ClassActor.makeInitialized()V {MaxTargetMethod@0x3f9dc14350} [0x3f9dc14350+228]
        -> sun.security.jca.GetInstance.getInstance(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;)Lsun/security/jca/GetInstance$Instance; {T1XTargetMethod@0x3f9fcabe90} [0x3f9fcabe90+360]
        -> java.security.Security.getImpl(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/Object; {T1XTargetMethod@0x3f9fcaa498} [0x3f9fcaa498+676]
        -> java.security.MessageDigest.getInstance(Ljava/lang/String;)Ljava/security/MessageDigest; {T1XTargetMethod@0x3f9fca7bd8} [0x3f9fca7bd8+916]
        -> org.dacapo.harness.Digest.create()Ljava/security/MessageDigest; {T1XTargetMethod@0x3f9fca5370} [0x3f9fca5370+576]
        -> org.dacapo.harness.FileDigest.getText(Ljava/io/File;ZLjava/io/File;)[B {T1XTargetMethod@0x3f9fca3e60} [0x3f9fca3e60+552]
        -> org.dacapo.harness.FileDigest.get(Ljava/lang/String;ZZLjava/io/File;)[B {T1XTargetMethod@0x3f9fca31f0} [0x3f9fca31f0+816]
        -> org.dacapo.harness.Benchmark.validate(Ljava/lang/String;)Z {T1XTargetMethod@0x3f9fc9a080} [0x3f9fc9a080+6584]
        -> org.dacapo.harness.Benchmark.run(Lorg/dacapo/harness/Callback;Ljava/lang/String;)Z {T1XTargetMethod@0x3f9f9a6dc0} [0x3f9f9a6dc0+3556]
        -> org.dacapo.harness.TestHarness.runBenchmark(Ljava/io/File;Ljava/lang/String;Lorg/dacapo/harness/TestHarness;)V {T1XTargetMethod@0x3f9f42fbf0} [0x3f9f42fbf0+7184]
        -> org.dacapo.harness.TestHarness.main([Ljava/lang/String;)V {T1XTargetMethod@0x3f9f373078} [0x3f9f373078+20600]
        -> $INVOKE_STUB$.org_dacapo_harness_TestHarness$main$135.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; {T1XTargetMethod@0x3f9f3711a0} [0x3f9f3711a0+3228]
        -> OPT2BASELINE-Adapter(RRR) {RISCV64AdapterGenerator$Opt2Baseline$Opt2BaselineAdapter@0x3faf0d7058} [0x3faf0d7058+28]
        -> java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; {MaxTargetMethod@0x3f9de00de0} [0x3f9de00de0+540]
        -> BASELINE2OPT-Adapter(RRR) {RISCV64AdapterGenerator$Baseline2Opt$Baseline2OptAdapter@0x3f9dc14f78} [0x3f9dc14f78+32]
        -> Harness.main([Ljava/lang/String;)V {T1XTargetMethod@0x3f9f368080} [0x3f9f368080+3728]
        -> $INVOKE_STUB$.Harness$main$133.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; {T1XTargetMethod@0x3f9f366530} [0x3f9f366530+3228]
        -> OPT2BASELINE-Adapter(RRR) {RISCV64AdapterGenerator$Opt2Baseline$Opt2BaselineAdapter@0x3faf0d7058} [0x3faf0d7058+28]
        -> java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; {MaxTargetMethod@0x3f9de00de0} [0x3f9de00de0+540]
        -> com.sun.max.vm.run.java.JavaRunScheme.lookupAndInvokeMain(Ljava/lang/Class;)V {MaxTargetMethod@0x3f9ded0720} [0x3f9ded0720+1084]
        -> com.sun.max.vm.run.java.JavaRunScheme.run()V {MaxTargetMethod@0x3f9dc2a398} [0x3f9dc2a398+1352]
        -> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9dec5010} [0x3f9dec5010+192]
        -> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9dc26938} [0x3f9dc26938+2024]
        -> native{./libjvm.so (0x3fd91ea000) at thread_run (0x3fd91ffabe+408)}
------ Thread locals for thread main[id=1] ------
                              SAFEPOINT_LATCH: {E} 0x1f08fff8  {D} 0x1f0902c8  {T} <trigger latch>
                                         ETLA: {E} 0x1f090160  {D} 0x1f090160  {T} 0x1f090160
                                         DTLA: {E} 0x1f0902c8  {D} 0x1f0902c8  {T} 0x1f0902c8
                                         TTLA: {E} 0x1f08fff8  {D} 0x1f08fff8  {T} 0x1f08fff8
                         NATIVE_THREAD_LOCALS: {E} 0x1f090430  {D} 0x1f090430  {T} 0x1f090430
                                 FORWARD_LINK: {E} 0  {D} 0  {T} 0
                                BACKWARD_LINK: {E} 0x1f0b3160  {D} 0x1f0b3160  {T} 0x1f0b3160
                                 VM_OPERATION: {E} 0x3fd29ebae8  {D} 0  {T} 0
                                           ID: {E} 0x1  {D} 0x1  {T} 0x1
                                    VM_THREAD: {E} 0x3f9a9f7160 main[id=1]  {D} 0x3f9a9f7160 main[id=1]  {T} 0x3f9a9f7160 main[id=1]
                                      JNI_ENV: {E} 0x3fd9208010  {D} 0x3fd9208010  {T} 0x3fd9208010
                       LAST_JAVA_FRAME_ANCHOR: {E} 0x3fffeddf10  {D} 0  {T} 0
                                MUTATOR_STATE: {E} 0x2  {D} 0  {T} 0
                                       FROZEN: {E} 0  {D} 0  {T} 0
                                  TRAP_NUMBER: {E} 0  {D} 0  {T} 0
                     TRAP_INSTRUCTION_POINTER: {E} 0  {D} 0  {T} 0
                           TRAP_FAULT_ADDRESS: {E} 0  {D} 0  {T} 0
                          TRAP_LATCH_REGISTER: {E} 0  {D} 0  {T} 0
                   HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fffee1000  {D} 0x3fffee1000  {T} 0x3fffee1000
                    LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fff6e3000  {D} 0x3fff6e3000  {T} 0x3fff6e3000
             LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0  {D} 0  {T} 0
                          STACK_REFERENCE_MAP: {E} 0x1f090480  {D} 0x1f090480  {T} 0x1f090480
                         STACK_REFERENCE_SIZE: {E} 0x20008  {D} 0x20008  {T} 0x20008
                    CUSTOM_ALLOCATION_ENABLED: {E} 0  {D} 0  {T} 0
                                      SUSPEND: {E} 0  {D} 0  {T} 0
                               PROFILER_STATE: {E} 0  {D} 0  {T} 0
                                        JVMTI: {E} 0  {D} 0  {T} 0
                                     JVMTI_TL: {E} 0  {D} 0  {T} 0
                                  COMPILATION: {E} 0  {D} 0  {T} 0
                        NATIVE_CALLS_DISABLED: {E} 0  {D} 0  {T} 0
                               ERROR_CONTEXTS: {E} 0x3fc91ea868  {D} 0x3fc91ea868  {T} 0x3fc91ea868
                     TRACE_UNDER_CONSTRUCTION: {E} 0  {D} 0  {T} 0
                                 VMLOG_RECORD: {E} 0x3f9da23c18  {D} 0x3f9da23c18  {T} 0x3f9da23c18
                                 VMLOG_BUFFER: {E} 0x3f9c0b0ce8  {D} 0x3f9c0b0ce8  {T} 0x3f9c0b0ce8
                         VMLOG_BUFFER_OFFSETS: {E} 0x8a0  {D} 0x8a0  {T} 0x8a0
                           GC_DISABLING_COUNT: {E} 0  {D} 0  {T} 0
                                     TLAB_TOP: {E} 0x3fd29f1000  {D} 0  {T} 0
                                    TLAB_MARK: {E} 0x3fd29ebc10  {D} 0  {T} 0
                                 TLAB_TOP_TMP: {E} 0  {D} 0  {T} 0
                                TLAB_MARK_TMP: {E} 0  {D} 0  {T} 0
                           ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0
                                TLAB_DISABLED: {E} 0  {D} 0  {T} 0
                           TLAB_REFILL_POLICY: {E} 0x3fc91ea890  {D} 0  {T} 0
                                TLAB_LOG_TAIL: {E} 0  {D} 0  {T} 0
                  SAMPLING_ALLOCATION_COUNTER: {E} 0  {D} 0  {T} 0

DingliZhang avatar Sep 17 '20 02:09 DingliZhang

I would suggest yes to change it, regarding cross compilation I am not sure we have tested it, @gigiblender do you remember?

kotselidis avatar Sep 17 '20 07:09 kotselidis

Hi @zdlgv5, you don't need to cross-compile the JDK. Fedora comes with 8u212 in its repositories and this should work with maxine.

See http://fedora.riscv.rocks/koji/buildinfo?buildID=87633

https://github.com/beehive-lab/Maxine-VM-internal/blob/develop/docs/Status.rst looks wrong to me, it should say 212 for RISC-V not 222.

zakkak avatar Sep 17 '20 10:09 zakkak

Oh sorry, I think I miss-read your comment, it looks like you are cross-compiling the image not the JDK itself. This should work @kotselidis, see https://github.com/beehive-lab/Maxine-VM-internal/blob/develop/docs/Working-with-RISCV-on-QEMU.rst#building-maxine-vm-for-risc-v.

zakkak avatar Sep 17 '20 10:09 zakkak

@zdlgv5 I would use https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/tag/jdk8u212-b04 instead of jdk8u222 to make sure the versions match.

Direct link: https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u212-b04/OpenJDK8U-jdk_x64_linux_hotspot_8u212b04.tar.gz

zakkak avatar Sep 17 '20 10:09 zakkak

@zakkak thank you for reply! I had followed your suggestion and change the JDK version on host to 8u212 before mx image -platform linux-riscv64 with https://maxine-vm.readthedocs.io/en/latest/Working-with-RISCV-on-QEMU.html#building-maxine-vm-for-risc-v but ./maxvm -jar /root/dacapo-9.12-MR1-bach.jar -t 1 xalan does not work yet. Error is the same as https://github.com/beehive-lab/Maxine-VM/issues/23#issuecomment-693774296. Do you have a built RISC-V compatible Maxine VM image ? I am doing a baseline test eternal balance project within popular JVM, thanks a lot!

DingliZhang avatar Sep 18 '20 07:09 DingliZhang

No unfortunately I don't. Maybe @gigiblender, @bakaliosdim, or @evankar can help you here. Does any of you remember if xalan was functional? According to https://github.com/beehive-lab/Maxine-VM/blob/develop/docs/Status.rst#dacapo-912-bach-mr1 it was, but I recall @bakaliosdim and @evankar reporting some differences between their results and what's listed in https://github.com/beehive-lab/Maxine-VM/blob/develop/docs/Status.rst#dacapo-912-bach-mr1

zakkak avatar Sep 18 '20 08:09 zakkak

@zakkak I think xalan was running fine when I tested it. If @bakaliosdim or @evankar still have the different results on SpecJVM or DaCapo, I am happy to update the status page with those. If not, then I can run the benchmarks and get the results again

gigiblender avatar Sep 18 '20 08:09 gigiblender

I had tested all DaCapo RISCV64-test listed on https://github.com/beehive-lab/Maxine-VM/blob/develop/docs/Status.rst#dacapo-912-bach-mr1 and have the different results on

Here is my image: https://github.com/zdlgv5/Maxine-VM_RISCV64_Dacapo_Test/blob/master/com.oracle.max.vm.native.zip, which followed the instructions in Build and Usage Instructions and Running Maxine VM on the Fedora RISC-V VM

DingliZhang avatar Sep 22 '20 08:09 DingliZhang

It looks like it is always failing in the deoptimization phase which is something that could be caused by https://github.com/beehive-lab/Maxine-VM/pull/19 (one would need to test with maxine before https://github.com/beehive-lab/Maxine-VM/pull/19 to verify though)

zakkak avatar Sep 23 '20 11:09 zakkak

@zdlgv5 I just ran the tests again and for me

  • lusearch

  • lusearch-fix are working but i have problem with

  • fop

  • jython

  • pmd

  • sunflow

  • xalan

Can you run again the test so we can see if they behave the same?

bakaliosdim avatar Sep 23 '20 16:09 bakaliosdim

@bakaliosdim Oh sorry , I think that I forgot to point out that I add -s small when I test before.

I just ran again with no param e.g. ./maxvm -jar dacapo-9.12-MR1-bach.jar sunflow and with -s small e.g. ./maxvm -jar dacapo-9.12-MR1-bach.jar sunflow -s small at the same time.

The results are below:

Benchmark No param With '-s small'
lusearch FAIL FAIL
lusearch-fix FAIL FAIL
fop FAIL FAIL
jython FAIL PASS
pmd FAIL PASS
sunflow PASS PASS
xalan FAIL FAIL

The result of sunflow:

[root@fedora-riscv linux]# ./maxvm -jar dacapo-9.12-MR1-bach.jar sunflow
Using scaled threading model. 4 processors detected, 4 threads used to drive the workload, in a possible range of [1,256]
===== DaCapo 9.12-MR1 sunflow starting =====
===== DaCapo 9.12-MR1 sunflow PASSED in 193447 msec =====

Qemu start script:

/usr/local/bin/qemu-system-riscv64 \
    -nographic \
    -machine virt \
    -smp 4 \
    -m 4G \
    -kernel Fedora-Minimal-Rawhide-20200108.n.0-fw_payload-uboot-qemu-virt-smode.elf \
    -object rng-random,filename=/dev/urandom,id=rng0 \
    -device virtio-rng-device,rng=rng0 \
    -append "console=ttyS0 ro root=/dev/vda" \
    -device virtio-blk-device,drive=hd0 \
    -drive file=Fedora-Minimal-Rawhide-20200108.n.0-sda.raw,format=raw,id=hd0 \
    -device virtio-net-device,netdev=usernet \
    -netdev user,id=usernet,hostfwd=tcp::10000-:22

Fedora info:

[root@fedora-riscv linux]# uname -a
Linux fedora-riscv 5.5.0-0.rc5.git0.1.1.riscv64.fc32.riscv64 #1 SMP Mon Jan 6 17:31:22 UTC 2020 riscv64 riscv64 riscv64 GNU/Linux
[root@fedora-riscv linux]# java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Zero VM (build 25.212-b04, interpreted mode)

Host Ubuntu info:

linux@linux-virtual-machine:~$ java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.212-b04, mixed mode)
linux@linux-virtual-machine:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 16.04.7 LTS
Release:	16.04
Codename:	xenial

DingliZhang avatar Sep 24 '20 03:09 DingliZhang

I suggest adding -t 1 as well, since the reported numbers were tested on single threaded code only (and that is what is supported for now).

zakkak avatar Sep 24 '20 11:09 zakkak

It looks like it is always failing in the deoptimization phase which is something that could be caused by #19 (one would need to test with maxine before #19 to verify though)

I ran the benchmarks again (on a dual core setup in Qemu but in single threaded mode for the benchmarks) before and after #19 and obtained the results below. I will list only the failures:

Before the trampolines patch #19 (0ab47933c593d7ae0a4c68fa9f5a5d40462149d3) : DaCapo:

  • pmd
  • h2
  • batik
  • eclipse
  • tomcat
  • tradebeans
  • tradesoap

SpecJVM2008:

  • startup.compiler.sunflow
  • startup.compiler.compiler
  • startup.mpegaudio
  • compiler.compiler
  • compiler.sunflow
  • mpegaudio

After the trampolines, current develop (e213a842f78983e2ba112ae46de8c64317bc206e) : DaCapo:

  • fop
  • jython
  • pmd
  • xalan
  • h2
  • batik
  • eclipse
  • tomcat
  • tradebeans
  • tradesoap

SpecJVM2008:

  • startup.xml.transform
  • startup.xml.validation
  • derby
  • xml.transform
  • xml.validation
  • startup.compiler.sunflow
  • startup.compiler.compiler
  • startup.mpegaudio
  • compiler.compiler
  • compiler.sunflow
  • mpegaudio

As @zakkak mentioned, most of the regressed benchmarks fail in the deoptimization phase and others bailout due to the method body being larger than 1 MB

gigiblender avatar Sep 30 '20 20:09 gigiblender

Nice digging @gigiblender , so it looks like someone needs to fix deopt and possibly the 1MB bailout or we should beter revert #19 and keep in the backlog.

zakkak avatar Sep 30 '20 21:09 zakkak