src/hotspot/share/opto/macroArrayCopy.cpp
changeset 52424 e3d79743f57d
parent 51984 2ef304ee001d
child 58217 b1a394e15ae9
child 58678 9cf78a70fa4f
--- a/src/hotspot/share/opto/macroArrayCopy.cpp	Tue Nov 06 15:23:52 2018 +0800
+++ b/src/hotspot/share/opto/macroArrayCopy.cpp	Tue Nov 06 10:01:27 2018 +0100
@@ -72,7 +72,6 @@
                                        Node* parm2, Node* parm3,
                                        Node* parm4, Node* parm5,
                                        Node* parm6, Node* parm7) {
-  int size = call_type->domain()->cnt();
   Node* call = new CallLeafNoFPNode(call_type, call_addr, call_name, adr_type);
   call->init_req(TypeFunc::Control, ctrl);
   call->init_req(TypeFunc::I_O    , top());
@@ -1107,7 +1106,9 @@
     Node* call = make_leaf_call(ctrl, mem, call_type, copyfunc_addr, copyfunc_name, raw_adr_type, src, dest, length XTOP);
     transform_later(call);
 
-    _igvn.replace_node(ac, call);
+    BarrierSetC2* bs = BarrierSet::barrier_set()->barrier_set_c2();
+    bs->clone_barrier_at_expansion(ac, call, _igvn);
+
     return;
   } else if (ac->is_copyof() || ac->is_copyofrange() || ac->is_cloneoop()) {
     Node* mem = ac->in(TypeFunc::Memory);