src/share/vm/interpreter/bytecodeTracer.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File valhalla-experimental Sdiff src/share/vm/interpreter

src/share/vm/interpreter/bytecodeTracer.cpp

Print this page




 560     case Bytecodes::_invokestatic:
 561       print_field_or_method(get_index_u2_cpcache(), st);
 562       break;
 563 
 564     case Bytecodes::_invokeinterface:
 565       { int i = get_index_u2_cpcache();
 566         int n = get_index_u1();
 567         get_byte();            // ignore zero byte
 568         print_field_or_method(i, st);
 569       }
 570       break;
 571 
 572     case Bytecodes::_invokedynamic:
 573       print_field_or_method(get_index_u4(), st);
 574       break;
 575 
 576     case Bytecodes::_new:
 577     case Bytecodes::_checkcast:
 578     case Bytecodes::_instanceof:
 579     case Bytecodes::_vbox:

 580       { int i = get_index_u2();
 581         ConstantPool* constants = method()->constants();
 582         Symbol* name = constants->klass_name_at(i);
 583         st->print_cr(" %d <%s>", i, name->as_C_string());
 584       }
 585       break;
 586     case Bytecodes::_vnew:
 587     case Bytecodes::_vunbox:
 588       { int i = get_index_u2();
 589         ConstantPool* constants = method()->constants();
 590         int class_index = constants->uncached_klass_ref_index_at(i);
 591         Symbol* classname = constants->klass_name_at(class_index);
 592         Symbol* method_name = constants->uncached_name_ref_at(i);
 593         Symbol* method_signature = constants->uncached_signature_ref_at(i);
 594         st->print_cr(" %d <%s.%s%s>", i, classname->as_C_string(),
 595             method_name->as_C_string(), method_signature->as_C_string());
 596       }
 597     break;
 598 
 599     case Bytecodes::_wide:
 600       // length is zero not one, but printed with no more info.
 601       break;
 602 
 603     default:
 604       ShouldNotReachHere();
 605       break;
 606   }
 607 }


 560     case Bytecodes::_invokestatic:
 561       print_field_or_method(get_index_u2_cpcache(), st);
 562       break;
 563 
 564     case Bytecodes::_invokeinterface:
 565       { int i = get_index_u2_cpcache();
 566         int n = get_index_u1();
 567         get_byte();            // ignore zero byte
 568         print_field_or_method(i, st);
 569       }
 570       break;
 571 
 572     case Bytecodes::_invokedynamic:
 573       print_field_or_method(get_index_u4(), st);
 574       break;
 575 
 576     case Bytecodes::_new:
 577     case Bytecodes::_checkcast:
 578     case Bytecodes::_instanceof:
 579     case Bytecodes::_vbox:
 580     case Bytecodes::_vunbox:
 581       { int i = get_index_u2();
 582         ConstantPool* constants = method()->constants();
 583         Symbol* name = constants->klass_name_at(i);
 584         st->print_cr(" %d <%s>", i, name->as_C_string());
 585       }
 586       break;
 587     case Bytecodes::_vnew:

 588       { int i = get_index_u2();
 589         ConstantPool* constants = method()->constants();
 590         int class_index = constants->uncached_klass_ref_index_at(i);
 591         Symbol* classname = constants->klass_name_at(class_index);
 592         Symbol* method_name = constants->uncached_name_ref_at(i);
 593         Symbol* method_signature = constants->uncached_signature_ref_at(i);
 594         st->print_cr(" %d <%s.%s%s>", i, classname->as_C_string(),
 595             method_name->as_C_string(), method_signature->as_C_string());
 596       }
 597     break;
 598 
 599     case Bytecodes::_wide:
 600       // length is zero not one, but printed with no more info.
 601       break;
 602 
 603     default:
 604       ShouldNotReachHere();
 605       break;
 606   }
 607 }
src/share/vm/interpreter/bytecodeTracer.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File