RFR: 8270459: Conflict inlining decisions by C1/C2 with the same CompileCommand [v2]

Xin Liu xliu at openjdk.java.net
Fri Jul 16 03:55:10 UTC 2021


On Thu, 15 Jul 2021 23:08:45 GMT, Jie Fu <jiefu at openjdk.org> wrote:

>> src/hotspot/share/compiler/compilerOracle.cpp line 355:
>> 
>>> 353:       // Find the last one for that method and return the predicate accordingly
>>> 354:       enum CompileCommand last_one = CompileCommand::Unknown;
>>> 355:       TypedMethodOptionMatcher* current = option_list;
>> 
>> Add comment that `option_list` lists options in reverse order. So the first option we find is the last which was specified.
>
>> Add comment that `option_list` lists options in reverse order. So the first option we find is the last which was specified.
> 
> Updated.
> Thanks.

if has_inline == true && has_dnotinline == true, but v1 == false && v2 == false,  two options conflict, don't  they? 
in this case, you go to else, which actually bias to Inline instead of the last seen option.

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

PR: https://git.openjdk.java.net/jdk/pull/4780


More information about the hotspot-compiler-dev mailing list