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

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: Address comments 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
« no previous file with comments | « runtime/vm/isolate.h ('k') | runtime/vm/object.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/isolate.cc
diff --git a/runtime/vm/isolate.cc b/runtime/vm/isolate.cc
index 94ac65b86bbffa1d38d70d554b86cf8e32595805..aaef25c6f40e4431eaa25d31b2667a93085c81b4 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();
}
« no previous file with comments | « runtime/vm/isolate.h ('k') | runtime/vm/object.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698