hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp
changeset 5694 1e0532a6abff
parent 5434 a2e785749780
child 5702 201c5cde25bb
equal deleted inserted replaced
5693:3015c564fcbc 5694:1e0532a6abff
    89   // by the containing generation. Thus, none of the methods in this
    89   // by the containing generation. Thus, none of the methods in this
    90   // space are re-entrant.
    90   // space are re-entrant.
    91   enum SomeConstants {
    91   enum SomeConstants {
    92     SmallForLinearAlloc = 16,        // size < this then use _sLAB
    92     SmallForLinearAlloc = 16,        // size < this then use _sLAB
    93     SmallForDictionary  = 257,       // size < this then use _indexedFreeList
    93     SmallForDictionary  = 257,       // size < this then use _indexedFreeList
    94     IndexSetSize        = SmallForDictionary,  // keep this odd-sized
    94     IndexSetSize        = SmallForDictionary  // keep this odd-sized
    95     IndexSetStart       = MinObjAlignment,
       
    96     IndexSetStride      = MinObjAlignment
       
    97   };
    95   };
       
    96   static int IndexSetStart;
       
    97   static int IndexSetStride;
    98 
    98 
    99  private:
    99  private:
   100   enum FitStrategyOptions {
   100   enum FitStrategyOptions {
   101     FreeBlockStrategyNone = 0,
   101     FreeBlockStrategyNone = 0,
   102     FreeBlockBestFitFirst
   102     FreeBlockBestFitFirst
   276   bool bestFitFirst() { return _fitStrategy == FreeBlockBestFitFirst; }
   276   bool bestFitFirst() { return _fitStrategy == FreeBlockBestFitFirst; }
   277   FreeBlockDictionary* dictionary() const { return _dictionary; }
   277   FreeBlockDictionary* dictionary() const { return _dictionary; }
   278   HeapWord* nearLargestChunk() const { return _nearLargestChunk; }
   278   HeapWord* nearLargestChunk() const { return _nearLargestChunk; }
   279   void set_nearLargestChunk(HeapWord* v) { _nearLargestChunk = v; }
   279   void set_nearLargestChunk(HeapWord* v) { _nearLargestChunk = v; }
   280 
   280 
       
   281   // Set CMS global values
       
   282   static void set_cms_values();
       
   283 
   281   // Return the free chunk at the end of the space.  If no such
   284   // Return the free chunk at the end of the space.  If no such
   282   // chunk exists, return NULL.
   285   // chunk exists, return NULL.
   283   FreeChunk* find_chunk_at_end();
   286   FreeChunk* find_chunk_at_end();
   284 
   287 
   285   bool adaptive_freelists() const { return _adaptive_freelists; }
   288   bool adaptive_freelists() const { return _adaptive_freelists; }