8153655: Make intrinsics flags diagnostic and update intrinsics tests to enable diagnostic options
Summary: converted all intrinsics flags to diagnostic and updated related intrinsics tests to enable diagnostic options
Reviewed-by: kvn
--- a/hotspot/src/share/vm/c1/c1_globals.hpp Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/src/share/vm/c1/c1_globals.hpp Mon May 09 01:21:55 2016 -0700
@@ -176,7 +176,7 @@
product(bool, InlineSynchronizedMethods, true, \
"Inline synchronized methods") \
\
- develop(bool, InlineNIOCheckIndex, true, \
+ diagnostic(bool, InlineNIOCheckIndex, true, \
"Intrinsify java.nio.Buffer.checkIndex") \
\
develop(bool, CanonicalizeNodes, true, \
--- a/hotspot/src/share/vm/opto/c2_globals.hpp Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/src/share/vm/opto/c2_globals.hpp Mon May 09 01:21:55 2016 -0700
@@ -589,26 +589,26 @@
product(bool, BlockLayoutRotateLoops, true, \
"Allow back branches to be fall throughs in the block layout") \
\
- develop(bool, InlineReflectionGetCallerClass, true, \
+ diagnostic(bool, InlineReflectionGetCallerClass, true, \
"inline sun.reflect.Reflection.getCallerClass(), known to be " \
"part of base library DLL") \
\
- develop(bool, InlineObjectCopy, true, \
+ diagnostic(bool, InlineObjectCopy, true, \
"inline Object.clone and Arrays.copyOf[Range] intrinsics") \
\
- develop(bool, SpecialStringCompareTo, true, \
+ diagnostic(bool, SpecialStringCompareTo, true, \
"special version of string compareTo") \
\
- develop(bool, SpecialStringIndexOf, true, \
+ diagnostic(bool, SpecialStringIndexOf, true, \
"special version of string indexOf") \
\
- develop(bool, SpecialStringEquals, true, \
+ diagnostic(bool, SpecialStringEquals, true, \
"special version of string equals") \
\
- develop(bool, SpecialArraysEquals, true, \
+ diagnostic(bool, SpecialArraysEquals, true, \
"special version of Arrays.equals(char[],char[])") \
\
- product(bool, SpecialEncodeISOArray, true, \
+ diagnostic(bool, SpecialEncodeISOArray, true, \
"special version of ISO_8859_1$Encoder.encodeISOArray") \
\
develop(bool, BailoutToInterpreterForThrows, false, \
@@ -710,22 +710,22 @@
diagnostic(bool, OptimizeExpensiveOps, true, \
"Find best control for expensive operations") \
\
- product(bool, UseMathExactIntrinsics, true, \
+ diagnostic(bool, UseMathExactIntrinsics, true, \
"Enables intrinsification of various java.lang.Math functions") \
\
- product(bool, UseMultiplyToLenIntrinsic, false, \
+ diagnostic(bool, UseMultiplyToLenIntrinsic, false, \
"Enables intrinsification of BigInteger.multiplyToLen()") \
\
- product(bool, UseSquareToLenIntrinsic, false, \
+ diagnostic(bool, UseSquareToLenIntrinsic, false, \
"Enables intrinsification of BigInteger.squareToLen()") \
\
- product(bool, UseMulAddIntrinsic, false, \
+ diagnostic(bool, UseMulAddIntrinsic, false, \
"Enables intrinsification of BigInteger.mulAdd()") \
\
- product(bool, UseMontgomeryMultiplyIntrinsic, false, \
+ diagnostic(bool, UseMontgomeryMultiplyIntrinsic, false, \
"Enables intrinsification of BigInteger.montgomeryMultiply()") \
\
- product(bool, UseMontgomerySquareIntrinsic, false, \
+ diagnostic(bool, UseMontgomerySquareIntrinsic, false, \
"Enables intrinsification of BigInteger.montgomerySquare()") \
\
product(bool, UseTypeSpeculation, true, \
--- a/hotspot/src/share/vm/runtime/globals.hpp Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/src/share/vm/runtime/globals.hpp Mon May 09 01:21:55 2016 -0700
@@ -732,7 +732,7 @@
"Control whether SHA instructions can be used " \
"on SPARC, on ARM and on x86") \
\
- product(bool, UseGHASHIntrinsics, false, \
+ diagnostic(bool, UseGHASHIntrinsics, false, \
"Use intrinsics for GHASH versions of crypto") \
\
product(size_t, LargePageSizeInBytes, 0, \
@@ -802,27 +802,27 @@
product(bool, UseInlineCaches, true, \
"Use Inline Caches for virtual calls ") \
\
- develop(bool, InlineArrayCopy, true, \
+ diagnostic(bool, InlineArrayCopy, true, \
"Inline arraycopy native that is known to be part of " \
"base library DLL") \
\
- develop(bool, InlineObjectHash, true, \
+ diagnostic(bool, InlineObjectHash, true, \
"Inline Object::hashCode() native that is known to be part " \
"of base library DLL") \
\
- develop(bool, InlineNatives, true, \
+ diagnostic(bool, InlineNatives, true, \
"Inline natives that are known to be part of base library DLL") \
\
- develop(bool, InlineMathNatives, true, \
+ diagnostic(bool, InlineMathNatives, true, \
"Inline SinD, CosD, etc.") \
\
- develop(bool, InlineClassNatives, true, \
+ diagnostic(bool, InlineClassNatives, true, \
"Inline Class.isInstance, etc") \
\
- develop(bool, InlineThreadNatives, true, \
+ diagnostic(bool, InlineThreadNatives, true, \
"Inline Thread.currentThread, etc") \
\
- develop(bool, InlineUnsafeOps, true, \
+ diagnostic(bool, InlineUnsafeOps, true, \
"Inline memory ops (native methods) from Unsafe") \
\
product(bool, CriticalJNINatives, true, \
@@ -831,34 +831,34 @@
notproduct(bool, StressCriticalJNINatives, false, \
"Exercise register saving code in critical natives") \
\
- product(bool, UseAESIntrinsics, false, \
+ diagnostic(bool, UseAESIntrinsics, false, \
"Use intrinsics for AES versions of crypto") \
\
- product(bool, UseAESCTRIntrinsics, false, \
+ diagnostic(bool, UseAESCTRIntrinsics, false, \
"Use intrinsics for the paralleled version of AES/CTR crypto") \
\
- product(bool, UseSHA1Intrinsics, false, \
+ diagnostic(bool, UseSHA1Intrinsics, false, \
"Use intrinsics for SHA-1 crypto hash function. " \
"Requires that UseSHA is enabled.") \
\
- product(bool, UseSHA256Intrinsics, false, \
+ diagnostic(bool, UseSHA256Intrinsics, false, \
"Use intrinsics for SHA-224 and SHA-256 crypto hash functions. " \
"Requires that UseSHA is enabled.") \
\
- product(bool, UseSHA512Intrinsics, false, \
+ diagnostic(bool, UseSHA512Intrinsics, false, \
"Use intrinsics for SHA-384 and SHA-512 crypto hash functions. " \
"Requires that UseSHA is enabled.") \
\
- product(bool, UseCRC32Intrinsics, false, \
+ diagnostic(bool, UseCRC32Intrinsics, false, \
"use intrinsics for java.util.zip.CRC32") \
\
- product(bool, UseCRC32CIntrinsics, false, \
+ diagnostic(bool, UseCRC32CIntrinsics, false, \
"use intrinsics for java.util.zip.CRC32C") \
\
- product(bool, UseAdler32Intrinsics, false, \
+ diagnostic(bool, UseAdler32Intrinsics, false, \
"use intrinsics for java.util.zip.Adler32") \
\
- product(bool, UseVectorizedMismatchIntrinsic, false, \
+ diagnostic(bool, UseVectorizedMismatchIntrinsic, false, \
"Enables intrinsification of ArraysSupport.vectorizedMismatch()") \
\
diagnostic(ccstrlist, DisableIntrinsic, "", \
--- a/hotspot/test/compiler/cpuflags/AESIntrinsicsBase.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/cpuflags/AESIntrinsicsBase.java Mon May 09 01:21:55 2016 -0700
@@ -40,10 +40,11 @@
public static final String USE_AES_INTRINSICS = "UseAESIntrinsics";
public static final String USE_SSE = "UseSSE";
public static final String USE_VIS = "UseVIS";
+ public static final String[] USE_DIAGNOSTIC_CMD
+ = {"-XX:+UnlockDiagnosticVMOptions", "-XX:+PrintIntrinsics"};
public static final String[] TEST_AES_CMD
= {"-XX:+IgnoreUnrecognizedVMOptions", "-XX:+PrintFlagsFinal",
- "-Xbatch","-XX:+UnlockDiagnosticVMOptions",
- "-XX:+PrintIntrinsics", "-DcheckOutput=true", "-Dmode=CBC",
+ "-Xbatch", "-DcheckOutput=true", "-Dmode=CBC",
"TestAESMain"};
protected AESIntrinsicsBase(BooleanSupplier predicate) {
@@ -52,14 +53,18 @@
/**
* Prepares command for TestAESMain execution.
+ * Intrinsics flags are of diagnostic type
+ * and must be preceded by UnlockDiagnosticVMOptions.
* @param args flags that must be added to command
* @return command for TestAESMain execution
*/
public static String[] prepareArguments(String... args) {
- String[] command = Arrays.copyOf(args, TEST_AES_CMD.length
- + args.length);
- System.arraycopy(TEST_AES_CMD, 0, command, args.length,
- TEST_AES_CMD.length);
+ String[] command = Arrays.copyOf(USE_DIAGNOSTIC_CMD, args.length
+ + USE_DIAGNOSTIC_CMD.length + TEST_AES_CMD.length);
+ System.arraycopy(args, 0, command, USE_DIAGNOSTIC_CMD.length,
+ args.length);
+ System.arraycopy(TEST_AES_CMD, 0, command, args.length
+ + USE_DIAGNOSTIC_CMD.length, TEST_AES_CMD.length);
return command;
}
}
--- a/hotspot/test/compiler/intrinsics/muladd/TestMulAdd.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/muladd/TestMulAdd.java Mon May 09 01:21:55 2016 -0700
@@ -28,7 +28,7 @@
* @summary Add C2 x86 intrinsic for BigInteger::mulAdd() method
*
* @run main/othervm/timeout=600 -XX:-TieredCompilation -Xbatch
- * -XX:+IgnoreUnrecognizedVMOptions -XX:-UseSquareToLenIntrinsic -XX:-UseMultiplyToLenIntrinsic
+ * -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-UseSquareToLenIntrinsic -XX:-UseMultiplyToLenIntrinsic
* -XX:CompileCommand=dontinline,TestMulAdd::main
* -XX:CompileCommand=option,TestMulAdd::base_multiply,ccstr,DisableIntrinsic,_mulAdd
* -XX:CompileCommand=option,java.math.BigInteger::multiply,ccstr,DisableIntrinsic,_mulAdd
--- a/hotspot/test/compiler/intrinsics/sha/cli/SHAOptionsBase.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/SHAOptionsBase.java Mon May 09 01:21:55 2016 -0700
@@ -42,6 +42,11 @@
protected static final String USE_SHA512_INTRINSICS_OPTION
= "UseSHA512Intrinsics";
+ // Intrinsics flags are of diagnostic type
+ // and must be preceded by UnlockDiagnosticVMOptions.
+ protected static final String UNLOCK_DIAGNOSTIC_VM_OPTIONS
+ = "-XX:+UnlockDiagnosticVMOptions";
+
// Note that strings below will be passed to
// CommandLineOptionTest.verifySameJVMStartup and thus are regular
// expressions, not just a plain strings.
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForOtherCPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForOtherCPU.java Mon May 09 01:21:55 2016 -0700
@@ -50,11 +50,13 @@
CommandLineOptionTest.verifySameJVMStartup(null,
new String[] { ".*" + optionName + ".*" }, shouldPassMessage,
shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
CommandLineOptionTest.verifySameJVMStartup(null,
new String[] { ".*" + optionName + ".*" }, shouldPassMessage,
shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
}
@@ -63,13 +65,15 @@
// Verify that option is disabled by default.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be disabled by default",
- optionName));
+ optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS);
// Verify that option is disabled even if it was explicitly enabled
// using CLI options.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be off on unsupported "
+ "CPU even if set to true directly", optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
// Verify that option is disabled when it explicitly disabled
@@ -79,6 +83,7 @@
+ " even if '%s' flag set to JVM", optionName,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
}
}
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForSupportedCPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForSupportedCPU.java Mon May 09 01:21:55 2016 -0700
@@ -49,6 +49,7 @@
CommandLineOptionTest.verifySameJVMStartup(null, new String[] {
SHAOptionsBase.getWarningForUnsupportedCPU(optionName)
}, shouldPassMessage, shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
// Verify that option could be disabled even if +UseSHA was passed to
@@ -60,6 +61,7 @@
optionName, CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true)),
ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true),
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
@@ -75,6 +77,7 @@
optionName,
CommandLineOptionTest.prepareBooleanFlag(SHAOptionsBase.USE_SHA_OPTION, false)),
ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(SHAOptionsBase.USE_SHA_OPTION, false),
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
}
@@ -86,18 +89,21 @@
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "true",
String.format("Option '%s' should be enabled by default",
- optionName));
+ optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS);
// Verify that it is possible to explicitly enable the option.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "true",
String.format("Option '%s' was set to have value 'true'",
optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
// Verify that it is possible to explicitly disable the option.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' was set to have value 'false'",
optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
// verify that option is disabled when -UseSHA was passed to JVM.
@@ -106,6 +112,7 @@
+ " flag set to JVM", optionName,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, false)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true),
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, false));
@@ -117,6 +124,7 @@
+ " even if %s flag set to JVM", optionName,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true),
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForUnsupportedAArch64CPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForUnsupportedAArch64CPU.java Mon May 09 01:21:55 2016 -0700
@@ -47,6 +47,7 @@
CommandLineOptionTest.verifySameJVMStartup(null, new String[] {
SHAOptionsBase.getWarningForUnsupportedCPU(optionName)
}, shouldPassMessage, shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
shouldPassMessage = String.format("If JVM is started with '-XX:-"
@@ -62,6 +63,7 @@
shouldPassMessage,
shouldPassMessage,
ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(SHAOptionsBase.USE_SHA_OPTION, false),
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
}
@@ -72,13 +74,15 @@
// Verify that option is disabled by default.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be disabled by default",
- optionName));
+ optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS);
// Verify that option is disabled even if it was explicitly enabled
// using CLI options.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be off on unsupported "
+ "AArch64CPU even if set to true directly", optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
// Verify that option is disabled when +UseSHA was passed to JVM.
@@ -87,6 +91,7 @@
+ "AArch64CPU even if %s flag set to JVM",
optionName, CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true));
}
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForUnsupportedSparcCPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForUnsupportedSparcCPU.java Mon May 09 01:21:55 2016 -0700
@@ -47,6 +47,7 @@
CommandLineOptionTest.verifySameJVMStartup(null, new String[] {
SHAOptionsBase.getWarningForUnsupportedCPU(optionName)
}, shouldPassMessage, shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
// Verify that when the tested option is enabled, then
@@ -58,6 +59,7 @@
shouldPassMessage,
shouldPassMessage,
ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(SHAOptionsBase.USE_SHA_OPTION, false),
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
}
@@ -68,13 +70,15 @@
// Verify that option is disabled by default.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be disabled by default",
- optionName));
+ optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS);
// Verify that option is disabled even if it was explicitly enabled
// using CLI options.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be off on unsupported "
+ "SparcCPU even if set to true directly", optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
// Verify that option is disabled when +UseSHA was passed to JVM.
@@ -83,6 +87,7 @@
+ "SparcCPU even if %s flag set to JVM",
optionName, CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true));
}
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForUnsupportedX86CPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/GenericTestCaseForUnsupportedX86CPU.java Mon May 09 01:21:55 2016 -0700
@@ -49,6 +49,7 @@
CommandLineOptionTest.verifySameJVMStartup(null, new String[] {
SHAOptionsBase.getWarningForUnsupportedCPU(optionName)
}, shouldPassMessage, shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, false));
// Verify that when the tested option is enabled, then
@@ -60,6 +61,7 @@
shouldPassMessage,
shouldPassMessage,
ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(SHAOptionsBase.USE_SHA_OPTION, false),
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
}
@@ -70,12 +72,14 @@
// Verify that the tested option is disabled by default.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be disabled by default",
- optionName));
+ optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS);
// Verify that it is not possible to explicitly enable the option.
CommandLineOptionTest.verifyOptionValueForSameVM(optionName, "false",
String.format("Option '%s' should be off on unsupported "
+ "X86CPU even if set to true directly", optionName),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
// Verify that the tested option is disabled even if +UseSHA was passed
@@ -85,6 +89,7 @@
+ "X86CPU even if %s flag set to JVM",
optionName, CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true));
}
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/UseSHAIntrinsicsSpecificTestCaseForUnsupportedCPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/UseSHAIntrinsicsSpecificTestCaseForUnsupportedCPU.java Mon May 09 01:21:55 2016 -0700
@@ -59,6 +59,7 @@
CommandLineOptionTest.verifySameJVMStartup(new String[] {
SHAOptionsBase.getWarningForUnsupportedCPU(optionName)
}, null, shouldPassMessage, shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(optionName, true));
}
}
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/UseSHASpecificTestCaseForSupportedCPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/UseSHASpecificTestCaseForSupportedCPU.java Mon May 09 01:21:55 2016 -0700
@@ -57,6 +57,7 @@
CommandLineOptionTest.verifySameJVMStartup(
null, new String[] { ".*UseSHA.*" }, shouldPassMessage,
shouldPassMessage, ExitCode.OK,
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true),
CommandLineOptionTest.prepareBooleanFlag(
@@ -75,6 +76,7 @@
SHAOptionsBase.USE_SHA_OPTION, "false", String.format(
"'%s' option should be disabled when all UseSHA*Intrinsics are"
+ " disabled", SHAOptionsBase.USE_SHA_OPTION),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA1_INTRINSICS_OPTION, false),
CommandLineOptionTest.prepareBooleanFlag(
@@ -91,6 +93,7 @@
+ "to JVM", SHAOptionsBase.USE_SHA_OPTION,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true),
CommandLineOptionTest.prepareBooleanFlag(
@@ -109,6 +112,7 @@
SHAOptionsBase.USE_SHA_OPTION,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, false)),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, false),
CommandLineOptionTest.prepareBooleanFlag(
--- a/hotspot/test/compiler/intrinsics/sha/cli/testcases/UseSHASpecificTestCaseForUnsupportedCPU.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/intrinsics/sha/cli/testcases/UseSHASpecificTestCaseForUnsupportedCPU.java Mon May 09 01:21:55 2016 -0700
@@ -68,6 +68,7 @@
"%s option should be disabled on unsupported CPU"
+ " even if all UseSHA*Intrinsics options were enabled.",
SHAOptionsBase.USE_SHA_OPTION),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA1_INTRINSICS_OPTION, true),
CommandLineOptionTest.prepareBooleanFlag(
@@ -84,6 +85,7 @@
+ " and %s was enabled as well",
SHAOptionsBase.USE_SHA_OPTION,
SHAOptionsBase.USE_SHA_OPTION),
+ SHAOptionsBase.UNLOCK_DIAGNOSTIC_VM_OPTIONS,
CommandLineOptionTest.prepareBooleanFlag(
SHAOptionsBase.USE_SHA_OPTION, true),
CommandLineOptionTest.prepareBooleanFlag(
--- a/hotspot/test/compiler/runtime/6859338/Test6859338.java Fri May 06 18:08:01 2016 +0000
+++ b/hotspot/test/compiler/runtime/6859338/Test6859338.java Mon May 09 01:21:55 2016 -0700
@@ -27,7 +27,7 @@
* @bug 6859338
* @summary Assertion failure in sharedRuntime.cpp
*
- * @run main/othervm -Xcomp -XX:+IgnoreUnrecognizedVMOptions -XX:-InlineObjectHash -Xbatch -XX:-ProfileInterpreter Test6859338
+ * @run main/othervm -Xcomp -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-InlineObjectHash -Xbatch -XX:-ProfileInterpreter Test6859338
*/
public class Test6859338 {