Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(500)

Side by Side Diff: src/isolate.h

Issue 13457002: Isolatify CPU profiler (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/heap.cc ('k') | src/isolate.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
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
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_
OLDNEW
« no previous file with comments | « src/heap.cc ('k') | src/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698