Mercurial > hg > graal-jvmci-8
comparison src/share/vm/runtime/vmStructs.cpp @ 6948:e522a00b91aa
Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/ after NPG - C++ build works
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Mon, 12 Nov 2012 23:14:12 +0100 |
parents | c38f13903fdf 18fb7da42534 |
children | 2cb439954abf |
comparison
equal
deleted
inserted
replaced
6711:ae13cc658b80 | 6948:e522a00b91aa |
---|---|
49 #include "gc_implementation/shared/mutableSpace.hpp" | 49 #include "gc_implementation/shared/mutableSpace.hpp" |
50 #include "gc_interface/collectedHeap.hpp" | 50 #include "gc_interface/collectedHeap.hpp" |
51 #include "interpreter/bytecodeInterpreter.hpp" | 51 #include "interpreter/bytecodeInterpreter.hpp" |
52 #include "interpreter/bytecodes.hpp" | 52 #include "interpreter/bytecodes.hpp" |
53 #include "interpreter/interpreter.hpp" | 53 #include "interpreter/interpreter.hpp" |
54 #include "memory/allocation.hpp" | |
54 #include "memory/cardTableRS.hpp" | 55 #include "memory/cardTableRS.hpp" |
55 #include "memory/compactPermGen.hpp" | |
56 #include "memory/defNewGeneration.hpp" | 56 #include "memory/defNewGeneration.hpp" |
57 #include "memory/freeBlockDictionary.hpp" | 57 #include "memory/freeBlockDictionary.hpp" |
58 #include "memory/genCollectedHeap.hpp" | 58 #include "memory/genCollectedHeap.hpp" |
59 #include "memory/generation.hpp" | 59 #include "memory/generation.hpp" |
60 #include "memory/generationSpec.hpp" | 60 #include "memory/generationSpec.hpp" |
61 #include "memory/heap.hpp" | 61 #include "memory/heap.hpp" |
62 #include "memory/permGen.hpp" | 62 #include "memory/metablock.hpp" |
63 #include "memory/space.hpp" | 63 #include "memory/space.hpp" |
64 #include "memory/tenuredGeneration.hpp" | 64 #include "memory/tenuredGeneration.hpp" |
65 #include "memory/universe.hpp" | 65 #include "memory/universe.hpp" |
66 #include "memory/watermark.hpp" | 66 #include "memory/watermark.hpp" |
67 #include "oops/arrayKlass.hpp" | 67 #include "oops/arrayKlass.hpp" |
68 #include "oops/arrayKlassKlass.hpp" | |
69 #include "oops/arrayOop.hpp" | 68 #include "oops/arrayOop.hpp" |
70 #include "oops/compiledICHolderKlass.hpp" | 69 #include "oops/compiledICHolder.hpp" |
71 #include "oops/compiledICHolderOop.hpp" | 70 #include "oops/constMethod.hpp" |
72 #include "oops/constMethodKlass.hpp" | 71 #include "oops/constantPool.hpp" |
73 #include "oops/constMethodOop.hpp" | 72 #include "oops/cpCache.hpp" |
74 #include "oops/constantPoolKlass.hpp" | 73 #include "oops/instanceClassLoaderKlass.hpp" |
75 #include "oops/constantPoolOop.hpp" | |
76 #include "oops/cpCacheKlass.hpp" | |
77 #include "oops/cpCacheOop.hpp" | |
78 #include "oops/instanceKlass.hpp" | 74 #include "oops/instanceKlass.hpp" |
79 #include "oops/instanceMirrorKlass.hpp" | 75 #include "oops/instanceMirrorKlass.hpp" |
80 #include "oops/instanceKlassKlass.hpp" | |
81 #include "oops/instanceOop.hpp" | 76 #include "oops/instanceOop.hpp" |
82 #include "oops/klass.hpp" | 77 #include "oops/klass.hpp" |
83 #include "oops/klassOop.hpp" | |
84 #include "oops/markOop.hpp" | 78 #include "oops/markOop.hpp" |
85 #include "oops/methodDataKlass.hpp" | 79 #include "oops/methodData.hpp" |
86 #include "oops/methodDataOop.hpp" | 80 #include "oops/method.hpp" |
87 #include "oops/methodKlass.hpp" | |
88 #include "oops/methodOop.hpp" | |
89 #include "oops/objArrayKlass.hpp" | 81 #include "oops/objArrayKlass.hpp" |
90 #include "oops/objArrayKlassKlass.hpp" | |
91 #include "oops/objArrayOop.hpp" | 82 #include "oops/objArrayOop.hpp" |
92 #include "oops/oop.inline.hpp" | 83 #include "oops/oop.inline.hpp" |
93 #include "oops/symbol.hpp" | 84 #include "oops/symbol.hpp" |
94 #include "oops/typeArrayKlass.hpp" | 85 #include "oops/typeArrayKlass.hpp" |
95 #include "oops/typeArrayKlassKlass.hpp" | |
96 #include "oops/typeArrayOop.hpp" | 86 #include "oops/typeArrayOop.hpp" |
97 #include "prims/jvmtiAgentThread.hpp" | 87 #include "prims/jvmtiAgentThread.hpp" |
98 #include "runtime/arguments.hpp" | 88 #include "runtime/arguments.hpp" |
99 #include "runtime/deoptimization.hpp" | 89 #include "runtime/deoptimization.hpp" |
100 #include "runtime/vframeArray.hpp" | 90 #include "runtime/vframeArray.hpp" |
105 #include "runtime/serviceThread.hpp" | 95 #include "runtime/serviceThread.hpp" |
106 #include "runtime/sharedRuntime.hpp" | 96 #include "runtime/sharedRuntime.hpp" |
107 #include "runtime/stubRoutines.hpp" | 97 #include "runtime/stubRoutines.hpp" |
108 #include "runtime/virtualspace.hpp" | 98 #include "runtime/virtualspace.hpp" |
109 #include "runtime/vmStructs.hpp" | 99 #include "runtime/vmStructs.hpp" |
100 #include "utilities/array.hpp" | |
110 #include "utilities/globalDefinitions.hpp" | 101 #include "utilities/globalDefinitions.hpp" |
111 #include "utilities/hashtable.hpp" | 102 #include "utilities/hashtable.hpp" |
112 #ifdef TARGET_ARCH_x86 | 103 #ifdef TARGET_ARCH_x86 |
113 # include "vmStructs_x86.hpp" | 104 # include "vmStructs_x86.hpp" |
114 #endif | 105 #endif |
165 #endif | 156 #endif |
166 #ifdef TARGET_OS_ARCH_bsd_zero | 157 #ifdef TARGET_OS_ARCH_bsd_zero |
167 # include "vmStructs_bsd_zero.hpp" | 158 # include "vmStructs_bsd_zero.hpp" |
168 #endif | 159 #endif |
169 #ifndef SERIALGC | 160 #ifndef SERIALGC |
170 #include "gc_implementation/concurrentMarkSweep/cmsPermGen.hpp" | |
171 #include "gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp" | 161 #include "gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp" |
172 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp" | 162 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp" |
173 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" | 163 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" |
174 #include "gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp" | 164 #include "gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp" |
175 #include "gc_implementation/parNew/parNewGeneration.hpp" | 165 #include "gc_implementation/parNew/parNewGeneration.hpp" |
176 #include "gc_implementation/parNew/vmStructs_parNew.hpp" | 166 #include "gc_implementation/parNew/vmStructs_parNew.hpp" |
177 #include "gc_implementation/parallelScavenge/asPSOldGen.hpp" | 167 #include "gc_implementation/parallelScavenge/asPSOldGen.hpp" |
178 #include "gc_implementation/parallelScavenge/asPSYoungGen.hpp" | 168 #include "gc_implementation/parallelScavenge/asPSYoungGen.hpp" |
179 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp" | 169 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp" |
180 #include "gc_implementation/parallelScavenge/psOldGen.hpp" | 170 #include "gc_implementation/parallelScavenge/psOldGen.hpp" |
181 #include "gc_implementation/parallelScavenge/psPermGen.hpp" | |
182 #include "gc_implementation/parallelScavenge/psVirtualspace.hpp" | 171 #include "gc_implementation/parallelScavenge/psVirtualspace.hpp" |
183 #include "gc_implementation/parallelScavenge/psYoungGen.hpp" | 172 #include "gc_implementation/parallelScavenge/psYoungGen.hpp" |
184 #include "gc_implementation/parallelScavenge/vmStructs_parallelgc.hpp" | 173 #include "gc_implementation/parallelScavenge/vmStructs_parallelgc.hpp" |
185 #include "gc_implementation/g1/vmStructs_g1.hpp" | 174 #include "gc_implementation/g1/vmStructs_g1.hpp" |
186 #endif | 175 #endif |
240 static inline uint64_t cast_uint64_t(size_t x) | 229 static inline uint64_t cast_uint64_t(size_t x) |
241 { | 230 { |
242 return x; | 231 return x; |
243 } | 232 } |
244 | 233 |
234 #if INCLUDE_JVMTI | |
235 #define JVMTI_STRUCTS(static_field) \ | |
236 static_field(JvmtiExport, _can_access_local_variables, bool) \ | |
237 static_field(JvmtiExport, _can_hotswap_or_post_breakpoint, bool) \ | |
238 static_field(JvmtiExport, _can_post_on_exceptions, bool) \ | |
239 static_field(JvmtiExport, _can_walk_any_space, bool) | |
240 #else | |
241 #define JVMTI_STRUCTS(static_field) | |
242 #endif // INCLUDE_JVMTI | |
245 | 243 |
246 typedef HashtableEntry<intptr_t, mtInternal> IntptrHashtableEntry; | 244 typedef HashtableEntry<intptr_t, mtInternal> IntptrHashtableEntry; |
247 typedef Hashtable<intptr_t, mtInternal> IntptrHashtable; | 245 typedef Hashtable<intptr_t, mtInternal> IntptrHashtable; |
248 typedef Hashtable<Symbol*, mtSymbol> SymbolHashtable; | 246 typedef Hashtable<Symbol*, mtSymbol> SymbolHashtable; |
249 typedef HashtableEntry<Symbol*, mtClass> SymbolHashtableEntry; | 247 typedef HashtableEntry<Symbol*, mtClass> SymbolHashtableEntry; |
250 typedef Hashtable<oop, mtSymbol> StringHashtable; | 248 typedef Hashtable<oop, mtSymbol> StringHashtable; |
251 typedef TwoOopHashtable<klassOop, mtClass> klassOopTwoOopHashtable; | 249 typedef TwoOopHashtable<Klass*, mtClass> KlassTwoOopHashtable; |
252 typedef Hashtable<klassOop, mtClass> klassOopHashtable; | 250 typedef Hashtable<Klass*, mtClass> KlassHashtable; |
253 typedef HashtableEntry<klassOop, mtClass> klassHashtableEntry; | 251 typedef HashtableEntry<Klass*, mtClass> KlassHashtableEntry; |
254 typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable; | 252 typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable; |
253 typedef BinaryTreeDictionary<Metablock, FreeList> MetablockTreeDictionary; | |
255 | 254 |
256 //-------------------------------------------------------------------------------- | 255 //-------------------------------------------------------------------------------- |
257 // VM_STRUCTS | 256 // VM_STRUCTS |
258 // | 257 // |
259 // This list enumerates all of the fields the serviceability agent | 258 // This list enumerates all of the fields the serviceability agent |
271 unchecked_c1_static_field, \ | 270 unchecked_c1_static_field, \ |
272 unchecked_c2_static_field, \ | 271 unchecked_c2_static_field, \ |
273 last_entry) \ | 272 last_entry) \ |
274 \ | 273 \ |
275 /******************************************************************/ \ | 274 /******************************************************************/ \ |
276 /* OopDesc and Klass hierarchies (NOTE: methodDataOop incomplete) */ \ | 275 /* OopDesc and Klass hierarchies (NOTE: MethodData* incomplete) */ \ |
277 /******************************************************************/ \ | 276 /******************************************************************/ \ |
278 \ | 277 \ |
279 volatile_nonstatic_field(oopDesc, _mark, markOop) \ | 278 volatile_nonstatic_field(oopDesc, _mark, markOop) \ |
280 volatile_nonstatic_field(oopDesc, _metadata._klass, wideKlassOop) \ | 279 volatile_nonstatic_field(oopDesc, _metadata._klass, Klass*) \ |
281 volatile_nonstatic_field(oopDesc, _metadata._compressed_klass, narrowOop) \ | 280 volatile_nonstatic_field(oopDesc, _metadata._compressed_klass, narrowOop) \ |
282 static_field(oopDesc, _bs, BarrierSet*) \ | 281 static_field(oopDesc, _bs, BarrierSet*) \ |
283 nonstatic_field(arrayKlass, _dimension, int) \ | 282 nonstatic_field(ArrayKlass, _dimension, int) \ |
284 volatile_nonstatic_field(arrayKlass, _higher_dimension, klassOop) \ | 283 volatile_nonstatic_field(ArrayKlass, _higher_dimension, Klass*) \ |
285 volatile_nonstatic_field(arrayKlass, _lower_dimension, klassOop) \ | 284 volatile_nonstatic_field(ArrayKlass, _lower_dimension, Klass*) \ |
286 nonstatic_field(arrayKlass, _vtable_len, int) \ | 285 nonstatic_field(ArrayKlass, _vtable_len, int) \ |
287 nonstatic_field(arrayKlass, _alloc_size, juint) \ | 286 nonstatic_field(ArrayKlass, _alloc_size, juint) \ |
288 nonstatic_field(arrayKlass, _component_mirror, oop) \ | 287 nonstatic_field(ArrayKlass, _component_mirror, oop) \ |
289 nonstatic_field(compiledICHolderKlass, _alloc_size, juint) \ | 288 nonstatic_field(CompiledICHolder, _holder_method, Method*) \ |
290 nonstatic_field(compiledICHolderOopDesc, _holder_method, methodOop) \ | 289 nonstatic_field(CompiledICHolder, _holder_klass, Klass*) \ |
291 nonstatic_field(compiledICHolderOopDesc, _holder_klass, klassOop) \ | 290 nonstatic_field(ConstantPool, _tags, Array<u1>*) \ |
292 nonstatic_field(constantPoolOopDesc, _tags, typeArrayOop) \ | 291 nonstatic_field(ConstantPool, _cache, ConstantPoolCache*) \ |
293 nonstatic_field(constantPoolOopDesc, _cache, constantPoolCacheOop) \ | 292 nonstatic_field(ConstantPool, _pool_holder, InstanceKlass*) \ |
294 nonstatic_field(constantPoolOopDesc, _pool_holder, klassOop) \ | 293 nonstatic_field(ConstantPool, _operands, Array<u2>*) \ |
295 nonstatic_field(constantPoolOopDesc, _operands, typeArrayOop) \ | 294 nonstatic_field(ConstantPool, _length, int) \ |
296 nonstatic_field(constantPoolOopDesc, _length, int) \ | 295 nonstatic_field(ConstantPool, _resolved_references, jobject) \ |
297 nonstatic_field(constantPoolCacheOopDesc, _length, int) \ | 296 nonstatic_field(ConstantPool, _reference_map, Array<u2>*) \ |
298 nonstatic_field(constantPoolCacheOopDesc, _constant_pool, constantPoolOop) \ | 297 nonstatic_field(ConstantPoolCache, _length, int) \ |
299 nonstatic_field(instanceKlass, _array_klasses, klassOop) \ | 298 nonstatic_field(ConstantPoolCache, _constant_pool, ConstantPool*) \ |
300 nonstatic_field(instanceKlass, _methods, objArrayOop) \ | 299 nonstatic_field(InstanceKlass, _array_klasses, Klass*) \ |
301 nonstatic_field(instanceKlass, _method_ordering, typeArrayOop) \ | 300 nonstatic_field(InstanceKlass, _methods, Array<Method*>*) \ |
302 nonstatic_field(instanceKlass, _local_interfaces, objArrayOop) \ | 301 nonstatic_field(InstanceKlass, _local_interfaces, Array<Klass*>*) \ |
303 nonstatic_field(instanceKlass, _transitive_interfaces, objArrayOop) \ | 302 nonstatic_field(InstanceKlass, _transitive_interfaces, Array<Klass*>*) \ |
304 nonstatic_field(instanceKlass, _fields, typeArrayOop) \ | 303 nonstatic_field(InstanceKlass, _fields, Array<u2>*) \ |
305 nonstatic_field(instanceKlass, _java_fields_count, u2) \ | 304 nonstatic_field(InstanceKlass, _java_fields_count, u2) \ |
306 nonstatic_field(instanceKlass, _constants, constantPoolOop) \ | 305 nonstatic_field(InstanceKlass, _constants, ConstantPool*) \ |
307 nonstatic_field(instanceKlass, _class_loader, oop) \ | 306 nonstatic_field(InstanceKlass, _class_loader_data, ClassLoaderData*) \ |
308 nonstatic_field(instanceKlass, _protection_domain, oop) \ | 307 nonstatic_field(InstanceKlass, _protection_domain, oop) \ |
309 nonstatic_field(instanceKlass, _signers, objArrayOop) \ | 308 nonstatic_field(InstanceKlass, _signers, objArrayOop) \ |
310 nonstatic_field(instanceKlass, _source_file_name, Symbol*) \ | 309 nonstatic_field(InstanceKlass, _source_file_name, Symbol*) \ |
311 nonstatic_field(instanceKlass, _source_debug_extension, char*) \ | 310 nonstatic_field(InstanceKlass, _source_debug_extension, char*) \ |
312 nonstatic_field(instanceKlass, _inner_classes, typeArrayOop) \ | 311 nonstatic_field(InstanceKlass, _inner_classes, Array<jushort>*) \ |
313 nonstatic_field(instanceKlass, _nonstatic_field_size, int) \ | 312 nonstatic_field(InstanceKlass, _nonstatic_field_size, int) \ |
314 nonstatic_field(instanceKlass, _static_field_size, int) \ | 313 nonstatic_field(InstanceKlass, _static_field_size, int) \ |
315 nonstatic_field(instanceKlass, _static_oop_field_count, u2) \ | 314 nonstatic_field(InstanceKlass, _static_oop_field_count, u2) \ |
316 nonstatic_field(instanceKlass, _nonstatic_oop_map_size, int) \ | 315 nonstatic_field(InstanceKlass, _nonstatic_oop_map_size, int) \ |
317 nonstatic_field(instanceKlass, _is_marked_dependent, bool) \ | 316 nonstatic_field(InstanceKlass, _is_marked_dependent, bool) \ |
318 nonstatic_field(instanceKlass, _minor_version, u2) \ | 317 nonstatic_field(InstanceKlass, _minor_version, u2) \ |
319 nonstatic_field(instanceKlass, _major_version, u2) \ | 318 nonstatic_field(InstanceKlass, _major_version, u2) \ |
320 nonstatic_field(instanceKlass, _init_state, u1) \ | 319 nonstatic_field(InstanceKlass, _init_state, u1) \ |
321 nonstatic_field(instanceKlass, _init_thread, Thread*) \ | 320 nonstatic_field(InstanceKlass, _init_thread, Thread*) \ |
322 nonstatic_field(instanceKlass, _vtable_len, int) \ | 321 nonstatic_field(InstanceKlass, _vtable_len, int) \ |
323 nonstatic_field(instanceKlass, _itable_len, int) \ | 322 nonstatic_field(InstanceKlass, _itable_len, int) \ |
324 nonstatic_field(instanceKlass, _reference_type, u1) \ | 323 nonstatic_field(InstanceKlass, _reference_type, u1) \ |
325 volatile_nonstatic_field(instanceKlass, _oop_map_cache, OopMapCache*) \ | 324 volatile_nonstatic_field(InstanceKlass, _oop_map_cache, OopMapCache*) \ |
326 nonstatic_field(instanceKlass, _jni_ids, JNIid*) \ | 325 nonstatic_field(InstanceKlass, _jni_ids, JNIid*) \ |
327 nonstatic_field(instanceKlass, _osr_nmethods_head, nmethod*) \ | 326 nonstatic_field(InstanceKlass, _osr_nmethods_head, nmethod*) \ |
328 nonstatic_field(instanceKlass, _breakpoints, BreakpointInfo*) \ | 327 nonstatic_field(InstanceKlass, _breakpoints, BreakpointInfo*) \ |
329 nonstatic_field(instanceKlass, _generic_signature, Symbol*) \ | 328 nonstatic_field(InstanceKlass, _generic_signature, Symbol*) \ |
330 nonstatic_field(instanceKlass, _methods_jmethod_ids, jmethodID*) \ | 329 nonstatic_field(InstanceKlass, _methods_jmethod_ids, jmethodID*) \ |
331 nonstatic_field(instanceKlass, _methods_cached_itable_indices, int*) \ | 330 nonstatic_field(InstanceKlass, _methods_cached_itable_indices, int*) \ |
332 volatile_nonstatic_field(instanceKlass, _idnum_allocated_count, u2) \ | 331 volatile_nonstatic_field(InstanceKlass, _idnum_allocated_count, u2) \ |
333 nonstatic_field(instanceKlass, _class_annotations, typeArrayOop) \ | 332 nonstatic_field(InstanceKlass, _annotations, Annotations*) \ |
334 nonstatic_field(instanceKlass, _fields_annotations, objArrayOop) \ | 333 nonstatic_field(InstanceKlass, _dependencies, nmethodBucket*) \ |
335 nonstatic_field(instanceKlass, _methods_annotations, objArrayOop) \ | |
336 nonstatic_field(instanceKlass, _methods_parameter_annotations, objArrayOop) \ | |
337 nonstatic_field(instanceKlass, _methods_default_annotations, objArrayOop) \ | |
338 nonstatic_field(instanceKlass, _dependencies, nmethodBucket*) \ | |
339 nonstatic_field(nmethodBucket, _nmethod, nmethod*) \ | 334 nonstatic_field(nmethodBucket, _nmethod, nmethod*) \ |
340 nonstatic_field(nmethodBucket, _count, int) \ | 335 nonstatic_field(nmethodBucket, _count, int) \ |
341 nonstatic_field(nmethodBucket, _next, nmethodBucket*) \ | 336 nonstatic_field(nmethodBucket, _next, nmethodBucket*) \ |
337 nonstatic_field(InstanceKlass, _method_ordering, Array<int>*) \ | |
342 nonstatic_field(Klass, _super_check_offset, juint) \ | 338 nonstatic_field(Klass, _super_check_offset, juint) \ |
343 nonstatic_field(Klass, _secondary_super_cache, klassOop) \ | 339 nonstatic_field(Klass, _secondary_super_cache, Klass*) \ |
344 nonstatic_field(Klass, _secondary_supers, objArrayOop) \ | 340 nonstatic_field(Klass, _secondary_supers, Array<Klass*>*) \ |
345 nonstatic_field(Klass, _primary_supers[0], klassOop) \ | 341 nonstatic_field(Klass, _primary_supers[0], Klass*) \ |
346 nonstatic_field(Klass, _java_mirror, oop) \ | 342 nonstatic_field(Klass, _java_mirror, oop) \ |
347 nonstatic_field(Klass, _modifier_flags, jint) \ | 343 nonstatic_field(Klass, _modifier_flags, jint) \ |
348 nonstatic_field(Klass, _super, klassOop) \ | 344 nonstatic_field(Klass, _super, Klass*) \ |
349 nonstatic_field(Klass, _layout_helper, jint) \ | 345 nonstatic_field(Klass, _layout_helper, jint) \ |
350 nonstatic_field(Klass, _name, Symbol*) \ | 346 nonstatic_field(Klass, _name, Symbol*) \ |
351 nonstatic_field(Klass, _access_flags, AccessFlags) \ | 347 nonstatic_field(Klass, _access_flags, AccessFlags) \ |
352 nonstatic_field(Klass, _subklass, klassOop) \ | 348 nonstatic_field(Klass, _subklass, Klass*) \ |
353 nonstatic_field(Klass, _next_sibling, klassOop) \ | 349 nonstatic_field(Klass, _next_sibling, Klass*) \ |
354 nonproduct_nonstatic_field(Klass, _verify_count, int) \ | 350 nonproduct_nonstatic_field(Klass, _verify_count, int) \ |
355 nonstatic_field(Klass, _alloc_count, juint) \ | 351 nonstatic_field(Klass, _alloc_count, juint) \ |
356 nonstatic_field(klassKlass, _alloc_size, juint) \ | 352 nonstatic_field(MethodData, _size, int) \ |
357 nonstatic_field(methodKlass, _alloc_size, juint) \ | 353 nonstatic_field(MethodData, _method, Method*) \ |
358 nonstatic_field(methodDataOopDesc, _size, int) \ | 354 nonstatic_field(MethodData, _data_size, int) \ |
359 nonstatic_field(methodDataOopDesc, _method, methodOop) \ | 355 nonstatic_field(MethodData, _data[0], intptr_t) \ |
360 nonstatic_field(methodDataOopDesc, _data_size, int) \ | 356 nonstatic_field(MethodData, _nof_decompiles, uint) \ |
361 nonstatic_field(methodDataOopDesc, _data[0], intptr_t) \ | 357 nonstatic_field(MethodData, _nof_overflow_recompiles, uint) \ |
362 nonstatic_field(methodDataOopDesc, _nof_decompiles, uint) \ | 358 nonstatic_field(MethodData, _nof_overflow_traps, uint) \ |
363 nonstatic_field(methodDataOopDesc, _nof_overflow_recompiles, uint) \ | 359 nonstatic_field(MethodData, _eflags, intx) \ |
364 nonstatic_field(methodDataOopDesc, _nof_overflow_traps, uint) \ | 360 nonstatic_field(MethodData, _arg_local, intx) \ |
365 nonstatic_field(methodDataOopDesc, _eflags, intx) \ | 361 nonstatic_field(MethodData, _arg_stack, intx) \ |
366 nonstatic_field(methodDataOopDesc, _arg_local, intx) \ | 362 nonstatic_field(MethodData, _arg_returned, intx) \ |
367 nonstatic_field(methodDataOopDesc, _arg_stack, intx) \ | 363 nonstatic_field(Method, _constMethod, ConstMethod*) \ |
368 nonstatic_field(methodDataOopDesc, _arg_returned, intx) \ | 364 nonstatic_field(Method, _method_data, MethodData*) \ |
369 nonstatic_field(methodOopDesc, _constMethod, constMethodOop) \ | 365 nonstatic_field(Method, _interpreter_invocation_count, int) \ |
370 nonstatic_field(methodOopDesc, _method_data, methodDataOop) \ | 366 nonstatic_field(Method, _access_flags, AccessFlags) \ |
371 nonstatic_field(methodOopDesc, _interpreter_invocation_count, int) \ | 367 nonstatic_field(Method, _vtable_index, int) \ |
372 nonstatic_field(methodOopDesc, _access_flags, AccessFlags) \ | 368 nonstatic_field(Method, _method_size, u2) \ |
373 nonstatic_field(methodOopDesc, _vtable_index, int) \ | 369 nonstatic_field(Method, _max_stack, u2) \ |
374 nonstatic_field(methodOopDesc, _method_size, u2) \ | 370 nonstatic_field(Method, _max_locals, u2) \ |
375 nonstatic_field(methodOopDesc, _max_stack, u2) \ | 371 nonstatic_field(Method, _size_of_parameters, u2) \ |
376 nonstatic_field(methodOopDesc, _max_locals, u2) \ | 372 nonstatic_field(Method, _interpreter_throwout_count, u2) \ |
377 nonstatic_field(methodOopDesc, _size_of_parameters, u2) \ | 373 nonstatic_field(Method, _number_of_breakpoints, u2) \ |
378 nonstatic_field(methodOopDesc, _interpreter_throwout_count, u2) \ | 374 nonstatic_field(Method, _invocation_counter, InvocationCounter) \ |
379 nonstatic_field(methodOopDesc, _number_of_breakpoints, u2) \ | 375 nonstatic_field(Method, _backedge_counter, InvocationCounter) \ |
380 nonstatic_field(methodOopDesc, _invocation_counter, InvocationCounter) \ | 376 nonproduct_nonstatic_field(Method, _compiled_invocation_count, int) \ |
381 nonstatic_field(methodOopDesc, _backedge_counter, InvocationCounter) \ | 377 volatile_nonstatic_field(Method, _code, nmethod*) \ |
382 nonproduct_nonstatic_field(methodOopDesc, _compiled_invocation_count, int) \ | 378 nonstatic_field(Method, _i2i_entry, address) \ |
383 volatile_nonstatic_field(methodOopDesc, _code, nmethod*) \ | 379 nonstatic_field(Method, _adapter, AdapterHandlerEntry*) \ |
384 nonstatic_field(methodOopDesc, _i2i_entry, address) \ | 380 volatile_nonstatic_field(Method, _from_compiled_entry, address) \ |
385 nonstatic_field(methodOopDesc, _adapter, AdapterHandlerEntry*) \ | 381 volatile_nonstatic_field(Method, _from_interpreted_entry, address) \ |
386 volatile_nonstatic_field(methodOopDesc, _from_compiled_entry, address) \ | 382 volatile_nonstatic_field(ConstMethod, _fingerprint, uint64_t) \ |
387 volatile_nonstatic_field(methodOopDesc, _from_interpreted_entry, address) \ | 383 nonstatic_field(ConstMethod, _constants, ConstantPool*) \ |
388 volatile_nonstatic_field(constMethodOopDesc, _fingerprint, uint64_t) \ | 384 nonstatic_field(ConstMethod, _stackmap_data, Array<u1>*) \ |
389 nonstatic_field(constMethodOopDesc, _constants, constantPoolOop) \ | 385 nonstatic_field(ConstMethod, _constMethod_size, int) \ |
390 nonstatic_field(constMethodOopDesc, _stackmap_data, typeArrayOop) \ | 386 nonstatic_field(ConstMethod, _interpreter_kind, jbyte) \ |
391 nonstatic_field(constMethodOopDesc, _constMethod_size, int) \ | 387 nonstatic_field(ConstMethod, _flags, jbyte) \ |
392 nonstatic_field(constMethodOopDesc, _interpreter_kind, jbyte) \ | 388 nonstatic_field(ConstMethod, _code_size, u2) \ |
393 nonstatic_field(constMethodOopDesc, _flags, jbyte) \ | 389 nonstatic_field(ConstMethod, _name_index, u2) \ |
394 nonstatic_field(constMethodOopDesc, _code_size, u2) \ | 390 nonstatic_field(ConstMethod, _signature_index, u2) \ |
395 nonstatic_field(constMethodOopDesc, _name_index, u2) \ | 391 nonstatic_field(ConstMethod, _method_idnum, u2) \ |
396 nonstatic_field(constMethodOopDesc, _signature_index, u2) \ | 392 nonstatic_field(ConstMethod, _generic_signature_index, u2) \ |
397 nonstatic_field(constMethodOopDesc, _method_idnum, u2) \ | 393 nonstatic_field(ObjArrayKlass, _element_klass, Klass*) \ |
398 nonstatic_field(constMethodOopDesc, _generic_signature_index, u2) \ | 394 nonstatic_field(ObjArrayKlass, _bottom_klass, Klass*) \ |
399 nonstatic_field(objArrayKlass, _element_klass, klassOop) \ | |
400 nonstatic_field(objArrayKlass, _bottom_klass, klassOop) \ | |
401 volatile_nonstatic_field(Symbol, _refcount, int) \ | 395 volatile_nonstatic_field(Symbol, _refcount, int) \ |
402 nonstatic_field(Symbol, _identity_hash, int) \ | 396 nonstatic_field(Symbol, _identity_hash, int) \ |
403 nonstatic_field(Symbol, _length, unsigned short) \ | 397 nonstatic_field(Symbol, _length, unsigned short) \ |
404 unchecked_nonstatic_field(Symbol, _body, sizeof(jbyte)) /* NOTE: no type */ \ | 398 unchecked_nonstatic_field(Symbol, _body, sizeof(jbyte)) /* NOTE: no type */ \ |
405 nonstatic_field(typeArrayKlass, _max_length, int) \ | 399 nonstatic_field(TypeArrayKlass, _max_length, int) \ |
406 \ | 400 \ |
407 /***********************/ \ | 401 /***********************/ \ |
408 /* Constant Pool Cache */ \ | 402 /* Constant Pool Cache */ \ |
409 /***********************/ \ | 403 /***********************/ \ |
410 \ | 404 \ |
411 volatile_nonstatic_field(ConstantPoolCacheEntry, _indices, intx) \ | 405 volatile_nonstatic_field(ConstantPoolCacheEntry, _indices, intx) \ |
412 volatile_nonstatic_field(ConstantPoolCacheEntry, _f1, oop) \ | 406 nonstatic_field(ConstantPoolCacheEntry, _f1, volatile Metadata*) \ |
413 volatile_nonstatic_field(ConstantPoolCacheEntry, _f2, intx) \ | 407 volatile_nonstatic_field(ConstantPoolCacheEntry, _f2, intx) \ |
414 volatile_nonstatic_field(ConstantPoolCacheEntry, _flags, intx) \ | 408 volatile_nonstatic_field(ConstantPoolCacheEntry, _flags, intx) \ |
415 \ | 409 \ |
416 /********************************/ \ | 410 /********************************/ \ |
417 /* MethodOop-related structures */ \ | 411 /* MethodOop-related structures */ \ |
435 nonstatic_field(BreakpointInfo, _next, BreakpointInfo*) \ | 429 nonstatic_field(BreakpointInfo, _next, BreakpointInfo*) \ |
436 /***********/ \ | 430 /***********/ \ |
437 /* JNI IDs */ \ | 431 /* JNI IDs */ \ |
438 /***********/ \ | 432 /***********/ \ |
439 \ | 433 \ |
440 nonstatic_field(JNIid, _holder, klassOop) \ | 434 nonstatic_field(JNIid, _holder, Klass*) \ |
441 nonstatic_field(JNIid, _next, JNIid*) \ | 435 nonstatic_field(JNIid, _next, JNIid*) \ |
442 nonstatic_field(JNIid, _offset, int) \ | 436 nonstatic_field(JNIid, _offset, int) \ |
443 /************/ \ | 437 /************/ \ |
444 /* Universe */ \ | 438 /* Universe */ \ |
445 /************/ \ | 439 /************/ \ |
446 \ | 440 \ |
447 static_field(Universe, _boolArrayKlassObj, klassOop) \ | 441 static_field(Universe, _boolArrayKlassObj, Klass*) \ |
448 static_field(Universe, _byteArrayKlassObj, klassOop) \ | 442 static_field(Universe, _byteArrayKlassObj, Klass*) \ |
449 static_field(Universe, _charArrayKlassObj, klassOop) \ | 443 static_field(Universe, _charArrayKlassObj, Klass*) \ |
450 static_field(Universe, _intArrayKlassObj, klassOop) \ | 444 static_field(Universe, _intArrayKlassObj, Klass*) \ |
451 static_field(Universe, _shortArrayKlassObj, klassOop) \ | 445 static_field(Universe, _shortArrayKlassObj, Klass*) \ |
452 static_field(Universe, _longArrayKlassObj, klassOop) \ | 446 static_field(Universe, _longArrayKlassObj, Klass*) \ |
453 static_field(Universe, _singleArrayKlassObj, klassOop) \ | 447 static_field(Universe, _singleArrayKlassObj, Klass*) \ |
454 static_field(Universe, _doubleArrayKlassObj, klassOop) \ | 448 static_field(Universe, _doubleArrayKlassObj, Klass*) \ |
455 static_field(Universe, _methodKlassObj, klassOop) \ | |
456 static_field(Universe, _constMethodKlassObj, klassOop) \ | |
457 static_field(Universe, _methodDataKlassObj, klassOop) \ | |
458 static_field(Universe, _klassKlassObj, klassOop) \ | |
459 static_field(Universe, _arrayKlassKlassObj, klassOop) \ | |
460 static_field(Universe, _objArrayKlassKlassObj, klassOop) \ | |
461 static_field(Universe, _typeArrayKlassKlassObj, klassOop) \ | |
462 static_field(Universe, _instanceKlassKlassObj, klassOop) \ | |
463 static_field(Universe, _constantPoolKlassObj, klassOop) \ | |
464 static_field(Universe, _constantPoolCacheKlassObj, klassOop) \ | |
465 static_field(Universe, _compiledICHolderKlassObj, klassOop) \ | |
466 static_field(Universe, _systemObjArrayKlassObj, klassOop) \ | |
467 static_field(Universe, _mirrors[0], oop) \ | 449 static_field(Universe, _mirrors[0], oop) \ |
468 static_field(Universe, _main_thread_group, oop) \ | 450 static_field(Universe, _main_thread_group, oop) \ |
469 static_field(Universe, _system_thread_group, oop) \ | 451 static_field(Universe, _system_thread_group, oop) \ |
470 static_field(Universe, _the_empty_byte_array, typeArrayOop) \ | |
471 static_field(Universe, _the_empty_short_array, typeArrayOop) \ | |
472 static_field(Universe, _the_empty_int_array, typeArrayOop) \ | |
473 static_field(Universe, _the_empty_system_obj_array, objArrayOop) \ | |
474 static_field(Universe, _the_empty_class_klass_array, objArrayOop) \ | 452 static_field(Universe, _the_empty_class_klass_array, objArrayOop) \ |
475 static_field(Universe, _out_of_memory_error_java_heap, oop) \ | 453 static_field(Universe, _out_of_memory_error_java_heap, oop) \ |
476 static_field(Universe, _out_of_memory_error_perm_gen, oop) \ | 454 static_field(Universe, _out_of_memory_error_perm_gen, oop) \ |
477 static_field(Universe, _out_of_memory_error_array_size, oop) \ | 455 static_field(Universe, _out_of_memory_error_array_size, oop) \ |
478 static_field(Universe, _out_of_memory_error_gc_overhead_limit, oop) \ | 456 static_field(Universe, _out_of_memory_error_gc_overhead_limit, oop) \ |
485 static_field(Universe, _fully_initialized, bool) \ | 463 static_field(Universe, _fully_initialized, bool) \ |
486 static_field(Universe, _verify_count, int) \ | 464 static_field(Universe, _verify_count, int) \ |
487 static_field(Universe, _narrow_oop._base, address) \ | 465 static_field(Universe, _narrow_oop._base, address) \ |
488 static_field(Universe, _narrow_oop._shift, int) \ | 466 static_field(Universe, _narrow_oop._shift, int) \ |
489 static_field(Universe, _narrow_oop._use_implicit_null_checks, bool) \ | 467 static_field(Universe, _narrow_oop._use_implicit_null_checks, bool) \ |
468 static_field(Universe, _narrow_klass._base, address) \ | |
469 static_field(Universe, _narrow_klass._shift, int) \ | |
490 \ | 470 \ |
491 /**********************************************************************************/ \ | 471 /**********************************************************************************/ \ |
492 /* Generation and Space hierarchies */ \ | 472 /* Generation and Space hierarchies */ \ |
493 /**********************************************************************************/ \ | 473 /**********************************************************************************/ \ |
494 \ | 474 \ |
526 nonstatic_field(CardTableModRefBS, byte_map_base, jbyte*) \ | 506 nonstatic_field(CardTableModRefBS, byte_map_base, jbyte*) \ |
527 \ | 507 \ |
528 nonstatic_field(CardTableRS, _ct_bs, CardTableModRefBSForCTRS*) \ | 508 nonstatic_field(CardTableRS, _ct_bs, CardTableModRefBSForCTRS*) \ |
529 \ | 509 \ |
530 nonstatic_field(CollectedHeap, _reserved, MemRegion) \ | 510 nonstatic_field(CollectedHeap, _reserved, MemRegion) \ |
531 nonstatic_field(SharedHeap, _perm_gen, PermGen*) \ | |
532 nonstatic_field(CollectedHeap, _barrier_set, BarrierSet*) \ | 511 nonstatic_field(CollectedHeap, _barrier_set, BarrierSet*) \ |
533 nonstatic_field(CollectedHeap, _defer_initial_card_mark, bool) \ | 512 nonstatic_field(CollectedHeap, _defer_initial_card_mark, bool) \ |
534 nonstatic_field(CollectedHeap, _is_gc_active, bool) \ | 513 nonstatic_field(CollectedHeap, _is_gc_active, bool) \ |
535 nonstatic_field(CompactibleSpace, _compaction_top, HeapWord*) \ | 514 nonstatic_field(CompactibleSpace, _compaction_top, HeapWord*) \ |
536 nonstatic_field(CompactibleSpace, _first_dead, HeapWord*) \ | 515 nonstatic_field(CompactibleSpace, _first_dead, HeapWord*) \ |
537 nonstatic_field(CompactibleSpace, _end_of_live, HeapWord*) \ | 516 nonstatic_field(CompactibleSpace, _end_of_live, HeapWord*) \ |
538 \ | 517 \ |
539 nonstatic_field(CompactingPermGen, _gen, OneContigSpaceCardGeneration*) \ | |
540 \ | 518 \ |
541 nonstatic_field(ContiguousSpace, _top, HeapWord*) \ | 519 nonstatic_field(ContiguousSpace, _top, HeapWord*) \ |
542 nonstatic_field(ContiguousSpace, _concurrent_iteration_safe_limit, HeapWord*) \ | 520 nonstatic_field(ContiguousSpace, _concurrent_iteration_safe_limit, HeapWord*) \ |
543 nonstatic_field(ContiguousSpace, _saved_mark_word, HeapWord*) \ | 521 nonstatic_field(ContiguousSpace, _saved_mark_word, HeapWord*) \ |
544 \ | 522 \ |
545 nonstatic_field(DefNewGeneration, _next_gen, Generation*) \ | 523 nonstatic_field(DefNewGeneration, _next_gen, Generation*) \ |
546 nonstatic_field(DefNewGeneration, _tenuring_threshold, int) \ | 524 nonstatic_field(DefNewGeneration, _tenuring_threshold, uint) \ |
547 nonstatic_field(DefNewGeneration, _age_table, ageTable) \ | 525 nonstatic_field(DefNewGeneration, _age_table, ageTable) \ |
548 nonstatic_field(DefNewGeneration, _eden_space, EdenSpace*) \ | 526 nonstatic_field(DefNewGeneration, _eden_space, EdenSpace*) \ |
549 nonstatic_field(DefNewGeneration, _from_space, ContiguousSpace*) \ | 527 nonstatic_field(DefNewGeneration, _from_space, ContiguousSpace*) \ |
550 nonstatic_field(DefNewGeneration, _to_space, ContiguousSpace*) \ | 528 nonstatic_field(DefNewGeneration, _to_space, ContiguousSpace*) \ |
551 \ | 529 \ |
577 \ | 555 \ |
578 nonstatic_field(OneContigSpaceCardGeneration, _min_heap_delta_bytes, size_t) \ | 556 nonstatic_field(OneContigSpaceCardGeneration, _min_heap_delta_bytes, size_t) \ |
579 nonstatic_field(OneContigSpaceCardGeneration, _the_space, ContiguousSpace*) \ | 557 nonstatic_field(OneContigSpaceCardGeneration, _the_space, ContiguousSpace*) \ |
580 nonstatic_field(OneContigSpaceCardGeneration, _last_gc, WaterMark) \ | 558 nonstatic_field(OneContigSpaceCardGeneration, _last_gc, WaterMark) \ |
581 \ | 559 \ |
582 nonstatic_field(CompactingPermGenGen, _ro_vs, VirtualSpace) \ | 560 \ |
583 nonstatic_field(CompactingPermGenGen, _rw_vs, VirtualSpace) \ | |
584 nonstatic_field(CompactingPermGenGen, _md_vs, VirtualSpace) \ | |
585 nonstatic_field(CompactingPermGenGen, _mc_vs, VirtualSpace) \ | |
586 nonstatic_field(CompactingPermGenGen, _ro_space, OffsetTableContigSpace*) \ | |
587 nonstatic_field(CompactingPermGenGen, _rw_space, OffsetTableContigSpace*) \ | |
588 static_field(CompactingPermGenGen, unshared_bottom, HeapWord*) \ | |
589 static_field(CompactingPermGenGen, unshared_end, HeapWord*) \ | |
590 static_field(CompactingPermGenGen, shared_bottom, HeapWord*) \ | |
591 static_field(CompactingPermGenGen, readonly_bottom, HeapWord*) \ | |
592 static_field(CompactingPermGenGen, readonly_end, HeapWord*) \ | |
593 static_field(CompactingPermGenGen, readwrite_bottom, HeapWord*) \ | |
594 static_field(CompactingPermGenGen, readwrite_end, HeapWord*) \ | |
595 static_field(CompactingPermGenGen, miscdata_bottom, HeapWord*) \ | |
596 static_field(CompactingPermGenGen, miscdata_end, HeapWord*) \ | |
597 static_field(CompactingPermGenGen, misccode_bottom, HeapWord*) \ | |
598 static_field(CompactingPermGenGen, misccode_end, HeapWord*) \ | |
599 static_field(CompactingPermGenGen, shared_end, HeapWord*) \ | |
600 \ | |
601 nonstatic_field(PermGen, _capacity_expansion_limit, size_t) \ | |
602 \ | |
603 nonstatic_field(PermanentGenerationSpec, _name, PermGen::Name) \ | |
604 nonstatic_field(PermanentGenerationSpec, _init_size, size_t) \ | |
605 nonstatic_field(PermanentGenerationSpec, _max_size, size_t) \ | |
606 \ | 561 \ |
607 nonstatic_field(Space, _bottom, HeapWord*) \ | 562 nonstatic_field(Space, _bottom, HeapWord*) \ |
608 nonstatic_field(Space, _end, HeapWord*) \ | 563 nonstatic_field(Space, _end, HeapWord*) \ |
609 \ | 564 \ |
610 nonstatic_field(TenuredGeneration, _shrink_factor, size_t) \ | 565 nonstatic_field(TenuredGeneration, _shrink_factor, size_t) \ |
675 static_field(SystemDictionary, _dictionary, Dictionary*) \ | 630 static_field(SystemDictionary, _dictionary, Dictionary*) \ |
676 static_field(SystemDictionary, _placeholders, PlaceholderTable*) \ | 631 static_field(SystemDictionary, _placeholders, PlaceholderTable*) \ |
677 static_field(SystemDictionary, _shared_dictionary, Dictionary*) \ | 632 static_field(SystemDictionary, _shared_dictionary, Dictionary*) \ |
678 static_field(SystemDictionary, _system_loader_lock_obj, oop) \ | 633 static_field(SystemDictionary, _system_loader_lock_obj, oop) \ |
679 static_field(SystemDictionary, _loader_constraints, LoaderConstraintTable*) \ | 634 static_field(SystemDictionary, _loader_constraints, LoaderConstraintTable*) \ |
680 static_field(SystemDictionary, WK_KLASS(Object_klass), klassOop) \ | 635 static_field(SystemDictionary, WK_KLASS(Object_klass), Klass*) \ |
681 static_field(SystemDictionary, WK_KLASS(String_klass), klassOop) \ | 636 static_field(SystemDictionary, WK_KLASS(String_klass), Klass*) \ |
682 static_field(SystemDictionary, WK_KLASS(Class_klass), klassOop) \ | 637 static_field(SystemDictionary, WK_KLASS(Class_klass), Klass*) \ |
683 static_field(SystemDictionary, WK_KLASS(Cloneable_klass), klassOop) \ | 638 static_field(SystemDictionary, WK_KLASS(Cloneable_klass), Klass*) \ |
684 static_field(SystemDictionary, WK_KLASS(ClassLoader_klass), klassOop) \ | 639 static_field(SystemDictionary, WK_KLASS(ClassLoader_klass), Klass*) \ |
685 static_field(SystemDictionary, WK_KLASS(Serializable_klass), klassOop) \ | 640 static_field(SystemDictionary, WK_KLASS(Serializable_klass), Klass*) \ |
686 static_field(SystemDictionary, WK_KLASS(System_klass), klassOop) \ | 641 static_field(SystemDictionary, WK_KLASS(System_klass), Klass*) \ |
687 static_field(SystemDictionary, WK_KLASS(Throwable_klass), klassOop) \ | 642 static_field(SystemDictionary, WK_KLASS(Throwable_klass), Klass*) \ |
688 static_field(SystemDictionary, WK_KLASS(ThreadDeath_klass), klassOop) \ | 643 static_field(SystemDictionary, WK_KLASS(ThreadDeath_klass), Klass*) \ |
689 static_field(SystemDictionary, WK_KLASS(Error_klass), klassOop) \ | 644 static_field(SystemDictionary, WK_KLASS(Error_klass), Klass*) \ |
690 static_field(SystemDictionary, WK_KLASS(Exception_klass), klassOop) \ | 645 static_field(SystemDictionary, WK_KLASS(Exception_klass), Klass*) \ |
691 static_field(SystemDictionary, WK_KLASS(RuntimeException_klass), klassOop) \ | 646 static_field(SystemDictionary, WK_KLASS(RuntimeException_klass), Klass*) \ |
692 static_field(SystemDictionary, WK_KLASS(ClassNotFoundException_klass), klassOop) \ | 647 static_field(SystemDictionary, WK_KLASS(ClassNotFoundException_klass), Klass*) \ |
693 static_field(SystemDictionary, WK_KLASS(NoClassDefFoundError_klass), klassOop) \ | 648 static_field(SystemDictionary, WK_KLASS(NoClassDefFoundError_klass), Klass*) \ |
694 static_field(SystemDictionary, WK_KLASS(LinkageError_klass), klassOop) \ | 649 static_field(SystemDictionary, WK_KLASS(LinkageError_klass), Klass*) \ |
695 static_field(SystemDictionary, WK_KLASS(ClassCastException_klass), klassOop) \ | 650 static_field(SystemDictionary, WK_KLASS(ClassCastException_klass), Klass*) \ |
696 static_field(SystemDictionary, WK_KLASS(ArrayStoreException_klass), klassOop) \ | 651 static_field(SystemDictionary, WK_KLASS(ArrayStoreException_klass), Klass*) \ |
697 static_field(SystemDictionary, WK_KLASS(VirtualMachineError_klass), klassOop) \ | 652 static_field(SystemDictionary, WK_KLASS(VirtualMachineError_klass), Klass*) \ |
698 static_field(SystemDictionary, WK_KLASS(OutOfMemoryError_klass), klassOop) \ | 653 static_field(SystemDictionary, WK_KLASS(OutOfMemoryError_klass), Klass*) \ |
699 static_field(SystemDictionary, WK_KLASS(StackOverflowError_klass), klassOop) \ | 654 static_field(SystemDictionary, WK_KLASS(StackOverflowError_klass), Klass*) \ |
700 static_field(SystemDictionary, WK_KLASS(ProtectionDomain_klass), klassOop) \ | 655 static_field(SystemDictionary, WK_KLASS(ProtectionDomain_klass), Klass*) \ |
701 static_field(SystemDictionary, WK_KLASS(AccessControlContext_klass), klassOop) \ | 656 static_field(SystemDictionary, WK_KLASS(AccessControlContext_klass), Klass*) \ |
702 static_field(SystemDictionary, WK_KLASS(Reference_klass), klassOop) \ | 657 static_field(SystemDictionary, WK_KLASS(Reference_klass), Klass*) \ |
703 static_field(SystemDictionary, WK_KLASS(SoftReference_klass), klassOop) \ | 658 static_field(SystemDictionary, WK_KLASS(SoftReference_klass), Klass*) \ |
704 static_field(SystemDictionary, WK_KLASS(WeakReference_klass), klassOop) \ | 659 static_field(SystemDictionary, WK_KLASS(WeakReference_klass), Klass*) \ |
705 static_field(SystemDictionary, WK_KLASS(FinalReference_klass), klassOop) \ | 660 static_field(SystemDictionary, WK_KLASS(FinalReference_klass), Klass*) \ |
706 static_field(SystemDictionary, WK_KLASS(PhantomReference_klass), klassOop) \ | 661 static_field(SystemDictionary, WK_KLASS(PhantomReference_klass), Klass*) \ |
707 static_field(SystemDictionary, WK_KLASS(Finalizer_klass), klassOop) \ | 662 static_field(SystemDictionary, WK_KLASS(Finalizer_klass), Klass*) \ |
708 static_field(SystemDictionary, WK_KLASS(Thread_klass), klassOop) \ | 663 static_field(SystemDictionary, WK_KLASS(Thread_klass), Klass*) \ |
709 static_field(SystemDictionary, WK_KLASS(ThreadGroup_klass), klassOop) \ | 664 static_field(SystemDictionary, WK_KLASS(ThreadGroup_klass), Klass*) \ |
710 static_field(SystemDictionary, WK_KLASS(Properties_klass), klassOop) \ | 665 static_field(SystemDictionary, WK_KLASS(Properties_klass), Klass*) \ |
711 static_field(SystemDictionary, WK_KLASS(StringBuffer_klass), klassOop) \ | 666 static_field(SystemDictionary, WK_KLASS(StringBuffer_klass), Klass*) \ |
712 static_field(SystemDictionary, WK_KLASS(MethodHandle_klass), klassOop) \ | 667 static_field(SystemDictionary, WK_KLASS(MethodHandle_klass), Klass*) \ |
713 static_field(SystemDictionary, _box_klasses[0], klassOop) \ | 668 static_field(SystemDictionary, _box_klasses[0], Klass*) \ |
714 static_field(SystemDictionary, _java_system_loader, oop) \ | 669 static_field(SystemDictionary, _java_system_loader, oop) \ |
715 \ | 670 \ |
716 /*************/ \ | 671 /*************/ \ |
717 /* vmSymbols */ \ | 672 /* vmSymbols */ \ |
718 /*************/ \ | 673 /*************/ \ |
746 \ | 701 \ |
747 /*******************/ \ | 702 /*******************/ \ |
748 /* DictionaryEntry */ \ | 703 /* DictionaryEntry */ \ |
749 /*******************/ \ | 704 /*******************/ \ |
750 \ | 705 \ |
751 nonstatic_field(DictionaryEntry, _loader, oop) \ | 706 nonstatic_field(DictionaryEntry, _loader_data, ClassLoaderData*) \ |
752 nonstatic_field(DictionaryEntry, _pd_set, ProtectionDomainEntry*) \ | 707 nonstatic_field(DictionaryEntry, _pd_set, ProtectionDomainEntry*) \ |
753 \ | 708 \ |
754 /********************/ \ | 709 /********************/ \ |
755 \ | 710 \ |
756 nonstatic_field(PlaceholderEntry, _loader, oop) \ | 711 nonstatic_field(PlaceholderEntry, _loader_data, ClassLoaderData*) \ |
757 \ | 712 \ |
758 /**************************/ \ | 713 /**************************/ \ |
759 /* ProctectionDomainEntry */ \ | 714 /* ProctectionDomainEntry */ \ |
760 /**************************/ \ | 715 /**************************/ \ |
761 \ | 716 \ |
767 /*************************/ \ | 722 /*************************/ \ |
768 \ | 723 \ |
769 nonstatic_field(LoaderConstraintEntry, _name, Symbol*) \ | 724 nonstatic_field(LoaderConstraintEntry, _name, Symbol*) \ |
770 nonstatic_field(LoaderConstraintEntry, _num_loaders, int) \ | 725 nonstatic_field(LoaderConstraintEntry, _num_loaders, int) \ |
771 nonstatic_field(LoaderConstraintEntry, _max_loaders, int) \ | 726 nonstatic_field(LoaderConstraintEntry, _max_loaders, int) \ |
772 nonstatic_field(LoaderConstraintEntry, _loaders, oop*) \ | 727 nonstatic_field(LoaderConstraintEntry, _loaders, ClassLoaderData**) \ |
728 \ | |
729 nonstatic_field(ClassLoaderData, _class_loader, oop) \ | |
730 nonstatic_field(ClassLoaderData, _next, ClassLoaderData*) \ | |
731 \ | |
732 static_field(ClassLoaderDataGraph, _head, ClassLoaderData*) \ | |
733 nonstatic_field(ClassLoaderDataGraph, _unloading, ClassLoaderData*) \ | |
773 \ | 734 \ |
774 /*******************/ \ | 735 /*******************/ \ |
775 /* GrowableArrays */ \ | 736 /* GrowableArrays */ \ |
776 /*******************/ \ | 737 /*******************/ \ |
777 \ | 738 \ |
851 \ | 812 \ |
852 /**************************************************/ \ | 813 /**************************************************/ \ |
853 /* NMethods (NOTE: incomplete, but only a little) */ \ | 814 /* NMethods (NOTE: incomplete, but only a little) */ \ |
854 /**************************************************/ \ | 815 /**************************************************/ \ |
855 \ | 816 \ |
856 nonstatic_field(nmethod, _method, methodOop) \ | 817 nonstatic_field(nmethod, _method, Method*) \ |
857 nonstatic_field(nmethod, _entry_bci, int) \ | 818 nonstatic_field(nmethod, _entry_bci, int) \ |
858 nonstatic_field(nmethod, _osr_link, nmethod*) \ | 819 nonstatic_field(nmethod, _osr_link, nmethod*) \ |
859 nonstatic_field(nmethod, _scavenge_root_link, nmethod*) \ | 820 nonstatic_field(nmethod, _scavenge_root_link, nmethod*) \ |
860 nonstatic_field(nmethod, _scavenge_root_state, jbyte) \ | 821 nonstatic_field(nmethod, _scavenge_root_state, jbyte) \ |
861 nonstatic_field(nmethod, _state, unsigned char) \ | 822 nonstatic_field(nmethod, _state, unsigned char) \ |
864 nonstatic_field(nmethod, _deoptimize_mh_offset, int) \ | 825 nonstatic_field(nmethod, _deoptimize_mh_offset, int) \ |
865 nonstatic_field(nmethod, _orig_pc_offset, int) \ | 826 nonstatic_field(nmethod, _orig_pc_offset, int) \ |
866 nonstatic_field(nmethod, _stub_offset, int) \ | 827 nonstatic_field(nmethod, _stub_offset, int) \ |
867 nonstatic_field(nmethod, _consts_offset, int) \ | 828 nonstatic_field(nmethod, _consts_offset, int) \ |
868 nonstatic_field(nmethod, _oops_offset, int) \ | 829 nonstatic_field(nmethod, _oops_offset, int) \ |
830 nonstatic_field(nmethod, _metadata_offset, int) \ | |
869 nonstatic_field(nmethod, _scopes_data_offset, int) \ | 831 nonstatic_field(nmethod, _scopes_data_offset, int) \ |
870 nonstatic_field(nmethod, _scopes_pcs_offset, int) \ | 832 nonstatic_field(nmethod, _scopes_pcs_offset, int) \ |
871 nonstatic_field(nmethod, _dependencies_offset, int) \ | 833 nonstatic_field(nmethod, _dependencies_offset, int) \ |
872 nonstatic_field(nmethod, _handler_table_offset, int) \ | 834 nonstatic_field(nmethod, _handler_table_offset, int) \ |
873 nonstatic_field(nmethod, _nul_chk_table_offset, int) \ | 835 nonstatic_field(nmethod, _nul_chk_table_offset, int) \ |
916 nonstatic_field(NamedThread, _processed_thread, JavaThread*) \ | 878 nonstatic_field(NamedThread, _processed_thread, JavaThread*) \ |
917 nonstatic_field(JavaThread, _next, JavaThread*) \ | 879 nonstatic_field(JavaThread, _next, JavaThread*) \ |
918 nonstatic_field(JavaThread, _threadObj, oop) \ | 880 nonstatic_field(JavaThread, _threadObj, oop) \ |
919 nonstatic_field(JavaThread, _anchor, JavaFrameAnchor) \ | 881 nonstatic_field(JavaThread, _anchor, JavaFrameAnchor) \ |
920 nonstatic_field(JavaThread, _vm_result, oop) \ | 882 nonstatic_field(JavaThread, _vm_result, oop) \ |
921 nonstatic_field(JavaThread, _vm_result_2, oop) \ | 883 nonstatic_field(JavaThread, _vm_result_2, Metadata*) \ |
922 nonstatic_field(JavaThread, _pending_async_exception, oop) \ | 884 nonstatic_field(JavaThread, _pending_async_exception, oop) \ |
923 volatile_nonstatic_field(JavaThread, _exception_oop, oop) \ | 885 volatile_nonstatic_field(JavaThread, _exception_oop, oop) \ |
924 volatile_nonstatic_field(JavaThread, _exception_pc, address) \ | 886 volatile_nonstatic_field(JavaThread, _exception_pc, address) \ |
925 nonstatic_field(JavaThread, _is_compiling, bool) \ | 887 nonstatic_field(JavaThread, _is_compiling, bool) \ |
926 nonstatic_field(JavaThread, _special_runtime_exit_condition, JavaThread::AsyncRequests) \ | 888 nonstatic_field(JavaThread, _special_runtime_exit_condition, JavaThread::AsyncRequests) \ |
1006 nonstatic_field(ciEnv, _factory, ciObjectFactory*) \ | 968 nonstatic_field(ciEnv, _factory, ciObjectFactory*) \ |
1007 nonstatic_field(ciEnv, _dependencies, Dependencies*) \ | 969 nonstatic_field(ciEnv, _dependencies, Dependencies*) \ |
1008 nonstatic_field(ciEnv, _task, CompileTask*) \ | 970 nonstatic_field(ciEnv, _task, CompileTask*) \ |
1009 nonstatic_field(ciEnv, _arena, Arena*) \ | 971 nonstatic_field(ciEnv, _arena, Arena*) \ |
1010 \ | 972 \ |
973 nonstatic_field(ciBaseObject, _ident, uint) \ | |
974 \ | |
1011 nonstatic_field(ciObject, _handle, jobject) \ | 975 nonstatic_field(ciObject, _handle, jobject) \ |
1012 nonstatic_field(ciObject, _klass, ciKlass*) \ | 976 nonstatic_field(ciObject, _klass, ciKlass*) \ |
1013 nonstatic_field(ciObject, _ident, uint) \ | 977 \ |
1014 \ | 978 nonstatic_field(ciMetadata, _metadata, Metadata*) \ |
1015 nonstatic_field(ciSymbol, _ident, uint) \ | 979 \ |
1016 nonstatic_field(ciSymbol, _symbol, Symbol*) \ | 980 nonstatic_field(ciSymbol, _symbol, Symbol*) \ |
1017 \ | 981 \ |
1018 nonstatic_field(ciType, _basic_type, BasicType) \ | 982 nonstatic_field(ciType, _basic_type, BasicType) \ |
1019 \ | 983 \ |
1020 nonstatic_field(ciKlass, _name, ciSymbol*) \ | 984 nonstatic_field(ciKlass, _name, ciSymbol*) \ |
1022 nonstatic_field(ciArrayKlass, _dimension, jint) \ | 986 nonstatic_field(ciArrayKlass, _dimension, jint) \ |
1023 \ | 987 \ |
1024 nonstatic_field(ciObjArrayKlass, _element_klass, ciKlass*) \ | 988 nonstatic_field(ciObjArrayKlass, _element_klass, ciKlass*) \ |
1025 nonstatic_field(ciObjArrayKlass, _base_element_klass, ciKlass*) \ | 989 nonstatic_field(ciObjArrayKlass, _base_element_klass, ciKlass*) \ |
1026 \ | 990 \ |
1027 nonstatic_field(ciInstanceKlass, _init_state, instanceKlass::ClassState) \ | 991 nonstatic_field(ciInstanceKlass, _init_state, InstanceKlass::ClassState) \ |
1028 nonstatic_field(ciInstanceKlass, _is_shared, bool) \ | 992 nonstatic_field(ciInstanceKlass, _is_shared, bool) \ |
1029 \ | 993 \ |
1030 nonstatic_field(ciMethod, _interpreter_invocation_count, int) \ | 994 nonstatic_field(ciMethod, _interpreter_invocation_count, int) \ |
1031 nonstatic_field(ciMethod, _interpreter_throwout_count, int) \ | 995 nonstatic_field(ciMethod, _interpreter_throwout_count, int) \ |
1032 \ | 996 \ |
1038 nonstatic_field(ciMethodData, _eflags, intx) \ | 1002 nonstatic_field(ciMethodData, _eflags, intx) \ |
1039 nonstatic_field(ciMethodData, _arg_local, intx) \ | 1003 nonstatic_field(ciMethodData, _arg_local, intx) \ |
1040 nonstatic_field(ciMethodData, _arg_stack, intx) \ | 1004 nonstatic_field(ciMethodData, _arg_stack, intx) \ |
1041 nonstatic_field(ciMethodData, _arg_returned, intx) \ | 1005 nonstatic_field(ciMethodData, _arg_returned, intx) \ |
1042 nonstatic_field(ciMethodData, _current_mileage, int) \ | 1006 nonstatic_field(ciMethodData, _current_mileage, int) \ |
1043 nonstatic_field(ciMethodData, _orig, methodDataOopDesc) \ | 1007 nonstatic_field(ciMethodData, _orig, MethodData) \ |
1044 \ | 1008 \ |
1045 nonstatic_field(ciField, _holder, ciInstanceKlass*) \ | 1009 nonstatic_field(ciField, _holder, ciInstanceKlass*) \ |
1046 nonstatic_field(ciField, _name, ciSymbol*) \ | 1010 nonstatic_field(ciField, _name, ciSymbol*) \ |
1047 nonstatic_field(ciField, _signature, ciSymbol*) \ | 1011 nonstatic_field(ciField, _signature, ciSymbol*) \ |
1048 nonstatic_field(ciField, _offset, int) \ | 1012 nonstatic_field(ciField, _offset, int) \ |
1049 nonstatic_field(ciField, _is_constant, bool) \ | 1013 nonstatic_field(ciField, _is_constant, bool) \ |
1050 nonstatic_field(ciField, _constant_value, ciConstant) \ | 1014 nonstatic_field(ciField, _constant_value, ciConstant) \ |
1051 \ | 1015 \ |
1052 nonstatic_field(ciObjectFactory, _ci_objects, GrowableArray<ciObject*>*) \ | 1016 nonstatic_field(ciObjectFactory, _ci_metadata, GrowableArray<ciMetadata*>*) \ |
1053 nonstatic_field(ciObjectFactory, _symbols, GrowableArray<ciSymbol*>*) \ | 1017 nonstatic_field(ciObjectFactory, _symbols, GrowableArray<ciSymbol*>*) \ |
1054 nonstatic_field(ciObjectFactory, _unloaded_methods, GrowableArray<ciMethod*>*) \ | 1018 nonstatic_field(ciObjectFactory, _unloaded_methods, GrowableArray<ciMethod*>*) \ |
1055 \ | 1019 \ |
1056 nonstatic_field(ciConstant, _type, BasicType) \ | 1020 nonstatic_field(ciConstant, _type, BasicType) \ |
1057 nonstatic_field(ciConstant, _value._int, jint) \ | 1021 nonstatic_field(ciConstant, _value._int, jint) \ |
1217 \ | 1181 \ |
1218 /*************************/ \ | 1182 /*************************/ \ |
1219 /* JVMTI */ \ | 1183 /* JVMTI */ \ |
1220 /*************************/ \ | 1184 /*************************/ \ |
1221 \ | 1185 \ |
1222 static_field(JvmtiExport, _can_access_local_variables, bool) \ | 1186 JVMTI_STRUCTS(static_field) \ |
1223 static_field(JvmtiExport, _can_hotswap_or_post_breakpoint, bool) \ | |
1224 static_field(JvmtiExport, _can_post_on_exceptions, bool) \ | |
1225 static_field(JvmtiExport, _can_walk_any_space, bool) \ | |
1226 \ | 1187 \ |
1227 /*************/ \ | 1188 /*************/ \ |
1228 /* Arguments */ \ | 1189 /* Arguments */ \ |
1229 /*************/ \ | 1190 /*************/ \ |
1230 \ | 1191 \ |
1232 static_field(Arguments, _num_jvm_flags, int) \ | 1193 static_field(Arguments, _num_jvm_flags, int) \ |
1233 static_field(Arguments, _jvm_args_array, char**) \ | 1194 static_field(Arguments, _jvm_args_array, char**) \ |
1234 static_field(Arguments, _num_jvm_args, int) \ | 1195 static_field(Arguments, _num_jvm_args, int) \ |
1235 static_field(Arguments, _java_command, char*) \ | 1196 static_field(Arguments, _java_command, char*) \ |
1236 \ | 1197 \ |
1198 /************/ \ | |
1199 /* Array<T> */ \ | |
1200 /************/ \ | |
1201 \ | |
1202 nonstatic_field(Array<int>, _length, int) \ | |
1203 unchecked_nonstatic_field(Array<int>, _data, sizeof(int)) \ | |
1204 unchecked_nonstatic_field(Array<u1>, _data, sizeof(u1)) \ | |
1205 unchecked_nonstatic_field(Array<u2>, _data, sizeof(u2)) \ | |
1206 unchecked_nonstatic_field(Array<Method*>, _data, sizeof(Method*)) \ | |
1207 unchecked_nonstatic_field(Array<Klass*>, _data, sizeof(Klass*)) \ | |
1208 \ | |
1237 /*********************************/ \ | 1209 /*********************************/ \ |
1238 /* java_lang_Class fields */ \ | 1210 /* java_lang_Class fields */ \ |
1239 /*********************************/ \ | 1211 /*********************************/ \ |
1240 \ | 1212 \ |
1241 static_field(java_lang_Class, _klass_offset, int) \ | 1213 static_field(java_lang_Class, _klass_offset, int) \ |
1246 \ | 1218 \ |
1247 /************************/ \ | 1219 /************************/ \ |
1248 /* Miscellaneous fields */ \ | 1220 /* Miscellaneous fields */ \ |
1249 /************************/ \ | 1221 /************************/ \ |
1250 \ | 1222 \ |
1251 nonstatic_field(CompileTask, _method, jobject) \ | 1223 nonstatic_field(CompileTask, _method, Method*) \ |
1252 nonstatic_field(CompileTask, _osr_bci, int) \ | 1224 nonstatic_field(CompileTask, _osr_bci, int) \ |
1253 nonstatic_field(CompileTask, _comp_level, int) \ | 1225 nonstatic_field(CompileTask, _comp_level, int) \ |
1254 nonstatic_field(CompileTask, _compile_id, uint) \ | 1226 nonstatic_field(CompileTask, _compile_id, uint) \ |
1255 nonstatic_field(CompileTask, _next, CompileTask*) \ | 1227 nonstatic_field(CompileTask, _next, CompileTask*) \ |
1256 nonstatic_field(CompileTask, _prev, CompileTask*) \ | 1228 nonstatic_field(CompileTask, _prev, CompileTask*) \ |
1260 nonstatic_field(vframeArray, _caller, frame) \ | 1232 nonstatic_field(vframeArray, _caller, frame) \ |
1261 nonstatic_field(vframeArray, _frames, int) \ | 1233 nonstatic_field(vframeArray, _frames, int) \ |
1262 \ | 1234 \ |
1263 nonstatic_field(vframeArrayElement, _frame, frame) \ | 1235 nonstatic_field(vframeArrayElement, _frame, frame) \ |
1264 nonstatic_field(vframeArrayElement, _bci, int) \ | 1236 nonstatic_field(vframeArrayElement, _bci, int) \ |
1265 nonstatic_field(vframeArrayElement, _method, methodOop) \ | 1237 nonstatic_field(vframeArrayElement, _method, Method*) \ |
1266 \ | 1238 \ |
1267 nonstatic_field(AccessFlags, _flags, jint) \ | 1239 nonstatic_field(AccessFlags, _flags, jint) \ |
1268 nonstatic_field(elapsedTimer, _counter, jlong) \ | 1240 nonstatic_field(elapsedTimer, _counter, jlong) \ |
1269 nonstatic_field(elapsedTimer, _active, bool) \ | 1241 nonstatic_field(elapsedTimer, _active, bool) \ |
1270 nonstatic_field(InvocationCounter, _counter, unsigned int) | 1242 nonstatic_field(InvocationCounter, _counter, unsigned int) \ |
1243 volatile_nonstatic_field(FreeChunk, _size, size_t) \ | |
1244 nonstatic_field(FreeChunk, _next, FreeChunk*) \ | |
1245 nonstatic_field(FreeChunk, _prev, FreeChunk*) \ | |
1246 nonstatic_field(FreeList<FreeChunk>, _size, size_t) \ | |
1247 nonstatic_field(FreeList<Metablock>, _size, size_t) \ | |
1248 nonstatic_field(FreeList<FreeChunk>, _count, ssize_t) \ | |
1249 nonstatic_field(FreeList<Metablock>, _count, ssize_t) \ | |
1250 nonstatic_field(MetablockTreeDictionary, _total_size, size_t) | |
1271 | 1251 |
1272 /* NOTE that we do not use the last_entry() macro here; it is used */ | 1252 /* NOTE that we do not use the last_entry() macro here; it is used */ |
1273 /* in vmStructs_<os>_<cpu>.hpp's VM_STRUCTS_OS_CPU macro (and must */ | 1253 /* in vmStructs_<os>_<cpu>.hpp's VM_STRUCTS_OS_CPU macro (and must */ |
1274 /* be present there) */ | 1254 /* be present there) */ |
1275 | 1255 |
1358 declare_unsigned_integer_type(unsigned short) \ | 1338 declare_unsigned_integer_type(unsigned short) \ |
1359 declare_unsigned_integer_type(jushort) \ | 1339 declare_unsigned_integer_type(jushort) \ |
1360 declare_unsigned_integer_type(unsigned long) \ | 1340 declare_unsigned_integer_type(unsigned long) \ |
1361 /* The compiler thinks this is a different type than */ \ | 1341 /* The compiler thinks this is a different type than */ \ |
1362 /* unsigned short on Win32 */ \ | 1342 /* unsigned short on Win32 */ \ |
1343 declare_unsigned_integer_type(u1) \ | |
1363 declare_unsigned_integer_type(u2) \ | 1344 declare_unsigned_integer_type(u2) \ |
1364 declare_unsigned_integer_type(u1) \ | |
1365 declare_unsigned_integer_type(unsigned) \ | 1345 declare_unsigned_integer_type(unsigned) \ |
1366 \ | 1346 \ |
1367 /*****************************/ \ | 1347 /*****************************/ \ |
1368 /* C primitive pointer types */ \ | 1348 /* C primitive pointer types */ \ |
1369 /*****************************/ \ | 1349 /*****************************/ \ |
1370 \ | 1350 \ |
1351 declare_toplevel_type(void*) \ | |
1371 declare_toplevel_type(int*) \ | 1352 declare_toplevel_type(int*) \ |
1372 declare_toplevel_type(char*) \ | 1353 declare_toplevel_type(char*) \ |
1373 declare_toplevel_type(char**) \ | 1354 declare_toplevel_type(char**) \ |
1374 declare_toplevel_type(u_char*) \ | 1355 declare_toplevel_type(u_char*) \ |
1375 declare_toplevel_type(unsigned char*) \ | 1356 declare_toplevel_type(unsigned char*) \ |
1387 declare_unsigned_integer_type(uintx) \ | 1368 declare_unsigned_integer_type(uintx) \ |
1388 declare_unsigned_integer_type(uintptr_t) \ | 1369 declare_unsigned_integer_type(uintptr_t) \ |
1389 declare_unsigned_integer_type(uint32_t) \ | 1370 declare_unsigned_integer_type(uint32_t) \ |
1390 declare_unsigned_integer_type(uint64_t) \ | 1371 declare_unsigned_integer_type(uint64_t) \ |
1391 \ | 1372 \ |
1392 /*******************************************************************************/ \ | 1373 /******************************************/ \ |
1393 /* OopDesc and Klass hierarchies (NOTE: missing methodDataOop-related classes) */ \ | 1374 /* OopDesc hierarchy (NOTE: some missing) */ \ |
1394 /*******************************************************************************/ \ | 1375 /******************************************/ \ |
1395 \ | 1376 \ |
1396 declare_toplevel_type(oopDesc) \ | 1377 declare_toplevel_type(oopDesc) \ |
1397 declare_toplevel_type(Klass_vtbl) \ | 1378 declare_type(arrayOopDesc, oopDesc) \ |
1398 declare_type(Klass, Klass_vtbl) \ | 1379 declare_type(objArrayOopDesc, arrayOopDesc) \ |
1399 declare_type(arrayKlass, Klass) \ | 1380 declare_type(instanceOopDesc, oopDesc) \ |
1400 declare_type(arrayKlassKlass, klassKlass) \ | 1381 declare_type(markOopDesc, oopDesc) \ |
1401 declare_type(arrayOopDesc, oopDesc) \ | 1382 \ |
1402 declare_type(compiledICHolderKlass, Klass) \ | 1383 /**************************************************/ \ |
1403 declare_type(compiledICHolderOopDesc, oopDesc) \ | 1384 /* MetadataOopDesc hierarchy (NOTE: some missing) */ \ |
1404 declare_type(constantPoolKlass, Klass) \ | 1385 /**************************************************/ \ |
1405 declare_type(constantPoolOopDesc, oopDesc) \ | 1386 \ |
1406 declare_type(constantPoolCacheKlass, Klass) \ | 1387 declare_toplevel_type(CompiledICHolder) \ |
1407 declare_type(constantPoolCacheOopDesc, oopDesc) \ | 1388 declare_toplevel_type(MetaspaceObj) \ |
1408 declare_type(instanceKlass, Klass) \ | 1389 declare_type(Metadata, MetaspaceObj) \ |
1409 declare_type(instanceKlassKlass, klassKlass) \ | 1390 declare_type(Klass, Metadata) \ |
1410 declare_type(instanceOopDesc, oopDesc) \ | 1391 declare_type(ArrayKlass, Klass) \ |
1411 declare_type(instanceMirrorKlass, instanceKlass) \ | 1392 declare_type(ObjArrayKlass, ArrayKlass) \ |
1412 declare_type(instanceRefKlass, instanceKlass) \ | 1393 declare_type(TypeArrayKlass, ArrayKlass) \ |
1413 declare_type(klassKlass, Klass) \ | 1394 declare_type(InstanceKlass, Klass) \ |
1414 declare_type(klassOopDesc, oopDesc) \ | 1395 declare_type(InstanceClassLoaderKlass, InstanceKlass) \ |
1415 declare_type(markOopDesc, oopDesc) \ | 1396 declare_type(InstanceMirrorKlass, InstanceKlass) \ |
1416 declare_type(methodDataKlass, Klass) \ | 1397 declare_type(InstanceRefKlass, InstanceKlass) \ |
1417 declare_type(methodDataOopDesc, oopDesc) \ | 1398 declare_type(ConstantPool, Metadata) \ |
1418 declare_type(methodKlass, Klass) \ | 1399 declare_type(ConstantPoolCache, MetaspaceObj) \ |
1419 declare_type(constMethodKlass, Klass) \ | 1400 declare_type(MethodData, Metadata) \ |
1420 declare_type(methodOopDesc, oopDesc) \ | 1401 declare_type(Method, Metadata) \ |
1421 declare_type(objArrayKlass, arrayKlass) \ | 1402 declare_type(ConstMethod, MetaspaceObj) \ |
1422 declare_type(objArrayKlassKlass, arrayKlassKlass) \ | 1403 \ |
1423 declare_type(objArrayOopDesc, arrayOopDesc) \ | |
1424 declare_type(constMethodOopDesc, oopDesc) \ | |
1425 declare_type(typeArrayKlass, arrayKlass) \ | |
1426 declare_type(typeArrayKlassKlass, arrayKlassKlass) \ | |
1427 declare_type(typeArrayOopDesc, arrayOopDesc) \ | |
1428 declare_toplevel_type(Symbol) \ | 1404 declare_toplevel_type(Symbol) \ |
1429 declare_toplevel_type(Symbol*) \ | 1405 declare_toplevel_type(Symbol*) \ |
1406 declare_toplevel_type(volatile Metadata*) \ | |
1430 \ | 1407 \ |
1431 declare_toplevel_type(nmethodBucket) \ | 1408 declare_toplevel_type(nmethodBucket) \ |
1432 \ | 1409 \ |
1433 /********/ \ | 1410 /********/ \ |
1434 /* Oops */ \ | 1411 /* Oops */ \ |
1435 /********/ \ | 1412 /********/ \ |
1436 \ | 1413 \ |
1437 declare_oop_type(constantPoolOop) \ | |
1438 declare_oop_type(constantPoolCacheOop) \ | |
1439 declare_oop_type(klassOop) \ | |
1440 declare_oop_type(markOop) \ | 1414 declare_oop_type(markOop) \ |
1441 declare_oop_type(methodOop) \ | |
1442 declare_oop_type(methodDataOop) \ | |
1443 declare_oop_type(objArrayOop) \ | 1415 declare_oop_type(objArrayOop) \ |
1444 declare_oop_type(oop) \ | 1416 declare_oop_type(oop) \ |
1445 declare_oop_type(narrowOop) \ | 1417 declare_oop_type(narrowOop) \ |
1446 declare_oop_type(wideKlassOop) \ | |
1447 declare_oop_type(constMethodOop) \ | |
1448 declare_oop_type(typeArrayOop) \ | 1418 declare_oop_type(typeArrayOop) \ |
1449 \ | 1419 \ |
1450 /*************************************/ \ | 1420 /*************************************/ \ |
1451 /* MethodOop-related data structures */ \ | 1421 /* MethodOop-related data structures */ \ |
1452 /*************************************/ \ | 1422 /*************************************/ \ |
1453 \ | 1423 \ |
1454 declare_toplevel_type(CheckedExceptionElement) \ | 1424 declare_toplevel_type(CheckedExceptionElement) \ |
1455 declare_toplevel_type(LocalVariableTableElement) \ | 1425 declare_toplevel_type(LocalVariableTableElement) \ |
1456 declare_toplevel_type(ExceptionTableElement) \ | 1426 declare_toplevel_type(ExceptionTableElement) \ |
1427 \ | |
1428 declare_toplevel_type(ClassLoaderData) \ | |
1429 declare_toplevel_type(ClassLoaderDataGraph) \ | |
1457 \ | 1430 \ |
1458 /******************************************/ \ | 1431 /******************************************/ \ |
1459 /* Generation and space hierarchies */ \ | 1432 /* Generation and space hierarchies */ \ |
1460 /* (needed for run-time type information) */ \ | 1433 /* (needed for run-time type information) */ \ |
1461 /******************************************/ \ | 1434 /******************************************/ \ |
1466 declare_toplevel_type(Generation) \ | 1439 declare_toplevel_type(Generation) \ |
1467 declare_type(DefNewGeneration, Generation) \ | 1440 declare_type(DefNewGeneration, Generation) \ |
1468 declare_type(CardGeneration, Generation) \ | 1441 declare_type(CardGeneration, Generation) \ |
1469 declare_type(OneContigSpaceCardGeneration, CardGeneration) \ | 1442 declare_type(OneContigSpaceCardGeneration, CardGeneration) \ |
1470 declare_type(TenuredGeneration, OneContigSpaceCardGeneration) \ | 1443 declare_type(TenuredGeneration, OneContigSpaceCardGeneration) \ |
1471 declare_type(CompactingPermGenGen, OneContigSpaceCardGeneration) \ | |
1472 declare_toplevel_type(Space) \ | 1444 declare_toplevel_type(Space) \ |
1473 declare_toplevel_type(BitMap) \ | 1445 declare_toplevel_type(BitMap) \ |
1474 declare_type(CompactibleSpace, Space) \ | 1446 declare_type(CompactibleSpace, Space) \ |
1475 declare_type(ContiguousSpace, CompactibleSpace) \ | 1447 declare_type(ContiguousSpace, CompactibleSpace) \ |
1476 declare_type(EdenSpace, ContiguousSpace) \ | 1448 declare_type(EdenSpace, ContiguousSpace) \ |
1477 declare_type(OffsetTableContigSpace, ContiguousSpace) \ | 1449 declare_type(OffsetTableContigSpace, ContiguousSpace) \ |
1478 declare_type(TenuredSpace, OffsetTableContigSpace) \ | 1450 declare_type(TenuredSpace, OffsetTableContigSpace) \ |
1479 declare_type(ContigPermSpace, OffsetTableContigSpace) \ | |
1480 declare_toplevel_type(PermGen) \ | |
1481 declare_type(CompactingPermGen, PermGen) \ | |
1482 declare_toplevel_type(BarrierSet) \ | 1451 declare_toplevel_type(BarrierSet) \ |
1483 declare_type(ModRefBarrierSet, BarrierSet) \ | 1452 declare_type(ModRefBarrierSet, BarrierSet) \ |
1484 declare_type(CardTableModRefBS, ModRefBarrierSet) \ | 1453 declare_type(CardTableModRefBS, ModRefBarrierSet) \ |
1485 declare_type(CardTableModRefBSForCTRS, CardTableModRefBS) \ | 1454 declare_type(CardTableModRefBSForCTRS, CardTableModRefBS) \ |
1486 declare_toplevel_type(GenRemSet) \ | 1455 declare_toplevel_type(GenRemSet) \ |
1496 declare_toplevel_type(ageTable) \ | 1465 declare_toplevel_type(ageTable) \ |
1497 declare_toplevel_type(Generation::StatRecord) \ | 1466 declare_toplevel_type(Generation::StatRecord) \ |
1498 declare_toplevel_type(GenerationSpec) \ | 1467 declare_toplevel_type(GenerationSpec) \ |
1499 declare_toplevel_type(HeapWord) \ | 1468 declare_toplevel_type(HeapWord) \ |
1500 declare_toplevel_type(MemRegion) \ | 1469 declare_toplevel_type(MemRegion) \ |
1501 declare_toplevel_type(PermanentGenerationSpec) \ | |
1502 declare_toplevel_type(ThreadLocalAllocBuffer) \ | 1470 declare_toplevel_type(ThreadLocalAllocBuffer) \ |
1503 declare_toplevel_type(VirtualSpace) \ | 1471 declare_toplevel_type(VirtualSpace) \ |
1504 declare_toplevel_type(WaterMark) \ | 1472 declare_toplevel_type(WaterMark) \ |
1505 \ | 1473 \ |
1506 /* Pointers to Garbage Collection types */ \ | 1474 /* Pointers to Garbage Collection types */ \ |
1522 declare_toplevel_type(GenerationSpec**) \ | 1490 declare_toplevel_type(GenerationSpec**) \ |
1523 declare_toplevel_type(HeapWord*) \ | 1491 declare_toplevel_type(HeapWord*) \ |
1524 declare_toplevel_type(MemRegion*) \ | 1492 declare_toplevel_type(MemRegion*) \ |
1525 declare_toplevel_type(OffsetTableContigSpace*) \ | 1493 declare_toplevel_type(OffsetTableContigSpace*) \ |
1526 declare_toplevel_type(OneContigSpaceCardGeneration*) \ | 1494 declare_toplevel_type(OneContigSpaceCardGeneration*) \ |
1527 declare_toplevel_type(PermGen*) \ | |
1528 declare_toplevel_type(Space*) \ | 1495 declare_toplevel_type(Space*) \ |
1529 declare_toplevel_type(ThreadLocalAllocBuffer*) \ | 1496 declare_toplevel_type(ThreadLocalAllocBuffer*) \ |
1530 \ | 1497 \ |
1531 /************************/ \ | 1498 /************************/ \ |
1532 /* PerfMemory - jvmstat */ \ | 1499 /* PerfMemory - jvmstat */ \ |
1543 \ | 1510 \ |
1544 declare_toplevel_type(BasicHashtable<mtInternal>) \ | 1511 declare_toplevel_type(BasicHashtable<mtInternal>) \ |
1545 declare_type(IntptrHashtable, BasicHashtable<mtInternal>) \ | 1512 declare_type(IntptrHashtable, BasicHashtable<mtInternal>) \ |
1546 declare_type(SymbolTable, SymbolHashtable) \ | 1513 declare_type(SymbolTable, SymbolHashtable) \ |
1547 declare_type(StringTable, StringHashtable) \ | 1514 declare_type(StringTable, StringHashtable) \ |
1548 declare_type(LoaderConstraintTable, klassOopHashtable) \ | 1515 declare_type(LoaderConstraintTable, KlassHashtable) \ |
1549 declare_type(klassOopTwoOopHashtable, klassOopHashtable) \ | 1516 declare_type(KlassTwoOopHashtable, KlassHashtable) \ |
1550 declare_type(Dictionary, klassOopTwoOopHashtable) \ | 1517 declare_type(Dictionary, KlassTwoOopHashtable) \ |
1551 declare_type(PlaceholderTable, SymbolTwoOopHashtable) \ | 1518 declare_type(PlaceholderTable, SymbolTwoOopHashtable) \ |
1552 declare_toplevel_type(BasicHashtableEntry<mtInternal>) \ | 1519 declare_toplevel_type(BasicHashtableEntry<mtInternal>) \ |
1553 declare_type(IntptrHashtableEntry, BasicHashtableEntry<mtInternal>) \ | 1520 declare_type(IntptrHashtableEntry, BasicHashtableEntry<mtInternal>) \ |
1554 declare_type(DictionaryEntry, klassHashtableEntry) \ | 1521 declare_type(DictionaryEntry, KlassHashtableEntry) \ |
1555 declare_type(PlaceholderEntry, SymbolHashtableEntry) \ | 1522 declare_type(PlaceholderEntry, SymbolHashtableEntry) \ |
1556 declare_type(LoaderConstraintEntry, klassHashtableEntry) \ | 1523 declare_type(LoaderConstraintEntry, KlassHashtableEntry) \ |
1557 declare_toplevel_type(HashtableBucket<mtInternal>) \ | 1524 declare_toplevel_type(HashtableBucket<mtInternal>) \ |
1558 declare_toplevel_type(SystemDictionary) \ | 1525 declare_toplevel_type(SystemDictionary) \ |
1559 declare_toplevel_type(vmSymbols) \ | 1526 declare_toplevel_type(vmSymbols) \ |
1560 declare_toplevel_type(ProtectionDomainEntry) \ | 1527 declare_toplevel_type(ProtectionDomainEntry) \ |
1561 \ | 1528 \ |
1776 declare_c2_type(CMoveLNode, CMoveNode) \ | 1743 declare_c2_type(CMoveLNode, CMoveNode) \ |
1777 declare_c2_type(CMovePNode, CMoveNode) \ | 1744 declare_c2_type(CMovePNode, CMoveNode) \ |
1778 declare_c2_type(CMoveNNode, CMoveNode) \ | 1745 declare_c2_type(CMoveNNode, CMoveNode) \ |
1779 declare_c2_type(EncodePNode, TypeNode) \ | 1746 declare_c2_type(EncodePNode, TypeNode) \ |
1780 declare_c2_type(DecodeNNode, TypeNode) \ | 1747 declare_c2_type(DecodeNNode, TypeNode) \ |
1748 declare_c2_type(EncodePKlassNode, TypeNode) \ | |
1749 declare_c2_type(DecodeNKlassNode, TypeNode) \ | |
1781 declare_c2_type(ConstraintCastNode, TypeNode) \ | 1750 declare_c2_type(ConstraintCastNode, TypeNode) \ |
1782 declare_c2_type(CastIINode, ConstraintCastNode) \ | 1751 declare_c2_type(CastIINode, ConstraintCastNode) \ |
1783 declare_c2_type(CastPPNode, ConstraintCastNode) \ | 1752 declare_c2_type(CastPPNode, ConstraintCastNode) \ |
1784 declare_c2_type(CheckCastPPNode, TypeNode) \ | 1753 declare_c2_type(CheckCastPPNode, TypeNode) \ |
1785 declare_c2_type(Conv2BNode, Node) \ | 1754 declare_c2_type(Conv2BNode, Node) \ |
1872 declare_c2_type(StoreLNode, StoreNode) \ | 1841 declare_c2_type(StoreLNode, StoreNode) \ |
1873 declare_c2_type(StoreFNode, StoreNode) \ | 1842 declare_c2_type(StoreFNode, StoreNode) \ |
1874 declare_c2_type(StoreDNode, StoreNode) \ | 1843 declare_c2_type(StoreDNode, StoreNode) \ |
1875 declare_c2_type(StorePNode, StoreNode) \ | 1844 declare_c2_type(StorePNode, StoreNode) \ |
1876 declare_c2_type(StoreNNode, StoreNode) \ | 1845 declare_c2_type(StoreNNode, StoreNode) \ |
1846 declare_c2_type(StoreNKlassNode, StoreNode) \ | |
1877 declare_c2_type(StoreCMNode, StoreNode) \ | 1847 declare_c2_type(StoreCMNode, StoreNode) \ |
1878 declare_c2_type(LoadPLockedNode, LoadPNode) \ | 1848 declare_c2_type(LoadPLockedNode, LoadPNode) \ |
1879 declare_c2_type(SCMemProjNode, ProjNode) \ | 1849 declare_c2_type(SCMemProjNode, ProjNode) \ |
1880 declare_c2_type(LoadStoreNode, Node) \ | 1850 declare_c2_type(LoadStoreNode, Node) \ |
1881 declare_c2_type(StorePConditionalNode, LoadStoreNode) \ | 1851 declare_c2_type(StorePConditionalNode, LoadStoreNode) \ |
1954 declare_c2_type(SubVSNode, VectorNode) \ | 1924 declare_c2_type(SubVSNode, VectorNode) \ |
1955 declare_c2_type(SubVINode, VectorNode) \ | 1925 declare_c2_type(SubVINode, VectorNode) \ |
1956 declare_c2_type(SubVLNode, VectorNode) \ | 1926 declare_c2_type(SubVLNode, VectorNode) \ |
1957 declare_c2_type(SubVFNode, VectorNode) \ | 1927 declare_c2_type(SubVFNode, VectorNode) \ |
1958 declare_c2_type(SubVDNode, VectorNode) \ | 1928 declare_c2_type(SubVDNode, VectorNode) \ |
1929 declare_c2_type(MulVSNode, VectorNode) \ | |
1930 declare_c2_type(MulVINode, VectorNode) \ | |
1959 declare_c2_type(MulVFNode, VectorNode) \ | 1931 declare_c2_type(MulVFNode, VectorNode) \ |
1960 declare_c2_type(MulVDNode, VectorNode) \ | 1932 declare_c2_type(MulVDNode, VectorNode) \ |
1961 declare_c2_type(DivVFNode, VectorNode) \ | 1933 declare_c2_type(DivVFNode, VectorNode) \ |
1962 declare_c2_type(DivVDNode, VectorNode) \ | 1934 declare_c2_type(DivVDNode, VectorNode) \ |
1963 declare_c2_type(LShiftVBNode, VectorNode) \ | 1935 declare_c2_type(LShiftVBNode, VectorNode) \ |
1964 declare_c2_type(LShiftVSNode, VectorNode) \ | 1936 declare_c2_type(LShiftVSNode, VectorNode) \ |
1965 declare_c2_type(LShiftVINode, VectorNode) \ | 1937 declare_c2_type(LShiftVINode, VectorNode) \ |
1938 declare_c2_type(LShiftVLNode, VectorNode) \ | |
1966 declare_c2_type(RShiftVBNode, VectorNode) \ | 1939 declare_c2_type(RShiftVBNode, VectorNode) \ |
1967 declare_c2_type(RShiftVSNode, VectorNode) \ | 1940 declare_c2_type(RShiftVSNode, VectorNode) \ |
1968 declare_c2_type(RShiftVINode, VectorNode) \ | 1941 declare_c2_type(RShiftVINode, VectorNode) \ |
1942 declare_c2_type(RShiftVLNode, VectorNode) \ | |
1943 declare_c2_type(URShiftVBNode, VectorNode) \ | |
1944 declare_c2_type(URShiftVSNode, VectorNode) \ | |
1945 declare_c2_type(URShiftVINode, VectorNode) \ | |
1946 declare_c2_type(URShiftVLNode, VectorNode) \ | |
1969 declare_c2_type(AndVNode, VectorNode) \ | 1947 declare_c2_type(AndVNode, VectorNode) \ |
1970 declare_c2_type(OrVNode, VectorNode) \ | 1948 declare_c2_type(OrVNode, VectorNode) \ |
1971 declare_c2_type(XorVNode, VectorNode) \ | 1949 declare_c2_type(XorVNode, VectorNode) \ |
1972 declare_c2_type(LoadVectorNode, LoadNode) \ | 1950 declare_c2_type(LoadVectorNode, LoadNode) \ |
1973 declare_c2_type(StoreVectorNode, StoreNode) \ | 1951 declare_c2_type(StoreVectorNode, StoreNode) \ |
1986 declare_c2_type(PackDNode, PackNode) \ | 1964 declare_c2_type(PackDNode, PackNode) \ |
1987 declare_c2_type(Pack2LNode, PackNode) \ | 1965 declare_c2_type(Pack2LNode, PackNode) \ |
1988 declare_c2_type(Pack2DNode, PackNode) \ | 1966 declare_c2_type(Pack2DNode, PackNode) \ |
1989 declare_c2_type(ExtractNode, Node) \ | 1967 declare_c2_type(ExtractNode, Node) \ |
1990 declare_c2_type(ExtractBNode, ExtractNode) \ | 1968 declare_c2_type(ExtractBNode, ExtractNode) \ |
1969 declare_c2_type(ExtractUBNode, ExtractNode) \ | |
1970 declare_c2_type(ExtractCNode, ExtractNode) \ | |
1991 declare_c2_type(ExtractSNode, ExtractNode) \ | 1971 declare_c2_type(ExtractSNode, ExtractNode) \ |
1992 declare_c2_type(ExtractINode, ExtractNode) \ | 1972 declare_c2_type(ExtractINode, ExtractNode) \ |
1993 declare_c2_type(ExtractLNode, ExtractNode) \ | 1973 declare_c2_type(ExtractLNode, ExtractNode) \ |
1994 declare_c2_type(ExtractFNode, ExtractNode) \ | 1974 declare_c2_type(ExtractFNode, ExtractNode) \ |
1995 declare_c2_type(ExtractDNode, ExtractNode) \ | 1975 declare_c2_type(ExtractDNode, ExtractNode) \ |
2005 /*********************/ \ | 1985 /*********************/ \ |
2006 declare_toplevel_type(ciEnv) \ | 1986 declare_toplevel_type(ciEnv) \ |
2007 declare_toplevel_type(ciObjectFactory) \ | 1987 declare_toplevel_type(ciObjectFactory) \ |
2008 declare_toplevel_type(ciConstant) \ | 1988 declare_toplevel_type(ciConstant) \ |
2009 declare_toplevel_type(ciField) \ | 1989 declare_toplevel_type(ciField) \ |
2010 declare_toplevel_type(void*) \ | 1990 declare_toplevel_type(ciSymbol) \ |
2011 declare_toplevel_type(ciObject) \ | 1991 declare_toplevel_type(ciBaseObject) \ |
2012 declare_type(ciMethod, ciObject) \ | 1992 declare_type(ciObject, ciBaseObject) \ |
2013 declare_type(ciMethodData, ciObject) \ | |
2014 declare_type(ciType, ciObject) \ | |
2015 declare_type(ciInstance, ciObject) \ | 1993 declare_type(ciInstance, ciObject) \ |
2016 declare_toplevel_type(ciSymbol) \ | 1994 declare_type(ciMetadata, ciBaseObject) \ |
1995 declare_type(ciMethod, ciMetadata) \ | |
1996 declare_type(ciMethodData, ciMetadata) \ | |
1997 declare_type(ciType, ciMetadata) \ | |
2017 declare_type(ciKlass, ciType) \ | 1998 declare_type(ciKlass, ciType) \ |
2018 declare_type(ciInstanceKlass, ciKlass) \ | 1999 declare_type(ciInstanceKlass, ciKlass) \ |
2019 declare_type(ciArrayKlass, ciKlass) \ | 2000 declare_type(ciArrayKlass, ciKlass) \ |
2020 declare_type(ciTypeArrayKlass, ciArrayKlass) \ | 2001 declare_type(ciTypeArrayKlass, ciArrayKlass) \ |
2021 declare_type(ciObjArrayKlass, ciArrayKlass) \ | 2002 declare_type(ciObjArrayKlass, ciArrayKlass) \ |
2022 declare_type(ciMethodKlass, ciKlass) \ | |
2023 declare_type(ciKlassKlass, ciKlass) \ | |
2024 declare_type(ciInstanceKlassKlass, ciKlassKlass) \ | |
2025 declare_type(ciArrayKlassKlass, ciKlassKlass) \ | |
2026 declare_type(ciTypeArrayKlassKlass, ciArrayKlassKlass) \ | |
2027 declare_type(ciObjArrayKlassKlass, ciArrayKlassKlass) \ | |
2028 \ | 2003 \ |
2029 /********************/ \ | 2004 /********************/ \ |
2030 /* -XX flags */ \ | 2005 /* -XX flags */ \ |
2031 /********************/ \ | 2006 /********************/ \ |
2032 \ | 2007 \ |
2058 \ | 2033 \ |
2059 /* all enum types */ \ | 2034 /* all enum types */ \ |
2060 \ | 2035 \ |
2061 declare_integer_type(Bytecodes::Code) \ | 2036 declare_integer_type(Bytecodes::Code) \ |
2062 declare_integer_type(Generation::Name) \ | 2037 declare_integer_type(Generation::Name) \ |
2063 declare_integer_type(instanceKlass::ClassState) \ | 2038 declare_integer_type(InstanceKlass::ClassState) \ |
2064 declare_integer_type(JavaThreadState) \ | 2039 declare_integer_type(JavaThreadState) \ |
2065 declare_integer_type(Location::Type) \ | 2040 declare_integer_type(Location::Type) \ |
2066 declare_integer_type(Location::Where) \ | 2041 declare_integer_type(Location::Where) \ |
2067 declare_integer_type(PermGen::Name) \ | |
2068 declare_integer_type(FlagValueOrigin) \ | 2042 declare_integer_type(FlagValueOrigin) \ |
2069 COMPILER2_PRESENT(declare_integer_type(OptoReg::Name)) \ | 2043 COMPILER2_PRESENT(declare_integer_type(OptoReg::Name)) \ |
2044 \ | |
2045 declare_toplevel_type(CHeapObj<mtInternal>) \ | |
2046 declare_type(Array<int>, MetaspaceObj) \ | |
2047 declare_type(Array<u1>, MetaspaceObj) \ | |
2048 declare_type(Array<u2>, MetaspaceObj) \ | |
2049 declare_type(Array<Klass*>, MetaspaceObj) \ | |
2050 declare_type(Array<Method*>, MetaspaceObj) \ | |
2070 \ | 2051 \ |
2071 declare_integer_type(AccessFlags) /* FIXME: wrong type (not integer) */\ | 2052 declare_integer_type(AccessFlags) /* FIXME: wrong type (not integer) */\ |
2072 declare_toplevel_type(address) /* FIXME: should this be an integer type? */\ | 2053 declare_toplevel_type(address) /* FIXME: should this be an integer type? */\ |
2073 declare_integer_type(BasicType) /* FIXME: wrong type (not integer) */\ | 2054 declare_integer_type(BasicType) /* FIXME: wrong type (not integer) */\ |
2074 declare_toplevel_type(BreakpointInfo) \ | 2055 declare_toplevel_type(BreakpointInfo) \ |
2106 declare_integer_type(ReferenceType) \ | 2087 declare_integer_type(ReferenceType) \ |
2107 declare_toplevel_type(StubQueue*) \ | 2088 declare_toplevel_type(StubQueue*) \ |
2108 declare_toplevel_type(Thread*) \ | 2089 declare_toplevel_type(Thread*) \ |
2109 declare_toplevel_type(Universe) \ | 2090 declare_toplevel_type(Universe) \ |
2110 declare_toplevel_type(vframeArray) \ | 2091 declare_toplevel_type(vframeArray) \ |
2111 declare_toplevel_type(vframeArrayElement) | 2092 declare_toplevel_type(vframeArrayElement) \ |
2093 declare_toplevel_type(Annotations*) \ | |
2094 \ | |
2095 /***************/ \ | |
2096 /* Miscellaneous types */ \ | |
2097 /***************/ \ | |
2098 \ | |
2099 /* freelist */ \ | |
2100 declare_toplevel_type(FreeChunk*) \ | |
2101 declare_toplevel_type(Metablock*) \ | |
2102 declare_toplevel_type(FreeBlockDictionary<FreeChunk>*) \ | |
2103 declare_toplevel_type(FreeList<FreeChunk>*) \ | |
2104 declare_toplevel_type(FreeList<FreeChunk>) \ | |
2105 declare_toplevel_type(FreeBlockDictionary<Metablock>*) \ | |
2106 declare_toplevel_type(FreeList<Metablock>*) \ | |
2107 declare_toplevel_type(FreeList<Metablock>) \ | |
2108 declare_toplevel_type(MetablockTreeDictionary*) \ | |
2109 declare_type(MetablockTreeDictionary, FreeBlockDictionary<Metablock>) \ | |
2110 declare_type(MetablockTreeDictionary, FreeBlockDictionary<Metablock>) | |
2112 | 2111 |
2113 | 2112 |
2114 /* NOTE that we do not use the last_entry() macro here; it is used */ | 2113 /* NOTE that we do not use the last_entry() macro here; it is used */ |
2115 /* in vmStructs_<os>_<cpu>.hpp's VM_TYPES_OS_CPU macro (and must be */ | 2114 /* in vmStructs_<os>_<cpu>.hpp's VM_TYPES_OS_CPU macro (and must be */ |
2116 /* present there) */ | 2115 /* present there) */ |
2147 /* Object sizes */ \ | 2146 /* Object sizes */ \ |
2148 /****************/ \ | 2147 /****************/ \ |
2149 \ | 2148 \ |
2150 declare_constant(oopSize) \ | 2149 declare_constant(oopSize) \ |
2151 declare_constant(LogBytesPerWord) \ | 2150 declare_constant(LogBytesPerWord) \ |
2151 declare_constant(BytesPerWord) \ | |
2152 declare_constant(BytesPerLong) \ | 2152 declare_constant(BytesPerLong) \ |
2153 \ | 2153 \ |
2154 /********************************************/ \ | 2154 /********************************************/ \ |
2155 /* Generation and Space Hierarchy Constants */ \ | 2155 /* Generation and Space Hierarchy Constants */ \ |
2156 /********************************************/ \ | 2156 /********************************************/ \ |
2195 declare_constant(Generation::GenGrain) \ | 2195 declare_constant(Generation::GenGrain) \ |
2196 \ | 2196 \ |
2197 declare_constant(HeapWordSize) \ | 2197 declare_constant(HeapWordSize) \ |
2198 declare_constant(LogHeapWordSize) \ | 2198 declare_constant(LogHeapWordSize) \ |
2199 \ | 2199 \ |
2200 /* constants from PermGen::Name enum */ \ | |
2201 \ | |
2202 declare_constant(PermGen::MarkSweepCompact) \ | |
2203 declare_constant(PermGen::MarkSweep) \ | |
2204 \ | 2200 \ |
2205 /************************/ \ | 2201 /************************/ \ |
2206 /* PerfMemory - jvmstat */ \ | 2202 /* PerfMemory - jvmstat */ \ |
2207 /************************/ \ | 2203 /************************/ \ |
2208 \ | 2204 \ |
2232 declare_constant(JVM_ACC_MONITOR_MATCH) \ | 2228 declare_constant(JVM_ACC_MONITOR_MATCH) \ |
2233 declare_constant(JVM_ACC_HAS_MONITOR_BYTECODES) \ | 2229 declare_constant(JVM_ACC_HAS_MONITOR_BYTECODES) \ |
2234 declare_constant(JVM_ACC_HAS_LOOPS) \ | 2230 declare_constant(JVM_ACC_HAS_LOOPS) \ |
2235 declare_constant(JVM_ACC_LOOPS_FLAG_INIT) \ | 2231 declare_constant(JVM_ACC_LOOPS_FLAG_INIT) \ |
2236 declare_constant(JVM_ACC_QUEUED) \ | 2232 declare_constant(JVM_ACC_QUEUED) \ |
2237 declare_constant(JVM_ACC_NOT_OSR_COMPILABLE) \ | 2233 declare_constant(JVM_ACC_NOT_C2_OSR_COMPILABLE) \ |
2238 declare_constant(JVM_ACC_HAS_LINE_NUMBER_TABLE) \ | 2234 declare_constant(JVM_ACC_HAS_LINE_NUMBER_TABLE) \ |
2239 declare_constant(JVM_ACC_HAS_CHECKED_EXCEPTIONS) \ | 2235 declare_constant(JVM_ACC_HAS_CHECKED_EXCEPTIONS) \ |
2240 declare_constant(JVM_ACC_HAS_JSRS) \ | 2236 declare_constant(JVM_ACC_HAS_JSRS) \ |
2241 declare_constant(JVM_ACC_IS_OLD) \ | 2237 declare_constant(JVM_ACC_IS_OLD) \ |
2242 declare_constant(JVM_ACC_IS_OBSOLETE) \ | 2238 declare_constant(JVM_ACC_IS_OBSOLETE) \ |
2286 declare_constant(Klass::_lh_array_tag_shift) \ | 2282 declare_constant(Klass::_lh_array_tag_shift) \ |
2287 declare_constant(Klass::_lh_array_tag_type_value) \ | 2283 declare_constant(Klass::_lh_array_tag_type_value) \ |
2288 declare_constant(Klass::_lh_array_tag_obj_value) \ | 2284 declare_constant(Klass::_lh_array_tag_obj_value) \ |
2289 \ | 2285 \ |
2290 /********************************/ \ | 2286 /********************************/ \ |
2291 /* constMethodOopDesc anon-enum */ \ | 2287 /* ConstMethod anon-enum */ \ |
2292 /********************************/ \ | 2288 /********************************/ \ |
2293 \ | 2289 \ |
2294 declare_constant(constMethodOopDesc::_has_linenumber_table) \ | 2290 declare_constant(ConstMethod::_has_linenumber_table) \ |
2295 declare_constant(constMethodOopDesc::_has_checked_exceptions) \ | 2291 declare_constant(ConstMethod::_has_checked_exceptions) \ |
2296 declare_constant(constMethodOopDesc::_has_localvariable_table) \ | 2292 declare_constant(ConstMethod::_has_localvariable_table) \ |
2297 declare_constant(constMethodOopDesc::_has_exception_table) \ | 2293 declare_constant(ConstMethod::_has_exception_table) \ |
2298 \ | 2294 \ |
2299 /*************************************/ \ | 2295 /*************************************/ \ |
2300 /* instanceKlass enum */ \ | 2296 /* InstanceKlass enum */ \ |
2301 /*************************************/ \ | 2297 /*************************************/ \ |
2302 \ | 2298 \ |
2303 \ | 2299 \ |
2304 /*************************************/ \ | 2300 /*************************************/ \ |
2305 /* FieldInfo FieldOffset enum */ \ | 2301 /* FieldInfo FieldOffset enum */ \ |
2312 declare_constant(FieldInfo::low_offset) \ | 2308 declare_constant(FieldInfo::low_offset) \ |
2313 declare_constant(FieldInfo::high_offset) \ | 2309 declare_constant(FieldInfo::high_offset) \ |
2314 declare_constant(FieldInfo::field_slots) \ | 2310 declare_constant(FieldInfo::field_slots) \ |
2315 \ | 2311 \ |
2316 /************************************************/ \ | 2312 /************************************************/ \ |
2317 /* instanceKlass InnerClassAttributeOffset enum */ \ | 2313 /* InstanceKlass InnerClassAttributeOffset enum */ \ |
2318 /************************************************/ \ | 2314 /************************************************/ \ |
2319 \ | 2315 \ |
2320 declare_constant(instanceKlass::inner_class_inner_class_info_offset) \ | 2316 declare_constant(InstanceKlass::inner_class_inner_class_info_offset) \ |
2321 declare_constant(instanceKlass::inner_class_outer_class_info_offset) \ | 2317 declare_constant(InstanceKlass::inner_class_outer_class_info_offset) \ |
2322 declare_constant(instanceKlass::inner_class_inner_name_offset) \ | 2318 declare_constant(InstanceKlass::inner_class_inner_name_offset) \ |
2323 declare_constant(instanceKlass::inner_class_access_flags_offset) \ | 2319 declare_constant(InstanceKlass::inner_class_access_flags_offset) \ |
2324 declare_constant(instanceKlass::inner_class_next_offset) \ | 2320 declare_constant(InstanceKlass::inner_class_next_offset) \ |
2325 \ | 2321 \ |
2326 /*********************************/ \ | 2322 /*********************************/ \ |
2327 /* instanceKlass ClassState enum */ \ | 2323 /* InstanceKlass ClassState enum */ \ |
2328 /*********************************/ \ | 2324 /*********************************/ \ |
2329 \ | 2325 \ |
2330 declare_constant(instanceKlass::unparsable_by_gc) \ | 2326 declare_constant(InstanceKlass::allocated) \ |
2331 declare_constant(instanceKlass::allocated) \ | 2327 declare_constant(InstanceKlass::loaded) \ |
2332 declare_constant(instanceKlass::loaded) \ | 2328 declare_constant(InstanceKlass::linked) \ |
2333 declare_constant(instanceKlass::linked) \ | 2329 declare_constant(InstanceKlass::being_initialized) \ |
2334 declare_constant(instanceKlass::being_initialized) \ | 2330 declare_constant(InstanceKlass::fully_initialized) \ |
2335 declare_constant(instanceKlass::fully_initialized) \ | 2331 declare_constant(InstanceKlass::initialization_error) \ |
2336 declare_constant(instanceKlass::initialization_error) \ | |
2337 \ | 2332 \ |
2338 /*********************************/ \ | 2333 /*********************************/ \ |
2339 /* Symbol* - symbol max length */ \ | 2334 /* Symbol* - symbol max length */ \ |
2340 /*********************************/ \ | 2335 /*********************************/ \ |
2341 \ | 2336 \ |
2342 declare_constant(Symbol::max_symbol_length) \ | 2337 declare_constant(Symbol::max_symbol_length) \ |
2343 \ | 2338 \ |
2344 /*************************************************/ \ | 2339 /*************************************************/ \ |
2345 /* constantPoolOop layout enum for InvokeDynamic */ \ | 2340 /* ConstantPool* layout enum for InvokeDynamic */ \ |
2346 /*************************************************/ \ | 2341 /*************************************************/ \ |
2347 \ | 2342 \ |
2348 declare_constant(constantPoolOopDesc::_indy_bsm_offset) \ | 2343 declare_constant(ConstantPool::_indy_bsm_offset) \ |
2349 declare_constant(constantPoolOopDesc::_indy_argc_offset) \ | 2344 declare_constant(ConstantPool::_indy_argc_offset) \ |
2350 declare_constant(constantPoolOopDesc::_indy_argv_offset) \ | 2345 declare_constant(ConstantPool::_indy_argv_offset) \ |
2351 \ | 2346 \ |
2352 /********************************/ \ | 2347 /********************************/ \ |
2353 /* ConstantPoolCacheEntry enums */ \ | 2348 /* ConstantPoolCacheEntry enums */ \ |
2354 /********************************/ \ | 2349 /********************************/ \ |
2355 \ | 2350 \ |
2483 \ | 2478 \ |
2484 /**********************/ \ | 2479 /**********************/ \ |
2485 /* frame */ \ | 2480 /* frame */ \ |
2486 /**********************/ \ | 2481 /**********************/ \ |
2487 \ | 2482 \ |
2488 X86_ONLY(declare_constant(frame::entry_frame_call_wrapper_offset)) \ | 2483 NOT_ZERO(X86_ONLY(declare_constant(frame::entry_frame_call_wrapper_offset))) \ |
2489 declare_constant(frame::pc_return_offset) \ | 2484 declare_constant(frame::pc_return_offset) \ |
2490 \ | 2485 \ |
2491 /*************/ \ | 2486 /*************/ \ |
2492 /* vmSymbols */ \ | 2487 /* vmSymbols */ \ |
2493 /*************/ \ | 2488 /*************/ \ |
3171 delete s; | 3166 delete s; |
3172 return 1; | 3167 return 1; |
3173 } | 3168 } |
3174 delete s; | 3169 delete s; |
3175 } | 3170 } |
3171 const char* start = NULL; | |
3176 if (strstr(typeName, "GrowableArray<") == typeName) { | 3172 if (strstr(typeName, "GrowableArray<") == typeName) { |
3177 const char * start = typeName + strlen("GrowableArray<"); | 3173 start = typeName + strlen("GrowableArray<"); |
3174 } else if (strstr(typeName, "Array<") == typeName) { | |
3175 start = typeName + strlen("Array<"); | |
3176 } | |
3177 if (start != NULL) { | |
3178 const char * end = strrchr(typeName, '>'); | 3178 const char * end = strrchr(typeName, '>'); |
3179 int len = end - start + 1; | 3179 int len = end - start + 1; |
3180 char * s = new char[len]; | 3180 char * s = new char[len]; |
3181 strncpy(s, start, len - 1); | 3181 strncpy(s, start, len - 1); |
3182 s[len-1] = '\0'; | 3182 s[len-1] = '\0'; |