| Index: runtime/vm/store_buffer.cc
|
| diff --git a/runtime/vm/store_buffer.cc b/runtime/vm/store_buffer.cc
|
| index 95e6f96f927086ac3d798c6c6db4d29fab13d2e6..7200d9acd74893cf1be513ea315ff83000083ea6 100644
|
| --- a/runtime/vm/store_buffer.cc
|
| +++ b/runtime/vm/store_buffer.cc
|
| @@ -21,32 +21,27 @@ typename BlockStack<BlockSize>::List* BlockStack<BlockSize>::global_empty_ =
|
| template <int BlockSize>
|
| Mutex* BlockStack<BlockSize>::global_mutex_ = NULL;
|
|
|
| -
|
| template <int BlockSize>
|
| void BlockStack<BlockSize>::InitOnce() {
|
| global_empty_ = new List();
|
| global_mutex_ = new Mutex();
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| void BlockStack<BlockSize>::ShutDown() {
|
| delete global_empty_;
|
| delete global_mutex_;
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| BlockStack<BlockSize>::BlockStack() : mutex_(new Mutex()) {}
|
|
|
| -
|
| template <int BlockSize>
|
| BlockStack<BlockSize>::~BlockStack() {
|
| Reset();
|
| delete mutex_;
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| void BlockStack<BlockSize>::Reset() {
|
| MutexLocker local_mutex_locker(mutex_);
|
| @@ -67,7 +62,6 @@ void BlockStack<BlockSize>::Reset() {
|
| }
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::Blocks() {
|
| MutexLocker ml(mutex_);
|
| @@ -77,7 +71,6 @@ typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::Blocks() {
|
| return full_.PopAll();
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| void BlockStack<BlockSize>::PushBlockImpl(Block* block) {
|
| ASSERT(block->next() == NULL); // Should be just a single block.
|
| @@ -94,7 +87,6 @@ void BlockStack<BlockSize>::PushBlockImpl(Block* block) {
|
| }
|
| }
|
|
|
| -
|
| void StoreBuffer::PushBlock(Block* block, ThresholdPolicy policy) {
|
| BlockStack<Block::kSize>::PushBlockImpl(block);
|
| if ((policy == kCheckThreshold) && Overflowed()) {
|
| @@ -108,7 +100,6 @@ void StoreBuffer::PushBlock(Block* block, ThresholdPolicy policy) {
|
| }
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| typename BlockStack<BlockSize>::Block*
|
| BlockStack<BlockSize>::PopNonFullBlock() {
|
| @@ -121,7 +112,6 @@ BlockStack<BlockSize>::PopNonFullBlock() {
|
| return PopEmptyBlock();
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::PopEmptyBlock() {
|
| {
|
| @@ -133,7 +123,6 @@ typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::PopEmptyBlock() {
|
| return new Block();
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| typename BlockStack<BlockSize>::Block*
|
| BlockStack<BlockSize>::PopNonEmptyBlock() {
|
| @@ -147,14 +136,12 @@ BlockStack<BlockSize>::PopNonEmptyBlock() {
|
| }
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| bool BlockStack<BlockSize>::IsEmpty() {
|
| MutexLocker ml(mutex_);
|
| return full_.IsEmpty() && partial_.IsEmpty();
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| BlockStack<BlockSize>::List::~List() {
|
| while (!IsEmpty()) {
|
| @@ -162,7 +149,6 @@ BlockStack<BlockSize>::List::~List() {
|
| }
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::List::Pop() {
|
| Block* result = head_;
|
| @@ -172,7 +158,6 @@ typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::List::Pop() {
|
| return result;
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::List::PopAll() {
|
| Block* result = head_;
|
| @@ -181,7 +166,6 @@ typename BlockStack<BlockSize>::Block* BlockStack<BlockSize>::List::PopAll() {
|
| return result;
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| void BlockStack<BlockSize>::List::Push(Block* block) {
|
| ASSERT(block->next_ == NULL);
|
| @@ -190,13 +174,11 @@ void BlockStack<BlockSize>::List::Push(Block* block) {
|
| ++length_;
|
| }
|
|
|
| -
|
| bool StoreBuffer::Overflowed() {
|
| MutexLocker ml(mutex_);
|
| return (full_.length() + partial_.length()) > kMaxNonEmpty;
|
| }
|
|
|
| -
|
| template <int BlockSize>
|
| void BlockStack<BlockSize>::TrimGlobalEmpty() {
|
| DEBUG_ASSERT(global_mutex_->IsOwnedByCurrentThread());
|
| @@ -205,7 +187,6 @@ void BlockStack<BlockSize>::TrimGlobalEmpty() {
|
| }
|
| }
|
|
|
| -
|
| template class BlockStack<kStoreBufferBlockSize>;
|
| template class BlockStack<kMarkingStackBlockSize>;
|
|
|
|
|