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 "../include/v8-debug.h" | 8 #include "../include/v8-debug.h" |
9 #include "allocation.h" | 9 #include "allocation.h" |
10 #include "assert-scope.h" | 10 #include "assert-scope.h" |
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
342 V(FunctionInfoListener*, active_function_info_listener, NULL) \ | 342 V(FunctionInfoListener*, active_function_info_listener, NULL) \ |
343 /* State for Relocatable. */ \ | 343 /* State for Relocatable. */ \ |
344 V(Relocatable*, relocatable_top, NULL) \ | 344 V(Relocatable*, relocatable_top, NULL) \ |
345 V(DebugObjectCache*, string_stream_debug_object_cache, NULL) \ | 345 V(DebugObjectCache*, string_stream_debug_object_cache, NULL) \ |
346 V(Object*, string_stream_current_security_token, NULL) \ | 346 V(Object*, string_stream_current_security_token, NULL) \ |
347 /* Serializer state. */ \ | 347 /* Serializer state. */ \ |
348 V(ExternalReferenceTable*, external_reference_table, NULL) \ | 348 V(ExternalReferenceTable*, external_reference_table, NULL) \ |
349 /* AstNode state. */ \ | 349 /* AstNode state. */ \ |
350 V(int, ast_node_id, 0) \ | 350 V(int, ast_node_id, 0) \ |
351 V(unsigned, ast_node_count, 0) \ | 351 V(unsigned, ast_node_count, 0) \ |
352 V(bool, microtask_pending, false) \ | 352 V(int, pending_microtask_count, 0) \ |
353 V(bool, autorun_microtasks, true) \ | 353 V(bool, autorun_microtasks, true) \ |
354 V(HStatistics*, hstatistics, NULL) \ | 354 V(HStatistics*, hstatistics, NULL) \ |
355 V(HTracer*, htracer, NULL) \ | 355 V(HTracer*, htracer, NULL) \ |
356 V(CodeTracer*, code_tracer, NULL) \ | 356 V(CodeTracer*, code_tracer, NULL) \ |
357 V(bool, fp_stubs_generated, false) \ | 357 V(bool, fp_stubs_generated, false) \ |
358 V(int, max_available_threads, 0) \ | 358 V(int, max_available_threads, 0) \ |
359 V(uint32_t, per_isolate_assert_data, 0xFFFFFFFFu) \ | 359 V(uint32_t, per_isolate_assert_data, 0xFFFFFFFFu) \ |
360 V(InterruptCallback, api_interrupt_callback, NULL) \ | 360 V(InterruptCallback, api_interrupt_callback, NULL) \ |
361 V(void*, api_interrupt_callback_data, NULL) \ | 361 V(void*, api_interrupt_callback_data, NULL) \ |
362 ISOLATE_INIT_SIMULATOR_LIST(V) | 362 ISOLATE_INIT_SIMULATOR_LIST(V) |
(...skipping 697 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1060 return id; | 1060 return id; |
1061 } | 1061 } |
1062 | 1062 |
1063 // Get (and lazily initialize) the registry for per-isolate symbols. | 1063 // Get (and lazily initialize) the registry for per-isolate symbols. |
1064 Handle<JSObject> GetSymbolRegistry(); | 1064 Handle<JSObject> GetSymbolRegistry(); |
1065 | 1065 |
1066 void AddCallCompletedCallback(CallCompletedCallback callback); | 1066 void AddCallCompletedCallback(CallCompletedCallback callback); |
1067 void RemoveCallCompletedCallback(CallCompletedCallback callback); | 1067 void RemoveCallCompletedCallback(CallCompletedCallback callback); |
1068 void FireCallCompletedCallback(); | 1068 void FireCallCompletedCallback(); |
1069 | 1069 |
| 1070 void EnqueueMicrotask(Handle<JSFunction> microtask); |
1070 void RunMicrotasks(); | 1071 void RunMicrotasks(); |
1071 | 1072 |
1072 private: | 1073 private: |
1073 Isolate(); | 1074 Isolate(); |
1074 | 1075 |
1075 friend struct GlobalState; | 1076 friend struct GlobalState; |
1076 friend struct InitializeGlobalState; | 1077 friend struct InitializeGlobalState; |
1077 | 1078 |
1078 enum State { | 1079 enum State { |
1079 UNINITIALIZED, // Some components may not have been allocated. | 1080 UNINITIALIZED, // Some components may not have been allocated. |
(...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1479 } | 1480 } |
1480 | 1481 |
1481 EmbeddedVector<char, 128> filename_; | 1482 EmbeddedVector<char, 128> filename_; |
1482 FILE* file_; | 1483 FILE* file_; |
1483 int scope_depth_; | 1484 int scope_depth_; |
1484 }; | 1485 }; |
1485 | 1486 |
1486 } } // namespace v8::internal | 1487 } } // namespace v8::internal |
1487 | 1488 |
1488 #endif // V8_ISOLATE_H_ | 1489 #endif // V8_ISOLATE_H_ |
OLD | NEW |