Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8209414

AArch64: method handle invocation does not respect JVMTI interp_only mode

    XMLWordPrintable

Details

    • svc
    • b27
    • aarch64
    • linux

    Backports

      Description

        2 test cases of Java debug interface related failed on some AArch64 machines

        vmTestbase/vm/mlvm/indy/stress/jdi/breakpointInCompiledCode/Test.java
        vmTestbase/vm/mlvm/meth/func/jdi/breakpoint/Test.java

        When the interpreter dispatches a method, it should check the JavaThread::interp_only_mode_offset() field in the thread structure, and if it's non-zero call the interpreted entry point even if a compiled entry exists. When we use a java.lang.invoke.MethodHandle to invoke a method, the method dispatch is instead handled by a special intrinsic that's implemented in methodHandles_aarch64.cpp. This eventually calls MethodHandles::jump_from_method_handle which checks the JVMTI interp_mode_only flag. But the test is incorrect.

        Attachments

          Issue Links

            Activity

              People

                njian Ningsheng Jian
                yzhang Yang Zhang
                Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: