RFR: 8333248: VectorGatherMaskFoldingTest.java failed when maximum vector bits is 64 [v5]
Fei Yang
fyang at openjdk.org
Fri Jun 14 01:11:16 UTC 2024
On Thu, 13 Jun 2024 15:16:32 GMT, Gui Cao <gcao at openjdk.org> wrote:
>> Hi, VectorGatherMaskFoldingTest.java Test fails when max vector bits is 64, when max vector bits is 64, LongVector.SPECIES_MAX.length() and DoubleVector.SPECIES_MAX.length() is 1.
>>
>> We can reproduce this problem in two ways:
>> 1. We can use riscv without rvv1.0 board to reproduce this problem
>> 2. Run VectorGatherMaskFoldingTest.java on aarch64 client mode without `-XX:+IncrementalInlineForceCleanup` Option, the `-XX:+IncrementalInlineForceCleanup` is C2 Option, so we need to remove this Option from the VectorGatherMaskFoldingTest.main method. error message:
>>
>> Base Test: @Test testDoubleVectorStoreLoadMaskedVector:
>> compiler.lib.ir_framework.shared.TestRunException: There was an error while invoking @Test method public static void compiler.vectorapi.VectorGatherMaskFoldingTest.testDoubleVectorStoreLoadMaskedVector(). Target: null. Arguments: <void>
>> at compiler.lib.ir_framework.test.BaseTest.invokeTestMethod(BaseTest.java:84)
>> at compiler.lib.ir_framework.test.BaseTest.invokeTest(BaseTest.java:71)
>> at compiler.lib.ir_framework.test.AbstractTest.run(AbstractTest.java:98)
>> at compiler.lib.ir_framework.test.TestVM.runTests(TestVM.java:861)
>> at compiler.lib.ir_framework.test.TestVM.start(TestVM.java:252)
>> at compiler.lib.ir_framework.test.TestVM.main(TestVM.java:165)
>> Caused by: java.lang.reflect.InvocationTargetException
>> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:118)
>> at java.base/java.lang.reflect.Method.invoke(Method.java:580)
>> at compiler.lib.ir_framework.test.BaseTest.invokeTestMethod(BaseTest.java:80)
>> ... 5 more
>> Caused by: java.lang.RuntimeException: assertNotEquals: expected [1.0] to not equal [1.0]
>> at jdk.test.lib.Asserts.fail(Asserts.java:691)
>> at jdk.test.lib.Asserts.assertNotEquals(Asserts.java:451)
>> at jdk.test.lib.Asserts.assertNotEquals(Asserts.java:435)
>> at compiler.vectorapi.VectorGatherMaskFoldingTest.testDoubleVectorStoreLoadMaskedVector(VectorGatherMaskFoldingTest.java:1089)
>> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>> ... 7 more
>>
>>
>> For example, the following method will be failed:
>>
>> private static final VectorSpecies<Long> L_SPECIES = LongVector.SPECIES_MAX;
>> private static final VectorSpecies<Double> D_SPECIES = DoubleVector.SPECIES_MAX;
>> ...
>> @Test
>> @IR(counts = { IRNode.STORE_VECTOR_MASKED, ">= 1", IRNode.LOAD_VECTOR_MASKED, ">= 1" }, apply...
>
> Gui Cao 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 five additional commits since the last revision:
>
> - Merge remote-tracking branch 'upstream/master' into DK-8333248
> - Add -XX:+IgnoreUnrecognizedVMOptions to mask unrecognized VM option 'IncrementalInlineForceCleanup' in client vm mode
> - Fix for some missed
> - Fix for Damon comment
> - 8333248: VectorGatherMaskFoldingTest.java failed when maximum vector bits is 64
LGTM.
-------------
Marked as reviewed by fyang (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/19473#pullrequestreview-2117245627
More information about the hotspot-compiler-dev
mailing list