77 _shared_allocs += size;
78 break;
79 case ShenandoahAllocRequest::_alloc_tlab:
80 _tlab_allocs += size;
81 break;
82 case ShenandoahAllocRequest::_alloc_gclab:
83 _gclab_allocs += size;
84 break;
85 default:
86 ShouldNotReachHere();
87 }
88 }
89
90 inline void ShenandoahHeapRegion::increase_live_data_alloc_words(size_t s) {
91 internal_increase_live_data(s);
92 }
93
94 inline void ShenandoahHeapRegion::increase_live_data_gc_words(size_t s) {
95 internal_increase_live_data(s);
96 if (ShenandoahPacing) {
97 _pacer->report_mark(s);
98 }
99 }
100
101 inline void ShenandoahHeapRegion::internal_increase_live_data(size_t s) {
102 size_t new_live_data = Atomic::add(s, &_live_data);
103 #ifdef ASSERT
104 size_t live_bytes = new_live_data * HeapWordSize;
105 size_t used_bytes = used();
106 assert(live_bytes <= used_bytes,
107 "can't have more live data than used: " SIZE_FORMAT ", " SIZE_FORMAT, live_bytes, used_bytes);
108 #endif
109 }
110
111 #endif // SHARE_GC_SHENANDOAH_SHENANDOAHHEAPREGION_INLINE_HPP
|
77 _shared_allocs += size;
78 break;
79 case ShenandoahAllocRequest::_alloc_tlab:
80 _tlab_allocs += size;
81 break;
82 case ShenandoahAllocRequest::_alloc_gclab:
83 _gclab_allocs += size;
84 break;
85 default:
86 ShouldNotReachHere();
87 }
88 }
89
90 inline void ShenandoahHeapRegion::increase_live_data_alloc_words(size_t s) {
91 internal_increase_live_data(s);
92 }
93
94 inline void ShenandoahHeapRegion::increase_live_data_gc_words(size_t s) {
95 internal_increase_live_data(s);
96 if (ShenandoahPacing) {
97 _heap->pacer()->report_mark(s);
98 }
99 }
100
101 inline void ShenandoahHeapRegion::internal_increase_live_data(size_t s) {
102 size_t new_live_data = Atomic::add(s, &_live_data);
103 #ifdef ASSERT
104 size_t live_bytes = new_live_data * HeapWordSize;
105 size_t used_bytes = used();
106 assert(live_bytes <= used_bytes,
107 "can't have more live data than used: " SIZE_FORMAT ", " SIZE_FORMAT, live_bytes, used_bytes);
108 #endif
109 }
110
111 #endif // SHARE_GC_SHENANDOAH_SHENANDOAHHEAPREGION_INLINE_HPP
|