Mercurial > hg > graal-compiler
comparison src/share/vm/opto/compile.cpp @ 8694:8651f608fea4
8009460: C2compiler crash in machnode::in_regmask(unsigned int)
Summary: 7121140 may not correctly break the Allocate -> MemBarStoreStore link
Reviewed-by: kvn
author | roland |
---|---|
date | Wed, 06 Mar 2013 10:28:38 +0100 |
parents | 571076d3c79d |
children | b7c2c5b2572c |
comparison
equal
deleted
inserted
replaced
8693:872b3feace55 | 8694:8651f608fea4 |
---|---|
2897 if (in2->outcnt() == 0) { // Remove dead node | 2897 if (in2->outcnt() == 0) { // Remove dead node |
2898 in2->disconnect_inputs(NULL, this); | 2898 in2->disconnect_inputs(NULL, this); |
2899 } | 2899 } |
2900 } | 2900 } |
2901 break; | 2901 break; |
2902 case Op_MemBarStoreStore: | |
2903 // Break the link with AllocateNode: it is no longer useful and | |
2904 // confuses register allocation. | |
2905 if (n->req() > MemBarNode::Precedent) { | |
2906 n->set_req(MemBarNode::Precedent, top()); | |
2907 } | |
2908 break; | |
2902 default: | 2909 default: |
2903 assert( !n->is_Call(), "" ); | 2910 assert( !n->is_Call(), "" ); |
2904 assert( !n->is_Mem(), "" ); | 2911 assert( !n->is_Mem(), "" ); |
2905 break; | 2912 break; |
2906 } | 2913 } |