Thu, 04 Feb 2010 11:16:23 -0800
6921992: failure in verify scheduling after 6792161
Reviewed-by: kvn
src/share/vm/opto/ifg.cpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/share/vm/opto/ifg.cpp Thu Feb 04 03:34:05 2010 -0800 1.2 +++ b/src/share/vm/opto/ifg.cpp Thu Feb 04 11:16:23 2010 -0800 1.3 @@ -736,28 +736,7 @@ 1.4 // the flags and assumes it's dead. This keeps the (useless) 1.5 // flag-setting behavior alive while also keeping the (useful) 1.6 // memory update effect. 1.7 - uint begin = 1; 1.8 - uint end = n->req(); 1.9 - if (n->Opcode() == Op_SCMemProj) { 1.10 - begin = 0; 1.11 - } else if (n->is_Mach()) { 1.12 - switch (n->as_Mach()->ideal_Opcode()) { 1.13 - case Op_MemBarAcquire: 1.14 - case Op_MemBarVolatile: 1.15 - if (n->len() >= MemBarNode::Precedent + 1 && 1.16 - n->in(MemBarNode::Precedent) != NULL && 1.17 - n->in(MemBarNode::Precedent)->outcnt() == 1) { 1.18 - // This membar node is the single user of it's input 1.19 - // so the input won't be considered live and this node 1.20 - // would get deleted during copy elimination so force 1.21 - // it to be live. 1.22 - end = MemBarNode::Precedent + 1; 1.23 - } 1.24 - break; 1.25 - } 1.26 - } 1.27 - 1.28 - for( uint k = begin; k < end; k++ ) { 1.29 + for( uint k = ((n->Opcode() == Op_SCMemProj) ? 0:1); k < n->req(); k++ ) { 1.30 Node *def = n->in(k); 1.31 uint x = n2lidx(def); 1.32 if( !x ) continue;