Fix size of store buffer to depend on pointer size.

This makes the store buffer size depend on the pointer size so that
store buffers can hold the same number of entries on all architectures.
The number of pages marked scan-on-scavenge should decrease on x64 and
performance of splay should drastically improve on x64.

R=erik.corry@gmail.com

Review URL: http://codereview.chromium.org/8498013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
mstarzinger@chromium.org 2011-11-09 09:51:54 +00:00
parent 53c6077cee
commit 5e0ff8b2e0

View File

@ -81,7 +81,7 @@ class StoreBuffer {
// surviving old-to-new pointers into the store buffer to rebuild it. // surviving old-to-new pointers into the store buffer to rebuild it.
void IteratePointersToNewSpace(ObjectSlotCallback callback); void IteratePointersToNewSpace(ObjectSlotCallback callback);
static const int kStoreBufferOverflowBit = 1 << 16; static const int kStoreBufferOverflowBit = 1 << (14 + kPointerSizeLog2);
static const int kStoreBufferSize = kStoreBufferOverflowBit; static const int kStoreBufferSize = kStoreBufferOverflowBit;
static const int kStoreBufferLength = kStoreBufferSize / sizeof(Address); static const int kStoreBufferLength = kStoreBufferSize / sizeof(Address);
static const int kOldStoreBufferLength = kStoreBufferLength * 16; static const int kOldStoreBufferLength = kStoreBufferLength * 16;