Bug 251413 - move SVG conditional processing attributes to SVGElementRareData
Summary: move SVG conditional processing attributes to SVGElementRareData
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: SVG (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Cameron McCormack (:heycam)
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2023-01-30 19:51 PST by Cameron McCormack (:heycam)
Modified: 2023-02-02 12:04 PST (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Cameron McCormack (:heycam) 2023-01-30 19:51:40 PST
The SVG conditional processing attributes (requiredFeatures, requiredExtensions, and systemLanguage) are rarely used.  Currently nearly every SVG element creates SVGStringList objects for these three attributes in WebCore::SVGTests, at a cost of 48 bytes each SVGStringList plus the three pointers.  We can move these to SVGElementRareData to save 72 bytes per SVG element in this common case, which for SVG documents with a large number of graphical elements can add up.
Comment 1 Radar WebKit Bug Importer 2023-01-30 19:52:05 PST
<rdar://problem/104849618>
Comment 2 Cameron McCormack (:heycam) 2023-01-30 20:48:27 PST
Pull request: https://github.com/WebKit/WebKit/pull/9366
Comment 3 EWS 2023-02-02 12:04:48 PST
Committed 259772@main (a0e6d8e81896): <https://commits.webkit.org/259772@main>

Reviewed commits have been landed. Closing PR #9366 and removing active labels.