Mercurial > hg > truffle
comparison src/share/vm/memory/genCollectedHeap.hpp @ 342:37f87013dfd8
6711316: Open source the Garbage-First garbage collector
Summary: First mercurial integration of the code for the Garbage-First garbage collector.
Reviewed-by: apetrusenko, iveresov, jmasa, sgoldman, tonyp, ysr
author | ysr |
---|---|
date | Thu, 05 Jun 2008 15:57:56 -0700 |
parents | 8bd1e4487c18 |
children | 1ee8caae33af |
comparison
equal
deleted
inserted
replaced
189:0b27f3512f9e | 342:37f87013dfd8 |
---|---|
250 virtual bool supports_tlab_allocation() const; | 250 virtual bool supports_tlab_allocation() const; |
251 virtual size_t tlab_capacity(Thread* thr) const; | 251 virtual size_t tlab_capacity(Thread* thr) const; |
252 virtual size_t unsafe_max_tlab_alloc(Thread* thr) const; | 252 virtual size_t unsafe_max_tlab_alloc(Thread* thr) const; |
253 virtual HeapWord* allocate_new_tlab(size_t size); | 253 virtual HeapWord* allocate_new_tlab(size_t size); |
254 | 254 |
255 // Can a compiler initialize a new object without store barriers? | |
256 // This permission only extends from the creation of a new object | |
257 // via a TLAB up to the first subsequent safepoint. | |
258 virtual bool can_elide_tlab_store_barriers() const { | |
259 return true; | |
260 } | |
261 | |
262 // Can a compiler elide a store barrier when it writes | |
263 // a permanent oop into the heap? Applies when the compiler | |
264 // is storing x to the heap, where x->is_perm() is true. | |
265 virtual bool can_elide_permanent_oop_store_barriers() const { | |
266 // CMS needs to see all, even intra-generational, ref updates. | |
267 return !UseConcMarkSweepGC; | |
268 } | |
269 | |
255 // The "requestor" generation is performing some garbage collection | 270 // The "requestor" generation is performing some garbage collection |
256 // action for which it would be useful to have scratch space. The | 271 // action for which it would be useful to have scratch space. The |
257 // requestor promises to allocate no more than "max_alloc_words" in any | 272 // requestor promises to allocate no more than "max_alloc_words" in any |
258 // older generation (via promotion say.) Any blocks of space that can | 273 // older generation (via promotion say.) Any blocks of space that can |
259 // be provided are returned as a list of ScratchBlocks, sorted by | 274 // be provided are returned as a list of ScratchBlocks, sorted by |