[lworld] RFR: 8374025: [lworld] valhalla/valuetypes/SubstitutabilityTest.java fails due to argument clashes

Roger Riggs rriggs at openjdk.org
Thu Jan 29 14:52:06 UTC 2026


On Thu, 29 Jan 2026 13:29:38 GMT, Paul Hübner <phubner at openjdk.org> wrote:

> Hi all,
> 
> Currently, the non-CDS test of `valhalla/valuetypes/SubstitutabilityTest.java` is disabled. This is because it uses `-Xshare:off` which is fundamentally incompatible with some AOT flags that the test is run with.
> 
> In this fix, we introduce a new `@requires` property which denotes if the AOT code cache has been given as a command-line argument. If that is the case, we skip the test. For context, from the failure:
>> Option AOTCache cannot be used at the same time with -Xshare:on, -Xshare:auto, -Xshare:off, -Xshare:dump, DumpLoadedClassList, SharedClassListFile, or SharedArchiveFile
> 
> An alternative considered was to use `@requires vm.flagless`. However, there are many configurations, such as different GCs, that we would lose out on. Substitutability plays quite a central concept with value classes, therefore, a new property is perhaps the more suitable approach.
> 
> Testing: the Oracle tiers in which we observed failures, and a smoke-test tier 1 on Linux (x64, AArch64), macOS (x64, AArch64), Windows (x64).

Is there a clear reason that SubstitutabilityTest needs to be run with -Xshare:off?
I can't think of a direct case where CDS or no-CDS has any impact on substitutability.
If there's a clear need it should be documented.

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

PR Comment: https://git.openjdk.org/valhalla/pull/1995#issuecomment-3818155132


More information about the valhalla-dev mailing list