src/share/vm/oops/instanceKlass.hpp

Print this page

        

*** 238,248 **** u2 _minor_version; // minor version number of class file u2 _major_version; // major version number of class file Thread* _init_thread; // Pointer to current thread doing initialization (to handle recusive initialization) int _vtable_len; // length of Java vtable (in words) int _itable_len; // length of Java itable (in words) - ReferenceType _reference_type; // reference type OopMapCache* volatile _oop_map_cache; // OopMapCache for all methods in the klass (allocated lazily) JNIid* _jni_ids; // First JNI identifier for static fields in this class jmethodID* _methods_jmethod_ids; // jmethodIDs corresponding to method_idnum, or NULL if none int* _methods_cached_itable_indices; // itable_index cache for JNI invoke corresponding to methods idnum, or NULL nmethodBucket* _dependencies; // list of dependent nmethods --- 238,247 ----
*** 263,272 **** --- 262,273 ---- // Class states are defined as ClassState (see above). // Place the _init_state here to utilize the unused 2-byte after // _idnum_allocated_count. u1 _init_state; // state of class + u1 _reference_type; // reference type + // embedded Java vtable follows here // embedded Java itables follows here // embedded static fields follows here // embedded nonstatic oop-map blocks follows here
*** 405,416 **** // set the class to initialized if no static initializer is present void eager_initialize(Thread *thread); // reference type ! ReferenceType reference_type() const { return _reference_type; } ! void set_reference_type(ReferenceType t) { _reference_type = t; } static ByteSize reference_type_offset() { return in_ByteSize(sizeof(klassOopDesc) + offset_of(instanceKlass, _reference_type)); } // find local field, returns true if found bool find_local_field(Symbol* name, Symbol* sig, fieldDescriptor* fd) const; --- 406,420 ---- // set the class to initialized if no static initializer is present void eager_initialize(Thread *thread); // reference type ! ReferenceType reference_type() const { return (ReferenceType)_reference_type; } ! void set_reference_type(ReferenceType t) { ! assert(t <= 0xFF, "overflow"); ! _reference_type = (u1)t; ! } static ByteSize reference_type_offset() { return in_ByteSize(sizeof(klassOopDesc) + offset_of(instanceKlass, _reference_type)); } // find local field, returns true if found bool find_local_field(Symbol* name, Symbol* sig, fieldDescriptor* fd) const;