RFR: 8345485: C2 MergeLoads: merge adjacent array/native memory loads into larger load [v4]
kuaiwei
duke at openjdk.org
Fri Mar 21 10:09:15 UTC 2025
On Tue, 18 Mar 2025 08:24:50 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>> kuaiwei has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Revert extract value and add more tests
>
> test/hotspot/jtreg/compiler/c2/TestMergeLoads.java line 235:
>
>> 233: }
>> 234: }
>> 235: }
>
> In the meantime, I've developed a `Verify.java`, exactly for this. Would you mind using it, it would reduce the amount of code here quite a bit ;)
Use Verify.java to check. It's very useful.
> test/hotspot/jtreg/compiler/c2/TestMergeLoads.java line 423:
>
>> 421: @IR(counts = {IRNode.LOAD_I_OF_CLASS, "byte\\\\[int:>=0] \\\\(java/lang/Cloneable,java/io/Serializable\\\\)", "1"},
>> 422: applyIf = {"UseUnalignedAccesses", "true"},
>> 423: applyIfPlatform = {"big-endian", "true"})
>
> Can you please also check for byte and char loads? It would make sure that we do not have any loads that we are not expecting, and that the graph was cleaned appropriately.
The other Load type are added in ir rules.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24023#discussion_r2007252710
PR Review Comment: https://git.openjdk.org/jdk/pull/24023#discussion_r2007255414
More information about the hotspot-compiler-dev
mailing list