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

Unified Diff: runtime/vm/isolate.cc

Issue 1024063003: Eliminate fake-Isolate workaround from concurrent sweeper. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/isolate.h ('k') | runtime/vm/pages.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/isolate.cc
===================================================================
--- runtime/vm/isolate.cc (revision 44565)
+++ runtime/vm/isolate.cc (working copy)
@@ -600,65 +600,6 @@
set_user_tag(UserTags::kDefaultUserTag);
}
-Isolate::Isolate(Isolate* original)
- : vm_tag_(0),
- store_buffer_(true),
- class_table_(original->class_table()),
- message_notify_callback_(NULL),
- name_(NULL),
- start_time_(OS::GetCurrentTimeMicros()),
- main_port_(0),
- pause_capability_(0),
- terminate_capability_(0),
- errors_fatal_(true),
- heap_(NULL),
- object_store_(NULL),
- top_exit_frame_info_(0),
- init_callback_data_(NULL),
- environment_callback_(NULL),
- library_tag_handler_(NULL),
- api_state_(NULL),
- stub_code_(NULL),
- debugger_(NULL),
- single_step_(false),
- resume_request_(false),
- random_(),
- simulator_(NULL),
- long_jump_base_(NULL),
- timer_list_(),
- deopt_id_(0),
- mutex_(new Mutex()),
- stack_limit_(0),
- saved_stack_limit_(0),
- stack_overflow_flags_(0),
- stack_overflow_count_(0),
- message_handler_(NULL),
- spawn_state_(NULL),
- is_runnable_(false),
- gc_prologue_callback_(NULL),
- gc_epilogue_callback_(NULL),
- defer_finalization_count_(0),
- deopt_context_(NULL),
- is_service_isolate_(false),
- log_(new class Log()),
- stacktrace_(NULL),
- stack_frame_index_(-1),
- last_allocationprofile_accumulator_reset_timestamp_(0),
- last_allocationprofile_gc_timestamp_(0),
- cha_(NULL),
- object_id_ring_(NULL),
- trace_buffer_(NULL),
- profiler_data_(NULL),
- thread_state_(NULL),
- tag_table_(GrowableObjectArray::null()),
- current_tag_(UserTag::null()),
- default_tag_(UserTag::null()),
- metrics_list_head_(NULL),
- next_(NULL),
- REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_INITIALIZERS)
- REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_SCOPE_INIT)
- reusable_handles_() {
-}
#undef REUSABLE_HANDLE_SCOPE_INIT
#undef REUSABLE_HANDLE_INITIALIZERS
@@ -1365,6 +1306,17 @@
void Isolate::Shutdown() {
ASSERT(this == Isolate::Current());
ASSERT(top_resource() == NULL);
+
+ // Remove this isolate from the list *before* we start tearing it down, to
+ // avoid exposing it in a state of decay.
+ RemoveIsolateFromList(this);
+
+ // Create an area where we do have a zone and a handle scope so that we can
+ // call VM functions while tearing this isolate down.
+ {
+ StackZone stack_zone(this);
+ HandleScope handle_scope(this);
+
#if defined(DEBUG)
if (heap_ != NULL) {
// Wait for concurrent GC tasks to finish before final verification.
@@ -1378,16 +1330,6 @@
}
#endif // DEBUG
- // Remove this isolate from the list *before* we start tearing it down, to
- // avoid exposing it in a state of decay.
- RemoveIsolateFromList(this);
-
- // Create an area where we do have a zone and a handle scope so that we can
- // call VM functions while tearing this isolate down.
- {
- StackZone stack_zone(this);
- HandleScope handle_scope(this);
-
// Notify exit listeners that this isolate is shutting down.
if (object_store() != NULL) {
NotifyExitListeners();
@@ -1431,11 +1373,6 @@
}
-Isolate* Isolate::ShallowCopy() {
- return new Isolate(this);
-}
-
-
Dart_IsolateCreateCallback Isolate::create_callback_ = NULL;
Dart_IsolateInterruptCallback Isolate::interrupt_callback_ = NULL;
Dart_IsolateUnhandledExceptionCallback
« no previous file with comments | « runtime/vm/isolate.h ('k') | runtime/vm/pages.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698