This is just the API level interface(s) and the backend virtual calls needed to implement them.
Bug: skia:9680
Change-Id: I6c655751e23ce18c6a184c925e8d472902e8a478
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259976
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This reverts commit 3794db84e1.
Reason for revert: Still breaking Pixel3 processor optimization test
Original change's description:
> Blend functions as SkSL built ins.
>
> GPU-only for right now.
>
> Use in GrGLSLBlend::AppendMode.
>
> Remove unused GrGLSLBlend::AppendRegionOp.
>
> Change-Id: I23affe255a1adafa55f3a07ca6291dc84e18e213
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254678
> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
TBR=bsalomon@google.com,brianosman@google.com,ethannicholas@google.com
Change-Id: I0675c0fe00d6540202ca0676fd9b07f3007d0404
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260639
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
GPU-only for right now.
Use in GrGLSLBlend::AppendMode.
Remove unused GrGLSLBlend::AppendRegionOp.
Change-Id: I23affe255a1adafa55f3a07ca6291dc84e18e213
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254678
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Fixes a memory leak in Flutter.
Change-Id: Ia86ea8d4d78539dc28acb207e834861f274c0a5c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260538
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
skottie/include/Skottie.h includes modules/skresources/include/SkResources.h
add skresources_lib_hdrs skresources_lib_srcs
Change-Id: I9e1e0c99e55fd638323ecf9fa3f4bd21206fb428
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260501
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Change-Id: Ie951106bbd7a91dd76b30a56ede9313c88e657ab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260499
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Will work on clipping in follow-up CL
Change-Id: I1e4cc485555a435c740a4e5b50445f21e9ec20c7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260404
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
* remove internalGetHead/Tail
* make validate private because fLock must be held.
Change-Id: If998cfe8ba0414e4520807034f841e40b94aa206
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260284
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
d1860ea17e..5407aaa089
git log d1860ea17e8e..5407aaa089ac --date=short --first-parent --format='%ad %ae %s'
2019-12-16 jmadill@chromium.org Re-land "Add new test runner harness." (#2)
2019-12-16 b.schade@samsung.com Vulkan: Add test that logs supported texture formats
2019-12-16 jmadill@chromium.org GN: Make new angle_test_utils target.
2019-12-16 b.schade@samsung.com Adds missing extensions to registry_xml.py
2019-12-16 courtneygo@google.com Vulkan: Fix failed assert when unbinding texture
2019-12-16 tobine@google.com Vulkan: Use volk to load vk* func ptrs
2019-12-16 b.schade@samsung.com Added enums to InternalFormat and PixelType groups in gl.xml
2019-12-16 courtneygo@google.com Validate uniform location size, fix unlink cleanup
2019-12-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader ebb0bec91552..fbbfeb700295 (2 commits)
2019-12-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src c1a7421f0f93..0c2618b2c31e (1 commits)
2019-12-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src d2c3daeb56e9..2b19f3916726 (10 commits)
Created with:
gclient setdep -r third_party/externals/angle2@5407aaa089ac
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: I727cf93b3167efe6487466b6d46766da2fa4439e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260455
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This change mostly just removes GrTextureContext and switches users to
directly creating GrSurfaceContexts. Outside of updating types, the factory
functions for creating Gr*Contexts have not been updated in this but will
be done in a followup.
Change-Id: I55257568d4c096c5fb48c5e38bfa2c01b824e7b5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260289
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
This fixes a bug in the computation of a solid colored ETC1 block and adds support for mipmapped ETC1 data.
Bug: skia:9680
Change-Id: I50be60d652bd974e0f11966d72228bea5441696c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259977
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
This reverts commit 187cd367d3.
Reason for revert: relanding with legacy enum support
Original change's description:
> Revert "[skottie] Simplify effect builder lookup"
>
> This reverts commit ef363a9ce6.
>
> Reason for revert: G3 unit tests failing
>
> Original change's description:
> > [skottie] Simplify effect builder lookup
> >
> > Layer effects fall into two categories:
> >
> > - effects that BM knows about: these get assigned a unique type enum
> > - effects that BM doesn't know about: these are still exported, but
> > get assigned a dummy type
> >
> > To handle effects in the latter case, we rely on their canonical AE
> > name.
> >
> > The list of supported effects has grown to the point where a) this
> > differentiation doesn't seem valuable anymore and b) the code is quite
> > repetitive.
> >
> > Consoliate the lookup logic to rely solely on effect names + bsearch
> > table.
> >
> > Change-Id: Ib5f9b064a373814865da9e8a26037209992e8b9b
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259997
> > Commit-Queue: Florin Malita <fmalita@chromium.org>
> > Reviewed-by: Mike Reed <reed@google.com>
> > Reviewed-by: Mike Klein <mtklein@google.com>
>
> TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com
>
> Change-Id: I3b4c681c260c121e422ade7395c33a77e788ff43
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260196
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Florin Malita <fmalita@chromium.org>
TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I2a4360dc8216b8b45e20c6568c0a1d3d069aa56c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260280
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
The SkDescriptor fuzzer did not call init. This caused
mysterious failures.
Make SkDescriptor's constructor initialize its fields.
Remove init().
Change-Id: Icab79c53b2d2878fceecfec06c886b71613cea6f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260287
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Change-Id: I9af324bec969a1f7feb84f8e5ea97b573c56694f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260396
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Now we know ahead of time what size approx textures will use when they're
allocated.
Change-Id: I9e15140496d15e7d6933aa03d0215222ac3b5be5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260040
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
When wrapping a backend texture we currently need to derive a GrPixelConfig from the backend format. The normal caps method (i.e., getConfigFromBackendFormat) is inappropriate for the compressed backend texture use case.
Bug: skia:9680
Change-Id: Ic4de7550c9a11f6e6207374c27d0ea23b8ab1575
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260044
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Change-Id: I83bea6e9c94431afba858b0e7b60456e8f9a2176
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260356
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
'key' was already disallowed later in the process, this catches it
earlier. The others are all unnecessary complications (and 'when' and
'tracked' weren't actually doing anything).
Change-Id: I39b4f0da73a7a12793484eb90decadc9c94b5693
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260281
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This will allow us to funnel compressed texture data back to the GPU-specific backend texture creation point(s).
Bug: skia:9680
Change-Id: I83a8ad0279c02aa4044b29fbce1d6ee1fcd9b784
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260039
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Also: mv experimental/skottie_ios tools/skottie_ios_app
Motivation: make using SkMetalViewBridge that much easier for clients.
Change-Id: I985930ae0751d218e89c48c57b69d85ad7a1e703
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259279
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Most call sites really only want the Boolean so I also added an isFormatCompressed helper.
Change-Id: I77f16033b69bc99329344201d2c85599d60cb757
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259168
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
This fixes the proximal issue w/ the new DDL images. The underlying issue appears to be that the GIF decoder isn't available on all platforms.
Change-Id: I117b6460e09b2c7815d84929a340579690c15945
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260276
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Change-Id: Id3222effc21aea673b4d5d82a98e3e60f34512b1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260278
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
While working on creating bindings for dlang, I noticed that there was a
missing call to `sk_imageinfo_delete`, corresponding to the call to
`sk_imageinfo_new` in the c-api example. At first I thought that
`sk_surface_new_raster` (or something else) would free the image info
object internally, but after checking the implementation I saw this was
not the case.
This can be trivially verified with valgrind:
Before this change:
$ valgrind ./skia-c-example 2>&1 | grep 'definitely lost'
==186215== definitely lost: 24 bytes in 1 blocks
After:
$ valgrind ./skia-c-example 2>&1 | grep 'definitely lost'
==185878== definitely lost: 0 bytes in 0 blocks
Test: built and ran skia-c-example.c under valgrind
Change-Id: Ie3fba2e7602341d2f5e7dac198b3ec5923777cbd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260021
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Adds SkRuntimeEffect, a ref-counted object to hold SkSL,
a Compiler, and compiled Program, along with uniform info.
Removes the old SkSLFP factory and factory cache types.
Caching is done by simply holding on to the effect (or
the shader/color filter factories, which own an effect).
The effect class is simply ref'd by the factories, the
shader and color filter types, and the FP.
NOTE: Changes to public headers only affect private functions.
Change-Id: I0c1401505cb234e83943ad4ef2db6680f4c69fb9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259336
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Change-Id: I2a7510f97dd8bdae4d5fbd2314718c14711a822a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260076
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Herb Derby <herb@google.com>
This reverts commit 706eb5788e.
Reason for revert: Bad skp causing crashes
Original change's description:
> Update SKP version
>
> Automatic commit by the RecreateSKPs bot.
>
> TBR=rmistry@google.com
> NO_MERGE_BUILDS
>
> Change-Id: Ic0889b3314f1d0c9853682da9de96e4fa574a7fc
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260183
> Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
> Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
TBR=rmistry@google.com,skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I30cf1f796d983b8bc5171cfc1112e0b7eded8f0f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260256
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
1d77542f56..d1860ea17e
git log 1d77542f5681..d1860ea17e8e --date=short --first-parent --format='%ad %ae %s'
2019-12-15 lehoangq@gmail.com Metal: support OES_depth_texture
2019-12-14 lehoangq@gmail.com Metal: Fix glDisable(GL_DEPTH_TEST) didn't disable depth write
2019-12-14 lehoangq@gmail.com Metal: Update spirv-cross from upstream to fix mat2 issues
2019-12-14 penghuang@chromium.org Vulkan: remove unnecessary transition of external images
2019-12-14 spang@chromium.org [Fuchsia] Update FIDL library target names in ANGLE
2019-12-13 syoussefi@chromium.org Vulkan: Refactor glslang wrapper's varying location assignment
2019-12-13 syoussefi@chromium.org Restructure textureGatherOffset* builtin declarations
2019-12-13 syoussefi@chromium.org Vulkan: Have the translator output in/out qualifiers
2019-12-13 syoussefi@chromium.org Validate that image array indices are constant
2019-12-13 root@cybikbase.com Fix GGP build
2019-12-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src 6a35bc9967d9..d2c3daeb56e9 (3 commits)
2019-12-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 07958d452f93..ebb0bec91552 (4 commits)
2019-12-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 5c019b5923c1..96354f5047bf (1 commits)
2019-12-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 6c479796f6e4..ebf634bcaa3e (1 commits)
Created with:
gclient setdep -r third_party/externals/angle2@d1860ea17e8e
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: I9ef89dd822175f773452e99b3646b8438ed6c0f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260216
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This reverts commit ef363a9ce6.
Reason for revert: G3 unit tests failing
Original change's description:
> [skottie] Simplify effect builder lookup
>
> Layer effects fall into two categories:
>
> - effects that BM knows about: these get assigned a unique type enum
> - effects that BM doesn't know about: these are still exported, but
> get assigned a dummy type
>
> To handle effects in the latter case, we rely on their canonical AE
> name.
>
> The list of supported effects has grown to the point where a) this
> differentiation doesn't seem valuable anymore and b) the code is quite
> repetitive.
>
> Consoliate the lookup logic to rely solely on effect names + bsearch
> table.
>
> Change-Id: Ib5f9b064a373814865da9e8a26037209992e8b9b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259997
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> Reviewed-by: Mike Reed <reed@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>
TBR=mtklein@google.com,fmalita@chromium.org,reed@google.com
Change-Id: I3b4c681c260c121e422ade7395c33a77e788ff43
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260196
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Layer effects fall into two categories:
- effects that BM knows about: these get assigned a unique type enum
- effects that BM doesn't know about: these are still exported, but
get assigned a dummy type
To handle effects in the latter case, we rely on their canonical AE
name.
The list of supported effects has grown to the point where a) this
differentiation doesn't seem valuable anymore and b) the code is quite
repetitive.
Consoliate the lookup logic to rely solely on effect names + bsearch
table.
Change-Id: Ib5f9b064a373814865da9e8a26037209992e8b9b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259997
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
I missed the comments on cl/260038; do them in this cl.
Change-Id: If3a842385c935ae7833ae9ead6ba527e4e9f11a9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260096
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>