< prev index next >
src/hotspot/share/opto/subnode.cpp
Print this page
*** 981,998 ****
Node* b = in(2);
Node* cmp = phase->C->optimize_acmp(phase, a, b);
if (cmp != NULL) {
return cmp;
}
- if ( TypePtr::NULL_PTR->higher_equal(phase->type(a)) &&
- !TypePtr::NULL_PTR->higher_equal(phase->type(b))) {
- // Operand 'b' is never null, swap operands to avoid null check
- Node* is_value = phase->C->load_is_value_bit(phase, b);
- set_req(1, phase->transform(new AddPNode(b, b, is_value)));
- set_req(2, a);
- return this;
- }
}
// Normalize comparisons between Java mirrors into comparisons of the low-
// level klass, where a dependent load could be shortened.
//
--- 981,990 ----
*** 1101,1111 ****
Node* base = addP->in(AddPNode::Base);
if (base->is_top()) {
// RawPtr comparison
return NULL;
}
! assert(EnableValhalla, "unexpected perturbed oop");
return in(1);
}
return NULL;
}
--- 1093,1103 ----
Node* base = addP->in(AddPNode::Base);
if (base->is_top()) {
// RawPtr comparison
return NULL;
}
! assert(EnableValhalla && UsePointerPerturbation, "unexpected perturbed oop");
return in(1);
}
return NULL;
}
< prev index next >