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

Side by Side Diff: runtime/vm/isolate.h

Issue 327803003: Provide the isolate with a trace buffer, but do not allocate one by default. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 6 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 | « no previous file | runtime/vm/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 (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_ISOLATE_H_ 5 #ifndef VM_ISOLATE_H_
6 #define VM_ISOLATE_H_ 6 #define VM_ISOLATE_H_
7 7
8 #include "include/dart_api.h" 8 #include "include/dart_api.h"
9 #include "platform/assert.h" 9 #include "platform/assert.h"
10 #include "platform/thread.h" 10 #include "platform/thread.h"
11 #include "vm/base_isolate.h" 11 #include "vm/base_isolate.h"
12 #include "vm/class_table.h" 12 #include "vm/class_table.h"
13 #include "vm/handles.h" 13 #include "vm/handles.h"
14 #include "vm/megamorphic_cache_table.h" 14 #include "vm/megamorphic_cache_table.h"
15 #include "vm/random.h" 15 #include "vm/random.h"
16 #include "vm/store_buffer.h" 16 #include "vm/store_buffer.h"
17 #include "vm/tags.h" 17 #include "vm/tags.h"
18 #include "vm/trace_buffer.h"
18 #include "vm/timer.h" 19 #include "vm/timer.h"
19 20
20 namespace dart { 21 namespace dart {
21 22
22 // Forward declarations. 23 // Forward declarations.
23 class AbstractType; 24 class AbstractType;
24 class ApiState; 25 class ApiState;
25 class Array; 26 class Array;
26 class Class; 27 class Class;
27 class Code; 28 class Code;
(...skipping 411 matching lines...) Expand 10 before | Expand all | Expand 10 after
439 return entropy_source_callback_; 440 return entropy_source_callback_;
440 } 441 }
441 442
442 void set_object_id_ring(ObjectIdRing* ring) { 443 void set_object_id_ring(ObjectIdRing* ring) {
443 object_id_ring_ = ring; 444 object_id_ring_ = ring;
444 } 445 }
445 ObjectIdRing* object_id_ring() { 446 ObjectIdRing* object_id_ring() {
446 return object_id_ring_; 447 return object_id_ring_;
447 } 448 }
448 449
450 void set_trace_buffer(TraceBuffer* buffer) {
451 trace_buffer_ = buffer;
452 }
453 TraceBuffer* trace_buffer() {
454 return trace_buffer_;
455 }
456
449 DeoptContext* deopt_context() const { return deopt_context_; } 457 DeoptContext* deopt_context() const { return deopt_context_; }
450 void set_deopt_context(DeoptContext* value) { 458 void set_deopt_context(DeoptContext* value) {
451 ASSERT(value == NULL || deopt_context_ == NULL); 459 ASSERT(value == NULL || deopt_context_ == NULL);
452 deopt_context_ = value; 460 deopt_context_ = value;
453 } 461 }
454 462
455 intptr_t BlockClassFinalization() { 463 intptr_t BlockClassFinalization() {
456 ASSERT(defer_finalization_count_ >= 0); 464 ASSERT(defer_finalization_count_ >= 0);
457 return defer_finalization_count_++; 465 return defer_finalization_count_++;
458 } 466 }
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
590 598
591 // Status support. 599 // Status support.
592 char* stacktrace_; 600 char* stacktrace_;
593 intptr_t stack_frame_index_; 601 intptr_t stack_frame_index_;
594 602
595 bool cha_used_; 603 bool cha_used_;
596 604
597 // Ring buffer of objects assigned an id. 605 // Ring buffer of objects assigned an id.
598 ObjectIdRing* object_id_ring_; 606 ObjectIdRing* object_id_ring_;
599 607
608 // Trace buffer support.
609 TraceBuffer* trace_buffer_;
610
600 IsolateProfilerData* profiler_data_; 611 IsolateProfilerData* profiler_data_;
601 Mutex profiler_data_mutex_; 612 Mutex profiler_data_mutex_;
602 InterruptableThreadState* thread_state_; 613 InterruptableThreadState* thread_state_;
603 614
604 VMTagCounters vm_tag_counters_; 615 VMTagCounters vm_tag_counters_;
605 uword user_tag_; 616 uword user_tag_;
606 RawGrowableObjectArray* tag_table_; 617 RawGrowableObjectArray* tag_table_;
607 RawUserTag* current_tag_; 618 RawUserTag* current_tag_;
608 619
609 // Isolate list next pointer. 620 // Isolate list next pointer.
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
740 char* script_url_; 751 char* script_url_;
741 char* library_url_; 752 char* library_url_;
742 char* class_name_; 753 char* class_name_;
743 char* function_name_; 754 char* function_name_;
744 char* exception_callback_name_; 755 char* exception_callback_name_;
745 }; 756 };
746 757
747 } // namespace dart 758 } // namespace dart
748 759
749 #endif // VM_ISOLATE_H_ 760 #endif // VM_ISOLATE_H_
OLDNEW
« no previous file with comments | « no previous file | runtime/vm/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698