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

[lworld] Preparing code for lw5

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • repo-valhalla
    • repo-valhalla
    • hotspot

      A number of improvements can be done to prepare the transition to the next model of value types.

      Q-descriptors are likely to be removed, the VM can already be prepared to be less dependent on Q-descriptors, encoding the presence of null-free inline types fields with a bit FieldInfo, and removing all explicit check on a Q-signature except during class loading.

      Another clean up is related to the naming convention for fields and arrays with a flat layout. Naming has been inconsistent across the VM: inlined, flattened, flat are used interchangeably all over the code. After some discussions, the consensus seems to be the following:
         - "inline type" is used to speak about the new immutable identity-less objects (it includes both B2s and B3s from the language models)
         - "flat field" / "flat array" is used to described fields and arrays with a flat layout (it has been preferred over "flattened" because "flat array" clearly indicates the kind of the array while "flattened array" suggests that an operation or transformation has been applied to the array)
         - "inlined" is reserved for code inlining (not layout inlining)

            fparain Frederic Parain
            fparain Frederic Parain
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: