< prev index next >

src/hotspot/share/runtime/vmStructs.cpp

Print this page

  51 #include "gc/shared/stringdedup/stringDedupThread.hpp"
  52 #include "gc/shared/vmStructs_gc.hpp"
  53 #include "interpreter/bytecodes.hpp"
  54 #include "interpreter/interpreter.hpp"
  55 #include "logging/logAsyncWriter.hpp"
  56 #include "memory/allocation.hpp"
  57 #include "memory/allocation.inline.hpp"
  58 #include "memory/heap.hpp"
  59 #include "memory/padded.hpp"
  60 #include "memory/referenceType.hpp"
  61 #include "memory/universe.hpp"
  62 #include "memory/virtualspace.hpp"
  63 #include "oops/array.hpp"
  64 #include "oops/arrayKlass.hpp"
  65 #include "oops/arrayOop.hpp"
  66 #include "oops/compiledICHolder.hpp"
  67 #include "oops/constMethod.hpp"
  68 #include "oops/constantPool.hpp"
  69 #include "oops/cpCache.hpp"
  70 #include "oops/fieldInfo.hpp"


  71 #include "oops/instanceClassLoaderKlass.hpp"
  72 #include "oops/instanceKlass.hpp"
  73 #include "oops/instanceMirrorKlass.hpp"
  74 #include "oops/instanceOop.hpp"
  75 #include "oops/instanceStackChunkKlass.hpp"
  76 #include "oops/klass.hpp"
  77 #include "oops/klassVtable.hpp"
  78 #include "oops/markWord.hpp"
  79 #include "oops/method.hpp"
  80 #include "oops/methodCounters.hpp"
  81 #include "oops/methodData.hpp"
  82 #include "oops/objArrayKlass.hpp"
  83 #include "oops/objArrayOop.hpp"
  84 #include "oops/oop.inline.hpp"
  85 #include "oops/oopHandle.hpp"
  86 #include "oops/resolvedFieldEntry.hpp"
  87 #include "oops/resolvedIndyEntry.hpp"
  88 #include "oops/resolvedMethodEntry.hpp"
  89 #include "oops/symbol.hpp"
  90 #include "oops/typeArrayKlass.hpp"

 215   nonstatic_field(CompiledICHolder,            _holder_klass,                                 Klass*)                                \
 216   nonstatic_field(ConstantPool,                _tags,                                         Array<u1>*)                            \
 217   nonstatic_field(ConstantPool,                _cache,                                        ConstantPoolCache*)                    \
 218   nonstatic_field(ConstantPool,                _pool_holder,                                  InstanceKlass*)                        \
 219   nonstatic_field(ConstantPool,                _operands,                                     Array<u2>*)                            \
 220   nonstatic_field(ConstantPool,                _resolved_klasses,                             Array<Klass*>*)                        \
 221   nonstatic_field(ConstantPool,                _length,                                       int)                                   \
 222   nonstatic_field(ConstantPool,                _minor_version,                                u2)                                    \
 223   nonstatic_field(ConstantPool,                _major_version,                                u2)                                    \
 224   nonstatic_field(ConstantPool,                _generic_signature_index,                      u2)                                    \
 225   nonstatic_field(ConstantPool,                _source_file_name_index,                       u2)                                    \
 226   nonstatic_field(ConstantPoolCache,           _resolved_references,                          OopHandle)                             \
 227   nonstatic_field(ConstantPoolCache,           _reference_map,                                Array<u2>*)                            \
 228   nonstatic_field(ConstantPoolCache,           _constant_pool,                                ConstantPool*)                         \
 229   nonstatic_field(ConstantPoolCache,           _resolved_field_entries,                       Array<ResolvedFieldEntry>*)            \
 230   nonstatic_field(ResolvedFieldEntry,          _cpool_index,                                  u2)                                    \
 231   nonstatic_field(ConstantPoolCache,           _resolved_method_entries,                      Array<ResolvedMethodEntry>*)           \
 232   nonstatic_field(ResolvedMethodEntry,         _cpool_index,                                  u2)                                    \
 233   nonstatic_field(ConstantPoolCache,           _resolved_indy_entries,                        Array<ResolvedIndyEntry>*)             \
 234   nonstatic_field(ResolvedIndyEntry,           _cpool_index,                                  u2)                                    \
 235   volatile_nonstatic_field(InstanceKlass,      _array_klasses,                                ObjArrayKlass*)                        \
 236   nonstatic_field(InstanceKlass,               _methods,                                      Array<Method*>*)                       \
 237   nonstatic_field(InstanceKlass,               _default_methods,                              Array<Method*>*)                       \
 238   nonstatic_field(InstanceKlass,               _local_interfaces,                             Array<InstanceKlass*>*)                \
 239   nonstatic_field(InstanceKlass,               _transitive_interfaces,                        Array<InstanceKlass*>*)                \
 240   nonstatic_field(InstanceKlass,               _fieldinfo_stream,                             Array<u1>*)                            \
 241   nonstatic_field(InstanceKlass,               _constants,                                    ConstantPool*)                         \
 242   nonstatic_field(InstanceKlass,               _source_debug_extension,                       const char*)                           \
 243   nonstatic_field(InstanceKlass,               _inner_classes,                                Array<jushort>*)                       \
 244   nonstatic_field(InstanceKlass,               _nest_members,                                 Array<jushort>*)                       \
 245   nonstatic_field(InstanceKlass,               _nonstatic_field_size,                         int)                                   \
 246   nonstatic_field(InstanceKlass,               _static_field_size,                            int)                                   \
 247   nonstatic_field(InstanceKlass,               _static_oop_field_count,                       u2)                                    \
 248   nonstatic_field(InstanceKlass,               _nonstatic_oop_map_size,                       int)                                   \
 249   volatile_nonstatic_field(InstanceKlass,      _init_state,                                   InstanceKlass::ClassState)             \
 250   volatile_nonstatic_field(InstanceKlass,      _init_thread,                                  JavaThread*)                           \
 251   nonstatic_field(InstanceKlass,               _itable_len,                                   int)                                   \
 252   nonstatic_field(InstanceKlass,               _nest_host_index,                              u2)                                    \
 253   nonstatic_field(InstanceKlass,               _reference_type,                               u1)                                    \
 254   volatile_nonstatic_field(InstanceKlass,      _oop_map_cache,                                OopMapCache*)                          \
 255   nonstatic_field(InstanceKlass,               _jni_ids,                                      JNIid*)                                \

1150   declare_unsigned_integer_type(uint64_t)                                 \
1151                                                                           \
1152   /******************************************/                            \
1153   /* OopDesc hierarchy (NOTE: some missing) */                            \
1154   /******************************************/                            \
1155                                                                           \
1156   declare_toplevel_type(oopDesc)                                          \
1157     declare_type(arrayOopDesc, oopDesc)                                   \
1158       declare_type(objArrayOopDesc, arrayOopDesc)                         \
1159     declare_type(instanceOopDesc, oopDesc)                                \
1160                                                                           \
1161   /**************************************************/                    \
1162   /* MetadataOopDesc hierarchy (NOTE: some missing) */                    \
1163   /**************************************************/                    \
1164                                                                           \
1165   declare_toplevel_type(CompiledICHolder)                                 \
1166   declare_toplevel_type(MetaspaceObj)                                     \
1167     declare_type(Metadata, MetaspaceObj)                                  \
1168     declare_type(Klass, Metadata)                                         \
1169            declare_type(ArrayKlass, Klass)                                \

1170            declare_type(ObjArrayKlass, ArrayKlass)                        \
1171            declare_type(TypeArrayKlass, ArrayKlass)                       \
1172       declare_type(InstanceKlass, Klass)                                  \

1173         declare_type(InstanceClassLoaderKlass, InstanceKlass)             \
1174         declare_type(InstanceMirrorKlass, InstanceKlass)                  \
1175         declare_type(InstanceRefKlass, InstanceKlass)                     \
1176         declare_type(InstanceStackChunkKlass, InstanceKlass)              \
1177     declare_type(ConstantPool, Metadata)                                  \
1178     declare_type(ConstantPoolCache, MetaspaceObj)                         \
1179     declare_type(MethodData, Metadata)                                    \
1180     declare_type(Method, Metadata)                                        \
1181     declare_type(MethodCounters, MetaspaceObj)                            \
1182     declare_type(ConstMethod, MetaspaceObj)                               \
1183     declare_type(Annotations, MetaspaceObj)                               \
1184                                                                           \
1185   declare_toplevel_type(MethodData::CompilerCounters)                     \
1186                                                                           \
1187   declare_toplevel_type(narrowKlass)                                      \
1188                                                                           \
1189   declare_toplevel_type(vtableEntry)                                      \
1190                                                                           \
1191            declare_toplevel_type(Symbol)                                  \
1192            declare_toplevel_type(Symbol*)                                 \

1531   declare_c2_type(ModINode, Node)                                         \
1532   declare_c2_type(ModLNode, Node)                                         \
1533   declare_c2_type(ModFNode, Node)                                         \
1534   declare_c2_type(ModDNode, Node)                                         \
1535   declare_c2_type(UModINode, Node)                                        \
1536   declare_c2_type(UModLNode, Node)                                        \
1537   declare_c2_type(DivModNode, MultiNode)                                  \
1538   declare_c2_type(DivModINode, DivModNode)                                \
1539   declare_c2_type(DivModLNode, DivModNode)                                \
1540   declare_c2_type(UDivModINode, DivModNode)                               \
1541   declare_c2_type(UDivModLNode, DivModNode)                               \
1542   declare_c2_type(BoxLockNode, Node)                                      \
1543   declare_c2_type(LoopNode, RegionNode)                                   \
1544   declare_c2_type(CountedLoopNode, LoopNode)                              \
1545   declare_c2_type(CountedLoopEndNode, IfNode)                             \
1546   declare_c2_type(MachNode, Node)                                         \
1547   declare_c2_type(MachIdealNode, MachNode)                                \
1548   declare_c2_type(MachTypeNode, MachNode)                                 \
1549   declare_c2_type(MachBreakpointNode, MachIdealNode)                      \
1550   declare_c2_type(MachUEPNode, MachIdealNode)                             \

1551   declare_c2_type(MachPrologNode, MachIdealNode)                          \
1552   declare_c2_type(MachEpilogNode, MachIdealNode)                          \
1553   declare_c2_type(MachNopNode, MachIdealNode)                             \
1554   declare_c2_type(MachSpillCopyNode, MachIdealNode)                       \
1555   declare_c2_type(MachNullCheckNode, MachIdealNode)                       \
1556   declare_c2_type(MachProjNode, ProjNode)                                 \
1557   declare_c2_type(MachIfNode, MachNode)                                   \
1558   declare_c2_type(MachJumpNode, MachNode)                                 \
1559   declare_c2_type(MachFastLockNode, MachNode)                             \
1560   declare_c2_type(MachReturnNode, MachNode)                               \
1561   declare_c2_type(MachSafePointNode, MachReturnNode)                      \
1562   declare_c2_type(MachCallNode, MachSafePointNode)                        \
1563   declare_c2_type(MachCallJavaNode, MachCallNode)                         \
1564   declare_c2_type(MachCallStaticJavaNode, MachCallJavaNode)               \
1565   declare_c2_type(MachCallDynamicJavaNode, MachCallJavaNode)              \
1566   declare_c2_type(MachCallRuntimeNode, MachCallNode)                      \
1567   declare_c2_type(MachHaltNode, MachReturnNode)                           \
1568   declare_c2_type(MachTempNode, MachNode)                                 \
1569   declare_c2_type(MemNode, Node)                                          \
1570   declare_c2_type(MergeMemNode, Node)                                     \

  51 #include "gc/shared/stringdedup/stringDedupThread.hpp"
  52 #include "gc/shared/vmStructs_gc.hpp"
  53 #include "interpreter/bytecodes.hpp"
  54 #include "interpreter/interpreter.hpp"
  55 #include "logging/logAsyncWriter.hpp"
  56 #include "memory/allocation.hpp"
  57 #include "memory/allocation.inline.hpp"
  58 #include "memory/heap.hpp"
  59 #include "memory/padded.hpp"
  60 #include "memory/referenceType.hpp"
  61 #include "memory/universe.hpp"
  62 #include "memory/virtualspace.hpp"
  63 #include "oops/array.hpp"
  64 #include "oops/arrayKlass.hpp"
  65 #include "oops/arrayOop.hpp"
  66 #include "oops/compiledICHolder.hpp"
  67 #include "oops/constMethod.hpp"
  68 #include "oops/constantPool.hpp"
  69 #include "oops/cpCache.hpp"
  70 #include "oops/fieldInfo.hpp"
  71 #include "oops/flatArrayKlass.hpp"
  72 #include "oops/inlineKlass.hpp"
  73 #include "oops/instanceClassLoaderKlass.hpp"
  74 #include "oops/instanceKlass.hpp"
  75 #include "oops/instanceMirrorKlass.hpp"
  76 #include "oops/instanceOop.hpp"
  77 #include "oops/instanceStackChunkKlass.hpp"
  78 #include "oops/klass.hpp"
  79 #include "oops/klassVtable.hpp"
  80 #include "oops/markWord.hpp"
  81 #include "oops/method.hpp"
  82 #include "oops/methodCounters.hpp"
  83 #include "oops/methodData.hpp"
  84 #include "oops/objArrayKlass.hpp"
  85 #include "oops/objArrayOop.hpp"
  86 #include "oops/oop.inline.hpp"
  87 #include "oops/oopHandle.hpp"
  88 #include "oops/resolvedFieldEntry.hpp"
  89 #include "oops/resolvedIndyEntry.hpp"
  90 #include "oops/resolvedMethodEntry.hpp"
  91 #include "oops/symbol.hpp"
  92 #include "oops/typeArrayKlass.hpp"

 217   nonstatic_field(CompiledICHolder,            _holder_klass,                                 Klass*)                                \
 218   nonstatic_field(ConstantPool,                _tags,                                         Array<u1>*)                            \
 219   nonstatic_field(ConstantPool,                _cache,                                        ConstantPoolCache*)                    \
 220   nonstatic_field(ConstantPool,                _pool_holder,                                  InstanceKlass*)                        \
 221   nonstatic_field(ConstantPool,                _operands,                                     Array<u2>*)                            \
 222   nonstatic_field(ConstantPool,                _resolved_klasses,                             Array<Klass*>*)                        \
 223   nonstatic_field(ConstantPool,                _length,                                       int)                                   \
 224   nonstatic_field(ConstantPool,                _minor_version,                                u2)                                    \
 225   nonstatic_field(ConstantPool,                _major_version,                                u2)                                    \
 226   nonstatic_field(ConstantPool,                _generic_signature_index,                      u2)                                    \
 227   nonstatic_field(ConstantPool,                _source_file_name_index,                       u2)                                    \
 228   nonstatic_field(ConstantPoolCache,           _resolved_references,                          OopHandle)                             \
 229   nonstatic_field(ConstantPoolCache,           _reference_map,                                Array<u2>*)                            \
 230   nonstatic_field(ConstantPoolCache,           _constant_pool,                                ConstantPool*)                         \
 231   nonstatic_field(ConstantPoolCache,           _resolved_field_entries,                       Array<ResolvedFieldEntry>*)            \
 232   nonstatic_field(ResolvedFieldEntry,          _cpool_index,                                  u2)                                    \
 233   nonstatic_field(ConstantPoolCache,           _resolved_method_entries,                      Array<ResolvedMethodEntry>*)           \
 234   nonstatic_field(ResolvedMethodEntry,         _cpool_index,                                  u2)                                    \
 235   nonstatic_field(ConstantPoolCache,           _resolved_indy_entries,                        Array<ResolvedIndyEntry>*)             \
 236   nonstatic_field(ResolvedIndyEntry,           _cpool_index,                                  u2)                                    \
 237   volatile_nonstatic_field(InstanceKlass,      _array_klasses,                                ArrayKlass*)                        \
 238   nonstatic_field(InstanceKlass,               _methods,                                      Array<Method*>*)                       \
 239   nonstatic_field(InstanceKlass,               _default_methods,                              Array<Method*>*)                       \
 240   nonstatic_field(InstanceKlass,               _local_interfaces,                             Array<InstanceKlass*>*)                \
 241   nonstatic_field(InstanceKlass,               _transitive_interfaces,                        Array<InstanceKlass*>*)                \
 242   nonstatic_field(InstanceKlass,               _fieldinfo_stream,                             Array<u1>*)                            \
 243   nonstatic_field(InstanceKlass,               _constants,                                    ConstantPool*)                         \
 244   nonstatic_field(InstanceKlass,               _source_debug_extension,                       const char*)                           \
 245   nonstatic_field(InstanceKlass,               _inner_classes,                                Array<jushort>*)                       \
 246   nonstatic_field(InstanceKlass,               _nest_members,                                 Array<jushort>*)                       \
 247   nonstatic_field(InstanceKlass,               _nonstatic_field_size,                         int)                                   \
 248   nonstatic_field(InstanceKlass,               _static_field_size,                            int)                                   \
 249   nonstatic_field(InstanceKlass,               _static_oop_field_count,                       u2)                                    \
 250   nonstatic_field(InstanceKlass,               _nonstatic_oop_map_size,                       int)                                   \
 251   volatile_nonstatic_field(InstanceKlass,      _init_state,                                   InstanceKlass::ClassState)             \
 252   volatile_nonstatic_field(InstanceKlass,      _init_thread,                                  JavaThread*)                           \
 253   nonstatic_field(InstanceKlass,               _itable_len,                                   int)                                   \
 254   nonstatic_field(InstanceKlass,               _nest_host_index,                              u2)                                    \
 255   nonstatic_field(InstanceKlass,               _reference_type,                               u1)                                    \
 256   volatile_nonstatic_field(InstanceKlass,      _oop_map_cache,                                OopMapCache*)                          \
 257   nonstatic_field(InstanceKlass,               _jni_ids,                                      JNIid*)                                \

1152   declare_unsigned_integer_type(uint64_t)                                 \
1153                                                                           \
1154   /******************************************/                            \
1155   /* OopDesc hierarchy (NOTE: some missing) */                            \
1156   /******************************************/                            \
1157                                                                           \
1158   declare_toplevel_type(oopDesc)                                          \
1159     declare_type(arrayOopDesc, oopDesc)                                   \
1160       declare_type(objArrayOopDesc, arrayOopDesc)                         \
1161     declare_type(instanceOopDesc, oopDesc)                                \
1162                                                                           \
1163   /**************************************************/                    \
1164   /* MetadataOopDesc hierarchy (NOTE: some missing) */                    \
1165   /**************************************************/                    \
1166                                                                           \
1167   declare_toplevel_type(CompiledICHolder)                                 \
1168   declare_toplevel_type(MetaspaceObj)                                     \
1169     declare_type(Metadata, MetaspaceObj)                                  \
1170     declare_type(Klass, Metadata)                                         \
1171            declare_type(ArrayKlass, Klass)                                \
1172            declare_type(FlatArrayKlass, ArrayKlass)                       \
1173            declare_type(ObjArrayKlass, ArrayKlass)                        \
1174            declare_type(TypeArrayKlass, ArrayKlass)                       \
1175       declare_type(InstanceKlass, Klass)                                  \
1176         declare_type(InlineKlass, InstanceKlass)                          \
1177         declare_type(InstanceClassLoaderKlass, InstanceKlass)             \
1178         declare_type(InstanceMirrorKlass, InstanceKlass)                  \
1179         declare_type(InstanceRefKlass, InstanceKlass)                     \
1180         declare_type(InstanceStackChunkKlass, InstanceKlass)              \
1181     declare_type(ConstantPool, Metadata)                                  \
1182     declare_type(ConstantPoolCache, MetaspaceObj)                         \
1183     declare_type(MethodData, Metadata)                                    \
1184     declare_type(Method, Metadata)                                        \
1185     declare_type(MethodCounters, MetaspaceObj)                            \
1186     declare_type(ConstMethod, MetaspaceObj)                               \
1187     declare_type(Annotations, MetaspaceObj)                               \
1188                                                                           \
1189   declare_toplevel_type(MethodData::CompilerCounters)                     \
1190                                                                           \
1191   declare_toplevel_type(narrowKlass)                                      \
1192                                                                           \
1193   declare_toplevel_type(vtableEntry)                                      \
1194                                                                           \
1195            declare_toplevel_type(Symbol)                                  \
1196            declare_toplevel_type(Symbol*)                                 \

1535   declare_c2_type(ModINode, Node)                                         \
1536   declare_c2_type(ModLNode, Node)                                         \
1537   declare_c2_type(ModFNode, Node)                                         \
1538   declare_c2_type(ModDNode, Node)                                         \
1539   declare_c2_type(UModINode, Node)                                        \
1540   declare_c2_type(UModLNode, Node)                                        \
1541   declare_c2_type(DivModNode, MultiNode)                                  \
1542   declare_c2_type(DivModINode, DivModNode)                                \
1543   declare_c2_type(DivModLNode, DivModNode)                                \
1544   declare_c2_type(UDivModINode, DivModNode)                               \
1545   declare_c2_type(UDivModLNode, DivModNode)                               \
1546   declare_c2_type(BoxLockNode, Node)                                      \
1547   declare_c2_type(LoopNode, RegionNode)                                   \
1548   declare_c2_type(CountedLoopNode, LoopNode)                              \
1549   declare_c2_type(CountedLoopEndNode, IfNode)                             \
1550   declare_c2_type(MachNode, Node)                                         \
1551   declare_c2_type(MachIdealNode, MachNode)                                \
1552   declare_c2_type(MachTypeNode, MachNode)                                 \
1553   declare_c2_type(MachBreakpointNode, MachIdealNode)                      \
1554   declare_c2_type(MachUEPNode, MachIdealNode)                             \
1555   declare_c2_type(MachVEPNode, MachIdealNode)                             \
1556   declare_c2_type(MachPrologNode, MachIdealNode)                          \
1557   declare_c2_type(MachEpilogNode, MachIdealNode)                          \
1558   declare_c2_type(MachNopNode, MachIdealNode)                             \
1559   declare_c2_type(MachSpillCopyNode, MachIdealNode)                       \
1560   declare_c2_type(MachNullCheckNode, MachIdealNode)                       \
1561   declare_c2_type(MachProjNode, ProjNode)                                 \
1562   declare_c2_type(MachIfNode, MachNode)                                   \
1563   declare_c2_type(MachJumpNode, MachNode)                                 \
1564   declare_c2_type(MachFastLockNode, MachNode)                             \
1565   declare_c2_type(MachReturnNode, MachNode)                               \
1566   declare_c2_type(MachSafePointNode, MachReturnNode)                      \
1567   declare_c2_type(MachCallNode, MachSafePointNode)                        \
1568   declare_c2_type(MachCallJavaNode, MachCallNode)                         \
1569   declare_c2_type(MachCallStaticJavaNode, MachCallJavaNode)               \
1570   declare_c2_type(MachCallDynamicJavaNode, MachCallJavaNode)              \
1571   declare_c2_type(MachCallRuntimeNode, MachCallNode)                      \
1572   declare_c2_type(MachHaltNode, MachReturnNode)                           \
1573   declare_c2_type(MachTempNode, MachNode)                                 \
1574   declare_c2_type(MemNode, Node)                                          \
1575   declare_c2_type(MergeMemNode, Node)                                     \
< prev index next >