< prev index next >
src/share/vm/compiler/disassembler.cpp
Print this page
rev 9019 : [mq]: format.patch
@@ -54,12 +54,10 @@
#endif
#ifdef SHARK
#include "shark/sharkEntry.hpp"
#endif
-PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
-
void* Disassembler::_library = NULL;
bool Disassembler::_tried_to_load_library = false;
// This routine is in the shared library:
Disassembler::decode_func_virtual Disassembler::_decode_instructions_virtual = NULL;
@@ -328,34 +326,37 @@
}
if (Universe::is_fully_initialized()) {
if (StubRoutines::contains(adr)) {
StubCodeDesc* desc = StubCodeDesc::desc_for(adr);
- if (desc == NULL)
+ if (desc == NULL) {
desc = StubCodeDesc::desc_for(adr + frame::pc_return_offset);
+ }
if (desc != NULL) {
st->print("Stub::%s", desc->name());
- if (desc->begin() != adr)
- st->print("%+d 0x%p",adr - desc->begin(), adr);
- else if (WizardMode) st->print(" " PTR_FORMAT, adr);
+ if (desc->begin() != adr) {
+ st->print("%+d " PTR_FORMAT, (int)(adr - desc->begin()), p2i(adr));
+ } else if (WizardMode) {
+ st->print(" " PTR_FORMAT, p2i(adr));
+ }
return;
}
- st->print("Stub::<unknown> " PTR_FORMAT, adr);
+ st->print("Stub::<unknown> " PTR_FORMAT, p2i(adr));
return;
}
BarrierSet* bs = Universe::heap()->barrier_set();
if (bs->is_a(BarrierSet::CardTableModRef) &&
adr == (address)(barrier_set_cast<CardTableModRefBS>(bs)->byte_map_base)) {
st->print("word_map_base");
- if (WizardMode) st->print(" " INTPTR_FORMAT, (intptr_t)adr);
+ if (WizardMode) st->print(" " INTPTR_FORMAT, p2i(adr));
return;
}
}
// Fall through to a simple (hexadecimal) numeral.
- st->print(PTR_FORMAT, adr);
+ st->print(PTR_FORMAT, p2i(adr));
}
void decode_env::print_insn_labels() {
address p = cur_insn();
outputStream* st = output();
@@ -363,11 +364,11 @@
if (cb != NULL) {
cb->print_block_comment(st, p);
}
_strings.print_block_comment(st, (intptr_t)(p - _start));
if (_print_pc) {
- st->print(" " PTR_FORMAT ": ", p);
+ st->print(" " PTR_FORMAT ": ", p2i(p));
}
}
void decode_env::print_insn_bytes(address pc, address pc_limit) {
outputStream* st = output();
@@ -384,17 +385,20 @@
st->move_to(COMMENT_COLUMN);
address pc0 = pc;
address pc1 = pc + perline;
if (pc1 > pc_limit) pc1 = pc_limit;
for (; pc < pc1; pc += incr) {
- if (pc == pc0)
+ if (pc == pc0) {
st->print(BYTES_COMMENT);
- else if ((uint)(pc - pc0) % sizeof(int) == 0)
+ } else if ((uint)(pc - pc0) % sizeof(int) == 0) {
st->print(" "); // put out a space on word boundaries
- if (incr == sizeof(int))
- st->print("%08lx", *(int*)pc);
- else st->print("%02x", (*pc)&0xFF);
+ }
+ if (incr == sizeof(int)) {
+ st->print("%08x", *(int*)pc);
+ } else {
+ st->print("%02x", (*pc)&0xFF);
+ }
}
st->cr();
}
}
@@ -486,11 +490,11 @@
void Disassembler::decode(CodeBlob* cb, outputStream* st) {
if (!load_library()) return;
decode_env env(cb, st);
- env.output()->print_cr("Decoding CodeBlob " PTR_FORMAT, cb);
+ env.output()->print_cr("Decoding CodeBlob " PTR_FORMAT, p2i(cb));
env.decode_instructions(cb->code_begin(), cb->code_end());
}
void Disassembler::decode(address start, address end, outputStream* st, CodeStrings c) {
if (!load_library()) return;
@@ -499,11 +503,11 @@
}
void Disassembler::decode(nmethod* nm, outputStream* st) {
if (!load_library()) return;
decode_env env(nm, st);
- env.output()->print_cr("Decoding compiled method " PTR_FORMAT ":", nm);
+ env.output()->print_cr("Decoding compiled method " PTR_FORMAT ":", p2i(nm));
env.output()->print_cr("Code:");
#ifdef SHARK
SharkEntry* entry = (SharkEntry *) nm->code_begin();
unsigned char* p = entry->code_start();
@@ -531,13 +535,13 @@
if (nm->consts_size() > 0) {
nm->print_nmethod_labels(env.output(), nm->consts_begin());
int offset = 0;
for (address p = nm->consts_begin(); p < nm->consts_end(); p += 4, offset += 4) {
if ((offset % 8) == 0) {
- env.output()->print_cr(" " PTR_FORMAT " (offset: %4d): " PTR32_FORMAT " " PTR64_FORMAT, p, offset, *((int32_t*) p), *((int64_t*) p));
+ env.output()->print_cr(" " PTR_FORMAT " (offset: %4d): " PTR32_FORMAT " " PTR64_FORMAT, p2i(p), offset, *((int32_t*) p), *((int64_t*) p));
} else {
- env.output()->print_cr(" " PTR_FORMAT " (offset: %4d): " PTR32_FORMAT, p, offset, *((int32_t*) p));
+ env.output()->print_cr(" " PTR_FORMAT " (offset: %4d): " PTR32_FORMAT, p2i(p), offset, *((int32_t*) p));
}
}
}
env.decode_instructions(p, end);
< prev index next >