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

Issue 1961693002: Avoid unneeded RoundedInnerRectClipper rect clips (Closed)

Created:
4 years, 7 months ago by f(malita)
Modified:
4 years, 7 months ago
Reviewers:
chrishtr
CC:
blink-reviews, blink-reviews-platform-graphics_chromium.org, bsalomon_chromium, Rik, cc-bugs_chromium.org, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, f(malita), jbroman, Justin Novosad, kinuko+watch, pdr+graphicswatchlist_chromium.org, reed1, rwlbuis, Stephen Chennney
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Avoid unneeded RoundedInnerRectClipper rect clips ClipDisplayItem always applies a rectangular clip, and optionally a list of rounded-rect clips. As its client, RoundedInnerRectClipper is only interested in applying the rounded-rect clips - so it passes a synthetic "infinite" rect clip. This clip is pure overhead. Updated ClipDisplayItem to detect and ignore this clip. While the hood's up, remove the explicit FloatRoundedRect -> SkRRect conversion (FloatRoundedRect already implements a SkRRect conversion operator). This yields a ~23% improvement for Animometer/CSS Bouncing Gradient Circles, in software mode only (no change for Ganesh). BUG=603966 R=chrishtr@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Committed: https://crrev.com/bef2b571b0d6d9571876f88341f47b350af3f6ce Cr-Commit-Position: refs/heads/master@{#392734}

Patch Set 1 #

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+10 lines, -16 lines) Patch
M third_party/WebKit/Source/platform/graphics/paint/ClipDisplayItem.cpp View 1 2 chunks +10 lines, -16 lines 0 comments Download

Messages

Total messages: 12 (7 generated)
f(malita)
This works, but feels like a hacky/narrow optimization. I think a better approach would be ...
4 years, 7 months ago (2016-05-08 02:00:15 UTC) #5
chrishtr
lgtm
4 years, 7 months ago (2016-05-10 18:19:20 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1961693002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1961693002/20001
4 years, 7 months ago (2016-05-10 18:20:12 UTC) #8
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 7 months ago (2016-05-10 21:48:33 UTC) #10
commit-bot: I haz the power
4 years, 7 months ago (2016-05-10 21:50:17 UTC) #12
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/bef2b571b0d6d9571876f88341f47b350af3f6ce
Cr-Commit-Position: refs/heads/master@{#392734}

Powered by Google App Engine
This is Rietveld 408576698