1.1 --- a/src/share/vm/oops/instanceKlass.cpp Fri Dec 07 10:55:16 2012 -0800 1.2 +++ b/src/share/vm/oops/instanceKlass.cpp Tue Jan 08 14:04:25 2013 -0500 1.3 @@ -160,6 +160,8 @@ 1.4 1.5 #endif // ndef DTRACE_ENABLED 1.6 1.7 +volatile int InstanceKlass::_total_instanceKlass_count = 0; 1.8 + 1.9 Klass* InstanceKlass::allocate_instance_klass(ClassLoaderData* loader_data, 1.10 int vtable_len, 1.11 int itable_len, 1.12 @@ -203,6 +205,7 @@ 1.13 access_flags, !host_klass.is_null()); 1.14 } 1.15 1.16 + Atomic::inc(&_total_instanceKlass_count); 1.17 return ik; 1.18 } 1.19 1.20 @@ -2306,6 +2309,9 @@ 1.21 if (_array_name != NULL) _array_name->decrement_refcount(); 1.22 if (_source_file_name != NULL) _source_file_name->decrement_refcount(); 1.23 if (_source_debug_extension != NULL) FREE_C_HEAP_ARRAY(char, _source_debug_extension, mtClass); 1.24 + 1.25 + assert(_total_instanceKlass_count >= 1, "Sanity check"); 1.26 + Atomic::dec(&_total_instanceKlass_count); 1.27 } 1.28 1.29 void InstanceKlass::set_source_file_name(Symbol* n) {