--- old/src/hotspot/share/opto/node.cpp 2019-03-11 14:26:52.402354516 +0100 +++ new/src/hotspot/share/opto/node.cpp 2019-03-11 14:26:52.190354519 +0100 @@ -546,6 +546,9 @@ if (n->is_SafePoint()) { n->as_SafePoint()->clone_replaced_nodes(); } + if (n->is_ValueTypeBase()) { + C->add_value_type(n); + } return n; // Return the clone } @@ -624,6 +627,9 @@ if (Opcode() == Op_Opaque4) { compile->remove_opaque4_node(this); } + if (is_ValueTypeBase()) { + compile->remove_value_type(this); + } if (is_SafePoint()) { as_SafePoint()->delete_replaced_nodes(); @@ -1373,6 +1379,9 @@ if (dead->Opcode() == Op_Opaque4) { igvn->C->remove_opaque4_node(dead); } + if (dead->is_ValueTypeBase()) { + igvn->C->remove_value_type(dead); + } BarrierSetC2* bs = BarrierSet::barrier_set()->barrier_set_c2(); bs->unregister_potential_barrier_node(dead); igvn->C->record_dead_node(dead->_idx);