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

Side by Side Diff: runtime/vm/gc_marker.cc

Issue 1660063002: Remove many features when building product mode (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 10 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
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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 #include "vm/gc_marker.h" 5 #include "vm/gc_marker.h"
6 6
7 #include <map> 7 #include <map>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 544 matching lines...) Expand 10 before | Expand all | Expand 10 after
555 if (raw_obj->IsOldObject() && !raw_obj->IsMarked()) { 555 if (raw_obj->IsOldObject() && !raw_obj->IsMarked()) {
556 // Object has become garbage. Replace it will null. 556 // Object has become garbage. Replace it will null.
557 *current = Object::null(); 557 *current = Object::null();
558 } 558 }
559 } 559 }
560 } 560 }
561 }; 561 };
562 562
563 563
564 void GCMarker::ProcessObjectIdTable(Isolate* isolate) { 564 void GCMarker::ProcessObjectIdTable(Isolate* isolate) {
565 #ifndef PRODUCT
rmacnak 2016/02/04 21:26:41 + FLAG_support_service
Cutch 2016/02/04 22:12:52 Done.
565 ObjectIdRingClearPointerVisitor visitor(isolate); 566 ObjectIdRingClearPointerVisitor visitor(isolate);
566 ObjectIdRing* ring = isolate->object_id_ring(); 567 ObjectIdRing* ring = isolate->object_id_ring();
567 ASSERT(ring != NULL); 568 ASSERT(ring != NULL);
568 ring->VisitPointers(&visitor); 569 ring->VisitPointers(&visitor);
570 #endif // !PRODUCT
569 } 571 }
570 572
571 573
572 class MarkTask : public ThreadPool::Task { 574 class MarkTask : public ThreadPool::Task {
573 public: 575 public:
574 MarkTask(GCMarker* marker, 576 MarkTask(GCMarker* marker,
575 Isolate* isolate, 577 Isolate* isolate,
576 Heap* heap, 578 Heap* heap,
577 PageSpace* page_space, 579 PageSpace* page_space,
578 MarkingStack* marking_stack, 580 MarkingStack* marking_stack,
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
742 barrier.Exit(); 744 barrier.Exit();
743 } 745 }
744 delay_set.ClearReferences(); 746 delay_set.ClearReferences();
745 ProcessWeakTables(page_space); 747 ProcessWeakTables(page_space);
746 ProcessObjectIdTable(isolate); 748 ProcessObjectIdTable(isolate);
747 } 749 }
748 Epilogue(isolate, invoke_api_callbacks); 750 Epilogue(isolate, invoke_api_callbacks);
749 } 751 }
750 752
751 } // namespace dart 753 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698