src/share/vm/opto/cfgnode.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
6934604 Cdiff src/share/vm/opto/cfgnode.cpp
src/share/vm/opto/cfgnode.cpp
Print this page
*** 804,814 ****
nphi = node_map[ophi->_idx]->as_Phi();
for (; i < ophi->req(); i++) {
Node *in = ophi->in(i);
if (in == NULL || igvn->type(in) == Type::TOP)
continue;
! Node *opt = MemNode::optimize_simple_memory_chain(in, at, igvn);
PhiNode *optphi = opt->is_Phi() ? opt->as_Phi() : NULL;
if (optphi != NULL && optphi->adr_type() == TypePtr::BOTTOM) {
opt = node_map[optphi->_idx];
if (opt == NULL) {
stack.push(ophi, i);
--- 804,814 ----
nphi = node_map[ophi->_idx]->as_Phi();
for (; i < ophi->req(); i++) {
Node *in = ophi->in(i);
if (in == NULL || igvn->type(in) == Type::TOP)
continue;
! Node *opt = MemNode::optimize_simple_memory_chain(in, t_oop, NULL, igvn);
PhiNode *optphi = opt->is_Phi() ? opt->as_Phi() : NULL;
if (optphi != NULL && optphi->adr_type() == TypePtr::BOTTOM) {
opt = node_map[optphi->_idx];
if (opt == NULL) {
stack.push(ophi, i);
*** 1919,1929 ****
// Other optimizations on the memory chain
//
const TypePtr* at = adr_type();
for( uint i=1; i<req(); ++i ) {// For all paths in
Node *ii = in(i);
! Node *new_in = MemNode::optimize_memory_chain(ii, at, phase);
if (ii != new_in ) {
set_req(i, new_in);
progress = this;
}
}
--- 1919,1929 ----
// Other optimizations on the memory chain
//
const TypePtr* at = adr_type();
for( uint i=1; i<req(); ++i ) {// For all paths in
Node *ii = in(i);
! Node *new_in = MemNode::optimize_memory_chain(ii, at, NULL, phase);
if (ii != new_in ) {
set_req(i, new_in);
progress = this;
}
}
src/share/vm/opto/cfgnode.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File