mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-25 22:04:51 +02:00
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:
parent
efd80ec6af
commit
49282c3927
3 changed files with 0 additions and 31 deletions
|
@ -2310,17 +2310,6 @@ void nmethod::preserve_callee_argument_oops(frame fr, const RegisterMap *reg_map
|
||||||
#endif // !SHARK
|
#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) {
|
inline bool includes(void* p, void* from, void* to) {
|
||||||
return from <= p && p < to;
|
return from <= p && p < to;
|
||||||
}
|
}
|
||||||
|
|
|
@ -730,11 +730,6 @@ public:
|
||||||
int compile_id() const { return _compile_id; }
|
int compile_id() const { return _compile_id; }
|
||||||
const char* compile_kind() const;
|
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
|
// tells if any of this method's dependencies have been invalidated
|
||||||
// (this is expensive!)
|
// (this is expensive!)
|
||||||
static void check_all_dependencies(DepChange& changes);
|
static void check_all_dependencies(DepChange& changes);
|
||||||
|
|
|
@ -345,21 +345,6 @@ void decode_env::print_address(address adr) {
|
||||||
if (WizardMode) st->print(" " INTPTR_FORMAT, (intptr_t)adr);
|
if (WizardMode) st->print(" " INTPTR_FORMAT, (intptr_t)adr);
|
||||||
return;
|
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.
|
// Fall through to a simple (hexadecimal) numeral.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue