< prev index next >

src/hotspot/share/classfile/vmSymbols.cpp

Print this page

        

*** 97,113 **** _type_signatures[T_INT] = int_signature(); _type_signatures[T_LONG] = long_signature(); _type_signatures[T_SHORT] = short_signature(); _type_signatures[T_BOOLEAN] = bool_signature(); _type_signatures[T_VOID] = void_signature(); - // no single signatures for T_OBJECT or T_ARRAY #ifdef ASSERT for (int i = (int)T_BOOLEAN; i < (int)T_VOID+1; i++) { Symbol* s = _type_signatures[i]; if (s == NULL) continue; ! BasicType st = signature_type(s); ! assert(st == i, ""); } #endif } #ifdef ASSERT --- 97,113 ---- _type_signatures[T_INT] = int_signature(); _type_signatures[T_LONG] = long_signature(); _type_signatures[T_SHORT] = short_signature(); _type_signatures[T_BOOLEAN] = bool_signature(); _type_signatures[T_VOID] = void_signature(); #ifdef ASSERT for (int i = (int)T_BOOLEAN; i < (int)T_VOID+1; i++) { Symbol* s = _type_signatures[i]; if (s == NULL) continue; ! SignatureStream ss(s, false); ! assert(ss.type() == i, "matching signature"); ! assert(!ss.is_reference(), "no single-char signature for T_OBJECT, etc."); } #endif } #ifdef ASSERT
*** 207,230 **** soc->do_region((u_char*)&_symbols[FIRST_SID], (SID_LIMIT - FIRST_SID) * sizeof(_symbols[0])); soc->do_region((u_char*)_type_signatures, sizeof(_type_signatures)); } - - BasicType vmSymbols::signature_type(const Symbol* s) { - assert(s != NULL, "checking"); - if (s->utf8_length() == 1) { - BasicType result = char2type(s->char_at(0)); - if (is_java_primitive(result) || result == T_VOID) { - assert(s == _type_signatures[result], ""); - return result; - } - } - return T_OBJECT; - } - - static int mid_hint = (int)vmSymbols::FIRST_SID+1; #ifndef PRODUCT static int find_sid_calls, find_sid_probes; // (Typical counts are calls=7000 and probes=17000.) --- 207,216 ----
< prev index next >