694 failures = true; 695 } 696 tty->print_cr("== card "PTR_FORMAT" ["PTR_FORMAT","PTR_FORMAT"], " 697 "val: %d", curr, addr_for(curr), 698 (HeapWord*) (((size_t) addr_for(curr)) + card_size), 699 (int) curr_val); 700 } 701 } 702 guarantee(!failures, "there should not have been any failures"); 703 } 704 705 void CardTableModRefBS::verify_not_dirty_region(MemRegion mr) { 706 verify_region(mr, dirty_card, false /* val_equals */); 707 } 708 709 void CardTableModRefBS::verify_dirty_region(MemRegion mr) { 710 verify_region(mr, dirty_card, true /* val_equals */); 711 } 712 #endif 713 714 bool CardTableModRefBSForCTRS::card_will_be_scanned(jbyte cv) { 715 return 716 CardTableModRefBS::card_will_be_scanned(cv) || 717 _rs->is_prev_nonclean_card_val(cv); 718 }; 719 720 bool CardTableModRefBSForCTRS::card_may_have_been_dirty(jbyte cv) { 721 return 722 cv != clean_card && 723 (CardTableModRefBS::card_may_have_been_dirty(cv) || 724 CardTableRS::youngergen_may_have_been_dirty(cv)); 725 }; | 694 failures = true; 695 } 696 tty->print_cr("== card "PTR_FORMAT" ["PTR_FORMAT","PTR_FORMAT"], " 697 "val: %d", curr, addr_for(curr), 698 (HeapWord*) (((size_t) addr_for(curr)) + card_size), 699 (int) curr_val); 700 } 701 } 702 guarantee(!failures, "there should not have been any failures"); 703 } 704 705 void CardTableModRefBS::verify_not_dirty_region(MemRegion mr) { 706 verify_region(mr, dirty_card, false /* val_equals */); 707 } 708 709 void CardTableModRefBS::verify_dirty_region(MemRegion mr) { 710 verify_region(mr, dirty_card, true /* val_equals */); 711 } 712 #endif 713 714 void CardTableModRefBS::print_on(outputStream* st) const { 715 st->print_cr("Card table byte_map: " INTPTR_FORMAT "," INTPTR_FORMAT " byte_map_base: " INTPTR_FORMAT, 716 _byte_map, _byte_map + _byte_map_size, byte_map_base); 717 } 718 719 bool CardTableModRefBSForCTRS::card_will_be_scanned(jbyte cv) { 720 return 721 CardTableModRefBS::card_will_be_scanned(cv) || 722 _rs->is_prev_nonclean_card_val(cv); 723 }; 724 725 bool CardTableModRefBSForCTRS::card_may_have_been_dirty(jbyte cv) { 726 return 727 cv != clean_card && 728 (CardTableModRefBS::card_may_have_been_dirty(cv) || 729 CardTableRS::youngergen_may_have_been_dirty(cv)); 730 }; |