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

Jorn Vernee jvernee at openjdk.org
Fri Nov 18 14:54:54 UTC 2022


On Wed, 16 Nov 2022 17:04:03 GMT, Jorn Vernee <jvernee at openjdk.org> wrote:

>> 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:
> 
>   fix stubs

I've added one more bug fix to this pull request, which fixes a crash when using `CaptureCallState`. See the original PR: https://github.com/openjdk/panama-foreign/pull/753

See also the commit for a concise diff of the changes: https://github.com/openjdk/jdk/pull/11019/commits/0fa0e8cff14bd1f4978f4b28c5c3ddceda302d20

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

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


More information about the hotspot-dev mailing list