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

Unified Diff: runtime/vm/isolate.cc

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: Make it build Created 5 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: runtime/vm/isolate.cc
diff --git a/runtime/vm/isolate.cc b/runtime/vm/isolate.cc
index 8c6c135dee9e623a46170ce85cabbe1c64f52f37..9994d6401cb581242145521b609a47c5f819474f 100644
--- a/runtime/vm/isolate.cc
+++ b/runtime/vm/isolate.cc
@@ -788,7 +788,8 @@ Isolate::Isolate(const Dart_IsolateFlags& api_flags)
tag_table_(GrowableObjectArray::null()),
deoptimized_code_array_(GrowableObjectArray::null()),
background_compiler_(NULL),
- background_compilation_queue_(GrowableObjectArray::null()),
+ compilation_function_queue_(GrowableObjectArray::null()),
+ compilation_code_queue_(GrowableObjectArray::null()),
pending_service_extension_calls_(GrowableObjectArray::null()),
registered_service_extension_handlers_(GrowableObjectArray::null()),
metrics_list_head_(NULL),
@@ -1769,7 +1770,10 @@ void Isolate::VisitObjectPointers(ObjectPointerVisitor* visitor,
visitor->VisitPointer(reinterpret_cast<RawObject**>(&tag_table_));
visitor->VisitPointer(reinterpret_cast<RawObject**>(
- &background_compilation_queue_));
+ &compilation_function_queue_));
+
+ visitor->VisitPointer(reinterpret_cast<RawObject**>(
+ &compilation_code_queue_));
// Visit the deoptimized code array which is stored in the isolate.
visitor->VisitPointer(
@@ -1996,9 +2000,15 @@ void Isolate::set_deoptimized_code_array(const GrowableObjectArray& value) {
}
-void Isolate::set_background_compilation_queue(
+void Isolate::set_compilation_function_queue(
+ const GrowableObjectArray& value) {
+ compilation_function_queue_ = value.raw();
+}
+
+
+void Isolate::set_compilation_code_queue(
const GrowableObjectArray& value) {
- background_compilation_queue_ = value.raw();
+ compilation_code_queue_ = value.raw();
}

Powered by Google App Engine
This is Rietveld 408576698