< prev index next >

src/hotspot/share/runtime/vmStructs.cpp

Print this page

 182                    nonproduct_nonstatic_field,                                                                                       \
 183                    c1_nonstatic_field,                                                                                               \
 184                    c2_nonstatic_field,                                                                                               \
 185                    unchecked_c1_static_field,                                                                                        \
 186                    unchecked_c2_static_field)                                                                                        \
 187                                                                                                                                      \
 188   /*************/                                                                                                                    \
 189   /* GC fields */                                                                                                                    \
 190   /*************/                                                                                                                    \
 191                                                                                                                                      \
 192   VM_STRUCTS_GC(nonstatic_field,                                                                                                     \
 193                 volatile_nonstatic_field,                                                                                            \
 194                 static_field,                                                                                                        \
 195                 unchecked_nonstatic_field)                                                                                           \
 196                                                                                                                                      \
 197   /******************************************************************/                                                               \
 198   /* OopDesc and Klass hierarchies (NOTE: MethodData* incomplete)   */                                                               \
 199   /******************************************************************/                                                               \
 200                                                                                                                                      \
 201   volatile_nonstatic_field(oopDesc,            _mark,                                         markWord)                              \
 202   volatile_nonstatic_field(oopDesc,            _metadata._klass,                              Klass*)                                \
 203   volatile_nonstatic_field(oopDesc,            _metadata._compressed_klass,                   narrowKlass)                           \
 204   static_field(BarrierSet,                     _barrier_set,                                  BarrierSet*)                           \
 205   nonstatic_field(ArrayKlass,                  _dimension,                                    int)                                   \
 206   volatile_nonstatic_field(ArrayKlass,         _higher_dimension,                             Klass*)                                \
 207   volatile_nonstatic_field(ArrayKlass,         _lower_dimension,                              Klass*)                                \
 208   nonstatic_field(CompiledICHolder,            _holder_metadata,                              Metadata*)                             \
 209   nonstatic_field(CompiledICHolder,            _holder_klass,                                 Klass*)                                \
 210   nonstatic_field(ConstantPool,                _tags,                                         Array<u1>*)                            \
 211   nonstatic_field(ConstantPool,                _cache,                                        ConstantPoolCache*)                    \
 212   nonstatic_field(ConstantPool,                _pool_holder,                                  InstanceKlass*)                        \
 213   nonstatic_field(ConstantPool,                _operands,                                     Array<u2>*)                            \
 214   nonstatic_field(ConstantPool,                _resolved_klasses,                             Array<Klass*>*)                        \
 215   nonstatic_field(ConstantPool,                _length,                                       int)                                   \
 216   nonstatic_field(ConstantPool,                _minor_version,                                u2)                                    \
 217   nonstatic_field(ConstantPool,                _major_version,                                u2)                                    \
 218   nonstatic_field(ConstantPool,                _generic_signature_index,                      u2)                                    \
 219   nonstatic_field(ConstantPool,                _source_file_name_index,                       u2)                                    \
 220   nonstatic_field(ConstantPoolCache,           _resolved_references,                          OopHandle)                             \
 221   nonstatic_field(ConstantPoolCache,           _reference_map,                                Array<u2>*)                            \
 222   nonstatic_field(ConstantPoolCache,           _length,                                       int)                                   \
 223   nonstatic_field(ConstantPoolCache,           _constant_pool,                                ConstantPool*)                         \

 362   nonstatic_field(JNIid,                       _holder,                                       Klass*)                                \
 363   nonstatic_field(JNIid,                       _next,                                         JNIid*)                                \
 364   nonstatic_field(JNIid,                       _offset,                                       int)                                   \
 365                                                                                                                                      \
 366   /************/                                                                                                                     \
 367   /* Universe */                                                                                                                     \
 368   /************/                                                                                                                     \
 369      static_field(Universe,                    _collectedHeap,                                CollectedHeap*)                        \
 370   /******************/                                                                                                               \
 371   /* CompressedOops */                                                                                                               \
 372   /******************/                                                                                                               \
 373                                                                                                                                      \
 374      static_field(CompressedOops,              _narrow_oop._base,                             address)                               \
 375      static_field(CompressedOops,              _narrow_oop._shift,                            int)                                   \
 376      static_field(CompressedOops,              _narrow_oop._use_implicit_null_checks,         bool)                                  \
 377                                                                                                                                      \
 378   /***************************/                                                                                                      \
 379   /* CompressedKlassPointers */                                                                                                      \
 380   /***************************/                                                                                                      \
 381                                                                                                                                      \
 382      static_field(CompressedKlassPointers,     _narrow_klass._base,                           address)                               \
 383      static_field(CompressedKlassPointers,     _narrow_klass._shift,                          int)                                   \
 384                                                                                                                                      \
 385   /******/                                                                                                                           \
 386   /* os */                                                                                                                           \
 387   /******/                                                                                                                           \
 388                                                                                                                                      \
 389      static_field(os,                          _polling_page,                                 address)                               \
 390                                                                                                                                      \
 391   /**********/                                                                                                                       \
 392   /* Memory */                                                                                                                       \
 393   /**********/                                                                                                                       \
 394                                                                                                                                      \
 395      static_field(MetaspaceObj,                _shared_metaspace_base,                        void*)                                 \
 396      static_field(MetaspaceObj,                _shared_metaspace_top,                         void*)                                 \
 397   nonstatic_field(ThreadLocalAllocBuffer,      _start,                                        HeapWord*)                             \
 398   nonstatic_field(ThreadLocalAllocBuffer,      _top,                                          HeapWord*)                             \
 399   nonstatic_field(ThreadLocalAllocBuffer,      _end,                                          HeapWord*)                             \
 400   nonstatic_field(ThreadLocalAllocBuffer,      _pf_top,                                       HeapWord*)                             \
 401   nonstatic_field(ThreadLocalAllocBuffer,      _desired_size,                                 size_t)                                \
 402   nonstatic_field(ThreadLocalAllocBuffer,      _refill_waste_limit,                           size_t)                                \
 403      static_field(ThreadLocalAllocBuffer,      _reserve_for_allocation_prefetch,              int)                                   \

 688   volatile_nonstatic_field(JavaFrameAnchor,    _last_Java_sp,                                 intptr_t*)                             \
 689   volatile_nonstatic_field(JavaFrameAnchor,    _last_Java_pc,                                 address)                               \
 690                                                                                                                                      \
 691   /******************************/                                                                                                   \
 692   /* Threads (NOTE: incomplete) */                                                                                                   \
 693   /******************************/                                                                                                   \
 694                                                                                                                                      \
 695   static_field(Threads,                     _number_of_threads,                               int)                                   \
 696   static_field(Threads,                     _number_of_non_daemon_threads,                    int)                                   \
 697   static_field(Threads,                     _return_code,                                     int)                                   \
 698                                                                                                                                      \
 699   static_ptr_volatile_field(ThreadsSMRSupport, _java_thread_list,                             ThreadsList*)                          \
 700   nonstatic_field(ThreadsList,                 _length,                                       const uint)                            \
 701   nonstatic_field(ThreadsList,                 _threads,                                      JavaThread *const *const)              \
 702                                                                                                                                      \
 703   nonstatic_field(ThreadShadow,                _pending_exception,                            oop)                                   \
 704   nonstatic_field(ThreadShadow,                _exception_file,                               const char*)                           \
 705   nonstatic_field(ThreadShadow,                _exception_line,                               int)                                   \
 706   nonstatic_field(Thread,                      _tlab,                                         ThreadLocalAllocBuffer)                \
 707   nonstatic_field(Thread,                      _allocated_bytes,                              jlong)                                 \



 708   nonstatic_field(NamedThread,                 _name,                                         char*)                                 \
 709   nonstatic_field(NamedThread,                 _processed_thread,                             Thread*)                               \
 710   nonstatic_field(JavaThread,                  _threadObj,                                    OopHandle)                             \
 711   nonstatic_field(JavaThread,                  _vthread,                                      OopHandle)                             \
 712   nonstatic_field(JavaThread,                  _jvmti_vthread,                                OopHandle)                             \
 713   nonstatic_field(JavaThread,                  _extentLocalCache,                              OopHandle)                             \
 714   nonstatic_field(JavaThread,                  _anchor,                                       JavaFrameAnchor)                       \
 715   nonstatic_field(JavaThread,                  _vm_result,                                    oop)                                   \
 716   nonstatic_field(JavaThread,                  _vm_result_2,                                  Metadata*)                             \
 717   volatile_nonstatic_field(JavaThread,         _current_pending_monitor,                      ObjectMonitor*)                        \
 718   nonstatic_field(JavaThread,                  _current_pending_monitor_is_from_java,         bool)                                  \
 719   volatile_nonstatic_field(JavaThread,         _current_waiting_monitor,                      ObjectMonitor*)                        \
 720   volatile_nonstatic_field(JavaThread,         _suspend_flags,                                uint32_t)                              \
 721   volatile_nonstatic_field(JavaThread,         _exception_oop,                                oop)                                   \
 722   volatile_nonstatic_field(JavaThread,         _exception_pc,                                 address)                               \
 723   volatile_nonstatic_field(JavaThread,         _is_method_handle_return,                      int)                                   \
 724   nonstatic_field(JavaThread,                  _saved_exception_pc,                           address)                               \
 725   volatile_nonstatic_field(JavaThread,         _thread_state,                                 JavaThreadState)                       \
 726   nonstatic_field(JavaThread,                  _osthread,                                     OSThread*)                             \
 727   nonstatic_field(JavaThread,                  _stack_base,                                   address)                               \

 835   nonstatic_field(ciField,                     _constant_value,                               ciConstant)                            \
 836                                                                                                                                      \
 837   nonstatic_field(ciObjectFactory,             _ci_metadata,                                  GrowableArray<ciMetadata*>)            \
 838   nonstatic_field(ciObjectFactory,             _symbols,                                      GrowableArray<ciSymbol*>)              \
 839                                                                                                                                      \
 840   nonstatic_field(ciConstant,                  _type,                                         BasicType)                             \
 841   nonstatic_field(ciConstant,                  _value._int,                                   jint)                                  \
 842   nonstatic_field(ciConstant,                  _value._long,                                  jlong)                                 \
 843   nonstatic_field(ciConstant,                  _value._float,                                 jfloat)                                \
 844   nonstatic_field(ciConstant,                  _value._double,                                jdouble)                               \
 845   nonstatic_field(ciConstant,                  _value._object,                                ciObject*)                             \
 846                                                                                                                                      \
 847   /************/                                                                                                                     \
 848   /* Monitors */                                                                                                                     \
 849   /************/                                                                                                                     \
 850                                                                                                                                      \
 851   volatile_nonstatic_field(ObjectMonitor,      _header,                                       markWord)                              \
 852   unchecked_nonstatic_field(ObjectMonitor,     _object,                                       sizeof(void *)) /* NOTE: no type */    \
 853   unchecked_nonstatic_field(ObjectMonitor,     _owner,                                        sizeof(void *)) /* NOTE: no type */    \
 854   volatile_nonstatic_field(ObjectMonitor,      _next_om,                                      ObjectMonitor*)                        \
 855   volatile_nonstatic_field(BasicLock,          _displaced_header,                             markWord)                              \
 856   nonstatic_field(ObjectMonitor,               _contentions,                                  int)                                   \
 857   volatile_nonstatic_field(ObjectMonitor,      _waiters,                                      int)                                   \
 858   volatile_nonstatic_field(ObjectMonitor,      _recursions,                                   intx)                                  \
 859   nonstatic_field(BasicObjectLock,             _lock,                                         BasicLock)                             \
 860   nonstatic_field(BasicObjectLock,             _obj,                                          oop)                                   \
 861   static_field(ObjectSynchronizer,             _in_use_list,                                  MonitorList)                           \
 862   volatile_nonstatic_field(MonitorList,        _head,                                         ObjectMonitor*)                        \
 863                                                                                                                                      \
 864   /*********************/                                                                                                            \
 865   /* Matcher (C2 only) */                                                                                                            \
 866   /*********************/                                                                                                            \
 867                                                                                                                                      \
 868   unchecked_c2_static_field(Matcher,           _regEncode,                          sizeof(Matcher::_regEncode)) /* NOTE: no type */ \
 869                                                                                                                                      \
 870   c2_nonstatic_field(Node,                     _in,                                           Node**)                                \
 871   c2_nonstatic_field(Node,                     _out,                                          Node**)                                \
 872   c2_nonstatic_field(Node,                     _cnt,                                          node_idx_t)                            \
 873   c2_nonstatic_field(Node,                     _max,                                          node_idx_t)                            \
 874   c2_nonstatic_field(Node,                     _outcnt,                                       node_idx_t)                            \
 875   c2_nonstatic_field(Node,                     _outmax,                                       node_idx_t)                            \
 876   c2_nonstatic_field(Node,                     _idx,                                          const node_idx_t)                      \
 877   c2_nonstatic_field(Node,                     _class_id,                                     juint)                                 \
 878   c2_nonstatic_field(Node,                     _flags,                                        juint)                                 \
 879                                                                                                                                      \

1302   /***********************************************************/           \
1303                                                                           \
1304   declare_toplevel_type(Threads)                                          \
1305   declare_toplevel_type(ThreadShadow)                                     \
1306     declare_type(Thread, ThreadShadow)                                    \
1307       declare_type(NonJavaThread, Thread)                                 \
1308         declare_type(NamedThread, NonJavaThread)                          \
1309         declare_type(WatcherThread, NonJavaThread)                        \
1310         declare_type(AsyncLogWriter, NonJavaThread)                       \
1311       declare_type(JavaThread, Thread)                                    \
1312         declare_type(JvmtiAgentThread, JavaThread)                        \
1313         declare_type(MonitorDeflationThread, JavaThread)                  \
1314         declare_type(ServiceThread, JavaThread)                           \
1315         declare_type(NotificationThread, JavaThread)                      \
1316         declare_type(CompilerThread, JavaThread)                          \
1317   declare_toplevel_type(OSThread)                                         \
1318   declare_toplevel_type(JavaFrameAnchor)                                  \
1319                                                                           \
1320   declare_toplevel_type(ThreadsSMRSupport)                                \
1321   declare_toplevel_type(ThreadsList)                                      \

1322                                                                           \
1323   /***************/                                                       \
1324   /* Interpreter */                                                       \
1325   /***************/                                                       \
1326                                                                           \
1327   declare_toplevel_type(AbstractInterpreter)                              \
1328                                                                           \
1329   /*********/                                                             \
1330   /* Stubs */                                                             \
1331   /*********/                                                             \
1332                                                                           \
1333   declare_toplevel_type(StubQueue)                                        \
1334   declare_toplevel_type(StubRoutines)                                     \
1335   declare_toplevel_type(Stub)                                             \
1336            declare_type(InterpreterCodelet, Stub)                         \
1337                                                                           \
1338   /*************/                                                         \
1339   /* JavaCalls */                                                         \
1340   /*************/                                                         \
1341                                                                           \

1420                                                                           \
1421   /**************/                                                        \
1422   /* OopStorage */                                                        \
1423   /**************/                                                        \
1424                                                                           \
1425   declare_toplevel_type(OopStorage)                                       \
1426                                                                           \
1427   /**********************/                                                \
1428   /* Runtime1 (C1 only) */                                                \
1429   /**********************/                                                \
1430                                                                           \
1431   declare_c1_toplevel_type(Runtime1)                                      \
1432                                                                           \
1433   /************/                                                          \
1434   /* Monitors */                                                          \
1435   /************/                                                          \
1436                                                                           \
1437   declare_toplevel_type(ObjectMonitor)                                    \
1438   declare_toplevel_type(MonitorList)                                      \
1439   declare_toplevel_type(ObjectSynchronizer)                               \
1440   declare_toplevel_type(BasicLock)                                        \
1441   declare_toplevel_type(BasicObjectLock)                                  \
1442                                                                           \
1443   /*********************/                                                 \
1444   /* Matcher (C2 only) */                                                 \
1445   /*********************/                                                 \
1446                                                                           \
1447   declare_c2_toplevel_type(Matcher)                                       \
1448   declare_c2_toplevel_type(Compile)                                       \
1449   declare_c2_toplevel_type(Options)                                       \
1450   declare_c2_toplevel_type(InlineTree)                                    \
1451   declare_c2_toplevel_type(OptoRegPair)                                   \
1452   declare_c2_toplevel_type(JVMState)                                      \
1453   declare_c2_toplevel_type(Phase)                                         \
1454     declare_c2_type(PhaseCFG, Phase)                                      \
1455     declare_c2_type(PhaseRegAlloc, Phase)                                 \
1456     declare_c2_type(PhaseChaitin, PhaseRegAlloc)                          \
1457   declare_c2_toplevel_type(CFGElement)                                    \
1458     declare_c2_type(Block, CFGElement)                                    \
1459   declare_c2_toplevel_type(Block_Array)                                   \
1460     declare_c2_type(Block_List, Block_Array)                              \

 182                    nonproduct_nonstatic_field,                                                                                       \
 183                    c1_nonstatic_field,                                                                                               \
 184                    c2_nonstatic_field,                                                                                               \
 185                    unchecked_c1_static_field,                                                                                        \
 186                    unchecked_c2_static_field)                                                                                        \
 187                                                                                                                                      \
 188   /*************/                                                                                                                    \
 189   /* GC fields */                                                                                                                    \
 190   /*************/                                                                                                                    \
 191                                                                                                                                      \
 192   VM_STRUCTS_GC(nonstatic_field,                                                                                                     \
 193                 volatile_nonstatic_field,                                                                                            \
 194                 static_field,                                                                                                        \
 195                 unchecked_nonstatic_field)                                                                                           \
 196                                                                                                                                      \
 197   /******************************************************************/                                                               \
 198   /* OopDesc and Klass hierarchies (NOTE: MethodData* incomplete)   */                                                               \
 199   /******************************************************************/                                                               \
 200                                                                                                                                      \
 201   volatile_nonstatic_field(oopDesc,            _mark,                                         markWord)                              \
 202   NOT_LP64(volatile_nonstatic_field(oopDesc,   _klass,                                        Klass*))                               \

 203   static_field(BarrierSet,                     _barrier_set,                                  BarrierSet*)                           \
 204   nonstatic_field(ArrayKlass,                  _dimension,                                    int)                                   \
 205   volatile_nonstatic_field(ArrayKlass,         _higher_dimension,                             Klass*)                                \
 206   volatile_nonstatic_field(ArrayKlass,         _lower_dimension,                              Klass*)                                \
 207   nonstatic_field(CompiledICHolder,            _holder_metadata,                              Metadata*)                             \
 208   nonstatic_field(CompiledICHolder,            _holder_klass,                                 Klass*)                                \
 209   nonstatic_field(ConstantPool,                _tags,                                         Array<u1>*)                            \
 210   nonstatic_field(ConstantPool,                _cache,                                        ConstantPoolCache*)                    \
 211   nonstatic_field(ConstantPool,                _pool_holder,                                  InstanceKlass*)                        \
 212   nonstatic_field(ConstantPool,                _operands,                                     Array<u2>*)                            \
 213   nonstatic_field(ConstantPool,                _resolved_klasses,                             Array<Klass*>*)                        \
 214   nonstatic_field(ConstantPool,                _length,                                       int)                                   \
 215   nonstatic_field(ConstantPool,                _minor_version,                                u2)                                    \
 216   nonstatic_field(ConstantPool,                _major_version,                                u2)                                    \
 217   nonstatic_field(ConstantPool,                _generic_signature_index,                      u2)                                    \
 218   nonstatic_field(ConstantPool,                _source_file_name_index,                       u2)                                    \
 219   nonstatic_field(ConstantPoolCache,           _resolved_references,                          OopHandle)                             \
 220   nonstatic_field(ConstantPoolCache,           _reference_map,                                Array<u2>*)                            \
 221   nonstatic_field(ConstantPoolCache,           _length,                                       int)                                   \
 222   nonstatic_field(ConstantPoolCache,           _constant_pool,                                ConstantPool*)                         \

 361   nonstatic_field(JNIid,                       _holder,                                       Klass*)                                \
 362   nonstatic_field(JNIid,                       _next,                                         JNIid*)                                \
 363   nonstatic_field(JNIid,                       _offset,                                       int)                                   \
 364                                                                                                                                      \
 365   /************/                                                                                                                     \
 366   /* Universe */                                                                                                                     \
 367   /************/                                                                                                                     \
 368      static_field(Universe,                    _collectedHeap,                                CollectedHeap*)                        \
 369   /******************/                                                                                                               \
 370   /* CompressedOops */                                                                                                               \
 371   /******************/                                                                                                               \
 372                                                                                                                                      \
 373      static_field(CompressedOops,              _narrow_oop._base,                             address)                               \
 374      static_field(CompressedOops,              _narrow_oop._shift,                            int)                                   \
 375      static_field(CompressedOops,              _narrow_oop._use_implicit_null_checks,         bool)                                  \
 376                                                                                                                                      \
 377   /***************************/                                                                                                      \
 378   /* CompressedKlassPointers */                                                                                                      \
 379   /***************************/                                                                                                      \
 380                                                                                                                                      \
 381      static_field(CompressedKlassPointers,     _base,                           address)                                             \
 382      static_field(CompressedKlassPointers,     _shift_copy,                          int)                                            \
 383                                                                                                                                      \
 384   /******/                                                                                                                           \
 385   /* os */                                                                                                                           \
 386   /******/                                                                                                                           \
 387                                                                                                                                      \
 388      static_field(os,                          _polling_page,                                 address)                               \
 389                                                                                                                                      \
 390   /**********/                                                                                                                       \
 391   /* Memory */                                                                                                                       \
 392   /**********/                                                                                                                       \
 393                                                                                                                                      \
 394      static_field(MetaspaceObj,                _shared_metaspace_base,                        void*)                                 \
 395      static_field(MetaspaceObj,                _shared_metaspace_top,                         void*)                                 \
 396   nonstatic_field(ThreadLocalAllocBuffer,      _start,                                        HeapWord*)                             \
 397   nonstatic_field(ThreadLocalAllocBuffer,      _top,                                          HeapWord*)                             \
 398   nonstatic_field(ThreadLocalAllocBuffer,      _end,                                          HeapWord*)                             \
 399   nonstatic_field(ThreadLocalAllocBuffer,      _pf_top,                                       HeapWord*)                             \
 400   nonstatic_field(ThreadLocalAllocBuffer,      _desired_size,                                 size_t)                                \
 401   nonstatic_field(ThreadLocalAllocBuffer,      _refill_waste_limit,                           size_t)                                \
 402      static_field(ThreadLocalAllocBuffer,      _reserve_for_allocation_prefetch,              int)                                   \

 687   volatile_nonstatic_field(JavaFrameAnchor,    _last_Java_sp,                                 intptr_t*)                             \
 688   volatile_nonstatic_field(JavaFrameAnchor,    _last_Java_pc,                                 address)                               \
 689                                                                                                                                      \
 690   /******************************/                                                                                                   \
 691   /* Threads (NOTE: incomplete) */                                                                                                   \
 692   /******************************/                                                                                                   \
 693                                                                                                                                      \
 694   static_field(Threads,                     _number_of_threads,                               int)                                   \
 695   static_field(Threads,                     _number_of_non_daemon_threads,                    int)                                   \
 696   static_field(Threads,                     _return_code,                                     int)                                   \
 697                                                                                                                                      \
 698   static_ptr_volatile_field(ThreadsSMRSupport, _java_thread_list,                             ThreadsList*)                          \
 699   nonstatic_field(ThreadsList,                 _length,                                       const uint)                            \
 700   nonstatic_field(ThreadsList,                 _threads,                                      JavaThread *const *const)              \
 701                                                                                                                                      \
 702   nonstatic_field(ThreadShadow,                _pending_exception,                            oop)                                   \
 703   nonstatic_field(ThreadShadow,                _exception_file,                               const char*)                           \
 704   nonstatic_field(ThreadShadow,                _exception_line,                               int)                                   \
 705   nonstatic_field(Thread,                      _tlab,                                         ThreadLocalAllocBuffer)                \
 706   nonstatic_field(Thread,                      _allocated_bytes,                              jlong)                                 \
 707   nonstatic_field(Thread,                      _lock_stack,                                   LockStack)                             \
 708   nonstatic_field(LockStack,                   _current,                                      oop*)                                  \
 709   nonstatic_field(LockStack,                   _base,                                         oop*)                                  \
 710   nonstatic_field(NamedThread,                 _name,                                         char*)                                 \
 711   nonstatic_field(NamedThread,                 _processed_thread,                             Thread*)                               \
 712   nonstatic_field(JavaThread,                  _threadObj,                                    OopHandle)                             \
 713   nonstatic_field(JavaThread,                  _vthread,                                      OopHandle)                             \
 714   nonstatic_field(JavaThread,                  _jvmti_vthread,                                OopHandle)                             \
 715   nonstatic_field(JavaThread,                  _extentLocalCache,                              OopHandle)                             \
 716   nonstatic_field(JavaThread,                  _anchor,                                       JavaFrameAnchor)                       \
 717   nonstatic_field(JavaThread,                  _vm_result,                                    oop)                                   \
 718   nonstatic_field(JavaThread,                  _vm_result_2,                                  Metadata*)                             \
 719   volatile_nonstatic_field(JavaThread,         _current_pending_monitor,                      ObjectMonitor*)                        \
 720   nonstatic_field(JavaThread,                  _current_pending_monitor_is_from_java,         bool)                                  \
 721   volatile_nonstatic_field(JavaThread,         _current_waiting_monitor,                      ObjectMonitor*)                        \
 722   volatile_nonstatic_field(JavaThread,         _suspend_flags,                                uint32_t)                              \
 723   volatile_nonstatic_field(JavaThread,         _exception_oop,                                oop)                                   \
 724   volatile_nonstatic_field(JavaThread,         _exception_pc,                                 address)                               \
 725   volatile_nonstatic_field(JavaThread,         _is_method_handle_return,                      int)                                   \
 726   nonstatic_field(JavaThread,                  _saved_exception_pc,                           address)                               \
 727   volatile_nonstatic_field(JavaThread,         _thread_state,                                 JavaThreadState)                       \
 728   nonstatic_field(JavaThread,                  _osthread,                                     OSThread*)                             \
 729   nonstatic_field(JavaThread,                  _stack_base,                                   address)                               \

 837   nonstatic_field(ciField,                     _constant_value,                               ciConstant)                            \
 838                                                                                                                                      \
 839   nonstatic_field(ciObjectFactory,             _ci_metadata,                                  GrowableArray<ciMetadata*>)            \
 840   nonstatic_field(ciObjectFactory,             _symbols,                                      GrowableArray<ciSymbol*>)              \
 841                                                                                                                                      \
 842   nonstatic_field(ciConstant,                  _type,                                         BasicType)                             \
 843   nonstatic_field(ciConstant,                  _value._int,                                   jint)                                  \
 844   nonstatic_field(ciConstant,                  _value._long,                                  jlong)                                 \
 845   nonstatic_field(ciConstant,                  _value._float,                                 jfloat)                                \
 846   nonstatic_field(ciConstant,                  _value._double,                                jdouble)                               \
 847   nonstatic_field(ciConstant,                  _value._object,                                ciObject*)                             \
 848                                                                                                                                      \
 849   /************/                                                                                                                     \
 850   /* Monitors */                                                                                                                     \
 851   /************/                                                                                                                     \
 852                                                                                                                                      \
 853   volatile_nonstatic_field(ObjectMonitor,      _header,                                       markWord)                              \
 854   unchecked_nonstatic_field(ObjectMonitor,     _object,                                       sizeof(void *)) /* NOTE: no type */    \
 855   unchecked_nonstatic_field(ObjectMonitor,     _owner,                                        sizeof(void *)) /* NOTE: no type */    \
 856   volatile_nonstatic_field(ObjectMonitor,      _next_om,                                      ObjectMonitor*)                        \

 857   nonstatic_field(ObjectMonitor,               _contentions,                                  int)                                   \
 858   volatile_nonstatic_field(ObjectMonitor,      _waiters,                                      int)                                   \
 859   volatile_nonstatic_field(ObjectMonitor,      _recursions,                                   intx)                                  \

 860   nonstatic_field(BasicObjectLock,             _obj,                                          oop)                                   \
 861   static_field(ObjectSynchronizer,             _in_use_list,                                  MonitorList)                           \
 862   volatile_nonstatic_field(MonitorList,        _head,                                         ObjectMonitor*)                        \
 863                                                                                                                                      \
 864   /*********************/                                                                                                            \
 865   /* Matcher (C2 only) */                                                                                                            \
 866   /*********************/                                                                                                            \
 867                                                                                                                                      \
 868   unchecked_c2_static_field(Matcher,           _regEncode,                          sizeof(Matcher::_regEncode)) /* NOTE: no type */ \
 869                                                                                                                                      \
 870   c2_nonstatic_field(Node,                     _in,                                           Node**)                                \
 871   c2_nonstatic_field(Node,                     _out,                                          Node**)                                \
 872   c2_nonstatic_field(Node,                     _cnt,                                          node_idx_t)                            \
 873   c2_nonstatic_field(Node,                     _max,                                          node_idx_t)                            \
 874   c2_nonstatic_field(Node,                     _outcnt,                                       node_idx_t)                            \
 875   c2_nonstatic_field(Node,                     _outmax,                                       node_idx_t)                            \
 876   c2_nonstatic_field(Node,                     _idx,                                          const node_idx_t)                      \
 877   c2_nonstatic_field(Node,                     _class_id,                                     juint)                                 \
 878   c2_nonstatic_field(Node,                     _flags,                                        juint)                                 \
 879                                                                                                                                      \

1302   /***********************************************************/           \
1303                                                                           \
1304   declare_toplevel_type(Threads)                                          \
1305   declare_toplevel_type(ThreadShadow)                                     \
1306     declare_type(Thread, ThreadShadow)                                    \
1307       declare_type(NonJavaThread, Thread)                                 \
1308         declare_type(NamedThread, NonJavaThread)                          \
1309         declare_type(WatcherThread, NonJavaThread)                        \
1310         declare_type(AsyncLogWriter, NonJavaThread)                       \
1311       declare_type(JavaThread, Thread)                                    \
1312         declare_type(JvmtiAgentThread, JavaThread)                        \
1313         declare_type(MonitorDeflationThread, JavaThread)                  \
1314         declare_type(ServiceThread, JavaThread)                           \
1315         declare_type(NotificationThread, JavaThread)                      \
1316         declare_type(CompilerThread, JavaThread)                          \
1317   declare_toplevel_type(OSThread)                                         \
1318   declare_toplevel_type(JavaFrameAnchor)                                  \
1319                                                                           \
1320   declare_toplevel_type(ThreadsSMRSupport)                                \
1321   declare_toplevel_type(ThreadsList)                                      \
1322   declare_toplevel_type(LockStack)                                        \
1323                                                                           \
1324   /***************/                                                       \
1325   /* Interpreter */                                                       \
1326   /***************/                                                       \
1327                                                                           \
1328   declare_toplevel_type(AbstractInterpreter)                              \
1329                                                                           \
1330   /*********/                                                             \
1331   /* Stubs */                                                             \
1332   /*********/                                                             \
1333                                                                           \
1334   declare_toplevel_type(StubQueue)                                        \
1335   declare_toplevel_type(StubRoutines)                                     \
1336   declare_toplevel_type(Stub)                                             \
1337            declare_type(InterpreterCodelet, Stub)                         \
1338                                                                           \
1339   /*************/                                                         \
1340   /* JavaCalls */                                                         \
1341   /*************/                                                         \
1342                                                                           \

1421                                                                           \
1422   /**************/                                                        \
1423   /* OopStorage */                                                        \
1424   /**************/                                                        \
1425                                                                           \
1426   declare_toplevel_type(OopStorage)                                       \
1427                                                                           \
1428   /**********************/                                                \
1429   /* Runtime1 (C1 only) */                                                \
1430   /**********************/                                                \
1431                                                                           \
1432   declare_c1_toplevel_type(Runtime1)                                      \
1433                                                                           \
1434   /************/                                                          \
1435   /* Monitors */                                                          \
1436   /************/                                                          \
1437                                                                           \
1438   declare_toplevel_type(ObjectMonitor)                                    \
1439   declare_toplevel_type(MonitorList)                                      \
1440   declare_toplevel_type(ObjectSynchronizer)                               \

1441   declare_toplevel_type(BasicObjectLock)                                  \
1442                                                                           \
1443   /*********************/                                                 \
1444   /* Matcher (C2 only) */                                                 \
1445   /*********************/                                                 \
1446                                                                           \
1447   declare_c2_toplevel_type(Matcher)                                       \
1448   declare_c2_toplevel_type(Compile)                                       \
1449   declare_c2_toplevel_type(Options)                                       \
1450   declare_c2_toplevel_type(InlineTree)                                    \
1451   declare_c2_toplevel_type(OptoRegPair)                                   \
1452   declare_c2_toplevel_type(JVMState)                                      \
1453   declare_c2_toplevel_type(Phase)                                         \
1454     declare_c2_type(PhaseCFG, Phase)                                      \
1455     declare_c2_type(PhaseRegAlloc, Phase)                                 \
1456     declare_c2_type(PhaseChaitin, PhaseRegAlloc)                          \
1457   declare_c2_toplevel_type(CFGElement)                                    \
1458     declare_c2_type(Block, CFGElement)                                    \
1459   declare_c2_toplevel_type(Block_Array)                                   \
1460     declare_c2_type(Block_List, Block_Array)                              \
< prev index next >