mirror of
https://github.com/openjdk/jdk.git
synced 2026-05-21 19:08:31 +00:00
8168996: C2 crash at postaloc.cpp:140 : assert(false) failed: unexpected yanked node
Prevent MemBarAcquire from keeping a LoadNNode alive by adding it to the worklist if it is the only user of a DecodeNNode. Reviewed-by: kvn
This commit is contained in:
parent
7624f76c84
commit
5e29b0af21
@ -1117,8 +1117,8 @@ bool Node::has_special_unique_user() const {
|
||||
if (this->is_Store()) {
|
||||
// Condition for back-to-back stores folding.
|
||||
return n->Opcode() == op && n->in(MemNode::Memory) == this;
|
||||
} else if (this->is_Load()) {
|
||||
// Condition for removing an unused LoadNode from the MemBarAcquire precedence input
|
||||
} else if (this->is_Load() || this->is_DecodeN()) {
|
||||
// Condition for removing an unused LoadNode or DecodeNNode from the MemBarAcquire precedence input
|
||||
return n->Opcode() == Op_MemBarAcquire;
|
||||
} else if (op == Op_AddL) {
|
||||
// Condition for convL2I(addL(x,y)) ==> addI(convL2I(x),convL2I(y))
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user