RFR: 8334872: BigEndian: java/lang/invoke/condy Tests failing since JDK-8294960
Claes Redestad
redestad at openjdk.org
Tue Jun 25 08:32:10 UTC 2024
On Mon, 24 Jun 2024 16:01:41 GMT, Adam Sotona <asotona at openjdk.org> wrote:
> After JDK-8294960 is java.lang.invoke.ClassSpecializer using lamdas for code generation and unfortunately it causes StackOverflow on BigEndian platforms.
>
> This patch converts all lambdas in ClassSpecializer into anonymous inner classes.
>
> Please review and test on a BigEndian platform.
>
> Thanks,
> Adam
Looks like there is a bootstrap cycle initializing this lambda in ClassBuilder: https://github.com/openjdk/jdk/blob/master/src/java.base/share/classes/java/lang/classfile/ClassBuilder.java#L202
I'm not sure, but it looks like the PPC VM might be passing args to the bootstrap method differently, which triggers adapting code in BootstrapMethodInvoker::pushMePullYou - this might be enough to start this cycle.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/19863#issuecomment-2188298757
More information about the core-libs-dev
mailing list