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

[lworld] Improve accessing a flattened value type array passed as Object[]

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P2
    • Resolution: Fixed
    • Affects Version/s: repo-valhalla
    • Fix Version/s: repo-valhalla
    • Component/s: hotspot
    • Labels:

      Description

      When reading an element from an Object array, we need to emit a guard to check if the array is a flattened value type array (see GraphKit::gen_flattened_array_guard()). If that's the case, we cannot read an oop but deoptimize. We should implement a runtime call (or a stub) that reads the flattened element, allocates a buffered value type and returns the oop.

      The same optimization should be implemented for storing a value type oop to a flattened value type array that is being passed as Object[]. Currently, we add a guard in GraphKit::gen_value_type_array_guard(..) but we should call into the runtime (or a stub) to write the flattened element.

      See also:
      http://mail.openjdk.java.net/pipermail/valhalla-dev/2018-June/004444.html

        Attachments

          Activity

            People

            • Assignee:
              roland Roland Westrelin
              Reporter:
              thartmann Tobias Hartmann
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: