Revision: 7108
Author: [email protected]
Date: Wed Mar  9 07:50:24 2011
Log: Reuse backing store of two zone lists by using Rewind(0) instead of Clear().

Review URL: http://codereview.chromium.org/6647019
http://code.google.com/p/v8/source/detail?r=7108

Modified:
 /branches/bleeding_edge/src/hydrogen.cc
 /branches/bleeding_edge/src/hydrogen.h
 /branches/bleeding_edge/src/lithium-allocator.cc

=======================================
--- /branches/bleeding_edge/src/hydrogen.cc     Wed Mar  9 07:01:16 2011
+++ /branches/bleeding_edge/src/hydrogen.cc     Wed Mar  9 07:50:24 2011
@@ -640,7 +640,7 @@
   HBasicBlock* start = blocks_[0];
   Postorder(start, &visited, &reverse_result, NULL);

-  blocks_.Clear();
+  blocks_.Rewind(0);
   int index = 0;
   for (int i = reverse_result.length() - 1; i >= 0; --i) {
     HBasicBlock* b = reverse_result[i];
=======================================
--- /branches/bleeding_edge/src/hydrogen.h      Wed Mar  9 04:37:56 2011
+++ /branches/bleeding_edge/src/hydrogen.h      Wed Mar  9 07:50:24 2011
@@ -379,7 +379,7 @@
   void ClearHistory() {
     pop_count_ = 0;
     push_count_ = 0;
-    assigned_variables_.Clear();
+    assigned_variables_.Rewind(0);
   }

   void SetValueAt(int index, HValue* value) {
=======================================
--- /branches/bleeding_edge/src/lithium-allocator.cc Mon Mar 7 03:52:36 2011 +++ /branches/bleeding_edge/src/lithium-allocator.cc Wed Mar 9 07:50:24 2011
@@ -1436,7 +1436,7 @@

 void LAllocator::AllocateRegisters() {
   ASSERT(mode_ != NONE);
-  reusable_slots_.Clear();
+  ASSERT(unhandled_live_ranges_.is_empty());

   for (int i = 0; i < live_ranges_.length(); ++i) {
     if (live_ranges_[i] != NULL) {
@@ -1448,6 +1448,7 @@
   SortUnhandled();
   ASSERT(UnhandledIsSorted());

+  ASSERT(reusable_slots_.is_empty());
   ASSERT(active_live_ranges_.is_empty());
   ASSERT(inactive_live_ranges_.is_empty());

@@ -1532,8 +1533,9 @@
     }
   }

-  active_live_ranges_.Clear();
-  inactive_live_ranges_.Clear();
+  reusable_slots_.Rewind(0);
+  active_live_ranges_.Rewind(0);
+  inactive_live_ranges_.Rewind(0);
 }


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to