Title: [118718] trunk/Source/_javascript_Core
- Revision
- 118718
- Author
- commit-qu...@webkit.org
- Date
- 2012-05-28 20:24:49 -0700 (Mon, 28 May 2012)
Log Message
Unreviewed, rolling out r118646.
http://trac.webkit.org/changeset/118646
https://bugs.webkit.org/show_bug.cgi?id=87691
broke V8 raytrace benchmark (Requested by pizlo_ on #webkit).
Patch by Sheriff Bot <webkit.review....@gmail.com> on 2012-05-28
* heap/Heap.cpp:
(JSC::Heap::collect):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::sweep):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::sweepWeakSet):
(JSC):
* heap/MarkedSpace.cpp:
(JSC::SweepWeakSet::operator()):
(JSC):
(JSC::MarkedSpace::sweepWeakSets):
* heap/MarkedSpace.h:
(MarkedSpace):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (118717 => 118718)
--- trunk/Source/_javascript_Core/ChangeLog 2012-05-29 03:04:49 UTC (rev 118717)
+++ trunk/Source/_javascript_Core/ChangeLog 2012-05-29 03:24:49 UTC (rev 118718)
@@ -1,3 +1,25 @@
+2012-05-28 Sheriff Bot <webkit.review....@gmail.com>
+
+ Unreviewed, rolling out r118646.
+ http://trac.webkit.org/changeset/118646
+ https://bugs.webkit.org/show_bug.cgi?id=87691
+
+ broke V8 raytrace benchmark (Requested by pizlo_ on #webkit).
+
+ * heap/Heap.cpp:
+ (JSC::Heap::collect):
+ * heap/MarkedBlock.cpp:
+ (JSC::MarkedBlock::sweep):
+ * heap/MarkedBlock.h:
+ (JSC::MarkedBlock::sweepWeakSet):
+ (JSC):
+ * heap/MarkedSpace.cpp:
+ (JSC::SweepWeakSet::operator()):
+ (JSC):
+ (JSC::MarkedSpace::sweepWeakSets):
+ * heap/MarkedSpace.h:
+ (MarkedSpace):
+
2012-05-28 Filip Pizlo <fpi...@apple.com>
DFG should not generate code for code that the CFA proves to be unreachable
Modified: trunk/Source/_javascript_Core/heap/Heap.cpp (118717 => 118718)
--- trunk/Source/_javascript_Core/heap/Heap.cpp 2012-05-29 03:04:49 UTC (rev 118717)
+++ trunk/Source/_javascript_Core/heap/Heap.cpp 2012-05-29 03:24:49 UTC (rev 118718)
@@ -687,6 +687,7 @@
{
GCPHASE(FinalizeWeakHandles);
+ m_objectSpace.sweepWeakSets();
m_globalData->smallStrings.finalizeSmallStrings();
}
Modified: trunk/Source/_javascript_Core/heap/MarkedBlock.cpp (118717 => 118718)
--- trunk/Source/_javascript_Core/heap/MarkedBlock.cpp 2012-05-29 03:04:49 UTC (rev 118717)
+++ trunk/Source/_javascript_Core/heap/MarkedBlock.cpp 2012-05-29 03:24:49 UTC (rev 118718)
@@ -114,8 +114,6 @@
{
HEAP_LOG_BLOCK_STATE_TRANSITION(this);
- m_weakSet.sweep();
-
if (sweepMode == SweepOnly && !m_cellsNeedDestruction)
return FreeList();
Modified: trunk/Source/_javascript_Core/heap/MarkedBlock.h (118717 => 118718)
--- trunk/Source/_javascript_Core/heap/MarkedBlock.h 2012-05-29 03:04:49 UTC (rev 118717)
+++ trunk/Source/_javascript_Core/heap/MarkedBlock.h 2012-05-29 03:24:49 UTC (rev 118718)
@@ -133,6 +133,7 @@
void visitWeakSet(HeapRootVisitor&);
void reapWeakSet();
+ void sweepWeakSet();
// While allocating from a free list, MarkedBlock temporarily has bogus
// cell liveness data. To restore accurate cell liveness data, call one
@@ -286,6 +287,11 @@
m_weakSet.reap();
}
+ inline void MarkedBlock::sweepWeakSet()
+ {
+ m_weakSet.sweep();
+ }
+
inline void MarkedBlock::didConsumeFreeList()
{
HEAP_LOG_BLOCK_STATE_TRANSITION(this);
Modified: trunk/Source/_javascript_Core/heap/MarkedSpace.cpp (118717 => 118718)
--- trunk/Source/_javascript_Core/heap/MarkedSpace.cpp 2012-05-29 03:04:49 UTC (rev 118717)
+++ trunk/Source/_javascript_Core/heap/MarkedSpace.cpp 2012-05-29 03:24:49 UTC (rev 118718)
@@ -77,6 +77,10 @@
void operator()(MarkedBlock* block) { block->reapWeakSet(); }
};
+struct SweepWeakSet : MarkedBlock::VoidFunctor {
+ void operator()(MarkedBlock* block) { block->sweepWeakSet(); }
+};
+
MarkedSpace::MarkedSpace(Heap* heap)
: m_heap(heap)
{
@@ -138,6 +142,11 @@
forEachBlock<ReapWeakSet>();
}
+void MarkedSpace::sweepWeakSets()
+{
+ forEachBlock<SweepWeakSet>();
+}
+
void MarkedSpace::canonicalizeCellLivenessData()
{
for (size_t cellSize = preciseStep; cellSize <= preciseCutoff; cellSize += preciseStep) {
Modified: trunk/Source/_javascript_Core/heap/MarkedSpace.h (118717 => 118718)
--- trunk/Source/_javascript_Core/heap/MarkedSpace.h 2012-05-29 03:04:49 UTC (rev 118717)
+++ trunk/Source/_javascript_Core/heap/MarkedSpace.h 2012-05-29 03:24:49 UTC (rev 118718)
@@ -85,6 +85,7 @@
void visitWeakSets(HeapRootVisitor&);
void reapWeakSets();
+ void sweepWeakSets();
MarkedBlockSet& blocks() { return m_blocks; }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes