< prev index next > src/hotspot/share/gc/g1/g1ConcurrentMark.inline.hpp
Print this page
}
check_limits();
}
inline bool G1CMTask::should_be_sliced(oop obj) {
- return obj->is_objArray() && ((objArrayOop)obj)->length() >= (int)ObjArrayMarkingStride;
+ return obj->is_refArray() && ((refArrayOop)obj)->length() >= (int)ObjArrayMarkingStride;
}
inline void G1CMTask::process_array_chunk(objArrayOop obj, size_t start, size_t end) {
- obj->oop_iterate_elements_range(_cm_oop_closure,
- checked_cast<int>(start),
- checked_cast<int>(end));
+ assert(obj->is_refArray(), "Must be");
+ refArrayOop(obj)->oop_iterate_elements_range(_cm_oop_closure,
+ checked_cast<int>(start),
+ checked_cast<int>(end));
}
inline void G1ConcurrentMark::update_top_at_mark_start(G1HeapRegion* r) {
uint const region = r->hrm_index();
assert(region < _g1h->max_num_regions(), "Tried to access TAMS for region %u out of bounds", region);
< prev index next >