int main(void) { char str[160]; unsigned short touni[256]; unsigned short fromuni[65536]; unsigned short fromstat[256]; int i; bzero((void*)touni,sizeof(touni)); bzero((void*)fromuni,sizeof(fromuni)); bzero((void*)fromstat,sizeof(fromstat)); while (fgets(str,sizeof(str),stdin)) { unsigned int c,u; if ((str[0]=='#') || (2!=sscanf(str,"%x%x",&c,&u))) continue; if (c>0xFF || u>0xFFFF) continue; touni[c]= u; fromuni[u]= c; } printf("unsigned short cs_to_uni[256]="); print_short_array(touni, 4); for (i=0;i<=0xFF;i++) { fromstat[touni[i]>>8]++; } for (i=0;i<=256;i++) { if (fromstat[i]) { printf("unsigned char pl%02X[256]=",i); print_short_array(fromuni+i*256, 2); } } printf("unsigned short *uni_to_cs[256]={\n"); for (i=0;i<=255;i++) { if (fromstat[i]) printf("pl%02X",i); else printf("NULL"); printf("%s%s",i<255?",":"",((i+1) % 8) ? "":"\n"); } printf("};\n"); return 0; }
void typeArrayKlass::oop_print_on(oop obj, outputStream* st) { arrayKlass::oop_print_on(obj, st); typeArrayOop ta = typeArrayOop(obj); int print_len = MIN2((intx) ta->length(), MaxElementPrintSize); switch (element_type()) { case T_BOOLEAN: print_boolean_array(ta, print_len, st); break; case T_CHAR: print_char_array(ta, print_len, st); break; case T_FLOAT: print_float_array(ta, print_len, st); break; case T_DOUBLE: print_double_array(ta, print_len, st); break; case T_BYTE: print_byte_array(ta, print_len, st); break; case T_SHORT: print_short_array(ta, print_len, st); break; case T_INT: print_int_array(ta, print_len, st); break; case T_LONG: print_long_array(ta, print_len, st); break; default: ShouldNotReachHere(); } int remaining = ta->length() - print_len; if (remaining > 0) { tty->print_cr(" - <%d more elements, increase MaxElementPrintSize to print>", remaining); } }