Title: [127338] trunk/Source/_javascript_Core
Revision
127338
Author
[email protected]
Date
2012-08-31 17:08:18 -0700 (Fri, 31 Aug 2012)

Log Message

Rolled back in a piece of <http://trac.webkit.org/changeset/127293>.

    Shrink activation objects by half
    https://bugs.webkit.org/show_bug.cgi?id=95591

    Reviewed by Sam Weinig.

* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::MarkedBlock):
* heap/MarkedBlock.h:
(MarkedBlock):
(JSC::MarkedBlock::globalData):
(JSC):
* heap/WeakSet.cpp:
(JSC::WeakSet::addAllocator):
* heap/WeakSet.h:
(WeakSet):
(JSC::WeakSet::WeakSet):
(JSC::WeakSet::globalData):
* runtime/JSGlobalData.h:
(JSC::WeakSet::heap):
(JSC):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (127337 => 127338)


--- trunk/Source/_javascript_Core/ChangeLog	2012-08-31 23:49:17 UTC (rev 127337)
+++ trunk/Source/_javascript_Core/ChangeLog	2012-09-01 00:08:18 UTC (rev 127338)
@@ -1,3 +1,28 @@
+2012-08-31  Geoffrey Garen  <[email protected]>
+
+        Rolled back in a piece of <http://trac.webkit.org/changeset/127293>.
+
+            Shrink activation objects by half
+            https://bugs.webkit.org/show_bug.cgi?id=95591
+
+            Reviewed by Sam Weinig.
+
+        * heap/MarkedBlock.cpp:
+        (JSC::MarkedBlock::MarkedBlock):
+        * heap/MarkedBlock.h:
+        (MarkedBlock):
+        (JSC::MarkedBlock::globalData):
+        (JSC):
+        * heap/WeakSet.cpp:
+        (JSC::WeakSet::addAllocator):
+        * heap/WeakSet.h:
+        (WeakSet):
+        (JSC::WeakSet::WeakSet):
+        (JSC::WeakSet::globalData):
+        * runtime/JSGlobalData.h:
+        (JSC::WeakSet::heap):
+        (JSC):
+
 2012-08-31  Mark Lam  <[email protected]>
 
         Refactor LLInt and supporting code in preparation for the C Loop backend.

Modified: trunk/Source/_javascript_Core/heap/MarkedBlock.cpp (127337 => 127338)


--- trunk/Source/_javascript_Core/heap/MarkedBlock.cpp	2012-08-31 23:49:17 UTC (rev 127337)
+++ trunk/Source/_javascript_Core/heap/MarkedBlock.cpp	2012-09-01 00:08:18 UTC (rev 127338)
@@ -45,7 +45,7 @@
     , m_cellsNeedDestruction(cellsNeedDestruction)
     , m_onlyContainsStructures(onlyContainsStructures)
     , m_state(New) // All cells start out unmarked.
-    , m_weakSet(heap)
+    , m_weakSet(heap->globalData())
 {
     ASSERT(heap);
     HEAP_LOG_BLOCK_STATE_TRANSITION(this);

Modified: trunk/Source/_javascript_Core/heap/MarkedBlock.h (127337 => 127338)


--- trunk/Source/_javascript_Core/heap/MarkedBlock.h	2012-08-31 23:49:17 UTC (rev 127337)
+++ trunk/Source/_javascript_Core/heap/MarkedBlock.h	2012-09-01 00:08:18 UTC (rev 127338)
@@ -121,6 +121,7 @@
         void lastChanceToFinalize();
 
         Heap* heap() const;
+        JSGlobalData* globalData() const;
         WeakSet& weakSet();
         
         enum SweepMode { SweepOnly, SweepToFreeList };
@@ -262,6 +263,11 @@
         return m_weakSet.heap();
     }
 
+    inline JSGlobalData* MarkedBlock::globalData() const
+    {
+        return m_weakSet.globalData();
+    }
+
     inline WeakSet& MarkedBlock::weakSet()
     {
         return m_weakSet;

Modified: trunk/Source/_javascript_Core/heap/WeakSet.cpp (127337 => 127338)


--- trunk/Source/_javascript_Core/heap/WeakSet.cpp	2012-08-31 23:49:17 UTC (rev 127337)
+++ trunk/Source/_javascript_Core/heap/WeakSet.cpp	2012-09-01 00:08:18 UTC (rev 127338)
@@ -27,6 +27,7 @@
 #include "WeakSet.h"
 
 #include "Heap.h"
+#include "JSGlobalData.h"
 
 namespace JSC {
 
@@ -73,7 +74,7 @@
 WeakBlock::FreeCell* WeakSet::addAllocator()
 {
     WeakBlock* block = WeakBlock::create();
-    m_heap->didAllocate(WeakBlock::blockSize);
+    heap()->didAllocate(WeakBlock::blockSize);
     m_blocks.append(block);
     WeakBlock::SweepResult sweepResult = block->takeSweepResult();
     ASSERT(!sweepResult.isNull() && sweepResult.freeList);

Modified: trunk/Source/_javascript_Core/heap/WeakSet.h (127337 => 127338)


--- trunk/Source/_javascript_Core/heap/WeakSet.h	2012-08-31 23:49:17 UTC (rev 127337)
+++ trunk/Source/_javascript_Core/heap/WeakSet.h	2012-09-01 00:08:18 UTC (rev 127338)
@@ -38,11 +38,12 @@
     static WeakImpl* allocate(JSValue, WeakHandleOwner* = 0, void* context = 0);
     static void deallocate(WeakImpl*);
 
-    WeakSet(Heap*);
+    WeakSet(JSGlobalData*);
     ~WeakSet();
     void lastChanceToFinalize();
 
     Heap* heap() const;
+    JSGlobalData* globalData() const;
 
     bool isEmpty() const;
 
@@ -61,19 +62,19 @@
     WeakBlock::FreeCell* m_allocator;
     WeakBlock* m_nextAllocator;
     DoublyLinkedList<WeakBlock> m_blocks;
-    Heap* m_heap;
+    JSGlobalData* m_globalData;
 };
 
-inline WeakSet::WeakSet(Heap* heap)
+inline WeakSet::WeakSet(JSGlobalData* globalData)
     : m_allocator(0)
     , m_nextAllocator(0)
-    , m_heap(heap)
+    , m_globalData(globalData)
 {
 }
 
-inline Heap* WeakSet::heap() const
+inline JSGlobalData* WeakSet::globalData() const
 {
-    return m_heap;
+    return m_globalData;
 }
 
 inline bool WeakSet::isEmpty() const

Modified: trunk/Source/_javascript_Core/runtime/JSGlobalData.h (127337 => 127338)


--- trunk/Source/_javascript_Core/runtime/JSGlobalData.h	2012-08-31 23:49:17 UTC (rev 127337)
+++ trunk/Source/_javascript_Core/runtime/JSGlobalData.h	2012-09-01 00:08:18 UTC (rev 127338)
@@ -474,6 +474,11 @@
     }
 #endif
 
+    inline Heap* WeakSet::heap() const
+    {
+        return &m_globalData->heap;
+    }
+
 } // namespace JSC
 
 #endif // JSGlobalData_h
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to