mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 11:34:38 +02:00
6710487: More than half of JDI Regression tests hang with COOPs in -Xcomp mode
Remove DecodeNNode::decode() and EncodePNode::encode() methods. Reviewed-by: rasbold, never
This commit is contained in:
parent
2d64a7a369
commit
a671e7c7b5
17 changed files with 103 additions and 143 deletions
|
@ -262,19 +262,19 @@ const Node* MachNode::get_base_and_disp(intptr_t &offset, const TypePtr* &adr_ty
|
|||
// Now we have collected every part of the ADLC MEMORY_INTER.
|
||||
// See if it adds up to a base + offset.
|
||||
if (index != NULL) {
|
||||
const TypeNarrowOop* narrowoop = index->bottom_type()->isa_narrowoop();
|
||||
if (narrowoop != NULL) { // EncodeN, LoadN, LoadConN, LoadNKlass.
|
||||
const Type* t_index = index->bottom_type();
|
||||
if (t_index->isa_narrowoop()) { // EncodeN, LoadN, LoadConN, LoadNKlass.
|
||||
// Memory references through narrow oops have a
|
||||
// funny base so grab the type from the index:
|
||||
// [R12 + narrow_oop_reg<<3 + offset]
|
||||
assert(base == NULL, "Memory references through narrow oops have no base");
|
||||
offset = disp;
|
||||
adr_type = narrowoop->make_oopptr()->add_offset(offset);
|
||||
adr_type = t_index->make_ptr()->add_offset(offset);
|
||||
return NULL;
|
||||
} else if (!index->is_Con()) {
|
||||
disp = Type::OffsetBot;
|
||||
} else if (disp != Type::OffsetBot) {
|
||||
const TypeX* ti = index->bottom_type()->isa_intptr_t();
|
||||
const TypeX* ti = t_index->isa_intptr_t();
|
||||
if (ti == NULL) {
|
||||
disp = Type::OffsetBot; // a random constant??
|
||||
} else {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue