< prev index next >

src/hotspot/share/runtime/vmStructs.cpp

Print this page

  43 #include "gc/shared/stringdedup/stringDedupThread.hpp"
  44 #include "gc/shared/vmStructs_gc.hpp"
  45 #include "interpreter/bytecodes.hpp"
  46 #include "interpreter/interpreter.hpp"
  47 #include "jfr/recorder/service/jfrRecorderThread.hpp"
  48 #include "logging/logAsyncWriter.hpp"
  49 #include "memory/allocation.inline.hpp"
  50 #include "memory/heap.hpp"
  51 #include "memory/padded.hpp"
  52 #include "memory/referenceType.hpp"
  53 #include "memory/universe.hpp"
  54 #include "memory/virtualspace.hpp"
  55 #include "oops/array.hpp"
  56 #include "oops/arrayKlass.hpp"
  57 #include "oops/arrayOop.hpp"
  58 #include "oops/bsmAttribute.hpp"
  59 #include "oops/constantPool.hpp"
  60 #include "oops/constMethod.hpp"
  61 #include "oops/cpCache.hpp"
  62 #include "oops/fieldInfo.hpp"


  63 #include "oops/instanceKlass.hpp"
  64 #include "oops/instanceOop.hpp"
  65 #include "oops/klass.hpp"
  66 #include "oops/klassVtable.hpp"
  67 #include "oops/markWord.hpp"
  68 #include "oops/method.hpp"
  69 #include "oops/methodCounters.hpp"
  70 #include "oops/methodData.hpp"
  71 #include "oops/objArrayKlass.hpp"
  72 #include "oops/objArrayOop.hpp"
  73 #include "oops/oop.inline.hpp"
  74 #include "oops/oopHandle.hpp"
  75 #include "oops/resolvedFieldEntry.hpp"
  76 #include "oops/resolvedIndyEntry.hpp"
  77 #include "oops/resolvedMethodEntry.hpp"
  78 #include "oops/symbol.hpp"
  79 #include "oops/typeArrayKlass.hpp"
  80 #include "oops/typeArrayOop.hpp"
  81 #include "prims/jvmtiAgentThread.hpp"
  82 #include "runtime/arguments.hpp"

 911   declare_unsigned_integer_type(uint32_t)                                 \
 912   declare_unsigned_integer_type(uint64_t)                                 \
 913                                                                           \
 914   /******************************************/                            \
 915   /* OopDesc hierarchy (NOTE: some missing) */                            \
 916   /******************************************/                            \
 917                                                                           \
 918   declare_toplevel_type(oopDesc)                                          \
 919     declare_type(arrayOopDesc, oopDesc)                                   \
 920       declare_type(objArrayOopDesc, arrayOopDesc)                         \
 921     declare_type(instanceOopDesc, oopDesc)                                \
 922                                                                           \
 923   /**************************************************/                    \
 924   /* MetadataOopDesc hierarchy (NOTE: some missing) */                    \
 925   /**************************************************/                    \
 926                                                                           \
 927   declare_toplevel_type(MetaspaceObj)                                     \
 928     declare_type(Metadata, MetaspaceObj)                                  \
 929     declare_type(Klass, Metadata)                                         \
 930            declare_type(ArrayKlass, Klass)                                \
 931            declare_type(ObjArrayKlass, ArrayKlass)                        \
 932            declare_type(TypeArrayKlass, ArrayKlass)                       \



 933       declare_type(InstanceKlass, Klass)                                  \

 934         declare_type(InstanceClassLoaderKlass, InstanceKlass)             \
 935         declare_type(InstanceMirrorKlass, InstanceKlass)                  \
 936         declare_type(InstanceRefKlass, InstanceKlass)                     \
 937         declare_type(InstanceStackChunkKlass, InstanceKlass)              \
 938     declare_type(ConstantPool, Metadata)                                  \
 939     declare_type(ConstantPoolCache, MetaspaceObj)                         \
 940     declare_type(MethodData, Metadata)                                    \
 941     declare_type(Method, Metadata)                                        \
 942     declare_type(MethodCounters, MetaspaceObj)                            \
 943     declare_type(ConstMethod, MetaspaceObj)                               \
 944     declare_type(Annotations, MetaspaceObj)                               \
 945                                                                           \
 946   declare_toplevel_type(narrowKlass)                                      \
 947                                                                           \
 948   declare_toplevel_type(vtableEntry)                                      \
 949                                                                           \
 950            declare_toplevel_type(Symbol)                                  \
 951            declare_toplevel_type(Symbol*)                                 \
 952   declare_toplevel_type(volatile Metadata*)                               \
 953                                                                           \

1391   declare_constant(OBJECT_WAIT)                                           \
1392   declare_constant(BREAKPOINTED)                                          \
1393   declare_constant(SLEEPING)                                              \
1394   declare_constant(ZOMBIE)                                                \
1395                                                                           \
1396   /******************************/                                        \
1397   /* Klass misc. enum constants */                                        \
1398   /******************************/                                        \
1399                                                                           \
1400   declare_constant(Klass::_primary_super_limit)                           \
1401   declare_constant(Klass::_lh_neutral_value)                              \
1402   declare_constant(Klass::_lh_instance_slow_path_bit)                     \
1403   declare_constant(Klass::_lh_log2_element_size_shift)                    \
1404   declare_constant(Klass::_lh_log2_element_size_mask)                     \
1405   declare_constant(Klass::_lh_element_type_shift)                         \
1406   declare_constant(Klass::_lh_element_type_mask)                          \
1407   declare_constant(Klass::_lh_header_size_shift)                          \
1408   declare_constant(Klass::_lh_header_size_mask)                           \
1409   declare_constant(Klass::_lh_array_tag_shift)                            \
1410   declare_constant(Klass::_lh_array_tag_type_value)                       \
1411   declare_constant(Klass::_lh_array_tag_obj_value)                        \
1412                                                                           \
1413   declare_constant(Method::nonvirtual_vtable_index)                       \
1414   declare_constant(Method::extra_stack_entries_for_jsr292)                \
1415                                                                           \
1416   /********************************/                                      \
1417   /* ConstMethod anon-enum */                                             \
1418   /********************************/                                      \
1419                                                                           \
1420   declare_constant(ConstMethodFlags::_misc_has_linenumber_table)          \
1421   declare_constant(ConstMethodFlags::_misc_has_checked_exceptions)        \
1422   declare_constant(ConstMethodFlags::_misc_has_localvariable_table)       \
1423   declare_constant(ConstMethodFlags::_misc_has_exception_table)           \
1424   declare_constant(ConstMethodFlags::_misc_has_generic_signature)         \
1425   declare_constant(ConstMethodFlags::_misc_has_method_parameters)         \
1426   declare_constant(ConstMethodFlags::_misc_has_method_annotations)        \
1427   declare_constant(ConstMethodFlags::_misc_has_parameter_annotations)     \
1428   declare_constant(ConstMethodFlags::_misc_has_default_annotations)       \
1429   declare_constant(ConstMethodFlags::_misc_has_type_annotations)          \
1430                                                                           \
1431   /**************/                                                        \

1502   declare_constant(JavaThreadStatus::NEW)                                 \
1503   declare_constant(JavaThreadStatus::RUNNABLE)                            \
1504   declare_constant(JavaThreadStatus::SLEEPING)                            \
1505   declare_constant(JavaThreadStatus::IN_OBJECT_WAIT)                      \
1506   declare_constant(JavaThreadStatus::IN_OBJECT_WAIT_TIMED)                \
1507   declare_constant(JavaThreadStatus::PARKED)                              \
1508   declare_constant(JavaThreadStatus::PARKED_TIMED)                        \
1509   declare_constant(JavaThreadStatus::BLOCKED_ON_MONITOR_ENTER)            \
1510   declare_constant(JavaThreadStatus::TERMINATED)                          \
1511                                                                           \
1512                                                                           \
1513   /******************************/                                        \
1514   /* FieldFlags enum            */                                        \
1515   /******************************/                                        \
1516                                                                           \
1517   declare_constant(FieldInfo::FieldFlags::_ff_initialized)                \
1518   declare_constant(FieldInfo::FieldFlags::_ff_injected)                   \
1519   declare_constant(FieldInfo::FieldFlags::_ff_generic)                    \
1520   declare_constant(FieldInfo::FieldFlags::_ff_stable)                     \
1521   declare_constant(FieldInfo::FieldFlags::_ff_contended)                  \



1522                                                                           \
1523   /******************************/                                        \
1524   /* Debug info                 */                                        \
1525   /******************************/                                        \
1526                                                                           \
1527   declare_constant(Location::OFFSET_MASK)                                 \
1528   declare_constant(Location::OFFSET_SHIFT)                                \
1529   declare_constant(Location::TYPE_MASK)                                   \
1530   declare_constant(Location::TYPE_SHIFT)                                  \
1531   declare_constant(Location::WHERE_MASK)                                  \
1532   declare_constant(Location::WHERE_SHIFT)                                 \
1533                                                                           \
1534   /* constants from Location::Type enum  */                               \
1535                                                                           \
1536   declare_constant(Location::normal)                                      \
1537   declare_constant(Location::oop)                                         \
1538   declare_constant(Location::narrowoop)                                   \
1539   declare_constant(Location::int_in_long)                                 \
1540   declare_constant(Location::lng)                                         \
1541   declare_constant(Location::float_in_dbl)                                \

  43 #include "gc/shared/stringdedup/stringDedupThread.hpp"
  44 #include "gc/shared/vmStructs_gc.hpp"
  45 #include "interpreter/bytecodes.hpp"
  46 #include "interpreter/interpreter.hpp"
  47 #include "jfr/recorder/service/jfrRecorderThread.hpp"
  48 #include "logging/logAsyncWriter.hpp"
  49 #include "memory/allocation.inline.hpp"
  50 #include "memory/heap.hpp"
  51 #include "memory/padded.hpp"
  52 #include "memory/referenceType.hpp"
  53 #include "memory/universe.hpp"
  54 #include "memory/virtualspace.hpp"
  55 #include "oops/array.hpp"
  56 #include "oops/arrayKlass.hpp"
  57 #include "oops/arrayOop.hpp"
  58 #include "oops/bsmAttribute.hpp"
  59 #include "oops/constantPool.hpp"
  60 #include "oops/constMethod.hpp"
  61 #include "oops/cpCache.hpp"
  62 #include "oops/fieldInfo.hpp"
  63 #include "oops/flatArrayKlass.hpp"
  64 #include "oops/inlineKlass.hpp"
  65 #include "oops/instanceKlass.hpp"
  66 #include "oops/instanceOop.hpp"
  67 #include "oops/klass.hpp"
  68 #include "oops/klassVtable.hpp"
  69 #include "oops/markWord.hpp"
  70 #include "oops/method.hpp"
  71 #include "oops/methodCounters.hpp"
  72 #include "oops/methodData.hpp"
  73 #include "oops/objArrayKlass.hpp"
  74 #include "oops/objArrayOop.hpp"
  75 #include "oops/oop.inline.hpp"
  76 #include "oops/oopHandle.hpp"
  77 #include "oops/resolvedFieldEntry.hpp"
  78 #include "oops/resolvedIndyEntry.hpp"
  79 #include "oops/resolvedMethodEntry.hpp"
  80 #include "oops/symbol.hpp"
  81 #include "oops/typeArrayKlass.hpp"
  82 #include "oops/typeArrayOop.hpp"
  83 #include "prims/jvmtiAgentThread.hpp"
  84 #include "runtime/arguments.hpp"

 913   declare_unsigned_integer_type(uint32_t)                                 \
 914   declare_unsigned_integer_type(uint64_t)                                 \
 915                                                                           \
 916   /******************************************/                            \
 917   /* OopDesc hierarchy (NOTE: some missing) */                            \
 918   /******************************************/                            \
 919                                                                           \
 920   declare_toplevel_type(oopDesc)                                          \
 921     declare_type(arrayOopDesc, oopDesc)                                   \
 922       declare_type(objArrayOopDesc, arrayOopDesc)                         \
 923     declare_type(instanceOopDesc, oopDesc)                                \
 924                                                                           \
 925   /**************************************************/                    \
 926   /* MetadataOopDesc hierarchy (NOTE: some missing) */                    \
 927   /**************************************************/                    \
 928                                                                           \
 929   declare_toplevel_type(MetaspaceObj)                                     \
 930     declare_type(Metadata, MetaspaceObj)                                  \
 931     declare_type(Klass, Metadata)                                         \
 932            declare_type(ArrayKlass, Klass)                                \

 933            declare_type(TypeArrayKlass, ArrayKlass)                       \
 934            declare_type(ObjArrayKlass, ArrayKlass)                        \
 935              declare_type(FlatArrayKlass, ArrayKlass)                     \
 936              declare_type(RefArrayKlass, ArrayKlass)                      \
 937       declare_type(InstanceKlass, Klass)                                  \
 938         declare_type(InlineKlass, InstanceKlass)                          \
 939         declare_type(InstanceClassLoaderKlass, InstanceKlass)             \
 940         declare_type(InstanceMirrorKlass, InstanceKlass)                  \
 941         declare_type(InstanceRefKlass, InstanceKlass)                     \
 942         declare_type(InstanceStackChunkKlass, InstanceKlass)              \
 943     declare_type(ConstantPool, Metadata)                                  \
 944     declare_type(ConstantPoolCache, MetaspaceObj)                         \
 945     declare_type(MethodData, Metadata)                                    \
 946     declare_type(Method, Metadata)                                        \
 947     declare_type(MethodCounters, MetaspaceObj)                            \
 948     declare_type(ConstMethod, MetaspaceObj)                               \
 949     declare_type(Annotations, MetaspaceObj)                               \
 950                                                                           \
 951   declare_toplevel_type(narrowKlass)                                      \
 952                                                                           \
 953   declare_toplevel_type(vtableEntry)                                      \
 954                                                                           \
 955            declare_toplevel_type(Symbol)                                  \
 956            declare_toplevel_type(Symbol*)                                 \
 957   declare_toplevel_type(volatile Metadata*)                               \
 958                                                                           \

1396   declare_constant(OBJECT_WAIT)                                           \
1397   declare_constant(BREAKPOINTED)                                          \
1398   declare_constant(SLEEPING)                                              \
1399   declare_constant(ZOMBIE)                                                \
1400                                                                           \
1401   /******************************/                                        \
1402   /* Klass misc. enum constants */                                        \
1403   /******************************/                                        \
1404                                                                           \
1405   declare_constant(Klass::_primary_super_limit)                           \
1406   declare_constant(Klass::_lh_neutral_value)                              \
1407   declare_constant(Klass::_lh_instance_slow_path_bit)                     \
1408   declare_constant(Klass::_lh_log2_element_size_shift)                    \
1409   declare_constant(Klass::_lh_log2_element_size_mask)                     \
1410   declare_constant(Klass::_lh_element_type_shift)                         \
1411   declare_constant(Klass::_lh_element_type_mask)                          \
1412   declare_constant(Klass::_lh_header_size_shift)                          \
1413   declare_constant(Klass::_lh_header_size_mask)                           \
1414   declare_constant(Klass::_lh_array_tag_shift)                            \
1415   declare_constant(Klass::_lh_array_tag_type_value)                       \
1416   declare_constant(Klass::_lh_array_tag_ref_value)                        \
1417                                                                           \
1418   declare_constant(Method::nonvirtual_vtable_index)                       \
1419   declare_constant(Method::extra_stack_entries_for_jsr292)                \
1420                                                                           \
1421   /********************************/                                      \
1422   /* ConstMethod anon-enum */                                             \
1423   /********************************/                                      \
1424                                                                           \
1425   declare_constant(ConstMethodFlags::_misc_has_linenumber_table)          \
1426   declare_constant(ConstMethodFlags::_misc_has_checked_exceptions)        \
1427   declare_constant(ConstMethodFlags::_misc_has_localvariable_table)       \
1428   declare_constant(ConstMethodFlags::_misc_has_exception_table)           \
1429   declare_constant(ConstMethodFlags::_misc_has_generic_signature)         \
1430   declare_constant(ConstMethodFlags::_misc_has_method_parameters)         \
1431   declare_constant(ConstMethodFlags::_misc_has_method_annotations)        \
1432   declare_constant(ConstMethodFlags::_misc_has_parameter_annotations)     \
1433   declare_constant(ConstMethodFlags::_misc_has_default_annotations)       \
1434   declare_constant(ConstMethodFlags::_misc_has_type_annotations)          \
1435                                                                           \
1436   /**************/                                                        \

1507   declare_constant(JavaThreadStatus::NEW)                                 \
1508   declare_constant(JavaThreadStatus::RUNNABLE)                            \
1509   declare_constant(JavaThreadStatus::SLEEPING)                            \
1510   declare_constant(JavaThreadStatus::IN_OBJECT_WAIT)                      \
1511   declare_constant(JavaThreadStatus::IN_OBJECT_WAIT_TIMED)                \
1512   declare_constant(JavaThreadStatus::PARKED)                              \
1513   declare_constant(JavaThreadStatus::PARKED_TIMED)                        \
1514   declare_constant(JavaThreadStatus::BLOCKED_ON_MONITOR_ENTER)            \
1515   declare_constant(JavaThreadStatus::TERMINATED)                          \
1516                                                                           \
1517                                                                           \
1518   /******************************/                                        \
1519   /* FieldFlags enum            */                                        \
1520   /******************************/                                        \
1521                                                                           \
1522   declare_constant(FieldInfo::FieldFlags::_ff_initialized)                \
1523   declare_constant(FieldInfo::FieldFlags::_ff_injected)                   \
1524   declare_constant(FieldInfo::FieldFlags::_ff_generic)                    \
1525   declare_constant(FieldInfo::FieldFlags::_ff_stable)                     \
1526   declare_constant(FieldInfo::FieldFlags::_ff_contended)                  \
1527   declare_constant(FieldInfo::FieldFlags::_ff_null_free_inline_type)      \
1528   declare_constant(FieldInfo::FieldFlags::_ff_flat)                       \
1529   declare_constant(FieldInfo::FieldFlags::_ff_null_marker)                \
1530                                                                           \
1531   /******************************/                                        \
1532   /* Debug info                 */                                        \
1533   /******************************/                                        \
1534                                                                           \
1535   declare_constant(Location::OFFSET_MASK)                                 \
1536   declare_constant(Location::OFFSET_SHIFT)                                \
1537   declare_constant(Location::TYPE_MASK)                                   \
1538   declare_constant(Location::TYPE_SHIFT)                                  \
1539   declare_constant(Location::WHERE_MASK)                                  \
1540   declare_constant(Location::WHERE_SHIFT)                                 \
1541                                                                           \
1542   /* constants from Location::Type enum  */                               \
1543                                                                           \
1544   declare_constant(Location::normal)                                      \
1545   declare_constant(Location::oop)                                         \
1546   declare_constant(Location::narrowoop)                                   \
1547   declare_constant(Location::int_in_long)                                 \
1548   declare_constant(Location::lng)                                         \
1549   declare_constant(Location::float_in_dbl)                                \
< prev index next >