[9] RFR (M): 8050057: Improve caching of MethodHandle reinvokers
MacGregor, Duncan (GE Energy Management)
duncan.macgregor at ge.com
Tue Jul 15 10:09:24 UTC 2014
Scratch that, found it.
http://cr.openjdk.java.net/~vlivanov/8050052/webrev.00 +
http://cr.openjdk.java.net/~vlivanov/8050052/prepared_forms/ !=
http://cr.openjdk.java.net/~vlivanov/8050052//webrev.01/
Duncan.
On 15/07/2014 10:58, "MacGregor, Duncan (GE Energy Management)"
<duncan.macgregor at ge.com> wrote:
>I may be slightly confused as to the order in which these patches are
>expected to be applied & merged but there seems to be some considerable
>interaction.
>
>Which patch set is meant to remove the final attribute from
>BoundMethodHandle.internalProperties()? I can¹t find it in any of the ones
>you¹ve submitted.
>
>Duncan.
>
>On 14/07/2014 16:17, "Vladimir Ivanov" <vladimir.x.ivanov at oracle.com>
>wrote:
>
>>http://cr.openjdk.java.net/~vlivanov/8050057/webrev.00/
>>https://bugs.openjdk.java.net/browse/JDK-8050057
>>
>>Cache MethodHandle reinvokers per basic type.
>>For BoundMethodHandles, rebinding is no-op unless underlying LF is too
>>complex (see BMH::tooComplex() for details).
>>
>>Also, introduced DelegatingMethodHandle whose invocation behavior is
>>determined by a target MethodHandle. The delegating MH itself can hold
>>extra "intentions" beyond the simple behavior.
>>
>>AsVarargsCollector and WrappedMember are made subclasses of
>>DelegatingMethodHandle. Also, SimpleMethodHandle extends
>>BoundMethodHandle now.
>>
>>Rebinding and delegation share same logic and LF shape, but have
>>different caches (LF_REBIND vs LF_DELEGATE). The only difference is
>>their name. They could be consolidated in the future.
>>
>>Testing: jdk/java/lang/invoke, jdk/java/util/streams, nashorn, octane w/
>>"-ea -esa" and COMPILE_THRESHOLD={0,30}.
>>
>>Reviewed-by: vlivanov, ?
>>Contributed-by: john.r.rose at oracle.com
>>
>>Thanks!
>>
>>Best regards,
>>Vladimir Ivanov
>>_______________________________________________
>>mlvm-dev mailing list
>>mlvm-dev at openjdk.java.net
>>http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
>
>_______________________________________________
>mlvm-dev mailing list
>mlvm-dev at openjdk.java.net
>http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
More information about the mlvm-dev
mailing list