Commit Graph

48173 Commits

Author SHA1 Message Date
Ravi Mistry
3b2ff2deb8 Support specifying hash and patch_ref in skia-release & skia-wasm-release Dockerfiles
Bug: skia:10198
Change-Id: If6d47e95ffdbc12f0b31284353d8f48b43cd0041
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287830
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2020-05-06 20:39:04 +00:00
Florin Malita
fbddfbb9f3 [skottie] Introduce an external layer API
Add support for external precomp Skottie layers.  This allows embedders
to seamlessly mix custom/Lottie content.

General flow:

  * embedders register a PrecompInterceptor callback with
    the animation builder
  * at build time, Skottie invokes the callback for each pre-composed
    layer
    - the returned ExternalLayer implementation is used instead of the
      Lottie layer payload
    - (a nullptr value signals Skottie to use the usual Lottie payload)
  * at render time, ExternalLayer::render() is called to defer content
    rendering to the embedder

Also implement a sample PrecompInterceptor which attempts to substitute
precmp layers matching a given pattern with external Lottie animations:

   precomp_name: "__foo.json"  -> Animation("foo.json")

This new mechanism is a generalization of (and supersedes) the old
NestedAnimation hack - so we can remove that.

Change-Id: Id80fe11881c62b8717c2476117c7c03ad5300eef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288130
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2020-05-06 20:31:14 +00:00
Greg Daniel
16032b33d9 Split apart creating and updating GrBackendTextures internally.
This change does not any public APIs but just pulls apart the create and
update steps inside of createBackendTexture. A future CL will allow just
calling update from the public API with an already create texture.

This change only splits apart the work for non compressed textures.
Compressed support can be added at a future time, but for many backends
it should be fairly trivial since the update call handles compressed and
uncompressed already.

Change-Id: Iae99e9f140c347effe66b5d669c6f39bce023115
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287856
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-06 20:02:04 +00:00
Jim Van Verth
28d920a916 Fix OpenGL MSAA on Catalina.
Catalina requires that we call [NSOpenGLContext clearCurrentContext]
when tearing down contexts. We were doing it in the GLWindowContext
destructor, but not when switching for MSAA.

Bug: skia:10134
Change-Id: I81be962419ca4afa724ab3f896081af4bbedda3f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288157
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2020-05-06 19:55:04 +00:00
John Stiles
5daaa7f0f9 Limit the Viewer MSAA options to the context's max sample count.
Selecting an MSAA option that the context does not support can cause
issues, so prevent those options from being displayed.

This fix was suggested by jvanverth@ during his review of
https://skia-review.googlesource.com/c/skia/+/287976

Bug: skia:10134
Change-Id: If8c35786da83e6ace336328281d7005cc75cf301
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288096
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-05-06 19:54:44 +00:00
Robert Phillips
43e7e4f3e1 Add a work indication to SkDeferredDisplayList::ProgramIterator::compile
Chrome hopes to use this as a heuristic for when to yield. I.e., if no work is done, keep going but yield after each compile that did work.

Change-Id: I9524ca03078af3cd60f0042b2e8b0ec4c628e5f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288176
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-05-06 19:49:40 +00:00
Michael Ludwig
29c2f71cb8 Fix false positive in SkRRectPriv::ConservativeIntersect
Change-Id: I754fde671fcbaa2acf6443eb0a737b546e5c6f7e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287889
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-05-06 19:49:39 +00:00
Brian Salomon
9c4fa1e9cd Fix tile modes in SkGpuBlurUtils.
Expand direct GM testing of SkGpuBlurUtils.

Decimate in SkGpuBlurUtils using GrSurfaceContext::rescale.
GrSurfaceContext::rescale() works on recording context and
uses approximate textures (to avoid memory issues for blurs
of many different sizes).

Don't preserve contents to the top/left of the source bounds
in the rescaled image.

GrGaussianConvolutionFragmentProcessor applies wrap mode to
both axes.

Rely on GrTextureEffect to omit subset enforcement in shader
by providing a domain rect rather than turning off tiling in
caller.

Change-Id: I73e09b4fcbcbed590dd3599091c38d5de65f48c4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285099
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-06 19:44:35 +00:00
Adlai Holler
6d12c66653 Fix out-of-bounds read for matrix convolution effects with 25 size kernels
Bug: skia:10225
Change-Id: Iac111632868d064a8ff5ae9d7b4f6ad6731d4675
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288262
Auto-Submit: Adlai Holler <adlai@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-06 19:44:34 +00:00
Julia Lavrova
18db52f2ee Skips in underline decorations
Bug: skia:10166
Change-Id: Ib1d71f69d8647840f71c8599ca3517cb575bf945
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287620
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2020-05-06 18:59:34 +00:00
Chris Dalton
041232a789 Remove usage of SkPath::RawIter in SkScan_Hairline.cpp
Change-Id: I09bf4a6cf1b3fa7ee3fc1074d9617bd6fd3a36c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287892
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-06 18:41:34 +00:00
Greg Daniel
dddf709101 When creating with data, always set vk GrBackendTexture layout to sampled.
We won't lose much by not going to color attachment layout since when the
renderable GrBackendTexture gets wrapped in an SkSurface we still will put
in a barrier to protect from write after write. The barrier will now just
also include a layout change.

Change-Id: I91cddd0a4de415760c3e7e4382c243946f788301
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288136
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-05-06 17:56:14 +00:00
Chris Dalton
76dcbc1eca Remove SkPath::RawIter usage from GrGLPath.cpp
Change-Id: I402a3983ddcf58d355375bed516e0fb92ac05701
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287891
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-06 17:48:07 +00:00
John Stiles
31964fd155 Qualify local constant strings with static, and remove unused strings.
Change-Id: Icd317eb1b260e9640473e8a201a204a6e49bc002
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287916
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-05-06 17:36:44 +00:00
Greg Daniel
c1ad77cf48 Add finisehd proc to backend texture creation.
The callback lets the caller know when the data uploads to the texture
from the create call are finished. This is important since the caller
cannot delete the backend texture till the gpu is finished on vulkan
and d3d.

This change also removes the hard sync in vulkan during creation.

Change-Id: I660d142219474e22b1337d2b0c81cda66fe18a4b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286517
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-05-06 16:50:33 +00:00
Chris Dalton
de5003768b Remove SkPath::RawIter from tests/tools/samplecode
Change-Id: I66c1b4aee9b07a4db294ed0cd82d01f3097c6acb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287857
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-06 16:31:53 +00:00
Chris Dalton
999257d870 Convert pathkit's usage of SkPath::Iter to SkPatPriv::RangeIter
Change-Id: If940941a66c1fda508970a73d8433a2d2a292e1c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287894
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-06 14:26:19 +00:00
Chris Dalton
c69d47954d Remove SkPath::RawIter from docs and examples
Change-Id: Ibfcc596855f35a1d08d85e602c7ef7ab9c39a315
Docs-Preview: https://skia.org/?cl=287893
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287893
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-06 14:00:59 +00:00
Jim Van Verth
517af96936 Fix colorspace in Viewer for Metal
Change-Id: Id8394acf854f1c069c5fde449ede225b2d81968b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288056
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-05-06 13:00:19 +00:00
Brian Salomon
613c92796e Add missing clipping of contentRect to dstBounds between blur passes.
Bug: 1074148

Change-Id: Ic17fa07f11d8b282f809c78127e94c55355af8d4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287884
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-06 12:53:49 +00:00
John Stiles
e1d9b10f9a Add missing NSOpenGLPFAMultisample attribute to the OpenGL pixel format.
According to the documentation at
https://developer.apple.com/documentation/appkit/nsopenglpfamultisample
this attribute is necessary to enable MSAA antialiasing.

(Unfortunately, even with this change, MSAA is still not working
properly in OpenGL.)

Change-Id: I1f59a4659d4891fc239ab4c56df7b134f0f5f2a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287996
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-05-06 12:44:29 +00:00
Robert Phillips
c5727d8e34 Fix path mask caching regression
Adding the explicit rect to the path mask key in:

https://skia-review.googlesource.com/c/skia/+/286902 (Add path bounds to SW path mask key)

prevented the path mask from being reused more generally.

This CL just adds the width & height to the key which allows reuse but still prevents proxy size mismatches due to numerical inaccuracies.

For the path_mask_cache GM we have:

                 Num Generated   Num Reuses

with the bad CL:      24               0
prior to bad CL:      18               6
with this CL:         18               6

Change-Id: I6f5c847e6f14c80013d4f315ef8a9a16c737295b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287816
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-05-06 12:21:19 +00:00
skia-recreate-skps
1e8fb04b29 Update Go Deps
Change-Id: Ibe9951ee0a8ef83ce53ea6847a8cee87ceac5fb8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288024
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-06 05:40:14 +00:00
skia-autoroll
2885034e9e Roll third_party/externals/angle2 41f7bcce04a8..daed369cfdb6 (13 commits)
41f7bcce04..daed369cfd

git log 41f7bcce04a8..daed369cfdb6 --date=short --first-parent --format='%ad %ae %s'
2020-05-06 m.maiya@samsung.com EGL: Add support for GL_EXT_EGL_image_array extension
2020-05-05 jmadill@chromium.org Allow tests to run on native EGL.
2020-05-05 timvp@google.com No-Op draws when no active VS and/or FS is present
2020-05-05 cnorthrop@google.com Capture/Replay: Reset buffers on replay loop
2020-05-05 thakis@chromium.org Revert "Add -Wno-pointer-to-int-cast"
2020-05-05 ianelliott@google.com Add end2end test for changing MAX_LEVEL with compressed texture
2020-05-05 cnorthrop@google.com deps: Roll VK-GL-CTS
2020-05-05 tobine@google.com Vulkan: Merge Command Buffer Helpers
2020-05-05 courtneygo@google.com Roll Vulkan headers, update ANGLE to match
2020-05-05 jmadill@chromium.org Vulkan: Defer framebuffer clears.
2020-05-05 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader b798cfa374eb..c4bbd378e95b (1 commits)
2020-05-05 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src 2f609275c00c..102687e26ec8 (15 commits)
2020-05-05 ianelliott@google.com Vulkan: honor compressed texture block width/height

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

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 bsalomon@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-Debian10-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: bsalomon@google.com
Change-Id: I40f2438449a748c9c0286b7cb0a5a108ab7edd80
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288019
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-06 04:47:14 +00:00
skia-autoroll
ab8ea83f8a Roll third_party/externals/swiftshader c4bbd378e95b..baa10d7b1dee (3 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/c4bbd378e95b..baa10d7b1dee

git log c4bbd378e95b..baa10d7b1dee --date=short --first-parent --format='%ad %ae %s'
2020-05-05 swiftshader.regress@gmail.com Regres: Update test lists @ 6ce626b4
2020-05-05 bclayton@google.com Regres: Don't nuke the daily test dir before using the test results
2020-05-05 bclayton@google.com CMake: Only build turbo-cov with clang + llvm 10

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

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 bsalomon@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-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bsalomon@google.com
Change-Id: Icd4de3b5e6307838e57e26427af12f5bb4832e37
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288018
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-06 04:46:14 +00:00
skia-autoroll
e1c0cb3de8 Roll ../src abf0e59f0c48..3e771a1cba08 (474 commits)
abf0e59f0c..3e771a1cba


Created with:
  gclient setdep -r ../src@3e771a1cba

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 bsalomon@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: bsalomon@google.com
Change-Id: I1edc9ab5ab85ca9eebeb86c09957a0e24ca77bc4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288016
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-06 04:38:16 +00:00
skia-autoroll
0f27ace507 Roll third_party/externals/dawn 07328ba0bbce..0abddd21c9ad (5 commits)
https://dawn.googlesource.com/dawn.git/+log/07328ba0bbce..0abddd21c9ad

git log 07328ba0bbce..0abddd21c9ad --date=short --first-parent --format='%ad %ae %s'
2020-05-05 yunchao.he@intel.com Add dispatch call in usage tracking tests
2020-05-05 rharrison@chromium.org Rolling 4 dependencies
2020-05-05 cwallez@chromium.org Start adding docs about device facilities.
2020-05-05 cwallez@chromium.org Move validation of the copy commands in the entrypoint.
2020-05-05 cwallez@chromium.org TextureVk: Make a Create function for swapchain textures.

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 39281fb710c3..b5f003d7a3ec
  https://chromium.googlesource.com/external/github.com/google/shaderc 41f271e6139c..15a66d72f33a

Created with:
  gclient setdep -r third_party/externals/dawn@0abddd21c9ad

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@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

Bug: None
Tbr: cwallez@google.com
Change-Id: Idd733251abd96c1f5a55ed9d451c3d878e7ccf64
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288017
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-06 04:38:14 +00:00
Chris Dalton
217ea171e2 Remove SkContourMeasure::Impl's usage of RawIter
Change-Id: I4a2a4e8740e5d4906e00076f932d1996d46d2c16
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287737
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-05-05 21:53:20 +00:00
Ethan Nicholas
bffad83f55 eliminate redundant transform in vertex shader
Change-Id: I310be90e557733d7ff5414f14735d55a7b2f21f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287859
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-05-05 21:48:31 +00:00
Ben Wagner
e2a944384c Fix SkBitSet.
Rename methods to be more like std::bitset and boost::dynamic_bitset.
Also fix findFirst to actually find the first and add tests.

Change-Id: Ic812c0a6d0ce1740c1cda900516f609ebbf5811c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287676
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-05-05 20:04:11 +00:00
Chris Dalton
8976f08883 Hide SkContourMeasure's usage of RawIter behind an "Impl" class
Change-Id: I33c432022b7d16faa0a3e57fdddf0b1dedccc5c2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287656
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-05 19:24:41 +00:00
Mike Reed
52653731d5 remove unused maskfilter helpers: Combine, Compose
Change-Id: I8c6bf2c3539905c9c7bc9c29454322dbf944fe96
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287823
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2020-05-05 19:10:00 +00:00
Robert Phillips
273f107a2d Dump out path-mask generation and caching stats
These stats would've helped block https://skia-review.googlesource.com/c/skia/+/286902 (Add path bounds to SW path mask key) from landing.

Change-Id: I684f39de53fb2678c7a679e4e4aafdbb39a154ca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287499
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-05-05 18:21:49 +00:00
Mike Reed
0cbd58766a be sure to keep the fonts alive for the two loops
Bug: skia:10124
Change-Id: I449b72a00d714207a6bbc7948b5cdbb9a541b43f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287819
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-05-05 15:40:59 +00:00
Ben Wagner
e8ffb088c1 Close file before writing in SkVMTest.
On Windows each time the test is run one gets

sk_fopen: fopen("resources\SkVMTest.expected", "wb") returned nullptr (errno:22): Invalid argument

due to 'expected' holding a read lock on the file when trying to open
the same file for writing. Windows locks files aggressively and in this
case there is no good reason to keep the read access when trying to
truncate and write to this file path.

This also changes the logic to only update the file in the error case
when the content would actually change. Previously it seems this file
would be re-written (usually with the same content) every time this test
ran.

Change-Id: I9c96f1e7e0692e57326fec351c7353c423014c9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287381
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-05 15:10:09 +00:00
Robert Phillips
3d311a983b Switch some GMs over to using create_portable_typeface
This is in response to some Win7 vs Win10 font selection diffs on the compositor_quads_filter GM.

Change-Id: I9564d8a305b0bf773ddb31597b29878e0bc3323d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287796
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-05-05 13:59:48 +00:00
John Stiles
70941591b8 Remove unnecessary SK_SIZE_T_SPECIFIER macro.
This macro was only necessary to support Visual Studio 2013, which did
not yet support %zu format specifiers. Skia no longer compiles on
Visual Studio 2013.

Change-Id: Ie32a66c7a8e022b8596272476ca3547df1f89a55
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287738
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-05 13:25:28 +00:00
Nathaniel Nifong
1bedbeb081 Pass 4f colors to private functions with float pointers
Change-Id: I4534a246c37870750298d39edcbc869781dc1008
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286880
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-05-05 13:17:28 +00:00
Herb Derby
d16e322f02 Add subspan() to SkSpan
Change-Id: I1ac2ec8cf22a96c50261ca3863edeb0ed3c24dd6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287579
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-05-05 13:02:48 +00:00
skia-recreate-skps
96d31defe3 Update Go Deps
Change-Id: I3fec3b8ffc44505893ead6a824db2d60a80a2769
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287735
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-05 05:38:28 +00:00
skia-autoroll
0ce0fd07a6 Roll third_party/externals/angle2 040e4f6fcf54..41f7bcce04a8 (14 commits)
040e4f6fcf..41f7bcce04

git log 040e4f6fcf54..41f7bcce04a8 --date=short --first-parent --format='%ad %ae %s'
2020-05-04 cclao@google.com Vulkan: Add missing cache flush
2020-05-04 jmadill@chromium.org Vulkan: Update VMA integration.
2020-05-04 sugoi@google.com Fix clearing the program's validation-related cache too early
2020-05-04 spang@chromium.org Fix VulkanExternalImageTest on SwiftShader
2020-05-04 jonahr@google.com Fix issue with missing step info in generate_stats.py
2020-05-04 spang@chromium.org Vulkan: Move ICD overrides to a common place
2020-05-04 spang@chromium.org Fix wrong date in ANGLE_external_objects_fuchsia revision history
2020-05-04 cnorthrop@google.com Tests: Add program pipeline object tests
2020-05-04 jmadill@chromium.org EGLWindow: Clean up some init attribute code.
2020-05-04 courtneygo@google.com Implement setBinaryRetrievableHint
2020-05-04 jmadill@chromium.org Expose EGL 1.5.
2020-05-04 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 694e21400ee5..b798cfa374eb (9 commits)
2020-05-04 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src c0f34c020d9d..17019fa23604 (2 commits)
2020-05-04 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src b179a50e9c9c..2f609275c00c (8 commits)

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

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 bsalomon@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-Debian10-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: bsalomon@google.com
Change-Id: I7d09fb63574863ac1706277c5491305a7c2c34c7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287729
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:59:58 +00:00
skia-autoroll
bc8982c866 Roll third_party/externals/swiftshader b798cfa374eb..c4bbd378e95b (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/b798cfa374eb..c4bbd378e95b

git log b798cfa374eb..c4bbd378e95b --date=short --first-parent --format='%ad %ae %s'
2020-05-04 capn@google.com Remove typeinfo from GLES exported symbols

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

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 bsalomon@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-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bsalomon@google.com
Change-Id: I2e15f1c88a7921f3976b9d001b8a79201d992026
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287728
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:55:48 +00:00
skia-autoroll
e6e61a0fe4 Roll ../src 06a27cbea2e5..abf0e59f0c48 (412 commits)
06a27cbea2..abf0e59f0c


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

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 bsalomon@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: bsalomon@google.com
Change-Id: I8a1136206b4bfa923e1b86b71b9c93d6c989a299
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287726
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:53:48 +00:00
skia-autoroll
45ce5a2198 Roll third_party/externals/dawn ccc40f6ffaa6..07328ba0bbce (6 commits)
https://dawn.googlesource.com/dawn.git/+log/ccc40f6ffaa6..07328ba0bbce

git log ccc40f6ffaa6..07328ba0bbce --date=short --first-parent --format='%ad %ae %s'
2020-05-04 yunchao.he@intel.com Add validation tests for texture resource tracking - 2
2020-05-04 yunchao.he@intel.com Add validation code for texture subresource usage tracking
2020-05-04 yunchao.he@intel.com Add resource usage tests in a single draw/dispatch
2020-05-04 cwallez@chromium.org DescriptorSetAllocation.h: Add missing include
2020-05-04 cwallez@chromium.org Use unordered_set<std::string> for deprecation warnings
2020-05-04 yunchao.he@intel.com Fix incorrect validation error in CommandBufferStateTracker

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 39281fb710c3..39281fb710c3
  https://chromium.googlesource.com/external/github.com/google/shaderc 41f271e6139c..41f271e6139c
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637

Created with:
  gclient setdep -r third_party/externals/dawn@07328ba0bbce

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@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

Bug: None
Tbr: cwallez@google.com
Change-Id: I5f4cfa385623d881d55de1ac04c10c51ca6de6d1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287727
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:48:28 +00:00
Brian Salomon
41e377d1ba Revert "Support large kernels on GPU in matrix convolution effect"
This reverts commit 1ed4391fe7.

Reason for revert: Looks like some bad images showed up at gold.skia.org and that the ProcessorCloneTest is crashing on Windows bots:
https://logs.chromium.org/logs/skia/4bfabe0bad476911/+/steps/dm/0/stdout

Original change's description:
> Support large kernels on GPU in matrix convolution effect
> 
> Currently matrix convolution falls back to CPU execution for large kernels, due to the argument limit for fragment shaders.
> 
> Now for large kernels, we store them in a texture and sample them in a shader to sidestep the limit.
> 
> Change-Id: Icc069a701ea8e9cd0adf75f4bfd149fd22e31afd
> Bug: skia:8449
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263495
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Adlai Holler <adlai@google.com>

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

Change-Id: Iaf4858131046a343481bcf0fd9cc3919d9fc2bda
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8449
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287736
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-05 01:28:11 +00:00
Greg Daniel
6d2febd632 Reland "Add create backend texture with color upload bench."
This reverts commit 1ff415d5a1.

Reason for revert: relanding with fix

Original change's description:
> Revert "Add create backend texture with color upload bench."
> 
> This reverts commit 690b4c4644.
> 
> Reason for revert: breaking bots
> 
> Original change's description:
> > Add create backend texture with color upload bench.
> > 
> > Change-Id: Id4994cb809d6e19ca511b63dba71b45257eca927
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287618
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> 
> TBR=egdaniel@google.com,robertphillips@google.com
> 
> Change-Id: I2ac38977abc0004b38a94dacf0a235ae4fbac5d3
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287636
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Change-Id: I287a1d829d4d861d149b0f1d9adf556a38e44abb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287638
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-05 00:43:52 +00:00
Brian Osman
d5f937bfca Add min/max/clamp/saturate intrinsics to ByteCodeGenerator
Change-Id: I357f9b0d3f2c8315b67a9ead6ddbb6633524ec3d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287577
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-04 20:45:27 +00:00
Julia Lavrova
9588a643d9 TextHeightBehavior implemented
Bug: skia:10201
Change-Id: I5398836d2068164282bab77fe8448654a72050d7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286456
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-05-04 20:21:07 +00:00
Greg Daniel
1ff415d5a1 Revert "Add create backend texture with color upload bench."
This reverts commit 690b4c4644.

Reason for revert: breaking bots

Original change's description:
> Add create backend texture with color upload bench.
> 
> Change-Id: Id4994cb809d6e19ca511b63dba71b45257eca927
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287618
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

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

Change-Id: I2ac38977abc0004b38a94dacf0a235ae4fbac5d3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287636
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-04 20:20:29 +00:00
Michael Ludwig
4fc7c5f36a Add drawRRect and drawShape(GrShape) to GrSWMaskHelper
Change-Id: I68d586b44f3207c330e5c0505659457c9d05074e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287384
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-05-04 20:00:17 +00:00