Integrated: 8338906: Avoid passing EnumDescs and extra classes to type switch methods that don't use them

Claes Redestad redestad at openjdk.org
Mon Aug 26 16:01:10 UTC 2024


On Fri, 23 Aug 2024 12:34:17 GMT, Claes Redestad <redestad at openjdk.org> wrote:

> This PR refactors SwitchBootstraps so that extra EnumDescs and classes are only passed into bootstraps when needed. Benchmarking shows that in many cases these are not needed, and avoiding passing them (via binding in the lists via `MethodHandle::insertArguments`) avoids some auxiliary MH combinator generation during bootstrap. 
> 
> Additional cleanups and refactoring further reduce bootstrap overhead and number of classes loaded.

This pull request has now been integrated.

Changeset: 3f00da84
Author:    Claes Redestad <redestad at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/3f00da84b3e6fb001e7d56acb198292b28d40c8b
Stats:     95 lines in 1 file changed: 44 ins; 10 del; 41 mod

8338906: Avoid passing EnumDescs and extra classes to type switch methods that don't use them

Reviewed-by: liach, jlahoda

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

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


More information about the core-libs-dev mailing list