Title: [144589] trunk/Source/_javascript_Core
Revision
144589
Author
[email protected]
Date
2013-03-03 16:11:08 -0800 (Sun, 03 Mar 2013)

Log Message

Shrink JSC::HashTable entries.
<http://webkit.org/b/111275>
<rdar://problem/13333511>

Reviewed by Anders Carlsson.

Move the Intrinsic value out of the function-specific part of the union,
and store it next to m_attributes. Reduces the size of HashEntry by 8 bytes.

990 kB progression on Membuster3. (PTUS: 797 kB)

* runtime/Lookup.h:
(JSC::HashEntry::initialize):
(JSC::HashEntry::intrinsic):
(HashEntry):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (144588 => 144589)


--- trunk/Source/_javascript_Core/ChangeLog	2013-03-04 00:09:26 UTC (rev 144588)
+++ trunk/Source/_javascript_Core/ChangeLog	2013-03-04 00:11:08 UTC (rev 144589)
@@ -1,3 +1,21 @@
+2013-03-03  Andreas Kling  <[email protected]>
+
+        Shrink JSC::HashTable entries.
+        <http://webkit.org/b/111275>
+        <rdar://problem/13333511>
+
+        Reviewed by Anders Carlsson.
+
+        Move the Intrinsic value out of the function-specific part of the union,
+        and store it next to m_attributes. Reduces the size of HashEntry by 8 bytes.
+
+        990 kB progression on Membuster3. (PTUS: 797 kB)
+
+        * runtime/Lookup.h:
+        (JSC::HashEntry::initialize):
+        (JSC::HashEntry::intrinsic):
+        (HashEntry):
+
 2013-03-01  David Kilzer  <[email protected]>
 
         BUILD FIX: testapi should link to Foundation, not CoreFoundation

Modified: trunk/Source/_javascript_Core/runtime/Lookup.h (144588 => 144589)


--- trunk/Source/_javascript_Core/runtime/Lookup.h	2013-03-04 00:09:26 UTC (rev 144588)
+++ trunk/Source/_javascript_Core/runtime/Lookup.h	2013-03-04 00:11:08 UTC (rev 144589)
@@ -53,7 +53,7 @@
             m_attributes = attributes;
             m_u.store.value1 = v1;
             m_u.store.value2 = v2;
-            m_u.function.intrinsic = intrinsic;
+            m_intrinsic = intrinsic;
             m_next = 0;
         }
 
@@ -65,7 +65,7 @@
         Intrinsic intrinsic() const
         {
             ASSERT(m_attributes & Function);
-            return m_u.function.intrinsic;
+            return m_intrinsic;
         }
 
         NativeFunction function() const { ASSERT(m_attributes & Function); return m_u.function.functionValue; }
@@ -82,6 +82,7 @@
     private:
         StringImpl* m_key;
         unsigned char m_attributes; // JSObject attributes
+        Intrinsic m_intrinsic;
 
         union {
             struct {
@@ -91,7 +92,6 @@
             struct {
                 NativeFunction functionValue;
                 intptr_t length; // number of arguments for function
-                Intrinsic intrinsic;
             } function;
             struct {
                 GetFunction get;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to