RFR: 8320237 C2: late inlining of method handle invoke causes duplicate lines in PrintInlining output [v2]

Roland Westrelin roland at openjdk.org
Fri Jan 12 15:31:23 UTC 2024


On Fri, 12 Jan 2024 14:43:39 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

> Could you please explain what the problem was?

I did the fix. For virtual and method handle inline calls, late inlining happens because we couldn't resolve the call to a single target before and the late inlining logic goes through the inlining heuristics again to find one. As a result, a new inlining message is produced. For other type of calls, the call is known to successfully inline but was delayed due to lack of nodes. When late inlining succeeds then, it's because the graph has shrunk enough but there's no new inlining message. The other thing is that the print inlining logic is conditioned on PrintInlining and PrintIntrinsics. When PrintIntrinsics only is true, for method handle and virtual calls, during late inlining no new inlining message is produced.

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

PR Comment: https://git.openjdk.org/jdk/pull/17147#issuecomment-1889510391


More information about the hotspot-compiler-dev mailing list