On Tue, 4 Mar 2025 14:12:05 GMT, Jorn Vernee <jver...@openjdk.org> wrote:

> the LambdaForm will just have a single call site for all the cases, whereas 
> the intrinsic does emit a call per case?

Yes. The LambdaForm will be only used for non-customized bytecode (which cannot 
fully inline anyways) or interpretation.

> i.e. the point is that these do not necessarily have to do exactly the same 
> thing?

I think so - that is what these MH Impl intrinsics are for, to stub out some 
names with replacement bytecode. Though in the long run, we might check if it's 
possible and worthy to add library call (intrinsic) for our combinator and 
improve the IR for C2 directly.

For performance, as I've mentioned before, JMH benchmarks results are the same 
for before and after; the only difference is that I had to add `@ForceInline` 
on Immutable collections to make them as performant as the old switch holder 
class because of the inlining shenigans when something is not constant.

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

PR Comment: https://git.openjdk.org/jdk/pull/23763#issuecomment-2697796793

Reply via email to