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

ARM32: Interpreter doesn't call result handler after native calls

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 8, 9, 10, 11, 12
    • Fix Version/s: 12
    • Component/s: hotspot
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b22
    • CPU:
      arm
    • OS:
      generic

      Description

      ARM32 interpreter and C1 doesn't use JNI call result handers properly since "returned value is already in appropriate format" (templateInterpreterGenerator_arm.cpp:32) . Now (since JDK-8209637) we have JNIBooleanTest.java test that shows the approach is not correct: the JNI call jboolean return value >1 makes a mess in further java execution.

      JTwork/runtime/BoolReturn/JNIBooleanTest.jtr:
      ----------System.err:(13/852)----------
      java.lang.RuntimeException: Error: bar(2) = false in iteration 2
              at JNIBooleanTest.main(JNIBooleanTest.java:61)

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                bulasevich Boris Ulasevich
                Reporter:
                bulasevich Boris Ulasevich
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: