Mercurial > hg > truffle
annotate agent/src/share/classes/sun/jvm/hotspot/debugger/win32/coff/COFFSymbolConstants.java @ 3972:4f93f0d00802
7059019: G1: add G1 support to the SA
Summary: Extend the SA to recognize the G1CollectedHeap and implement any code that's needed by our serviceability tools (jmap, jinfo, jstack, etc.) that depend on the SA.
Reviewed-by: never, poonam, johnc
author | tonyp |
---|---|
date | Tue, 20 Sep 2011 09:59:59 -0400 |
parents | c18cbe5936b8 |
children |
rev | line source |
---|---|
0 | 1 /* |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
0
diff
changeset
|
2 * Copyright (c) 2000, Oracle and/or its affiliates. All rights reserved. |
0 | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | |
5 * This code is free software; you can redistribute it and/or modify it | |
6 * under the terms of the GNU General Public License version 2 only, as | |
7 * published by the Free Software Foundation. | |
8 * | |
9 * This code is distributed in the hope that it will be useful, but WITHOUT | |
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
12 * version 2 for more details (a copy is included in the LICENSE file that | |
13 * accompanied this code). | |
14 * | |
15 * You should have received a copy of the GNU General Public License version | |
16 * 2 along with this work; if not, write to the Free Software Foundation, | |
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | |
18 * | |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
0
diff
changeset
|
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
0
diff
changeset
|
20 * or visit www.oracle.com if you need additional information or have any |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
0
diff
changeset
|
21 * questions. |
0 | 22 * |
23 */ | |
24 | |
25 package sun.jvm.hotspot.debugger.win32.coff; | |
26 | |
27 /** Constants providing information about the section number, type | |
28 representation, and storage class of symbols. (Some of the | |
29 descriptions are taken directly from Microsoft's documentation and | |
30 are copyrighted by Microsoft.) */ | |
31 | |
32 public interface COFFSymbolConstants { | |
33 // | |
34 // Section Number Values | |
35 // | |
36 | |
37 /** Symbol record is not yet assigned a section. If the value is 0 | |
38 this indicates a references to an external symbol defined | |
39 elsewhere. If the value is non-zero this is a common symbol with | |
40 a size specified by the value. */ | |
41 public static final short IMAGE_SYM_UNDEFINED = (short) 0; | |
42 /** The symbol has an absolute (non-relocatable) value and is not an | |
43 address. */ | |
44 public static final short IMAGE_SYM_ABSOLUTE = (short) -1; | |
45 /** The symbol provides general type or debugging information but | |
46 does not correspond to a section. Microsoft tools use this | |
47 setting along with .file records (storage class FILE). */ | |
48 public static final short IMAGE_SYM_DEBUG = (short) -2; | |
49 | |
50 // | |
51 // Type Representation | |
52 // | |
53 | |
54 /** No type information or unknown base type. Microsoft tools use | |
55 this setting. */ | |
56 public static final short IMAGE_SYM_TYPE_NULL = (short) 0; | |
57 /** No valid type; used with void pointers and functions. */ | |
58 public static final short IMAGE_SYM_TYPE_VOID = (short) 1; | |
59 /** Character (signed byte). */ | |
60 public static final short IMAGE_SYM_TYPE_CHAR = (short) 2; | |
61 /** Two-byte signed integer. */ | |
62 public static final short IMAGE_SYM_TYPE_SHORT = (short) 3; | |
63 /** Natural integer type (normally four bytes in Windows NT). */ | |
64 public static final short IMAGE_SYM_TYPE_INT = (short) 4; | |
65 /** Four-byte signed integer. */ | |
66 public static final short IMAGE_SYM_TYPE_LONG = (short) 5; | |
67 /** Four-byte floating-point number. */ | |
68 public static final short IMAGE_SYM_TYPE_FLOAT = (short) 6; | |
69 /** Eight-byte floating-point number. */ | |
70 public static final short IMAGE_SYM_TYPE_DOUBLE = (short) 7; | |
71 /** Structure. */ | |
72 public static final short IMAGE_SYM_TYPE_STRUCT = (short) 8; | |
73 /** Union. */ | |
74 public static final short IMAGE_SYM_TYPE_UNION = (short) 9; | |
75 /** Enumerated type. */ | |
76 public static final short IMAGE_SYM_TYPE_ENUM = (short) 10; | |
77 /** Member of enumeration (a specific value). */ | |
78 public static final short IMAGE_SYM_TYPE_MOE = (short) 11; | |
79 /** Byte; unsigned one-byte integer. */ | |
80 public static final short IMAGE_SYM_TYPE_BYTE = (short) 12; | |
81 /** Word; unsigned two-byte integer. */ | |
82 public static final short IMAGE_SYM_TYPE_WORD = (short) 13; | |
83 /** Unsigned integer of natural size (normally, four bytes). */ | |
84 public static final short IMAGE_SYM_TYPE_UINT = (short) 14; | |
85 /** Unsigned four-byte integer. */ | |
86 public static final short IMAGE_SYM_TYPE_DWORD = (short) 15; | |
87 | |
88 /** No derived type; the symbol is a simple scalar variable. */ | |
89 public static final short IMAGE_SYM_DTYPE_NULL = (short) 0; | |
90 /** Pointer to base type. */ | |
91 public static final short IMAGE_SYM_DTYPE_POINTER = (short) 1; | |
92 /** Function returning base type. */ | |
93 public static final short IMAGE_SYM_DTYPE_FUNCTION = (short) 2; | |
94 /** Array of base type. */ | |
95 public static final short IMAGE_SYM_DTYPE_ARRAY = (short) 3; | |
96 | |
97 // | |
98 // Storage Class | |
99 // | |
100 | |
101 /** (0xFF) Special symbol representing end of function, for | |
102 debugging purposes. */ | |
103 public static final byte IMAGE_SYM_CLASS_END_OF_FUNCTION = (byte) -1; | |
104 /** No storage class assigned. */ | |
105 public static final byte IMAGE_SYM_CLASS_NULL = (byte) 0; | |
106 /** Automatic (stack) variable. The Value field specifies stack | |
107 frame offset. */ | |
108 public static final byte IMAGE_SYM_CLASS_AUTOMATIC = (byte) 1; | |
109 /** Used by Microsoft tools for external symbols. The Value field | |
110 indicates the size if the section number is IMAGE_SYM_UNDEFINED | |
111 (0). If the section number is not 0, then the Value field | |
112 specifies the offset within the section. */ | |
113 public static final byte IMAGE_SYM_CLASS_EXTERNAL = 2; | |
114 /** The Value field specifies the offset of the symbol within the | |
115 section. If the Value is 0, then the symbol represents a section | |
116 name. */ | |
117 public static final byte IMAGE_SYM_CLASS_STATIC = (byte) 3; | |
118 /** Register variable. The Value field specifies register number. */ | |
119 public static final byte IMAGE_SYM_CLASS_REGISTER = (byte) 4; | |
120 /** Symbol is defined externally. */ | |
121 public static final byte IMAGE_SYM_CLASS_EXTERNAL_DEF = (byte) 5; | |
122 /** Code label defined within the module. The Value field specifies | |
123 the offset of the symbol within the section. */ | |
124 public static final byte IMAGE_SYM_CLASS_LABEL = (byte) 6; | |
125 /** Reference to a code label not defined. */ | |
126 public static final byte IMAGE_SYM_CLASS_UNDEFINED_LABEL = (byte) 7; | |
127 /** Structure member. The Value field specifies nth member. */ | |
128 public static final byte IMAGE_SYM_CLASS_MEMBER_OF_STRUCT = (byte) 8; | |
129 /** Formal argument (parameter) of a function. The Value field | |
130 specifies nth argument. */ | |
131 public static final byte IMAGE_SYM_CLASS_ARGUMENT = (byte) 9; | |
132 /** Structure tag-name entry. */ | |
133 public static final byte IMAGE_SYM_CLASS_STRUCT_TAG = (byte) 10; | |
134 /** Union member. The Value field specifies nth member. */ | |
135 public static final byte IMAGE_SYM_CLASS_MEMBER_OF_UNION = (byte) 11; | |
136 /** Union tag-name entry. */ | |
137 public static final byte IMAGE_SYM_CLASS_UNION_TAG = (byte) 12; | |
138 /** Typedef entry. */ | |
139 public static final byte IMAGE_SYM_CLASS_TYPE_DEFINITION = (byte) 13; | |
140 /** Static data declaration. */ | |
141 public static final byte IMAGE_SYM_CLASS_UNDEFINED_STATIC = (byte) 14; | |
142 /** Enumerated type tagname entry. */ | |
143 public static final byte IMAGE_SYM_CLASS_ENUM_TAG = (byte) 15; | |
144 /** Member of enumeration. Value specifies nth member. */ | |
145 public static final byte IMAGE_SYM_CLASS_MEMBER_OF_ENUM = (byte) 16; | |
146 /** Register parameter. */ | |
147 public static final byte IMAGE_SYM_CLASS_REGISTER_PARAM = (byte) 17; | |
148 /** Bit-field reference. Value specifies nth bit in the bit field. */ | |
149 public static final byte IMAGE_SYM_CLASS_BIT_FIELD = (byte) 18; | |
150 /** A .bb (beginning of block) or .eb (end of block) record. Value | |
151 is the relocatable address of the code location. */ | |
152 public static final byte IMAGE_SYM_CLASS_BLOCK = (byte) 100; | |
153 /** Used by Microsoft tools for symbol records that define the | |
154 extent of a function: begin function (named .bf), end function | |
155 (.ef), and lines in function (.lf). For .lf records, Value gives | |
156 the number of source lines in the function. For .ef records, | |
157 Value gives the size of function code. */ | |
158 public static final byte IMAGE_SYM_CLASS_FUNCTION = (byte) 101; | |
159 /** End of structure entry. */ | |
160 public static final byte IMAGE_SYM_CLASS_END_OF_STRUCT = (byte) 102; | |
161 /** Used by Microsoft tools, as well as traditional COFF format, for | |
162 the source-file symbol record. The symbol is followed by | |
163 auxiliary records that name the file. */ | |
164 public static final byte IMAGE_SYM_CLASS_FILE = (byte) 103; | |
165 /** Definition of a section (Microsoft tools use STATIC storage | |
166 class instead). */ | |
167 public static final byte IMAGE_SYM_CLASS_SECTION = (byte) 104; | |
168 /** Weak external. */ | |
169 public static final byte IMAGE_SYM_CLASS_WEAK_EXTERNAL = (byte) 105; | |
170 } |