RFR: 8334431: C2 SuperWord: fix performance regression due to store-to-load-forwarding failures [v3]

Christian Hagedorn chagedorn at openjdk.org
Tue Nov 19 15:24:05 UTC 2024


On Tue, 19 Nov 2024 15:03:40 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> test/hotspot/jtreg/compiler/loopopts/superword/TestCyclicDependency.java line 36:
>> 
>>> 34:  *                   TestCyclicDependency
>>> 35:  * @run main/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:+AlignVector -XX:+VerifyAlignVector
>>> 36:  *                   TestCyclicDependency
>> 
>> These flags will be ignored for the test VM. You should pass them as separate runs in `main()` with `TestFramework.runWithFlags()`.
>
> Oh, is that true? That's scarry. I'm sure we are doing this elsewhere too. Is there not a way to forward these kinds of flags from the `@run` to the IR Framework test VM?

Good point, maybe we should check that at some point that other places are not passing flags like that. The main reason to go with `driver` + `runWithFlags()` is that we do not want to stress the driver VM that calls your `main()` method, prepares the test VM and does the IR matching. When you only pass the flags witih `runWithFlags()`, then the IR framework makes sure only to run the test VM with the additional flags which could impact the overall test performance otherwise.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21521#discussion_r1848562790


More information about the hotspot-compiler-dev mailing list