RFR: 8372941: Rework compiler/intrinsics/sha tests to use intrinsic availability [v2]

Ramkumar Sunderbabu rsunderbabu at openjdk.org
Fri Dec 5 17:15:43 UTC 2025


On Fri, 5 Dec 2025 17:11:13 GMT, Ramkumar Sunderbabu <rsunderbabu at openjdk.org> wrote:

>> Predicate probes of the following algos are changed to rely on intrinsics availability in the platform as opposed to hardware support availability.
>> MD5
>> SHA1
>> SHA256
>> SHA3
>> 
>> Testing:
>> All flag combinations from CI
>> hotspot tiers 1 to 5
>> PS: only for tier testings, mac-aarch was skipped due to resource constraints
>
> Ramkumar Sunderbabu has updated the pull request incrementally with one additional commit since the last revision:
> 
>   remove requires condition

I didn't modify TestUseSHA3IntrinsicsOptionOnSupportedCPU.java since it was failing once I removed the condition completely. `@requires os.arch == "aarch64" & os.family == "mac"`

`----------System.err:(32/2790)----------
 stdout: [];
 stderr: [Java HotSpot(TM) 64-Bit Server VM warning: Option NeverActAsServerClassMachine was deprecated in version 26.0 and will likely be removed in a future release.
java version "26-ea" 2026-03-17
Java(TM) SE Runtime Environment (build 26-ea+26-2610)
Java HotSpot(TM) 64-Bit Server VM (build 26-ea+26-2610, mixed mode, sharing)
]
 exitValue = 0

java.lang.AssertionError: Expected message not found: 'Intrinsics for SHA3-224, SHA3-256, SHA3-384 and SHA3-512 crypto hash functions not available on this CPU.'.
Enabling option 'UseSHA3Intrinsics' should not be possible and should result in a warning if -XX:-UseSHA was passed to JVM
	at jdk.test.lib.cli.CommandLineOptionTest.verifyOutput(CommandLineOptionTest.java:159)
	at jdk.test.lib.cli.CommandLineOptionTest.verifyJVMStartup(CommandLineOptionTest.java:130)
	at jdk.test.lib.cli.CommandLineOptionTest.verifySameJVMStartup(CommandLineOptionTest.java:211)
	at compiler.intrinsics.sha.cli.testcases.GenericTestCaseForSupportedCPU.verifyWarnings(GenericTestCaseForSupportedCPU.java:82)
	at compiler.intrinsics.sha.cli.DigestOptionsBase$TestCase.test(DigestOptionsBase.java:162)
	at compiler.intrinsics.sha.cli.DigestOptionsBase.runTestCases(DigestOptionsBase.java:139)
	at jdk.test.lib.cli.CommandLineOptionTest.test(CommandLineOptionTest.java:544)
	at compiler.intrinsics.sha.cli.TestUseSHA3IntrinsicsOptionOnSupportedCPU.main(TestUseSHA3IntrinsicsOptionOnSupportedCPU.java:47)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
	at java.base/java.lang.reflect.Method.invoke(Method.java:565)
	at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
	at java.base/java.lang.Thread.run(Thread.java:1516)
Caused by: java.lang.RuntimeException: 'Intrinsics for SHA3-224, SHA3-256, SHA3-384 and SHA3-512 crypto hash functions not available on this CPU.' missing from stdout/stderr
	at jdk.test.lib.process.OutputAnalyzer.shouldMatch(OutputAnalyzer.java:407)
	at jdk.test.lib.cli.CommandLineOptionTest.verifyOutput(CommandLineOptionTest.java:154)
	... 11 more

JavaTest Message: Test threw exception: java.lang.AssertionError: Expected message not found: 'Intrinsics for SHA3-224, SHA3-256, SHA3-384 and SHA3-512 crypto hash functions not available on this CPU.'.
Enabling option 'UseSHA3Intrinsics' should not be possible and should result in a warning if -XX:-UseSHA was passed to JVM
JavaTest Message: shutting down test

STATUS:Failed.`main' threw exception: java.lang.AssertionError: Expected message not found: 'Intrinsics for SHA3-224, SHA3-256, SHA3-384 and SHA3-512 crypto hash functions not available on this CPU.'. Enabling option 'UseSHA3Intrinsics' should not be possible and should result in a warning if -XX:-UseSHA was passed to JVM
`

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

PR Comment: https://git.openjdk.org/jdk/pull/28634#issuecomment-3617772383


More information about the hotspot-compiler-dev mailing list