50 #include "compiler/oopMap.hpp"
51 #include "gc/shared/stringdedup/stringDedupThread.hpp"
52 #include "gc/shared/vmStructs_gc.hpp"
53 #include "interpreter/bytecodes.hpp"
54 #include "interpreter/interpreter.hpp"
55 #include "logging/logAsyncWriter.hpp"
56 #include "memory/allocation.hpp"
57 #include "memory/allocation.inline.hpp"
58 #include "memory/heap.hpp"
59 #include "memory/padded.hpp"
60 #include "memory/referenceType.hpp"
61 #include "memory/universe.hpp"
62 #include "memory/virtualspace.hpp"
63 #include "oops/array.hpp"
64 #include "oops/arrayKlass.hpp"
65 #include "oops/arrayOop.hpp"
66 #include "oops/constMethod.hpp"
67 #include "oops/constantPool.hpp"
68 #include "oops/cpCache.hpp"
69 #include "oops/fieldInfo.hpp"
70 #include "oops/instanceClassLoaderKlass.hpp"
71 #include "oops/instanceKlass.hpp"
72 #include "oops/instanceMirrorKlass.hpp"
73 #include "oops/instanceOop.hpp"
74 #include "oops/instanceStackChunkKlass.hpp"
75 #include "oops/klass.hpp"
76 #include "oops/klassVtable.hpp"
77 #include "oops/markWord.hpp"
78 #include "oops/method.hpp"
79 #include "oops/methodCounters.hpp"
80 #include "oops/methodData.hpp"
81 #include "oops/objArrayKlass.hpp"
82 #include "oops/objArrayOop.hpp"
83 #include "oops/oop.inline.hpp"
84 #include "oops/oopHandle.hpp"
85 #include "oops/resolvedFieldEntry.hpp"
86 #include "oops/resolvedIndyEntry.hpp"
87 #include "oops/resolvedMethodEntry.hpp"
88 #include "oops/symbol.hpp"
89 #include "oops/typeArrayKlass.hpp"
212 volatile_nonstatic_field(ArrayKlass, _lower_dimension, ArrayKlass*) \
213 nonstatic_field(ConstantPool, _tags, Array<u1>*) \
214 nonstatic_field(ConstantPool, _cache, ConstantPoolCache*) \
215 nonstatic_field(ConstantPool, _pool_holder, InstanceKlass*) \
216 nonstatic_field(ConstantPool, _operands, Array<u2>*) \
217 nonstatic_field(ConstantPool, _resolved_klasses, Array<Klass*>*) \
218 nonstatic_field(ConstantPool, _length, int) \
219 nonstatic_field(ConstantPool, _minor_version, u2) \
220 nonstatic_field(ConstantPool, _major_version, u2) \
221 nonstatic_field(ConstantPool, _generic_signature_index, u2) \
222 nonstatic_field(ConstantPool, _source_file_name_index, u2) \
223 nonstatic_field(ConstantPoolCache, _resolved_references, OopHandle) \
224 nonstatic_field(ConstantPoolCache, _reference_map, Array<u2>*) \
225 nonstatic_field(ConstantPoolCache, _constant_pool, ConstantPool*) \
226 nonstatic_field(ConstantPoolCache, _resolved_field_entries, Array<ResolvedFieldEntry>*) \
227 nonstatic_field(ResolvedFieldEntry, _cpool_index, u2) \
228 nonstatic_field(ConstantPoolCache, _resolved_method_entries, Array<ResolvedMethodEntry>*) \
229 nonstatic_field(ResolvedMethodEntry, _cpool_index, u2) \
230 nonstatic_field(ConstantPoolCache, _resolved_indy_entries, Array<ResolvedIndyEntry>*) \
231 nonstatic_field(ResolvedIndyEntry, _cpool_index, u2) \
232 volatile_nonstatic_field(InstanceKlass, _array_klasses, ObjArrayKlass*) \
233 nonstatic_field(InstanceKlass, _methods, Array<Method*>*) \
234 nonstatic_field(InstanceKlass, _default_methods, Array<Method*>*) \
235 nonstatic_field(InstanceKlass, _local_interfaces, Array<InstanceKlass*>*) \
236 nonstatic_field(InstanceKlass, _transitive_interfaces, Array<InstanceKlass*>*) \
237 nonstatic_field(InstanceKlass, _fieldinfo_stream, Array<u1>*) \
238 nonstatic_field(InstanceKlass, _constants, ConstantPool*) \
239 nonstatic_field(InstanceKlass, _source_debug_extension, const char*) \
240 nonstatic_field(InstanceKlass, _inner_classes, Array<jushort>*) \
241 nonstatic_field(InstanceKlass, _nest_members, Array<jushort>*) \
242 nonstatic_field(InstanceKlass, _nonstatic_field_size, int) \
243 nonstatic_field(InstanceKlass, _static_field_size, int) \
244 nonstatic_field(InstanceKlass, _static_oop_field_count, u2) \
245 nonstatic_field(InstanceKlass, _nonstatic_oop_map_size, int) \
246 volatile_nonstatic_field(InstanceKlass, _init_state, InstanceKlass::ClassState) \
247 volatile_nonstatic_field(InstanceKlass, _init_thread, JavaThread*) \
248 nonstatic_field(InstanceKlass, _itable_len, int) \
249 nonstatic_field(InstanceKlass, _nest_host_index, u2) \
250 nonstatic_field(InstanceKlass, _reference_type, u1) \
251 volatile_nonstatic_field(InstanceKlass, _oop_map_cache, OopMapCache*) \
252 nonstatic_field(InstanceKlass, _jni_ids, JNIid*) \
1152 declare_unsigned_integer_type(uint32_t) \
1153 declare_unsigned_integer_type(uint64_t) \
1154 \
1155 /******************************************/ \
1156 /* OopDesc hierarchy (NOTE: some missing) */ \
1157 /******************************************/ \
1158 \
1159 declare_toplevel_type(oopDesc) \
1160 declare_type(arrayOopDesc, oopDesc) \
1161 declare_type(objArrayOopDesc, arrayOopDesc) \
1162 declare_type(instanceOopDesc, oopDesc) \
1163 \
1164 /**************************************************/ \
1165 /* MetadataOopDesc hierarchy (NOTE: some missing) */ \
1166 /**************************************************/ \
1167 \
1168 declare_toplevel_type(MetaspaceObj) \
1169 declare_type(Metadata, MetaspaceObj) \
1170 declare_type(Klass, Metadata) \
1171 declare_type(ArrayKlass, Klass) \
1172 declare_type(ObjArrayKlass, ArrayKlass) \
1173 declare_type(TypeArrayKlass, ArrayKlass) \
1174 declare_type(InstanceKlass, Klass) \
1175 declare_type(InstanceClassLoaderKlass, InstanceKlass) \
1176 declare_type(InstanceMirrorKlass, InstanceKlass) \
1177 declare_type(InstanceRefKlass, InstanceKlass) \
1178 declare_type(InstanceStackChunkKlass, InstanceKlass) \
1179 declare_type(ConstantPool, Metadata) \
1180 declare_type(ConstantPoolCache, MetaspaceObj) \
1181 declare_type(MethodData, Metadata) \
1182 declare_type(Method, Metadata) \
1183 declare_type(MethodCounters, MetaspaceObj) \
1184 declare_type(ConstMethod, MetaspaceObj) \
1185 declare_type(Annotations, MetaspaceObj) \
1186 \
1187 declare_toplevel_type(MethodData::CompilerCounters) \
1188 \
1189 declare_toplevel_type(narrowKlass) \
1190 \
1191 declare_toplevel_type(vtableEntry) \
1192 \
1193 declare_toplevel_type(Symbol) \
1194 declare_toplevel_type(Symbol*) \
1534 declare_c2_type(ModINode, Node) \
1535 declare_c2_type(ModLNode, Node) \
1536 declare_c2_type(ModFNode, Node) \
1537 declare_c2_type(ModDNode, Node) \
1538 declare_c2_type(UModINode, Node) \
1539 declare_c2_type(UModLNode, Node) \
1540 declare_c2_type(DivModNode, MultiNode) \
1541 declare_c2_type(DivModINode, DivModNode) \
1542 declare_c2_type(DivModLNode, DivModNode) \
1543 declare_c2_type(UDivModINode, DivModNode) \
1544 declare_c2_type(UDivModLNode, DivModNode) \
1545 declare_c2_type(BoxLockNode, Node) \
1546 declare_c2_type(LoopNode, RegionNode) \
1547 declare_c2_type(CountedLoopNode, LoopNode) \
1548 declare_c2_type(CountedLoopEndNode, IfNode) \
1549 declare_c2_type(MachNode, Node) \
1550 declare_c2_type(MachIdealNode, MachNode) \
1551 declare_c2_type(MachTypeNode, MachNode) \
1552 declare_c2_type(MachBreakpointNode, MachIdealNode) \
1553 declare_c2_type(MachUEPNode, MachIdealNode) \
1554 declare_c2_type(MachPrologNode, MachIdealNode) \
1555 declare_c2_type(MachEpilogNode, MachIdealNode) \
1556 declare_c2_type(MachNopNode, MachIdealNode) \
1557 declare_c2_type(MachSpillCopyNode, MachIdealNode) \
1558 declare_c2_type(MachNullCheckNode, MachIdealNode) \
1559 declare_c2_type(MachProjNode, ProjNode) \
1560 declare_c2_type(MachIfNode, MachNode) \
1561 declare_c2_type(MachJumpNode, MachNode) \
1562 declare_c2_type(MachFastLockNode, MachNode) \
1563 declare_c2_type(MachReturnNode, MachNode) \
1564 declare_c2_type(MachSafePointNode, MachReturnNode) \
1565 declare_c2_type(MachCallNode, MachSafePointNode) \
1566 declare_c2_type(MachCallJavaNode, MachCallNode) \
1567 declare_c2_type(MachCallStaticJavaNode, MachCallJavaNode) \
1568 declare_c2_type(MachCallDynamicJavaNode, MachCallJavaNode) \
1569 declare_c2_type(MachCallRuntimeNode, MachCallNode) \
1570 declare_c2_type(MachHaltNode, MachReturnNode) \
1571 declare_c2_type(MachTempNode, MachNode) \
1572 declare_c2_type(MemNode, Node) \
1573 declare_c2_type(MergeMemNode, Node) \
|
50 #include "compiler/oopMap.hpp"
51 #include "gc/shared/stringdedup/stringDedupThread.hpp"
52 #include "gc/shared/vmStructs_gc.hpp"
53 #include "interpreter/bytecodes.hpp"
54 #include "interpreter/interpreter.hpp"
55 #include "logging/logAsyncWriter.hpp"
56 #include "memory/allocation.hpp"
57 #include "memory/allocation.inline.hpp"
58 #include "memory/heap.hpp"
59 #include "memory/padded.hpp"
60 #include "memory/referenceType.hpp"
61 #include "memory/universe.hpp"
62 #include "memory/virtualspace.hpp"
63 #include "oops/array.hpp"
64 #include "oops/arrayKlass.hpp"
65 #include "oops/arrayOop.hpp"
66 #include "oops/constMethod.hpp"
67 #include "oops/constantPool.hpp"
68 #include "oops/cpCache.hpp"
69 #include "oops/fieldInfo.hpp"
70 #include "oops/flatArrayKlass.hpp"
71 #include "oops/inlineKlass.hpp"
72 #include "oops/instanceClassLoaderKlass.hpp"
73 #include "oops/instanceKlass.hpp"
74 #include "oops/instanceMirrorKlass.hpp"
75 #include "oops/instanceOop.hpp"
76 #include "oops/instanceStackChunkKlass.hpp"
77 #include "oops/klass.hpp"
78 #include "oops/klassVtable.hpp"
79 #include "oops/markWord.hpp"
80 #include "oops/method.hpp"
81 #include "oops/methodCounters.hpp"
82 #include "oops/methodData.hpp"
83 #include "oops/objArrayKlass.hpp"
84 #include "oops/objArrayOop.hpp"
85 #include "oops/oop.inline.hpp"
86 #include "oops/oopHandle.hpp"
87 #include "oops/resolvedFieldEntry.hpp"
88 #include "oops/resolvedIndyEntry.hpp"
89 #include "oops/resolvedMethodEntry.hpp"
90 #include "oops/symbol.hpp"
91 #include "oops/typeArrayKlass.hpp"
214 volatile_nonstatic_field(ArrayKlass, _lower_dimension, ArrayKlass*) \
215 nonstatic_field(ConstantPool, _tags, Array<u1>*) \
216 nonstatic_field(ConstantPool, _cache, ConstantPoolCache*) \
217 nonstatic_field(ConstantPool, _pool_holder, InstanceKlass*) \
218 nonstatic_field(ConstantPool, _operands, Array<u2>*) \
219 nonstatic_field(ConstantPool, _resolved_klasses, Array<Klass*>*) \
220 nonstatic_field(ConstantPool, _length, int) \
221 nonstatic_field(ConstantPool, _minor_version, u2) \
222 nonstatic_field(ConstantPool, _major_version, u2) \
223 nonstatic_field(ConstantPool, _generic_signature_index, u2) \
224 nonstatic_field(ConstantPool, _source_file_name_index, u2) \
225 nonstatic_field(ConstantPoolCache, _resolved_references, OopHandle) \
226 nonstatic_field(ConstantPoolCache, _reference_map, Array<u2>*) \
227 nonstatic_field(ConstantPoolCache, _constant_pool, ConstantPool*) \
228 nonstatic_field(ConstantPoolCache, _resolved_field_entries, Array<ResolvedFieldEntry>*) \
229 nonstatic_field(ResolvedFieldEntry, _cpool_index, u2) \
230 nonstatic_field(ConstantPoolCache, _resolved_method_entries, Array<ResolvedMethodEntry>*) \
231 nonstatic_field(ResolvedMethodEntry, _cpool_index, u2) \
232 nonstatic_field(ConstantPoolCache, _resolved_indy_entries, Array<ResolvedIndyEntry>*) \
233 nonstatic_field(ResolvedIndyEntry, _cpool_index, u2) \
234 volatile_nonstatic_field(InstanceKlass, _array_klasses, ArrayKlass*) \
235 nonstatic_field(InstanceKlass, _methods, Array<Method*>*) \
236 nonstatic_field(InstanceKlass, _default_methods, Array<Method*>*) \
237 nonstatic_field(InstanceKlass, _local_interfaces, Array<InstanceKlass*>*) \
238 nonstatic_field(InstanceKlass, _transitive_interfaces, Array<InstanceKlass*>*) \
239 nonstatic_field(InstanceKlass, _fieldinfo_stream, Array<u1>*) \
240 nonstatic_field(InstanceKlass, _constants, ConstantPool*) \
241 nonstatic_field(InstanceKlass, _source_debug_extension, const char*) \
242 nonstatic_field(InstanceKlass, _inner_classes, Array<jushort>*) \
243 nonstatic_field(InstanceKlass, _nest_members, Array<jushort>*) \
244 nonstatic_field(InstanceKlass, _nonstatic_field_size, int) \
245 nonstatic_field(InstanceKlass, _static_field_size, int) \
246 nonstatic_field(InstanceKlass, _static_oop_field_count, u2) \
247 nonstatic_field(InstanceKlass, _nonstatic_oop_map_size, int) \
248 volatile_nonstatic_field(InstanceKlass, _init_state, InstanceKlass::ClassState) \
249 volatile_nonstatic_field(InstanceKlass, _init_thread, JavaThread*) \
250 nonstatic_field(InstanceKlass, _itable_len, int) \
251 nonstatic_field(InstanceKlass, _nest_host_index, u2) \
252 nonstatic_field(InstanceKlass, _reference_type, u1) \
253 volatile_nonstatic_field(InstanceKlass, _oop_map_cache, OopMapCache*) \
254 nonstatic_field(InstanceKlass, _jni_ids, JNIid*) \
1154 declare_unsigned_integer_type(uint32_t) \
1155 declare_unsigned_integer_type(uint64_t) \
1156 \
1157 /******************************************/ \
1158 /* OopDesc hierarchy (NOTE: some missing) */ \
1159 /******************************************/ \
1160 \
1161 declare_toplevel_type(oopDesc) \
1162 declare_type(arrayOopDesc, oopDesc) \
1163 declare_type(objArrayOopDesc, arrayOopDesc) \
1164 declare_type(instanceOopDesc, oopDesc) \
1165 \
1166 /**************************************************/ \
1167 /* MetadataOopDesc hierarchy (NOTE: some missing) */ \
1168 /**************************************************/ \
1169 \
1170 declare_toplevel_type(MetaspaceObj) \
1171 declare_type(Metadata, MetaspaceObj) \
1172 declare_type(Klass, Metadata) \
1173 declare_type(ArrayKlass, Klass) \
1174 declare_type(FlatArrayKlass, ArrayKlass) \
1175 declare_type(ObjArrayKlass, ArrayKlass) \
1176 declare_type(TypeArrayKlass, ArrayKlass) \
1177 declare_type(InstanceKlass, Klass) \
1178 declare_type(InlineKlass, InstanceKlass) \
1179 declare_type(InstanceClassLoaderKlass, InstanceKlass) \
1180 declare_type(InstanceMirrorKlass, InstanceKlass) \
1181 declare_type(InstanceRefKlass, InstanceKlass) \
1182 declare_type(InstanceStackChunkKlass, InstanceKlass) \
1183 declare_type(ConstantPool, Metadata) \
1184 declare_type(ConstantPoolCache, MetaspaceObj) \
1185 declare_type(MethodData, Metadata) \
1186 declare_type(Method, Metadata) \
1187 declare_type(MethodCounters, MetaspaceObj) \
1188 declare_type(ConstMethod, MetaspaceObj) \
1189 declare_type(Annotations, MetaspaceObj) \
1190 \
1191 declare_toplevel_type(MethodData::CompilerCounters) \
1192 \
1193 declare_toplevel_type(narrowKlass) \
1194 \
1195 declare_toplevel_type(vtableEntry) \
1196 \
1197 declare_toplevel_type(Symbol) \
1198 declare_toplevel_type(Symbol*) \
1538 declare_c2_type(ModINode, Node) \
1539 declare_c2_type(ModLNode, Node) \
1540 declare_c2_type(ModFNode, Node) \
1541 declare_c2_type(ModDNode, Node) \
1542 declare_c2_type(UModINode, Node) \
1543 declare_c2_type(UModLNode, Node) \
1544 declare_c2_type(DivModNode, MultiNode) \
1545 declare_c2_type(DivModINode, DivModNode) \
1546 declare_c2_type(DivModLNode, DivModNode) \
1547 declare_c2_type(UDivModINode, DivModNode) \
1548 declare_c2_type(UDivModLNode, DivModNode) \
1549 declare_c2_type(BoxLockNode, Node) \
1550 declare_c2_type(LoopNode, RegionNode) \
1551 declare_c2_type(CountedLoopNode, LoopNode) \
1552 declare_c2_type(CountedLoopEndNode, IfNode) \
1553 declare_c2_type(MachNode, Node) \
1554 declare_c2_type(MachIdealNode, MachNode) \
1555 declare_c2_type(MachTypeNode, MachNode) \
1556 declare_c2_type(MachBreakpointNode, MachIdealNode) \
1557 declare_c2_type(MachUEPNode, MachIdealNode) \
1558 declare_c2_type(MachVEPNode, MachIdealNode) \
1559 declare_c2_type(MachPrologNode, MachIdealNode) \
1560 declare_c2_type(MachEpilogNode, MachIdealNode) \
1561 declare_c2_type(MachNopNode, MachIdealNode) \
1562 declare_c2_type(MachSpillCopyNode, MachIdealNode) \
1563 declare_c2_type(MachNullCheckNode, MachIdealNode) \
1564 declare_c2_type(MachProjNode, ProjNode) \
1565 declare_c2_type(MachIfNode, MachNode) \
1566 declare_c2_type(MachJumpNode, MachNode) \
1567 declare_c2_type(MachFastLockNode, MachNode) \
1568 declare_c2_type(MachReturnNode, MachNode) \
1569 declare_c2_type(MachSafePointNode, MachReturnNode) \
1570 declare_c2_type(MachCallNode, MachSafePointNode) \
1571 declare_c2_type(MachCallJavaNode, MachCallNode) \
1572 declare_c2_type(MachCallStaticJavaNode, MachCallJavaNode) \
1573 declare_c2_type(MachCallDynamicJavaNode, MachCallJavaNode) \
1574 declare_c2_type(MachCallRuntimeNode, MachCallNode) \
1575 declare_c2_type(MachHaltNode, MachReturnNode) \
1576 declare_c2_type(MachTempNode, MachNode) \
1577 declare_c2_type(MemNode, Node) \
1578 declare_c2_type(MergeMemNode, Node) \
|