RFR: 8293336: AOT-linking of invokedynamic for lambda expression and string concat [v4]
Dan Heidinga
heidinga at openjdk.org
Fri Oct 18 17:49:49 UTC 2024
On Fri, 18 Oct 2024 15:33:09 GMT, Chen Liang <liach at openjdk.org> wrote:
>> I looked at the InnerClassLambdaMetaFactory and it only generates MHs.Lookup.ClassOption::STRONG classes that live as long as their corresponding loaders. Given that, do we want an assert here that we are only dealing with strong hidden classes? ie: `assert(ik->is_hidden() && !ik->is_non_strong_hidden());`
>
> This is correct for the LMF, but I think we are using weak hidden classes in string concatenation.
I just confirmed - the `InlineHiddenClassStrategy` in j.l.i.StringConcatFactory uses weak hidden classes. It looks like there are two possible strategies though, and the InlineHiddenClassStrategy is only used if the MH strategy fails (more parameters than the high arity threshold)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/21143#discussion_r1806833155
More information about the core-libs-dev
mailing list