< prev index next >

test/compiler/rtm/locking/TestRTMDeoptOnHighAbortRatio.java

Print this page

        

@@ -27,10 +27,11 @@
  * @summary Verify that on high abort ratio method will be recompiled
  *          without rtm locking.
  * @library /test/lib /
  * @modules java.base/jdk.internal.misc
  *          java.management
+ * @requires vm.flavor == "server" & !vm.emulatedClient & vm.rtm.cpu & vm.rtm.os
  * @build sun.hotspot.WhiteBox
  * @run driver ClassFileInstaller sun.hotspot.WhiteBox
  *                                sun.hotspot.WhiteBox$WhiteBoxPermission
  * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions
  *                   -XX:+WhiteBoxAPI

@@ -41,17 +42,13 @@
 
 import compiler.testlibrary.rtm.AbortProvoker;
 import compiler.testlibrary.rtm.AbortType;
 import compiler.testlibrary.rtm.RTMLockingStatistics;
 import compiler.testlibrary.rtm.RTMTestBase;
-import compiler.testlibrary.rtm.predicate.SupportedCPU;
-import compiler.testlibrary.rtm.predicate.SupportedOS;
-import compiler.testlibrary.rtm.predicate.SupportedVM;
 import jdk.test.lib.Asserts;
 import jdk.test.lib.process.OutputAnalyzer;
 import jdk.test.lib.cli.CommandLineOptionTest;
-import jdk.test.lib.cli.predicate.AndPredicate;
 
 import java.util.List;
 
 /**
  * Test verifies that on high abort ratio method wil be deoptimized with

@@ -59,19 +56,14 @@
  * be used for that method.
  * This test make asserts on total locks count done by compiled method,
  * so in order to avoid issue with retriable locks -XX:RTMRetryCount=0 is used.
  * For more details on that issue see {@link TestUseRTMAfterLockInflation}.
  */
-public class TestRTMDeoptOnHighAbortRatio extends CommandLineOptionTest {
+public class TestRTMDeoptOnHighAbortRatio {
     private static final long ABORT_THRESHOLD
             = AbortProvoker.DEFAULT_ITERATIONS / 2L;
 
-    private TestRTMDeoptOnHighAbortRatio() {
-        super(new AndPredicate(new SupportedCPU(), new SupportedOS(), new SupportedVM()));
-    }
-
-    @Override
     protected void runTestCases() throws Throwable {
         verifyDeopt(false);
         verifyDeopt(true);
     }
 

@@ -117,9 +109,9 @@
                 "After AbortThreshold was reached, method should be"
                 + " recompiled without rtm lock eliding.");
     }
 
     public static void main(String args[]) throws Throwable {
-        new TestRTMDeoptOnHighAbortRatio().test();
+        new TestRTMDeoptOnHighAbortRatio().runTestCases();
     }
 }
 
< prev index next >