RFR: 8372266: Relax store matchers in compiler/escapeAnalysis/TestRematerializeObjects.java test
Emanuel Peter
epeter at openjdk.org
Mon Nov 24 07:02:26 UTC 2025
On Thu, 20 Nov 2025 16:48:01 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
> As you can see in the report, current matchers rely heavily on mainline C2 implementation to match specific stores. This fails when we try to backport MergeStores fixes to 25u. It would be better to relax the matchers a bit to cater for 25u backports, and also making test more robust for future MergeStores changes, if any.
>
> Additional testing:
> - [x] Linux x86_64 server fastdebug, mainline, affected test, 100x
> - [x] Linux AArch64 server fastdebug, mainline, affected test, 100x
> - [x] Linux x86_64 server fastdebug, jdk25u, affected test, 100x
But how do you now know that the `StoreL` is really coming from the merged `StoreI`, and that it is not some other unrelated `StoreL`? The info that it comes from an int-array is relevant here `int[int:4]`, don't you think?
What about all the other MergeStores IR tests? For consistency you would now have to adjust those too, but I hope you don't do that ;)
`./test/hotspot/jtreg/compiler/c2/TestMergeStores.java`
The motivation seems to be that printing of store nodes was a bit different in JDK25. But then we just have to adjust the matching a bit, maybe weaken the IR rule for backports. But I'd prefer not to weaken the IR rule on mainline.
What do you think?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/28437#issuecomment-3569186962
More information about the hotspot-compiler-dev
mailing list