Commit Graph

37376 Commits

Author SHA1 Message Date
Kevin Lubick
93faa6795b Make CCPR optional
This can reduce code size where CCPR is not supported (e.g. WebGL 1.0)

Drops 130k uncompressed, 50k compressed.

Bug: skia:
Change-Id: I8af7e681e1f3520a18e0c0d55e318dcf88206584
Reviewed-on: https://skia-review.googlesource.com/c/161041
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-10-10 20:20:01 +00:00
Hal Canary
04ac46135f SkPDF: more accurate (float) colors from paint
Does not yet affect colors from gradient shaders.

Serialize colors with 4 digits of accuracy, not 3.

Resulting PDFs are usually slightly larger, but render the same when
rendered into an 8-bit buffer.

Change-Id: I64336f3a1f34021f9ddb723bd8a16d51ddfea0f4
Reviewed-on: https://skia-review.googlesource.com/c/161141
Commit-Queue: Hal Canary <halcanary@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-10-10 19:30:23 +00:00
recipe-roller
6187f09dcf Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/2fddb95698211db1373ebe2b16091a54eac51c9c [git recipe_module] Add tags flag for fetch (hinoka@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I09e1e6e522db8dc5330b225f66b2720ad96cfd83
Reviewed-on: https://skia-review.googlesource.com/c/161145
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-10-10 19:23:31 +00:00
Hal Canary
c0a74a1f76 SkTArray: clean up, no change to behaviour
Change-Id: I15883216995a0ffe1ee1b183291cf0ea5867f613
Reviewed-on: https://skia-review.googlesource.com/c/161042
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-10-10 19:13:30 +00:00
Kevin Lubick
e805b243f6 Tweak to compile flags
Bug: skia:
Change-Id: I067fa83e1a07b244bec71ed4f95c144dc7e2edc1
Reviewed-on: https://skia-review.googlesource.com/c/161143
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-10-10 19:10:26 +00:00
Robert Phillips
8505a0a842 Add --reduceOpListSplitting to a swath of bots
Change-Id: I92ea1b75bc72515d55bd753d42a6bfa0e701829e
Reviewed-on: https://skia-review.googlesource.com/c/161045
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-10-10 18:21:24 +00:00
skia-autoroll
97b79b21e2 Roll third_party/externals/angle2 9d0bb3d4d5c0..f955bdac1ce6 (1 commits)
9d0bb3d4d5..f955bdac1c


git log 9d0bb3d4d5c0..f955bdac1ce6 --date=short --no-merges --format='%ad %ae %s'
2018-10-10 syoussefi@google.com Fix vulkan_null perftests on Linux


Created with:
  gclient setdep -r third_party/externals/angle2@f955bdac1ce6

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=stani@google.com

Change-Id: Ifc21d0aab9de1968433692615852d373211ab0b3
Reviewed-on: https://skia-review.googlesource.com/c/161180
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-10-10 18:20:24 +00:00
Mike Klein
48fb8d8b30 consolidate SkBinaryWriteBuffers
It looks like the attached bug is about stack overflow when
constructing the two SkBinaryWriteBuffers (on the stack).

I can't find any really obvious reason we need to keep the
path effect and the mask effect separate here any longer,
so I've consolidated into a single buffer and tag for both.

Minor refactoring: static, const, etc.

Bug: chromium:891693
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I48c411968b62633f13a83e24c3a202a457485b6d
Reviewed-on: https://skia-review.googlesource.com/c/161160
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2018-10-10 18:03:33 +00:00
Brian Osman
431ac56177 Use SkSurfaceValidateRasterInfo in some lesser-used canvas factories
The previous version would reject valid configs (like non-N32 8888).
This changes the results of some unit tests:

- Creating a zero-sized canvas via MakeRasterDirect now fails (like
  it would if you tried to create a zero-sized surface).
- The picture image generator can now produce BGRA and RGBA results,
  regardless of N32, and can produce unpremul.

Bug: skia:
Change-Id: Ifd9fe98adf56748f73eaea01118c928b0a13606b
Reviewed-on: https://skia-review.googlesource.com/c/161120
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-10-10 18:00:00 +00:00
Jim Van Verth
f00b16233d Fix up SkImage_GpuYUVA MakePromiseYUVATexture
Bug: skia:7901
Change-Id: I8722373148f99cb16e2aa9c825832bb83fa4e979
Reviewed-on: https://skia-review.googlesource.com/c/161043
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-10-10 17:41:23 +00:00
Robert Phillips
6ba8c83234 Fix yuv_to_rgb_effect GM
This bug was introduced in https://skia-review.googlesource.com/c/skia/+/160162 (Make GrYUVtoRGBEffect more flexible)

I don't know why I wasn't seeing this locally!

Change-Id: Ic4d9b88b70c6d691d1e30d5ee0dc592a00b9b4e7
Reviewed-on: https://skia-review.googlesource.com/c/161044
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-10-10 16:19:25 +00:00
Chris Dalton
51e8b7e818 ccpr: Use ceil/floor to round out path cover octagons
We used to round out octagons with a bloat of .4911 px in order to
achieve conservative raster. This worked in theory, but the GL and
Vulkan specs only require 4 bits of subpixel precision in the
rasterizer. This didn't allow enough precision to properly handle our
outset value of .4911 on all platforms. Using ceil/floor instead
should work on any rasterizer.

Bug: swiftshader:110
Change-Id: I7f5b754e056f11353ac9d14089dbc71ba8fa405d
Reviewed-on: https://skia-review.googlesource.com/c/160995
Reviewed-by: Alexis Hetu <sugoi@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-10-10 16:03:25 +00:00
Kevin Lubick
37baac128f Remove old code size analysis
Was replaced with:
https://skia-review.googlesource.com/c/skia/+/160220
https://skia-review.googlesource.com/c/skia/+/160765
https://skia-review.googlesource.com/c/skia/+/160920

Bug: skia:
Change-Id: Ia87f4d548cd33dcd6c21c3711aef65ac2dab9f60
Reviewed-on: https://skia-review.googlesource.com/c/160940
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-10-10 14:25:17 +00:00
Kevin Lubick
2626104520 Track Skia's Code size in Flutter
This creates a nice readable display, since Bloaty
doesn't allow filtering through the CLI.

Additionally, rename the flutter job to accurately
represent what settings it actually is (32 bit ARM built
with clang).

Bug: skia:
Change-Id: Iaed313caf43a31105adc8c85c545cc6cb2bcbe30
Reviewed-on: https://skia-review.googlesource.com/c/160920
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-10-10 14:24:57 +00:00
Robert Phillips
b7a98efe40 Add reduceOpListSplitting flag
This allows setting of GrContextOptions::fReduceOpListSplitting

The fActiveOpList pointer isn't used when fReduceOpListSplitting is enabled.

Change-Id: I06d6b03a4bd80964a54e0f5231023a679aa97a0c
Reviewed-on: https://skia-review.googlesource.com/c/161040
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-10-10 14:12:08 +00:00
skia-autoroll
fadd2a7fa2 Roll third_party/externals/swiftshader aaaf93a38a83..d6126aea667e (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/aaaf93a38a83..d6126aea667e


git log aaaf93a38a83..d6126aea667e --date=short --no-merges --format='%ad %ae %s'
2018-10-10 capn@google.com Grant more downstream SwiftShader approval rights.


Created with:
  gclient setdep -r third_party/externals/swiftshader@d6126aea667e

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=stani@google.com

Change-Id: I63e28f0e22951eecdfd5cf4a8595a435446d588c
Reviewed-on: https://skia-review.googlesource.com/c/161080
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-10-10 14:07:47 +00:00
Jim Van Verth
1499d9eaac Fix up degenerate quads
Bug: chromium:890698
Change-Id: Iec7117cf8399456a2595d038d5ff68d52ed818bd
Reviewed-on: https://skia-review.googlesource.com/c/160941
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-10-10 14:03:02 +00:00
Michael Ludwig
43a5497bf6 Round clear rects in drawPaint()
Bug: skia:
Change-Id: Iac4ef64d7b549ca51272996df0771cc3b25f024e
Reviewed-on: https://skia-review.googlesource.com/c/160943
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2018-10-10 13:58:07 +00:00
Robert Phillips
94ade75219 Make GrYUVtoRGBEffect more flexible
This makes GL & Vulkan render the wacky_yuv_formats GM correctly (transparency and all).

Bug: skia:7903
Change-Id: I09cf872beae3fd0fc1c5109b03ca1714ed51ae85
Reviewed-on: https://skia-review.googlesource.com/c/160162
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-10-10 13:57:57 +00:00
skia-autoroll
311739b2dd Roll third_party/externals/angle2 31116738adbd..9d0bb3d4d5c0 (3 commits)
31116738ad..9d0bb3d4d5


git log 31116738adbd..9d0bb3d4d5c0 --date=short --no-merges --format='%ad %ae %s'
2018-10-10 jmadill@chromium.org Pass bit mask to ContextImpl::syncState.
2018-10-10 jiawei.shao@intel.com ES31: Enable dEQP cases on texture gathering on swizzled 2d array textures
2018-10-09 jmadill@chromium.org Optimize ValidateBindTexture type check.


Created with:
  gclient setdep -r third_party/externals/angle2@9d0bb3d4d5c0

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=stani@google.com

Change-Id: I29f10858acced699eaf125b451c3dbaf025638b7
Reviewed-on: https://skia-review.googlesource.com/c/160963
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-10-10 09:28:36 +00:00
skia-recreate-skps
f5a0921474 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Id359fe42939bcb91ee4e087d52280f470af9c81c
Reviewed-on: https://skia-review.googlesource.com/c/161000
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-10-10 05:49:33 +00:00
recipe-roller
a38ab3b094 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/83bd7f4cd5fa45c7b2b8a9187d3c3d3c13525621 git-cl: Print response headers on 404 Gerrit RPC status. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie8bd678e65d32e2cbaccc706e594e785ec8a492e
Reviewed-on: https://skia-review.googlesource.com/c/160902
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-10-10 01:10:52 +00:00
skia-autoroll
acd3b04063 Roll third_party/externals/angle2 e7ece9e22c87..31116738adbd (7 commits)
e7ece9e22c..31116738ad


git log e7ece9e22c87..31116738adbd --date=short --no-merges --format='%ad %ae %s'
2018-10-09 jmadill@chromium.org Inline many more hotspots for the Texture draw test.
2018-10-09 jiajia.qin@intel.com Fix the regression bug for ComputeBoids
2018-10-09 jmadill@chromium.org Use angle::Result in front-end. (Part 1)
2018-10-09 jmadill@chromium.org Use angle::Result in allocation and math check macros.
2018-10-09 courtneygo@google.com Put feature utility into it's own library
2018-10-09 syoussefi@chromium.org Vulkan: Implement occlusion queries
2018-10-09 jmadill@chromium.org Add more draw buffer related tests.


Created with:
  gclient setdep -r third_party/externals/angle2@31116738adbd

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=stani@google.com

Change-Id: I51bc98814a4baa2f3f0e0feafddad4f7506736be
Reviewed-on: https://skia-review.googlesource.com/c/160961
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-10-10 00:39:49 +00:00
Chris Dalton
f40ddfabb7 ccpr: Actually register path cache entries as listeners on paths
Bug: skia:8452
Change-Id: If2e19ea43e82893e57d788a75844100f8b6a11d1
Reviewed-on: https://skia-review.googlesource.com/c/160835
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-10-09 23:04:50 +00:00
recipe-roller
36e5f9ff06 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/dce747620a14eceeb4b8379f22a59473f3720790 [led] Roll led to correctly pick swarming host from buildbucket. (iannucci@chromium.org)
  https://crrev.com/db1e69ef0345752628872b7ff38a79240fa57201 Update yapf version 0.22 -> 0.24 (abenner@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ife455463d8cb887dccfc12cf954c26463c5ba277
Reviewed-on: https://skia-review.googlesource.com/c/160901
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-10-09 22:54:50 +00:00
Mike Klein
28bce29c30 remove old-style 4-float xfemrodes
These routines are used in legacy 8888, but the default implementation
that builds a little raster pipeline is actually faster for these.

I'm also looking to get rid of some of the other routines in this
file, but these three look like the easy place to start.

Guarded by SK_LEGACY_4F_XFERMODES.

Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I3388d360652ad93282bd842277162f680fb67580
Reviewed-on: https://skia-review.googlesource.com/c/160880
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-10-09 22:18:21 +00:00
skia-autoroll
925d890dad Roll third_party/externals/swiftshader 3b5e426b815f..aaaf93a38a83 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/3b5e426b815f..aaaf93a38a83


git log 3b5e426b815f..aaaf93a38a83 --date=short --no-merges --format='%ad %ae %s'
2018-10-09 capn@google.com Disable accidentally enabled OpenGL logging.


Created with:
  gclient setdep -r third_party/externals/swiftshader@aaaf93a38a83

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=stani@google.com

Change-Id: I7a692a10a5ddb70c000a1fe741e2020193a2ee7e
Reviewed-on: https://skia-review.googlesource.com/c/160960
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-10-09 22:13:20 +00:00
Khushal
9dd1e8236a fonts: Fix nullptr de-reference during fallback path search.
R=herb@google.com

Bug: 892643
Change-Id: Ia059e784794ff07f654a538186e619fb4f303ec9
Reviewed-on: https://skia-review.googlesource.com/c/160834
Commit-Queue: Khusal Sagar <khushalsagar@chromium.org>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Khusal Sagar <khushalsagar@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2018-10-09 20:36:59 +00:00
Florin Malita
d9c56b41d4 [skottie] Support external annotations
Add a callback mechanism for passing opaque/external annotation string
dictionaries to the embedder.

Change-Id: I2b053d6697cdd51a310ced687e2ba454ab39a24a
Reviewed-on: https://skia-review.googlesource.com/c/160900
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-10-09 20:22:08 +00:00
Brian Osman
a0dc3d2626 Revert "Revert "Include color type and color space in bitmap cache key""
This reverts commit 9ff04c00f3.

Bug: skia:
Change-Id: If35b2f6ea306f93d01350e7bd2de1756935fcc32
Reviewed-on: https://skia-review.googlesource.com/c/160840
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-10-09 19:55:30 +00:00
Hal Canary
42137de2b2 SkPDF: stop using linked list of dynamic memory streams.
also:
     delete src/core/SkSinglyLinkedList.h
     add prependToAndReset() to SkDynamicMemoryWStream.

All test PDFs are identical.

Change-Id: I528873f2f5061f07dd416a71f39d97ee97ef3c7d
Reviewed-on: https://skia-review.googlesource.com/c/159323
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
2018-10-09 19:01:49 +00:00
Michael Ludwig
3d6390e7bb Convert drawPaint to scissor+clear when possible
Preliminary performance results: https://docs.google.com/a/google.com/spreadsheets/d/e/2PACX-1vSj_25UFcGzOPTvQgVNt3LPt5dukCgFlUc4dBpdx829mpXfss725aJH1P6CIQdyud4pkC15-tDOGNgW/pubchart?oid=1628959976&format=interactive
With a little extra fixed overhead to detect scissor+clear (visible in increased time on clear-complex), the clear-partial bench is 10X improved.
Caveat: test results only on single linux desktop.

Bug: skia:
Change-Id: I320e7be7eafdbf5c03eabbd87ab9e99421f2deba
Reviewed-on: https://skia-review.googlesource.com/c/160768
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2018-10-09 18:56:01 +00:00
Chris Dalton
8e738a2293 Prefer fullscreen clears on QC/Vulkan
Bug: skia:7396
Bug: skia:8430
Change-Id: Ia44dc162c4de71715d696e4d41d3356ef4db363b
Reviewed-on: https://skia-review.googlesource.com/c/160263
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2018-10-09 18:48:19 +00:00
Kevin Lubick
6ca0d8a767 Add BuildStats job for Mini
Bug: skia:
Change-Id: Ibb47179315d191af5023039212e4c9b5e784bb75
Reviewed-on: https://skia-review.googlesource.com/c/160765
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-10-09 17:33:46 +00:00
Robert Phillips
46acf9dac3 Add context option to reduce opList splitting
This is split out of: https://skia-review.googlesource.com/c/skia/+/143113 (Reduce arbitrary opList splitting when sorting (take 3)).
It needs to be behind a context option because, without mini-flushes, it can cause OOM on smaller devices (e.g., Nexus7 and AndroidOne).

Change-Id: Icde3302bd033a9c4634bb0ca97c950456e73db7c
Reviewed-on: https://skia-review.googlesource.com/c/160763
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-10-09 17:08:26 +00:00
Brian Osman
9ff04c00f3 Revert "Include color type and color space in bitmap cache key"
This reverts commit 274a89e0f5.

Reason for revert: Failing unit tests

Original change's description:
> Include color type and color space in bitmap cache key
> 
> Lazy images will soon support decoding to multiple color types and
> color spaces. To avoid cache collisions, we need to fold the decoded
> color type and color space into the key.
> 
> To avoid storing multiple (different) bitmaps with the same gen ID,
> stop propagating the image's ID to the one allocated in the cache.
> 
> Bug: skia:
> Change-Id: I06714725d4309ec813b75e42cc76eda2cda3d2e0
> Reviewed-on: https://skia-review.googlesource.com/c/160380
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=mtklein@google.com,brianosman@google.com,reed@google.com

Change-Id: I6c5834b5b65b85dbb7661f526920d9a140ba5737
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/160801
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-10-09 16:57:23 +00:00
Greg Daniel
f7828d0e44 Better optimize our use of memory barriers in vulkan.
Bug: skia:
Change-Id: I519c4d0e2bcf89492595fb63bbe354e4a747547e
Reviewed-on: https://skia-review.googlesource.com/c/160769
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2018-10-09 16:24:53 +00:00
Robert Phillips
ef85d19100 Tighten contract for when the promise doneProc is called
The contract is that, if the doneProc is passed in, it will always be called.

Change-Id: I8ce1f11522ba64beadcf4647bf21ed3ecb898a1c
Reviewed-on: https://skia-review.googlesource.com/c/160766
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-10-09 16:05:21 +00:00
skia-autoroll
c69abf364d Roll third_party/externals/angle2 3f21fcb9bd26..e7ece9e22c87 (1 commits)
3f21fcb9bd..e7ece9e22c


git log 3f21fcb9bd26..e7ece9e22c87 --date=short --no-merges --format='%ad %ae %s'
2018-10-09 courtneygo@google.com Do not include ALOGV in release builds


Created with:
  gclient setdep -r third_party/externals/angle2@e7ece9e22c87

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=stani@google.com

Change-Id: Iadd9a7ca23378908242a0c4b914bb513e1cf6ec9
Reviewed-on: https://skia-review.googlesource.com/c/160723
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2018-10-09 15:53:27 +00:00
Brian Osman
9e737fe32f Remove unused (Android-only) stable ID from SkPixelRef
Bug: skia:
Change-Id: Ibfe5d7e4c713bf637318f3e2ecc219495bd62879
Reviewed-on: https://skia-review.googlesource.com/c/160767
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-10-09 15:52:46 +00:00
Brian Osman
274a89e0f5 Include color type and color space in bitmap cache key
Lazy images will soon support decoding to multiple color types and
color spaces. To avoid cache collisions, we need to fold the decoded
color type and color space into the key.

To avoid storing multiple (different) bitmaps with the same gen ID,
stop propagating the image's ID to the one allocated in the cache.

Bug: skia:
Change-Id: I06714725d4309ec813b75e42cc76eda2cda3d2e0
Reviewed-on: https://skia-review.googlesource.com/c/160380
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-10-09 15:35:33 +00:00
Mike Klein
0d8084db91 remove deprecated SK_ATTR_DEPRECATED
Change-Id: I73a35fb4d408fb5eeabbb99f0362bd75e8814c7d
Reviewed-on: https://skia-review.googlesource.com/c/159485
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-10-09 15:25:33 +00:00
Ravi Mistry
eea245c896 Turn down CT_* bots
Specifically, turn down:
* Perf-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Release-All-CT_BENCH_1k_SKPs
* Perf-Ubuntu14-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-CT_BENCH_1k_SKPs
* Test-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Debug-All-CT_DM_100k_SKPs
* Test-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Debug-All-CT_DM_1m_SKPs
* Test-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Debug-All-CT_IMG_DECODE_100k_SKPs

Also deletes the no longer needed recipe_modules:
* ct
* isolate
* skia_swarming
* swarming
* swarming_client

Bug: skia:8455
Bug: skia:6704
Change-Id: Ia4912830909081d060f7361706d16fd751b3bda0
Reviewed-on: https://skia-review.googlesource.com/c/160764
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-10-09 15:05:24 +00:00
Ben Wagner
230a71b77f Work around FreeType type change.
FreeType is moving their memory APIs from 'long' to 'size_t'. This
generally uses the same number of bits, but these are usually different
types (signed vs. unsigned). Detect the actual type in use where needed.

Change-Id: Id85b9b874f7418fbe308739d23eb3d22ecd765a8
Reviewed-on: https://skia-review.googlesource.com/c/159840
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-10-09 14:56:19 +00:00
Kevin Lubick
8e9750d3c5 Add CanvasKit build
Building CanvasKit uses very similar logic to PathKit, so there
was a fair amount of copy/paste/customize.

Fixes the name of skia.js/wasm -> canvaskit.js/wasm and
adds a package.json to formally track versions.

Also move PathKit helper scripts to align better.

Docs-Preview: https://skia.org/?cl=160463
Bug: skia:
Change-Id: Ie75b30592dcc4d520dca41f6f5579006aaa8849b
Reviewed-on: https://skia-review.googlesource.com/c/160463
Reviewed-by: Eric Boren <borenet@google.com>
2018-10-09 13:56:56 +00:00
Kevin Lubick
915b80bf39 Fix key in perf data
Bug: skia:
Change-Id: Ic65f6dd37b2fa16989e4c2f780672e3293ddbd5f
Reviewed-on: https://skia-review.googlesource.com/c/160762
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-10-09 13:31:11 +00:00
Ravi Mistry
32f547a418 Fix bookmaker bot
Bug: skia:
Change-Id: Ic625889ca58237e8da8ab964f29e303ceb493faf
Reviewed-on: https://skia-review.googlesource.com/c/160760
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2018-10-09 13:26:20 +00:00
Ethan Nicholas
010635190d Metal stencil support
Bug: skia:
Change-Id: I697a39bc756bb8f18ea2c6a1f8151dbc103bf9fe
Reviewed-on: https://skia-review.googlesource.com/c/157567
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2018-10-09 13:13:19 +00:00
Greg Daniel
a41a74ac79 Revert "In GrVkGpuCommandBuffer when setting bounds to full RT use proxy bounds instead of surface."
This reverts commit 9b7bfd0910.

Reason for revert: Looks like a blurs got broken, espcially on nvidia

Original change's description:
> In GrVkGpuCommandBuffer when setting bounds to full RT use proxy bounds instead of surface.
> 
> My guess is perf wise this will be a wash/nothing really changes, but it at least lets
> Vulkan know exactly what our intention is.
> 
> Bug: skia:
> Change-Id: I8ddeccc602154c793d8f7d7de087a655a136dc9c
> Reviewed-on: https://skia-review.googlesource.com/c/160620
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

TBR=egdaniel@google.com,robertphillips@google.com

Change-Id: I5bd09a4d9b7ee48e32c86fc8e42a3e27409907bb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/160761
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-10-09 12:59:29 +00:00
skia-recreate-skps
817c01aecd Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Iac9423d563cd8a283bed7e0e54addac0b1d497db
Reviewed-on: https://skia-review.googlesource.com/c/160701
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2018-10-09 06:01:59 +00:00