405 cnt = mdo->overflow_recompile_count(); 406 if (cnt != 0) print(" overflow_recompiles='%d'", cnt); 407 } 408 } 409 410 void xmlStream::method_text(methodHandle method) { 411 ResourceMark rm; 412 assert_if_no_error(inside_attrs(), "printing attributes"); 413 if (method.is_null()) return; 414 text()->print("%s", method->method_holder()->external_name()); 415 print_raw(" "); // " " is easier for tools to parse than "::" 416 method->name()->print_symbol_on(text()); 417 print_raw(" "); // separator 418 method->signature()->print_symbol_on(text()); 419 } 420 421 422 // ------------------------------------------------------------------ 423 // Output a klass attribute, in the form " klass='pkg/cls'". 424 // This is used only when there is no ciKlass available. 425 void xmlStream::klass(KlassHandle klass) { 426 assert_if_no_error(inside_attrs(), "printing attributes"); 427 if (klass.is_null()) return; 428 print_raw(" klass='"); 429 klass_text(klass); 430 print_raw("'"); 431 } 432 433 void xmlStream::klass_text(KlassHandle klass) { 434 assert_if_no_error(inside_attrs(), "printing attributes"); 435 if (klass.is_null()) return; 436 //klass->print_short_name(log->out()); 437 klass->name()->print_symbol_on(out()); 438 } 439 440 void xmlStream::name(const Symbol* name) { 441 assert_if_no_error(inside_attrs(), "printing attributes"); 442 if (name == NULL) return; 443 print_raw(" name='"); 444 name_text(name); 445 print_raw("'"); 446 } 447 448 void xmlStream::name_text(const Symbol* name) { 449 assert_if_no_error(inside_attrs(), "printing attributes"); 450 if (name == NULL) return; 451 //name->print_short_name(text()); 452 name->print_symbol_on(text()); 453 } 454 455 void xmlStream::object(const char* attr, Handle x) { | 405 cnt = mdo->overflow_recompile_count(); 406 if (cnt != 0) print(" overflow_recompiles='%d'", cnt); 407 } 408 } 409 410 void xmlStream::method_text(methodHandle method) { 411 ResourceMark rm; 412 assert_if_no_error(inside_attrs(), "printing attributes"); 413 if (method.is_null()) return; 414 text()->print("%s", method->method_holder()->external_name()); 415 print_raw(" "); // " " is easier for tools to parse than "::" 416 method->name()->print_symbol_on(text()); 417 print_raw(" "); // separator 418 method->signature()->print_symbol_on(text()); 419 } 420 421 422 // ------------------------------------------------------------------ 423 // Output a klass attribute, in the form " klass='pkg/cls'". 424 // This is used only when there is no ciKlass available. 425 void xmlStream::klass(Klass* klass) { 426 assert_if_no_error(inside_attrs(), "printing attributes"); 427 if (klass == NULL) return; 428 print_raw(" klass='"); 429 klass_text(klass); 430 print_raw("'"); 431 } 432 433 void xmlStream::klass_text(Klass* klass) { 434 assert_if_no_error(inside_attrs(), "printing attributes"); 435 if (klass == NULL) return; 436 //klass->print_short_name(log->out()); 437 klass->name()->print_symbol_on(out()); 438 } 439 440 void xmlStream::name(const Symbol* name) { 441 assert_if_no_error(inside_attrs(), "printing attributes"); 442 if (name == NULL) return; 443 print_raw(" name='"); 444 name_text(name); 445 print_raw("'"); 446 } 447 448 void xmlStream::name_text(const Symbol* name) { 449 assert_if_no_error(inside_attrs(), "printing attributes"); 450 if (name == NULL) return; 451 //name->print_short_name(text()); 452 name->print_symbol_on(text()); 453 } 454 455 void xmlStream::object(const char* attr, Handle x) { |