equal
deleted
inserted
replaced
52 static GCTaskManager* _gc_task_manager; // The task manager. |
52 static GCTaskManager* _gc_task_manager; // The task manager. |
53 |
53 |
54 protected: |
54 protected: |
55 static inline size_t total_invocations(); |
55 static inline size_t total_invocations(); |
56 HeapWord* allocate_new_tlab(size_t size); |
56 HeapWord* allocate_new_tlab(size_t size); |
57 void fill_all_tlabs(bool retire); |
|
58 |
57 |
59 public: |
58 public: |
60 ParallelScavengeHeap() : CollectedHeap() { |
59 ParallelScavengeHeap() : CollectedHeap() { |
61 set_alignment(_perm_gen_alignment, intra_heap_alignment()); |
60 set_alignment(_perm_gen_alignment, intra_heap_alignment()); |
62 set_alignment(_young_gen_alignment, intra_heap_alignment()); |
61 set_alignment(_young_gen_alignment, intra_heap_alignment()); |
189 // via a TLAB up to the first subsequent safepoint. |
188 // via a TLAB up to the first subsequent safepoint. |
190 virtual bool can_elide_tlab_store_barriers() const { |
189 virtual bool can_elide_tlab_store_barriers() const { |
191 return true; |
190 return true; |
192 } |
191 } |
193 |
192 |
|
193 virtual bool card_mark_must_follow_store() const { |
|
194 return false; |
|
195 } |
|
196 |
194 // Return true if we don't we need a store barrier for |
197 // Return true if we don't we need a store barrier for |
195 // initializing stores to an object at this address. |
198 // initializing stores to an object at this address. |
196 virtual bool can_elide_initializing_store_barrier(oop new_obj); |
199 virtual bool can_elide_initializing_store_barrier(oop new_obj); |
197 |
200 |
198 // Can a compiler elide a store barrier when it writes |
201 // Can a compiler elide a store barrier when it writes |