Bug 121199

Summary: CSSPropertyAnimation::ensurePropertyMap() is large
Product: WebKit Reporter: Ryosuke Niwa <rniwa>
Component: CSSAssignee: Ryosuke Niwa <rniwa>
Status: RESOLVED FIXED    
Severity: Normal CC: andersca, benjamin, buildbot, commit-queue, darin, dino, dstockwell, eflews.bot, esprehn+autocc, glenn, gyuyoung.kim, kling, koivisto, kondapallykalyan, rniwa, simon.fraser
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 121205    
Bug Blocks: 121667    
Attachments:
Description Flags
Cleanup
none
Archive of layout-test-results from webkit-ews-13 for mac-mountainlion-wk2
none
Archive of layout-test-results from webkit-ews-01 for mac-mountainlion
none
Patch
none
EFL build fix darin: review+

Description Ryosuke Niwa 2013-09-11 17:56:16 PDT
4aac WebCore::CSSPropertyAnimation::ensurePropertyMap() [FUNC, PEXT, LENGTH, NameNList, MangledNameNList, Merged, NList, DebugMap, FunctionStarts] 

0x4aac bytes.  We should make it smaller!
Comment 1 Ryosuke Niwa 2013-09-11 18:05:36 PDT
Created attachment 211377 [details]
Cleanup
Comment 2 Build Bot 2013-09-11 18:55:30 PDT
Comment on attachment 211377 [details]
Cleanup

Attachment 211377 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/1806026

New failing tests:
transitions/mask-transitions.html
transitions/shorthand-border-transitions.html
transitions/shorthand-transitions.html
transitions/border-radius-transition.html
transitions/multiple-mask-transitions.html
transitions/multiple-background-transitions.html
transitions/background-transitions.html
Comment 3 Build Bot 2013-09-11 18:55:32 PDT
Created attachment 211380 [details]
Archive of layout-test-results from webkit-ews-13 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-13  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.4
Comment 4 Build Bot 2013-09-11 19:18:54 PDT
Comment on attachment 211377 [details]
Cleanup

Attachment 211377 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/1824010

New failing tests:
transitions/mask-transitions.html
transitions/shorthand-border-transitions.html
transitions/shorthand-transitions.html
transitions/border-radius-transition.html
transitions/multiple-mask-transitions.html
transitions/multiple-background-transitions.html
transitions/background-transitions.html
Comment 5 Build Bot 2013-09-11 19:18:56 PDT
Created attachment 211382 [details]
Archive of layout-test-results from webkit-ews-01 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-01  Port: mac-mountainlion  Platform: Mac OS X 10.8.4
Comment 6 Ryosuke Niwa 2013-09-11 19:26:16 PDT
Comment on attachment 211377 [details]
Cleanup

Okay, I tried to do too many things at once.
Comment 7 Ryosuke Niwa 2013-09-12 20:21:10 PDT
Created attachment 211500 [details]
Patch
Comment 8 EFL EWS Bot 2013-09-12 20:28:55 PDT
Comment on attachment 211500 [details]
Patch

Attachment 211500 [details] did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/1893037
Comment 9 Ryosuke Niwa 2013-09-12 20:29:23 PDT
New function is 9047 bytes (used to be 19116 bytes)! Also note that new function also contains addShorthandProperties.

rniwa:webkit rniwa$ symbols WebKitBuild/Release/WebCore.framework/WebCore | grep CSSPropertyAnimationWrapperMap
            0x0000000000172550 (  0x2357) WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap() [FUNC, PEXT, LENGTH, NameNList, MangledNameNList, Merged, NList, DebugMap, FunctionStarts] 
            0x000000000017b660 (    0x8e) WebCore::CSSPropertyAnimationWrapperMap::instance() [FUNC, PEXT, LENGTH, NameNList, MangledNameNList, Merged, NList, DebugMap, FunctionStarts] 
            0x000000000017e220 (    0x90) WTF::OwnPtr<WebCore::CSSPropertyAnimationWrapperMap>::operator=(WTF::PassOwnPtr<WebCore::CSSPropertyAnimationWrapperMap> const&) [FUNC, PEXT, LENGTH, NameNList, MangledNameNList, Merged, NList, DebugMap, FunctionStarts] 
            0x000000000017e2b0 (    0x89) WTF::PassOwnPtr<WebCore::CSSPropertyAnimationWrapperMap>::~PassOwnPtr() [FUNC, PEXT, LENGTH, NameNList, MangledNameNList, Merged, NList, DebugMap, FunctionStarts] 
            0x0000000000cda3b0 (    0x60) WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap()::animatableShorthandProperties [NameNList, MangledNameNList, NList] 
            0x00000000011c1dd0 (     0x8) WebCore::CSSPropertyAnimationWrapperMap::instance()::map [PEXT, NameNList, MangledNameNList, NList] 
            0x00000000011c1dd8 (     0x8) guard variable for WebCore::CSSPropertyAnimationWrapperMap::instance()::map [PEXT, NameNList, MangledNameNList, NList]
Comment 10 Ryosuke Niwa 2013-09-12 20:32:27 PDT
Created attachment 211502 [details]
EFL build fix
Comment 11 Darin Adler 2013-09-13 11:33:47 PDT
Comment on attachment 211502 [details]
EFL build fix

View in context: https://bugs.webkit.org/attachment.cgi?id=211502&action=review

> Source/WebCore/page/animation/CSSPropertyAnimation.cpp:1335
> +        Vector<AnimationPropertyWrapperBase*> longhandWrappers;

No reserveInitialCapacity?

> Source/WebCore/page/animation/CSSPropertyAnimation.cpp:1342
> +            longhandWrappers.append(m_propertyWrappers[wrapperIndex].get());

No uncheckedAppend?
Comment 12 Ryosuke Niwa 2013-09-13 20:57:44 PDT
Committed r155743: <http://trac.webkit.org/changeset/155743>
Comment 13 Ryosuke Niwa 2022-08-21 13:16:29 PDT
*** Bug 121198 has been marked as a duplicate of this bug. ***