Commit Graph

45802 Commits

Author SHA1 Message Date
Brian Salomon
f8c187c22b Revert "Revert "Blend functions as SkSL built ins.""
Changes since the last time:

1) Adds workaround for Adreno 6xx devices.

2) Restores ProcessorOptimizationTest threshold to its original values.

This reverts commit 682ba43ba3.

Change-Id: Ic6e65311fc845926fc35c223d6bb13ee2356e16c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261086
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-12-19 20:21:16 +00:00
Mike Reed
c32d53fb8f Revert "temporarily expose postIDiv"
This reverts commit e9e4421eff.

Reason for revert: chrome has been updated

Original change's description:
> temporarily expose postIDiv
> 
> ... until chrome is updated
> 
> Change-Id: Ic3743fe8251b6bb9320e14ba5b571b6c3d44aefb
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260998
> Reviewed-by: Mike Reed <reed@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Mike Reed <reed@google.com>

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

Change-Id: I5e585a96cce6f77db46761b34eff997d28d0aff4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261146
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-12-19 20:07:36 +00:00
Jim Van Verth
73d4615160 Add wireframe support to Metal.
Also fixes segfault with cached shaders.

Change-Id: I32be8c3dd28e93ffabc61437e62be729e4fc2d32
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261085
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2019-12-19 19:40:22 +00:00
Ben Wagner
e6d31bd089 [infra] Use unbuffered I/O for run_recipe
This probably makes very little difference, but it might be helpful in
certain situations to see the unbuffered raw output.

Change-Id: Id0adf77ab3a8d0221d6dc8b7aea39fe9785b03dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261137
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-12-19 19:26:19 +00:00
Mike Reed
8845c377c0 extend imageshader updater to handle perspective
- have to commit to a perspective stage (used to only use affine)
- coordinate between updater and shader/stages

Benches:

verts 608  --> 270
atlas 17.9 --> 5.6

Change-Id: I1d1ce9eb27b49d2ddcc610f6ea5c4720901b9e1b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261136
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-12-19 18:56:39 +00:00
Jim Van Verth
2e57c132be Tweak smallpaths so new paths will show up in GM.
The height of the GM was clipping off the new paths added to it.

Change-Id: Id0d0fcff8a85b9a96c16a9cce0690ad16e608606
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261094
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-12-19 18:51:49 +00:00
Nathaniel Nifong
a8352ccaae Write a debugger user guide.
No-Try: true
Docs-Preview: https://skia.org/?cl=261088
Change-Id: I5d049ca0ee71a7bb10ff70c71b2a92604a034831
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261088
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2019-12-19 17:29:49 +00:00
Robert Phillips
3e5e2f2c95 Add test for the GrContext::createCompressedBackendTexture API
Bug: skia:9680
Change-Id: Ib51613e6bacb36ff59b2e1e3c3cf13221d0382fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261083
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-12-19 16:48:09 +00:00
Michael Ludwig
4ef1ca1d08 Fix int/uint comparison in TextureOp asserts
Bug: skia:9705
Change-Id: I288bd125739cfe3dc38d8a8150a11a1c0115103a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261079
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-12-19 16:32:49 +00:00
Robert Phillips
ead321bdfe Add glue to link the GrContext createCompressedBackendTexture API to the GL and Vulkan backends
Bug: skia:9680
Change-Id: I05230ec8fd4f9733ba868fd595b163a79c30d32a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261081
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-12-19 16:15:49 +00:00
Jim Van Verth
de30e4233f Clean up GenDistanceFieldFromPath.
* Disabled use of PathOps Simplify() due to missing segments in final path.
* Added test to GM to catch Simplify() bug.
* Added comments and changed variables to make the code easier to follow.

Change-Id: I25e024e7d568468e29a76badb455355254fe46ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259809
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-12-19 15:40:47 +00:00
Hal Canary
b56b554249 public.bzl: add SKOTTIE_IOS_LIB_{SRCS,HDRS}
Change-Id: I0c74c41980d2598f6955cfa07a3237c0861763ab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261078
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-12-19 15:34:19 +00:00
Robert Phillips
d04ddcd6c5 Update GL and Vulkan backends to support compressed backend formats
We're running out of pretty ways to split up the omnibus CL. This just
brute force updates the two working backends (sorry Metal).

Bug: skia:9680
Change-Id: I62ce1229ff40e3d4e194337f2fe0acddb3f934e5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260897
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-12-19 15:02:17 +00:00
Brian Osman
173e153552 Runtime SkSL: API sketch for child shaders/effects
Only works on GPU backend for now, and still only supports
single-argument sample (at original coords).

Change-Id: I4c36ebd0c370ca65126786802c5ea268c3f32edd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260899
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-12-19 14:40:17 +00:00
Brian Osman
77742c3503 Remove SkShader.Empty from CanvasKit
SkShaders::Empty may be easy to expose, but that doesn't mean we should.
It shouldn't even be public, but Chrome uses it in one place.

Change-Id: I398a5e6f782990a7baec0d9b1d0018f7456ff15f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260956
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-12-19 14:11:17 +00:00
skia-autoroll
c76ac8e325 Roll ../src 0827bfec78ad..358ffa26e447 (433 commits)
0827bfec78..358ffa26e4


Created with:
  gclient setdep -r ../src@358ffa26e4

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 borenet@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: borenet@google.com
Change-Id: If11f2447a2e236fa2edfc491d629174b37809526
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261040
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-12-19 04:38:37 +00:00
skia-autoroll
b0441f44b0 Roll third_party/externals/angle2 751e78884a55..6423b7fc7ded (6 commits)
751e78884a..6423b7fc7d

git log 751e78884a55..6423b7fc7ded --date=short --first-parent --format='%ad %ae %s'
2019-12-19 timvp@google.com Return the correct location count for Matrices
2019-12-18 ianelliott@google.com Vulkan: Update GLES 3.1 expectations for now-passing tests.
2019-12-18 courtneygo@google.com Reset binding offset & size when unbinding
2019-12-18 shaobo.yan@intel.com Implement SamplerVideoWEBGL for WEBGL_video_texture extension on desktop
2019-12-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader fbbfeb700295..21be09d8e699 (17 commits)
2019-12-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src 0c2618b2c31e..9c5719ab7149 (1 commits)

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

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 borenet@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: borenet@google.com
Change-Id: I5a43365a4f24de76debd0a69011125d7f6e444db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261039
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-12-19 04:37:07 +00:00
skia-autoroll
161dd255de Roll third_party/externals/swiftshader 21be09d8e699..4fd7fccd6db5 (4 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/21be09d8e699..4fd7fccd6db5

git log 21be09d8e699..4fd7fccd6db5 --date=short --first-parent --format='%ad %ae %s'
2019-12-18 chrisforbes@google.com Regres: Roll deqp forward to latest 1.1.6
2019-12-18 sugoi@google.com Allow 32F texture to use linear filtering
2019-12-18 capn@google.com Remove sw::Vector, Point, and Matrix
2019-12-18 swiftshader.regress@gmail.com Regres: Update test lists @ 21be09d8

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

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 borenet@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: borenet@google.com
Change-Id: I91ab8399a034c5f4dc26cef9432ee951ffb4955e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261038
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-12-19 04:32:17 +00:00
Mike Reed
e9e4421eff temporarily expose postIDiv
... until chrome is updated

Change-Id: Ic3743fe8251b6bb9320e14ba5b571b6c3d44aefb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260998
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2019-12-19 03:22:48 +00:00
Jian Cai
9e0afb791a Fix clang warnings
Explicitly convert unsigned int to uint64_t before converting them to
uint16x4_t or uint8x8_t.

BUG=chromium:1035559

Change-Id: I7d0084c1ab9393063a15972a714d89db4e5e1afe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260981
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-12-19 00:57:12 +00:00
recipe-roller
84f13d0345 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/5ed573b5fc71c25e1821f2756d9637ca4eff066e [resultdb] Parse invocation (nodir@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia6feae377e2736b2a6d6614de99def0e06351bde
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260985
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-12-19 00:43:22 +00:00
Mike Reed
2c38315710 hide/remove obsolete/tricky SkMatrix methods
Change-Id: Iee399b929e8ca1a7326a326a643539d05e333d81
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260818
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2019-12-18 22:29:52 +00:00
Mike Reed
c880346ba5 Detect when perspective is really affine, and update the matrix as we handoff
the ctm to the device.

This catches cases where the matrix bottom-row might look like
   [ 0, 0, not_one ]

That would get categorized as perspective, but in reality that matrix
behaves like affine. If we can detect that pattern, and scale the entire
matrix by 1/not_one, we don't change its behavior, but it will now be
categorized as affine (seen as simpler/faster).

bug: skia:9698
Change-Id: Ib77b647c1d32f73538b1c0d8e9e49ec533610b3a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260776
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-12-18 21:25:43 +00:00
Mike Klein
8fec4140f6 Reland "roll clang_win"
This is a reland of 3bf8e40537

Original change's description:
> roll clang_win
> 
> Change-Id: Ide83513b28ac982e24dcb73c9f5766df7531bc47
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260810
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

Change-Id: I504db10e17e7b79284b1e222fb10a059801fedd4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260878
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-12-18 21:03:22 +00:00
Mike Klein
cdb0e8f001 demote -fsanitize=pointer-overflow to warning
Clang 10 added a new check we and libjpeg-turbo fail.
We need to investigate these failures, but I don't
want that to stop us rolling clang_win.

Bug: skia:9731
Change-Id: Ifdbb16ea0e2bacd30547d4a82a839563a9496d9f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260948
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-12-18 20:59:42 +00:00
Herb Derby
35c64f6723 Only checksum and query a valid descriptor
Bug: oss-fuzz:19549

Change-Id: I941470cfa31c46b3e92cf53877efd2da8d181c01
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260896
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-12-18 20:16:51 +00:00
Brian Salomon
60931454f2 "fix" formatting of auto generated cpp from fp
TBR: egdaniel@google.com
Change-Id: I24da4ec120ccc46383f7e8041d78de7ed1e5312c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260900
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-12-18 20:12:16 +00:00
Kevin Lubick
f64e958e89 Properly free bytes in SkDescriptor fuzzer
Bug: oss:19551
Change-Id: I154cb58790258261b067f9281e18b3e7403d1bd1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260821
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2019-12-18 19:40:51 +00:00
Brian Salomon
766098de94 Make sure random unit test processors use an alpha type compatible with
texture data.

It'd probably be good to provide an opaque texture that has an alpha
channel and widen the range of color types that are present in the
future.

Change-Id: I5587a479f7e2f3991f8ae27a4cd44afc533324e8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260696
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-12-18 19:40:11 +00:00
Mike Klein
cd774debd7 disable warnings in ANGLE
We already actively don't turn on more warnings; this disables what must
be default warnings.  This is the same logic we apply in our usual
third_party() template (see third_party/third_party.gni).

Change-Id: Icc164f8d288005baf1f0a1c7d408054acc7d4701
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260881
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-12-18 19:24:11 +00:00
Mike Klein
4e7e6c5fe8 Revert "roll clang_win"
This reverts commit 3bf8e40537.

Reason for revert: -Werror in ANGLE.

Original change's description:
> roll clang_win
> 
> Change-Id: Ide83513b28ac982e24dcb73c9f5766df7531bc47
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260810
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

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

Change-Id: I9215e596cd7b33944f2c1364dfedd3049a6bcbb4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260877
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-12-18 18:45:15 +00:00
Robert Phillips
0d7e2f158e Change signature of several gpu backend methods
This makes:

onCreateBackendTexture better match onCreateCompressedBackendTexture to better reflect our mipMapping assumptions.

GrCompressedDataSize better match GrComputeTightCombinedBufferSize to allow the used of generated mipmap data.

createVkImageForBackendSurface and createMtlTextureForBackendSurface take a GrRenderable instead of a raw bool

Change-Id: Ifb7d60bc0e626dfbf1cea0d362bcb04093a71ba7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260780
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-12-18 18:27:15 +00:00
Mike Klein
3bf8e40537 roll clang_win
Change-Id: Ide83513b28ac982e24dcb73c9f5766df7531bc47
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260810
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-12-18 18:19:45 +00:00
Kevin Lubick
e6e39bcbe0 [canvaskit] Fix SaveLayer constants
Turns out constant doesn't like to take an enum, but needs explicit
coercion to be an int.

Change-Id: I29c761fd2dfd9eb3cde0db3c0c3f0e97dd6ff411
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260698
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-12-18 17:55:59 +00:00
Brian Osman
d927bd246d Runtime SkSL: Reflect inputs in SkRuntimeEffect
Adds a new structure to describe the inputs, including type,
shape, name, etc. This removes any references to the type
variables in the compiler's context, and centralizes the
logic for parsing those type variables.

Also normalizes the rules for what types are supported.
(This was inconsistent among the various functions before).

Now:
  - bool and int must be 'in'
  - float may be 'in' or 'uniform'
  - float[2-4] and matrices must be 'uniform'

Includes a new Slide that allows for interactive editing
of a runtime shader.

Change-Id: Ic2af68a80c8bb645ba96417c430da24de0a9c2d8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260497
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-12-18 17:37:55 +00:00
Brian Salomon
4dea72a987 Reland x3 "Remove most of GrConfig.h"
This change makes this safe for Chrome:
https://skia-review.googlesource.com/c/skia/+/260779

This reverts commit 3f1a98b779.

Change-Id: Ic6886ceabbf626040fc527ea10fe06cbe74a3854
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260783
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-12-18 17:14:45 +00:00
Robert Phillips
ee94693c7a Fix a sprinkling of GPU issues
Change-Id: I0123fdc3b492f56f8bc9ff592ffe74f854be380b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260816
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-12-18 16:53:55 +00:00
Ravi Mistry
6f217e0f8d Make OUTPUT_DIRECTORY in ProdDoxyfile configurable
Bug: skia:9514
Change-Id: I628c2a59302e22c8d4c0973def0a3a11f7f882b7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260817
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2019-12-18 16:46:25 +00:00
Chris Dalton
1215cda5a2 Add a kWireframe flag to GrPipeline
Adds the flag to GrPipeline, as well as a 'w' keystroke in viewer for
toggling the alternate global wireframe mode.

Change-Id: I385c31320a5fa2cec79b527a91fa876b19cdff89
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260747
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-12-18 15:55:54 +00:00
Brian Salomon
8d97c155be Remove SkRuntimeEffect.h include from SkColorFilterPriv.h
Also, less importantly, from SkRTShader.h

Change-Id: I0d7a56583cdd681bae6b2a08861daca33cc25fc6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260779
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-12-18 15:33:15 +00:00
Ravi Mistry
e6a2ad81ab Build and push skia-release and skia-wasm-release docker images
Bug: skia:9514
Change-Id: Ia76a2b233f87b4fc68010fdea8e942498b5986ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260397
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2019-12-18 13:29:55 +00:00
skia-autoroll
21df075cab Roll third_party/externals/angle2 5407aaa089ac..751e78884a55 (13 commits)
5407aaa089..751e78884a

git log 5407aaa089ac..751e78884a55 --date=short --first-parent --format='%ad %ae %s'
2019-12-18 b.schade@samsung.com Update with official gl.xml and re-sort added formats
2019-12-17 ianelliott@google.com Vulkan: Update expectations for newly-passing tests
2019-12-17 jmadill@chromium.org Vulkan: Fix layers being disabled in tests.
2019-12-17 jmadill@chromium.org Pass GLImplFactory to Query constructor.
2019-12-17 tobine@google.com Vulkan:Lazily link libvulkan
2019-12-17 jmadill@chromium.org Move Serial utils to their own file.
2019-12-17 jmadill@chromium.org Make Sync constructors take GLImplFactory.
2019-12-17 syoussefi@chromium.org Vulkan: Enable inactive SSBO with unsized array tests
2019-12-17 jmadill@chromium.org Vulkan: Fix SwiftShader disabled build.
2019-12-17 syoussefi@chromium.org Vulkan: EXT_gpu_shader5: non-const offset in textureGatherOffset
2019-12-17 syoussefi@chromium.org Improve presubmit's Bug: tag check
2019-12-17 syoussefi@chromium.org Vulkan: fix handling of inactive atomic counters
2019-12-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 96354f5047bf..38d7fbaad0a3 (2 commits)

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

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 borenet@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: borenet@google.com
Change-Id: I8aca73995c1646fff031ab4b7cc5e32e2bca4481
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260742
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-12-18 04:43:43 +00:00
skia-autoroll
8ba0f8897b Roll third_party/externals/swiftshader fbbfeb700295..21be09d8e699 (17 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/fbbfeb700295..21be09d8e699

git log fbbfeb700295..21be09d8e699 --date=short --first-parent --format='%ad %ae %s'
2019-12-18 sugoi@google.com Enable samplerAnisotropy
2019-12-18 chrisforbes@google.com Advertise variableMultisampleRate feature
2019-12-17 bclayton@google.com clang-format the src/WSI directory
2019-12-17 bclayton@google.com clang-format the src/Vulkan directory
2019-12-17 bclayton@google.com clang-format the src/System directory
2019-12-17 bclayton@google.com clang-format the src/Reactor directory
2019-12-17 bclayton@google.com clang-format the src/Pipeline directory
2019-12-17 bclayton@google.com clang-format the src/Device directory
2019-12-17 bclayton@google.com Start a custom .clang-format rule
2019-12-17 capn@google.com Remove spaces after control statements keywords
2019-12-17 sugoi@google.com Enable blending for 32FP formats
2019-12-17 capn@google.com Make use of vec<T, N> vector broadcasts
2019-12-17 capn@google.com Replace vector() and replicate() with float4 constructors
2019-12-17 capn@google.com Create a generic vec<T, N> class
2019-12-17 capn@google.com Typedef int4/float4 from a vec4<T> template
2019-12-17 capn@google.com Prefer alignas() over ALIGN()
2019-12-17 sugoi@google.com R11G11B10F support

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

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 borenet@google.com on the revert to ensure that a human
is aware of the problem.

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

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: borenet@google.com
Change-Id: I5901ef3752effa8de48a525d77e5509a1b252376
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260744
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-12-18 04:40:03 +00:00
skia-autoroll
37a88b4363 Roll ../src 98b390c99b5d..0827bfec78ad (415 commits)
98b390c99b..0827bfec78


Created with:
  gclient setdep -r ../src@0827bfec78

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 borenet@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: borenet@google.com
Change-Id: I51f478979c5a2260c07d3de4defdc0df3392cb50
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260743
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-12-18 04:36:43 +00:00
Mike Reed
190b82d67c Add clipping for perspective triangles
more UI for halfplanes in SampleClip

bug: skia:9698
Change-Id: I9463fe9860fa482ef05fc2113114e61524c38fc0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260500
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-12-17 23:24:18 +00:00
Greg Daniel
3f1a98b779 Reland "Revert "Remove most of GrConfig.h""
This reverts commit 5b9c7ba313.

Reason for revert: Looks to still be breaking chrome

Original change's description:
> Revert "Revert "Remove most of GrConfig.h""
> 
> This reverts commit b0047b57b7.
> 
> Change-Id: I0c6df9e9d5c3984987398d2b7f675005828ab3de
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260697
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

TBR=bsalomon@google.com

Change-Id: Ia9860b39c562368f8a2f84283c52f55593333075
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260642
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-12-17 23:16:58 +00:00
Mike Klein
85a2ec672b de-skvx PackIDSkPoint()
This constructor is causing trouble on x86 GCC Debug builds.
I'm not sure if GCC is wrong or skvx is wrong, but taking the
skvx out of this constructor fixes a bunch of failing tests.

Do we have a perf test to see if this non-skvx version runs slower?

Bug: skia:9664
Change-Id: I27d679c8ad06883f0acc5cb4e7d2f436a50fbed7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260521
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-12-17 22:36:48 +00:00
Mike Klein
21ef0d5424 force-inline skvx methods
These are inline, but still subject to the ODR,
and in Debug builds they might not be inlined.

This fixes one unit test failure on the x86 Debug GCC Test bot.

Bug: skia:9664
Change-Id: Id3837fdfbf69bd7012339d89d16e8dedaf113de2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260520
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-12-17 22:25:18 +00:00
Greg Daniel
14b57216e3 Rename GrCaps textureSwizzle to readSwizzle.
Change-Id: Ia5e2c4d3ca7346a1ad7559cd158ed632a70145bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260699
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-12-17 21:59:08 +00:00
recipe-roller
5a7cdff301 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/a33af2239eedc1ba2a639d331dc0927624d0905d [cipd] Update client v2.3.4 => v2.3.5. (vadimsh@chromium.org)
  https://crrev.com/6037820448a9dbe4f53902edf438a9ad5a6cac5d cpplint: use list() for working with python3 (sarthakkukreti@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I20dcd5ee6f1bdcce6b49c5db102ebcd6017084a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260665
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-12-17 21:26:08 +00:00