--- old/src/share/vm/opto/macroArrayCopy.cpp 2015-10-14 13:54:22.629686087 +0200 +++ new/src/share/vm/opto/macroArrayCopy.cpp 2015-10-14 13:54:22.529688506 +0200 @@ -547,7 +547,7 @@ // At this point we know we do not need type checks on oop stores. // Let's see if we need card marks: - if (alloc != NULL && GraphKit::use_ReduceInitialCardMarks()) { + if (alloc != NULL && GraphKit::use_ReduceInitialCardMarks() && ! UseShenandoahGC) { // If we do not need card marks, copy using the jint or jlong stub. copy_type = LP64_ONLY(UseCompressedOops ? T_INT : T_LONG) NOT_LP64(T_INT); assert(type2aelembytes(basic_elem_type) == type2aelembytes(copy_type),