annotate test/compiler/arguments/BMICommandLineOptionTestBase.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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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.cli.*;
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
25
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 * Base class for all X86 bit manipulation related command line options.
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
28 */
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
29 public abstract class BMICommandLineOptionTestBase
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
30 extends CPUSpecificCommandLineOptionTest {
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 static final String LZCNT_WARNING =
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
33 "lzcnt instruction is not available on this CPU";
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
34 public static final String TZCNT_WARNING =
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
35 "tzcnt instruction is not available on this CPU";
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
36 public static final String BMI1_WARNING =
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
37 "BMI1 instructions are not available on this CPU";
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
38
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
39 protected final String optionName;
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
40 protected final String warningMessage;
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
41 protected final String errorMessage;
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
42
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 * Construct new test on {@code optionName} option.
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
45 *
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
46 * @param optionName Name of the option to be tested
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
47 * without -XX:[+-] prefix.
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
48 * @param warningMessage Message that can occur in VM output
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
49 * if CPU on test box does not support
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
50 * features required by the option.
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
51 * @param supportedCPUFeatures CPU features requires by the option,
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
52 * that should be supported on test box.
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
53 * @param unsupportedCPUFeatures CPU features requires by the option,
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
54 * that should not be supported on test box.
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
55 */
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
56 public BMICommandLineOptionTestBase(String optionName,
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
57 String warningMessage,
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
58 String supportedCPUFeatures[],
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
59 String unsupportedCPUFeatures[]) {
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
60 super(".*", supportedCPUFeatures, unsupportedCPUFeatures);
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
61 this.optionName = optionName;
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
62 this.warningMessage = warningMessage;
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
63 this.errorMessage = CommandLineOptionTest.
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
64 UNRECOGNIZED_OPTION_ERROR_FORMAT.format(optionName);
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
65 }
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 }
3829d0343db0 8038193: Add command line option tests for BMI options
iignatyev
parents:
diff changeset
68