[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

mjs mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:30:59 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 8db9c9ace0b5f4584cca8fc21c3099deea1f97b7
Author: mjs <mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Aug 13 07:39:10 2002 +0000

    	Small speed improvement. 3% faster on cvs-js-performance, no
    	measurable change on cvs-static-urls.
    
            * kjs/collector.cpp:
            (Collector::collect): Combine 3 loops over all objects into one,
    	to reduce flat time and improve locality of reference.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1806 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/JavaScriptCore/ChangeLog b/JavaScriptCore/ChangeLog
index 8f69ec1..1371db5 100644
--- a/JavaScriptCore/ChangeLog
+++ b/JavaScriptCore/ChangeLog
@@ -1,3 +1,12 @@
+2002-08-13  Maciej Stachowiak  <mjs at apple.com>
+
+	Small speed improvement. 3% faster on cvs-js-performance, no
+	measurable change on cvs-static-urls.
+	
+        * kjs/collector.cpp:
+        (Collector::collect): Combine 3 loops over all objects into one,
+	to reduce flat time and improve locality of reference.
+
 2002-08-12  Darin Adler  <darin at apple.com>
 
 	Speed improvements. 19% faster on cvs-js-performance, 1% on cvs-static-urls.
diff --git a/JavaScriptCore/ChangeLog-2002-12-03 b/JavaScriptCore/ChangeLog-2002-12-03
index 8f69ec1..1371db5 100644
--- a/JavaScriptCore/ChangeLog-2002-12-03
+++ b/JavaScriptCore/ChangeLog-2002-12-03
@@ -1,3 +1,12 @@
+2002-08-13  Maciej Stachowiak  <mjs at apple.com>
+
+	Small speed improvement. 3% faster on cvs-js-performance, no
+	measurable change on cvs-static-urls.
+	
+        * kjs/collector.cpp:
+        (Collector::collect): Combine 3 loops over all objects into one,
+	to reduce flat time and improve locality of reference.
+
 2002-08-12  Darin Adler  <darin at apple.com>
 
 	Speed improvements. 19% faster on cvs-js-performance, 1% on cvs-static-urls.
diff --git a/JavaScriptCore/ChangeLog-2003-10-25 b/JavaScriptCore/ChangeLog-2003-10-25
index 8f69ec1..1371db5 100644
--- a/JavaScriptCore/ChangeLog-2003-10-25
+++ b/JavaScriptCore/ChangeLog-2003-10-25
@@ -1,3 +1,12 @@
+2002-08-13  Maciej Stachowiak  <mjs at apple.com>
+
+	Small speed improvement. 3% faster on cvs-js-performance, no
+	measurable change on cvs-static-urls.
+	
+        * kjs/collector.cpp:
+        (Collector::collect): Combine 3 loops over all objects into one,
+	to reduce flat time and improve locality of reference.
+
 2002-08-12  Darin Adler  <darin at apple.com>
 
 	Speed improvements. 19% faster on cvs-js-performance, 1% on cvs-static-urls.
diff --git a/JavaScriptCore/kjs/collector.cpp b/JavaScriptCore/kjs/collector.cpp
index 7da005c..bcb78be 100644
--- a/JavaScriptCore/kjs/collector.cpp
+++ b/JavaScriptCore/kjs/collector.cpp
@@ -207,6 +207,7 @@ bool Collector::collect()
   block = root;
   while (block) {
     ValueImp **r = (ValueImp**)block->mem;
+      int del = 0;
     for (int i = 0; i < block->size; i++, r++) {
       ValueImp *imp = (*r);
       // Can delete if refcount==0, created==true, gcAllowed==true, and marked==false
@@ -217,17 +218,6 @@ bool Collector::collect()
         //fprintf( stderr, "Collector::deleting ValueImp %p (%s)\n", (void*)imp, typeid(*imp).name());
         imp->~ValueImp();
       }
-    }
-    block = block->next;
-  }
-
-  // 2nd step: free memory
-  block = root;
-  while (block) {
-    ValueImp **r = (ValueImp**)block->mem;
-    int del = 0;
-    for (int i = 0; i < block->size; i++, r++) {
-      ValueImp *imp = (*r);
       if (imp && (imp->_flags & ValueImp::VI_DESTRUCTED) != 0) {
 	free(imp);
         *r = 0L;
@@ -236,14 +226,8 @@ bool Collector::collect()
     }
     filled -= del;
     block->filled -= del;
-    block = block->next;
     if (del)
       deleted = true;
-  }
-
-  // delete the empty containers
-  block = root;
-  while (block) {
     CollectorBlock *next = block->next;
     if (block->filled == 0) {
       if (block->prev)
@@ -259,6 +243,7 @@ bool Collector::collect()
     }
     block = next;
   }
+
 #if 0
   // This is useful to track down memory leaks
   static int s_count = 0;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list