RFR: 8369456: [TESTBUG] Fix the test failure of TestSelectFromTwoVectorOp.java on sve2 platforms [v2]

Emanuel Peter epeter at openjdk.org
Wed Oct 29 10:09:38 UTC 2025


On Wed, 29 Oct 2025 10:05:05 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> erifan has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains two additional commits since the last revision:
>> 
>>  - Merge branch 'master' into JDK-8369456-select-from-two-vectors-failure
>>  - 8369456: [TESTBUG] Fix the test failure of TestSelectFromTwoVectorOp.java on sve2 platforms
>>    
>>    According the AD file, partial cases where `vector_length_in_bytes > 8`
>>    of the vector API `selectFrom` are not supported on the AArch64 SVE2
>>    platform. But the test `TestSelectFromTwoVectorOp.java` didn't rule out
>>    these cases, leading to test faiulres on sve2 plaftforms where
>>    `MaxVectorSize > 16`.
>>    
>>    This test problem was discovered by simulating a 512-bit sve2
>>    environment using qemu.
>>    
>>    This PR fixes these test failures.
>
> test/hotspot/jtreg/compiler/vectorapi/TestSelectFromTwoVectorOp.java line 221:
> 
>> 219:     @IR(counts = {IRNode.SELECT_FROM_TWO_VECTOR_VB, IRNode.VECTOR_SIZE_64, ">0"},
>> 220:         applyIfCPUFeature = {"sve2", "true"},
>> 221:         applyIf = {"MaxVectorSize", "64"})
> 
> Would it make sense to add some IR rule for cases with `MaxVectorSize > 64`? Because now you just weakened the test, rather than ensuring that there is a test for larger sizes.

Maybe it would be enough to just remove the `, IRNode.VECTOR_SIZE_64`, so that the test could check for the largest vector length available on the platform?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27723#discussion_r2472395771


More information about the hotspot-compiler-dev mailing list