equal
deleted
inserted
replaced
314 shenandoah_assert_correct(NULL, result); |
314 shenandoah_assert_correct(NULL, result); |
315 return result; |
315 return result; |
316 } |
316 } |
317 } |
317 } |
318 |
318 |
|
319 template<bool RESOLVE> |
319 inline bool ShenandoahHeap::requires_marking(const void* entry) const { |
320 inline bool ShenandoahHeap::requires_marking(const void* entry) const { |
320 return !_marking_context->is_marked(oop(entry)); |
321 oop obj = oop(entry); |
|
322 if (RESOLVE) { |
|
323 obj = ShenandoahBarrierSet::resolve_forwarded_not_null(obj); |
|
324 } |
|
325 return !_marking_context->is_marked(obj); |
321 } |
326 } |
322 |
327 |
323 template <class T> |
328 template <class T> |
324 inline bool ShenandoahHeap::in_collection_set(T p) const { |
329 inline bool ShenandoahHeap::in_collection_set(T p) const { |
325 HeapWord* obj = (HeapWord*) p; |
330 HeapWord* obj = (HeapWord*) p; |