RFR: 8374622: StressIncrementalInlining should also randomize the processing order

Damon Fenacci dfenacci at openjdk.org
Mon Jan 12 07:56:21 UTC 2026


On Thu, 8 Jan 2026 09:25:35 GMT, Marc Chevalier <mchevalier at openjdk.org> wrote:

> As it says: randomize the order the late inlines are processed, and slightly factor it with macro nodes.
> 
> I didn't add shuffle to the `GrowableArray` class since it seems a bit method specialized method (and it seems it'd be a controversial change to a widely use class), it would make `GrowableArray` depends on `Compile` for random number generation (or require a callback, for instance, giving a non-trivial signature and usage), I couldn't find other shuffling of such an object.
> There is also shuffling of `UniqueNodeList` (for `StressIGVN`), but it seems hard to unify: access and length are not written quite the same, it would probably be not simpler than duplicating the implem (which is simple, so it's fine in my opinion).
> 
> Thanks,
> Marc

Good stuff 😄 Thank you for adding this @marc-chevalier!
Looks good (just an additional minor question)

src/hotspot/share/opto/compile.cpp line 2177:

> 2175:   if (array.length() < 2) {
> 2176:     return;
> 2177:   }

Do we need this check?

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

PR Review: https://git.openjdk.org/jdk/pull/29110#pullrequestreview-3649489600
PR Review Comment: https://git.openjdk.org/jdk/pull/29110#discussion_r2681166345


More information about the hotspot-compiler-dev mailing list