RFR(XS) : 8155192 : [TESTBUG] SHA tests assumes that x86 does not have SHA intrinsics

Igor Ignatyev igor.ignatyev at oracle.com
Thu Jun 21 21:43:47 UTC 2018


Hi Gustavo,

please see my answers inline.

Thanks,
-- Igor

> On Jun 21, 2018, at 1:34 PM, Gustavo Romero <gromero at linux.vnet.ibm.com> wrote:
> 
> Hi Vladimir, Igor
> 
> On 06/21/2018 02:47 PM, Vladimir Kozlov wrote:
>> But I find it strange that PPC64 (Platform::isPPC) is only listed in one files. According to vm_version_ppc.cpp it supports SHA256 and SHA512.
> 
> Yes, that's correct.
> 
> Igor, do you mind to confirm which tests exactly must be enabled on PPC64 (or
> disabled if the list is smaller...)?
all the tests are already enabled on PPC64, but they don't do much testing, as they will be skipped by the tests themselves.
> 
> For instance, it's not clear to me yet why the suggested fix in [1] is adding PPC to
> UseSHAIntrinsicsSpecificTestCaseForUnsupportedCPU.java.
UseSHAIntrinsicsSpecificTestCaseForUnsupportedCPU is supposed to be run to hosts which *do* support some sha instructions, but don't support a specific one. I don't know if it's a case for PPC or not. in any case, it might be better to get rid of Platform::* predicates in this class and just use IntrinsicPredicates and SHAOptionsBase.getPredicateForOption, so its c-tor will be:
>          super(optionName, new AndPredicate(
>                          IntrinsicPredicates.ANY_SHA_INSTRUCTION_AVAILABLE,
>                          new NotPredicate(SHAOptionsBase.getPredicateForOption(optionName))));
>     < ...>


and UseSHASpecificTestCaseForSupportedCPU's c-tor can be changed to:
>          super(SHAOptionsBase.USE_SHA_OPTION, IntrinsicPredicates.ANY_SHA_INSTRUCTION_AVAILABLE);

>     < ...>

I'll retest the patch for 8155192 w/ these changes. 

> 
> Current status on PPC64 is:
> 
> Passed: compiler/intrinsics/sha/cli/TestUseSHA256IntrinsicsOptionOnUnsupportedCPU.java
> Passed: compiler/intrinsics/sha/cli/TestUseSHA1IntrinsicsOptionOnSupportedCPU.java
> Passed: compiler/intrinsics/sha/cli/TestUseSHAOptionOnUnsupportedCPU.java
> Passed: compiler/intrinsics/sha/cli/TestUseSHA512IntrinsicsOptionOnSupportedCPU.java
> Passed: compiler/intrinsics/sha/cli/TestUseSHA512IntrinsicsOptionOnUnsupportedCPU.java
> Passed: compiler/intrinsics/sha/cli/TestUseSHA256IntrinsicsOptionOnSupportedCPU.java
> Passed: compiler/intrinsics/sha/cli/TestUseSHAOptionOnSupportedCPU.java
> Passed: compiler/intrinsics/sha/cli/TestUseSHA1IntrinsicsOptionOnUnsupportedCPU.java
> Passed: compiler/intrinsics/sha/sanity/TestSHA1Intrinsics.java
> Passed: compiler/intrinsics/sha/sanity/TestSHA1MultiBlockIntrinsics.java
> Passed: compiler/intrinsics/sha/sanity/TestSHA512Intrinsics.java
> Passed: compiler/intrinsics/sha/sanity/TestSHA256Intrinsics.java
> Passed: compiler/intrinsics/sha/sanity/TestSHA512MultiBlockIntrinsics.java
> Passed: compiler/intrinsics/sha/sanity/TestSHA256MultiBlockIntrinsics.java
> Passed: compiler/intrinsics/sha/TestSHA.java
> Test results: passed: 15
as I explained above, all the tests are run on all platforms, but some of their parts are just skipped on PPC64.

> 
> Thanks.
> 
> Best regards,
> Gustavo
> 
> [1] https://bugs.openjdk.java.net/browse/JDK-8205492
> 
>> Thanks,
>> Vladimir
>> On 6/20/18 8:28 PM, Igor Ignatyev wrote:
>>> http://cr.openjdk.java.net/~iignatyev//8155192/webrev.00/index.html
>>>> 29 lines changed: 10 ins; 3 del; 16 mod;
>>> 
>>> Hi all,
>>> 
>>> could you please review this tiny fix for SHA tests? the fix adjusts definitions of supported/unsupported CPUs in sha tests.
>>> 
>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8155192
>>> webrev: http://cr.openjdk.java.net/~iignatyev//8155192/webrev.00/index.htm
>>> testing: test/hotspot/jtreg/compiler/intrinsics tests
>>> 
>>> Thanks,
>>> -- Igor
>>> 
> 



More information about the hotspot-compiler-dev mailing list