Commit Graph

47856 Commits

Author SHA1 Message Date
Michael Ludwig
eaeb996253 Add inner bounds of round rect function
Change-Id: I6d48d4aebfffcf106ab22b511e43f76a4f8972c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284276
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-04-20 13:58:10 +00:00
Brian Osman
449b1157a7 Plumb SkMatrixProvider throughout Ganesh
Renames the provider to SkMatrixProvider, which is now also able to
provide the local-to-device matrix. Everywhere that does paint
conversion and FP generation now has access to the entire matrix
provider, instead of just the CTM.

This will allow the SkSL FP (and others) to fetch other matrix state.

Change-Id: Iffb00bae0d438da0e8de3eebe75183ed6d440fd6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284040
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-04-20 13:48:40 +00:00
skia-recreate-skps
5d440647d3 Update Go Deps
Change-Id: I929983744be414d2fcac1f136cafbb4dafd17660
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284436
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-04-20 05:38:17 +00:00
skia-autoroll
8835d41e50 Roll third_party/externals/swiftshader d25ce8725224..068611f07d28 (8 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/d25ce8725224..068611f07d28

git log d25ce8725224..068611f07d28 --date=short --first-parent --format='%ad %ae %s'
2020-04-17 capn@google.com Fix JIT on separate thread
2020-04-17 bclayton@google.com Use Thread Safety Analysis annotations throughout SwiftShader.
2020-04-17 digit@google.com CMakeLists: Fix Fuchsia build.
2020-04-17 bclayton@google.com Merge changes Ia8226c11,If413b9d6
2020-04-17 bclayton@google.com LLVMReactor: Drop codegenMutex, now thread safe.
2020-04-17 bclayton@google.com LLVMJIT: Remove the TargetMachine cache.
2020-04-17 bclayton@google.com LLVM 7: Set LLVM_ENABLE_THREADS to 1
2020-04-17 bclayton@google.com SpirvShader: Fix ASSERT firing in debugger

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

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 jcgregorio@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: jcgregorio@google.com
Change-Id: I2d3043abc2ccb367181a5a30b017c6baaf53bbac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284429
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-20 04:41:08 +00:00
skia-autoroll
21b18046bb Roll ../src 41c6b825e65f..290e9f6d58db (453 commits)
41c6b825e6..290e9f6d58


Created with:
  gclient setdep -r ../src@290e9f6d58

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 jcgregorio@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: jcgregorio@google.com
Change-Id: Ib914ee017f5fd63db23b89a0955e8c03c5fc0fbe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284427
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-20 04:41:07 +00:00
skia-autoroll
2657867e1f Roll third_party/externals/dawn 53f694b34a8d..99655bcf85ca (11 commits)
https://dawn.googlesource.com/dawn.git/+log/53f694b34a8d..99655bcf85ca

git log 53f694b34a8d..99655bcf85ca --date=short --first-parent --format='%ad %ae %s'
2020-04-18 yunchao.he@intel.com Add validation tests for resource usage tracking - 3
2020-04-17 cwallez@chromium.org Use python3 for all of Dawn's python scripts
2020-04-17 enga@chromium.org Add ComparisonSampler binding type and validation tests
2020-04-17 enga@chromium.org Add default Undefined sampler compare function
2020-04-17 cwallez@chromium.org Special-case GetDefaultQueue in the wire
2020-04-17 cwallez@chromium.org Introduce Device::GetDefaultQueue and deprecate CreateQueue
2020-04-17 cwallez@chromium.org BUILD.gn: Remove leftover temporary test target.
2020-04-17 cwallez@chromium.org Rolling 2 dependencies
2020-04-17 cwallez@chromium.org Roll third_party/swiftshader/ 63ed0e445..d25ce8725 (48 commits)
2020-04-17 cwallez@chromium.org Vulkan: Use VK_LAYER_KHRONOS_validation
2020-04-17 cwallez@chromium.org Add the Vulkan loader as an optional dependency and use it on Mac

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 4d2298bfd78a..4d2298bfd78a
  https://chromium.googlesource.com/external/github.com/google/shaderc 1926de0638b6..1926de0638b6
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637

Created with:
  gclient setdep -r third_party/externals/dawn@99655bcf85ca

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: I34ceb5f3578c2cb10b9b56c7036516b075ad02d1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284428
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-20 04:34:48 +00:00
skia-recreate-skps
0c9327e48e Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I3abea4757b5eebc1879f2b65a7c1636c7e7c9884
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284422
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-04-19 08:28:19 +00:00
skia-recreate-skps
62687b1ec3 Update Go Deps
Change-Id: I4bfaab405f30878b43452beb0cdc3beab7209166
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284417
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-04-19 05:32:09 +00:00
skia-autoroll
ae28b321d0 Roll third_party/externals/angle2 49ad8eaae192..33b58ebb7ea8 (24 commits)
49ad8eaae1..33b58ebb7e

git log 49ad8eaae192..33b58ebb7ea8 --date=short --first-parent --format='%ad %ae %s'
2020-04-18 timvp@google.com Vulkan: Give unsized arrays at least 1 entry
2020-04-17 jmadill@chromium.org Minor angle_end2end_tests cleanups.
2020-04-17 lehoangq@gmail.com Separate GLES1's state enum switch code from GLES2+
2020-04-17 cclao@google.com Vulkan: store ImageLayout in PackedAttachmentOpsDesc
2020-04-17 geofflang@google.com Remove more bad files before rolling into AOSP.
2020-04-17 geofflang@chromium.org Accept b/ for bug IDs in ANGLE CLs.
2020-04-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-loader/src 3682237cb326..50eaecd721a2 (1 commits)
2020-04-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-headers/src e01f13e1f777..382bf3de06fc (1 commits)
2020-04-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 2430d665d3f2..d25ce8725224 (18 commits)
2020-04-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src 0d4857ea576a..454ab259c1b8 (1 commits)
2020-04-16 timvp@google.com Vulkan: Skip failing BlendIntegerTest tests
2020-04-16 jmadill@chromium.org Vulkan: Make staged clears store aspect mask.
2020-04-16 jmadill@chromium.org Vulkan: Forward RenderBuffer/Surface dirty messages.
2020-04-16 jmadill@chromium.org Pass binding enum to Framebuffer::syncState.
2020-04-16 geofflang@chromium.org Remove the merge command from roll_aosp.sh
2020-04-16 geofflang@chromium.org Remove some bad files when generating an ANGLE roll into Android
2020-04-16 jian.li@arm.com Vulkan: Fix transform feedback on AMD platform
2020-04-16 geofflang@chromium.org Remove --preserve-root from roll_aosp.sh
2020-04-16 geofflang@chromium.org Roll VulkanMemoryAllocator into Android
2020-04-16 tobine@google.com doc: Discuss manual roll in note on Vulkan-Headers repo
2020-04-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src 1be434141625..0d4857ea576a (1 commits)
2020-04-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 81e08df29531..2430d665d3f2 (4 commits)
2020-04-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-loader/src 3f7e3cbf33a7..3682237cb326 (1 commits)
2020-04-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src c018fc6ae667..61b7de3c39f0 (2 commits)

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

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 kjlubick@google.com,brianosman@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: kjlubick@google.com,brianosman@google.com
Change-Id: Ib6d9ea78dd379e3cecebc2d5fda0a743221dc7b0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284405
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-18 18:40:40 +00:00
Mike Reed
6a59affb2a flutter is ready for m44
Change-Id: I4531aa35cb4282a88bece97690bc55ea81d3a531
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284322
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-04-18 16:07:00 +00:00
John Stiles
0ebc69c9ef Fix modulo-by-zero crash during SPIR-V conversion.
Array-stride calculation did not check for zero-sized objects before
performing a modulo. This would lead to undefined behavior (crash)
while attempting to build the AST.

Change-Id: I84b4662978955d49a3ca28f6bb577d15c87cccb6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284354
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-04-18 13:41:40 +00:00
skia-recreate-skps
fb490911a9 Update Go Deps
Change-Id: Iad339dc417d8367e89203083464c847d7433baf0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284355
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-04-18 05:33:19 +00:00
Jim Van Verth
c632aa6337 Flesh out more D3D command list and barrier code.
* Adds command queue sync
* Adds resource state transitioning

Bug: skia:9935
Change-Id: I891ef288fd2b3a1b24d649f0958f1eb83ddea532
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284317
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-04-17 21:36:08 +00:00
Michael Ludwig
2686d69bf0 Reland "Rename GrShape to GrStyledShape"
This reverts commit 73b86c1ade.

Reason for revert: wasn't the problem, relanding

Original change's description:
> Revert "Rename GrShape to GrStyledShape"
> 
> This reverts commit f3f08af010.
> 
> Reason for revert: maybe this is breaking the ios perf bot; it is the first CL that caused the bot to fail, but I can't really say why this would break them.
> 
> Original change's description:
> > Rename GrShape to GrStyledShape
> > 
> > Change-Id: Ic457e634b4b95356f5615cff3fce1ca7d7677c26
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284036
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> 
> TBR=bsalomon@google.com,robertphillips@google.com,michaelludwig@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Change-Id: I2e5adbfc820811fbbde9cb57af28f86a7ba40bd9
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284231
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

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

Change-Id: Ifdd52f8bacb5d66a7bf58efd328675c4c443ac8a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284376
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-04-17 20:24:53 +00:00
Michael Ludwig
a17d2d502a Reland "Respect wrap mode when decimating for blur"
This reverts commit 57dbcd1fb2.

Reason for revert: this wasn't the problem, relanding

Original change's description:
> Revert "Respect wrap mode when decimating for blur"
> 
> This reverts commit 0dca280047.
> 
> Reason for revert: maybe this is the cause of the iOS failures.
> 
> Original change's description:
> > Respect wrap mode when decimating for blur
> > 
> > It used to be the case that bilerp wasn't supported for shader-based
> > repeats and mirrors, but that is no longer the case. If we switched
> > to ClampToBorder in those cases, we could introduce transparent black
> > into the decimated image that would then infect the final blur.
> > 
> > Bug: skia:10145
> > Change-Id: Ie273b4d64f082be3ddbdbf54acf201ff1fdfa133
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283940
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> 
> TBR=bsalomon@google.com,michaelludwig@google.com
> 
> Change-Id: Id672e9ce4d5418db0d7e58fd15fa1c3b5c80e07a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:10145
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284278
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

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

Change-Id: I7f603b80385e29a182572576e62351f1c2ab24b2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10145
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284319
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-04-17 20:21:30 +00:00
Brian Salomon
b0aab2c7d1 Reland "Revert "Revert "GrDisplacementEffect uses GrTextureEffect."""
This is a reland of 16abfa5e42

Original change's description:
> Revert "Revert "GrDisplacementEffect uses GrTextureEffect.""
> 
> Also further limits the number of FP stages on ANGLE D3D9 to avoid
> varying limit.
> 
> This reverts commit 0b406736c1.
> 
> Bug: skia:10139
> 
> Change-Id: Ifda0b932ab8ce176f1a1cd1ca9c2deaf1fda20bd
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284048
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Bug: skia:10139
Change-Id: I542506a87fadeeb54e2f749b199806d2155c6cab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284230
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-04-17 20:19:48 +00:00
Florin Malita
e35a7ea7a9 [skottie] Initial inner shadow layer style support
Implement drop and inner shadow styles using explicit image filters.

Remove existing style support from DropShadowEffect.cpp, as it now
has a new cozy place with its inner sibling.

Supported properties:

  - color
  - opacity
  - angle
  - distance
  - size (sigma)

Change-Id: I5b7e3c75678e036a20c1908b84c74a670a5aa196
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283918
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-04-17 19:57:08 +00:00
Michael Ludwig
73b86c1ade Revert "Rename GrShape to GrStyledShape"
This reverts commit f3f08af010.

Reason for revert: maybe this is breaking the ios perf bot; it is the first CL that caused the bot to fail, but I can't really say why this would break them.

Original change's description:
> Rename GrShape to GrStyledShape
> 
> Change-Id: Ic457e634b4b95356f5615cff3fce1ca7d7677c26
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284036
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

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

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I2e5adbfc820811fbbde9cb57af28f86a7ba40bd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284231
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-04-17 19:38:34 +00:00
Ethan Nicholas
36a3e014e1 Revert "Converted texture and runtime effects to use GrMatrixEffect"
This reverts commit 4ab84eda53.

Reason for revert: Breaking some GMs.

Original change's description:
> Converted texture and runtime effects to use GrMatrixEffect
> 
> Change-Id: I6e769d52291dd29c2d06983dae5013b6058864cb
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283780
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=bsalomon@google.com,brianosman@google.com,ethannicholas@google.com

Change-Id: Idb2c782ae619689744e868bf38111cc4eaf0b40a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284233
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2020-04-17 19:00:36 +00:00
Brian Salomon
4e7ee6e0af Put top level FPs into their own functions
Change-Id: I59916af90c30b07faed1198a745383d648c29e0e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284080
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-04-17 18:55:53 +00:00
Mike Klein
69080be5e9 support JITMode::Stack on ARM
Change-Id: I13fd1fef764591bc9e773aa1f29bfcace01f753b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284299
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-17 17:51:44 +00:00
Ethan Nicholas
4ab84eda53 Converted texture and runtime effects to use GrMatrixEffect
Change-Id: I6e769d52291dd29c2d06983dae5013b6058864cb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283780
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-04-17 17:43:33 +00:00
Brian Salomon
414782d132 Disable testing of D3D9 ANGLE backend on NVIDIA
Bug: skia:10149

Change-Id: Ia9b0bf2ed2042ba75088409612f6b091c5052ea9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284220
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-04-17 17:28:35 +00:00
Mike Klein
b8e041e5f5 refactor arm instructions
Funnel the ARM instructions through two op() helpers, one for 3-arg
vector instructions, another for all others (0,1,2 arg, optional imm).

More consistent use of (immN & N_mask) to make things clearer.

Add missing imm12 offset to load and store instructions, with tests.
Notice they're in element counts, so we can go up to 4096 16-byte stack
entries, not 256 entries like you might think.

Change-Id: I99a3ad30b7b0926f93da671f00d89759934e65b4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284255
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-17 17:12:13 +00:00
Mike Klein
48e782486f set up stack frames on aarch64
Going to be easier to work on stack/register things if we
don't have to keep thinking of aarch64 as a special case.

This just sets up the frames, will follow up with JITMode::Stack.

Change-Id: Ic0df4c5deb9c7d55eb73a62e4b6b1c9919996974
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284243
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-17 16:44:53 +00:00
Michael Ludwig
57dbcd1fb2 Revert "Respect wrap mode when decimating for blur"
This reverts commit 0dca280047.

Reason for revert: maybe this is the cause of the iOS failures.

Original change's description:
> Respect wrap mode when decimating for blur
> 
> It used to be the case that bilerp wasn't supported for shader-based
> repeats and mirrors, but that is no longer the case. If we switched
> to ClampToBorder in those cases, we could introduce transparent black
> into the decimated image that would then infect the final blur.
> 
> Bug: skia:10145
> Change-Id: Ie273b4d64f082be3ddbdbf54acf201ff1fdfa133
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283940
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

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

Change-Id: Id672e9ce4d5418db0d7e58fd15fa1c3b5c80e07a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10145
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284278
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-04-17 16:27:34 +00:00
Stephen White
af564a5d0b Dawn: implement fences, callbacks and Finish (syncGpu) semantics.
Change-Id: I04e6c829fb122dc8b2192911bda94e5106927bff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/275437
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2020-04-17 16:05:43 +00:00
Mike Klein
a73819bd2b test overdraw filter via public api
Change-Id: I5db5fb8c09a88162466ce5261d57258e5d20bd2c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284237
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2020-04-17 15:25:42 +00:00
Brian Salomon
f49debf07d Fix two GrProcessor names that are not valid idenitfiers
Change-Id: I123caca8649097316f52f6fb0aed2e6ed0d5090a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284256
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-04-17 15:08:12 +00:00
Robert Phillips
8472a3d01c Update DDL test harness to use backendTextures to back tiles (take 2)
This better matches Chrome's use of DDLs.

With path, image, and text draws stripped out, here is the perf impact of this change:

           before CL   after CL
w/ DDLs      7.792      1.038
w/o DDLs     0.800      0.876

This perf improvement (in the DDL case) is from backend texture wrapping SkSurfaces being created w/o initialization. The prior method of SkSurface creation was resulting in double clearing of all the surfaces.

This perf improvement won't be seen by Chrome since they've always being using wrapped backend texture SkSurfaces.

TBR=bsalomon@google.com

Bug: 1056730
Change-Id: Ic04d322cad96df845e75437211208495862c6555
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283866
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-04-17 14:39:44 +00:00
Greg Daniel
a19abd58cb Fix spirv rtheight set.
Change-Id: I11699a09be9c7e2483f8b77117fae83f26e8e4c1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284222
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-04-17 14:34:53 +00:00
Kevin Lubick
1bf127479c Reland "Revert "GrDisplacementEffect uses GrTextureEffect.""
This reverts commit 16abfa5e42.

Reason for revert: Appears to have made ANGLE and ios unhappy

Original change's description:
> Revert "Revert "GrDisplacementEffect uses GrTextureEffect.""
> 
> Also further limits the number of FP stages on ANGLE D3D9 to avoid
> varying limit.
> 
> This reverts commit 0b406736c1.
> 
> Bug: skia:10139
> 
> Change-Id: Ifda0b932ab8ce176f1a1cd1ca9c2deaf1fda20bd
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284048
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

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

Change-Id: I0e4b135a59f713342bf5c6c258779975762ccd1f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10139
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284217
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2020-04-17 11:51:47 +00:00
skia-recreate-skps
748197e695 Update Go Deps
Change-Id: Ia5eadbd1831e4b0b946bedd0c2e7ad76946081dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284204
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-04-17 05:34:05 +00:00
skia-autoroll
48a0977cdf Roll ../src 59d223304f3c..41c6b825e65f (406 commits)
59d223304f..41c6b825e6


Created with:
  gclient setdep -r ../src@41c6b825e6

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 kjlubick@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: kjlubick@google.com
Change-Id: I80ab59261cbeeea6f9f7950eb5f34b6f267c2c71
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284196
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-17 04:39:40 +00:00
skia-autoroll
8978cd1a9a Roll third_party/externals/swiftshader 2430d665d3f2..d25ce8725224 (18 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/2430d665d3f2..d25ce8725224

git log 2430d665d3f2..d25ce8725224 --date=short --first-parent --format='%ad %ae %s'
2020-04-17 digit@google.com Fix LLVM-based Arm64 build.
2020-04-16 bclayton@google.com CMakeLists: Enabled more clang warnings.
2020-04-16 bclayton@google.com Device/Blitter: Initialize filter3D fields
2020-04-16 digit@google.com Fuchsia: Add LLVM 10.0 configuration headers.
2020-04-16 amaiorano@google.com CMake: fix PowerVR_Examples build
2020-04-16 amaiorano@google.com Don't fail build if Vulkan headers are different
2020-04-16 amaiorano@google.com CMake: fix add_subdirectory(SwiftShader) when CMAKE_BUILD_TYPE is set in parent project
2020-04-16 amaiorano@google.com CMake: make submodule initialization work for add_subdirectory(SwiftShader)
2020-04-16 amaiorano@google.com CMake: fix add_subdirectory(SwiftShader)
2020-04-16 amaiorano@google.com CMake: use directory variables consistently
2020-04-16 amaiorano@google.com CMake: make root compile options and link libraries private
2020-04-16 bclayton@google.com VkSemaphore: Unlock/Lock the mutex outside the blocking_call.
2020-04-16 bclayton@google.com Regres: Include a better error message when git add fails.
2020-04-16 bclayton@google.com Regres: Avoid dereferencing a nil on process timeout.
2020-04-16 bclayton@google.com Make memoryPageSize() functions thread-safe.
2020-04-16 bclayton@google.com Vulkan: Move SpecializationInfo to own file.
2020-04-16 bclayton@google.com Fix chrome autorollers
2020-04-16 bclayton@google.com Reimplement LRUCache, fold away LRUSnapshotCache, add tests.

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

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 kjlubick@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: kjlubick@google.com
Change-Id: Ia051a76dd0652f77bf6cab101a038478e3a783b7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284197
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-17 04:35:15 +00:00
skia-autoroll
dac43e8ad3 Roll third_party/externals/dawn 0721c1cf2a52..53f694b34a8d (8 commits)
https://dawn.googlesource.com/dawn.git/+log/0721c1cf2a52..53f694b34a8d

git log 0721c1cf2a52..53f694b34a8d --date=short --first-parent --format='%ad %ae %s'
2020-04-16 brandon1.jones@intel.com Fix ASAN violation when a heap outlives the ResidencyManager
2020-04-16 brandon1.jones@intel.com Residency Bug: Always Attempt To Evict To Under Budget
2020-04-16 enga@chromium.org Print the failing statement in ASSERT_DEVICE_ERROR
2020-04-16 bryan.bernhart@intel.com D3D12: Remove ComPtr from d3d12::Device::GetD3D12Device()
2020-04-16 cwallez@chromium.org Factor compilation of ~MockProcTable in mock_webgpu.cpp
2020-04-16 cwallez@chromium.org Rolling 2 dependencies
2020-04-16 cwallez@chromium.org Use new gmock MOCK_FUNCTION macro.
2020-04-16 cwallez@chromium.org Correctly support setSubData of 0 bytes.

Also rolling transitive DEPS:
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 4d2298bfd78a..4d2298bfd78a
  https://chromium.googlesource.com/external/github.com/google/shaderc 1926de0638b6..1926de0638b6
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000

Created with:
  gclient setdep -r third_party/externals/dawn@53f694b34a8d

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: I7d5f6f059cc804c3c7c54c3847663a6f0d7c5b59
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284198
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-04-17 04:34:35 +00:00
Mike Reed
9ad01787a8 remove legacy deserialization of overdrawcolorfilter
- just removing code we think isn't needed...
  we assume folks don't care about long-lived serialized overdrawfilters
  since the filter is just used in dev-tool settings
- easy to revert this if this assumption is not true

Change-Id: I77f6a4e2b38bbd49589c822c9aea19ed5eff2551
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284047
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-04-17 01:44:21 +00:00
Brian Salomon
16abfa5e42 Revert "Revert "GrDisplacementEffect uses GrTextureEffect.""
Also further limits the number of FP stages on ANGLE D3D9 to avoid
varying limit.

This reverts commit 0b406736c1.

Bug: skia:10139

Change-Id: Ifda0b932ab8ce176f1a1cd1ca9c2deaf1fda20bd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284048
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-04-17 00:07:38 +00:00
Sean Gilhuly
4b06b0b9c9 Remove non-renderable formats in Dawn backend
kABGR_4444 and kBGR_565 don't have a matching wgpu::TextureFormat, so
they should return false in GrColorTypeToDawnFormat(). This was causing
a color type mismatch where GrAtlasManager was trying to use a 565
atlas.

Bug: chromium:1071428
Change-Id: Id086ab67bad012fbcbe5decb22e642c943093a8e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284103
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
2020-04-16 20:29:32 +00:00
Brian Osman
1c61eba304 SkM44: Remove unused determinant & redundant checks in invert
Also warn about unused returns from transpose(), which has different
semantics than the SkMatrix44 version.

Change-Id: I0cf271ee5e020a81ddd696cc269bdada937a841e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284116
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-04-16 20:25:41 +00:00
Robert Phillips
4e3ceb96b8 Fix up GPUDDLSink for Vulkan
Change-Id: If38afff3d07f51fd0f5a989c2f59e3c788086f8b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284099
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-04-16 20:17:12 +00:00
Mike Klein
c15c936c3e GP64 Operand conversion
Move all the non-vector instructions together,
and convert them to use Operand where possible.

In general that can be any of
   - (Operand, imm)
   - (Operand, GP64)
   - (GP64, Operand)
and that means there are two ways to encode (GP64,GP64)
instructions, so there's a disambiguator added.

Our measure of sucess is eliminating calls to rex()
except from our one helper, and so far, so good.

I haven't seen a need for Label Operands yet, and they're
only useful as (GP64, Operand) style arguments (can't
really be destinations in read-only memory) but we could
add support pretty easily if we find the need.

Tweak one test to avoid int/pointer ambiguity about 0.

Changed some of the instructions to always use a REX
prefix just to make it easier to funnel everything
through one place.  movzbl -> movzbq, etc.

Change-Id: I606f94e76e0ef8f491409f23748f5c8dcb607491
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284023
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-04-16 19:39:11 +00:00
Stephen White
b353c9bdd3 Reland "Refactor GL and Metal FinishCallback into a helper object."
This is a reland of b641ddbba0

Original change's description:
> Refactor GL and Metal FinishCallback into a helper object.
> 
> Change-Id: I52ede0363016459976e453ef71cafbcc6775f22e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283496
> Commit-Queue: Stephen White <senorblanco@chromium.org>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

Change-Id: Ia77c05c0358b6ccab1e8c0f0c06212786f415cb1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284042
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2020-04-16 19:20:06 +00:00
Brian Salomon
0b406736c1 Revert "GrDisplacementEffect uses GrTextureEffect."
This reverts commit a111297aaf.

Reason for revert: breaking on D3D9 ANGLE Programs test because of
varying packing rules.

Original change's description:
> GrDisplacementEffect uses GrTextureEffect.
> 
> Bug: skia:10139
> 
> Change-Id: I105eeed9d8c9eda8f04828f5a084d6d7be0a6bbe
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283781
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

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

Change-Id: I073b48b9d2dfb75f0281035add97cb172c0ee84c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10139
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284046
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-04-16 19:17:23 +00:00
Mike Reed
b6af407d67 change Overdraw colorfilter to be pure sksl
About same speed on CPU as pipeline-callback

Change-Id: If8769bebb3c51b5ea61fc34d76dde0cfc16b8473
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283871
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-04-16 19:15:01 +00:00
Julia Lavrova
f3f822c791 getRectForRange with HeightStyle == kTight should ignore strut metrics
Bug: skia:10135
Change-Id: I7b96f17f7c94bfa499fd91a293fe4897352cd4ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283645
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2020-04-16 18:56:21 +00:00
Weston Tracey
53004dadd2 Remove Debian10 Flutter_Android, change BuildStats to use Debian9 Docker
Bug: skia:9438
Change-Id: Ieef20c71622d7db4f9be9d54b393eec123b19d8b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284041
Auto-Submit: Weston Tracey <westont@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-04-16 18:32:21 +00:00
Brian Salomon
a111297aaf GrDisplacementEffect uses GrTextureEffect.
Bug: skia:10139

Change-Id: I105eeed9d8c9eda8f04828f5a084d6d7be0a6bbe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283781
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-04-16 18:19:21 +00:00
Michael Ludwig
f3f08af010 Rename GrShape to GrStyledShape
Change-Id: Ic457e634b4b95356f5615cff3fce1ca7d7677c26
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284036
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-04-16 18:05:51 +00:00
Michael Ludwig
0dca280047 Respect wrap mode when decimating for blur
It used to be the case that bilerp wasn't supported for shader-based
repeats and mirrors, but that is no longer the case. If we switched
to ClampToBorder in those cases, we could introduce transparent black
into the decimated image that would then infect the final blur.

Bug: skia:10145
Change-Id: Ie273b4d64f082be3ddbdbf54acf201ff1fdfa133
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/283940
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-04-16 17:21:41 +00:00