RFR: 8296477: Foreign linker implementation update following JEP 434 [v3]

Jorn Vernee jvernee at openjdk.org
Thu Nov 10 15:28:20 UTC 2022


> Pull in linker implementation changes, that include non-trivial changes to VM code, from the panama-foreign repo into the main JDK.
> 
> This is split off from the main JEP integration to make reviewing easier.
> 
> This includes the following patches:
> 
> 1. https://github.com/openjdk/panama-foreign/pull/698
> 2. https://github.com/openjdk/panama-foreign/pull/699
> 3. (part of) https://github.com/openjdk/panama-foreign/pull/731
> 4. https://github.com/openjdk/panama-foreign/pull/740
> 5. https://github.com/openjdk/panama-foreign/pull/746
> 6. https://github.com/openjdk/panama-foreign/pull/742
> 7. https://github.com/openjdk/panama-foreign/pull/743
> 
> Probably the biggest change to the code comes from replacing `VMReg` - which can not represent offsets into the stack that are not a multiple of the VM's stack slot size (32-bits) - with the new `VMStorage` class, which can describe byte offsets into the stack, as well as having a register mask to indicate only certain register segments.
> 
> The only part of 3. that is in this PR is the part that turns the `VMStorage` class in Java into a record.
> 
> Please refer to the PR of each individual patch for a more detailed description.

Jorn Vernee has updated the pull request incrementally with one additional commit since the last revision:

  Javadoc nits
  
  Co-authored-by: Maurizio Cimadamore <54672762+mcimadamore at users.noreply.github.com>

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/11019/files
  - new: https://git.openjdk.org/jdk/pull/11019/files/9e13922d..eb38b596

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=11019&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=11019&range=01-02

  Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/11019.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11019/head:pull/11019

PR: https://git.openjdk.org/jdk/pull/11019


More information about the hotspot-dev mailing list