diff src/share/vm/classfile/javaClasses.cpp @ 2418:352622fd140a

7032129: Native memory usage grow unexpectedly for vm/oom/*InternedString tests Reviewed-by: kvn, kamg, jcoomes
author never
date Thu, 31 Mar 2011 14:00:41 -0700
parents 38fea01eb669
children ed69575596ac
line wrap: on
line diff
--- a/src/share/vm/classfile/javaClasses.cpp	Thu Mar 31 02:31:57 2011 -0700
+++ b/src/share/vm/classfile/javaClasses.cpp	Thu Mar 31 14:00:41 2011 -0700
@@ -301,6 +301,15 @@
   return result;
 }
 
+unsigned int java_lang_String::hash_string(oop java_string) {
+  typeArrayOop value  = java_lang_String::value(java_string);
+  int          offset = java_lang_String::offset(java_string);
+  int          length = java_lang_String::length(java_string);
+
+  if (length == 0) return 0;
+  return hash_string(value->char_at_addr(offset), length);
+}
+
 Symbol* java_lang_String::as_symbol(Handle java_string, TRAPS) {
   oop          obj    = java_string();
   typeArrayOop value  = java_lang_String::value(obj);