hotspot/src/share/vm/utilities/hashtable.cpp
changeset 46630 75aa3e39d02c
parent 46545 b970b6e40209
child 46729 c62d2e8b2728
equal deleted inserted replaced
46629:8eeacdc76bf2 46630:75aa3e39d02c
    97     // safepoint interval.
    97     // safepoint interval.
    98     return true;
    98     return true;
    99   }
    99   }
   100   return false;
   100   return false;
   101 }
   101 }
   102 
       
   103 template <class T, MEMFLAGS F> juint RehashableHashtable<T, F>::_seed = 0;
       
   104 
   102 
   105 // Create a new table and using alternate hash code, populate the new table
   103 // Create a new table and using alternate hash code, populate the new table
   106 // with the existing elements.   This can be used to change the hash code
   104 // with the existing elements.   This can be used to change the hash code
   107 // and could in the future change the size of the table.
   105 // and could in the future change the size of the table.
   108 
   106 
   205                               *p != NULL;
   203                               *p != NULL;
   206                                p = (*p)->next_addr()) {
   204                                p = (*p)->next_addr()) {
   207       if (*top + entry_size() > end) {
   205       if (*top + entry_size() > end) {
   208         report_out_of_shared_space(SharedMiscData);
   206         report_out_of_shared_space(SharedMiscData);
   209       }
   207       }
   210       *p = (BasicHashtableEntry<F>*)memcpy(*top, *p, entry_size());
   208       *p = (BasicHashtableEntry<F>*)memcpy(*top, (void*)*p, entry_size());
   211       *top += entry_size();
   209       *top += entry_size();
   212     }
   210     }
   213   }
   211   }
   214   *plen = (char*)(*top) - (char*)plen - sizeof(*plen);
   212   *plen = (char*)(*top) - (char*)plen - sizeof(*plen);
   215 
   213 
   285   *top += sizeof(intptr_t);
   283   *top += sizeof(intptr_t);
   286 
   284 
   287   if (*top + len > end) {
   285   if (*top + len > end) {
   288     report_out_of_shared_space(SharedMiscData);
   286     report_out_of_shared_space(SharedMiscData);
   289   }
   287   }
   290   _buckets = (HashtableBucket<F>*)memcpy(*top, _buckets, len);
   288   _buckets = (HashtableBucket<F>*)memcpy(*top, (void*)_buckets, len);
   291   *top += len;
   289   *top += len;
   292 }
   290 }
   293 
   291 
   294 
   292 
   295 #ifndef PRODUCT
   293 #ifndef PRODUCT