--- old/src/share/vm/utilities/debug.cpp 2010-11-18 08:15:18.595216314 -0800 +++ new/src/share/vm/utilities/debug.cpp 2010-11-18 08:15:18.150851804 -0800 @@ -361,8 +361,14 @@ extern "C" void disnm(intptr_t p) { Command c("disnm"); CodeBlob* cb = CodeCache::find_blob((address) p); - cb->print(); - Disassembler::decode(cb); + nmethod* nm = cb->as_nmethod_or_null(); + if (nm) { + nm->print(); + Disassembler::decode(nm); + } else { + cb->print(); + Disassembler::decode(cb); + } }