Bug 287775
Summary: | Reduce size of WebCore::HistoryController by 8 bytes (72 to 64 bytes) | ||
---|---|---|---|
Product: | WebKit | Reporter: | David Kilzer (:ddkilzer) <ddkilzer> |
Component: | History | Assignee: | David Kilzer (:ddkilzer) <ddkilzer> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | Other | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
David Kilzer (:ddkilzer)
Summary:
Reduce size of WebCore::HistoryController by 8 bytes (72 to 64 bytes).
Before:
$ xcrun python3 ./Tools/Scripts/dump-class-layout -b WebKitBuild -c Release -a arm64e WebCore WebCore::HistoryController
+0 < 72> WebCore::HistoryController
+0 < 8> WTF::CanMakeWeakPtr<HistoryController> WTF::CanMakeWeakPtr<HistoryController>
+0 < 8> WTF::WeakPtrFactory<WebCore::HistoryController, WTF::DefaultWeakPtrImpl> m_weakPtrFactory
+0 < 8> WTF::RefPtr<WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>, WTF::DefaultRefDerefTraits<WTF::DefaultWeakPtrImpl> > m_impl
+0 < 8> WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>::StorageType m_ptr
+8 < 8> WTF::WeakRef<WebCore::LocalFrame, WTF::DefaultWeakPtrImpl> m_frame
+8 < 8> WTF::Ref<WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>, WTF::DefaultRefDerefTraits<WTF::DefaultWeakPtrImpl> > m_impl
+8 < 8> WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>::StorageType m_ptr
+16 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_currentItem
+16 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+24 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_previousItem
+24 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+32 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_provisionalItem
+32 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+40 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_policyItem
+40 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+48 < 1> bool m_frameLoadComplete
+49 < 1> bool m_defersLoading
+50 < 6> <PADDING: 6 bytes>
+56 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_deferredItem
+56 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+64 < 1> WebCore::FrameLoadType m_deferredFrameLoadType
+65 < 7> <PADDING: 7 bytes>
Total byte size: 72
Total pad bytes: 13
Padding percentage: 18.06 %
After:
$ xcrun python3 ./Tools/Scripts/dump-class-layout -b WebKitBuild -c Release -a arm64e WebCore WebCore::HistoryController
+0 < 64> WebCore::HistoryController
+0 < 8> WTF::CanMakeWeakPtr<HistoryController> WTF::CanMakeWeakPtr<HistoryController>
+0 < 8> WTF::WeakPtrFactory<WebCore::HistoryController, WTF::DefaultWeakPtrImpl> m_weakPtrFactory
+0 < 8> WTF::RefPtr<WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>, WTF::DefaultRefDerefTraits<WTF::DefaultWeakPtrImpl> > m_impl
+0 < 8> WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>::StorageType m_ptr
+8 < 8> WTF::WeakRef<WebCore::LocalFrame, WTF::DefaultWeakPtrImpl> m_frame
+8 < 8> WTF::Ref<WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>, WTF::DefaultRefDerefTraits<WTF::DefaultWeakPtrImpl> > m_impl
+8 < 8> WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl>::StorageType m_ptr
+16 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_currentItem
+16 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+24 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_previousItem
+24 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+32 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_provisionalItem
+32 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+40 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_policyItem
+40 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
+48 < 1> bool m_frameLoadComplete
+49 < 1> bool m_defersLoading
+50 < 1> WebCore::FrameLoadType m_deferredFrameLoadType
+51 < 5> <PADDING: 5 bytes>
+56 < 8> WTF::RefPtr<WebCore::HistoryItem, WTF::RawPtrTraits<WebCore::HistoryItem>, WTF::DefaultRefDerefTraits<WebCore::HistoryItem> > m_deferredItem
+56 < 8> WTF::RawPtrTraits<WebCore::HistoryItem>::StorageType m_ptr
Total byte size: 64
Total pad bytes: 5
Padding percentage: 7.81 %
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/144950604>
David Kilzer (:ddkilzer)
Pull request: https://github.com/WebKit/WebKit/pull/40690
EWS
Committed 290487@main (7575b0f8b3c9): <https://commits.webkit.org/290487@main>
Reviewed commits have been landed. Closing PR #40690 and removing active labels.