Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(321)

Issue 2105463003: Add inline capacity to CSSTokenizer::m_blockStack. (Closed)

Created:
4 years, 5 months ago by esprehn
Modified:
4 years, 5 months ago
CC:
darktears, apavlov+blink_chromium.org, blink-reviews, blink-reviews-css, chromium-reviews, dglazkov+blink, rwlbuis
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add inline capacity to CSSTokenizer::m_blockStack. The malloc on the m_blockStack shows up in profiles in Animometer when parsing transforms since we push and pop from this stack for every paren and transforms use function syntax like rotate(10deg). We can instead use inline capacity to skip the malloc when parsing many inline transforms, variables, or other things that use parens. I chose 8 since it's unlikely that you'd nest more than 8 parens, brackets or braces in CSS. We can easily make this number bigger someday too since CSSParserTokenType is just an enum so the storage is very small. BUG=605792 Committed: https://crrev.com/53ab0155b7a113df1fcbeb1050df6fea27581685 Cr-Commit-Position: refs/heads/master@{#402401}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Fix typo. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+8 lines, -15 lines) Patch
M third_party/WebKit/Source/core/css/parser/CSSTokenizer.h View 2 chunks +5 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp View 1 2 chunks +3 lines, -10 lines 0 comments Download

Messages

Total messages: 15 (7 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2105463003/1
4 years, 5 months ago (2016-06-27 22:16:12 UTC) #2
esprehn
https://codereview.chromium.org/2105463003/diff/1/third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp File third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp (left): https://codereview.chromium.org/2105463003/diff/1/third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp#oldcode128 third_party/WebKit/Source/core/css/parser/CSSTokenizer.cpp:128: static bool popIfBlockMatches(Vector<CSSParserTokenType>& blockStack, CSSParserTokenType type) I merged this ...
4 years, 5 months ago (2016-06-27 22:16:18 UTC) #4
meade_UTC10
lgtm
4 years, 5 months ago (2016-06-27 22:22:35 UTC) #5
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2105463003/20001
4 years, 5 months ago (2016-06-27 23:17:33 UTC) #7
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 5 months ago (2016-06-28 02:08:50 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2105463003/20001
4 years, 5 months ago (2016-06-28 03:47:59 UTC) #12
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 5 months ago (2016-06-28 03:53:55 UTC) #13
commit-bot: I haz the power
4 years, 5 months ago (2016-06-28 03:56:37 UTC) #15
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/53ab0155b7a113df1fcbeb1050df6fea27581685
Cr-Commit-Position: refs/heads/master@{#402401}

Powered by Google App Engine
This is Rietveld 408576698