Commit Graph

41278 Commits

Author SHA1 Message Date
Jim Van Verth
0a72a06d10 Enable all Mtl tests
Bug: skia:8243
Change-Id: Ic95aefa7f08ff3f931923dd57faab0e2ceeb03e4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207309
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-04-11 15:32:00 +00:00
Ethan Nicholas
b1cc013adf removed redundant GrCircleEffect.h
Bug: skia:
Change-Id: I1a7e5d7e6ca450c667cac2a2db258a48f862529b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207620
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-11 14:03:55 +00:00
Hal Canary
76e626d9bb SkQP: remove bad tests from future branches.
arcs_as_paths
    etc1
    ovals_as_paths
    perlinnoise
    radial_gradient_precision
    zero_length_paths_aa

Bug: b/129265491
Bug: b/127371533
Bug: skia:8857
Change-Id: Ib1d7a81c1d6002b052d37dc4d6f8403afdb178c8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207311
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-11 13:50:25 +00:00
skia-recreate-skps
6d60534e95 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Iabde3a10e89e06bc8f1322fbc0c38f3a4e5329d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207297
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-11 05:51:40 +00:00
skia-autoroll
80eff54147 Roll third_party/externals/angle2 f39b4f0280ef..e6b23e45b380 (7 commits)
f39b4f0280..e6b23e45b3


git log f39b4f0280ef..e6b23e45b380 --date=short --no-merges --format='%ad %ae %s'
2019-04-10 ynovikov@chromium.org Skip Texture2DTestES3.TextureImplPropogatesDirtyBits on Win AMD GL
2019-04-10 jonahr@google.com Use ANGLE's gpu_info_util libraries for test expectations
2019-04-10 ynovikov@chromium.org Skip EGLSurfaceTest.SwapInterval on Nexus 5X and 6P GLES
2019-04-10 jmadill@chromium.org Minor update to auto-roller infra docs.
2019-04-10 syoussefi@chromium.org Vulkan: update GLES3 and EGL expectations
2019-04-10 spang@chromium.org Vulkan: Expose GL_EXT_memory_object_fd & GL_EXT_semaphore_fd
2019-04-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src d90aae9a5a6c..82ebbbba15c2 (2 commits)


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

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

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

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

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

Change-Id: I91e964ae97905ae68e9addfe48f86b8eba1754e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207293
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-11 05:11:30 +00:00
skia-autoroll
235ec02e90 Roll ../src 1b121674f584..f8764798ff0e (366 commits)
1b121674f5..f8764798ff


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

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

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

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

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=egdaniel@google.com

Change-Id: Id8388e29dbfacd2baac61af8b0d737df30c2d52f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207292
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-11 04:58:30 +00:00
skia-autoroll
4d657d5e89 Roll third_party/externals/swiftshader f0aa9d5ab738..3954a0bafb8a (42 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/f0aa9d5ab738..3954a0bafb8a


git log f0aa9d5ab738..3954a0bafb8a --date=short --no-merges --format='%ad %ae %s'
2019-04-11 bclayton@google.com SpirvShader: Document ops requiring capabilities
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450FindILsb
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Find[U,S]Msb
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Determinant
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450NClamp
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450NMax
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450NMin
2019-04-11 bclayton@google.com SpirvShader: Mark GLSLstd450IMix as unreachable.
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450InverseSqrt
2019-04-11 bclayton@google.com SpirvShader: Handle DecorationRelaxedPrecision decorations
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Sqrt
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Log2
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Exp2
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Log
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Exp
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Pow
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Atan2
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Atanh
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Acosh
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Asinh
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Tanh
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Cosh
2019-04-11 bclayton@google.com SpirvShader: Stub all the remaining GLSLstd450 unimplemented cases
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Sinh
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Atan
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Acos
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Asin
2019-04-11 bclayton@google.com SpirvShader: Implement GLSLstd450Tan
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Cos
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Sin
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Degrees
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Radians
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Ldexp
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Fma
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Frexp
2019-04-10 chrisforbes@google.com Implement pack/unpack extended instructions
2019-04-10 chrisforbes@google.com SpirvShader: Implement GLSLStd450ModfStruct
2019-04-10 bclayton@google.com SpirvShader: Implement GLSLstd450Modf
2019-04-10 srisser@google.com Generic Transform Feedback buffer as global state
2019-04-10 sugoi@google.com Use the ImageView's format in clear operations
2019-04-10 hliatis@google.com Resolve build issues with Reactor on Android
2019-04-10 swiftshader.regress@gmail.com Regres: Update test lists @ f0aa9d5a


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

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

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

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

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

Change-Id: I4598c779d9fd2bb2931e5d7ab6684a239834f7fc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207294
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-11 04:45:00 +00:00
recipe-roller
99d7922767 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/a8a96dca3e5e81e2bfff4b93a2384c8b40a58068 Add commit_position module (nodir@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3022a22da68d3062fa78f11013227a031602f279
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207365
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-04-10 23:59:10 +00:00
recipe-roller
be94a48426 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/10a2ec175037ae0a360b7e317ecc9b8ac76e9d95 [buildbucket] Print builder ids (nodir@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib844817cb32747184a5b97ed2838566c32756535
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207364
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-04-10 22:49:40 +00:00
recipe-roller
34adc46220 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/cc7c58088b474b95483beaf4b41a3028121e4f7b [scheduler] Read current triggers (nodir@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I643ad06f0668ce8c78c7efe776bc44bd4e41a414
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207363
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-04-10 22:10:40 +00:00
Mike Reed
fb5bcca999 oops, remove the rest of SkMixer
Change-Id: I64820668e9f501002e64942d5c8a2b07abedf74a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207313
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-10 21:50:30 +00:00
recipe-roller
49f0630cb8 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/166a0650c2d951e45118581b5fa442940a675a13 Add recipe_proto OWNERS (nodir@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic011ac4b0bee4296a9604b4b1df16e334d108df4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207362
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-04-10 21:28:40 +00:00
Herb Derby
eded39a92d Return a span from getMetrics
Change-Id: I41f339dfa1a49f07ea5ab42e30d1a1e20af97b30
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207308
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-10 21:23:35 +00:00
Greg Daniel
b9990e4492 Add more general flush call to GrContext.
This is to match the current features of SkSurface::flush and to prepare
for adding additional features to flush.

Bug: skia:8802
Change-Id: I5d68272e1277b416af357e6ffaf426841ceda943
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207301
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-10 21:19:10 +00:00
Ethan Nicholas
6dd9d3da60 removed duplicate GrCircleEffect.cpp
Bug: skia:
Change-Id: I741342126cd37ae12865e88aa4b21e6f152537d7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207310
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-10 21:18:30 +00:00
Brian Osman
42280f8961 Add Shared library Windows builds
On Windows, exported types always have their constructors,
destructors, assignment operators, etc... generated, including
exception handling. This can require stricter rules about usage of
forward declared types. Ensure that we build correctly in that
environment (with both MSVC and Clang).

Change-Id: I119c368fcf3f0e55acce7b8f9183eca3ae1851fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207223
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-10 21:04:35 +00:00
Brian Osman
eec1e9e4f1 Even more DLL build fixes
These changes let us build a non-official component build on Windows,
using either MSVC or clang

Change-Id: Ia3279aa19e007e70ff28925ff70a0bfe8144d96f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207307
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-10 21:02:40 +00:00
Mike Reed
e3f17b911f remove SkMixer, since we have explicit lerps/blends in SkShader
Change-Id: I937861df9d8ae89c0587ea59dd740989bebd35a4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207305
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-10 20:59:30 +00:00
Greg Daniel
e20f6cae8b Reland "Remove unnecessary flush in RenderYUVAToRGBA (take 2)"
This reverts commit 1208002548.

Reason for revert: This wasn't the cause of chrome roll failure as the failing bot is randomly failing on non-skia rolls as well.

Original change's description:
> Revert "Remove unnecessary flush in RenderYUVAToRGBA (take 2)"
> 
> This reverts commit 223845f792.
> 
> Reason for revert: speculative revert for chrome roll
> 
> Original change's description:
> > Remove unnecessary flush in RenderYUVAToRGBA (take 2)
> > 
> > There is no real reason to flush here. If clients need to access the results immediately they should be flushing at the API level.
> > 
> > A reland of: https://skia-review.googlesource.com/c/skia/+/196645
> > 
> > It needs to land after the Chrome CL:
> > 
> > https://chromium-review.googlesource.com/c/chromium/src/+/1560554 (Flush pending work after calls to YUVGrBackendTexturesToSkImage)
> > 
> > Change-Id: I230d7433b5c1b72d8f50fd475033c942826eda94
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206688
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Robert Phillips <robertphillips@google.com>
> 
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
> 
> Change-Id: Ib712184e8c4f03cb4da21ca5c445b37cd3d7cd90
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207306
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Change-Id: I543baa628f45a5599fbbc7bcafc0d12db6fa2adf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207312
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-10 20:45:02 +00:00
Florin Malita
b72dee21c1 [skottie] Initial "Levels" effect support
Introduce sksg::LevelsColorFilter and hook into Skottie's effects builder.

Limitations:

  - BM/Lottie does not export animated paramaters (static values only)
  - BM/Lottie only exports the first modified channel

Change-Id: I9ef389478c2eaa0d13794abe6a8089a8b3c0c62e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206269
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2019-04-10 20:40:10 +00:00
Florin Malita
347a9709bb Reland "[skottie] More snug kTop Shaper alignment"
This reverts commit 80658204f4.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "[skottie] More snug kTop Shaper alignment"
> 
> This reverts commit 7ef3e14516.
> 
> Reason for revert: TSAN failures (HB?)
> 
> Original change's description:
> > [skottie] More snug kTop Shaper alignment
> > 
> > The current implementation relies on SkShaper ascent values for top
> > text box alignment, but the results are not as visually accurate as AE
> > (or Lottie).
> > 
> > Use the computed tight bounds instead.
> > 
> > Change-Id: I4447a834fe3cae398fc887766daa68802e7f50a5
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206684
> > Reviewed-by: Ben Wagner <bungeman@google.com>
> > Commit-Queue: Florin Malita <fmalita@chromium.org>
> 
> TBR=bungeman@google.com,fmalita@chromium.org
> 
> Change-Id: Icdcca2f6a7b33c8366c1118be2e842ff3978c8bd
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206911
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Florin Malita <fmalita@chromium.org>

TBR=bungeman@google.com,fmalita@chromium.org

Change-Id: I8b72a30b7c2d6d6918f768e59e5d7c987ed5c147
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207300
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-10 20:27:34 +00:00
Jim Van Verth
9896a0d790 Add mipmap generation for Metal
Bug: skia:8243
Change-Id: Id71073dffe6e2b42d099f0c92059b53c48b46c4f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206717
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-04-10 20:19:00 +00:00
Hal Canary
6028fa708b SkPDF: narrow layer bbox
This change reducess the size of the layer bounding box for layers
created when drawing a path or image with a mask filter.

All test PDFs render the same.

Motivation: renderers may be able to allocate smaller raster layers and
save time and memory.

Change-Id: Ibe53b85bada5d6af6ecc98aff972b5610c09d4dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207361
Commit-Queue: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-10 20:15:50 +00:00
Greg Daniel
1208002548 Revert "Remove unnecessary flush in RenderYUVAToRGBA (take 2)"
This reverts commit 223845f792.

Reason for revert: speculative revert for chrome roll

Original change's description:
> Remove unnecessary flush in RenderYUVAToRGBA (take 2)
> 
> There is no real reason to flush here. If clients need to access the results immediately they should be flushing at the API level.
> 
> A reland of: https://skia-review.googlesource.com/c/skia/+/196645
> 
> It needs to land after the Chrome CL:
> 
> https://chromium-review.googlesource.com/c/chromium/src/+/1560554 (Flush pending work after calls to YUVGrBackendTexturesToSkImage)
> 
> Change-Id: I230d7433b5c1b72d8f50fd475033c942826eda94
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206688
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: Ib712184e8c4f03cb4da21ca5c445b37cd3d7cd90
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207306
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-10 19:48:17 +00:00
Mike Klein
1c62426f96 make to_vec template parameters explicit
For some reason, Clang can infer <N,T> but GCC can't.
No big deal... we know exactly the ones we want anyway.

Change-Id: I15ba4d4edbd3bc0f37ebe3c2b6e411726cd9fb69
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207341
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-04-10 19:45:55 +00:00
Mike Klein
da7b053527 tweak SkVx to play nicely with others
Was starting to use this and ran into a few problems with clashing
symbols, namely SI and cast().  Seemed simple enough to not use SI,
and to move all the free-standing types into skvx: skvx::cast,
skvx::shuffle, etc.

Change-Id: Ia5d8ef6d0ae5375bf80d76be88d16f0c9cde56e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207340
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-04-10 19:40:05 +00:00
Herb Derby
13df106d59 Add an index to SkGlyphPos
In the mask case, the original position is needed for the fallback case.
Add an index from the original sequence to lookup the source position
when needed.

Change-Id: I16ca08cab6be685af45e4ccabf3d1f76efd7e61e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206709
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-10 19:16:05 +00:00
recipe-roller
b156c41d87 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/6c8922f408b3a4f103be5659fa941b2bbe1befb2 Implement copy operations for sentinel. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia5ec3c79bdeb60a0b6f393efded89848633fee91
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207360
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-04-10 19:05:49 +00:00
Brian Osman
c725e8f7ea Make SkShaper's GN setup more DLL friendly
Similar to the Skottie refactor that just landed, this avoids having an
empty component when shaper is disabled (which turns into a DLL with no
sources, and a missing DllMain). I think this pattern of having modules
expose the same components as empty groups is simpler (and also fixes
the fact that only two of N references in top-level BUILD.gn were
guarded). Also, no one is using the define?

Change-Id: I9d25c1cfbd42336874f4428bf61f3e34a4a18d3c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207303
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-10 18:59:35 +00:00
Brian Osman
ca9465688f Make Skottie's GN setup more DLL friendly
Skottie doesn't currently build with is_component_build=true. Trying to
build a DLL with skia_enable_skottie=false failed, because we ended up
with a component("skottie") that had no sources. That led to fallback
linker behavior, but no DllMain.

To solve this, and simplify things, move the skia_enable_skottie checks
to the outer scope, and simply replace all the referenced components
with empty groups when it's not enabled. Also fix some fm code that was
assuming it was always enabled.

Change-Id: I4a47d80d882e6c557ee14b34255e22e09292cc8c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207302
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-10 18:35:25 +00:00
Ethan Nicholas
21a9b56fc2 moved files generated from .fp files into generated/ directories
Bug: skia:
Change-Id: I8605cdfcc0b1c56c23a6075c7fe188ab7384681c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207221
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-10 18:02:02 +00:00
Herb Derby
7921c01150 Reland "Do not use sub-pixel positioning for source space"
This is a reland of 7b56b0ae39

Original change's description:
> Do not use sub-pixel positioning for source space
>
> Since the source space drawing modes call getGlyphMetrics with
> the point {0, 0}, just turn of sub-pixel positioning. This uses
> a more efficient code path in the strike
>
> Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Commit-Queue: Herb Derby <herb@google.com>
> Auto-Submit: Herb Derby <herb@google.com>

Change-Id: I4f5305990765e280930f93b25c049f6df198dc10
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206912
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-10 17:36:50 +00:00
Robert Phillips
223845f792 Remove unnecessary flush in RenderYUVAToRGBA (take 2)
There is no real reason to flush here. If clients need to access the results immediately they should be flushing at the API level.

A reland of: https://skia-review.googlesource.com/c/skia/+/196645

It needs to land after the Chrome CL:

https://chromium-review.googlesource.com/c/chromium/src/+/1560554 (Flush pending work after calls to YUVGrBackendTexturesToSkImage)

Change-Id: I230d7433b5c1b72d8f50fd475033c942826eda94
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206688
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-10 17:08:00 +00:00
Brian Osman
14003828df Delete SkSL::Compiler copy constructor and assignment operator
Another fix for Windows DLL builds. This is basically the issue from
crbug.com/770771 - we have a vector<unique_ptr>, and unique_ptr does
not allow copying or assignment. For an exported (SK_API) class, those
members will be auto-generated unless they're explicitly deleted.

Change-Id: I5764ecf0528f28cc3c201127b51574ad41841325
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207220
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-10 16:21:04 +00:00
Ben Wagner
20054dca88 Make path in Sk1DPathEffect thread safe.
Found by TSAN reporting on a recorded Sk1DPathEffect being drawn from
multiple threads.

Change-Id: I6d4bf9c336d9fd091263babd558891e64203e281
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207180
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-10 16:00:30 +00:00
Hal Canary
f5edf36d44 SkPDF: split GraphicStateStack out
motivation: SkPDFDevice is too big to think about.

All pdf outputs are identical.

Change-Id: I7d56aea07907ebcc9276d81797007d6798d54ee0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207123
Auto-Submit: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-10 15:42:40 +00:00
Hal Canary
b4719cc724 SkPDF: simplify device drawRect
minimal difference in `thinrects` gm, all having to do with degenerate
rectangles.

Change-Id: I1cec8698f5c20b966b9d92acbd476e4b499df879
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207120
Auto-Submit: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-10 15:39:00 +00:00
Ethan Nicholas
442615b85a regenerated FP files to make bot happy
Bug: skia:
Change-Id: I487e17d32d26f9f5acafe011ea1a6ad90cedf9b8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207122
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-10 15:30:50 +00:00
Brian Salomon
a585fe9a74 Add Vulkan implementation of transfering from GrSurface to a GrGpuBuffer
Bug: skia:8962
Change-Id: I3796bef5a9e1af741b933afc78e32effb2b57a4a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206703
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-10 15:28:30 +00:00
Brian Osman
e8a986387b Define all ImageSetEntry members out of line
This fixes compile errors in Windows DLL builds, where (due to
exceptions?) any of these members might need to call sk_sp's
destructor.

Change-Id: I82986afa4497216cda76b681782ccea3c530ba7a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207121
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-10 15:06:20 +00:00
Robert Phillips
9313aa77e1 Skip flush in GrDrawingManager if the specifed proxy doesn't have any work (take 2)
This is rather ham-fisted but I would like to have a short-term fix for the "always-flush" perf regressions.

Change-Id: I508e2d725ac18f50318baf31bc3243fe932c724b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206697
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-10 13:55:01 +00:00
Ravi Mistry
7bea727f5a [Android compile bot] Also build frameworks/base/libs/hwui
Bug: skia:8958
Change-Id: Ib30425535fa6553996e49fdddd23a815b2e6709a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206712
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2019-04-10 13:50:51 +00:00
Nathaniel Nifong
26f410d8cf externs needed for cpu/gpu switch
Bug: skia:
Change-Id: I39de7abdc54872ae983bbb8a7e88a8b9d93a952b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206919
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2019-04-10 13:47:21 +00:00
skia-recreate-skps
064a0b4716 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Iceb2f9129d58bfc6a7ae8265bdb7b9a576a875df
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207061
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-10 05:54:21 +00:00
skia-autoroll
e3e1146808 Roll third_party/externals/angle2 82418c821689..f39b4f0280ef (12 commits)
82418c8216..f39b4f0280


git log 82418c821689..f39b4f0280ef --date=short --no-merges --format='%ad %ae %s'
2019-04-09 timvp@google.com Vulkan Android: Remove workaround to clamp the point size
2019-04-09 spang@chromium.org Fix leak of MemoryObjectManager from context state
2019-04-09 jmadill@chromium.org Fix glCopyTexSubImage3D.
2019-04-09 syoussefi@chromium.org Rename getCurrentDisplay to getDisplay
2019-04-09 syoussefi@chromium.org Vulkan: fix CPU throttling frames to 2
2019-04-09 geofflang@chromium.org Propogate dirty bit signals from TextureImpl to Texture up to Context.
2019-04-09 timvp@google.com Re-Enable MipmapTest.TextureCubeGeneralLevelZero/ES2_VULKAN
2019-04-09 syoussefi@chromium.org Vulkan: parallelize internal shader compilation
2019-04-09 jmadill@chromium.org Formalize preference for handling generated code.
2019-04-09 ynovikov@chromium.org Skip LineLoopStateChangeTest.DrawElementsThenDrawArrays on Win Vulkan AMD
2019-04-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src e8c2d95ed45f..d90aae9a5a6c (5 commits)
2019-04-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src e06c7e9a515b..0527c9db8148 (1 commits)


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

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

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

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

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

Change-Id: I9403e5d0818c98bbfd2f1c4f83181b168e896c35
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206997
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-10 04:59:31 +00:00
skia-autoroll
241382ac86 Roll third_party/externals/swiftshader eba396cc66d3..f0aa9d5ab738 (14 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/eba396cc66d3..f0aa9d5ab738


git log eba396cc66d3..f0aa9d5ab738 --date=short --no-merges --format='%ad %ae %s'
2019-04-09 sugoi@google.com Query implementation
2019-04-09 sugoi@google.com No border for compressed cube images
2019-04-09 sugoi@google.com PipelineCache basic operations support
2019-04-09 sugoi@google.com Fix creating Buffer objects in VK_SHARING_MODE_EXCLUSIVE mode
2019-04-09 bclayton@google.com src/Pipeline: Add SIMD::Pointer
2019-04-09 bclayton@google.com SpirvShader: Implement OpBitFieldInsert
2019-04-09 bclayton@google.com SpirvShader: Implement OpBitFieldSExtract and OpBitFieldUExtract
2019-04-09 bclayton@google.com SpirvShader: Implement OpBitReverse
2019-04-09 bclayton@google.com SpirvShader: Implement OpBitCount
2019-04-09 bclayton@google.com SpirvShader: Implement OpTranspose
2019-04-09 bclayton@google.com SpirvShader: Implement OpOuterProduct
2019-04-09 bclayton@google.com SpirvShader: Add type field to GenericValue
2019-04-09 bclayton@google.com Reactor: Support printing pointers
2019-04-09 sugoi@google.com vkGetImageMemoryRequirements2 dedicated allocation


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

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

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

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

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

Change-Id: I5b6eae58f166113c60f756f0b60f00b57e63c64b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206998
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-10 04:45:31 +00:00
skia-autoroll
42bd047677 Roll ../src 79154509c679..1b121674f584 (400 commits)
79154509c6..1b121674f5


Created with:
  gclient setdep -r ../src@1b121674f5

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

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

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

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=egdaniel@google.com

Change-Id: I1f860a9a177ed0e6bd139fd13fe75886a3477b4c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206996
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-10 04:40:31 +00:00
Mike Reed
b5c685991f remove shader factory guard define
Change-Id: Id2d700556e5c0bc55a97b88180103e34344503ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207040
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-10 01:11:35 +00:00
Greg Daniel
2655ede7c9 Revert "Add non-AA support to OvalFactoryOps."
This reverts commit 10bf7020aa.

Reason for revert: broken layout tests (which actually look bad with change)

Original change's description:
> Add non-AA support to OvalFactoryOps.
> 
> Non-AA stroked ovals and rounded rects were falling back to a path renderer, when they can use
> the much faster OvalFactoryOps. And since CircleOp is slightly faster than FillRRectOp for AA
> circles, this extends it to work with non-AA circles as well.
> 
> Change-Id: I7e3576e081f076056a00ed57ac6a805be7348b28
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206700
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Chris Dalton <csmartdalton@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

TBR=jvanverth@google.com,bsalomon@google.com,brianosman@google.com,csmartdalton@google.com

Change-Id: I8d8b9addd12a41c625fbbd9ae69a5c37c7f0ca2e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207041
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-10 00:49:37 +00:00
Kevin Lubick
85de152dfa Move common canvas/pathkit dockerfiles to more intuitive location
Also rename emsdk-base -> emsdk-release so it is consistent with
the container name.

Bug: skia:
NOTRY: true
Change-Id: Idec19bdeb64a64120d0890b2987c2dce0a57535a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206909
Reviewed-by: Stephan Altmueller <stephana@google.com>
2019-04-09 23:14:13 +00:00