Thu, 13 Dec 2012 10:09:49 +0100
8004661: Comment and function name java_lang_String::toHash is wrong
Summary: renamed to hash_code
Reviewed-by: dholmes, coleenp, brutisso
Contributed-by: erik.helin@oracle.com
1.1 --- a/src/share/vm/classfile/javaClasses.cpp Fri Dec 07 16:08:05 2012 -0800 1.2 +++ b/src/share/vm/classfile/javaClasses.cpp Thu Dec 13 10:09:49 2012 +0100 1.3 @@ -327,14 +327,14 @@ 1.4 return result; 1.5 } 1.6 1.7 -unsigned int java_lang_String::to_hash(oop java_string) { 1.8 +unsigned int java_lang_String::hash_code(oop java_string) { 1.9 int length = java_lang_String::length(java_string); 1.10 - // Zero length string will hash to zero with String.toHash() function. 1.11 + // Zero length string will hash to zero with String.hashCode() function. 1.12 if (length == 0) return 0; 1.13 1.14 typeArrayOop value = java_lang_String::value(java_string); 1.15 int offset = java_lang_String::offset(java_string); 1.16 - return java_lang_String::to_hash(value->char_at_addr(offset), length); 1.17 + return java_lang_String::hash_code(value->char_at_addr(offset), length); 1.18 } 1.19 1.20 char* java_lang_String::as_quoted_ascii(oop java_string) {
2.1 --- a/src/share/vm/classfile/javaClasses.hpp Fri Dec 07 16:08:05 2012 -0800 2.2 +++ b/src/share/vm/classfile/javaClasses.hpp Thu Dec 13 10:09:49 2012 +0100 2.3 @@ -166,8 +166,8 @@ 2.4 // objects in the shared archive file. 2.5 // hash P(31) from Kernighan & Ritchie 2.6 // 2.7 - // For this reason, THIS ALGORITHM MUST MATCH String.toHash(). 2.8 - template <typename T> static unsigned int to_hash(T* s, int len) { 2.9 + // For this reason, THIS ALGORITHM MUST MATCH String.hashCode(). 2.10 + template <typename T> static unsigned int hash_code(T* s, int len) { 2.11 unsigned int h = 0; 2.12 while (len-- > 0) { 2.13 h = 31*h + (unsigned int) *s; 2.14 @@ -175,10 +175,10 @@ 2.15 } 2.16 return h; 2.17 } 2.18 - static unsigned int to_hash(oop java_string); 2.19 + static unsigned int hash_code(oop java_string); 2.20 2.21 // This is the string hash code used by the StringTable, which may be 2.22 - // the same as String.toHash or an alternate hash code. 2.23 + // the same as String.hashCode or an alternate hash code. 2.24 static unsigned int hash_string(oop java_string); 2.25 2.26 static bool equals(oop java_string, jchar* chars, int len);
3.1 --- a/src/share/vm/classfile/symbolTable.cpp Fri Dec 07 16:08:05 2012 -0800 3.2 +++ b/src/share/vm/classfile/symbolTable.cpp Thu Dec 13 10:09:49 2012 +0100 3.3 @@ -179,7 +179,7 @@ 3.4 unsigned int SymbolTable::hash_symbol(const char* s, int len) { 3.5 return use_alternate_hashcode() ? 3.6 AltHashing::murmur3_32(seed(), (const jbyte*)s, len) : 3.7 - java_lang_String::to_hash(s, len); 3.8 + java_lang_String::hash_code(s, len); 3.9 } 3.10 3.11 3.12 @@ -617,7 +617,7 @@ 3.13 // Pick hashing algorithm 3.14 unsigned int StringTable::hash_string(const jchar* s, int len) { 3.15 return use_alternate_hashcode() ? AltHashing::murmur3_32(seed(), s, len) : 3.16 - java_lang_String::to_hash(s, len); 3.17 + java_lang_String::hash_code(s, len); 3.18 } 3.19 3.20 oop StringTable::lookup(int index, jchar* name,