Integrated: 8339299: C1 will miss type profile when inline final method

kuaiwei duke at openjdk.org
Tue Sep 24 11:11:43 UTC 2024


On Fri, 30 Aug 2024 07:25:59 GMT, kuaiwei <duke at openjdk.org> wrote:

> I found sometimes C1 will miss type profile and I tried to write a test to demonstrate it.
> It will happen with these conditions
> 1 It's a virtual call and the callee is a final method. So c1 will think it's static bound.
> 2 The interpreter never touch the callsite, so interpreter does not add type profile.
> 3 In c1 compilation, it will be inlined based on CHA.
> 4 In c2 compilation, the CHA is broken, but type profile is missing, so c2 can not inline it.

This pull request has now been integrated.

Changeset: e1c4d303
Author:    Kuai Wei <kuaiwei.kw at alibaba-inc.com>
URL:       https://git.openjdk.org/jdk/commit/e1c4d3039f6b5106ce3f65d50f607eacc2a8d168
Stats:     150 lines in 2 files changed: 148 ins; 0 del; 2 mod

8339299: C1 will miss type profile when inline final method

Reviewed-by: lmesnik, vlivanov

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

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


More information about the hotspot-compiler-dev mailing list