test/compiler/intrinsics/sha/cli/testcases/UseSHAIntrinsicsSpecificTestCaseForUnsupportedSparcCPU.java

Print this page




  33  * don't support required instruction, but support other SHA-related
  34  * instructions.
  35  *
  36  * For example, CPU support sha1 instruction, but don't support sha256 or
  37  * sha512.
  38  */
  39 public class UseSHAIntrinsicsSpecificTestCaseForUnsupportedSparcCPU
  40         extends SHAOptionsBase.TestCase {
  41     public UseSHAIntrinsicsSpecificTestCaseForUnsupportedSparcCPU(
  42             String optionName) {
  43         // execute test case on SPARC CPU that support any sha* instructions,
  44         // but does not support sha* instruction required by the tested option.
  45         super(optionName, new AndPredicate(Platform::isSparc,
  46                 new AndPredicate(
  47                         IntrinsicPredicates.ANY_SHA_INSTRUCTION_AVAILABLE,
  48                         new NotPredicate(SHAOptionsBase.getPredicateForOption(
  49                                 optionName)))));
  50     }
  51     @Override
  52     protected void verifyWarnings() throws Throwable {
  53         // Verify that attempt to enable the tested option will cause a warning.



  54         CommandLineOptionTest.verifySameJVMStartup(new String[] {
  55                         SHAOptionsBase.getWarningForUnsupportedCPU(optionName)
  56                 }, null, ExitCode.OK,
  57                 CommandLineOptionTest.prepareBooleanFlag(optionName, true));
  58     }
  59 }


  33  * don't support required instruction, but support other SHA-related
  34  * instructions.
  35  *
  36  * For example, CPU support sha1 instruction, but don't support sha256 or
  37  * sha512.
  38  */
  39 public class UseSHAIntrinsicsSpecificTestCaseForUnsupportedSparcCPU
  40         extends SHAOptionsBase.TestCase {
  41     public UseSHAIntrinsicsSpecificTestCaseForUnsupportedSparcCPU(
  42             String optionName) {
  43         // execute test case on SPARC CPU that support any sha* instructions,
  44         // but does not support sha* instruction required by the tested option.
  45         super(optionName, new AndPredicate(Platform::isSparc,
  46                 new AndPredicate(
  47                         IntrinsicPredicates.ANY_SHA_INSTRUCTION_AVAILABLE,
  48                         new NotPredicate(SHAOptionsBase.getPredicateForOption(
  49                                 optionName)))));
  50     }
  51     @Override
  52     protected void verifyWarnings() throws Throwable {
  53         String shouldPassMessage = String.format("JVM should start with "
  54                 + "'-XX:+%s' flag, but output should contain warning.",
  55                 optionName);
  56         // Verify that attempt to enable the tested option will cause a warning
  57         CommandLineOptionTest.verifySameJVMStartup(new String[] {
  58                         SHAOptionsBase.getWarningForUnsupportedCPU(optionName)
  59                 }, null, shouldPassMessage, shouldPassMessage, ExitCode.OK,
  60                 CommandLineOptionTest.prepareBooleanFlag(optionName, true));
  61     }
  62 }