8350982: -server|-client causes fatal exception on static JDK

Reviewed-by: iklam, alanb
This commit is contained in:
Jiangli Zhou 2025-03-12 17:20:16 +00:00
parent 2371696781
commit 02c850fca8
14 changed files with 14 additions and 17 deletions

View File

@ -26,6 +26,7 @@
* @bug 8319784 * @bug 8319784
* @summary Check that the JVM is able to dump the heap even when there are ReduceAllocationMerge in the scope. * @summary Check that the JVM is able to dump the heap even when there are ReduceAllocationMerge in the scope.
* @library /test/lib / * @library /test/lib /
* @requires vm.flavor == "server" & !vm.emulatedClient
* @run main/othervm compiler.c2.TestReduceAllocationAndHeapDump * @run main/othervm compiler.c2.TestReduceAllocationAndHeapDump
*/ */
@ -45,7 +46,6 @@ public class TestReduceAllocationAndHeapDump {
} }
String[] dumperArgs = { String[] dumperArgs = {
"-server",
"-XX:CompileThresholdScaling=0.01", "-XX:CompileThresholdScaling=0.01",
"-XX:+HeapDumpAfterFullGC", "-XX:+HeapDumpAfterFullGC",
"-XX:HeapDumpPath=" + dumpDirectory.getAbsolutePath(), "-XX:HeapDumpPath=" + dumpDirectory.getAbsolutePath(),

View File

@ -36,7 +36,6 @@
* -XX:-UseCompressedClassPointers * -XX:-UseCompressedClassPointers
* -Xbatch * -Xbatch
* -Xcomp * -Xcomp
* -server
* compiler.c2.TestReduceAllocationAndLoadKlass * compiler.c2.TestReduceAllocationAndLoadKlass
*/ */

View File

@ -36,7 +36,6 @@
* -XX:-TieredCompilation * -XX:-TieredCompilation
* -Xbatch * -Xbatch
* -Xcomp * -Xcomp
* -server
* compiler.c2.TestReduceAllocationAndNonExactAllocate * compiler.c2.TestReduceAllocationAndNonExactAllocate
*/ */

View File

@ -30,7 +30,7 @@
* @compile -XDstringConcat=inline TestReduceAllocationAndNullableLoads.java * @compile -XDstringConcat=inline TestReduceAllocationAndNullableLoads.java
* @run main/othervm -XX:CompileCommand=compileonly,*TestReduceAllocationAndNullableLoads*::* * @run main/othervm -XX:CompileCommand=compileonly,*TestReduceAllocationAndNullableLoads*::*
* -XX:CompileCommand=dontinline,*TestReduceAllocationAndNullableLoads*::* * -XX:CompileCommand=dontinline,*TestReduceAllocationAndNullableLoads*::*
* -XX:-TieredCompilation -Xcomp -server * -XX:-TieredCompilation -Xcomp
* compiler.c2.TestReduceAllocationAndNullableLoads * compiler.c2.TestReduceAllocationAndNullableLoads
*/ */

View File

@ -28,7 +28,7 @@
* @requires vm.flagless & vm.compiler2.enabled & vm.opt.final.EliminateAllocations * @requires vm.flagless & vm.compiler2.enabled & vm.opt.final.EliminateAllocations
* @run main/othervm -XX:CompileCommand=compileonly,*TestReduceAllocationAndPointerComparisons*::* * @run main/othervm -XX:CompileCommand=compileonly,*TestReduceAllocationAndPointerComparisons*::*
* -XX:CompileCommand=dontinline,*TestReduceAllocationAndPointerComparisons*::* * -XX:CompileCommand=dontinline,*TestReduceAllocationAndPointerComparisons*::*
* -XX:-TieredCompilation -Xcomp -server * -XX:-TieredCompilation -Xcomp
* compiler.c2.TestReduceAllocationAndPointerComparisons * compiler.c2.TestReduceAllocationAndPointerComparisons
* @run main compiler.c2.TestReduceAllocationAndPointerComparisons * @run main compiler.c2.TestReduceAllocationAndPointerComparisons
*/ */

View File

@ -40,7 +40,7 @@ public class TestIterativeEA {
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder( ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder(
"-server", "-XX:-TieredCompilation", "-Xbatch", "-XX:+PrintEliminateAllocations", "-XX:-TieredCompilation", "-Xbatch", "-XX:+PrintEliminateAllocations",
Launcher.class.getName()); Launcher.class.getName());
OutputAnalyzer analyzer = new OutputAnalyzer(pb.start()); OutputAnalyzer analyzer = new OutputAnalyzer(pb.start());

View File

@ -35,7 +35,6 @@
* -XX:CompileCommand=inline,*Point*::* * -XX:CompileCommand=inline,*Point*::*
* -XX:CompileCommand=exclude,*::dummy* * -XX:CompileCommand=exclude,*::dummy*
* -Xbatch * -Xbatch
* -server
* compiler.escapeAnalysis.TestReduceAllocationAndNonReduciblePhi * compiler.escapeAnalysis.TestReduceAllocationAndNonReduciblePhi
* *
* @run main compiler.escapeAnalysis.TestReduceAllocationAndNonReduciblePhi * @run main compiler.escapeAnalysis.TestReduceAllocationAndNonReduciblePhi

View File

@ -29,6 +29,7 @@
* @modules java.base/jdk.internal.misc * @modules java.base/jdk.internal.misc
* @library /test/lib * @library /test/lib
* @requires vm.flagless * @requires vm.flagless
* @requires vm.flavor == "server" & !vm.emulatedClient
* *
* @run driver compiler.inlining.InlineBimorphicVirtualCallAfterMorphismChanged * @run driver compiler.inlining.InlineBimorphicVirtualCallAfterMorphismChanged
*/ */
@ -93,7 +94,7 @@ public class InlineBimorphicVirtualCallAfterMorphismChanged {
private static void test(String option) throws Exception { private static void test(String option) throws Exception {
ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder( ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder(
"-server", "-XX:+UnlockDiagnosticVMOptions", "-XX:+PrintInlining", "-XX:+UnlockDiagnosticVMOptions", "-XX:+PrintInlining",
"-XX:CompileCommand=compileonly,*::callSiteHolder", option, "-XX:CompileCommand=compileonly,*::callSiteHolder", option,
AbstractBase.class.getName() AbstractBase.class.getName()
); );

View File

@ -34,7 +34,7 @@
* @run driver jdk.test.lib.helpers.ClassFileInstaller jdk.test.whitebox.WhiteBox * @run driver jdk.test.lib.helpers.ClassFileInstaller jdk.test.whitebox.WhiteBox
* *
* @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
* -server -XX:-BackgroundCompilation -XX:-UseOnStackReplacement * -XX:-BackgroundCompilation -XX:-UseOnStackReplacement
* compiler.intrinsics.math.TestMinMaxIntrinsics * compiler.intrinsics.math.TestMinMaxIntrinsics
*/ */

View File

@ -39,13 +39,13 @@
* @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
* -XX:-BackgroundCompilation -XX:-UseOnStackReplacement * -XX:-BackgroundCompilation -XX:-UseOnStackReplacement
* -XX:CompileThreshold=10000 * -XX:CompileThreshold=10000
* -server -XX:-TieredCompilation -XX:TypeProfileLevel=020 * -XX:-TieredCompilation -XX:TypeProfileLevel=020
* -XX:+UnlockExperimentalVMOptions -XX:PerMethodSpecTrapLimit=5000 -XX:PerMethodTrapLimit=100 * -XX:+UnlockExperimentalVMOptions -XX:PerMethodSpecTrapLimit=5000 -XX:PerMethodTrapLimit=100
* compiler.profiling.TestTypeProfiling * compiler.profiling.TestTypeProfiling
* @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI * @run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
* -XX:-BackgroundCompilation -XX:-UseOnStackReplacement * -XX:-BackgroundCompilation -XX:-UseOnStackReplacement
* -XX:CompileThreshold=10000 * -XX:CompileThreshold=10000
* -server -XX:-TieredCompilation -XX:TypeProfileLevel=200 * -XX:-TieredCompilation -XX:TypeProfileLevel=200
* -XX:+UnlockExperimentalVMOptions -XX:PerMethodSpecTrapLimit=5000 -XX:PerMethodTrapLimit=100 * -XX:+UnlockExperimentalVMOptions -XX:PerMethodSpecTrapLimit=5000 -XX:PerMethodTrapLimit=100
* compiler.profiling.TestTypeProfiling * compiler.profiling.TestTypeProfiling
*/ */

View File

@ -33,7 +33,7 @@ import java.io.IOException;
* @requires vm.gc.G1 * @requires vm.gc.G1
* @requires vm.flavor == "server" & !vm.emulatedClient * @requires vm.flavor == "server" & !vm.emulatedClient
* @summary Stress the G1 GC by trying to make old objects more likely to be garbage than young objects. * @summary Stress the G1 GC by trying to make old objects more likely to be garbage than young objects.
* @run main/othervm/timeout=200 -Xlog:gc*=info -Xmx256m -server -XX:+UseG1GC gc.stress.gcbasher.TestGCBasherWithG1 120000 * @run main/othervm/timeout=200 -Xlog:gc*=info -Xmx256m -XX:+UseG1GC gc.stress.gcbasher.TestGCBasherWithG1 120000
*/ */
public class TestGCBasherWithG1 { public class TestGCBasherWithG1 {
public static void main(String[] args) throws IOException { public static void main(String[] args) throws IOException {

View File

@ -33,7 +33,7 @@ import java.io.IOException;
* @requires vm.gc.Parallel * @requires vm.gc.Parallel
* @requires vm.flavor == "server" & !vm.emulatedClient * @requires vm.flavor == "server" & !vm.emulatedClient
* @summary Stress the Parallel GC by trying to make old objects more likely to be garbage than young objects. * @summary Stress the Parallel GC by trying to make old objects more likely to be garbage than young objects.
* @run main/othervm/timeout=200 -Xlog:gc*=info -Xmx256m -server -XX:+UseParallelGC -XX:-UseGCOverheadLimit gc.stress.gcbasher.TestGCBasherWithParallel 120000 * @run main/othervm/timeout=200 -Xlog:gc*=info -Xmx256m -XX:+UseParallelGC -XX:-UseGCOverheadLimit gc.stress.gcbasher.TestGCBasherWithParallel 120000
*/ */
public class TestGCBasherWithParallel { public class TestGCBasherWithParallel {
public static void main(String[] args) throws IOException { public static void main(String[] args) throws IOException {

View File

@ -33,7 +33,7 @@ import java.io.IOException;
* @requires vm.gc.Serial * @requires vm.gc.Serial
* @requires vm.flavor == "server" & !vm.emulatedClient * @requires vm.flavor == "server" & !vm.emulatedClient
* @summary Stress the Serial GC by trying to make old objects more likely to be garbage than young objects. * @summary Stress the Serial GC by trying to make old objects more likely to be garbage than young objects.
* @run main/othervm/timeout=200 -Xlog:gc*=info -Xmx256m -server -XX:+UseSerialGC gc.stress.gcbasher.TestGCBasherWithSerial 120000 * @run main/othervm/timeout=200 -Xlog:gc*=info -Xmx256m -XX:+UseSerialGC gc.stress.gcbasher.TestGCBasherWithSerial 120000
*/ */
public class TestGCBasherWithSerial { public class TestGCBasherWithSerial {
public static void main(String[] args) throws IOException { public static void main(String[] args) throws IOException {

View File

@ -25,8 +25,7 @@
* @test * @test
* @requires vm.cds * @requires vm.cds
* @requires vm.flagless * @requires vm.flagless
* @bug 8005933 * @summary -Xshare:auto is the default
* @summary -Xshare:auto is the default when -Xshare is not specified
* @library /test/lib * @library /test/lib
* @modules java.base/jdk.internal.misc * @modules java.base/jdk.internal.misc
* java.management * java.management
@ -40,7 +39,7 @@ import jdk.test.lib.process.OutputAnalyzer;
public class XShareAuto { public class XShareAuto {
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder( ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder(
"-server", "-XX:+UnlockDiagnosticVMOptions", "-XX:+UnlockDiagnosticVMOptions",
"-XX:SharedArchiveFile=./XShareAuto.jsa", "-Xshare:dump", "-Xlog:cds"); "-XX:SharedArchiveFile=./XShareAuto.jsa", "-Xshare:dump", "-Xlog:cds");
OutputAnalyzer output = new OutputAnalyzer(pb.start()); OutputAnalyzer output = new OutputAnalyzer(pb.start());
output.shouldContain("Loading classes to share"); output.shouldContain("Loading classes to share");