Commit Graph

45268 Commits

Author SHA1 Message Date
Chris Dalton
97e917a25f Reland "Implement sample mask and sample locations support in Vulkan"
This is a reland of 8b915a0c27

Original change's description:
> Implement sample mask and sample locations support in Vulkan
>
> Change-Id: I372695ec5360def42a8a997675993264740b0da4
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252038
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Chris Dalton <csmartdalton@google.com>

TBR=ethannicholas@google.com

Change-Id: I20de36719db52ad4dfc5290101d48a8fd9601c11
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252936
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-11-14 02:09:03 +00:00
recipe-roller
32197f897c 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/37740e2bc9b2628d28f1959f78901168fcacd6ad Randomize results of git cl owners (brucedawson@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie62f3ed2d5c771effde05d118ee46038c6c43df5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254516
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-11-14 01:02:33 +00:00
Mike Klein
37be7715fd implement assert_true on ARM
This all comes together as

    uminv tmp, condition
    fmov  gp, tmp
    cbnz  gp, all_true
    brk   0
  all_true:
    ...

The key idea is uminv(vec) will return 0 if any of the inputs are 0,
and non-zero if all of the inputs are non-zero, namely 0xffffffff.

fmov moves that minimum from a vector register to a general purpose
register where we can test it with cbnz, compare and branch if non-zero.
This jumps over the `brk 0` debug trap when all inputs are true.

Change-Id: If5deb77a77f52221d0649e537179743c45eb9cc5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254479
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-11-13 22:09:59 +00:00
Brian Osman
fce27adfc5 Move the persistent GrMemoryPool to the heap
This fixes a fuzzer crash where the process was shutting down (and
destroying the pool), while some threads were still trying to use the
pool to finish their outstanding work.

It also cuts down on work done at shutdown time.

Fixed: chromium:1019616
Change-Id: I35f2046e9c70fc8964f0c6f2b416d80906d91bd7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254424
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-11-13 21:49:49 +00:00
Chris Dalton
6006105f67 Implement mixed samples support in vulkan
Change-Id: I27d9e63aa7f2ad4468bb8f090a762511ead9d78c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253764
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-13 21:04:29 +00:00
Chris Dalton
8367e111d4 Enforce extra constraints for mixed samples at GrCaps level
Change-Id: Icbeafeb25614d66e548027e5777ea1699d1e6f7d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254116
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-11-13 20:19:27 +00:00
Emircan Uysaler
6b4afb27fd Disable VkProtectedContext_DDLMakeRenderTargetTest
Bug: fuchsia:40061
Change-Id: I9d6293298bc27b81f5b4202d56c930f976c86cfc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254336
Commit-Queue: Emircan Uysaler <emircan@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-13 19:11:33 +00:00
Nigel Tao
4f32a29a69 Move SkWuffsCodec's reset_and_decode_image_config
This is just a re-organization, avoiding the need to have both a
declaration and a definition of that function. There is no behavior
change.

Also move to_alpha_type next to the other static functions (as opposed
to methods).

Bug: skia:8235
Change-Id: Ia0c06ec22a3dcc1d8ad66df886096a9657e43d35
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254357
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2019-11-13 16:41:02 +00:00
Robert Phillips
ae01f62009 Revert "Respect the max indexBuffer limits in the bulk texture draw API"
This reverts commit dd947ceb55.

Reason for revert: CL isn't getting any respect from Android

Original change's description:
> Respect the max indexBuffer limits in the bulk texture draw API
> 
> This is required before we can lower the max AA quad count (again).
> 
> Bug: b/143572065 skia:9601
> Change-Id: Id34123476ad49a57dc9ce7fe13f941c06f721b74
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252603
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>

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

Change-Id: Ibe396fe5a0351190c214ed54611ce72b7928cadd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: b/143572065 skia:9601
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254437
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-13 15:56:43 +00:00
Jim Van Verth
98b9fd0bf6 Put check for MTLTextureUsageShaderRead in available block.
MTLTextureUsage is not available on all Metal versions, so we need to
check for that. Also made the asserts consistent in this file.

Bug: skia:9573
Change-Id: I1cbb69be9c7b59d10454dc158b0f28ab5f74bbcf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254418
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-11-13 15:49:02 +00:00
skia-autoroll
49481e1000 Roll skia/third_party/skcms 0e5f77218153..8d45badce994 (1 commits)
https://skia.googlesource.com/skcms.git/+log/0e5f77218153..8d45badce994

git log 0e5f77218153..8d45badce994 --date=short --no-merges --format='%ad %ae %s'
2019-11-13 brianosman@google.com Add another test profile from crbug.com/869115

Created with:
  gclient setdep -r skia/third_party/skcms@8d45badce994

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC halcanary@google.com,mtklein@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel

Bug: None
Change-Id: Ic4f14aec3a08bb30d55f3a2d2ea61ee8955449cb
TBR=halcanary@google.com,mtklein@google.com
TBR=halcanary@google.com,mtklein@google.com
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254399
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-13 15:34:52 +00:00
Robert Phillips
dd947ceb55 Respect the max indexBuffer limits in the bulk texture draw API
This is required before we can lower the max AA quad count (again).

Bug: b/143572065 skia:9601
Change-Id: Id34123476ad49a57dc9ce7fe13f941c06f721b74
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252603
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-11-13 15:32:02 +00:00
Robert Phillips
99e73fa8c1 Remove GL 4-bit stencil option
I would be very surprised if this is still a thing.

Change-Id: I1f93a7c9ff1f655acfd81b1fd260207c6b942289
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254186
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-13 14:34:00 +00:00
recipe-roller
8b73d27ddd 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.
recipe_engine:
  https://crrev.com/9ab6dcc77364de001bb752e5d1fb42e1dd256371 isolated: update client (tikuta@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I7e93acd2b7588599f94bbcbabd79922158c61721
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254377
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-11-13 10:55:50 +00:00
skia-autoroll
89ab0576bf Roll third_party/externals/angle2 e33c1582b4bc..4f023f565a61 (4 commits)
e33c1582b4..4f023f565a

git log e33c1582b4bc..4f023f565a61 --date=short --no-merges --format='%ad %ae %s'
2019-11-12 syoussefi@chromium.org Enable passing end2end test
2019-11-12 jmadill@chromium.org Vulkan: Improve Bresenham line emulation.
2019-11-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 3e4abc9ac382..12e54dae167c (1 commits)
2019-11-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 31edef751a8d..9da287fd0264 (6 commits)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC halcanary@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=halcanary@google.com
Change-Id: I16f35aca3255eba174fafc9142174fffbe33c3c9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254198
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-13 06:18:50 +00:00
skia-autoroll
e94ac7ab55 Roll third_party/externals/swiftshader 9da287fd0264..88632cac30e1 (6 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/9da287fd0264..88632cac30e1

git log 9da287fd0264..88632cac30e1 --date=short --no-merges --format='%ad %ae %s'
2019-11-12 bclayton@google.com Regres: Don't treat non-zero error codes as crashes.
2019-11-12 tobine@google.com Vulkan:maxPerStageDescriptorStorageBuffers = 16
2019-11-12 nicolascapens@google.com Revert "Suppress 32-bit MSVC warning."
2019-11-12 bclayton@google.com Regres: Add workaround for Khronos Gitlab issues
2019-11-12 swiftshader.regress@gmail.com Regres: Update test lists @ 9da287fd
2019-11-12 sugoi@google.com Blend mode fix for 565 format

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC halcanary@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
TBR=halcanary@google.com
Change-Id: I42af529fc7a9eda5259298c63a0e92b2b06d68e2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254277
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-13 04:35:49 +00:00
recipe-roller
9501212cd0 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/9577daf6673d4af851bbd87a2b714f7e03cdb670 depot_tools: Don't add a python3 shim to depot_tools on bootstrap. (ehmaldonado@chromium.org)
  https://crrev.com/0db01f0fabd187228246602ee402f073aa5f7318 git-cl: Make tests run on Python 3. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I52605b053a13d2388bb18301b4606e419f59171c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254299
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-11-12 22:43:45 +00:00
Herb Derby
cb443a5928 Force single glyph calls through bulk interface
Enance SkBulkGlyphMetrics, SkBulkGlyphMetricsAndPaths, and SkBulkGlyphMetricsAndImages
with single glyph calls. In addtion, add calls needed to have the rest of the system
work with these interfaces.

As a resulte move the glyph, prepareImage, and preparePath calls to private.

Change-Id: I8d383b649390e45f621dcb9d62fb8367a55cee02
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254056
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-11-12 22:38:14 +00:00
John Rosasco
a9b348f66c Reland fully delineate GL usage w/ skia_use_gl.
Change-Id: I90f40467be145537cc08461fd3805606432f0cfd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254240
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: John Rosasco <rosasco@google.com>
Auto-Submit: John Rosasco <rosasco@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-11-12 21:43:44 +00:00
Chris Dalton
9acf68267a Fix detection of when we will have mixed sampled coverage
Change-Id: I32de8bdea7b7aafd202f44a2036872f25d531ae3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253763
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-11-12 21:19:05 +00:00
Mike Klein
8c1e0effbb sketch out structure for ops with immediates
Lots of x86 instructions can take their right hand side argument from
memory directly rather than a register.  We can use this to avoid the
need to allocate a register for many constants.

The strategy in this CL is one of several I've been stewing over, the
simplest of those strategies I think.  There are some trade offs
particularly on ARM; this naive ARM implementation means we'll load&op
every time, even though the load part of the operation can logically be
hoisted.  From here on I'm going to just briefly enumerate a few other
approaches that allow the optimization on x86 and still allow the
immediate splats to hoist on ARM.

1) don't do it on ARM
A very simple approach is to simply not perform this optimization on
ARM.  ARM has more vector registers than x86, and so register pressure
is lower there.  We're going to end up with splatted constants in
registers anyway, so maybe just let that happen the normal way instead
of some roundabout complicated hack like I'll talk about in 2).  The
only downside in my mind is that this approach would make high-level
program descriptions platform dependent, which isn't so bad, but it's
been nice to be able to compare and diff debug dumps.

2) split Op::splat up
The next less-simple approach to this problem could fix this by
splitting splats into two Ops internally, one inner Op::immediate that
guantees at least the constant is in memory and is compatible with
immediate-aware Ops like mul_f32_imm, and an outer Op::constant that
depends on that Op::immediate and further guarantees that constant has
been broadcast into a register to be compatible with non-immediate-aware
ops like div_f32.  When building a program, immediate-aware ops would
peek for Op::constants as they do today for Op::splats, but instead of
embedding the immediate themselves, they'd replace their dependency with
the inner Op::immediate.

On x86 these new Ops would work just as advertised, with Op::immediate a
runtime no-op, Op::constant the usual vbroadcastss.  On ARM
Op::immediate needs to go all the way and splat out a register to make
the constant compatible with immediate-aware ops, and the Op::constant
becomes a noop now instead.  All this comes together to let the
Op::immediate splat hoist up out of the loop while still feeding
Op::mul_f32_imm and co.  It's a rather complicated approach to solving
this issue, but I might want to explore it just to see how bad it is.

3) do it inside the x86 JIT
The conceptually best approach is to find a way to do this peepholing
only inside the JIT only on x86, avoiding the need for new
Op::mul_f32_imm and co.  ARM and the interpreter don't benefit from this
peephole, so the x86 JIT is the logical owner of this optimization.
Finding a clean way to do this without too much disruption is the least
baked idea I've got here, though I think the most desirable long-term.

Cq-Include-Trybots: skia.primary:Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Debug-All-SK_USE_SKVM_BLITTER,Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-All-SK_USE_SKVM_BLITTER
Change-Id: Ie9c6336ed08b6fbeb89acf920a48a319f74f3643
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254217
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2019-11-12 20:17:55 +00:00
Mike Klein
749eef6b1a implement assert_true on x86
The logic implemented here is roughly

  assert_true(v):
     if any ~v {
         int3()
     }

  in assembly as

  ```
    vptest v, constant 0xffffffff mask
    jc ok
    int3
  ok:
  ```

jc branches if (~v & mask) are all zero, with mask set fully, that's
branch if ~v are all zero, which is to say, v are all ~0, true.  So we
jump over the int3 breakpoint if v are all true.

Cq-Include-Trybots: skia.primary:Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Debug-All-SK_USE_SKVM_BLITTER
Change-Id: Ie0fc1da15b1a0dba00c66af610ccde18f5985f8a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253897
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-11-12 20:07:35 +00:00
Mike Klein
066c3e5d4d add Release SkVMBlitter bot
Now that assert_true()  leads to different code generation
in Debug and Release builds, we should probably test both.

Cq-Include-Trybots: skia.primary:Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Debug-All-SK_USE_SKVM_BLITTER,Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-All-SK_USE_SKVM_BLITTER
Change-Id: Icd3b67f09d964becb595ce9c95e7ebadae8da9b2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253898
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-11-12 19:52:15 +00:00
Robert Phillips
373bda6c39 Remove final usage of GrProgramDesc's header
This demotes GrProgramDesc to just being the program key while promoting GrProgramInfo as the exclusive source for live information about the program.

The GrProgramDesc is still a bit more than a simple program key though bc Vulkan shears off the non-Vulkan-specific portion to cache the SPIRV code.

Bug: skia:9455
Change-Id: Ica11e3df91b8c97794deebff3f5208d16aaf75c7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254184
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-12 19:18:35 +00:00
recipe-roller
581108137b 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/89863242a42887291b2ae7210b9831ff465af530 Add fetch configs for devtools-frontend (yangguo@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1180c03c7e5bb225ec12987b57290feab14a96ff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254232
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-11-12 17:50:56 +00:00
Chris Dalton
5e8cdfdd8b Add 'numRasterSamples' and 'isMixedSampled' to GrProgramInfo
Replaces numSamples with numRasterSamples, and adds isMixedSampled.
The sample count that vulkan and metal actually want to know is how
many samples the rasterizer will compute, which may not match the
number of samples in the render target when we have mixed samples.
They will also need to know whether a program is mixed sampled in
order to set up coverage modulation.

Change-Id: I133c11f74b7dc6a7580818ef73d6deec1d201b64
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253550
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-11-12 17:14:19 +00:00
Colin Cross
654eb2ad04 [SkQP/Android] Replace -Weverything with -Wextra
-Weverything is not recommended, use -Wextra.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86-devrel-Android_SKQP,Test-Debian9-Clang-NUC7i5BNK-CPU-Emulator-x86-devrel-All-Android_SKQP

Bug: b/143713277
Test: mma
Change-Id: Ibaca86bd52348d544a8109b25ae013001444935d
Reviewd-on: https://android-review.googlesource.com/1163299
Cherry-pick: 29cd4eca88df5fafde51ee9a50e3deb96263fc64
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253956
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-11-12 16:49:29 +00:00
Robert Phillips
a87c52991b Use a priori knowledge about the number of stencil bits in Dawn, Metal and Vulkan backends
The goal here is to centralize more of the program key creation w/in GrProgramInfo. For Dawn,
Metal and Vulkan, afaict, the number of stencil bits is always 8. We can use this information
 to stop passing the GrStencilSettings object around. For GL, the number of stencil bits is
 variable but it is never part of the key.

Bug: skia:9455
Change-Id: I8fd2bea2422c5b9df69fc184d3a82013eef5407e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254177
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-12 16:48:19 +00:00
Stephen White
7cb52cb5e6 Dawn: implement dynamic primitive processor texture handling.
Move texture setting into its own function.
Put textures in their own bind group.
Bind the dynamic ones per-mesh.
Bind the fixed ones once up front.

Change-Id: Ia93b5a3f0de6a2a3cc26b549fb56ce58215c0b19
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253878
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-12 16:16:50 +00:00
recipe-roller
2785ad7307 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/5803e496033ff9c90e7d3bfdd37f149ed4d730d9 depot_tools: Add ehmaldonado to WATCHLISTS. (ehmaldonado@chromium.org)
  https://crrev.com/79d4f9950680c588d4c3a2cc8595179f3adc90d4 Reland "git-cl: Fix some python3 compatibility errors." (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I810e48ec78676a67caa9865e93aa463ddce0756f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254129
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-11-12 15:39:29 +00:00
skia-autoroll
c9862b2209 Roll third_party/externals/swiftshader 31edef751a8d..9da287fd0264 (6 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/31edef751a8d..9da287fd0264

git log 31edef751a8d..9da287fd0264 --date=short --no-merges --format='%ad %ae %s'
2019-11-11 timvp@google.com Output Swiftshader version to logcat
2019-11-11 chrisforbes@google.com Allow depth/stencil attachment to be VK_ATTACHMENT_UNUSED in clear
2019-11-11 swiftshader.regress@gmail.com Regres: Update test lists @ 414f99e0
2019-11-11 chrisforbes@google.com Relax descriptor set index assert at descriptor point of definition
2019-11-11 sugoi@google.com Avoid sync issues by removing global android swapchain map
2019-11-11 bclayton@google.com Regres: Check out the change before attempting to read files from it.

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC halcanary@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
TBR=halcanary@google.com
Change-Id: Ic144c6bb92d9b45059fce780fefc8318faed788d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254121
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-12 15:01:23 +00:00
Jim Van Verth
9187e49ed1 Detect whether trying to blit a Metal swapchain texture, and fail if so.
Metal swapchain textures (equivalent to GL's FBO 0) can't be used with
MTLBlitCommandEncoder. For copySurface we need to detect this and fail.
Future changes will handle GrSurfaceProxy.

Change-Id: I9235d91cf31e96260c8d1da5938f5441d2e49d27
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252045
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-12 14:56:28 +00:00
Stephen White
3a62ed4ff1 Dawn: fix bug in stencil handling.
Change-Id: Iacfe175d0c6e3d90dae1990b57de2c94dada3e77
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253959
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2019-11-12 14:56:18 +00:00
Nigel Tao
5b2714631f Free SkWuffsCodec frame-count decoder earlier
This might help peak memory use.

Bug: skia:8235
Change-Id: Ib8316211ff6bbe7d2cc32e759d3e0d20e2b56348
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254156
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2019-11-12 14:51:23 +00:00
Ben Wagner
2e4a8eb436 Track and force opsz axis on Mac.
If the opsz axis is set, ensure that it stays that way. Currently this
does not pin the opsz axis for all fonts, but allows for that in the
future.

Bug: skia:9533

Change-Id: Iac786f9f91bf6d53d92847a91443b876713f9c2a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253738
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Dominik Röttsches <drott@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-11-12 14:51:13 +00:00
Herb Derby
4bb189fcee Make metrics const on SkStrike
Change-Id: I13373d7d4f12fec977ad9f77e1b3a9ead91c321d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254076
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-11-12 14:46:18 +00:00
recipe-roller
d1fba071d5 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/7e55700844c9f9460bae817f3f7a4befec8a5959 fetch: Fix GCLIENT_PY3 on Windows (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I7e195fe2efd815425c2642c6e0a4cb4e2fbb26c0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253992
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-11-12 14:46:09 +00:00
skia-autoroll
d860a78fd6 Roll third_party/externals/angle2 012d15196023..e33c1582b4bc (6 commits)
012d151960..e33c1582b4

git log 012d15196023..e33c1582b4bc --date=short --no-merges --format='%ad %ae %s'
2019-11-11 shrekshao@google.com Fix EXT_texture_norm16
2019-11-11 jmadill@chromium.org Windows: Use Job handle in LaunchProcess.
2019-11-11 jmadill@chromium.org Minor tweaks to SampleApplication.
2019-11-11 lehoangq@gmail.com Add Metal progress to README
2019-11-11 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader d9ed1c2732ba..31edef751a8d (3 commits)
2019-11-11 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 041f0a02493d..3e4abc9ac382 (2 commits)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC halcanary@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=halcanary@google.com
Change-Id: Ic022e334c710aac4283ec8703557cf9fa637bde6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254120
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-12 14:41:14 +00:00
Herb Derby
8a1a3e6489 WS: SkStrike
Change-Id: I2419ebbd53e50d39a1469d97f1b7736b0db73da6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254096
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-11-12 14:41:04 +00:00
recipe-roller
ad21d47cfa 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/5ef16a371974e1ffdd707e864c7229bd09dbf8c3 git-cl: Fix error message when -B is not specified. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3f562e0208fbb5667348aa2899821d0829d93e58
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253997
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-11-11 21:45:15 +00:00
Brian Salomon
c75bc031ef Clamp RGB outputs of GrYUVtoRGBEffect.
The matrices we're using can produce very slightly out of range color
channels. This gives surprising results when in shader blending is used
for color burn and color dodge. After this change we clamp the RGB
values to 0..1 before applying premul.

Adds a GM modeled on a blink layout test that shows the problem using
SkImageMakeFromYUVAPixmaps.


Bug: skia:9619


Change-Id: I446d39763a7f5a2f7c5f61d94d163927d851baa3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253879
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-11-11 20:04:15 +00:00
Herb Derby
aa3f2623ea Remove belongsToCache from SkStrike
Change-Id: I0fd6cf940f2df97f4f6b952681109f58dc9ad553
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253777
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-11-11 19:46:05 +00:00
Julia Lavrova
b00ccf52de Correct cluster index
Change-Id: Ic657b3fff318e1e76efa4ab7533bc2a833d17802
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253957
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2019-11-11 19:26:56 +00:00
skia-autoroll
4a09815d8e Roll skia/third_party/skcms e51ca8b81987..0e5f77218153 (1 commits)
https://skia.googlesource.com/skcms.git/+log/e51ca8b81987..0e5f77218153

git log e51ca8b81987..0e5f77218153 --date=short --no-merges --format='%ad %ae %s'
2019-11-11 brianosman@google.com Move ICCTag struct and GetTag functions to skcms_internal.h

Created with:
  gclient setdep -r skia/third_party/skcms@0e5f77218153

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC halcanary@google.com,mtklein@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel

Bug: None
Change-Id: If85f40fa8110589cc76890bb477ac53375d21b75
TBR=halcanary@google.com,mtklein@google.com
TBR=halcanary@google.com,mtklein@google.com
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253908
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-11 17:59:31 +00:00
Sean Gilhuly
6c536a5b44 Roll Dawn, fix build issues in Skia Dawn
There were some recent renamings in Skia and in the WGPU API. Roll
Dawn to the latest patch, and update Skia Dawn to match these new
names.

Change-Id: I0b73a514553664ddea7181b9c6174ab6231ea4f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253731
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2019-11-11 17:58:21 +00:00
skia-autoroll
2565a6db53 Roll skia/third_party/skcms b118cb0ef477..e51ca8b81987 (1 commits)
https://skia.googlesource.com/skcms.git/+log/b118cb0ef477..e51ca8b81987

git log b118cb0ef477..e51ca8b81987 --date=short --no-merges --format='%ad %ae %s'
2019-11-11 brianosman@google.com Add CHAD and WTPT functions to public API

Created with:
  gclient setdep -r skia/third_party/skcms@e51ca8b81987

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC halcanary@google.com,mtklein@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel

Bug: None
Change-Id: I68b587e2ecb88a60c3eb68b0dd8231d262b7a263
TBR=halcanary@google.com,mtklein@google.com
TBR=halcanary@google.com,mtklein@google.com
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253902
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-11 17:23:01 +00:00
Robert Phillips
323471ec79 Remove GrProgramDesc's need for the GrGpu
Although not strictly necessary, being able to compute the program key w/o needing access to the Gpu will give us more flexibility.

Bug: skia:9455
Change-Id: I0cd76d79a3008b69be18636be370e7aaa531bc65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/247686
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-11 17:17:01 +00:00
Mike Klein
ee5864a170 add int3, vptest, jc
Will use these to implement assert_true on x86.

Change-Id: I9d2595a35518b6971dd8e418b583febd3960c7f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253896
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2019-11-11 16:33:01 +00:00
skia-autoroll
eab1e281fa Roll third_party/externals/angle2 652dbfc63e70..012d15196023 (9 commits)
652dbfc63e..012d151960

git log 652dbfc63e70..012d15196023 --date=short --no-merges --format='%ad %ae %s'
2019-11-09 jdarpinian@chromium.org Stop using __has_include<Cocoa/Cocoa.h>
2019-11-08 jmadill@chromium.org Capture/Replay: Implement more state for mid-execution replay.
2019-11-08 lehoangq@gmail.com Metal: multiple bug fixes
2019-11-08 lehoangq@gmail.com Always use MTLPixelFormatBGRA8Unorm for SurfaceMtl.
2019-11-08 jonahr@google.com Reset texture swizzle state to default after LUMA workaround
2019-11-08 enga@chromium.org Only enable addAndTrueToLoopCondition feature on Mac Intel
2019-11-08 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src e471df3c9154..f34cdc70ca1b (2 commits)
2019-11-08 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 27a3d31d7a9d..d9ed1c2732ba (1 commits)
2019-11-08 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src dc59b4b075e9..041f0a02493d (4 commits)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC halcanary@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=halcanary@google.com
Change-Id: I11d6ce23fa6d71f8a5f13ac34777ed5f4e7540fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253836
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-11 15:22:18 +00:00
skia-recreate-skps
11ac816acf Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I6bdffe1001d3422e1664009d10c1153bdcda0f7c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/253866
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-11-11 15:17:58 +00:00