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

[JVMCI] iterateFrames uses wrong GrowableArray API for appending

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 11, 12
    • Fix Version/s: 12
    • Component/s: hotspot
    • Subcomponent:
    • Resolved In Build:
      b10

      Description

      In a rarely taken path, JVMCI was using the wrong API to append an element to a GrowableArray. This results in an assertion failing in a fastdebug VM:

      # Internal Error (/Users/graal/slave/e/main/graal-jvmci-8/src/share/vm/utilities/growableArray.hpp:265), pid=35423, tid=0x000000000000a903
      # assert(0 <= i && i < _len) failed: illegal index

      V [libjvm.dylib+0x939a17] VMError::report_and_die()+0x3df
      V [libjvm.dylib+0x30efce] report_vm_error(char const*, int, char const*, char const*)+0x63
      V [libjvm.dylib+0x5d06c3] GrowableArray<ScopeValue*>::at_put(int, ScopeValue* const&)+0x3b
      V [libjvm.dylib+0x5cf6c8] c2v_iterateFrames(JNIEnv_*, _jobject*, _jobjectArray*, _jobjectArray*, int, _jobject*)+0x9ea
      J 11245 jdk.vm.ci.hotspot.CompilerToVM.iterateFrames([Ljdk/vm/ci/meta/ResolvedJavaMethod;

       The attached JDK-8206947.patch file clearly shows the problem and fix.

        Attachments

          Activity

            People

            Assignee:
            dnsimon Douglas Simon
            Reporter:
            dnsimon Douglas Simon
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: