jshin [Tue, 9 Sep 2014 19:30:57 +0000 (12:30 -0700)]
Update the alias mapping for Noto Sans CJK.
To make the family names 'future-proof', we decided to shorten
the name of Noto Sans CJK, which requires a change in the alias
table in Skia.
Chrome OS CL (actually updating the fonts) and Chrome CL (updating the
font preferences on CrOS) are going together with this CL.
BUG=412151
TEST=With the above two CLs in on Chrome OS, Noto Sans CJK {JP, SC} are
used when MS P Gothic / Simhei are asked for by a web page.
R=bungeman@google.com
Author: jshin@chromium.org
Review URL: https://codereview.chromium.org/
554943002
reed [Tue, 9 Sep 2014 19:19:30 +0000 (12:19 -0700)]
Allow SkCanvas to be initialized to force conservative rasterclips. This has the following effects:
1. Queries to the current clip will be conservatively large. This can mean the quickReject may return false more often.
2. The conservative clips mean less work is done.
3. Enabled by default for Gpu, Record, and NoSaveLayer canvases.
4. API is private for now.
R=robertphillips@google.com, bsalomon@google.com, mtklein@google.com, junov@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
541593005
mtklein [Tue, 9 Sep 2014 19:07:05 +0000 (12:07 -0700)]
Make -d x86 have the default GPU cache size.
We have no a priori reason to limit the cache for new devices.
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
556863006
george [Tue, 9 Sep 2014 18:33:57 +0000 (11:33 -0700)]
Outset the stroke width when computing the bounds for drawing a stroked rect, or 1 if it's a hairline
Adds a testcase for stroke rect bug
R=reed@google.com, reed1
BUG=skia:
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/
552743004
senorblanco [Tue, 9 Sep 2014 16:15:04 +0000 (09:15 -0700)]
Allow negative values in SkBlurImageFilter sigma.
There are two ways negative sigma values may occur: in
the original filter parameters, or after multiplication
by a negative scaling CTM. The former case is
invalid according to the spec, so we continue to check
for it at validation time. In the latter case, we should
interpret it as a horizontal flip in the kernel pixel
access, and simply take the absolute value (since the
filter kernel is symmetric).
Also refactor all this logic into a single place for the
CPU, GPU and onFilterBounds() paths.
BUG=https://code.google.com/p/chromium/issues/detail?id=409602
R=sugoi@google.com, reed@google.com, sugoi@chromium.org
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
555603002
mtklein [Tue, 9 Sep 2014 15:42:04 +0000 (08:42 -0700)]
Back to hashing source content, not .png.
BUG=skia:
R=jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
560453002
fmalita [Tue, 9 Sep 2014 15:12:46 +0000 (08:12 -0700)]
Revert of Use SkBitmapCache to optimize readPixels on a texture-backed bitmap (patchset #6 id:100001 of https://codereview.chromium.org/
533323002/)
Reason for revert:
Component inversions in Blink's printing/webgl-repeated-printing.html: https://storage.googleapis.com/chromium-layout-test-archives/linux_blink_rel/24033/layout-test-results/printing/webgl-repeated-printing-diff.txt
Reverting to unblock rolls.
Original issue's description:
> Use SkBitmapCache to optimize readPixels on a texture-backed bitmap
>
> BUG=skia:2786
>
> Committed: https://skia.googlesource.com/skia/+/
95fd68e5ccd242a91e6dd827dd695f18661efbe6
R=junov@chromium.org, reed@google.com, bsalomon@google.com, piotaixr@chromium.org
TBR=bsalomon@google.com, junov@chromium.org, piotaixr@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2786
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/
551523003
sugoi [Tue, 9 Sep 2014 15:12:34 +0000 (08:12 -0700)]
Adding texture uploads without cache for YUV and ETC1
BUG=skia:
R=bsalomon@google.com, robertphillips@google.com
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/
552843004
mtklein [Tue, 9 Sep 2014 14:59:46 +0000 (07:59 -0700)]
Update DM JSON format.
Ex. dm --match patch -w bad --key arch x86 gpu nvidia model z620 --properties git_hash abcd build_number 20 ->
{
"build_number" : "20",
"git_hash" : "abcd",
"key" : {
"arch" : "x86",
"gpu" : "nvidia",
"model" : "z620"
},
"results" : [
{
"key" : {
"config" : "565",
"name" : "ninepatch-stretch"
},
"md5" : "
f78cfafcbabaf815f3dfcf61fb59acc7",
"options" : {
"source_type" : "GM"
}
},
{
"key" : {
"config" : "8888",
"name" : "ninepatch-stretch"
},
"md5" : "
3e8a42f35a1e76f00caa191e6310d789",
"options" : {
"source_type" : "GM"
}
},
...
This breaks -r, but that's okay. Going to follow up this CL with one that removes that entirely.
BUG=skia:
R=stephana@google.com, jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
551873003
mtklein [Tue, 9 Sep 2014 14:36:57 +0000 (07:36 -0700)]
Remove expectations / -r from DM entirely.
It's getting tricky to coordinate changes to output for bots with -r,
and -r is not widely used. The suggested alternative is to run skdiff.
BUG=skia:
R=jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
553583004
george [Tue, 9 Sep 2014 13:14:57 +0000 (06:14 -0700)]
SkRasterClip::quickReject doesn't need to check for emptiness as SkIRect::Intersect already does that for us
R=reed@google.com, reed1
BUG=skia:
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/
554743007
borenet [Tue, 9 Sep 2014 04:08:41 +0000 (21:08 -0700)]
Update SKP version to 96
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
551263002
jbroman [Mon, 8 Sep 2014 20:24:33 +0000 (13:24 -0700)]
Remove a linear search in SkPictureRecord::addTextBlob.
It doesn't seem that harmful to have repeated text blobs in the array
if they occur within the same picture recording. And that does not seem
to be a common occurrence right now anyhow.
BUG=skia:2919
R=fmalita@chromium.org, reed@google.com, mtklein@google.com
Author: jbroman@chromium.org
Review URL: https://codereview.chromium.org/
550043003
mtklein [Mon, 8 Sep 2014 19:42:23 +0000 (12:42 -0700)]
Hash .pngs instead of SkBitmaps.
This has the nice property of being able to double-check hashes after the fact.
mtklein@mtklein ~/skia (hash-png)> md5sum bad/8888/3x3bitmaprect.png
deede70ab2f34067d461fb4a93332d4c bad/8888/3x3bitmaprect.png
mtklein@mtklein ~/skia (hash-png)> grep 3x3bitmaprect_8888 bad/dm.json
"3x3bitmaprect_8888" : "
deede70ab2f34067d461fb4a93332d4c",
I have checked that no two premultiplied colors map to the same unpremultiplied
color (math nerds: unpremultiplication is injective), so a change in
premultiplied SkBitmap will always imply a change in the encoded
unpremultiplied .png. This means, it's safe to hash .pngs; we won't miss
subtle changes.
BUG=skia:
R=jcgregorio@google.com, stephana@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
549203003
bsalomon [Mon, 8 Sep 2014 19:06:20 +0000 (12:06 -0700)]
Make GrEffectStage copy constructor work correctly with pending execution refs.
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
551083002
robertphillips [Mon, 8 Sep 2014 18:37:59 +0000 (11:37 -0700)]
Fix two SkRecord-backed layer hoisting bugs
The two bugs are/were:
The old loop to draw the hoisted layers included the saveLayer call which caused double application of the layer's paint (This is the +1 change).
The hoisted layer is intended to be drawn in device coordinates. The old code was drawing it in the coordinate space of the saveLayer thus it was misplaced (This is the setMatrix change).
Committed: https://skia.googlesource.com/skia/+/
7c0cfd4ff8f6db50a8731c886db732b106268937
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
551843002
mtklein [Mon, 8 Sep 2014 18:33:48 +0000 (11:33 -0700)]
egdaniel [Mon, 8 Sep 2014 17:48:37 +0000 (10:48 -0700)]
Remove extra proctected in GrRODrawState.h
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
550243002
bsalomon [Mon, 8 Sep 2014 17:45:58 +0000 (10:45 -0700)]
Remove debug-only ref of GrEffectStage
BUG=skia:2889
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
553973002
caryclark [Mon, 8 Sep 2014 17:25:38 +0000 (10:25 -0700)]
fail when coincidence is too far apart
TBR=
BUG=410552
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/
556433002
robertphillips [Mon, 8 Sep 2014 17:10:51 +0000 (10:10 -0700)]
Revert of Fix two SkRecord-backed layer hoisting bugs (patchset #1 id:1 of https://codereview.chromium.org/
551843002/)
Reason for revert:
turning bots red
Original issue's description:
> Fix two SkRecord-backed layer hoisting bugs
>
> The two bugs are/were:
> The old loop to draw the hoisted layers included the saveLayer call which caused double application of the layer's paint (This is the +1 change).
>
> The hoisted layer is intended to be drawn in device coordinates. The old code was drawing it in the coordinate space of the saveLayer thus it was misplaced (This is the setMatrix change).
>
> Committed: https://skia.googlesource.com/skia/+/
7c0cfd4ff8f6db50a8731c886db732b106268937
R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
553983003
robertphillips [Mon, 8 Sep 2014 16:53:58 +0000 (09:53 -0700)]
Fix two SkRecord-backed layer hoisting bugs
The two bugs are/were:
The old loop to draw the hoisted layers included the saveLayer call which caused double application of the layer's paint (This is the +1 change).
The hoisted layer is intended to be drawn in device coordinates. The old code was drawing it in the coordinate space of the saveLayer thus it was misplaced (This is the setMatrix change).
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
551843002
mtklein [Mon, 8 Sep 2014 16:12:28 +0000 (09:12 -0700)]
Let .skps have Expectations (i.e. work with -r) too.
BUG=skia:
R=jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
549183002
mtklein [Mon, 8 Sep 2014 15:41:37 +0000 (08:41 -0700)]
Turn on the save-layer optimization.
BUG=skia:
R=robertphillips@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
551853002
piotaixr [Mon, 8 Sep 2014 15:07:47 +0000 (08:07 -0700)]
Use SkBitmapCache to optimize readPixels on a texture-backed bitmap
BUG=skia:2786
R=junov@chromium.org, reed@google.com, bsalomon@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/
533323002
mtklein [Mon, 8 Sep 2014 15:05:18 +0000 (08:05 -0700)]
Start to rework DM JSON handling.
DM's striking off into its own JSON world. This gets strawman implementations
in place for writing and reading a JSON file mapping test name to hashes.
For what it's worth, I basically want to change _all_ these pieces,
- MD5 is slow and we can replace it with something faster,
- JSON schema needs room to grow more data,
- it'd be nice to hash once instead of twice when reading and writing,
- this code wants lots of refactoring,
but this gives us a starting platform to work on these bits at our leisure.
E.x. file for now:
mtklein@mtklein ~/skia (dm)> cat good/dm.json
{
"3x3bitmaprect_565" : "
fc70d985fbfbe70e3a3c9dc626d4f5bc",
"3x3bitmaprect_8888" : "
df1591dde35907399734ea19feb76663",
"3x3bitmaprect_gpu" : "
df1591dde35907399734ea19feb76663",
"aaclip_565" : "
1862798689b838a7ab0dc0652b9ace3a",
"aaclip_8888" : "
47bb314329f0ce243f1d83fd583decb7",
"aaclip_gpu" : "
75f72412d0ef4815770202d297246e7d",
...
BUG=skia:
R=jcgregorio@google.com, stephana@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
546873002
mtklein [Mon, 8 Sep 2014 14:31:18 +0000 (07:31 -0700)]
Turn on all pixel-perfect SkRecord optimizations.
BUG=skia:
R=robertphillips@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
550083006
borenet [Mon, 8 Sep 2014 03:52:36 +0000 (20:52 -0700)]
Update SKP version to 95
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
552663002
borenet [Sun, 7 Sep 2014 03:40:51 +0000 (20:40 -0700)]
Update SKP version to 94
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
541173005
borenet [Sat, 6 Sep 2014 04:23:05 +0000 (21:23 -0700)]
Update SKP version to 93
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
543343002
reed [Sat, 6 Sep 2014 00:37:38 +0000 (17:37 -0700)]
move rasterclip_ helper into rasterclip
R=robertphillips@google.com, reed@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/
546113002
bsalomon [Fri, 5 Sep 2014 21:27:43 +0000 (14:27 -0700)]
Make GrDrawState and GrEffectStage use the pending io/exec ref mechanisms.
BUG=skia:2889
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
542723004
stephana [Fri, 5 Sep 2014 20:51:24 +0000 (13:51 -0700)]
Refactored frontend for the rebaseline server.
This is going to serve as the starting point for the new front-end once the backend is rewritten.
BUG=skia:
NOTRY=true
R=jcgregorio@google.com
Author: stephana@google.com
Review URL: https://codereview.chromium.org/
538613002
bsalomon [Fri, 5 Sep 2014 20:34:00 +0000 (13:34 -0700)]
"NULL !=" = NULL
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
544233002
stephana [Fri, 5 Sep 2014 20:21:42 +0000 (13:21 -0700)]
For certain input skpdiff segfaulted. This prevents the segfault and should fix the failed test in housekeeping.
BUG=skia:2902
R=mtklein@google.com, rmistry@google.com
Author: stephana@google.com
Review URL: https://codereview.chromium.org/
546753003
bsalomon [Fri, 5 Sep 2014 19:23:12 +0000 (12:23 -0700)]
Don't take a ref on GP in AutoEffectRestore.
BUG=skia:2889
R=joshualitt@chromium.org, robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
546043002
joshualitt [Fri, 5 Sep 2014 17:45:30 +0000 (10:45 -0700)]
Small fix for RODrawState
BUG=skia:
R=egdaniel@google.com, joshualitt@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
545273002
mtklein [Fri, 5 Sep 2014 17:36:39 +0000 (10:36 -0700)]
Suppress mystery leak.
BUG=skia:2916
R=caryclark@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
543063002
bsalomon [Fri, 5 Sep 2014 16:18:51 +0000 (09:18 -0700)]
Change behavior of GrDS::AutoEffectRestort wrt GPs.
BUG=skia:2889
R=robertphillips@google.com, joshualitt@chromium.org
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
545253002
bsalomon [Fri, 5 Sep 2014 13:13:43 +0000 (06:13 -0700)]
Add pop_back() to GrAllocator and add unit test.
BUG=skia:2889
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
538183002
borenet [Fri, 5 Sep 2014 04:14:04 +0000 (21:14 -0700)]
Update SKP version to 92
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
546583003
bsalomon [Thu, 4 Sep 2014 21:13:44 +0000 (14:13 -0700)]
Add method to GrProgramResource to record that pending a execution was completed.
BUG=skia:2889
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
543833002
mtklein [Thu, 4 Sep 2014 21:12:44 +0000 (14:12 -0700)]
Implement all SkCanvas overrides that SkPictureRecord does.
Primarily this is for isDrawingToLayer(). drawData() and onNewSurface() are
for completeness.
BUG=409138
R=robertphillips@google.com, mtklein@google.com, reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
545613002
joshualitt [Thu, 4 Sep 2014 20:52:34 +0000 (13:52 -0700)]
Updating expectations
TBR=
BUG=skia:
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
543813003
reed [Thu, 4 Sep 2014 20:18:36 +0000 (13:18 -0700)]
don't use local static bitmap -- racy and unnecessary
BUG=skia:
R=mtklein@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
540993003
bsalomon [Thu, 4 Sep 2014 20:12:37 +0000 (13:12 -0700)]
Add GrProgramElement base class for GrEffect with deferred exec ref.
BUG=skia:2889
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
537773004
reed [Thu, 4 Sep 2014 19:45:18 +0000 (12:45 -0700)]
add SK_API to forward declare in canvas.h
NOTRY=True
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
541073002
reed [Thu, 4 Sep 2014 19:14:36 +0000 (12:14 -0700)]
remove getTotalClipAsPath, privatize getTotalClip
R=robertphillips@google.com, djsollen@google.com
TBR=robertphilips
Author: reed@google.com
Review URL: https://codereview.chromium.org/
546493002
mtklein [Thu, 4 Sep 2014 17:50:53 +0000 (10:50 -0700)]
disable flaky test
BUG=skia:2912
R=reed@google.com, mtklein@google.com, tfarina@chromium.org
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
537363003
reed [Thu, 4 Sep 2014 16:02:23 +0000 (09:02 -0700)]
cleanup rasterclip helper
R=robertphillips@google.com
TBR=robertphilips
Author: reed@google.com
Review URL: https://codereview.chromium.org/
540983002
joshualitt [Thu, 4 Sep 2014 15:56:46 +0000 (08:56 -0700)]
Initial change to create GeometryProcessor
BUG=skia:
R=bsalomon@google.com, robertphillips@google.com, egdaniel@google.com, jvanverth@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
509153002
robertphillips [Thu, 4 Sep 2014 15:42:50 +0000 (08:42 -0700)]
Change SkPicture::draw to playback
R=reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
540963002
Mike Klein [Thu, 4 Sep 2014 15:08:07 +0000 (11:08 -0400)]
Finish off some lingering rebaselines.
BUG=skia:
Review URL: https://codereview.chromium.org/
538023002
Mike Klein [Thu, 4 Sep 2014 15:03:30 +0000 (11:03 -0400)]
rebaseline downsamplebitmaps
BUG=skia:
Review URL: https://codereview.chromium.org/
537913003
qiankun.miao [Thu, 4 Sep 2014 14:36:38 +0000 (07:36 -0700)]
Enable highQualityFilter_SSE2
With SSE2, bitmap_BGRA_8888_A_scale_rotate_bicubic gains about 40%
performance improvement on desktop i7-3770.
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
b381fa10d8079c58928058bb8a6db32b39f05e51
CQ_EXTRA_TRYBOTS=tryserver.skia:Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Release-Trybot
R=mtklein@google.com, humper@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/
525283002
robertphillips [Thu, 4 Sep 2014 14:24:18 +0000 (07:24 -0700)]
Switch Layer Hoisting over to SkRecord backend
R=bsalomon@google.com
TBR=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
540543002
Derek Sollenberger [Thu, 4 Sep 2014 13:51:33 +0000 (09:51 -0400)]
Temporarily disable tiling another GM that produces errors with the existing 64-bit ARM toolchain.
BUG=skia:2908
Review URL: https://codereview.chromium.org/
537343003
borenet [Thu, 4 Sep 2014 04:23:26 +0000 (21:23 -0700)]
Update SKP version to 91
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
544493002
mtklein [Wed, 3 Sep 2014 22:34:37 +0000 (15:34 -0700)]
SkThreadPool ~~> SkTaskGroup
SkTaskGroup is like SkThreadPool except the threads stay in
one global pool. Each SkTaskGroup itself is tiny (4 bytes)
and its wait() method applies only to tasks add()ed to that
instance, not the whole thread pool.
This means we don't need to bring up new thread pools when
tests themselves want to use multithreading (e.g. pathops,
quilt). We just create a new SkTaskGroup and wait for that
to complete. This should be more efficient, and allow us
to expand where we use threads to really latency sensitive
places. E.g. we can probably now use these in nanobench
for CPU .skp rendering.
Now that all threads are sharing the same pool, I think we
can remove most of the custom mechanism pathops tests use
to control threading. They'll just ride on the global pool
with all other tests now.
This (temporarily?) removes the GPU multithreading feature
from DM, which we don't use.
On my desktop, DM runs a little faster (57s -> 55s) in
Debug, and a lot faster in Release (36s -> 24s). The bots
show speedups of similar proportions, cutting more than a
minute off the N4/Release and Win7/Debug runtimes.
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
9c7207b5dc71dc5a96a2eb107d401133333d5b6f
R=caryclark@google.com, bsalomon@google.com, bungeman@google.com, mtklein@google.com, reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
531653002
Mike Klein [Wed, 3 Sep 2014 21:39:25 +0000 (17:39 -0400)]
remove unused n4 expectations
BUG=skia:
Review URL: https://codereview.chromium.org/
537163002
mtklein [Wed, 3 Sep 2014 21:17:48 +0000 (14:17 -0700)]
Revert of SkThreadPool ~~> SkTaskGroup (patchset #4 id:60001 of https://codereview.chromium.org/
531653002/)
Reason for revert:
Leaks, leaks, leaks.
Original issue's description:
> SkThreadPool ~~> SkTaskGroup
>
> SkTaskGroup is like SkThreadPool except the threads stay in
> one global pool. Each SkTaskGroup itself is tiny (4 bytes)
> and its wait() method applies only to tasks add()ed to that
> instance, not the whole thread pool.
>
> This means we don't need to bring up new thread pools when
> tests themselves want to use multithreading (e.g. pathops,
> quilt). We just create a new SkTaskGroup and wait for that
> to complete. This should be more efficient, and allow us
> to expand where we use threads to really latency sensitive
> places. E.g. we can probably now use these in nanobench
> for CPU .skp rendering.
>
> Now that all threads are sharing the same pool, I think we
> can remove most of the custom mechanism pathops tests use
> to control threading. They'll just ride on the global pool
> with all other tests now.
>
> This (temporarily?) removes the GPU multithreading feature
> from DM, which we don't use.
>
> On my desktop, DM runs a little faster (57s -> 55s) in
> Debug, and a lot faster in Release (36s -> 24s). The bots
> show speedups of similar proportions, cutting more than a
> minute off the N4/Release and Win7/Debug runtimes.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
9c7207b5dc71dc5a96a2eb107d401133333d5b6f
R=caryclark@google.com, bsalomon@google.com, bungeman@google.com, reed@google.com, mtklein@chromium.org
TBR=bsalomon@google.com, bungeman@google.com, caryclark@google.com, mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
533393002
mtklein [Wed, 3 Sep 2014 21:06:47 +0000 (14:06 -0700)]
SkThreadPool ~~> SkTaskGroup
SkTaskGroup is like SkThreadPool except the threads stay in
one global pool. Each SkTaskGroup itself is tiny (4 bytes)
and its wait() method applies only to tasks add()ed to that
instance, not the whole thread pool.
This means we don't need to bring up new thread pools when
tests themselves want to use multithreading (e.g. pathops,
quilt). We just create a new SkTaskGroup and wait for that
to complete. This should be more efficient, and allow us
to expand where we use threads to really latency sensitive
places. E.g. we can probably now use these in nanobench
for CPU .skp rendering.
Now that all threads are sharing the same pool, I think we
can remove most of the custom mechanism pathops tests use
to control threading. They'll just ride on the global pool
with all other tests now.
This (temporarily?) removes the GPU multithreading feature
from DM, which we don't use.
On my desktop, DM runs a little faster (57s -> 55s) in
Debug, and a lot faster in Release (36s -> 24s). The bots
show speedups of similar proportions, cutting more than a
minute off the N4/Release and Win7/Debug runtimes.
BUG=skia:
R=caryclark@google.com, bsalomon@google.com, bungeman@google.com, mtklein@google.com, reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
531653002
bsalomon [Wed, 3 Sep 2014 21:05:49 +0000 (14:05 -0700)]
Add reference base class to GrGpuResourcewith pending IO references.
BUG=skia:2889
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
533343002
Mike Klein [Wed, 3 Sep 2014 21:02:04 +0000 (17:02 -0400)]
fix up GM suppressions
BUG=skia:2911
Review URL: https://codereview.chromium.org/
538723002
robertphillips [Wed, 3 Sep 2014 20:46:02 +0000 (13:46 -0700)]
Remove use of EXPERIMENTAL_getActiveOps from layer hoisting code
This is getting in the way of switching to the SkRecord backend and is of questionable value.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
539693002
mtklein [Wed, 3 Sep 2014 20:40:52 +0000 (13:40 -0700)]
Turn downsamplebitmap GMs vertical to fit in 2048x2048.
BUG=skia:2911
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
536103002
djsollen [Wed, 3 Sep 2014 20:38:32 +0000 (13:38 -0700)]
Revert to enabling all of -O2 as it exposes a bug in the toolchain.
Instead as a workaround we will temporarily disable tiling the
few GMs that produce errors with the existing 64-bit ARM toolchain.
BUG=skia:2908
R=mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
537713002
mtklein [Wed, 3 Sep 2014 20:22:46 +0000 (13:22 -0700)]
On Android, skip tiling for all giantbitmap variants.
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
537693002
piotaixr [Wed, 3 Sep 2014 19:34:57 +0000 (12:34 -0700)]
Remove SkBitmapCache::Find/Add(_,width,height,_)
in favor of the versions having a SkIRect as input parameter
BUG=skia:2909
R=reed@google.com, junov@chromium.org
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/
539643002
reed [Wed, 3 Sep 2014 18:54:58 +0000 (11:54 -0700)]
Hide fields in SkImageInfo
R=rmistry@google.com
TBR=bsalomon
Author: reed@google.com
Review URL: https://codereview.chromium.org/
536003002
piotaixr [Wed, 3 Sep 2014 18:33:13 +0000 (11:33 -0700)]
The key for SkBitmapCache can now be genID+SkIRect
BUG=skia:2894
R=junov@chromium.org, reed@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/
518983002
robertphillips [Wed, 3 Sep 2014 18:04:30 +0000 (11:04 -0700)]
Replace SkPictureReplacementPlayback with GrRecordReplaceDraw
I think this is sufficiently specialized to keep it in Ganesh for the time being.
R=bsalomon@google.com, mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
535953002
djsollen [Wed, 3 Sep 2014 17:44:00 +0000 (10:44 -0700)]
Disable -fexpensive-optimizations on 64-bit ARM.
BUG=skia:2908
R=mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
535113004
mtklein [Wed, 3 Sep 2014 15:57:02 +0000 (08:57 -0700)]
Revert of Enable highQualityFilter_SSE2 (patchset #1 id:1 of https://codereview.chromium.org/
525283002/)
Reason for revert:
Color order looks wrong on Macs:
Before: http://chromium-skia-gm.commondatastorage.googleapis.com/gm/bitmap-64bitMD5/filterbitmap_image_mandrill_16.png/
12823183142873462143.png
After: http://chromium-skia-gm.commondatastorage.googleapis.com/gm/bitmap-64bitMD5/filterbitmap_image_mandrill_16.png/
13683040204546320578.png
Original issue's description:
> Enable highQualityFilter_SSE2
>
> With SSE2, bitmap_BGRA_8888_A_scale_rotate_bicubic gains about 40%
> performance improvement on desktop i7-3770.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
b381fa10d8079c58928058bb8a6db32b39f05e51
R=humper@google.com, qiankun.miao@intel.com
TBR=humper@google.com, qiankun.miao@intel.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
539523002
jvanverth [Wed, 3 Sep 2014 15:44:59 +0000 (08:44 -0700)]
Update fontcache GM to stress the font atlas.
Pulled out of https://codereview.chromium.org/
466363009/.
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
534253003
qiankun.miao [Wed, 3 Sep 2014 15:24:12 +0000 (08:24 -0700)]
Enable highQualityFilter_SSE2
With SSE2, bitmap_BGRA_8888_A_scale_rotate_bicubic gains about 40%
performance improvement on desktop i7-3770.
BUG=skia:
R=mtklein@google.com, humper@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/
525283002
bsalomon [Wed, 3 Sep 2014 14:19:50 +0000 (07:19 -0700)]
Remove GrDrawTarget::AutoRenderTargetRestore.
Pass GrRenderTarget in GrGpuG clear\bind methods.
BUG=skia:2889
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
533883004
mtklein [Wed, 3 Sep 2014 14:02:07 +0000 (07:02 -0700)]
Disable SSE4 S32A_Opaque blit.
This code sometimes generates a build warning that bothers Chrome.
BUG=399842,skia:2906
R=reed@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
538463003
reed [Wed, 3 Sep 2014 13:31:06 +0000 (06:31 -0700)]
remove flags that are already mirrored in chrome's SkUserConfig.h
NOTRY=True
TBR=fmalita@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
537563002
qiankun.miao [Wed, 3 Sep 2014 13:27:54 +0000 (06:27 -0700)]
Remove dead code in SkBitmapFilter_opts_SSE2.h/cpp
BUG=skia:
R=mtklein@google.com, humper@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/
530673002
Derek Sollenberger [Wed, 3 Sep 2014 13:10:20 +0000 (09:10 -0400)]
Update failing testimagefilter GM with new baseline and bug number
Review URL: https://codereview.chromium.org/
535843003
Derek Sollenberger [Wed, 3 Sep 2014 13:01:29 +0000 (09:01 -0400)]
Rebase NEON image procs based on C++ implementation.
BUG=skia:2845
Review URL: https://codereview.chromium.org/
532193003
reed [Wed, 3 Sep 2014 12:48:56 +0000 (05:48 -0700)]
Revert of Add gamma/sRGB tag to SkImageInfo (patchset #1 id:1 of https://codereview.chromium.org/
527073003/)
Reason for revert:
virtual gpu failures in layouttests
http://build.chromium.org/p/tryserver.blink/builders/linux_blink_dbg/builds/23717
[6:6:0903/041147:
1700960503:INFO:SkBitmap.cpp(1003)] ../../third_party/skia/src/core/SkBitmap.cpp:1003: failed assertion "fPixelRef->info() == pixelRef->info()"
[6:6:0903/041147:
1700961002:FATAL:SkBitmap.cpp(1003)] SK_CRASH
#0 0x7f9867df2c1e base::debug::StackTrace::StackTrace()
#1 0x7f9867e89e05 logging::LogMessage::~LogMessage()
#2 0x7f98689c4970 SkDebugf_FileLine()
#3 0x7f986870ebc6 SkBitmap::deepCopyTo()
#4 0x7f98690a3b6d blink::deepSkBitmapCopy()
#5 0x7f98690a3abe blink::ImageBuffer::copyImage()
#6 0x7f985fd4479e blink::ImageBitmap::ImageBitmap()
#7 0x7f985fd45942 blink::ImageBitmap::create()
#8 0x7f985fd84fdc blink::ImageBitmapFactories::createImageBitmap()
#9 0x7f985fd84d11 blink::ImageBitmapFactories::createImageBitmap()
#10 0x7f985ec9a7f2 blink::LocalDOMWindowV8Internal::createImageBitmap13Method()
#11 0x7f985ec96b0c blink::LocalDOMWindowV8Internal::createImageBitmapMethod()
#12 0x7f985ec91954 blink::LocalDOMWindowV8Internal::createImageBitmapMethodCallback()
#13 0x7f9869955af0 v8::internal::FunctionCallbackArguments::Call()
#14 0x7f98699833bd v8::internal::Builtin_HandleApiCall()
Original issue's description:
> Add gamma/sRGB tag to SkImageInfo
>
> This reverts commit
1cbc68f9659f15206d920dacd434ddf4b658ad1f.
>
> requires this to land in blink https://codereview.chromium.org/
531883002/
>
> Committed: https://skia.googlesource.com/skia/+/
2f6abdecc5c2f21da13003c615903679abc73fc7
R=fmalita@google.com, reed@chromium.org
TBR=fmalita@google.com, reed@chromium.org
NOTREECHECKS=true
NOTRY=true
Author: reed@google.com
Review URL: https://codereview.chromium.org/
535113002
Derek Sollenberger [Wed, 3 Sep 2014 12:31:02 +0000 (08:31 -0400)]
Update GM baselines for Arm64 bot.
Review URL: https://codereview.chromium.org/
530423003
reed [Wed, 3 Sep 2014 04:56:40 +0000 (21:56 -0700)]
Add gamma/sRGB tag to SkImageInfo
This reverts commit
1cbc68f9659f15206d920dacd434ddf4b658ad1f.
requires this to land in blink https://codereview.chromium.org/
531883002/
R=fmalita@google.com, reed@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/
527073003
mtklein [Tue, 2 Sep 2014 22:19:48 +0000 (15:19 -0700)]
Fix drawPosText() bounds bug.
We didn't catch this in our local tests because we tend to use default
kUTF8_TextEncoding with single-byte characters, which means N == byteLength.
BUG=409110
R=reed@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
531933002
reed [Tue, 2 Sep 2014 20:50:39 +0000 (13:50 -0700)]
add legacy guard for SK_SUPPORT_LEGACY_ALLOCPIXELS_BOOL to android
NOTRY=True
BUG=skia:
R=djsollen@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
530163002
pkasting [Tue, 2 Sep 2014 20:40:48 +0000 (13:40 -0700)]
Address MSVC warnings about possible value truncation. In the process removes some apparently unused code.
BUG=81439
TEST=none
R=reed@google.com
Author: pkasting@chromium.org
Review URL: https://codereview.chromium.org/
517763002
djsollen [Tue, 2 Sep 2014 20:34:49 +0000 (13:34 -0700)]
Remove legacy (and also broken) SkPicture constructor.
R=robertphillips@google.com, reed@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
532703004
jvanverth [Tue, 2 Sep 2014 20:15:40 +0000 (13:15 -0700)]
Fix matrix similarity test on arm64
Addresses precision issue by using a simpler test.
Also fixes issues with IvMatrix::preservesRightAngles, and adds unit tests.
BUG=skia:2405
R=robertphillips@google.com, egdaniel@google.com, djsollen@google.com, reed@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
520123002
egdaniel [Tue, 2 Sep 2014 19:53:12 +0000 (12:53 -0700)]
Rebaseline bezier cubics
TBR=bsalomon@google.com
NOTRY=True
BUG=skia:
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
528033002
reed [Tue, 2 Sep 2014 19:50:45 +0000 (12:50 -0700)]
make allocPixels throw on failure
BUG=skia:
R=mtklein@google.com, fmalita@google.com, fmalita@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/
510423005
mtklein [Tue, 2 Sep 2014 19:03:31 +0000 (12:03 -0700)]
SkRecordPartialDraw with less code duplication
BUG=skia:
R=robertphillips@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
527423002
piotaixr [Tue, 2 Sep 2014 18:50:59 +0000 (11:50 -0700)]
Rename ScaledImageCache.cpp to SkResourceCacheTest.cpp
BUG=skia:
R=junov@chromium.org, reed@android.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/
518213003
piotaixr [Tue, 2 Sep 2014 18:27:11 +0000 (11:27 -0700)]
Added Doc for GetAllocator in SkResourceCache and SkBitmapCache
BUG=skia:2896
R=junov@chromium.org, reed@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/
533713003
robertphillips [Tue, 2 Sep 2014 17:20:50 +0000 (10:20 -0700)]
Reorganize Layer Hoisting code
With the new MultiPictureDraw API the GrContext will be performing the layer hoisting (instead of the SkGpuDevice). This CL being moving the layer hoisting functionality to GrLayerHoister rather then dumping it straight into GrContext.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
531733003
egdaniel [Tue, 2 Sep 2014 17:01:30 +0000 (10:01 -0700)]
When ignoring color input don't use vertex attribs on gpu
Also rename SolidWhite_ColorInput enum to be AllOnes_ColorInput to better reflect what it's use is
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
525433002
djsollen [Tue, 2 Sep 2014 15:57:39 +0000 (08:57 -0700)]
Disable NEON procs for box blur as it produces invalid results
R=reed@google.com, mtklein@google.com, senorblanco@google.com
TBR=reed@google.com
BUG=skia:2845
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
527973002
egdaniel [Tue, 2 Sep 2014 15:02:38 +0000 (08:02 -0700)]
Add option to add precision to varyings in shader
Also use highp varying on bezier cubics to fix numerical issues for n10 and n4.
BUG=skia:2860
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
522303004
bsalomon [Tue, 2 Sep 2014 14:54:47 +0000 (07:54 -0700)]
Use non-VBO vertex arrays on QC GPUs.
BUG=skia:2901
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
529993003