Assimilate Deoptimization::reassign_type_array_elements and reassign_fields_by_klass

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Unresolved
    • Priority: P4
    • tbd
    • Affects Version/s: 22
    • Component/s: hotspot

      (This was discussed in https://github.com/openjdk/jdk/pull/14976)

      `case T_INT: case T_FLOAT` are handled differently in Deoptimization::reassign_type_array_elements and in reassign_fields_by_klass.
      It should be investigated if reassign_type_array_elements can be simplified and assimilated to reassign_fields_by_klass.

      More specifically: is it possible to combine the 2 stores with the complex casts at

      https://github.com/openjdk/jdk/blob/8008e27c55030b397e2040bc3cf8408e47edf412/src/hotspot/share/runtime/deoptimization.cpp#L1383-L1384

      into one store `obj->long_field_put(offset, res)` like here

      https://github.com/openjdk/jdk/blob/2bdfa836adbeba3319bee4ee61017907d6d84d58/src/hotspot/share/runtime/deoptimization.cpp#L1528

      Note: that store is reached by falling through from `case T_INT: case T_FLOAT`

            Assignee:
            Unassigned
            Reporter:
            Richard Reingruber
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: