hotspot/test/runtime/ReservedStack/ReservedStackTest.java
changeset 38931 3cf28d630349
parent 38152 80e5da81fb2c
child 40631 ed82623d7831
equal deleted inserted replaced
38929:1ee62412a66f 38931:3cf28d630349
    25  * @test ReservedStackTest
    25  * @test ReservedStackTest
    26  * @library /testlibrary
    26  * @library /testlibrary
    27  * @modules java.base/jdk.internal.misc
    27  * @modules java.base/jdk.internal.misc
    28  * @modules java.base/jdk.internal.vm.annotation
    28  * @modules java.base/jdk.internal.vm.annotation
    29  * @build jdk.test.lib.*
    29  * @build jdk.test.lib.*
       
    30  * @run main/othervm -Xint ReservedStackTest
    30  * @run main/othervm -XX:-Inline -XX:CompileCommand=exclude,java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread ReservedStackTest
    31  * @run main/othervm -XX:-Inline -XX:CompileCommand=exclude,java/util/concurrent/locks/AbstractOwnableSynchronizer.setExclusiveOwnerThread ReservedStackTest
    31  */
    32  */
    32 
    33 
    33 /* The exclusion of java.util.concurrent.locks.AbstractOwnableSynchronizer.setExclusiveOwnerThread()
    34 /* The exclusion of java.util.concurrent.locks.AbstractOwnableSynchronizer.setExclusiveOwnerThread()
    34  * from the compilable methods is required to ensure that the test will be able
    35  * from the compilable methods is required to ensure that the test will be able
   194             recursiveCall();
   195             recursiveCall();
   195             System.out.println("Framework got StackOverflowError at frame = " + counter);
   196             System.out.println("Framework got StackOverflowError at frame = " + counter);
   196             System.out.println("Test started execution at frame = " + (counter - deframe));
   197             System.out.println("Test started execution at frame = " + (counter - deframe));
   197             String result = test.getResult();
   198             String result = test.getResult();
   198             // The feature is not fully implemented on all platforms,
   199             // The feature is not fully implemented on all platforms,
   199             // corruptions are still possible
   200             // corruptions are still possible.
   200             boolean supportedPlatform = Platform.isSolaris() || Platform.isOSX()
   201             boolean supportedPlatform =
   201                 || (Platform.isLinux() && (Platform.isX86() || Platform.isX64()));
   202                 Platform.isAix() ||
       
   203                 (Platform.isLinux() && (Platform.isPPC() || Platform.isX64() || Platform.isX86())) ||
       
   204                 Platform.isOSX() ||
       
   205                 Platform.isSolaris();
   202             if (supportedPlatform && !result.contains("PASSED")) {
   206             if (supportedPlatform && !result.contains("PASSED")) {
   203                 System.out.println(result);
   207                 System.out.println(result);
   204                 throw new Error(result);
   208                 throw new Error(result);
   205             } else {
   209             } else {
   206                 // Either the test passed or this platform is not supported.
   210                 // Either the test passed or this platform is not supported.