| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "platform/heap/SafePoint.h" | 5 #include "platform/heap/SafePoint.h" |
| 6 | 6 |
| 7 #include "platform/heap/Heap.h" | 7 #include "platform/heap/Heap.h" |
| 8 | 8 |
| 9 namespace blink { | 9 namespace blink { |
| 10 | 10 |
| 11 using PushAllRegistersCallback = void (*)(SafePointBarrier*, | 11 using PushAllRegistersCallback = void (*)(SafePointBarrier*, |
| 12 ThreadState*, | 12 ThreadState*, |
| 13 intptr_t*); | 13 intptr_t*); |
| 14 extern "C" void pushAllRegisters(SafePointBarrier*, | 14 extern "C" void pushAllRegisters(SafePointBarrier*, |
| 15 ThreadState*, | 15 ThreadState*, |
| 16 PushAllRegistersCallback); | 16 PushAllRegistersCallback); |
| 17 | 17 |
| 18 SafePointBarrier::SafePointBarrier() {} | 18 SafePointBarrier::SafePointBarrier() {} |
| 19 | 19 |
| 20 SafePointBarrier::~SafePointBarrier() {} | 20 SafePointBarrier::~SafePointBarrier() {} |
| 21 | 21 |
| 22 void SafePointBarrier::enterSafePoint(ThreadState* state) { | 22 void SafePointBarrier::enterSafePoint(ThreadState* state) { |
| 23 ASSERT(!state->sweepForbidden()); | 23 ASSERT(!state->sweepForbidden()); |
| 24 pushAllRegisters(this, state, enterSafePointAfterPushRegisters); | 24 pushAllRegisters(this, state, enterSafePointAfterPushRegisters); |
| 25 } | 25 } |
| 26 | 26 |
| 27 void SafePointBarrier::leaveSafePoint(ThreadState* state, | 27 void SafePointBarrier::leaveSafePoint() {} |
| 28 SafePointAwareMutexLocker* locker) { | |
| 29 } | |
| 30 | 28 |
| 31 void SafePointBarrier::doEnterSafePoint(ThreadState* state, | 29 void SafePointBarrier::doEnterSafePoint(ThreadState* state, |
| 32 intptr_t* stackEnd) { | 30 intptr_t* stackEnd) { |
| 33 state->recordStackEnd(stackEnd); | 31 state->recordStackEnd(stackEnd); |
| 34 state->copyStackUntilSafePointScope(); | 32 state->copyStackUntilSafePointScope(); |
| 35 } | 33 } |
| 36 | 34 |
| 37 } // namespace blink | 35 } // namespace blink |
| OLD | NEW |