RFR: 8319879: Stress mode to randomize incremental inlining decision [v3]

Roland Westrelin roland at openjdk.org
Mon Nov 20 08:33:34 UTC 2023


On Thu, 16 Nov 2023 14:39:06 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

>> We had quite a few C2 bugs in the past that only reproduced with a specific sequence of incremental inlining (for example, [JDK-8319764](https://bugs.openjdk.org/browse/JDK-8319764)). We should randomize the incremental inlining decision to trigger these code paths more frequently.
>> 
>> I did some testing with the flag enabled and I hit [JDK-8319764](https://bugs.openjdk.org/browse/JDK-8319764) and [JDK-8319889](https://bugs.openjdk.org/browse/JDK-8319889). I think it's still valuable to integrate this even if these bugs are not resolved yet.
>> 
>> Thanks,
>> Tobias
>
> Tobias Hartmann has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Moved the should_delay check up

Looks good to me.

src/hotspot/share/opto/callGenerator.cpp line 992:

> 990:   CallGenerator* cg = CallGenerator::for_method_handle_inline(jvms, caller, callee, allow_inline, input_not_const);
> 991:   Compile* C = Compile::current();
> 992:   bool should_delay = AlwaysIncrementalInline || (StressIncrementalInlining && (C->random() % 2) == 0);

Maybe this should go in its own function.

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

Marked as reviewed by roland (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/16597#pullrequestreview-1739193021
PR Review Comment: https://git.openjdk.org/jdk/pull/16597#discussion_r1398806463


More information about the hotspot-compiler-dev mailing list