OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project 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 "src/api.h" | 5 #include "src/api.h" |
6 | 6 |
7 #include <string.h> // For memcpy, strlen. | 7 #include <string.h> // For memcpy, strlen. |
8 #ifdef V8_USE_ADDRESS_SANITIZER | 8 #ifdef V8_USE_ADDRESS_SANITIZER |
9 #include <sanitizer/asan_interface.h> | 9 #include <sanitizer/asan_interface.h> |
10 #endif // V8_USE_ADDRESS_SANITIZER | 10 #endif // V8_USE_ADDRESS_SANITIZER |
(...skipping 6769 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6780 isolate->CancelTerminateExecution(); | 6780 isolate->CancelTerminateExecution(); |
6781 } | 6781 } |
6782 | 6782 |
6783 | 6783 |
6784 void Isolate::RequestInterrupt(InterruptCallback callback, void* data) { | 6784 void Isolate::RequestInterrupt(InterruptCallback callback, void* data) { |
6785 i::Isolate* isolate = reinterpret_cast<i::Isolate*>(this); | 6785 i::Isolate* isolate = reinterpret_cast<i::Isolate*>(this); |
6786 isolate->RequestInterrupt(callback, data); | 6786 isolate->RequestInterrupt(callback, data); |
6787 } | 6787 } |
6788 | 6788 |
6789 | 6789 |
6790 void Isolate::ClearInterrupt() { | |
6791 } | |
6792 | |
6793 | |
6794 void Isolate::RequestGarbageCollectionForTesting(GarbageCollectionType type) { | 6790 void Isolate::RequestGarbageCollectionForTesting(GarbageCollectionType type) { |
6795 CHECK(i::FLAG_expose_gc); | 6791 CHECK(i::FLAG_expose_gc); |
6796 if (type == kMinorGarbageCollection) { | 6792 if (type == kMinorGarbageCollection) { |
6797 reinterpret_cast<i::Isolate*>(this)->heap()->CollectGarbage( | 6793 reinterpret_cast<i::Isolate*>(this)->heap()->CollectGarbage( |
6798 i::NEW_SPACE, "Isolate::RequestGarbageCollection", | 6794 i::NEW_SPACE, "Isolate::RequestGarbageCollection", |
6799 kGCCallbackFlagForced); | 6795 kGCCallbackFlagForced); |
6800 } else { | 6796 } else { |
6801 DCHECK_EQ(kFullGarbageCollection, type); | 6797 DCHECK_EQ(kFullGarbageCollection, type); |
6802 reinterpret_cast<i::Isolate*>(this)->heap()->CollectAllGarbage( | 6798 reinterpret_cast<i::Isolate*>(this)->heap()->CollectAllGarbage( |
6803 i::Heap::kAbortIncrementalMarkingMask, | 6799 i::Heap::kAbortIncrementalMarkingMask, |
(...skipping 1250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8054 Isolate* isolate = reinterpret_cast<Isolate*>(info.GetIsolate()); | 8050 Isolate* isolate = reinterpret_cast<Isolate*>(info.GetIsolate()); |
8055 Address callback_address = | 8051 Address callback_address = |
8056 reinterpret_cast<Address>(reinterpret_cast<intptr_t>(callback)); | 8052 reinterpret_cast<Address>(reinterpret_cast<intptr_t>(callback)); |
8057 VMState<EXTERNAL> state(isolate); | 8053 VMState<EXTERNAL> state(isolate); |
8058 ExternalCallbackScope call_scope(isolate, callback_address); | 8054 ExternalCallbackScope call_scope(isolate, callback_address); |
8059 callback(info); | 8055 callback(info); |
8060 } | 8056 } |
8061 | 8057 |
8062 | 8058 |
8063 } } // namespace v8::internal | 8059 } } // namespace v8::internal |
OLD | NEW |