8071654: disassembler handles embedded OOPs not uniformly

Remove (currently dead) code that prints oops within disassembled instructions.

Reviewed-by: kvn, thartmann, roland
This commit is contained in:
Zoltan Majo 2015-01-29 19:16:47 +01:00
parent efd80ec6af
commit 49282c3927
3 changed files with 0 additions and 31 deletions

View File

@ -2310,17 +2310,6 @@ void nmethod::preserve_callee_argument_oops(frame fr, const RegisterMap *reg_map
#endif // !SHARK
}
oop nmethod::embeddedOop_at(u_char* p) {
RelocIterator iter(this, p, p + 1);
while (iter.next())
if (iter.type() == relocInfo::oop_type) {
return iter.oop_reloc()->oop_value();
}
return NULL;
}
inline bool includes(void* p, void* from, void* to) {
return from <= p && p < to;
}

View File

@ -730,11 +730,6 @@ public:
int compile_id() const { return _compile_id; }
const char* compile_kind() const;
// For debugging
// CompiledIC* IC_at(char* p) const;
// PrimitiveIC* primitiveIC_at(char* p) const;
oop embeddedOop_at(address p);
// tells if any of this method's dependencies have been invalidated
// (this is expensive!)
static void check_all_dependencies(DepChange& changes);

View File

@ -345,21 +345,6 @@ void decode_env::print_address(address adr) {
if (WizardMode) st->print(" " INTPTR_FORMAT, (intptr_t)adr);
return;
}
oop obj;
if (_nm != NULL
&& (obj = _nm->embeddedOop_at(cur_insn())) != NULL
&& (address) obj == adr
&& Universe::heap()->is_in(obj)
&& Universe::heap()->is_in(obj->klass())) {
julong c = st->count();
obj->print_value_on(st);
if (st->count() == c) {
// No output. (Can happen in product builds.)
st->print("(a %s)", obj->klass()->external_name());
}
return;
}
}
// Fall through to a simple (hexadecimal) numeral.