< prev index next >

src/hotspot/share/runtime/vmStructs.cpp

Print this page




  39 #include "code/compressedStream.hpp"
  40 #include "code/location.hpp"
  41 #include "code/nmethod.hpp"
  42 #include "code/pcDesc.hpp"
  43 #include "code/stubs.hpp"
  44 #include "code/vmreg.hpp"
  45 #include "compiler/compileBroker.hpp"
  46 #include "compiler/oopMap.hpp"
  47 #include "gc/shared/vmStructs_gc.hpp"
  48 #include "interpreter/bytecodeInterpreter.hpp"
  49 #include "interpreter/bytecodes.hpp"
  50 #include "interpreter/interpreter.hpp"
  51 #include "memory/allocation.hpp"
  52 #include "memory/allocation.inline.hpp"
  53 #include "memory/heap.hpp"
  54 #include "memory/metachunk.hpp"
  55 #include "memory/padded.hpp"
  56 #include "memory/referenceType.hpp"
  57 #include "memory/universe.hpp"
  58 #include "memory/virtualspace.hpp"

  59 #include "oops/array.hpp"
  60 #include "oops/arrayKlass.hpp"
  61 #include "oops/arrayOop.hpp"
  62 #include "oops/compiledICHolder.hpp"
  63 #include "oops/constMethod.hpp"
  64 #include "oops/constantPool.hpp"
  65 #include "oops/cpCache.hpp"
  66 #include "oops/instanceClassLoaderKlass.hpp"
  67 #include "oops/instanceKlass.hpp"
  68 #include "oops/instanceMirrorKlass.hpp"
  69 #include "oops/instanceOop.hpp"
  70 #include "oops/klass.hpp"
  71 #include "oops/markOop.hpp"
  72 #include "oops/method.hpp"
  73 #include "oops/methodCounters.hpp"
  74 #include "oops/methodData.hpp"
  75 #include "oops/objArrayKlass.hpp"
  76 #include "oops/objArrayOop.hpp"
  77 #include "oops/oop.inline.hpp"
  78 #include "oops/oopHandle.hpp"


1101   /************/                                                                                                                     \
1102   /* Array<T> */                                                                                                                     \
1103   /************/                                                                                                                     \
1104                                                                                                                                      \
1105   nonstatic_field(Array<int>,                  _length,                                       int)                                   \
1106   unchecked_nonstatic_field(Array<int>,        _data,                                         sizeof(int))                           \
1107   unchecked_nonstatic_field(Array<u1>,         _data,                                         sizeof(u1))                            \
1108   unchecked_nonstatic_field(Array<u2>,         _data,                                         sizeof(u2))                            \
1109   unchecked_nonstatic_field(Array<Method*>,    _data,                                         sizeof(Method*))                       \
1110   unchecked_nonstatic_field(Array<Klass*>,     _data,                                         sizeof(Klass*))                        \
1111                                                                                                                                      \
1112   /*********************************/                                                                                                \
1113   /* java_lang_Class fields        */                                                                                                \
1114   /*********************************/                                                                                                \
1115                                                                                                                                      \
1116      static_field(java_lang_Class,             _klass_offset,                                 int)                                   \
1117      static_field(java_lang_Class,             _array_klass_offset,                           int)                                   \
1118      static_field(java_lang_Class,             _oop_size_offset,                              int)                                   \
1119      static_field(java_lang_Class,             _static_oop_field_count_offset,                int)                                   \
1120                                                                                                                                      \










1121   /******************/                                                                                                               \
1122   /* VMError fields */                                                                                                               \
1123   /******************/                                                                                                               \
1124                                                                                                                                      \
1125      static_field(VMError,                     _thread,                                       Thread*)                               \
1126                                                                                                                                      \
1127   /************************/                                                                                                         \
1128   /* Miscellaneous fields */                                                                                                         \
1129   /************************/                                                                                                         \
1130                                                                                                                                      \
1131   nonstatic_field(CompileTask,                 _method,                                       Method*)                               \
1132   nonstatic_field(CompileTask,                 _osr_bci,                                      int)                                   \
1133   nonstatic_field(CompileTask,                 _comp_level,                                   int)                                   \
1134   nonstatic_field(CompileTask,                 _compile_id,                                   uint)                                  \
1135   nonstatic_field(CompileTask,                 _num_inlined_bytecodes,                        int)                                   \
1136   nonstatic_field(CompileTask,                 _next,                                         CompileTask*)                          \
1137   nonstatic_field(CompileTask,                 _prev,                                         CompileTask*)                          \
1138                                                                                                                                      \
1139   nonstatic_field(vframeArray,                 _next,                                         vframeArray*)                          \
1140   nonstatic_field(vframeArray,                 _original,                                     frame)                                 \


1980   declare_toplevel_type(Mutex*)                                           \
1981   declare_toplevel_type(nmethod*)                                         \
1982   COMPILER2_PRESENT(declare_unsigned_integer_type(node_idx_t))            \
1983   declare_toplevel_type(ObjectMonitor*)                                   \
1984   declare_toplevel_type(PaddedObjectMonitor*)                             \
1985   declare_toplevel_type(oop*)                                             \
1986   declare_toplevel_type(OopMap**)                                         \
1987   declare_toplevel_type(OopMapCache*)                                     \
1988   declare_toplevel_type(OopMapSet*)                                       \
1989   declare_toplevel_type(VMReg)                                            \
1990   declare_toplevel_type(OSThread*)                                        \
1991    declare_integer_type(ReferenceType)                                    \
1992   declare_toplevel_type(StubQueue*)                                       \
1993   declare_toplevel_type(Thread*)                                          \
1994   declare_toplevel_type(Universe)                                         \
1995   declare_toplevel_type(os)                                               \
1996   declare_toplevel_type(vframeArray)                                      \
1997   declare_toplevel_type(vframeArrayElement)                               \
1998   declare_toplevel_type(Annotations*)                                     \
1999   declare_type(OopMapValue, StackObj)                                     \




2000                                                                           \
2001   /************/                                                          \
2002   /* GC types */                                                          \
2003   /************/                                                          \
2004                                                                           \
2005   VM_TYPES_GC(declare_type,                                               \
2006               declare_toplevel_type,                                      \
2007               declare_integer_type)
2008 
2009 //--------------------------------------------------------------------------------
2010 // VM_INT_CONSTANTS
2011 //
2012 // This table contains integer constants required over in the
2013 // serviceability agent. The "declare_constant" macro is used for all
2014 // enums, etc., while "declare_preprocessor_constant" must be used for
2015 // all #defined constants.
2016 
2017 #define VM_INT_CONSTANTS(declare_constant,                                \
2018                          declare_constant_with_value,                     \
2019                          declare_preprocessor_constant,                   \




  39 #include "code/compressedStream.hpp"
  40 #include "code/location.hpp"
  41 #include "code/nmethod.hpp"
  42 #include "code/pcDesc.hpp"
  43 #include "code/stubs.hpp"
  44 #include "code/vmreg.hpp"
  45 #include "compiler/compileBroker.hpp"
  46 #include "compiler/oopMap.hpp"
  47 #include "gc/shared/vmStructs_gc.hpp"
  48 #include "interpreter/bytecodeInterpreter.hpp"
  49 #include "interpreter/bytecodes.hpp"
  50 #include "interpreter/interpreter.hpp"
  51 #include "memory/allocation.hpp"
  52 #include "memory/allocation.inline.hpp"
  53 #include "memory/heap.hpp"
  54 #include "memory/metachunk.hpp"
  55 #include "memory/padded.hpp"
  56 #include "memory/referenceType.hpp"
  57 #include "memory/universe.hpp"
  58 #include "memory/virtualspace.hpp"
  59 #include "memory/filemap.hpp"
  60 #include "oops/array.hpp"
  61 #include "oops/arrayKlass.hpp"
  62 #include "oops/arrayOop.hpp"
  63 #include "oops/compiledICHolder.hpp"
  64 #include "oops/constMethod.hpp"
  65 #include "oops/constantPool.hpp"
  66 #include "oops/cpCache.hpp"
  67 #include "oops/instanceClassLoaderKlass.hpp"
  68 #include "oops/instanceKlass.hpp"
  69 #include "oops/instanceMirrorKlass.hpp"
  70 #include "oops/instanceOop.hpp"
  71 #include "oops/klass.hpp"
  72 #include "oops/markOop.hpp"
  73 #include "oops/method.hpp"
  74 #include "oops/methodCounters.hpp"
  75 #include "oops/methodData.hpp"
  76 #include "oops/objArrayKlass.hpp"
  77 #include "oops/objArrayOop.hpp"
  78 #include "oops/oop.inline.hpp"
  79 #include "oops/oopHandle.hpp"


1102   /************/                                                                                                                     \
1103   /* Array<T> */                                                                                                                     \
1104   /************/                                                                                                                     \
1105                                                                                                                                      \
1106   nonstatic_field(Array<int>,                  _length,                                       int)                                   \
1107   unchecked_nonstatic_field(Array<int>,        _data,                                         sizeof(int))                           \
1108   unchecked_nonstatic_field(Array<u1>,         _data,                                         sizeof(u1))                            \
1109   unchecked_nonstatic_field(Array<u2>,         _data,                                         sizeof(u2))                            \
1110   unchecked_nonstatic_field(Array<Method*>,    _data,                                         sizeof(Method*))                       \
1111   unchecked_nonstatic_field(Array<Klass*>,     _data,                                         sizeof(Klass*))                        \
1112                                                                                                                                      \
1113   /*********************************/                                                                                                \
1114   /* java_lang_Class fields        */                                                                                                \
1115   /*********************************/                                                                                                \
1116                                                                                                                                      \
1117      static_field(java_lang_Class,             _klass_offset,                                 int)                                   \
1118      static_field(java_lang_Class,             _array_klass_offset,                           int)                                   \
1119      static_field(java_lang_Class,             _oop_size_offset,                              int)                                   \
1120      static_field(java_lang_Class,             _static_oop_field_count_offset,                int)                                   \
1121                                                                                                                                      \
1122   /********************************************/                                                                                     \
1123   /* FileMapInfo fields (CDS archive related) */                                                                                     \
1124   /********************************************/                                                                                     \
1125                                                                                                                                      \
1126   nonstatic_field(FileMapInfo,                 _header,                                       FileMapInfo::FileMapHeader*)           \
1127      static_field(FileMapInfo,                 _current_info,                                 FileMapInfo*)                          \
1128   nonstatic_field(FileMapInfo::FileMapHeader,  _space[0],                                     FileMapInfo::FileMapHeader::space_info)\
1129   nonstatic_field(FileMapInfo::FileMapHeader::space_info, _addr._base,                        char*)                                 \
1130   nonstatic_field(FileMapInfo::FileMapHeader::space_info, _used,                              size_t)                                \
1131                                                                                                                                      \
1132   /******************/                                                                                                               \
1133   /* VMError fields */                                                                                                               \
1134   /******************/                                                                                                               \
1135                                                                                                                                      \
1136      static_field(VMError,                     _thread,                                       Thread*)                               \
1137                                                                                                                                      \
1138   /************************/                                                                                                         \
1139   /* Miscellaneous fields */                                                                                                         \
1140   /************************/                                                                                                         \
1141                                                                                                                                      \
1142   nonstatic_field(CompileTask,                 _method,                                       Method*)                               \
1143   nonstatic_field(CompileTask,                 _osr_bci,                                      int)                                   \
1144   nonstatic_field(CompileTask,                 _comp_level,                                   int)                                   \
1145   nonstatic_field(CompileTask,                 _compile_id,                                   uint)                                  \
1146   nonstatic_field(CompileTask,                 _num_inlined_bytecodes,                        int)                                   \
1147   nonstatic_field(CompileTask,                 _next,                                         CompileTask*)                          \
1148   nonstatic_field(CompileTask,                 _prev,                                         CompileTask*)                          \
1149                                                                                                                                      \
1150   nonstatic_field(vframeArray,                 _next,                                         vframeArray*)                          \
1151   nonstatic_field(vframeArray,                 _original,                                     frame)                                 \


1991   declare_toplevel_type(Mutex*)                                           \
1992   declare_toplevel_type(nmethod*)                                         \
1993   COMPILER2_PRESENT(declare_unsigned_integer_type(node_idx_t))            \
1994   declare_toplevel_type(ObjectMonitor*)                                   \
1995   declare_toplevel_type(PaddedObjectMonitor*)                             \
1996   declare_toplevel_type(oop*)                                             \
1997   declare_toplevel_type(OopMap**)                                         \
1998   declare_toplevel_type(OopMapCache*)                                     \
1999   declare_toplevel_type(OopMapSet*)                                       \
2000   declare_toplevel_type(VMReg)                                            \
2001   declare_toplevel_type(OSThread*)                                        \
2002    declare_integer_type(ReferenceType)                                    \
2003   declare_toplevel_type(StubQueue*)                                       \
2004   declare_toplevel_type(Thread*)                                          \
2005   declare_toplevel_type(Universe)                                         \
2006   declare_toplevel_type(os)                                               \
2007   declare_toplevel_type(vframeArray)                                      \
2008   declare_toplevel_type(vframeArrayElement)                               \
2009   declare_toplevel_type(Annotations*)                                     \
2010   declare_type(OopMapValue, StackObj)                                     \
2011   declare_type(FileMapInfo, CHeapObj<mtInternal>)                         \
2012   declare_type(FileMapInfo::FileMapHeaderBase, CHeapObj<mtClass>)         \
2013   declare_type(FileMapInfo::FileMapHeader, FileMapInfo::FileMapHeaderBase)\
2014   declare_toplevel_type(FileMapInfo::FileMapHeader::space_info)           \
2015                                                                           \
2016   /************/                                                          \
2017   /* GC types */                                                          \
2018   /************/                                                          \
2019                                                                           \
2020   VM_TYPES_GC(declare_type,                                               \
2021               declare_toplevel_type,                                      \
2022               declare_integer_type)
2023 
2024 //--------------------------------------------------------------------------------
2025 // VM_INT_CONSTANTS
2026 //
2027 // This table contains integer constants required over in the
2028 // serviceability agent. The "declare_constant" macro is used for all
2029 // enums, etc., while "declare_preprocessor_constant" must be used for
2030 // all #defined constants.
2031 
2032 #define VM_INT_CONSTANTS(declare_constant,                                \
2033                          declare_constant_with_value,                     \
2034                          declare_preprocessor_constant,                   \


< prev index next >