--- old/src/hotspot/share/oops/accessBackend.inline.hpp 2018-03-08 13:22:59.927525916 +0100 +++ new/src/hotspot/share/oops/accessBackend.inline.hpp 2018-03-08 13:22:59.731528379 +0100 @@ -118,7 +118,7 @@ template template inline bool RawAccessBarrier::oop_arraycopy(arrayOop src_obj, arrayOop dst_obj, T* src, T* dst, size_t length) { - return arraycopy(src, dst, length); + return arraycopy(src_obj, dst_obj, src, dst, length); } template @@ -257,7 +257,7 @@ template static inline typename EnableIf< HasDecorator::value>::type - arraycopy(T* src, T* dst, size_t length) { + arraycopy(arrayOop s, arrayOop d, T* src, T* dst, size_t length) { // We do not check for ARRAYCOPY_ATOMIC for oops, because they are unconditionally always atomic. if (HasDecorator::value) { AccessInternal::arraycopy_arrayof_conjoint_oops(src, dst, length); @@ -271,7 +271,7 @@ template static inline typename EnableIf< !HasDecorator::value>::type - arraycopy(T* src, T* dst, size_t length) { + arraycopy(arrayOop s, arrayOop d, T* src, T* dst, size_t length) { if (HasDecorator::value) { AccessInternal::arraycopy_arrayof_conjoint(src, dst, length); } else if (HasDecorator::value && sizeof(T) == HeapWordSize) { @@ -293,8 +293,8 @@ template template -inline bool RawAccessBarrier::arraycopy(T* src, T* dst, size_t length) { - RawAccessBarrierArrayCopy::arraycopy(src, dst, length); +inline bool RawAccessBarrier::arraycopy(arrayOop s, arrayOop d, T* src, T* dst, size_t length) { + RawAccessBarrierArrayCopy::arraycopy(s, d, src, dst, length); return true; }