On Tue, 1 Oct 2024 15:46:01 GMT, Roman Kennke <rken...@openjdk.org> wrote:

> > test/hotspot/jtreg/compiler/c2/irTests/TestVectorizationNotRun.java:
> 
> I think I would disable the tests for now. Is there a good way to say 'run 
> this when UCOH is off OR UseSSE>3?

I don't think so, due to a [limitation in the IR framework precondition 
language](https://bugs.openjdk.org/browse/JDK-8294279): 
`UseCompactObjectHeaders` can only appear within a ["flag 
precondition"](https://github.com/openjdk/jdk/blob/efe3573b9b4ecec0630fdc1c61c765713a5b68e6/test/hotspot/jtreg/compiler/lib/ir_framework/IR.java#L109)
 whereas `UseSSE>3` needs to be expressed as a ["CPU feature 
precondition"](https://github.com/openjdk/jdk/blob/efe3573b9b4ecec0630fdc1c61c765713a5b68e6/test/hotspot/jtreg/compiler/lib/ir_framework/IR.java#L137C14-L137C31)
 for portability (`UseSSE` is not defined for aarch64), and these two cannot be 
combined with logical operators.

I suggest to disable the IR checks of the failing tests using `applyIf = 
{"UseCompactObjectHeaders", "false"}` as you did for other similar tests (e.g. 
`TestMulAddS2I.java`), and document it in 
[JDK-8340010](https://bugs.openjdk.org/browse/JDK-8340010). Maybe also comment 
in the tests that the failure happens only with `-XX:UseSSE<=3`.

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

PR Comment: https://git.openjdk.org/jdk/pull/20677#issuecomment-2387906401

Reply via email to