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

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

Issue 1410363005: Make ICData changes thread safe (first compute array, then set it). Install code in the main thread… (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Address comments Created 5 years, 1 month 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
« no previous file with comments | « runtime/vm/intrinsifier.cc ('k') | 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 "vm/atomic.h" 10 #include "vm/atomic.h"
(...skipping 591 matching lines...) Expand 10 before | Expand all | Expand 10 after
602 602
603 RawGrowableObjectArray* tag_table() const { return tag_table_; } 603 RawGrowableObjectArray* tag_table() const { return tag_table_; }
604 void set_tag_table(const GrowableObjectArray& value); 604 void set_tag_table(const GrowableObjectArray& value);
605 605
606 RawUserTag* current_tag() const { return current_tag_; } 606 RawUserTag* current_tag() const { return current_tag_; }
607 void set_current_tag(const UserTag& tag); 607 void set_current_tag(const UserTag& tag);
608 608
609 RawUserTag* default_tag() const { return default_tag_; } 609 RawUserTag* default_tag() const { return default_tag_; }
610 void set_default_tag(const UserTag& tag); 610 void set_default_tag(const UserTag& tag);
611 611
612 RawGrowableObjectArray* background_compilation_queue() const { 612 RawGrowableObjectArray* compilation_function_queue() const {
613 return background_compilation_queue_; 613 return compilation_function_queue_;
614 } 614 }
615 void set_background_compilation_queue(const GrowableObjectArray& value); 615 void set_compilation_function_queue(const GrowableObjectArray& value);
616
617 RawGrowableObjectArray* compilation_code_queue() const {
618 return compilation_code_queue_;
619 }
620 void set_compilation_code_queue(const GrowableObjectArray& value);
616 621
617 Metric* metrics_list_head() { 622 Metric* metrics_list_head() {
618 return metrics_list_head_; 623 return metrics_list_head_;
619 } 624 }
620 625
621 void set_metrics_list_head(Metric* metric) { 626 void set_metrics_list_head(Metric* metric) {
622 metrics_list_head_ = metric; 627 metrics_list_head_ = metric;
623 } 628 }
624 629
625 RawGrowableObjectArray* deoptimized_code_array() const { 630 RawGrowableObjectArray* deoptimized_code_array() const {
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
796 IsolateProfilerData* profiler_data_; 801 IsolateProfilerData* profiler_data_;
797 Mutex profiler_data_mutex_; 802 Mutex profiler_data_mutex_;
798 803
799 VMTagCounters vm_tag_counters_; 804 VMTagCounters vm_tag_counters_;
800 RawGrowableObjectArray* tag_table_; 805 RawGrowableObjectArray* tag_table_;
801 806
802 RawGrowableObjectArray* deoptimized_code_array_; 807 RawGrowableObjectArray* deoptimized_code_array_;
803 808
804 // Background compilation. 809 // Background compilation.
805 BackgroundCompiler* background_compiler_; 810 BackgroundCompiler* background_compiler_;
806 RawGrowableObjectArray* background_compilation_queue_; 811 RawGrowableObjectArray* compilation_function_queue_;
812 RawGrowableObjectArray* compilation_code_queue_;
807 813
808 // We use 6 list entries for each pending service extension calls. 814 // We use 6 list entries for each pending service extension calls.
809 enum { 815 enum {
810 kPendingHandlerIndex = 0, 816 kPendingHandlerIndex = 0,
811 kPendingMethodNameIndex, 817 kPendingMethodNameIndex,
812 kPendingKeysIndex, 818 kPendingKeysIndex,
813 kPendingValuesIndex, 819 kPendingValuesIndex,
814 kPendingReplyPortIndex, 820 kPendingReplyPortIndex,
815 kPendingIdIndex, 821 kPendingIdIndex,
816 kPendingEntrySize 822 kPendingEntrySize
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
1025 uint8_t* serialized_message_; 1031 uint8_t* serialized_message_;
1026 intptr_t serialized_message_len_; 1032 intptr_t serialized_message_len_;
1027 Isolate::Flags isolate_flags_; 1033 Isolate::Flags isolate_flags_;
1028 bool paused_; 1034 bool paused_;
1029 bool errors_are_fatal_; 1035 bool errors_are_fatal_;
1030 }; 1036 };
1031 1037
1032 } // namespace dart 1038 } // namespace dart
1033 1039
1034 #endif // VM_ISOLATE_H_ 1040 #endif // VM_ISOLATE_H_
OLDNEW
« no previous file with comments | « runtime/vm/intrinsifier.cc ('k') | runtime/vm/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698