hotspot/src/share/vm/compiler/disassembler.cpp
changeset 35542 9dccb7f9f656
parent 33585 3121a0276778
child 35546 b75e269c0922
equal deleted inserted replaced
35541:cba047a086d5 35542:9dccb7f9f656
   495                                           options());
   495                                           options());
   496 }
   496 }
   497 
   497 
   498 
   498 
   499 void Disassembler::decode(CodeBlob* cb, outputStream* st) {
   499 void Disassembler::decode(CodeBlob* cb, outputStream* st) {
       
   500   ttyLocker ttyl;
   500   if (!load_library())  return;
   501   if (!load_library())  return;
   501   if (cb->is_nmethod()) {
   502   if (cb->is_nmethod()) {
   502     decode((nmethod*)cb, st);
   503     decode((nmethod*)cb, st);
   503     return;
   504     return;
   504   }
   505   }
   508   env.output()->print_cr(" at  [" PTR_FORMAT ", " PTR_FORMAT "]  " JLONG_FORMAT " bytes", p2i(cb->code_begin()), p2i(cb->code_end()), ((jlong)(cb->code_end() - cb->code_begin())) * sizeof(unsigned char*));
   509   env.output()->print_cr(" at  [" PTR_FORMAT ", " PTR_FORMAT "]  " JLONG_FORMAT " bytes", p2i(cb->code_begin()), p2i(cb->code_end()), ((jlong)(cb->code_end() - cb->code_begin())) * sizeof(unsigned char*));
   509   env.decode_instructions(cb->code_begin(), cb->code_end());
   510   env.decode_instructions(cb->code_begin(), cb->code_end());
   510 }
   511 }
   511 
   512 
   512 void Disassembler::decode(address start, address end, outputStream* st, CodeStrings c) {
   513 void Disassembler::decode(address start, address end, outputStream* st, CodeStrings c) {
       
   514   ttyLocker ttyl;
   513   if (!load_library())  return;
   515   if (!load_library())  return;
   514   decode_env env(CodeCache::find_blob_unsafe(start), st, c);
   516   decode_env env(CodeCache::find_blob_unsafe(start), st, c);
   515   env.decode_instructions(start, end);
   517   env.decode_instructions(start, end);
   516 }
   518 }
   517 
   519 
   518 void Disassembler::decode(nmethod* nm, outputStream* st) {
   520 void Disassembler::decode(nmethod* nm, outputStream* st) {
       
   521   ttyLocker ttyl;
   519   if (!load_library())  return;
   522   if (!load_library())  return;
   520   decode_env env(nm, st);
   523   decode_env env(nm, st);
   521   env.output()->print_cr("----------------------------------------------------------------------");
   524   env.output()->print_cr("----------------------------------------------------------------------");
   522 
   525 
   523 #ifdef SHARK
   526 #ifdef SHARK