Implement in-place rehashing of HashTable.
authorulan@chromium.org <ulan@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 12 Sep 2013 11:03:27 +0000 (11:03 +0000)
committerulan@chromium.org <ulan@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Thu, 12 Sep 2013 11:03:27 +0000 (11:03 +0000)
commit0e8e0030775518b69eb8522823ea3754e6bddc69
treea90fff182386182287e17dac7cd76da259dae305
parent996813cca2c1e2551e98780bebd52f5b895a2b5b
Implement in-place rehashing of HashTable.

The algorithm puts elements into correct positions in  multiple iterations.
On the first iteration it tries to put elements at entries specified by
their first hash probe. On the second iteration -- by the second
hash probe, and so on. Overall it does O(k*n) memory accesses, where
k is the maximum number of probes required for an element and n is the
capacity of the hash table. The expectation is that k will be small.

R=mstarzinger@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23658031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/objects.cc
src/objects.h
test/cctest/test-dictionary.cc