Mercurial > hg > shenandoah-preopenjdk-archive > openjdk8 > hotspot
changeset 7430:3f43402ff54d
Fix assert in barrier for cancelled evacuation.
author | Roman Kennke <rkennke@redhat.com> |
---|---|
date | Fri, 05 Dec 2014 11:48:51 +0100 |
parents | c7e95b9e0104 |
children | 8f8b7b789c9e |
files | src/share/vm/gc_implementation/shenandoah/shenandoahBarrierSet.cpp |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/shenandoah/shenandoahBarrierSet.cpp Thu Dec 04 23:03:22 2014 +0100 +++ b/src/share/vm/gc_implementation/shenandoah/shenandoahBarrierSet.cpp Fri Dec 05 11:48:51 2014 +0100 @@ -158,7 +158,8 @@ #ifdef ASSERT ShenandoahHeap *sh = (ShenandoahHeap*) Universe::heap(); if (sh->is_in(dst) && - sh->heap_region_containing((HeapWord*) dst)->is_in_collection_set()){ + sh->heap_region_containing((HeapWord*) dst)->is_in_collection_set() && + ! sh->cancelled_evacuation()) { tty->print("dst = %p\n", dst); sh->heap_region_containing((HeapWord*) dst)->print(); assert(false, "We should have fixed this earlier"); @@ -196,7 +197,8 @@ #ifdef ASSERT ShenandoahHeap *sh = (ShenandoahHeap*) Universe::heap(); if (sh->is_in(field) && - sh->heap_region_containing((HeapWord*)field)->is_in_collection_set()){ + sh->heap_region_containing((HeapWord*)field)->is_in_collection_set() && + ! sh->cancelled_evacuation()) { tty->print("field = %p\n", field); sh->heap_region_containing((HeapWord*)field)->print(); assert(false, "We should have fixed this earlier");