8071374: -XX:+PrintAssembly -XX:+PrintSignatureHandlers crash fastdebug VM with assert(limit == __null || limit <= nm->code_end()) in RelocIterator::initialize

Reviewed-by: kvn, iklam, shade
This commit is contained in:
Vladimir Ivanov 2015-12-18 20:23:26 +03:00
parent f642bbcecd
commit a82be01120
13 changed files with 33 additions and 30 deletions

View file

@ -480,12 +480,13 @@ extern "C" void nm(intptr_t p) {
extern "C" void disnm(intptr_t p) {
Command c("disnm");
CodeBlob* cb = CodeCache::find_blob((address) p);
nmethod* nm = cb->as_nmethod_or_null();
if (nm) {
nm->print();
Disassembler::decode(nm);
} else {
cb->print();
if (cb != NULL) {
nmethod* nm = cb->as_nmethod_or_null();
if (nm != NULL) {
nm->print();
} else {
cb->print();
}
Disassembler::decode(cb);
}
}