< prev index next >

src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.inline.hpp

Print this page
rev 8068 : imported patch parallelscavenge_cleanup

*** 23,32 **** --- 23,33 ---- */ #ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPROMOTIONMANAGER_INLINE_HPP #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPROMOTIONMANAGER_INLINE_HPP + #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp" #include "gc_implementation/parallelScavenge/psOldGen.hpp" #include "gc_implementation/parallelScavenge/psPromotionManager.hpp" #include "gc_implementation/parallelScavenge/psPromotionLAB.inline.hpp" #include "gc_implementation/parallelScavenge/psScavenge.hpp" #include "oops/oop.inline.hpp"
*** 55,67 **** } template <class T> inline void PSPromotionManager::claim_or_forward_depth(T* p) { assert(should_scavenge(p, true), "revisiting object?"); ! assert(Universe::heap()->kind() == CollectedHeap::ParallelScavengeHeap, ! "Sanity"); ! assert(Universe::heap()->is_in(p), "pointer outside heap"); claim_or_forward_internal_depth(p); } inline void PSPromotionManager::promotion_trace_event(oop new_obj, oop old_obj, --- 56,66 ---- } template <class T> inline void PSPromotionManager::claim_or_forward_depth(T* p) { assert(should_scavenge(p, true), "revisiting object?"); ! assert(ParallelScavengeHeap::heap()->is_in(p), "pointer outside heap"); claim_or_forward_internal_depth(p); } inline void PSPromotionManager::promotion_trace_event(oop new_obj, oop old_obj,
*** 148,158 **** } // Otherwise try allocating obj tenured if (new_obj == NULL) { #ifndef PRODUCT ! if (Universe::heap()->promotion_should_fail()) { return oop_promotion_failed(o, test_mark); } #endif // #ifndef PRODUCT new_obj = (oop) _old_lab.allocate(new_obj_size); --- 147,157 ---- } // Otherwise try allocating obj tenured if (new_obj == NULL) { #ifndef PRODUCT ! if (ParallelScavengeHeap::heap()->promotion_should_fail()) { return oop_promotion_failed(o, test_mark); } #endif // #ifndef PRODUCT new_obj = (oop) _old_lab.allocate(new_obj_size);
*** 294,304 **** // We cannot mark without test, as some code passes us pointers // that are outside the heap. These pointers are either from roots // or from metadata. if ((!PSScavenge::is_obj_in_young((HeapWord*)p)) && ! Universe::heap()->is_in_reserved(p)) { if (PSScavenge::is_obj_in_young(new_obj)) { PSScavenge::card_table()->inline_write_ref_field_gc(p, new_obj); } } } --- 293,303 ---- // We cannot mark without test, as some code passes us pointers // that are outside the heap. These pointers are either from roots // or from metadata. if ((!PSScavenge::is_obj_in_young((HeapWord*)p)) && ! ParallelScavengeHeap::heap()->is_in_reserved(p)) { if (PSScavenge::is_obj_in_young(new_obj)) { PSScavenge::card_table()->inline_write_ref_field_gc(p, new_obj); } } }
< prev index next >