RFR: 8286669: Replace MethodHandle specialization with ASM in mainline [v4]

Jorn Vernee jvernee at openjdk.java.net
Tue May 17 16:22:15 UTC 2022


> Hi,
> 
> This PR brings over commits from the panama-foreign repo. These commits mostly pertain to the switch to ASM and away from MethodHandle combinators for the binding recipe specialization. But, there is one more commit which adds freeing of downcall stubs, since those changes were mostly Java as well.
> 
> Thanks,
> Jorn
> 
> Testing: `run-test-jdk_foreign` with `-Dgenerator.sample.factor=-1` on Windows and Linux.

Jorn Vernee has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 10 commits:

 - Merge branch 'pr/7959' into JEP-19-ASM
 - BootstrapMethodError -> ExceptionInInitializerError
 - Use unaligned layout constants when filling in reconstituted structs (was accidentally dropped change)
 - Fix LinkUpcall benchmark
 - 8286306: Upcall wrapper class sharing
   
   Reviewed-by: mcimadamore
 - Polish
 - 8281595: ASM-ify scope acquire/release for down call parameters
   8281387: Some downcall shapes show unexpected allocations
   
   Co-authored-by: Maurizio Cimadamore <mcimadamore at openjdk.org>
   Reviewed-by: mcimadamore
 - 8281228: Preview branch's CLinker.downcallHandle crashes inside asm
   
   Reviewed-by: sundar, jvernee
 - 8278414: Replace binding recipe customization using MH combinators with bytecode spinning
   
   Reviewed-by: mcimadamore
 - 8276648: Downcall stubs are never freed
   
   Reviewed-by: mcimadamore

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

Changes: https://git.openjdk.java.net/jdk/pull/8685/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8685&range=03
  Stats: 2182 lines in 24 files changed: 1396 ins; 660 del; 126 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8685.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8685/head:pull/8685

PR: https://git.openjdk.java.net/jdk/pull/8685


More information about the core-libs-dev mailing list