DFGStoreBarrierElisionPhase should should GCState directly instead of m_gcClobberSet...
authormhahnenberg@apple.com <mhahnenberg@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 5 Mar 2014 17:43:57 +0000 (17:43 +0000)
committermhahnenberg@apple.com <mhahnenberg@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 5 Mar 2014 17:43:57 +0000 (17:43 +0000)
https://bugs.webkit.org/show_bug.cgi?id=129717

Reviewed by Filip Pizlo.

* dfg/DFGStoreBarrierElisionPhase.cpp:
(JSC::DFG::StoreBarrierElisionPhase::StoreBarrierElisionPhase):
(JSC::DFG::StoreBarrierElisionPhase::couldCauseGC):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165112 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/dfg/DFGStoreBarrierElisionPhase.cpp

index 0215c69..57255c6 100644 (file)
@@ -1,5 +1,16 @@
 2014-03-05  Mark Hahnenberg  <mhahnenberg@apple.com>
 
+        DFGStoreBarrierElisionPhase should should GCState directly instead of m_gcClobberSet when calling writesOverlap()
+        https://bugs.webkit.org/show_bug.cgi?id=129717
+
+        Reviewed by Filip Pizlo.
+
+        * dfg/DFGStoreBarrierElisionPhase.cpp:
+        (JSC::DFG::StoreBarrierElisionPhase::StoreBarrierElisionPhase):
+        (JSC::DFG::StoreBarrierElisionPhase::couldCauseGC):
+
+2014-03-05  Mark Hahnenberg  <mhahnenberg@apple.com>
+
         Use range-based loops where possible in Heap methods
         https://bugs.webkit.org/show_bug.cgi?id=129513
 
index 3bea161..4217552 100644 (file)
@@ -29,7 +29,7 @@
 #if ENABLE(DFG_JIT)
 
 #include "DFGBasicBlock.h"
-#include "DFGClobberSet.h"
+#include "DFGClobberize.h"
 #include "DFGGraph.h"
 #include "DFGPhase.h"
 #include "JSCInlines.h"
@@ -44,7 +44,6 @@ public:
         , m_currentBlock(0)
         , m_currentIndex(0)
     {
-        m_gcClobberSet.add(GCState);
     }
 
     bool run()
@@ -61,7 +60,7 @@ public:
 private:
     bool couldCauseGC(Node* node)
     {
-        return writesOverlap(m_graph, node, m_gcClobberSet);
+        return writesOverlap(m_graph, node, GCState);
     }
 
     bool allocatesFreshObject(Node* node)
@@ -139,7 +138,6 @@ private:
         return true;
     }
 
-    ClobberSet m_gcClobberSet;
     BasicBlock* m_currentBlock;
     unsigned m_currentIndex;
 };