Summary: | GraphicsContext::drawImageBuffer is inefficient | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Stephen Chenney <schenney> | ||||||
Component: | Platform | Assignee: | Stephen Chenney <schenney> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | a.renevier, buildbot, cabanier, fmalita, krit, pdr, rniwa | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Bug Depends on: | 104176 | ||||||||
Bug Blocks: | 100026 | ||||||||
Attachments: |
|
Description
Stephen Chenney
2012-12-07 06:07:37 PST
Created attachment 185096 [details]
Patch
We should now be calling at most 2 versions of drawImageBuffer or drawImage
Comment on attachment 185096 [details] Patch Attachment 185096 [details] did not pass mac-wk2-ews (mac-wk2): Output: http://queues.webkit.org/results/16198105 New failing tests: fast/workers/worker-document-leak.html Comment on attachment 185096 [details]
Patch
I wish we had a Ctor for FloatRect that takes IntPoint and Intsize. But I guess it is not common enough to implement it. Do we have a performance test for that? Would be great if you can create one if not. r=me anyway.
There are essentially no other uses of FloatRect(IntRect(...)) outside GraphicsContext.cpp so I wonder if there's a better way. We could at least modify a couple of the FloatRect(IntRect(IntPoint(), ...)) ones to be FloatRect(FloatPoint(), FloatSize( )). Created attachment 186677 [details]
Patch
Modified to reflect Philip's suggestion, and to remove an unused method
We should see how this does on ews. Committed r142123: <http://trac.webkit.org/changeset/142123> Comment on attachment 186677 [details] Patch Cleared review? from attachment 186677 [details] so that this bug does not appear in http://webkit.org/pending-review. If you would like this patch reviewed, please attach it to a new bug (or re-open this bug before marking it for review again). |