Title: [233626] trunk/Source/_javascript_Core
Revision
233626
Author
[email protected]
Date
2018-07-08 05:29:08 -0700 (Sun, 08 Jul 2018)

Log Message

[JSC] Optimize layout of SourceProvider to reduce padding
https://bugs.webkit.org/show_bug.cgi?id=187440

Reviewed by Mark Lam.

Arrange members of SourceProvider to reduce the size from 80 to 72.

* parser/SourceProvider.cpp:
(JSC::SourceProvider::SourceProvider):
* parser/SourceProvider.h:

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (233625 => 233626)


--- trunk/Source/_javascript_Core/ChangeLog	2018-07-08 09:54:51 UTC (rev 233625)
+++ trunk/Source/_javascript_Core/ChangeLog	2018-07-08 12:29:08 UTC (rev 233626)
@@ -1,3 +1,16 @@
+2018-07-07  Yusuke Suzuki  <[email protected]>
+
+        [JSC] Optimize layout of SourceProvider to reduce padding
+        https://bugs.webkit.org/show_bug.cgi?id=187440
+
+        Reviewed by Mark Lam.
+
+        Arrange members of SourceProvider to reduce the size from 80 to 72.
+
+        * parser/SourceProvider.cpp:
+        (JSC::SourceProvider::SourceProvider):
+        * parser/SourceProvider.h:
+
 2018-07-08  Mark Lam  <[email protected]>
 
         PropertyTable::skipDeletedEntries() should guard against iterating past the table end.

Modified: trunk/Source/_javascript_Core/parser/SourceProvider.cpp (233625 => 233626)


--- trunk/Source/_javascript_Core/parser/SourceProvider.cpp	2018-07-08 09:54:51 UTC (rev 233625)
+++ trunk/Source/_javascript_Core/parser/SourceProvider.cpp	2018-07-08 12:29:08 UTC (rev 233626)
@@ -32,12 +32,11 @@
 namespace JSC {
 
 SourceProvider::SourceProvider(const SourceOrigin& sourceOrigin, const String& url, const TextPosition& startPosition, SourceProviderSourceType sourceType)
-    : m_sourceOrigin(sourceOrigin)
+    : m_sourceType(sourceType)
+    , m_validated(false)
+    , m_sourceOrigin(sourceOrigin)
     , m_url(url)
     , m_startPosition(startPosition)
-    , m_sourceType(sourceType)
-    , m_validated(false)
-    , m_id(0)
 {
 }
 
@@ -53,6 +52,7 @@
     if (!m_id) {
         static intptr_t nextProviderID = 0;
         m_id = ++nextProviderID;
+        RELEASE_ASSERT(m_id);
     }
 }
 

Modified: trunk/Source/_javascript_Core/parser/SourceProvider.h (233625 => 233626)


--- trunk/Source/_javascript_Core/parser/SourceProvider.h	2018-07-08 09:54:51 UTC (rev 233625)
+++ trunk/Source/_javascript_Core/parser/SourceProvider.h	2018-07-08 12:29:08 UTC (rev 233626)
@@ -35,7 +35,7 @@
 
 namespace JSC {
 
-    enum class SourceProviderSourceType {
+    enum class SourceProviderSourceType : uint8_t {
         Program,
         Module,
         WebAssembly,
@@ -80,14 +80,14 @@
     private:
         JS_EXPORT_PRIVATE void getID();
 
+        SourceProviderSourceType m_sourceType;
+        bool m_validated : 1;
         SourceOrigin m_sourceOrigin;
         String m_url;
         String m_sourceURLDirective;
         String m_sourceMappingURLDirective;
         TextPosition m_startPosition;
-        SourceProviderSourceType m_sourceType;
-        bool m_validated : 1;
-        uintptr_t m_id : sizeof(uintptr_t) * 8 - 1;
+        uintptr_t m_id { 0 };
     };
 
     class StringSourceProvider : public SourceProvider {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to