RFR: 8319850: PrintInlining should print which methods are late inlines

Joshua Cao duke at openjdk.org
Fri Jan 5 22:18:22 UTC 2024


On Thu, 16 Nov 2023 12:07:10 GMT, Roland Westrelin <roland at openjdk.org> wrote:

>> I can see why its confusing. I reworded the JBS title and added more to the summary. 
>> 
>> 
>> This confused me when first starting looking at compilation units. I would see a method reported as inlined, but in the early compilation phases, I still see the method call. I was not aware of late inlines. I think it would be a nice enhancement for PrintInlining to report which methods are late inlined.
>> 
>> 
>> Yes, `PrintInlining` reports late inlines, but I think it would be nice for it to explicitly state which inlines are late inlines. I want to print `late inline`.
>> 
>>> There's an open bug to clean it up: https://bugs.openjdk.org/browse/JDK-8039555 FWIW, I gave it a try at some point but I couldn't find a better solution.
>> 
>> I can echo this issue, the inlining code does feel a little messy. I hope this patch does not make it worse, I'd say it keeps the messiness the same.
>
>> Yes, `PrintInlining` reports late inlines, but I think it would be nice for it to explicitly state which inlines are late inlines. I want to print `late inline`.
> 
> I get it now and that looks reasonable to me. What about method handle invokes and late inlining of virtual calls. For those 2, the call site is initially found to not be a candidate for inlining and only later the compiler finds that it can inline. Does your change cover those 2 cases?

@rwestrel could you take a look?

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

PR Comment: https://git.openjdk.org/jdk/pull/16595#issuecomment-1879318818


More information about the hotspot-compiler-dev mailing list