< prev index next >

src/hotspot/share/runtime/vmStructs.hpp

Print this page

129   // the fact that it has a NULL typeName
130   static VMLongConstantEntry localHotSpotVMLongConstants[];
131   // The function to get localHotSpotVMIntConstants length
132   static size_t localHotSpotVMLongConstantsLength() NOT_VM_STRUCTS_RETURN_(0);
133 
134   /**
135    * Table of addresses.
136    */
137   static VMAddressEntry localHotSpotVMAddresses[];
138 
139 #ifdef ASSERT
140   // This is used to run any checking code necessary for validation of
141   // the data structure (debug build only)
142   static void init() NOT_VM_STRUCTS_RETURN;
143 
144 private:
145   // Look up a type in localHotSpotVMTypes using strcmp() (debug build only).
146   // Returns 1 if found, 0 if not.
147   static int findType(const char* typeName) NOT_VM_STRUCTS_RETURN_(0);
148 #endif // ASSERT



149 };
150 
151 // This utility macro quotes the passed string
152 #define QUOTE(x) #x
153 
154 //--------------------------------------------------------------------------------
155 // VMStructEntry macros
156 //
157 
158 // This macro generates a VMStructEntry line for a nonstatic field
159 #define GENERATE_NONSTATIC_VM_STRUCT_ENTRY(typeName, fieldName, type)              \
160  { QUOTE(typeName), QUOTE(fieldName), QUOTE(type), 0, offset_of(typeName, fieldName), NULL },
161 
162 // This macro generates a VMStructEntry line for a static field
163 #define GENERATE_STATIC_VM_STRUCT_ENTRY(typeName, fieldName, type)                 \
164  { QUOTE(typeName), QUOTE(fieldName), QUOTE(type), 1, 0, &typeName::fieldName },
165 
166 // This macro generates a VMStructEntry line for a static pointer volatile field,
167 // e.g.: "static ObjectMonitor * volatile g_block_list;"
168 #define GENERATE_STATIC_PTR_VOLATILE_VM_STRUCT_ENTRY(typeName, fieldName, type)    \

129   // the fact that it has a NULL typeName
130   static VMLongConstantEntry localHotSpotVMLongConstants[];
131   // The function to get localHotSpotVMIntConstants length
132   static size_t localHotSpotVMLongConstantsLength() NOT_VM_STRUCTS_RETURN_(0);
133 
134   /**
135    * Table of addresses.
136    */
137   static VMAddressEntry localHotSpotVMAddresses[];
138 
139 #ifdef ASSERT
140   // This is used to run any checking code necessary for validation of
141   // the data structure (debug build only)
142   static void init() NOT_VM_STRUCTS_RETURN;
143 
144 private:
145   // Look up a type in localHotSpotVMTypes using strcmp() (debug build only).
146   // Returns 1 if found, 0 if not.
147   static int findType(const char* typeName) NOT_VM_STRUCTS_RETURN_(0);
148 #endif // ASSERT
149 
150 public:
151   static void compact_headers_overrides() NOT_VM_STRUCTS_RETURN;
152 };
153 
154 // This utility macro quotes the passed string
155 #define QUOTE(x) #x
156 
157 //--------------------------------------------------------------------------------
158 // VMStructEntry macros
159 //
160 
161 // This macro generates a VMStructEntry line for a nonstatic field
162 #define GENERATE_NONSTATIC_VM_STRUCT_ENTRY(typeName, fieldName, type)              \
163  { QUOTE(typeName), QUOTE(fieldName), QUOTE(type), 0, offset_of(typeName, fieldName), NULL },
164 
165 // This macro generates a VMStructEntry line for a static field
166 #define GENERATE_STATIC_VM_STRUCT_ENTRY(typeName, fieldName, type)                 \
167  { QUOTE(typeName), QUOTE(fieldName), QUOTE(type), 1, 0, &typeName::fieldName },
168 
169 // This macro generates a VMStructEntry line for a static pointer volatile field,
170 // e.g.: "static ObjectMonitor * volatile g_block_list;"
171 #define GENERATE_STATIC_PTR_VOLATILE_VM_STRUCT_ENTRY(typeName, fieldName, type)    \
< prev index next >