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

Jorn Vernee jvernee at openjdk.org
Mon Dec 5 14:43:06 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 with a new target base due to a merge or a rebase. The pull request now contains 98 commits:

 - Merge master
 - Merge branch 'PR_20' into VM_Changes
 - Fix Preview annotation for JEP 434
 - Merge branch 'PR_20' into VM_Changes
 - Merge branch 'master' into PR_20
 - Address review comments
 - Address review comments
 - Merge branch 'PR_20' into VM_Changes
 - Merge branch 'master' into PR_20
 - Address review comment
 - ... and 88 more: https://git.openjdk.org/jdk/compare/73baadce...c153ffff

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

Changes: https://git.openjdk.org/jdk/pull/11019/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=11019&range=11
  Stats: 2909 lines in 73 files changed: 1974 ins; 318 del; 617 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