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

Jorn Vernee jvernee at openjdk.org
Tue Nov 22 01:29:59 UTC 2022


On Fri, 18 Nov 2022 14:54:52 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:
> 
>   8296973: saving errno on a value-returning function crashes the JVM
>   
>   Reviewed-by: mcimadamore

Thanks for the review, I've dropped the `.inline` from the header file names.

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

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


More information about the hotspot-dev mailing list