< prev index next >
src/share/vm/opto/node.cpp
Print this page
*** 1115,1126 ****
Node* n = unique_out();
int op = Opcode();
if (this->is_Store()) {
// Condition for back-to-back stores folding.
return n->Opcode() == op && n->in(MemNode::Memory) == this;
! } else if (this->is_Load()) {
! // Condition for removing an unused LoadNode from the MemBarAcquire precedence input
return n->Opcode() == Op_MemBarAcquire;
} else if (op == Op_AddL) {
// Condition for convL2I(addL(x,y)) ==> addI(convL2I(x),convL2I(y))
return n->Opcode() == Op_ConvL2I && n->in(1) == this;
} else if (op == Op_SubI || op == Op_SubL) {
--- 1115,1126 ----
Node* n = unique_out();
int op = Opcode();
if (this->is_Store()) {
// Condition for back-to-back stores folding.
return n->Opcode() == op && n->in(MemNode::Memory) == this;
! } else if (this->is_Load() || this->is_DecodeN()) {
! // Condition for removing an unused LoadNode or DecodeNNode from the MemBarAcquire precedence input
return n->Opcode() == Op_MemBarAcquire;
} else if (op == Op_AddL) {
// Condition for convL2I(addL(x,y)) ==> addI(convL2I(x),convL2I(y))
return n->Opcode() == Op_ConvL2I && n->in(1) == this;
} else if (op == Op_SubI || op == Op_SubL) {
< prev index next >