hotspot/src/share/vm/memory/genCollectedHeap.hpp
changeset 1374 4c24294029a9
parent 389 a44227868a4a
child 1388 3677f5f3d66b
equal deleted inserted replaced
615:570062d730b2 1374:4c24294029a9
   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