OLD | NEW |
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 819 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
830 Monitor* pause_loop_monitor_; | 830 Monitor* pause_loop_monitor_; |
831 | 831 |
832 // Invalidation generations; used to track events occuring in parallel | 832 // Invalidation generations; used to track events occuring in parallel |
833 // to background compilation. The counters may overflow, which is OK | 833 // to background compilation. The counters may overflow, which is OK |
834 // since we check for equality to detect if an event occured. | 834 // since we check for equality to detect if an event occured. |
835 uint32_t cha_invalidation_gen_; | 835 uint32_t cha_invalidation_gen_; |
836 uint32_t field_invalidation_gen_; | 836 uint32_t field_invalidation_gen_; |
837 uint32_t prefix_invalidation_gen_; | 837 uint32_t prefix_invalidation_gen_; |
838 | 838 |
839 // Protect access to boxed_field_list_. | 839 // Protect access to boxed_field_list_. |
840 Monitor* boxed_field_list_monitor_; | 840 Mutex* boxed_field_list_mutex_; |
841 // List of fields that became boxed and that trigger deoptimization. | 841 // List of fields that became boxed and that trigger deoptimization. |
842 RawGrowableObjectArray* boxed_field_list_; | 842 RawGrowableObjectArray* boxed_field_list_; |
843 | 843 |
844 // This guards spawn_count_. An isolate cannot complete shutdown and be | 844 // This guards spawn_count_. An isolate cannot complete shutdown and be |
845 // destroyed while there are child isolates in the midst of a spawn. | 845 // destroyed while there are child isolates in the midst of a spawn. |
846 Monitor* spawn_count_monitor_; | 846 Monitor* spawn_count_monitor_; |
847 intptr_t spawn_count_; | 847 intptr_t spawn_count_; |
848 | 848 |
849 #define ISOLATE_METRIC_VARIABLE(type, variable, name, unit) \ | 849 #define ISOLATE_METRIC_VARIABLE(type, variable, name, unit) \ |
850 type metric_##variable##_; | 850 type metric_##variable##_; |
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1017 intptr_t* spawn_count_; | 1017 intptr_t* spawn_count_; |
1018 | 1018 |
1019 Dart_IsolateFlags isolate_flags_; | 1019 Dart_IsolateFlags isolate_flags_; |
1020 bool paused_; | 1020 bool paused_; |
1021 bool errors_are_fatal_; | 1021 bool errors_are_fatal_; |
1022 }; | 1022 }; |
1023 | 1023 |
1024 } // namespace dart | 1024 } // namespace dart |
1025 | 1025 |
1026 #endif // VM_ISOLATE_H_ | 1026 #endif // VM_ISOLATE_H_ |
OLD | NEW |