comparison src/share/vm/opto/cfgnode.cpp @ 10278:6f3fd5150b67

6934604: enable parts of EliminateAutoBox by default Summary: Resurrected autobox elimination code and enabled part of it by default. Reviewed-by: roland, twisti
author kvn
date Wed, 08 May 2013 15:08:01 -0700
parents 886d1fd67dc3
children 7944aba7ba41
comparison
equal deleted inserted replaced
10277:aabf54ccedb1 10278:6f3fd5150b67
804 nphi = node_map[ophi->_idx]->as_Phi(); 804 nphi = node_map[ophi->_idx]->as_Phi();
805 for (; i < ophi->req(); i++) { 805 for (; i < ophi->req(); i++) {
806 Node *in = ophi->in(i); 806 Node *in = ophi->in(i);
807 if (in == NULL || igvn->type(in) == Type::TOP) 807 if (in == NULL || igvn->type(in) == Type::TOP)
808 continue; 808 continue;
809 Node *opt = MemNode::optimize_simple_memory_chain(in, at, igvn); 809 Node *opt = MemNode::optimize_simple_memory_chain(in, t_oop, NULL, igvn);
810 PhiNode *optphi = opt->is_Phi() ? opt->as_Phi() : NULL; 810 PhiNode *optphi = opt->is_Phi() ? opt->as_Phi() : NULL;
811 if (optphi != NULL && optphi->adr_type() == TypePtr::BOTTOM) { 811 if (optphi != NULL && optphi->adr_type() == TypePtr::BOTTOM) {
812 opt = node_map[optphi->_idx]; 812 opt = node_map[optphi->_idx];
813 if (opt == NULL) { 813 if (opt == NULL) {
814 stack.push(ophi, i); 814 stack.push(ophi, i);
1919 // Other optimizations on the memory chain 1919 // Other optimizations on the memory chain
1920 // 1920 //
1921 const TypePtr* at = adr_type(); 1921 const TypePtr* at = adr_type();
1922 for( uint i=1; i<req(); ++i ) {// For all paths in 1922 for( uint i=1; i<req(); ++i ) {// For all paths in
1923 Node *ii = in(i); 1923 Node *ii = in(i);
1924 Node *new_in = MemNode::optimize_memory_chain(ii, at, phase); 1924 Node *new_in = MemNode::optimize_memory_chain(ii, at, NULL, phase);
1925 if (ii != new_in ) { 1925 if (ii != new_in ) {
1926 set_req(i, new_in); 1926 set_req(i, new_in);
1927 progress = this; 1927 progress = this;
1928 } 1928 }
1929 } 1929 }