Title: [127348] trunk/Source/_javascript_Core
Revision
127348
Author
[email protected]
Date
2012-08-31 18:39:51 -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.

* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/JSNameScope.h:
(JSC::JSNameScope::JSNameScope):
* runtime/JSWithScope.h:
(JSC::JSWithScope::JSWithScope):
* runtime/StrictEvalActivation.cpp:
(JSC::StrictEvalActivation::StrictEvalActivation):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (127347 => 127348)


--- trunk/Source/_javascript_Core/ChangeLog	2012-09-01 01:09:02 UTC (rev 127347)
+++ trunk/Source/_javascript_Core/ChangeLog	2012-09-01 01:39:51 UTC (rev 127348)
@@ -7,6 +7,26 @@
 
             Reviewed by Sam Weinig.
 
+        * runtime/JSGlobalData.cpp:
+        (JSC::JSGlobalData::JSGlobalData):
+        * runtime/JSGlobalData.h:
+        (JSGlobalData):
+        * runtime/JSNameScope.h:
+        (JSC::JSNameScope::JSNameScope):
+        * runtime/JSWithScope.h:
+        (JSC::JSWithScope::JSWithScope):
+        * runtime/StrictEvalActivation.cpp:
+        (JSC::StrictEvalActivation::StrictEvalActivation):
+
+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.
+
         * dfg/DFGAbstractState.cpp:
         (JSC::DFG::AbstractState::execute):
         * jit/JITOpcodes.cpp:

Modified: trunk/Source/_javascript_Core/runtime/JSActivation.h (127347 => 127348)


--- trunk/Source/_javascript_Core/runtime/JSActivation.h	2012-09-01 01:09:02 UTC (rev 127347)
+++ trunk/Source/_javascript_Core/runtime/JSActivation.h	2012-09-01 01:39:51 UTC (rev 127348)
@@ -96,11 +96,11 @@
         size_t registerArraySizeInBytes();
 
         StorageBarrier m_registerArray; // Independent copy of registers, used when a variable object copies its registers out of the register file.
-        int m_numCapturedArgs;
-        int m_numCapturedVars : 30;
-        bool m_isTornOff : 1;
-        bool m_requiresDynamicChecks : 1;
-        int m_argumentsRegister;
+        unsigned m_numCapturedArgs;
+        unsigned m_numCapturedVars : 28;
+        unsigned m_isTornOff : 1;
+        unsigned m_requiresDynamicChecks : 1;
+        unsigned m_argumentsRegister : 2;
     };
 
     JSActivation* asActivation(JSValue);

Modified: trunk/Source/_javascript_Core/runtime/JSGlobalData.cpp (127347 => 127348)


--- trunk/Source/_javascript_Core/runtime/JSGlobalData.cpp	2012-09-01 01:09:02 UTC (rev 127347)
+++ trunk/Source/_javascript_Core/runtime/JSGlobalData.cpp	2012-09-01 01:39:51 UTC (rev 127348)
@@ -190,8 +190,6 @@
     debuggerActivationStructure.set(*this, DebuggerActivation::createStructure(*this, 0, jsNull()));
     interruptedExecutionErrorStructure.set(*this, InterruptedExecutionError::createStructure(*this, 0, jsNull()));
     terminatedExecutionErrorStructure.set(*this, TerminatedExecutionError::createStructure(*this, 0, jsNull()));
-    nameScopeStructure.set(*this, JSNameScope::createStructure(*this, 0, jsNull()));
-    strictEvalActivationStructure.set(*this, StrictEvalActivation::createStructure(*this, 0, jsNull()));
     stringStructure.set(*this, JSString::createStructure(*this, 0, jsNull()));
     notAnObjectStructure.set(*this, JSNotAnObject::createStructure(*this, 0, jsNull()));
     propertyNameIteratorStructure.set(*this, JSPropertyNameIterator::createStructure(*this, 0, jsNull()));
@@ -206,7 +204,6 @@
     regExpStructure.set(*this, RegExp::createStructure(*this, 0, jsNull()));
     sharedSymbolTableStructure.set(*this, SharedSymbolTable::createStructure(*this, 0, jsNull()));
     structureChainStructure.set(*this, StructureChain::createStructure(*this, 0, jsNull()));
-    withScopeStructure.set(*this, JSWithScope::createStructure(*this, 0, jsNull()));
 
     wtfThreadData().setCurrentIdentifierTable(existingEntryIdentifierTable);
 

Modified: trunk/Source/_javascript_Core/runtime/JSGlobalData.h (127347 => 127348)


--- trunk/Source/_javascript_Core/runtime/JSGlobalData.h	2012-09-01 01:09:02 UTC (rev 127347)
+++ trunk/Source/_javascript_Core/runtime/JSGlobalData.h	2012-09-01 01:39:51 UTC (rev 127348)
@@ -230,8 +230,6 @@
         Strong<Structure> debuggerActivationStructure;
         Strong<Structure> interruptedExecutionErrorStructure;
         Strong<Structure> terminatedExecutionErrorStructure;
-        Strong<Structure> nameScopeStructure;
-        Strong<Structure> strictEvalActivationStructure;
         Strong<Structure> stringStructure;
         Strong<Structure> notAnObjectStructure;
         Strong<Structure> propertyNameIteratorStructure;
@@ -246,7 +244,6 @@
         Strong<Structure> regExpStructure;
         Strong<Structure> sharedSymbolTableStructure;
         Strong<Structure> structureChainStructure;
-        Strong<Structure> withScopeStructure;
 
         IdentifierTable* identifierTable;
         CommonIdentifiers* propertyNames;

Modified: trunk/Source/_javascript_Core/runtime/JSNameScope.h (127347 => 127348)


--- trunk/Source/_javascript_Core/runtime/JSNameScope.h	2012-09-01 01:09:02 UTC (rev 127347)
+++ trunk/Source/_javascript_Core/runtime/JSNameScope.h	2012-09-01 01:39:51 UTC (rev 127348)
@@ -26,6 +26,7 @@
 #ifndef JSNameScope_h
 #define JSNameScope_h
 
+#include "JSGlobalObject.h"
 #include "JSVariableObject.h"
 
 namespace JSC {
@@ -66,7 +67,7 @@
     JSNameScope(ExecState* exec)
         : Base(
             exec->globalData(),
-            exec->globalData().nameScopeStructure.get(),
+            exec->lexicalGlobalObject()->nameScopeStructure(),
             reinterpret_cast<Register*>(&m_registerStore + 1),
             exec->lexicalGlobalObject(),
             exec->globalThisValue(),

Modified: trunk/Source/_javascript_Core/runtime/JSWithScope.h (127347 => 127348)


--- trunk/Source/_javascript_Core/runtime/JSWithScope.h	2012-09-01 01:09:02 UTC (rev 127347)
+++ trunk/Source/_javascript_Core/runtime/JSWithScope.h	2012-09-01 01:39:51 UTC (rev 127348)
@@ -26,7 +26,7 @@
 #ifndef JSWithScope_h
 #define JSWithScope_h
 
-#include "JSScope.h"
+#include "JSGlobalObject.h"
 
 namespace JSC {
 
@@ -66,7 +66,7 @@
     JSWithScope(ExecState* exec, JSObject* object)
         : Base(
             exec->globalData(),
-            exec->globalData().withScopeStructure.get(),
+            exec->lexicalGlobalObject()->withScopeStructure(),
             exec->lexicalGlobalObject(),
             exec->globalThisValue(),
             exec->scope()
@@ -78,7 +78,7 @@
     JSWithScope(ExecState* exec, JSObject* object, JSScope* next)
         : Base(
             exec->globalData(),
-            exec->globalData().withScopeStructure.get(),
+            exec->lexicalGlobalObject()->withScopeStructure(),
             exec->lexicalGlobalObject(),
             exec->globalThisValue(),
             next

Modified: trunk/Source/_javascript_Core/runtime/StrictEvalActivation.cpp (127347 => 127348)


--- trunk/Source/_javascript_Core/runtime/StrictEvalActivation.cpp	2012-09-01 01:09:02 UTC (rev 127347)
+++ trunk/Source/_javascript_Core/runtime/StrictEvalActivation.cpp	2012-09-01 01:39:51 UTC (rev 127348)
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "StrictEvalActivation.h"
 
+#include "JSGlobalObject.h"
+
 namespace JSC {
 
 ASSERT_HAS_TRIVIAL_DESTRUCTOR(StrictEvalActivation);
@@ -35,7 +37,7 @@
 StrictEvalActivation::StrictEvalActivation(ExecState* exec)
     : Base(
         exec->globalData(),
-        exec->globalData().strictEvalActivationStructure.get(),
+        exec->lexicalGlobalObject()->strictEvalActivationStructure(),
         exec->lexicalGlobalObject(),
         exec->globalThisValue(),
         exec->scope()
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to