33 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
34 * -XX:+WhiteBoxAPI TestUseRTMDeoptOptionOnSupportedConfig
35 */
36
37 import com.oracle.java.testlibrary.ExitCode;
38 import com.oracle.java.testlibrary.cli.CommandLineOptionTest;
39 import com.oracle.java.testlibrary.cli.predicate.AndPredicate;
40 import rtm.predicate.SupportedCPU;
41 import rtm.predicate.SupportedVM;
42
43 public class TestUseRTMDeoptOptionOnSupportedConfig
44 extends CommandLineOptionTest {
45 private static final String DEFAULT_VALUE = "false";
46
47 private TestUseRTMDeoptOptionOnSupportedConfig() {
48 super(new AndPredicate(new SupportedVM(), new SupportedCPU()));
49 }
50
51 @Override
52 public void runTestCases() throws Throwable {
53 String experimentalOptionError
54 = CommandLineOptionTest.getExperimentalOptionErrorMessage(
55 "UseRTMDeopt");
56 // verify that option is experimental
57 CommandLineOptionTest.verifySameJVMStartup(
58 new String[] { experimentalOptionError }, null, ExitCode.FAIL,
59 "-XX:+UseRTMDeopt");
60 // verify that option could be turned on
61 CommandLineOptionTest.verifySameJVMStartup(null, null, ExitCode.OK,
62 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
63 "-XX:+UseRTMDeopt");
64 // verify that option could be turned off
65 CommandLineOptionTest.verifySameJVMStartup(null, null, ExitCode.OK,
66 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
67 "-XX:-UseRTMDeopt");
68 // verify default value
69 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt",
70 TestUseRTMDeoptOptionOnSupportedConfig.DEFAULT_VALUE,
71 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS);
72 // verify default value
73 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt",
74 TestUseRTMDeoptOptionOnSupportedConfig.DEFAULT_VALUE,
75 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
76 "-XX:+UseRTMLocking");
77 // verify that option is off when UseRTMLocking is off
78 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt", "false",
79 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
80 "-XX:-UseRTMLocking", "-XX:+UseRTMDeopt");
81 // verify that option could be turned on
82 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt", "true",
83 CommandLineOptionTest.UNLOCK_EXPERIMENTAL_VM_OPTIONS,
84 "-XX:+UseRTMLocking", "-XX:+UseRTMDeopt");
85 }
86
87 public static void main(String args[]) throws Throwable {
88 new TestUseRTMDeoptOptionOnSupportedConfig().test();
89 }
90 }
|
33 * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
34 * -XX:+WhiteBoxAPI TestUseRTMDeoptOptionOnSupportedConfig
35 */
36
37 import com.oracle.java.testlibrary.ExitCode;
38 import com.oracle.java.testlibrary.cli.CommandLineOptionTest;
39 import com.oracle.java.testlibrary.cli.predicate.AndPredicate;
40 import rtm.predicate.SupportedCPU;
41 import rtm.predicate.SupportedVM;
42
43 public class TestUseRTMDeoptOptionOnSupportedConfig
44 extends CommandLineOptionTest {
45 private static final String DEFAULT_VALUE = "false";
46
47 private TestUseRTMDeoptOptionOnSupportedConfig() {
48 super(new AndPredicate(new SupportedVM(), new SupportedCPU()));
49 }
50
51 @Override
52 public void runTestCases() throws Throwable {
53 // verify that option could be turned on
54 CommandLineOptionTest.verifySameJVMStartup(
55 null, null, ExitCode.OK, "-XX:+UseRTMDeopt");
56 // verify that option could be turned off
57 CommandLineOptionTest.verifySameJVMStartup(
58 null, null, ExitCode.OK, "-XX:-UseRTMDeopt");
59 // verify default value
60 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt",
61 TestUseRTMDeoptOptionOnSupportedConfig.DEFAULT_VALUE);
62 // verify default value
63 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt",
64 TestUseRTMDeoptOptionOnSupportedConfig.DEFAULT_VALUE,
65 "-XX:+UseRTMLocking");
66 // verify that option is off when UseRTMLocking is off
67 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt",
68 "false", "-XX:-UseRTMLocking", "-XX:+UseRTMDeopt");
69 // verify that option could be turned on
70 CommandLineOptionTest.verifyOptionValueForSameVM("UseRTMDeopt",
71 "true", "-XX:+UseRTMLocking", "-XX:+UseRTMDeopt");
72 }
73
74 public static void main(String args[]) throws Throwable {
75 new TestUseRTMDeoptOptionOnSupportedConfig().test();
76 }
77 }
|