< prev index next >

src/share/vm/gc/g1/heapRegion.cpp

Print this page
rev 11265 : 8142749: HeapRegion::_predicted_bytes_to_copy is unused and can be removed
Reviewed-by: ?
Contributed-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com>

*** 290,301 **** _next(NULL), _prev(NULL), #ifdef ASSERT _containing_set(NULL), #endif // ASSERT _young_index_in_cset(-1), _surv_rate_group(NULL), _age_index(-1), ! _rem_set(NULL), _recorded_rs_length(0), _predicted_elapsed_time_ms(0), ! _predicted_bytes_to_copy(0) { _rem_set = new HeapRegionRemSet(bot, this); initialize(mr); } --- 290,300 ---- _next(NULL), _prev(NULL), #ifdef ASSERT _containing_set(NULL), #endif // ASSERT _young_index_in_cset(-1), _surv_rate_group(NULL), _age_index(-1), ! _rem_set(NULL), _recorded_rs_length(0), _predicted_elapsed_time_ms(0) { _rem_set = new HeapRegionRemSet(bot, this); initialize(mr); }
*** 343,391 **** _next_top_at_mark_start = bottom(); _next_marked_bytes = 0; } } ! void HeapRegion::note_self_forwarding_removal_end(bool during_initial_mark, ! bool during_conc_mark, ! size_t marked_bytes) { assert(marked_bytes <= used(), "marked: " SIZE_FORMAT " used: " SIZE_FORMAT, marked_bytes, used()); _prev_top_at_mark_start = top(); _prev_marked_bytes = marked_bytes; } HeapWord* - HeapRegion::object_iterate_mem_careful(MemRegion mr, - ObjectClosure* cl) { - G1CollectedHeap* g1h = G1CollectedHeap::heap(); - // We used to use "block_start_careful" here. But we're actually happy - // to update the BOT while we do this... - HeapWord* cur = block_start(mr.start()); - mr = mr.intersection(used_region()); - if (mr.is_empty()) return NULL; - // Otherwise, find the obj that extends onto mr.start(). - - assert(cur <= mr.start() - && (oop(cur)->klass_or_null() == NULL || - cur + oop(cur)->size() > mr.start()), - "postcondition of block_start"); - oop obj; - while (cur < mr.end()) { - obj = oop(cur); - if (obj->klass_or_null() == NULL) { - // Ran into an unparseable point. - return cur; - } else if (!g1h->is_obj_dead(obj)) { - cl->do_object(obj); - } - cur += block_size(cur); - } - return NULL; - } - - HeapWord* HeapRegion:: oops_on_card_seq_iterate_careful(MemRegion mr, FilterOutOfRegionClosure* cl, bool filter_young, jbyte* card_ptr) { --- 342,359 ---- _next_top_at_mark_start = bottom(); _next_marked_bytes = 0; } } ! void HeapRegion::note_self_forwarding_removal_end(size_t marked_bytes) { assert(marked_bytes <= used(), "marked: " SIZE_FORMAT " used: " SIZE_FORMAT, marked_bytes, used()); _prev_top_at_mark_start = top(); _prev_marked_bytes = marked_bytes; } HeapWord* HeapRegion:: oops_on_card_seq_iterate_careful(MemRegion mr, FilterOutOfRegionClosure* cl, bool filter_young, jbyte* card_ptr) {
*** 509,519 **** hrrs->strong_code_roots_do(blk); } class VerifyStrongCodeRootOopClosure: public OopClosure { const HeapRegion* _hr; - nmethod* _nm; bool _failures; bool _has_oops_in_region; template <class T> void do_oop_work(T* p) { T heap_oop = oopDesc::load_heap_oop(p); --- 477,486 ----
*** 536,546 **** } } } public: ! VerifyStrongCodeRootOopClosure(const HeapRegion* hr, nmethod* nm): _hr(hr), _failures(false), _has_oops_in_region(false) {} void do_oop(narrowOop* p) { do_oop_work(p); } void do_oop(oop* p) { do_oop_work(p); } --- 503,513 ---- } } } public: ! VerifyStrongCodeRootOopClosure(const HeapRegion* hr): _hr(hr), _failures(false), _has_oops_in_region(false) {} void do_oop(narrowOop* p) { do_oop_work(p); } void do_oop(oop* p) { do_oop_work(p); }
*** 562,572 **** if (!nm->is_alive()) { log_error(gc, verify)("region [" PTR_FORMAT "," PTR_FORMAT "] has dead nmethod " PTR_FORMAT " in its strong code roots", p2i(_hr->bottom()), p2i(_hr->end()), p2i(nm)); _failures = true; } else { ! VerifyStrongCodeRootOopClosure oop_cl(_hr, nm); nm->oops_do(&oop_cl); if (!oop_cl.has_oops_in_region()) { log_error(gc, verify)("region [" PTR_FORMAT "," PTR_FORMAT "] has nmethod " PTR_FORMAT " in its strong code roots with no pointers into region", p2i(_hr->bottom()), p2i(_hr->end()), p2i(nm)); _failures = true; --- 529,539 ---- if (!nm->is_alive()) { log_error(gc, verify)("region [" PTR_FORMAT "," PTR_FORMAT "] has dead nmethod " PTR_FORMAT " in its strong code roots", p2i(_hr->bottom()), p2i(_hr->end()), p2i(nm)); _failures = true; } else { ! VerifyStrongCodeRootOopClosure oop_cl(_hr); nm->oops_do(&oop_cl); if (!oop_cl.has_oops_in_region()) { log_error(gc, verify)("region [" PTR_FORMAT "," PTR_FORMAT "] has nmethod " PTR_FORMAT " in its strong code roots with no pointers into region", p2i(_hr->bottom()), p2i(_hr->end()), p2i(nm)); _failures = true;
*** 754,764 **** void verify_remembered_set(T* p) { T heap_oop = oopDesc::load_heap_oop(p); Log(gc, verify) log; if (!oopDesc::is_null(heap_oop)) { oop obj = oopDesc::decode_heap_oop_not_null(heap_oop); - bool failed = false; HeapRegion* from = _g1h->heap_region_containing((HeapWord*)p); HeapRegion* to = _g1h->heap_region_containing(obj); if (from != NULL && to != NULL && from != to && !to->is_pinned()) { --- 721,730 ----
*** 789,799 **** obj->print_on(log.error_stream()); } log.error("Obj head CTE = %d, field CTE = %d.", cv_obj, cv_field); log.error("----------"); _failures = true; ! if (!failed) _n_failures++; } } } } }; --- 755,765 ---- obj->print_on(log.error_stream()); } log.error("Obj head CTE = %d, field CTE = %d.", cv_obj, cv_field); log.error("----------"); _failures = true; ! _n_failures++; } } } } };
< prev index next >