jlink: pre-generate lambda classes
Dan Heidinga
heidinga at redhat.com
Thu Jul 27 14:34:23 UTC 2023
With Mark's announcement that the leyden repo is now open, I'd like to
refresh this request to push the experimental jlink plugin to pregenerate
lambda classes to the the repo.
> If you’d like to create a new branch for collaborative prototyping work,
> please send a short note to this list describing its name and intended
> content.
Suggested branch name: pregenerate-lambdas
Purpose: Share the jlink plugin and jdk changes required to pregenerate
lambda classes during jlink. This branch would be an initial example of
how to address some of the issues (like nestmates) when timeshifting code
generation from runtime to jlink time. It's also a good starting point for
further collaboration on how to best address Serializable lambdas and any
other areas (Stacktrace differences,....) that may be exposed related to
timeshifting code generation.
--Dan
On Mon, Jun 26, 2023 at 11:18 AM Dan Heidinga <heidinga at redhat.com> wrote:
> I've updated my jlink patch to pregenerate lambda classes [0] so it works
> with the current Leyden repo and the updated classfile api (which is
> awesome - check it out if you haven't yet!). Previously discussed in the
> "Bytecode transformation investigation" thread [1].
>
> I'd like to push it to an experimental branch here on the leyden repo so
> that others can freely pick up and experiment with the code. Would that be
> possible?
>
> My local branch is called "pregenerate-lambdas" but any name would work
> for me.
>
> The patch pre-generates during jlink time classes for non-Serializable
> lambda expressions and uses NestMates to handle access to the private
> implementation method. It's a good example of the kinds of changes needed
> to shift runtime-generated classes to jlink time.
>
> Still lots to update but worth getting into Leyden repo so the code is
> shareable.
>
> Mark / Brian - is it possible to get an experimental branch on the leyden
> repo for this patch?
>
> --Dan
>
> [0]
> https://github.com/openjdk/leyden/compare/master...DanHeidinga:leyden:pregenerate-lambdas?expand=1
>
> [1] https://mail.openjdk.org/pipermail/leyden-dev/2022-August/000055.html
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/leyden-dev/attachments/20230727/527eeb40/attachment.htm>
More information about the leyden-dev
mailing list