--- old/src/share/vm/gc_implementation/g1/g1ParScanThreadState.hpp 2014-06-26 09:10:36.405721747 +0200 +++ new/src/share/vm/gc_implementation/g1/g1ParScanThreadState.hpp 2014-06-26 09:10:36.328719570 +0200 @@ -98,14 +98,10 @@ } } -public: + public: G1ParScanThreadState(G1CollectedHeap* g1h, uint queue_num, ReferenceProcessor* rp); - ~G1ParScanThreadState() { - retire_alloc_buffers(); - FREE_C_HEAP_ARRAY(size_t, _surviving_young_words_base, mtGC); - } + ~G1ParScanThreadState(); - RefToScanQueue* refs() { return _refs; } ageTable* age_table() { return &_age_table; } G1ParGCAllocBuffer* alloc_buffer(GCAllocPurpose purpose) { @@ -115,12 +111,6 @@ size_t alloc_buffer_waste() const { return _alloc_buffer_waste; } size_t undo_waste() const { return _undo_waste; } - public: - G1ParScanThreadState(G1CollectedHeap* g1h, uint queue_num, ReferenceProcessor* rp); - ~G1ParScanThreadState(); - - ageTable* age_table() { return &_age_table; } - #ifdef ASSERT bool queue_is_empty() const { return _refs->is_empty(); } @@ -138,9 +128,9 @@ private: - HeapWord* allocate(GCAllocPurpose purpose, size_t word_sz); - HeapWord* allocate_slow(GCAllocPurpose purpose, size_t word_sz); - void undo_allocation(GCAllocPurpose purpose, HeapWord* obj, size_t word_sz); + inline HeapWord* allocate(GCAllocPurpose purpose, size_t word_sz); + inline HeapWord* allocate_slow(GCAllocPurpose purpose, size_t word_sz); + inline void undo_allocation(GCAllocPurpose purpose, HeapWord* obj, size_t word_sz); public: @@ -220,18 +210,18 @@ inline void do_oop_partial_array(oop* p); // This method is applied to the fields of the objects that have just been copied. - template void do_oop_evac(T* p, HeapRegion* from); + template inline void do_oop_evac(T* p, HeapRegion* from); template inline void deal_with_reference(T* ref_to_scan); - inline void deal_with_reference(StarTask ref); -public: + inline void dispatch_reference(StarTask ref); + public: oop copy_to_survivor_space(oop const obj); void trim_queue(); - void steal_and_trim_queue(RefToScanQueueSet *task_queues); + inline void steal_and_trim_queue(RefToScanQueueSet *task_queues); }; #endif // SHARE_VM_GC_IMPLEMENTATION_G1_G1PARSCANTHREADSTATE_HPP