Commit Graph

46440 Commits

Author SHA1 Message Date
Mike Klein
c0c0522e80 let's try to fix nullptr + k
Apply -fsanitize-recover=pointer-overflow to third_party code only.

I'm trying to keep Skia behaving the same, avoiding illegal nullptr+k:
    - Add null check in SkJSON fast string path.
    - Add null check (first alloc) and some comments to SkArenaAlloc.
    - March an int index instead dst pointer in SkBase64.

Bug: skia:9731
Change-Id: I646635558ea63ded846b746f2a1f0b4f1e1eacff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268109
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-31 19:24:21 +00:00
Robert Phillips
e0735529fa Minor GM cleanup
This CL:
1) Makes the compressed_textures GM use a red outline to indicate decompression (instead of a color rotation)

2) Disallows GPU resizing of textures w/ alpha in the wacky_yuv_formats GM

3) Guards GrTwoColorBC1Compress with GR_TEST_UTILS to make it clear that it is just a testing utility

4) Fixes the wacky_yuv_formats GM on platforms with RGBA PM color order

Change-Id: I3942c4ab1d2c1fab3c8d39c6c99136b75ba10132
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268119
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-01-31 19:06:19 +00:00
recipe-roller
89b5c8ec8c Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/4d67872733ec0c29149c7c6ee2ed4884e5c07c44 (agable@chromium.org)
    Enable recipe-roller autosubmit

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ibf66191fcd37a6e8ebcf4bd2d7064bd7468ff2be
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268115
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>
2020-01-31 18:39:29 +00:00
Dominik Röttsches
c9b06ca708 Remove CGFontRef parameter from SkMakeTypefaceFromCTFont
Since the Blink side CTFontRefs are no longer created from CGFontRefs
after [1], we do not need to pass CGFontRefs to Skia any longer for
keeping them alive. Clean up related plumbing which previously passed
through the CGFontRef to the SkTypefaceMac constructor.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/1964073

Bug: chromium:1033478
Change-Id: Ic85cae6289fa9b4886201c92defb54fcc5622720
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266816
Reviewed-by: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-01-31 18:35:10 +00:00
recipe-roller
e530acdf37 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/4ada8ab49f7be58223ff8926828b0ae6541b2437 (sdefresne@chromium.org)
    [roll] Fix the command in the commit message

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0aa2039d45070395e91156099ca7b896227ec488
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268110
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>
2020-01-31 17:46:20 +00:00
Jim Van Verth
b71f023957 Enable async MTLLibrary and MTLRenderPipelineState creation.
Renables the Programs test on the Metal bots.

Bug: skia:9817
Change-Id: Ie1f0b520e37793e5a45ab85a55fd3cdc5f775977
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266572
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-01-31 16:43:30 +00:00
Julia Lavrova
fae37b0741 Small fix:
ignore empty unresolved blocks to avoid (unnecessary) ASSERT later

Change-Id: I5abdc7f36d5f9a9be1c52aea2df29f565f606996
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267922
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-01-31 14:30:09 +00:00
recipe-roller
b6bad88fac Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/ae2b962ce583ad38c7b2b105b6dd5ea55d576056 (sdefresne@chromium.org)
    Tentative fix for roll-dep.py failing in generate commit message

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I27c4dfac23cfe063c9c39838522df0feff7ee253
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268098
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>
2020-01-31 10:19:29 +00:00
skia-recreate-skps
70cd614fde Update Go Deps
Change-Id: I495c7af26ec12d7f1b3e825b9367ae3fa1e9c0ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268006
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-01-31 05:22:48 +00:00
skia-autoroll
a0766d390c Roll third_party/externals/angle2 ee07cb317579..e196bc85ac2d (3 commits)
ee07cb3175..e196bc85ac

git log ee07cb317579..e196bc85ac2d --date=short --first-parent --format='%ad %ae %s'
2020-01-30 kbr@chromium.org Add driver bug workaround for rewriting row major matrices.
2020-01-30 ynovikov@chromium.org Roll chromium_revision e1633af636..8ffb18d0b9 (724302:736949)
2020-01-30 jmadill@chromium.org Vulkan: Don't dirty index/vertex buffers on each syncState.

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

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 reed@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/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: reed@google.com
Change-Id: Id2660c17bbca11cbe32875844ad46230b77b22bd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267999
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-31 04:43:58 +00:00
skia-autoroll
1d5a4021e1 Roll third_party/externals/swiftshader 430def835f9f..79b36b640692 (6 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/430def835f9f..79b36b640692

git log 430def835f9f..79b36b640692 --date=short --first-parent --format='%ad %ae %s'
2020-01-30 capn@google.com Fix use after free
2020-01-30 capn@google.com Have Kokoro accept imports from Piper
2020-01-30 amaiorano@google.com Subzero: fix incorrect cast
2020-01-30 capn@google.com Export Vulkan API entry functions
2020-01-30 capn@google.com Support LLVM 9+ build changes
2020-01-30 bclayton@google.com Regres: Fix unix build

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

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 reed@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/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: reed@google.com
Change-Id: I4fbee67366621171f5ba4880b207ae3c85830aa0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268000
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-31 04:37:08 +00:00
Herb Derby
0ee16f6898 Add reverse iterators to SkSpan
Change-Id: Ie4002a97fca860f0096ad9114f707ba8476aabb4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267936
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-01-31 02:27:11 +00:00
Herb Derby
a90ed95d13 Cleanup GrStrike management because we do not abandon strikes
Change-Id: I23e44ae389d00ae6dad6b04e24522f854dc98d75
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267177
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-01-30 23:13:08 +00:00
recipe-roller
6305b2f834 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/ae510e8f08e8b7457b8d7ef9557fe68dc60b4046 (fmayer@google.com)
    Do not crash for non URL (i.e. SSH) remotes.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6fb6e19f6fb5ac33901a32b790d57d08598e880e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267920
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>
2020-01-30 21:43:28 +00:00
Florin Malita
b82c0ece7e [sksg] Clean up public headers
Change-Id: I0a6627f9b8d47e51c82c89ff1df75c3add8e8035
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267919
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-01-30 21:42:59 +00:00
Leon Scroggins III
22d08b536b Expose the ICC profile from SkAndroidCodec
Bug: b/135133301

This will allow the new NDK decoding API to skip any color correction
for images with profiles that do not map exactly to an SkColorSpace.

Change-Id: I893c13906898b7250ce0ae7f249fbe63bfa8d864
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267821
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
2020-01-30 21:29:28 +00:00
Mike Klein
055f5355d5 pdf rasterization
- add Mac PDF rasterizer
- create a mac pdf bot
- blacklist some GMs that CG takes forever to rasterize
- remove obsolete --dont_write pdf feature

This new Mac -PDF bot is now the _only_ bot running PDF code.
Obviously we can expand from here.

pdfium was looking like a pain to build and/or integrate
into our own build.  pdftocairo looked promising, and is
already installed on the bots, but it is very slow and
prone to error.  CG was the next thing I tried.

Change-Id: I82b04121f484e7dd78f60a648485a09218dd5279
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267810
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-30 21:21:28 +00:00
Greg Daniel
40903af42b Update GrSurfaceProxy::Copy to return a view.
Additionally this changes updates GrRenderTargetContext drawTexture to take
a view. This was done since there were a bunch of places where the result
of the copy goes straight to the drawTexture call.

Bug: skia:9556
Change-Id: If7094eb51ed343620011d03b86d603e3c6289c17
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267856
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-01-30 20:43:56 +00:00
Heather Miller
5395686d73 update release notes page to include M81
No-Try: true
Docs-Preview: https://skia.org/?cl=267823
Bug: skia:
Change-Id: Ie671d0b555ce7e7061e126555d506b361a44f6c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267823
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2020-01-30 20:03:35 +00:00
Heather Miller
ebc4d62ab0 new section and formatting
Bug: skia:
Change-Id: I759f2eb1ee26245ba3d3c971e030793b9c52aa5f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267820
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
Auto-Submit: Heather Miller <hcm@google.com>
2020-01-30 18:58:33 +00:00
Brian Osman
2758ec2be8 Reland "Fix skshaper in component builds"
Change-Id: Ic7e233216f7d1031cf2c0f97003140b3e09f5491
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267760
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-30 18:57:16 +00:00
skia-recreate-skps
36c0521d57 Update Go Deps
Change-Id: Ib58e743efb7e3cf829d90819c59ae29828a9d323
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267806
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-01-30 18:24:35 +00:00
John Rosasco
b80b2fe451 Change fidl tables from cpp to c.
This fixes a build error that resulted from FIDL changes that are in the SDK.

Change-Id: I87a7632aac843903229e2c081d1426a31c8f8552
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267731
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-30 18:01:05 +00:00
Robert Phillips
314524ea80 Add compressed backend textures to Metal (take 2)
Bug: skia:9680
Change-Id: I88035added2fd1721ef98048bd3344ab90e3da5c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266199
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-01-30 17:33:10 +00:00
Julia Lavrova
7ad393e58a Fix placeholders in cache
Change-Id: I36d488aa7a554131b8e524beeabc4ca9f5777591
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267696
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2020-01-30 17:29:55 +00:00
Julia Lavrova
7c1142dd7b Dead code
Change-Id: I75eb10ff622743dc95b4f7fbec14f37447ce0edf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267481
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-01-30 17:28:05 +00:00
Heather Miller
792400bec3 Update Skia milestone to 82
Change-Id: Ifeaa877da83a42cceb04fe286bb2462190b249f9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267762
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
2020-01-30 17:14:00 +00:00
Hal Canary
9d9312b308 decs/examples: Support more fiddle types: offscreen, srgb
Change-Id: I606eb7dfbce04147bfc6e287bb2c75051a44a076
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/264692
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2020-01-30 16:31:58 +00:00
Brian Osman
482f1c7479 Revert "Fix skshaper in component builds"
This reverts commit d1be5d64f8.

Reason for revert: Chrome win compile

Original change's description:
> Fix skshaper in component builds
> 
> It was building a shared library, but had no exports (on Windows).
> We think the correct model for modules in the future is for each one
> to be a separate DLL linked against the public API/exports of Skia.
> This serves as the model for that. Doing this with other modules will
> probably require exporting more symbols from Skia.
> 
> Change-Id: I116b1635533d755ae71e8df5aa234270b7f77a31
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267477
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

Change-Id: I4c70dc996ce3964b017dc863bed2428bf4b63325
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267758
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-30 15:35:13 +00:00
Brian Osman
eb40726b88 Revert "Use separate SKSHAPER_DLL define to activate shared library logic"
This reverts commit 3e98c0e1d1.

Reason for revert: Need to revert earlier CL

Original change's description:
> Use separate SKSHAPER_DLL define to activate shared library logic
> 
> Change-Id: I35cd463fd85920651a940a9af131f7b6515c2a3a
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267676
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

Change-Id: Ia25b838a2fbe5cd5a7be7a0a8c2e7052647ded9a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267757
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-30 15:31:58 +00:00
Florin Malita
cc982ecbca [skottie] Cleanup: convert remaining effects to new adapter pattern
Also add a couple of tests for missing coverage.

TBR=
Change-Id: I420c71d73657c5d003fda94a4c43dde20a1a6b87
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267556
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-01-30 15:30:08 +00:00
Brian Osman
3e98c0e1d1 Use separate SKSHAPER_DLL define to activate shared library logic
Change-Id: I35cd463fd85920651a940a9af131f7b6515c2a3a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267676
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-30 15:15:27 +00:00
Ravi Mistry
a5ec04d8fa Turn off failure comments from G3 bot
Too noisy.

Change-Id: I454573b92730854697147415333d1874d3c02bfa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267617
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2020-01-30 15:02:27 +00:00
Brian Salomon
64874eaa30 Avoid using kClamp domain in GrMatrixConvolutionEffect::MakeGaussian.
SkBlurMaskFilterImpl::filterMaskGPU uses full src proxy as srcBounds
passed to SkGpuBlurUtils::GaussianFilter.

Change-Id: Ia3e3b339f358f551e37b80328cfdb7382af902b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267480
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-01-30 14:28:09 +00:00
Brian Osman
d1be5d64f8 Fix skshaper in component builds
It was building a shared library, but had no exports (on Windows).
We think the correct model for modules in the future is for each one
to be a separate DLL linked against the public API/exports of Skia.
This serves as the model for that. Doing this with other modules will
probably require exporting more symbols from Skia.

Change-Id: I116b1635533d755ae71e8df5aa234270b7f77a31
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267477
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-30 14:20:48 +00:00
Mike Klein
ce9e060b48 finish up 2pt conicals
In the end it turned out best to let the subclasses
modify the mask, rather than return how to do it.
This gave more flexibility about how to calcualte it.

Add negate(x), norm(x,y).

Change-Id: Ie17050037f0441becf06897fbe31587d6709009d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267456
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-30 13:59:28 +00:00
Benjamin Wright
5df08e55e1 [fuchsia] Replace system-temp with isolated-temp.
This change replaces system-temp with isolated-temp. As system-temp is
now deprecated.

Bug: fuchsia:25081
Change-Id: I4f87b69caa95df7c9809c3eb3d0f7e40ef4cddad
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266974
Reviewed-by: John Rosasco <rosasco@google.com>
Auto-Submit: Benjamin Wright <benwright@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-30 13:57:57 +00:00
Eric Boren
0ec7b84854 [infra] Update go.sum
I ran "go build -i go.skia.org/infra/..." and this was the result. I've
added that as a step of UpdateGoDeps in
https://skia-review.googlesource.com/c/buildbot/+/267596

Change-Id: Id1494fb012209de1419d4b620c8e8983f2a4d4cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267616
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2020-01-30 13:27:57 +00:00
recipe-roller
8f44c3504c Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
  https://crrev.com/5a91e29d366be1e9e7c7e270a1da92790625c618 (tikuta@chromium.org)
    swarming: remove deprecated arg

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iee62bb6795d86a25dd84d069e6034632fa443e83
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267578
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>
2020-01-30 08:28:07 +00:00
recipe-roller
f1c330bde2 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
  https://crrev.com/7d4ed3e64183a01cba0ef7abfa6ca1a4e586cef7 (tikuta@chromium.org)
    swarming: update swarming client

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iecc531e850b5e09dfe690a0d86fa5e4a46241c46
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267534
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>
2020-01-30 06:31:37 +00:00
skia-autoroll
25bcd6a621 Roll ../src 243744c215b7..fbfe7df1b1d4 (481 commits)
243744c215..fbfe7df1b1


Created with:
  gclient setdep -r ../src@fbfe7df1b1

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC reed@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/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: reed@google.com
Change-Id: I266cebfc669511514ba4abe4c17f4fcb945a0e9c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267526
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-30 04:53:07 +00:00
skia-autoroll
5b0486531b Roll third_party/externals/swiftshader 6c3dc3581eaf..430def835f9f (7 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/6c3dc3581eaf..430def835f9f

git log 6c3dc3581eaf..430def835f9f --date=short --first-parent --format='%ad %ae %s'
2020-01-29 capn@google.com Regres: aways use build output path for ICD json
2020-01-29 capn@google.com Associate bug IDs with unimplemented functionality
2020-01-29 amaiorano@google.com Fix memory leak in rr::Optimizer
2020-01-29 bclayton@google.com Regres: Make it work on windows.
2020-01-29 amaiorano@google.com Subzero: implement coroutines for Win32
2020-01-29 bclayton@google.com SpirvShaderDebugger: Expose builtins in HLSL / GLSL.
2020-01-29 bclayton@google.com Vulkan/Debug: Add VariableContainer::extend()

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

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 reed@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/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: reed@google.com
Change-Id: I8c825443112be42479207c0e27fc02f9fac1e557
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267525
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-30 04:38:27 +00:00
skia-autoroll
73b748619e Roll third_party/externals/angle2 2bc9cc12f0b0..ee07cb317579 (18 commits)
2bc9cc12f0..ee07cb3175

git log 2bc9cc12f0b0..ee07cb317579 --date=short --first-parent --format='%ad %ae %s'
2020-01-30 jmadill@chromium.org Test Harness: Allow filter with sharding params.
2020-01-29 tobine@google.com Add GN arg to extract native libs in APK
2020-01-29 jdarpinian@chromium.org Fix re-enabling ARB_texture_rectangle
2020-01-29 geofflang@chromium.org D3D11: Copy from Image objects instead of TextureStorage when possible.
2020-01-29 spang@chromium.org Fuchsia: Enable perFrameWindowSizeQuery by default
2020-01-29 sugoi@google.com Enable GL_OES_depth_texture_cube_map with Vulkan backend
2020-01-29 spang@chromium.org Fuchsia: Skip PointSpriteAlternatingDrawTypes on ARM Fuchsia
2020-01-29 shrekshao@google.com SH_CLAMP_INDIRECT_ARRAY_BOUNDS logic update
2020-01-29 syoussefi@chromium.org Vulkan: Cleanup glslang wrapper
2020-01-29 courtneygo@google.com Vulkan: Simplify format table generation
2020-01-29 syoussefi@chromium.org Vulkan: Set varying location & xfb decorations in SPIR-V
2020-01-29 jgilbert@mozilla.com Disable skipValidation when context is lost.
2020-01-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 07a55839eed5..9a80305c0897 (1 commits)
2020-01-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src e39b5cf6a1b6..ebe1b7497acb (1 commits)
2020-01-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 34e16df059f8..6c3dc3581eaf (2 commits)
2020-01-29 syoussefi@chromium.org Vulkan: Set fragment output locations in SPIR-V
2020-01-29 syoussefi@chromium.org Vulkan: Set vertex attribute locations in SPIR-V
2020-01-29 syoussefi@chromium.org Vulkan: Set set/binding in SPIR-V

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

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 reed@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/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: reed@google.com
Change-Id: I0df936cb100a6c1c3a0767aefd6a97ff5a1b4d81
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267524
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-30 04:37:07 +00:00
Chris Dalton
4328e928ef Add a stencil/tessellation hybrid mode for path rendering
This is a hybrid approach where we stencil only the curves using GPU
tessellation shaders, and then tessellate the path's inner polygon on
CPU and draw it directly to the final render target, stencilled
against the curves. Tessellating just the inner polygon is more than
fast enough to do in real time, and still allows us fill in the
majority of pixels in a single render pass. It gives us most the
benefit of CPU tessellation, but at a fraction of the cost.
Furthermore, the tessellated inner polygon can potentially be cached
and reused independent of the view matrix.

Change-Id: Id45adc643b51ab80a0c655dd2045a5314bdc7507
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266456
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-01-30 01:44:15 +00:00
recipe-roller
1a049bb043 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/e827b0f7ec9d54c901ac9a9d2d734cd5ecbf478e (sokcevic@google.com)
    Adds support to edit description on git cl upload

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic8700be1df6c2db27c485a610035b6b784fc98f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267518
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>
2020-01-30 00:40:23 +00:00
recipe-roller
24ed75db12 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.

depot_tools:
  https://crrev.com/ca7b3bf330522124f4f718771483dd1d7011324e (ukai@google.com)
    roll out new goma client binary (VERSION=188)
  https://crrev.com/9d635962bc7844212b4309b5123bfd9a2f9bfa4c (ukai@google.com)
    OWNERS: add ukai for cipd_manifest.*
  https://crrev.com/ea8b58b970c0c94b4a36270b806ee307547cd77e (apolito@google.com)
    add apolito to owners
  https://crrev.com/1a0daf728cae33e170699a0e372c808736d08862 (agable@chromium.org)
    Let the presubmit recipe module skip owners checks when necessary

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib5b2c7b8ead2b30d680919b5468d70b73bf97185
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267504
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>
2020-01-29 23:13:32 +00:00
Nathaniel Nifong
d0a0c59c80 Return summaries of all layers for display
Bug: skia:9752
Change-Id: I1012f4cda1c28d446269f0a3f212ccf80f17c194
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267439
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-01-29 20:55:49 +00:00
Greg Daniel
5c082496e1 Use views throughout gpu blur code.
Bug: skia:9556
Change-Id: I3988c8112d72d5453cf93e58542eb68b16e67e1c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267452
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-01-29 20:37:00 +00:00
Kevin Lubick
8a46f76646 [canvaskit] Add demo for RT shader
No-Try: true
Docs-Preview: https://skia.org/?cl=267453
Change-Id: Iaddd796c8650e4668b9c23e0bf7cb64cbf998af2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267453
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-29 19:42:40 +00:00
Chris Dalton
6ccc032f4b Add a "kSimpleInnerPolygons" mode to GrTessellator
The inner polygons connect the endpoints of each verb. (i.e., they are
the path that would result from collapsing all curves to single
lines.) Requiring it to be simple means the tessellator will abort if
there is any self intersection or double winding.

This exciting new mode will be used by the GPU tessellator. It will
stencil the curves only, then draw the inner polygon directly to the
canvas. This gives us most the advantage of CPU tessellation, at a
fraction of the cost. And the tessellated inner polygon can
potentially be cached and reused independent of the view matrix.

Change-Id: I4c70b18c6f8b011396e00a5b08997cdf9846c9af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266422
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-01-29 19:08:07 +00:00