Title: [185215] trunk/Source/_javascript_Core
Revision
185215
Author
fpi...@apple.com
Date
2015-06-04 13:50:20 -0700 (Thu, 04 Jun 2015)

Log Message

SideState should be a distinct abstract heap from Heap and Stack
https://bugs.webkit.org/show_bug.cgi?id=145653

Reviewed by Geoffrey Garen.
        
Before, SideState fit into the hierarchy like so:
        
World
   |
   +-- Stack
   |
   +-- Heap
         |
         +-- SideState
        
Now we will have:
        
World
   |
   +-- Stack
   |
   +-- Heap
   |
   +-- SideState
        
This makes it easy to ask if a writing operation wrote to anything that is observable even
if we don't exit. SideState is only observable if we exit.

* dfg/DFGAbstractHeap.h:
(JSC::DFG::AbstractHeap::AbstractHeap):
(JSC::DFG::AbstractHeap::supertype):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (185214 => 185215)


--- trunk/Source/_javascript_Core/ChangeLog	2015-06-04 20:43:20 UTC (rev 185214)
+++ trunk/Source/_javascript_Core/ChangeLog	2015-06-04 20:50:20 UTC (rev 185215)
@@ -1,3 +1,37 @@
+2015-06-04  Filip Pizlo  <fpi...@apple.com>
+
+        SideState should be a distinct abstract heap from Heap and Stack
+        https://bugs.webkit.org/show_bug.cgi?id=145653
+
+        Reviewed by Geoffrey Garen.
+        
+        Before, SideState fit into the hierarchy like so:
+        
+        World
+           |
+           +-- Stack
+           |
+           +-- Heap
+                 |
+                 +-- SideState
+        
+        Now we will have:
+        
+        World
+           |
+           +-- Stack
+           |
+           +-- Heap
+           |
+           +-- SideState
+        
+        This makes it easy to ask if a writing operation wrote to anything that is observable even
+        if we don't exit. SideState is only observable if we exit.
+
+        * dfg/DFGAbstractHeap.h:
+        (JSC::DFG::AbstractHeap::AbstractHeap):
+        (JSC::DFG::AbstractHeap::supertype):
+
 2015-06-04  Chris Dumez  <cdu...@apple.com>
 
         [WK2] Prune more resources from the MemoryCache before process suspension

Modified: trunk/Source/_javascript_Core/dfg/DFGAbstractHeap.h (185214 => 185215)


--- trunk/Source/_javascript_Core/dfg/DFGAbstractHeap.h	2015-06-04 20:43:20 UTC (rev 185214)
+++ trunk/Source/_javascript_Core/dfg/DFGAbstractHeap.h	2015-06-04 20:50:20 UTC (rev 185215)
@@ -190,7 +190,7 @@
     
     AbstractHeap(AbstractHeapKind kind, Payload payload)
     {
-        ASSERT(kind != InvalidAbstractHeap && kind != World);
+        ASSERT(kind != InvalidAbstractHeap && kind != World && kind != Heap && kind != SideState);
         m_value = encode(kind, payload);
     }
     
@@ -215,6 +215,7 @@
         case World:
             return AbstractHeap();
         case Heap:
+        case SideState:
             return World;
         default:
             if (payload().isTop()) {
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to