RFR: 8310524: C2: record parser-generated LoadN nodes for IGVN [v2]

Tobias Hartmann thartmann at openjdk.org
Tue Dec 5 16:06:40 UTC 2023


On Tue, 5 Dec 2023 11:55:53 GMT, Daniel Lundén <duke at openjdk.org> wrote:

>> This changeset fixes an issue where LoadN nodes were not recorded during bytecode parsing for later revisit in IGVN, in some cases resulting in missed optimization opportunities (see, e.g., the included new regression test).
>> 
>> Changes:
>> - Make sure to record newly added LoadN-nodes for IGVN in `GraphKit::make_load`.
>> - Add a regression test.
>> 
>> ### Testing
>> - tier1, tier2, tier3, tier4, tier5 (windows-x64, linux-x64, linux-aarch64, macosx-x64, macosx-aarch64)
>
> Daniel Lundén has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Address comments

test/hotspot/jtreg/compiler/c2/irTests/igvn/TestLoadNIdeal.java line 54:

> 52:         p[0] = new A();
> 53: 
> 54:         // Dummy is not compiled and hence not inlined => Escape analysis

Is there a reason you are not using [DontInline](https://github.com/openjdk/jdk/blob/master/test/hotspot/jtreg/compiler/lib/ir_framework/DontInline.java) to prevent inlining of `dummy`?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16967#discussion_r1415872687


More information about the hotspot-compiler-dev mailing list