1.1 --- a/src/share/vm/classfile/dictionary.cpp Mon May 10 14:58:38 2010 -0700 1.2 +++ b/src/share/vm/classfile/dictionary.cpp Tue May 11 15:19:19 2010 -0700 1.3 @@ -561,10 +561,11 @@ 1.4 1.5 1.6 SymbolPropertyEntry* SymbolPropertyTable::find_entry(int index, unsigned int hash, 1.7 - symbolHandle sym) { 1.8 - assert(index == index_for(sym), "incorrect index?"); 1.9 + symbolHandle sym, 1.10 + intptr_t sym_mode) { 1.11 + assert(index == index_for(sym, sym_mode), "incorrect index?"); 1.12 for (SymbolPropertyEntry* p = bucket(index); p != NULL; p = p->next()) { 1.13 - if (p->hash() == hash && p->symbol() == sym()) { 1.14 + if (p->hash() == hash && p->symbol() == sym() && p->symbol_mode() == sym_mode) { 1.15 return p; 1.16 } 1.17 } 1.18 @@ -573,12 +574,12 @@ 1.19 1.20 1.21 SymbolPropertyEntry* SymbolPropertyTable::add_entry(int index, unsigned int hash, 1.22 - symbolHandle sym) { 1.23 + symbolHandle sym, intptr_t sym_mode) { 1.24 assert_locked_or_safepoint(SystemDictionary_lock); 1.25 - assert(index == index_for(sym), "incorrect index?"); 1.26 - assert(find_entry(index, hash, sym) == NULL, "no double entry"); 1.27 + assert(index == index_for(sym, sym_mode), "incorrect index?"); 1.28 + assert(find_entry(index, hash, sym, sym_mode) == NULL, "no double entry"); 1.29 1.30 - SymbolPropertyEntry* p = new_entry(hash, sym()); 1.31 + SymbolPropertyEntry* p = new_entry(hash, sym(), sym_mode); 1.32 Hashtable::add_entry(index, p); 1.33 return p; 1.34 }