< prev index next >
src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp
Print this page
rev 53791 : 8203232: Shenandoah: Resolve oops in SATB filter
@@ -314,12 +314,17 @@
shenandoah_assert_correct(NULL, result);
return result;
}
}
+template<bool RESOLVE>
inline bool ShenandoahHeap::requires_marking(const void* entry) const {
- return !_marking_context->is_marked(oop(entry));
+ oop obj = oop(entry);
+ if (RESOLVE) {
+ obj = ShenandoahBarrierSet::resolve_forwarded_not_null(obj);
+ }
+ return !_marking_context->is_marked(obj);
}
template <class T>
inline bool ShenandoahHeap::in_collection_set(T p) const {
HeapWord* obj = (HeapWord*) p;
< prev index next >