annotate test/gc/TestVerifyDuringStartup.java @ 19147:609480dfa0d8

Create ExplodeLoop plugin prototype. Special sort for blocks from bci block map builder for explode loop methods. Graph builder plugin for customizing static field accesses. New Truffle option TruffleExcludeAssertions default true that excludes assertion code from being partial evaluated in the new partial evaluator.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Thu, 05 Feb 2015 03:25:21 +0100
parents 22194f27fbfb
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
1 /*
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
2 * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
4 *
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
5 * This code is free software; you can redistribute it and/or modify it
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
6 * under the terms of the GNU General Public License version 2 only, as
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
7 * published by the Free Software Foundation.
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
8 *
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
9 * This code is distributed in the hope that it will be useful, but WITHOUT
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
12 * version 2 for more details (a copy is included in the LICENSE file that
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
13 * accompanied this code).
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
14 *
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License version
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
16 * 2 along with this work; if not, write to the Free Software Foundation,
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
18 *
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
20 * or visit www.oracle.com if you need additional information or have any
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
21 * questions.
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
22 */
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
23
9071
68fe50d4f1d5 8011343: Add new flag for verifying the heap during startup
johnc
parents: 8855
diff changeset
24 /* @test TestVerifyDuringStartup.java
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
25 * @key gc
10189
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
26 * @bug 8010463 8011343 8011898
9071
68fe50d4f1d5 8011343: Add new flag for verifying the heap during startup
johnc
parents: 8855
diff changeset
27 * @summary Simple test run with -XX:+VerifyDuringStartup -XX:-UseTLAB to verify 8010463
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
28 * @library /testlibrary
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
29 */
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
30
10189
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
31 import com.oracle.java.testlibrary.JDKToolFinder;
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
32 import com.oracle.java.testlibrary.OutputAnalyzer;
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
33 import com.oracle.java.testlibrary.ProcessTools;
10189
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
34 import java.util.ArrayList;
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
35 import java.util.Collections;
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
36
9071
68fe50d4f1d5 8011343: Add new flag for verifying the heap during startup
johnc
parents: 8855
diff changeset
37 public class TestVerifyDuringStartup {
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
38 public static void main(String args[]) throws Exception {
10189
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
39 ArrayList<String> vmOpts = new ArrayList();
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
40
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
41 String testVmOptsStr = System.getProperty("test.java.opts");
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
42 if (!testVmOptsStr.isEmpty()) {
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
43 String[] testVmOpts = testVmOptsStr.split(" ");
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
44 Collections.addAll(vmOpts, testVmOpts);
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
45 }
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
46 Collections.addAll(vmOpts, new String[] {"-XX:-UseTLAB",
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
47 "-XX:+UnlockDiagnosticVMOptions",
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
48 "-XX:+VerifyDuringStartup",
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
49 "-version"});
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
50
12260
22194f27fbfb 8014905: [TESTBUG] Some hotspot tests should be updated to divide test jdk and compile jdk
ctornqvi
parents: 12187
diff changeset
51 System.out.print("Testing:\n" + JDKToolFinder.getJDKTool("java"));
10189
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
52 for (int i = 0; i < vmOpts.size(); i += 1) {
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
53 System.out.print(" " + vmOpts.get(i));
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
54 }
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
55 System.out.println();
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
56
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
57 ProcessBuilder pb =
10189
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
58 ProcessTools.createJavaProcessBuilder(vmOpts.toArray(new String[vmOpts.size()]));
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
59 OutputAnalyzer output = new OutputAnalyzer(pb.start());
10189
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
60
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
61 System.out.println("Output:\n" + output.getOutput());
3edf23423bb2 8011898: gc/TestVerifyBeforeGCDuringStartup.java: java.lang.RuntimeException: '[Verifying' missing from stdout/stderr: [Error: Could not find or load main class]
johnc
parents: 9071
diff changeset
62
8855
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
63 output.shouldContain("[Verifying");
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
64 output.shouldHaveExitValue(0);
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
65 }
24ef5fb05e0f 8010463: G1: Crashes with -UseTLAB and heap verification
johnc
parents:
diff changeset
66 }