--- a/src/hotspot/share/oops/objArrayKlass.cpp Tue Apr 03 10:27:46 2018 +0200
+++ b/src/hotspot/share/oops/objArrayKlass.cpp Tue Apr 03 13:15:27 2018 +0200
@@ -220,7 +220,7 @@
// Either oop or narrowOop depending on UseCompressedOops.
template <class T> void ObjArrayKlass::do_copy(arrayOop s, T* src,
arrayOop d, T* dst, int length, TRAPS) {
- if (s == d) {
+ if (oopDesc::equals(s, d)) {
// since source and destination are equal we do not need conversion checks.
assert(length > 0, "sanity check");
HeapAccess<>::oop_arraycopy(s, d, src, dst, length);