RFR: 8305093: Linker cache should not take layout names into account [v2]

Andrey Turbanov aturbanov at openjdk.org
Thu Apr 27 12:28:53 UTC 2023


On Fri, 21 Apr 2023 01:03:57 GMT, Jorn Vernee <jvernee at openjdk.org> wrote:

>> Strip names from the function descriptors used in linkage requests. The names are not important for classification, and this will allow the cached MethodHandle/UpcallStubFactory to be shared across linkage request with the same structure, but with layouts that have different names.
>> 
>> I also have another implementation that avoids copying all the layouts, and instead re-implemented equals and hashCode in the LinkRequest wrapper: https://github.com/openjdk/jdk/compare/pr/13079...JornVernee:jdk:NoNameCache But, this seems too complex. Linking code is not very performance sensitive, so I instead went with a simpler approach in this patch.
>
> Jorn Vernee has updated the pull request incrementally with one additional commit since the last revision:
> 
>   use al instead of ValueLayout.ADDRESS

test/jdk/java/foreign/TestByteBuffer.java line 335:

> 333:                     assertEquals(byteBuffer.isReadOnly(), segment.isReadOnly());
> 334:                     assertTrue(byteBuffer.isDirect());
> 335:                 } catch(IOException e) {

nit
Suggestion:

                } catch (IOException e) {

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

PR Review Comment: https://git.openjdk.org/jdk/pull/13562#discussion_r1179059493


More information about the core-libs-dev mailing list