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 #ifndef V8_ISOLATE_H_ | 5 #ifndef V8_ISOLATE_H_ |
6 #define V8_ISOLATE_H_ | 6 #define V8_ISOLATE_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <queue> | 9 #include <queue> |
10 | 10 |
(...skipping 1176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1187 void IsolateInBackgroundNotification(); | 1187 void IsolateInBackgroundNotification(); |
1188 | 1188 |
1189 bool IsIsolateInBackground() { return is_isolate_in_background_; } | 1189 bool IsIsolateInBackground() { return is_isolate_in_background_; } |
1190 | 1190 |
1191 PRINTF_FORMAT(2, 3) void PrintWithTimestamp(const char* format, ...); | 1191 PRINTF_FORMAT(2, 3) void PrintWithTimestamp(const char* format, ...); |
1192 | 1192 |
1193 #ifdef USE_SIMULATOR | 1193 #ifdef USE_SIMULATOR |
1194 base::Mutex* simulator_i_cache_mutex() { return &simulator_i_cache_mutex_; } | 1194 base::Mutex* simulator_i_cache_mutex() { return &simulator_i_cache_mutex_; } |
1195 #endif | 1195 #endif |
1196 | 1196 |
| 1197 void set_allow_atomics_wait(bool set) { allow_atomics_wait_ = set; } |
| 1198 bool allow_atomics_wait() { return allow_atomics_wait_; } |
| 1199 |
1197 protected: | 1200 protected: |
1198 explicit Isolate(bool enable_serializer); | 1201 explicit Isolate(bool enable_serializer); |
1199 bool IsArrayOrObjectPrototype(Object* object); | 1202 bool IsArrayOrObjectPrototype(Object* object); |
1200 | 1203 |
1201 private: | 1204 private: |
1202 friend struct GlobalState; | 1205 friend struct GlobalState; |
1203 friend struct InitializeGlobalState; | 1206 friend struct InitializeGlobalState; |
1204 | 1207 |
1205 // These fields are accessed through the API, offsets must be kept in sync | 1208 // These fields are accessed through the API, offsets must be kept in sync |
1206 // with v8::internal::Internals (in include/v8.h) constants. This is also | 1209 // with v8::internal::Internals (in include/v8.h) constants. This is also |
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1465 | 1468 |
1466 CancelableTaskManager* cancelable_task_manager_; | 1469 CancelableTaskManager* cancelable_task_manager_; |
1467 | 1470 |
1468 v8::Isolate::AbortOnUncaughtExceptionCallback | 1471 v8::Isolate::AbortOnUncaughtExceptionCallback |
1469 abort_on_uncaught_exception_callback_; | 1472 abort_on_uncaught_exception_callback_; |
1470 | 1473 |
1471 #ifdef USE_SIMULATOR | 1474 #ifdef USE_SIMULATOR |
1472 base::Mutex simulator_i_cache_mutex_; | 1475 base::Mutex simulator_i_cache_mutex_; |
1473 #endif | 1476 #endif |
1474 | 1477 |
| 1478 bool allow_atomics_wait_; |
| 1479 |
1475 friend class ExecutionAccess; | 1480 friend class ExecutionAccess; |
1476 friend class HandleScopeImplementer; | 1481 friend class HandleScopeImplementer; |
1477 friend class HeapTester; | 1482 friend class HeapTester; |
1478 friend class OptimizingCompileDispatcher; | 1483 friend class OptimizingCompileDispatcher; |
1479 friend class SweeperThread; | 1484 friend class SweeperThread; |
1480 friend class ThreadManager; | 1485 friend class ThreadManager; |
1481 friend class Simulator; | 1486 friend class Simulator; |
1482 friend class StackGuard; | 1487 friend class StackGuard; |
1483 friend class ThreadId; | 1488 friend class ThreadId; |
1484 friend class v8::Isolate; | 1489 friend class v8::Isolate; |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1701 | 1706 |
1702 EmbeddedVector<char, 128> filename_; | 1707 EmbeddedVector<char, 128> filename_; |
1703 FILE* file_; | 1708 FILE* file_; |
1704 int scope_depth_; | 1709 int scope_depth_; |
1705 }; | 1710 }; |
1706 | 1711 |
1707 } // namespace internal | 1712 } // namespace internal |
1708 } // namespace v8 | 1713 } // namespace v8 |
1709 | 1714 |
1710 #endif // V8_ISOLATE_H_ | 1715 #endif // V8_ISOLATE_H_ |
OLD | NEW |