Commit Graph

24440 Commits

Author SHA1 Message Date
borenet
9c8a32ff45 Stop uploading nanobench results on Valgrind bot
It's not needed, and it's probably making the bot a lot slower.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2382313003

Review-Url: https://codereview.chromium.org/2382313003
2016-09-30 12:39:31 -07:00
borenet
d5603e670b upload_dm_results: Remove JSON validation step
This is infra-failing frequently for some reason, possibly due to large
file size?

TBR=stephana
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2383163002

Review-Url: https://codereview.chromium.org/2383163002
2016-09-30 12:18:47 -07:00
Hal Canary
b3480e1cb7 SkPDF: de-duplicate text-as-paths
TBR=

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2851

Change-Id: I0accbca13945587cd5ef903cbd4127f1f6a3fb13
Reviewed-on: https://skia-review.googlesource.com/2851
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2016-09-30 19:14:20 +00:00
benjaminwagner
c8962518dd Unomit SkSL in public.bzl.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2380563006

Review-Url: https://codereview.chromium.org/2380563006
2016-09-30 12:06:27 -07:00
Brian Salomon
789e25ea7d Add gn option to set the location of the Vulkan SDK
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2848

Change-Id: I0b60ae03d7b155d4f9a581cab6b551e152b03a86
Reviewed-on: https://skia-review.googlesource.com/2848
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-09-30 18:02:59 +00:00
fmalita
2e36e88f40 SkRWBuffer: preallocate 'initialCapacity'
We're currently ignoring the hint, resulting in multiple unneeded
allocations later.

BUG=chromium:651698
R=scroggo@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2384763002

Review-Url: https://codereview.chromium.org/2384763002
2016-09-30 10:52:08 -07:00
Mike Klein
c8deb02334 Clean up public.bzl after G3-side CL.
One more tiny G3 CL after this...

BUG=skia:
NOTRY=true

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2847

Change-Id: Id237ca3853614c2b9b68eb0a679f6e64b3e95983
Reviewed-on: https://skia-review.googlesource.com/2847
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-09-30 17:38:30 +00:00
Brian Osman
c68d4aa4ea Helper functions to do SkColor -> GrColor4f
I started fixing more effects and realized I needed something like this.
Wanted to land it separately. After this, I'll add the DC's cached xform
from sRGB to AsFPArgs, so that we can easily leverage this code in more
places (mostly GrConstColorProcessor, or any effect that falls back to
that based on invariants, etc...)

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2844

Change-Id: I335546f02a6c49620494d736140a72c14441b35d
Reviewed-on: https://skia-review.googlesource.com/2844
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-09-30 17:33:45 +00:00
reed
d921dbb9b8 Propagate validation errors from inner readbuffer when deserializing picture. Also allow null paints.
BUG=skia:5812
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2379383002

Review-Url: https://codereview.chromium.org/2379383002
2016-09-30 09:27:20 -07:00
jvanverth
84741b3084 Add fence support for TransferBuffers
BUG=skia:4604
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2384463003

Review-Url: https://codereview.chromium.org/2384463003
2016-09-30 08:39:03 -07:00
Mike Klein
7147505955 Fix G3 excludes lists for AVX2 -> HSW.
BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2843

Change-Id: I8dfd4133808dd768217a7978d7ae3f6d518cd744
Reviewed-on: https://skia-review.googlesource.com/2843
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-09-30 15:35:24 +00:00
Hal Canary
f50ff39f47 SkPDF: subset drawImageRect while still deduping
- Replace SkImageBitmap with SkImageSubset

  - SkBitmapKey becomes trivial for simplicity.

  - SkPDFCanvas::onDraw(Bitmap|Image)Rect now clip and call
    SkCanvas::onDraw(Bitmap|Image)Rect.

  - SkPDFDevice::draw(Bitmap|BitmapRect|Sprite) now convert bitmap
    into SkImageSubset via make_image_subset function.

  - SkPDFDevice::draw(Image|Bitmap)Rect now implemented again.

  - SkPDFDevice::internalDrawImage now performs image subsetting
    as needed, while still deduping properly.

BUG=633528

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2785

Change-Id: I063346d12b0e9c6b6c0c4943ee25400c88aa1a44
Reviewed-on: https://skia-review.googlesource.com/2785
Reviewed-by: Ben Wagner <bungeman@google.com>
2016-09-30 15:22:06 +00:00
Mike Klein
78d5a3bac5 Add an SkOpts target for Haswell+ Intel chips.
Haswell brought a whole slew of handy new instructions for us (AVX2, FMA, BMI1+BMI2) and also feature F16C, which came one generation earlier on Ivybridge.  We work with integers often enough that we really want to target AVX2 instead of AVX, and this means it's pretty practical to ask for all those other goodies along with it.

Chrome's GN files and Google3's BUILD file will need an update, before or after this CL.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2840
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I826daf77b5104664c5d31ddaabee347e287b87a2
Reviewed-on: https://skia-review.googlesource.com/2840
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2016-09-30 15:10:48 +00:00
fmalita
d214d6ae69 Revert of Turned on SkSL->GLSL compiler (patchset #41 id:880001 of https://codereview.chromium.org/2288033003/ )
Reason for revert:
1) Chromium roll failures: https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/307297/steps/screenshot_sync_tests%20on%20NVIDIA%20GPU%20on%20Linux%20%28with%20patch%29%20on%20Linux/logs/stdio

2) G3 roll failures

3) iOS failures: https://uberchromegw.corp.google.com/i/client.skia/builders/Perf-iOS-Clang-iPad4-GPU-SGX554-Arm7-Release/builds/7177/steps/perf_skia%20on%20iOS-9.2/logs/stdio

Original issue's description:
> Turned on SkSL->GLSL compiler
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003
>
> Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
> Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
> Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89

TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/2387643003
2016-09-30 08:05:24 -07:00
Ben Wagner
bc34404dc3 Implement 'action' in gn_to_cmake.py.
With this change it is possible to build all Skia targets.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2784

Change-Id: I5c53a6ba5746d210e0ae8f7a29b409d40c7b9bff
Reviewed-on: https://skia-review.googlesource.com/2784
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-09-30 13:29:52 +00:00
ethannicholas
f008b0a59f Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Review-Url: https://codereview.chromium.org/2288033003
2016-09-30 06:23:25 -07:00
fmalita
ed38772630 Revert of Fix gamut GM to work w/serialization configs. Remove it from blacklist. (patchset #2 id:20001 of https://codereview.chromium.org/2383513002/ )
Reason for revert:
Valgrind errors:

==2603== Invalid read of size 8
==2603==    at 0xA284E0: SkSurface::getCanvas() (SkSurface_Base.h:108)
==2603==    by 0x4F0B0F: gamut_GM(SkCanvas*) (gamut.cpp:163)
==2603==    by 0x483B77: DM::GMSrc::draw(SkCanvas*) const (DMSrcSink.cpp:69)
==2603==    by 0x485F04: DM::GPUSink::draw(DM::Src const&, SkBitmap*, SkWStream*, SkString*) const (DMSrcSink.cpp:1226)
==2603==    by 0x47E974: dm_main() (DM.cpp:1035)
==2603==    by 0x6652EC4: (below main) (libc-start.c:287)
==2603==  Address 0x20 is not stack'd, malloc'd or (recently) free'd
==2603==

https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind/builds/1410/steps/test_skia%20on%20Ubuntu/logs/stdio

Original issue's description:
> Fix gamut GM to work w/serialization configs. Remove it from blacklist.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2383513002
>
> Committed: https://skia.googlesource.com/skia/+/e4a17372a188f1dffc3f9c9bcdfbb9860728630b

TBR=reed@google.com,borenet@google.com,brianosman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2380313002
2016-09-30 06:14:49 -07:00
brianosman
35a02a83f5 Support monitor profile in SampleApp (on Windows)
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2381913003

Review-Url: https://codereview.chromium.org/2381913003
2016-09-29 14:37:02 -07:00
bsalomon
872b4c8cef Remove soft clip bool from SkCanvas
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2380163002

Review-Url: https://codereview.chromium.org/2380163002
2016-09-29 13:53:49 -07:00
brianosman
95e8d0a4ae Remove caching from the draw-atlas GMs. Fixes bugs cycling backends.
When we would change backend or color type in SampleApp, we'd be rendering
from a no-longer-valid image, leading to missing output, etc...

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2381893004

Review-Url: https://codereview.chromium.org/2381893004
2016-09-29 13:43:49 -07:00
csmartdalton
eb0d91cfa2 Add skstd version of std::exchange
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2381793004

Review-Url: https://codereview.chromium.org/2381793004
2016-09-29 13:11:23 -07:00
Mike Reed
5cf7b6175e simplify composing raster surface into window
BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2820

Change-Id: Ifce7bce8b764d2dea02733d823396576a7da609f
Reviewed-on: https://skia-review.googlesource.com/2820
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2016-09-29 19:58:04 +00:00
fmalita
ad7cb810dc Reenable GM:arithmode
Convert to SkXfermodeImageFilter and reenable.

R=reed@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2379873003

Review-Url: https://codereview.chromium.org/2379873003
2016-09-29 12:25:26 -07:00
raftias
c6cc28c35b Fixed invalid memory access issue in SkColorSpaceXform::apply()
Passing in a large buffer along with a source colour space that
used a CLUT would cause apply() to read freed heap memory, or
for smaller buffers read possibly re-used stack memory.
The code previously likely lucked out due to optimizations
removing most or all of the subsequent stack allocations.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2759

Change-Id: I39f357bce080c4d737a83dd019f0d1ccbc56f995
Reviewed-on: https://skia-review.googlesource.com/2759
Commit-Queue: Robert Aftias <raftias@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2016-09-29 18:59:53 +00:00
Mike Klein
fa9f241a85 Add an enum layer of indirection for stock raster pipeline stages.
This is handy now, and becomes necessary with fancier backends:
   - most code can't speak the type of AVX pipeline stages,
     so indirection's definitely needed there;
   - if the pipleine is entirely composed of stock stages,
     these enum values become an abstract recipe that can be JITted.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2782
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: Iedd62e99ce39e94cf3e6ffc78c428f0ccc182342
Reviewed-on: https://skia-review.googlesource.com/2782
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-09-29 18:11:29 +00:00
brianosman
69e7eba6ae Use SkOnce to squelch command buffer spam
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2382793002

Review-Url: https://codereview.chromium.org/2382793002
2016-09-29 10:49:47 -07:00
brianosman
a9c3c6aea5 Recent image filter work now allows this check to be enabled.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2379053002

Review-Url: https://codereview.chromium.org/2379053002
2016-09-29 10:08:36 -07:00
bsalomon
7c2213ba61 Revert of Explicit control in tools of ANGLE frontend and backend (patchset #6 id:90001 of https://codereview.chromium.org/2381033002/ )
Reason for revert:
Broke bots

Original issue's description:
> Explicit control in tools of ANGLE frontend and backend
>
> Update the ANGLE test GL context, GrContextFactory, and config parsing to allow explicit control of ANGLE front/backend.
>
> This will allow us to explicitly test ES2 vs ES3 interfaces to ANGLE as well as D3D9, D3D11, and OpenGL backends.
>
> Also makes the angle api types valid in all builds (but will just fail when SK_ANGLE=1 or not on windows for the d3d backends).
>
> BUG=skia:5804
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2381033002
>
> Committed: https://skia.googlesource.com/skia/+/50094fb489543655df026be4e4f99e09e57a1f49

TBR=brianosman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5804

Review-Url: https://codereview.chromium.org/2384483003
2016-09-29 10:07:22 -07:00
bsalomon
50094fb489 Explicit control in tools of ANGLE frontend and backend
Update the ANGLE test GL context, GrContextFactory, and config parsing to allow explicit control of ANGLE front/backend.

This will allow us to explicitly test ES2 vs ES3 interfaces to ANGLE as well as D3D9, D3D11, and OpenGL backends.

Also makes the angle api types valid in all builds (but will just fail when SK_ANGLE=1 or not on windows for the d3d backends).

BUG=skia:5804
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2381033002
NOTREECHECKS=true
NOTRY=true
NOPRESUBMIT=true

Review-Url: https://codereview.chromium.org/2381033002
2016-09-29 09:49:06 -07:00
benjaminwagner
6b1da0a538 Revert of Add SK_SUPPORT_LEGACY_HAIRLINE_END_CAP to work around dependent test failure. (patchset #1 id:1 of https://codereview.chromium.org/2379843002/ )
Reason for revert:
Dependent test has been fixed.

Original issue's description:
> Add SK_SUPPORT_LEGACY_HAIRLINE_END_CAP to work around dependent test failure.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2379843002
>
> Committed: https://skia.googlesource.com/skia/+/aa6ef3ebc60e0f70db0e599f4cd34d5be06486c9

TBR=caryclark@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2379993004
2016-09-29 09:36:29 -07:00
Mike Klein
baaf8ad952 Start moving SkRasterPipeline stages to SkOpts.
This lets them pick up runtime CPU specializations.  Here I've plugged in SSE4.1.  This is still one of the N prelude CLs to full 8-at-a-time AVX.

I've moved the union of the stages used by SkRasterPipelineBench and SkRasterPipelineBlitter to SkOpts... they'll all be used by the blitter eventually.  Picking up SSE4.1 specialization here (even still just 4 pixels at a time) is a significant speedup, especially to store_srgb(), so much that it's no longer really interesting to compare against the fused-but-default-instruction-set version in the bench.  So that's gone now.

That left the SkRasterPipeline unit test as the only other user of the EasyFn simplified interface to SkRasterPipeline.  So I converted that back down to the bare-metal interface, and EasyFn and its friends became SkRasterPipeline_opts.h exclusive abbreviations (now called Kernel_Sk4f).  This isn't really unexpected: SkXfermode also wanted to build up its own little abstractions, and once you build your own abstraction, the value of an additional EasyFn-like layer plummets to negative.

For simplicity I've left the SkXfermode stages alone, except srcover() which was always part of the blitter.  No particular reason except keeping the churn down while I hack.  These _can_ be in SkOpts, but don't have to be until we go 8-at-a-time.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2752
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I3b476b18232a1598d8977e425be2150059ab71dc
Reviewed-on: https://skia-review.googlesource.com/2752
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-09-29 16:20:26 +00:00
Mike Klein
8e6791fb9a Disable FP contraction on -Fast bot.
It's more annoying than helpful to have GCC turn mul,add into fma.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2780

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot

Change-Id: I63f4615f73aed112f10f6cb516d899b820918298
Reviewed-on: https://skia-review.googlesource.com/2780
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
2016-09-29 15:52:46 +00:00
Mike Klein
1e114f1368 *SkTCast<int*>(float*) -> memcpy
In some build configurations (I think, GN, GCC 6, Debug) I get a warning that i is used unintialized.  This likely has something to do with GCC correctly seeing that the SkTCast construction there is illegal aliasing, and perhaps thus "doesn't happen".  Might be that if the SkTCast gets inlined, it decides its implementation is secretly kosher, and so Release builds don't see this.  None of this happens with the GCCs we have on the bots... too old?

Instead use memcpy() here, which is well defined to do what we intended.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2758

Change-Id: Iaf5c75fbd852193b0b861bf5e71450502511d102
Reviewed-on: https://skia-review.googlesource.com/2758
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2016-09-29 15:48:04 +00:00
halcanary
919f21f877 SkPDF/Documentation: backend limitations
NOTRY=true

Review-Url: https://codereview.chromium.org/2377473002
2016-09-29 08:43:41 -07:00
benjaminwagner
2b7394b9fb Fix obvious bug in KTX encoder.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2383523002

Review-Url: https://codereview.chromium.org/2383523002
2016-09-29 08:20:41 -07:00
brianosman
e4a17372a1 Fix gamut GM to work w/serialization configs. Remove it from blacklist.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2383513002

Review-Url: https://codereview.chromium.org/2383513002
2016-09-29 07:25:45 -07:00
benjaminwagner
aa6ef3ebc6 Add SK_SUPPORT_LEGACY_HAIRLINE_END_CAP to work around dependent test failure.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2379843002

Review-Url: https://codereview.chromium.org/2379843002
2016-09-29 06:42:52 -07:00
csmartdalton
6904b19f18 skpbench: use accumulative result as the default
Uses accum instead of median for the first column in skpbench.cpp, and
the default result for parseskpbench.py. The accum is empirically
proving to be more repeatable than the median.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2378383002

Review-Url: https://codereview.chromium.org/2378383002
2016-09-29 06:23:23 -07:00
csmartdalton
e038489a74 skpbench: use double buffering instead of triple
We have no need for our command stream to get more than a couple of
frames deep. Any more and we only increase our chances of sporadic
flushing and unreliable timings.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2376043002

Review-Url: https://codereview.chromium.org/2376043002
2016-09-28 14:53:07 -07:00
Mike Reed
627778d5ba isABitmap is deprecated, use isAImage
BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2748

Change-Id: I7006a3231ff0e9e39b187deae550364bc97f49d6
Reviewed-on: https://skia-review.googlesource.com/2748
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2016-09-28 21:42:04 +00:00
bungeman
e95ea08cf4 Improve GN to CMake translation for building.
This adds proper target types, dependencies, and library handling. This
is enough to build and run dm on Linux and Mac.

Change-Id: I5220f67f7dd3dbada7ad03ef83fff8fd80158fad
Reviewed-on: https://skia-review.googlesource.com/2664
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2016-09-28 21:20:29 +00:00
brianosman
2331a5f2e0 Tag checkerboard bitmaps as sRGB
Significantly reduces the diff between legacy and sRGB/F16 on about 25
GMs. This is just the biggest piece of low-hanging fruit. Many GMs create
N32 raster surfaces to procedurally generate source textures, and I'd like
to fix all of them. It's much easier to reason about the GMs (is sRGB
doing the right thing) when everything is tagged like this - the only
expected differences are due to filtering and blending.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2368933003

Committed: https://skia.googlesource.com/skia/+/fe843cea499ba163d53281425af210b1887d28e7
Review-Url: https://codereview.chromium.org/2368933003
2016-09-28 14:02:10 -07:00
brianosman
f8d2c8df47 Latest ANGLE as of September 27, 2016
Includes a fix for ES3 texture reuse that solves many of the problems
we saw using ES3. (There are still issues with some YUV planes).

Also includes a fix for anglebug.com/1478, so half-float formats are
allowed again.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2302993004

Review-Url: https://codereview.chromium.org/2302993004
2016-09-28 14:01:51 -07:00
csmartdalton
037adf34f5 skpbench: run for a fixed duration
Runs for a fixed amount of time instead of a fixed amount of samples.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2374093002

Review-Url: https://codereview.chromium.org/2374093002
2016-09-28 13:56:01 -07:00
brianosman
79523901c9 Make applyCropRect/pad_image convert to the output color space
The source's color space may not be renderable, leading to makeSurface
failing. This is unfortunate, but this solution is by far the simplest.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2380833002

Review-Url: https://codereview.chromium.org/2380833002
2016-09-28 13:03:05 -07:00
bsalomon
808ecbb135 Use brackets for explicit GPU config params in tools
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2378163003

Review-Url: https://codereview.chromium.org/2378163003
2016-09-28 12:40:22 -07:00
Mike Klein
645999fe78 monobench: usability tweaks
- Allow an second argument to limit the number of samples.
 - If no benchmarks match, warn and exit instead of infinitely looping.

The default limit of 2147483647 10ms samples will run for 9 months, which I think is long enough to not need any special infinity logic.
BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2747

Change-Id: Id70cf77b624e19dc04e1d75a71385aee3c988a80
Reviewed-on: https://skia-review.googlesource.com/2747
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-09-28 19:35:50 +00:00
Ben Wagner
2384cfaa5d Roll buildtools adb8bf4e8fc..5fd66957f08bb7
adb8bf4e8f..5fd66957f0

Primarily to pick up
https://chromium.googlesource.com/chromium/src/+/d51d3527da33

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2749

Change-Id: I3f9ac18c8946fa28effcf8c8cff3bbd1120a86df
Reviewed-on: https://skia-review.googlesource.com/2749
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2016-09-28 18:42:53 +00:00
brianosman
e25d71ccbc Gradients are serialized (and can be constructed) as SkColor4f + SkColorSpace
Added gradient shader factories that take SkColor4f + SkColorSpace.
Modified Descriptor to only store SkColor4f + SkColorSpace.
Existing factories make use of helper code to convert SkColor and
forward to the new factories.

Bumped SKP version to handle new gradient serialization format.
I was toying with using half-float when serializing SkColor4f,
despite my aggressive packing of flags, this format is significantly
bigger.

Also added GM to use 4f factories. This GM should (and does)
look identical to the existing gradients GM.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2370063002

Review-Url: https://codereview.chromium.org/2370063002
2016-09-28 11:27:28 -07:00
halcanary
ca9654e4c6 documentation: update PDF design doc
NOTRY=true

Review-Url: https://codereview.chromium.org/2295373002
2016-09-28 11:19:52 -07:00