--- a/src/hotspot/share/gc/shared/modRefBarrierSet.inline.hpp Fri Mar 23 12:55:39 2018 +0100
+++ b/src/hotspot/share/gc/shared/modRefBarrierSet.inline.hpp Thu Mar 15 21:24:10 2018 +0100
@@ -27,6 +27,7 @@
#include "gc/shared/barrierSet.hpp"
#include "gc/shared/modRefBarrierSet.hpp"
+#include "oops/compressedOops.inline.hpp"
#include "oops/klass.inline.hpp"
#include "oops/objArrayOop.hpp"
#include "oops/oop.hpp"
@@ -105,7 +106,7 @@
T* end = from + length;
for (T* p = dst; from < end; from++, p++) {
T element = *from;
- if (bound->is_instanceof_or_null(element)) {
+ if (oopDesc::is_instanceof_or_null(CompressedOops::decode(element), bound)) {
bs->template write_ref_field_pre<decorators>(p);
*p = element;
} else {