267 u1 _reference_type; // reference type |
267 u1 _reference_type; // reference type |
268 |
268 |
269 |
269 |
270 JvmtiCachedClassFieldMap* _jvmti_cached_class_field_map; // JVMTI: used during heap iteration |
270 JvmtiCachedClassFieldMap* _jvmti_cached_class_field_map; // JVMTI: used during heap iteration |
271 |
271 |
|
272 NOT_PRODUCT(int _verify_count;) // to avoid redundant verifies |
|
273 |
272 // Method array. |
274 // Method array. |
273 Array<Method*>* _methods; |
275 Array<Method*>* _methods; |
274 // Interface (Klass*s) this class declares locally to implement. |
276 // Interface (Klass*s) this class declares locally to implement. |
275 Array<Klass*>* _local_interfaces; |
277 Array<Klass*>* _local_interfaces; |
276 // Interface (Klass*s) this class implements transitively. |
278 // Interface (Klass*s) this class implements transitively. |
584 char* source_debug_extension() const { return _source_debug_extension; } |
586 char* source_debug_extension() const { return _source_debug_extension; } |
585 void set_source_debug_extension(char* array, int length); |
587 void set_source_debug_extension(char* array, int length); |
586 |
588 |
587 // symbol unloading support (refcount already added) |
589 // symbol unloading support (refcount already added) |
588 Symbol* array_name() { return _array_name; } |
590 Symbol* array_name() { return _array_name; } |
589 void set_array_name(Symbol* name) { assert(_array_name == NULL, "name already created"); _array_name = name; } |
591 void set_array_name(Symbol* name) { assert(_array_name == NULL || name == NULL, "name already created"); _array_name = name; } |
590 |
592 |
591 // nonstatic oop-map blocks |
593 // nonstatic oop-map blocks |
592 static int nonstatic_oop_map_size(unsigned int oop_map_count) { |
594 static int nonstatic_oop_map_size(unsigned int oop_map_count) { |
593 return oop_map_count * OopMapBlock::size_in_words(); |
595 return oop_map_count * OopMapBlock::size_in_words(); |
594 } |
596 } |