Bug 124056

Summary: Make RenderBlockRareData into a hash.
Product: WebKit Reporter: Dave Hyatt <hyatt>
Component: Layout and RenderingAssignee: Dave Hyatt <hyatt>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, commit-queue, esprehn+autocc, glenn, kondapallykalyan, rniwa
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch to move into map (not ready for review)
buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion
none
Patch
sam: review+
Patch
andersca: review+, buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-12 for mac-mountainlion-wk2
none
Archive of layout-test-results from webkit-ews-02 for mac-mountainlion
none
Address the typo in RenderBlockFlow::setMustDiscardMarginBefore andersca: review+, buildbot: commit-queue-

Dave Hyatt
Reported 2013-11-08 11:05:45 PST
Make RenderBlockRareData into a hash to get those 4 bytes back.
Attachments
Patch to move into map (not ready for review) (8.12 KB, patch)
2013-11-08 11:06 PST, Dave Hyatt
buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion (369.52 KB, application/zip)
2013-11-08 15:56 PST, Build Bot
no flags
Patch (24.70 KB, patch)
2013-11-11 10:24 PST, Dave Hyatt
sam: review+
Patch (24.67 KB, patch)
2013-11-11 11:30 PST, Dave Hyatt
andersca: review+
buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-12 for mac-mountainlion-wk2 (696.41 KB, application/zip)
2013-11-11 12:25 PST, Build Bot
no flags
Archive of layout-test-results from webkit-ews-02 for mac-mountainlion (797.03 KB, application/zip)
2013-11-11 12:52 PST, Build Bot
no flags
Address the typo in RenderBlockFlow::setMustDiscardMarginBefore (24.73 KB, patch)
2013-11-12 09:03 PST, Dave Hyatt
andersca: review+
buildbot: commit-queue-
Dave Hyatt
Comment 1 2013-11-08 11:06:58 PST
Created attachment 216413 [details] Patch to move into map (not ready for review)
Build Bot
Comment 2 2013-11-08 11:51:45 PST
Comment on attachment 216413 [details] Patch to move into map (not ready for review) Attachment 216413 [details] did not pass win-ews (win): Output: http://webkit-queues.appspot.com/results/22738544
Build Bot
Comment 3 2013-11-08 15:56:28 PST
Comment on attachment 216413 [details] Patch to move into map (not ready for review) Attachment 216413 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/22778562 New failing tests: csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-001.html fast/shapes/shape-inside/shape-inside-bottom-edge.html fast/shapes/parsing/parsing-shape-lengths.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-000.html fast/shapes/shape-inside/shape-inside-calc-crash.html fast/regions/shape-inside/shape-inside-on-additional-regions.html fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-image-threshold.html fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-block-content.html http/tests/css/css-image-valued-shape.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-002.html http/tests/security/shape-image-cors.html fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-inline-content.html fast/shapes/parsing/parsing-shape-outside.html fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-inline-content.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-004.html fast/shapes/shape-outside-floats/shape-outside-animation.html fast/shapes/shape-outside-floats/shape-outside-dynamic-shape-margin.html fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-block-content.html fast/shapes/parsing/parsing-shape-inside.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-005.html fast/shapes/shape-inside/shape-inside-box-sizing.html fast/shapes/shape-inside/shape-inside-animation.html fast/regions/shape-inside/shape-inside-on-first-region-block-content.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-006.html fast/shapes/css-shapes-enabled.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-003.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-000.html csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-clipped-001.html
Build Bot
Comment 4 2013-11-08 15:56:30 PST
Created attachment 216455 [details] Archive of layout-test-results from webkit-ews-08 for mac-mountainlion The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: webkit-ews-08 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Dave Hyatt
Comment 5 2013-11-11 10:24:40 PST
WebKit Commit Bot
Comment 6 2013-11-11 10:26:10 PST
Attachment 216587 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/rendering/RenderBlock.cpp', u'Source/WebCore/rendering/RenderBlock.h', u'Source/WebCore/rendering/RenderBlockFlow.cpp', u'Source/WebCore/rendering/RenderBlockFlow.h']" exit_code: 1 Source/WebCore/rendering/RenderBlockFlow.h:525: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Total errors found: 1 in 5 files If any of these errors are false positives, please file a bug against check-webkit-style.
Sam Weinig
Comment 7 2013-11-11 10:33:17 PST
Comment on attachment 216587 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=216587&action=review > Source/WebCore/rendering/RenderBlock.cpp:129 > +typedef WTF::HashMap<const RenderBlock*, OwnPtr<RenderBlockRareData>> RenderBlockRareDataMap; I would remove the WTF:: from HashMap (its not needed) and make it a std::unique_ptr<RenderBlockRareData>.
Dave Hyatt
Comment 8 2013-11-11 11:30:15 PST
Anders Carlsson
Comment 9 2013-11-11 11:32:37 PST
Comment on attachment 216591 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=216591&action=review > Source/WebCore/rendering/RenderBlock.cpp:225 > + if (hasRareData()) > + gRareDataMap->take(this); I’d just do an if (g_rareDataMap) g_rareDataMap->remove(this) here to avoid two hash lookups (one for the hasRareData and another for the actual remove). > Source/WebCore/rendering/RenderBlock.cpp:1416 > +static RenderBlockRareData* ensureRareData(const RenderBlock* block) I think this should return a reference since it can never be null.
Build Bot
Comment 10 2013-11-11 12:01:01 PST
Build Bot
Comment 11 2013-11-11 12:25:33 PST
Comment on attachment 216591 [details] Patch Attachment 216591 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://webkit-queues.appspot.com/results/22868501 New failing tests: fast/block/margin-collapse/webkit-margin-collapse-floats.html
Build Bot
Comment 12 2013-11-11 12:25:36 PST
Created attachment 216597 [details] Archive of layout-test-results from webkit-ews-12 for mac-mountainlion-wk2 The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews. Bot: webkit-ews-12 Port: mac-mountainlion-wk2 Platform: Mac OS X 10.8.5
Build Bot
Comment 13 2013-11-11 12:52:08 PST
Comment on attachment 216591 [details] Patch Attachment 216591 [details] did not pass mac-ews (mac): Output: http://webkit-queues.appspot.com/results/22539439 New failing tests: js/basic-set.html fast/block/margin-collapse/webkit-margin-collapse-floats.html
Build Bot
Comment 14 2013-11-11 12:52:11 PST
Created attachment 216602 [details] Archive of layout-test-results from webkit-ews-02 for mac-mountainlion The attached test failures were seen while running run-webkit-tests on the mac-ews. Bot: webkit-ews-02 Port: mac-mountainlion Platform: Mac OS X 10.8.5
Dave Hyatt
Comment 15 2013-11-12 09:03:56 PST
Created attachment 216681 [details] Address the typo in RenderBlockFlow::setMustDiscardMarginBefore Note I had made hasRareData() private in RenderBlock to avoid this mistake, but right now RenderBlockFlow is a friend of RenderBlock, so it was able to use hasRareData without it being a compile error. Annoying. Once we finish the refactoring, we'll want to make sure to remove the friend connection.
Build Bot
Comment 16 2013-11-12 09:47:02 PST
Comment on attachment 216681 [details] Address the typo in RenderBlockFlow::setMustDiscardMarginBefore Attachment 216681 [details] did not pass win-ews (win): Output: http://webkit-queues.appspot.com/results/22719636
Dave Hyatt
Comment 17 2013-11-12 14:49:14 PST
Landed in r159150.
Note You need to log in before you can comment on or make changes to this bug.