Mercurial > hg > graal-compiler
changeset 1212:c028504fdaa6
6921992: failure in verify scheduling after 6792161
Reviewed-by: kvn
author | never |
---|---|
date | Thu, 04 Feb 2010 11:16:23 -0800 |
parents | c1f1137b3575 |
children | 7f8790caccb0 3f5b7efb9642 |
files | src/share/vm/opto/ifg.cpp |
diffstat | 1 files changed, 1 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/opto/ifg.cpp Thu Feb 04 03:34:05 2010 -0800 +++ b/src/share/vm/opto/ifg.cpp Thu Feb 04 11:16:23 2010 -0800 @@ -736,28 +736,7 @@ // the flags and assumes it's dead. This keeps the (useless) // flag-setting behavior alive while also keeping the (useful) // memory update effect. - uint begin = 1; - uint end = n->req(); - if (n->Opcode() == Op_SCMemProj) { - begin = 0; - } else if (n->is_Mach()) { - switch (n->as_Mach()->ideal_Opcode()) { - case Op_MemBarAcquire: - case Op_MemBarVolatile: - if (n->len() >= MemBarNode::Precedent + 1 && - n->in(MemBarNode::Precedent) != NULL && - n->in(MemBarNode::Precedent)->outcnt() == 1) { - // This membar node is the single user of it's input - // so the input won't be considered live and this node - // would get deleted during copy elimination so force - // it to be live. - end = MemBarNode::Precedent + 1; - } - break; - } - } - - for( uint k = begin; k < end; k++ ) { + for( uint k = ((n->Opcode() == Op_SCMemProj) ? 0:1); k < n->req(); k++ ) { Node *def = n->in(k); uint x = n2lidx(def); if( !x ) continue;