1.1 --- a/src/share/vm/opto/escape.cpp Thu Mar 06 10:30:17 2008 -0800 1.2 +++ b/src/share/vm/opto/escape.cpp Thu Mar 06 10:53:33 2008 -0800 1.3 @@ -601,6 +601,11 @@ 1.4 if (es != PointsToNode::NoEscape || !ptn._unique_type) { 1.5 continue; // can't make a unique type 1.6 } 1.7 + if (alloc->is_Allocate()) { 1.8 + // Set the scalar_replaceable flag before the next check. 1.9 + alloc->as_Allocate()->_is_scalar_replaceable = true; 1.10 + } 1.11 + 1.12 set_map(alloc->_idx, n); 1.13 set_map(n->_idx, alloc); 1.14 const TypeInstPtr *t = igvn->type(n)->isa_instptr();