Mercurial > hg > truffle
annotate test/compiler/arguments/BMIUnsupportedCPUTest.java @ 20218:828056cf311f
8040792: G1: Memory usage calculation uses sizeof(this) instead of sizeof(classname)
Summary: A few locations in the code use sizeof(this) which returns the size of the pointer instead of sizeof(classname) which returns the size of the sum of its members. This change fixes these errors and adds a few tests.
Reviewed-by: mgerdin, brutisso
author | tschatzl |
---|---|
date | Mon, 21 Jul 2014 09:40:19 +0200 |
parents | 3829d0343db0 |
children |
rev | line source |
---|---|
17816
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
1 /* |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
2 * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
4 * |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
5 * This code is free software; you can redistribute it and/or modify it |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
6 * under the terms of the GNU General Public License version 2 only, as |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
7 * published by the Free Software Foundation. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
8 * |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
9 * This code is distributed in the hope that it will be useful, but WITHOUT |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
12 * version 2 for more details (a copy is included in the LICENSE file that |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
13 * accompanied this code). |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
14 * |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
15 * You should have received a copy of the GNU General Public License version |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
16 * 2 along with this work; if not, write to the Free Software Foundation, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
18 * |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
20 * or visit www.oracle.com if you need additional information or have any |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
21 * questions. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
22 */ |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
23 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
24 import com.oracle.java.testlibrary.*; |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
25 import com.oracle.java.testlibrary.cli.*; |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
26 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
27 /** |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
28 * Test on bit manipulation related command line options, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
29 * that should be executed on CPU that does not support |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
30 * required features. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
31 */ |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
32 public class BMIUnsupportedCPUTest extends BMICommandLineOptionTestBase { |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
33 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
34 /** |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
35 * Construct new test on {@code optionName} option. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
36 * |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
37 * @param optionName Name of the option to be tested |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
38 * without -XX:[+-] prefix. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
39 * @param warningMessage Message that can occur in VM output |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
40 * if CPU on test box does not support |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
41 * features required by the option. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
42 * @param cpuFeatures CPU features requires by the option. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
43 */ |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
44 public BMIUnsupportedCPUTest(String optionName, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
45 String warningMessage, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
46 String... cpuFeatures) { |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
47 super(optionName, warningMessage, null, cpuFeatures); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
48 } |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
49 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
50 @Override |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
51 public void runTestCases() throws Throwable { |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
52 if (Platform.isX86() || Platform.isX64()) { |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
53 unsupportedX86CPUTestCases(); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
54 } else { |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
55 unsupportedNonX86CPUTestCases(); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
56 } |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
57 } |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
58 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
59 /** |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
60 * Run test cases common for all bit manipulation related VM options |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
61 * targeted to X86 CPU that does not support required features. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
62 * |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
63 * @throws Throwable if test failed. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
64 */ |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
65 public void unsupportedX86CPUTestCases() throws Throwable { |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
66 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
67 // verify that VM will succesfully start up, but output will |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
68 // contain a warning |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
69 CommandLineOptionTest. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
70 verifyJVMStartup("-XX:+" + optionName, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
71 new String[] { warningMessage }, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
72 new String[] { errorMessage }, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
73 ExitCode.OK); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
74 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
75 // verify that VM will succesfully startup without any warnings |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
76 CommandLineOptionTest. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
77 verifyJVMStartup("-XX:-" + optionName, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
78 null, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
79 new String[] { warningMessage, errorMessage }, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
80 ExitCode.OK); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
81 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
82 // verify that on unsupported CPUs option is off by default |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
83 CommandLineOptionTest.verifyOptionValue(optionName, "false"); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
84 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
85 // verify that on unsupported CPUs option will be off even if |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
86 // it was explicitly turned on by uset |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
87 CommandLineOptionTest.verifyOptionValue(optionName, "false", |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
88 "-XX:+" + optionName); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
89 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
90 } |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
91 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
92 /** |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
93 * Run test cases common for all bit manipulation related VM options |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
94 * targeted to non-X86 CPU that does not support required features. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
95 * |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
96 * @throws Throwable if test failed. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
97 */ |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
98 public void unsupportedNonX86CPUTestCases() throws Throwable { |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
99 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
100 // verify that VM known nothing about tested option |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
101 CommandLineOptionTest. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
102 verifyJVMStartup("-XX:+" + optionName, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
103 new String[] { errorMessage }, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
104 null, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
105 ExitCode.FAIL); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
106 |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
107 CommandLineOptionTest. |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
108 verifyJVMStartup("-XX:-" + optionName, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
109 new String[] { errorMessage }, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
110 null, |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
111 ExitCode.FAIL); |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
112 } |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
113 } |
3829d0343db0
8038193: Add command line option tests for BMI options
iignatyev
parents:
diff
changeset
|
114 |