Mercurial > hg > truffle
comparison src/share/vm/oops/instanceKlass.hpp @ 4901:b7b8b6d2f97d
Merge
author | bpittore |
---|---|
date | Mon, 06 Feb 2012 10:57:49 -0500 |
parents | 26a08cbbf042 a79cb7c55012 |
children | 33df1aeaebbf f7c4174b33ba |
comparison
equal
deleted
inserted
replaced
4880:5ab44ceb4d57 | 4901:b7b8b6d2f97d |
---|---|
238 u2 _minor_version; // minor version number of class file | 238 u2 _minor_version; // minor version number of class file |
239 u2 _major_version; // major version number of class file | 239 u2 _major_version; // major version number of class file |
240 Thread* _init_thread; // Pointer to current thread doing initialization (to handle recusive initialization) | 240 Thread* _init_thread; // Pointer to current thread doing initialization (to handle recusive initialization) |
241 int _vtable_len; // length of Java vtable (in words) | 241 int _vtable_len; // length of Java vtable (in words) |
242 int _itable_len; // length of Java itable (in words) | 242 int _itable_len; // length of Java itable (in words) |
243 ReferenceType _reference_type; // reference type | |
244 OopMapCache* volatile _oop_map_cache; // OopMapCache for all methods in the klass (allocated lazily) | 243 OopMapCache* volatile _oop_map_cache; // OopMapCache for all methods in the klass (allocated lazily) |
245 JNIid* _jni_ids; // First JNI identifier for static fields in this class | 244 JNIid* _jni_ids; // First JNI identifier for static fields in this class |
246 jmethodID* _methods_jmethod_ids; // jmethodIDs corresponding to method_idnum, or NULL if none | 245 jmethodID* _methods_jmethod_ids; // jmethodIDs corresponding to method_idnum, or NULL if none |
247 int* _methods_cached_itable_indices; // itable_index cache for JNI invoke corresponding to methods idnum, or NULL | 246 int* _methods_cached_itable_indices; // itable_index cache for JNI invoke corresponding to methods idnum, or NULL |
248 nmethodBucket* _dependencies; // list of dependent nmethods | 247 nmethodBucket* _dependencies; // list of dependent nmethods |
263 // Class states are defined as ClassState (see above). | 262 // Class states are defined as ClassState (see above). |
264 // Place the _init_state here to utilize the unused 2-byte after | 263 // Place the _init_state here to utilize the unused 2-byte after |
265 // _idnum_allocated_count. | 264 // _idnum_allocated_count. |
266 u1 _init_state; // state of class | 265 u1 _init_state; // state of class |
267 | 266 |
267 u1 _reference_type; // reference type | |
268 | |
268 // embedded Java vtable follows here | 269 // embedded Java vtable follows here |
269 // embedded Java itables follows here | 270 // embedded Java itables follows here |
270 // embedded static fields follows here | 271 // embedded static fields follows here |
271 // embedded nonstatic oop-map blocks follows here | 272 // embedded nonstatic oop-map blocks follows here |
272 | 273 |
405 | 406 |
406 // set the class to initialized if no static initializer is present | 407 // set the class to initialized if no static initializer is present |
407 void eager_initialize(Thread *thread); | 408 void eager_initialize(Thread *thread); |
408 | 409 |
409 // reference type | 410 // reference type |
410 ReferenceType reference_type() const { return _reference_type; } | 411 ReferenceType reference_type() const { return (ReferenceType)_reference_type; } |
411 void set_reference_type(ReferenceType t) { _reference_type = t; } | 412 void set_reference_type(ReferenceType t) { |
413 assert(t == (u1)t, "overflow"); | |
414 _reference_type = (u1)t; | |
415 } | |
412 | 416 |
413 static ByteSize reference_type_offset() { return in_ByteSize(sizeof(klassOopDesc) + offset_of(instanceKlass, _reference_type)); } | 417 static ByteSize reference_type_offset() { return in_ByteSize(sizeof(klassOopDesc) + offset_of(instanceKlass, _reference_type)); } |
414 | 418 |
415 // find local field, returns true if found | 419 // find local field, returns true if found |
416 bool find_local_field(Symbol* name, Symbol* sig, fieldDescriptor* fd) const; | 420 bool find_local_field(Symbol* name, Symbol* sig, fieldDescriptor* fd) const; |