OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
350 V(v8::Debug::MessageHandler, message_handler, NULL) \ | 350 V(v8::Debug::MessageHandler, message_handler, NULL) \ |
351 /* To distinguish the function templates, so that we can find them in the */ \ | 351 /* To distinguish the function templates, so that we can find them in the */ \ |
352 /* function cache of the native context. */ \ | 352 /* function cache of the native context. */ \ |
353 V(int, next_serial_number, 0) \ | 353 V(int, next_serial_number, 0) \ |
354 V(ExternalReferenceRedirectorPointer*, external_reference_redirector, NULL) \ | 354 V(ExternalReferenceRedirectorPointer*, external_reference_redirector, NULL) \ |
355 V(bool, always_allow_natives_syntax, false) \ | 355 V(bool, always_allow_natives_syntax, false) \ |
356 /* Part of the state of liveedit. */ \ | 356 /* Part of the state of liveedit. */ \ |
357 V(FunctionInfoListener*, active_function_info_listener, NULL) \ | 357 V(FunctionInfoListener*, active_function_info_listener, NULL) \ |
358 /* State for Relocatable. */ \ | 358 /* State for Relocatable. */ \ |
359 V(Relocatable*, relocatable_top, NULL) \ | 359 V(Relocatable*, relocatable_top, NULL) \ |
360 /* State for CodeEntry in profile-generator. */ \ | |
361 V(CodeGenerator*, current_code_generator, NULL) \ | |
362 V(bool, jump_target_compiling_deferred_code, false) \ | |
363 V(DebugObjectCache*, string_stream_debug_object_cache, NULL) \ | 360 V(DebugObjectCache*, string_stream_debug_object_cache, NULL) \ |
364 V(Object*, string_stream_current_security_token, NULL) \ | 361 V(Object*, string_stream_current_security_token, NULL) \ |
365 /* TODO(isolates): Release this on destruction? */ \ | 362 /* TODO(isolates): Release this on destruction? */ \ |
366 V(int*, irregexp_interpreter_backtrack_stack_cache, NULL) \ | 363 V(int*, irregexp_interpreter_backtrack_stack_cache, NULL) \ |
367 /* Serializer state. */ \ | 364 /* Serializer state. */ \ |
368 V(ExternalReferenceTable*, external_reference_table, NULL) \ | 365 V(ExternalReferenceTable*, external_reference_table, NULL) \ |
369 /* AstNode state. */ \ | 366 /* AstNode state. */ \ |
370 V(int, ast_node_id, 0) \ | 367 V(int, ast_node_id, 0) \ |
371 V(unsigned, ast_node_count, 0) \ | 368 V(unsigned, ast_node_count, 0) \ |
372 /* SafeStackFrameIterator activations count. */ \ | 369 /* SafeStackFrameIterator activations count. */ \ |
373 V(int, safe_stack_iterator_counter, 0) \ | 370 V(int, safe_stack_iterator_counter, 0) \ |
374 V(CpuProfiler*, cpu_profiler, NULL) \ | |
375 V(HeapProfiler*, heap_profiler, NULL) \ | 371 V(HeapProfiler*, heap_profiler, NULL) \ |
376 V(bool, observer_delivery_pending, false) \ | 372 V(bool, observer_delivery_pending, false) \ |
377 V(HStatistics*, hstatistics, NULL) \ | 373 V(HStatistics*, hstatistics, NULL) \ |
378 V(HTracer*, htracer, NULL) \ | 374 V(HTracer*, htracer, NULL) \ |
379 ISOLATE_DEBUGGER_INIT_LIST(V) | 375 ISOLATE_DEBUGGER_INIT_LIST(V) |
380 | 376 |
381 class Isolate { | 377 class Isolate { |
382 // These forward declarations are required to make the friend declarations in | 378 // These forward declarations are required to make the friend declarations in |
383 // PerIsolateThreadData work on some older versions of gcc. | 379 // PerIsolateThreadData work on some older versions of gcc. |
384 class ThreadDataTable; | 380 class ThreadDataTable; |
(...skipping 587 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
972 } | 968 } |
973 Debug* debug() { | 969 Debug* debug() { |
974 if (!NoBarrier_Load(&debugger_initialized_)) InitializeDebugger(); | 970 if (!NoBarrier_Load(&debugger_initialized_)) InitializeDebugger(); |
975 return debug_; | 971 return debug_; |
976 } | 972 } |
977 #endif | 973 #endif |
978 | 974 |
979 inline bool IsDebuggerActive(); | 975 inline bool IsDebuggerActive(); |
980 inline bool DebuggerHasBreakPoints(); | 976 inline bool DebuggerHasBreakPoints(); |
981 | 977 |
| 978 CpuProfiler* cpu_profiler() const { return cpu_profiler_; } |
| 979 |
982 #ifdef DEBUG | 980 #ifdef DEBUG |
983 HistogramInfo* heap_histograms() { return heap_histograms_; } | 981 HistogramInfo* heap_histograms() { return heap_histograms_; } |
984 | 982 |
985 JSObject::SpillInformation* js_spill_information() { | 983 JSObject::SpillInformation* js_spill_information() { |
986 return &js_spill_information_; | 984 return &js_spill_information_; |
987 } | 985 } |
988 | 986 |
989 int* code_kind_statistics() { return code_kind_statistics_; } | 987 int* code_kind_statistics() { return code_kind_statistics_; } |
990 | 988 |
991 bool AllowHandleDereference(); | 989 bool AllowHandleDereference(); |
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1307 int code_kind_statistics_[Code::NUMBER_OF_KINDS]; | 1305 int code_kind_statistics_[Code::NUMBER_OF_KINDS]; |
1308 | 1306 |
1309 bool allow_compiler_thread_handle_deref_; | 1307 bool allow_compiler_thread_handle_deref_; |
1310 bool allow_execution_thread_handle_deref_; | 1308 bool allow_execution_thread_handle_deref_; |
1311 #endif | 1309 #endif |
1312 | 1310 |
1313 #ifdef ENABLE_DEBUGGER_SUPPORT | 1311 #ifdef ENABLE_DEBUGGER_SUPPORT |
1314 Debugger* debugger_; | 1312 Debugger* debugger_; |
1315 Debug* debug_; | 1313 Debug* debug_; |
1316 #endif | 1314 #endif |
| 1315 CpuProfiler* cpu_profiler_; |
1317 | 1316 |
1318 #define GLOBAL_BACKING_STORE(type, name, initialvalue) \ | 1317 #define GLOBAL_BACKING_STORE(type, name, initialvalue) \ |
1319 type name##_; | 1318 type name##_; |
1320 ISOLATE_INIT_LIST(GLOBAL_BACKING_STORE) | 1319 ISOLATE_INIT_LIST(GLOBAL_BACKING_STORE) |
1321 #undef GLOBAL_BACKING_STORE | 1320 #undef GLOBAL_BACKING_STORE |
1322 | 1321 |
1323 #define GLOBAL_ARRAY_BACKING_STORE(type, name, length) \ | 1322 #define GLOBAL_ARRAY_BACKING_STORE(type, name, length) \ |
1324 type name##_[length]; | 1323 type name##_[length]; |
1325 ISOLATE_INIT_ARRAY_LIST(GLOBAL_ARRAY_BACKING_STORE) | 1324 ISOLATE_INIT_ARRAY_LIST(GLOBAL_ARRAY_BACKING_STORE) |
1326 #undef GLOBAL_ARRAY_BACKING_STORE | 1325 #undef GLOBAL_ARRAY_BACKING_STORE |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1491 | 1490 |
1492 // Mark the native context with out of memory. | 1491 // Mark the native context with out of memory. |
1493 inline void Context::mark_out_of_memory() { | 1492 inline void Context::mark_out_of_memory() { |
1494 native_context()->set_out_of_memory(HEAP->true_value()); | 1493 native_context()->set_out_of_memory(HEAP->true_value()); |
1495 } | 1494 } |
1496 | 1495 |
1497 | 1496 |
1498 } } // namespace v8::internal | 1497 } } // namespace v8::internal |
1499 | 1498 |
1500 #endif // V8_ISOLATE_H_ | 1499 #endif // V8_ISOLATE_H_ |
OLD | NEW |