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

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

Issue 2715213008: VM: Allow configuring use_field_guards on the per-isolate basis and include it into snapshot featur… (Closed)
Patch Set: Done Created 3 years, 9 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
« no previous file with comments | « runtime/vm/flow_graph_compiler.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 RUNTIME_VM_ISOLATE_H_ 5 #ifndef RUNTIME_VM_ISOLATE_H_
6 #define RUNTIME_VM_ISOLATE_H_ 6 #define RUNTIME_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 620 matching lines...) Expand 10 before | Expand all | Expand 10 after
631 // Isolate-specific flag handling. 631 // Isolate-specific flag handling.
632 static void FlagsInitialize(Dart_IsolateFlags* api_flags); 632 static void FlagsInitialize(Dart_IsolateFlags* api_flags);
633 void FlagsCopyTo(Dart_IsolateFlags* api_flags) const; 633 void FlagsCopyTo(Dart_IsolateFlags* api_flags) const;
634 void FlagsCopyFrom(const Dart_IsolateFlags& api_flags); 634 void FlagsCopyFrom(const Dart_IsolateFlags& api_flags);
635 635
636 #if defined(PRODUCT) 636 #if defined(PRODUCT)
637 bool type_checks() const { return FLAG_enable_type_checks; } 637 bool type_checks() const { return FLAG_enable_type_checks; }
638 bool asserts() const { return FLAG_enable_asserts; } 638 bool asserts() const { return FLAG_enable_asserts; }
639 bool error_on_bad_type() const { return FLAG_error_on_bad_type; } 639 bool error_on_bad_type() const { return FLAG_error_on_bad_type; }
640 bool error_on_bad_override() const { return FLAG_error_on_bad_override; } 640 bool error_on_bad_override() const { return FLAG_error_on_bad_override; }
641 bool use_field_guards() const { return FLAG_use_field_guards; }
641 #else // defined(PRODUCT) 642 #else // defined(PRODUCT)
642 bool type_checks() const { return type_checks_; } 643 bool type_checks() const { return type_checks_; }
643 bool asserts() const { return asserts_; } 644 bool asserts() const { return asserts_; }
644 bool error_on_bad_type() const { return error_on_bad_type_; } 645 bool error_on_bad_type() const { return error_on_bad_type_; }
645 bool error_on_bad_override() const { return error_on_bad_override_; } 646 bool error_on_bad_override() const { return error_on_bad_override_; }
647 bool use_field_guards() const { return use_field_guards_; }
646 #endif // defined(PRODUCT) 648 #endif // defined(PRODUCT)
647 649
648 static void KillAllIsolates(LibMsgId msg_id); 650 static void KillAllIsolates(LibMsgId msg_id);
649 static void KillIfExists(Isolate* isolate, LibMsgId msg_id); 651 static void KillIfExists(Isolate* isolate, LibMsgId msg_id);
650 652
651 static void DisableIsolateCreation(); 653 static void DisableIsolateCreation();
652 static void EnableIsolateCreation(); 654 static void EnableIsolateCreation();
653 static bool IsolateCreationEnabled(); 655 static bool IsolateCreationEnabled();
654 656
655 void StopBackgroundCompiler(); 657 void StopBackgroundCompiler();
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
765 DeoptContext* deopt_context_; 767 DeoptContext* deopt_context_;
766 768
767 bool is_service_isolate_; 769 bool is_service_isolate_;
768 770
769 // Isolate-specific flags. 771 // Isolate-specific flags.
770 #if !defined(PRODUCT) 772 #if !defined(PRODUCT)
771 bool type_checks_; 773 bool type_checks_;
772 bool asserts_; 774 bool asserts_;
773 bool error_on_bad_type_; 775 bool error_on_bad_type_;
774 bool error_on_bad_override_; 776 bool error_on_bad_override_;
777 bool use_field_guards_;
775 #endif // !defined(PRODUCT) 778 #endif // !defined(PRODUCT)
776 779
777 // Timestamps of last operation via service. 780 // Timestamps of last operation via service.
778 int64_t last_allocationprofile_accumulator_reset_timestamp_; 781 int64_t last_allocationprofile_accumulator_reset_timestamp_;
779 int64_t last_allocationprofile_gc_timestamp_; 782 int64_t last_allocationprofile_gc_timestamp_;
780 783
781 // Ring buffer of objects assigned an id. 784 // Ring buffer of objects assigned an id.
782 ObjectIdRing* object_id_ring_; 785 ObjectIdRing* object_id_ring_;
783 786
784 VMTagCounters vm_tag_counters_; 787 VMTagCounters vm_tag_counters_;
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
1014 intptr_t* spawn_count_; 1017 intptr_t* spawn_count_;
1015 1018
1016 Dart_IsolateFlags isolate_flags_; 1019 Dart_IsolateFlags isolate_flags_;
1017 bool paused_; 1020 bool paused_;
1018 bool errors_are_fatal_; 1021 bool errors_are_fatal_;
1019 }; 1022 };
1020 1023
1021 } // namespace dart 1024 } // namespace dart
1022 1025
1023 #endif // RUNTIME_VM_ISOLATE_H_ 1026 #endif // RUNTIME_VM_ISOLATE_H_
OLDNEW
« no previous file with comments | « runtime/vm/flow_graph_compiler.cc ('k') | runtime/vm/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698