Commit Graph

44167 Commits

Author SHA1 Message Date
Brian Osman
e5bbce209c Interpreter: Add bitwise operators
Also, negation is unary, not binary.

Change-Id: Ic7c5a6f2ee0b2bbda89eef62999e4ebbc97dca12
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243161
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-09-23 17:10:01 +00:00
Ethan Nicholas
d166d2e62f SkSL interpreter now properly short-circuits boolean operators
Bug: skia:
Change-Id: If7acf4107498cabc049ad130814a3814383bd14b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243418
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-09-23 16:21:04 +00:00
Robert Phillips
57ef680775 Create a GrGpu::createBackendTexture choke point
This also makes createBackendTexture take SkPixmaps (instead of a raw pixels pointer)

Change-Id: I5d8a5a58fa7b15862fbf46a3c232cb6ea7f58976
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243158
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-09-23 16:01:25 +00:00
Brian Salomon
e4bce01613 Remove a few GrSurfaceProxy::config() usages
Change-Id: I9da9e1dadea71701c97994f8df1e7b5912989672
Bug: skia:6718
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243159
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-09-23 15:43:34 +00:00
Brian Osman
e7bd1cb4f6 Roll third_party/externals/angle2 6c4ff5ddab07..8be7a4c7f738 (12 commits)
*** Manual roll with build fix for new FrameCapture setup ***

6c4ff5ddab..8be7a4c7f7

git log 6c4ff5ddab07..8be7a4c7f738 --date=short --no-merges --format='%ad %ae %s'
2019-09-21 jmadill@chromium.org Re-land "Vulkan: SwiftShader integration."
2019-09-21 jmadill@chromium.org Capture/Replay: Encapsulate cpp replay.
2019-09-21 jmadill@chromium.org Reland "Refactor built-in symbol table."
2019-09-21 zmo@chromium.org Revert "Refactor built-in symbol table."
2019-09-21 jmadill@chromium.org Capture/Replay: Move stub implementation to new file.
2019-09-20 ianelliott@google.com Vulkan: Enable most dEQP-GLES31.functional.state_query* tests to run
2019-09-20 geofflang@chromium.org GL: Treat unknown AHardwareBuffer formats as RGBA8.
2019-09-20 jmadill@chromium.org Refactor built-in symbol table.
2019-09-20 aukinros@microsoft.com Add support for generating UWP (Windows Store) projects again
2019-09-20 jmadill@chromium.org Vulkan: Track resource usage via counter.
2019-09-20 jmadill@chromium.org Vulkan: Pass CommandGraph when updating serials.
2019-09-20 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src caca1d1cc46e..f7a48b153f2a (1 commits)

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

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 bungeman@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.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=bungeman@google.com

Change-Id: I8560c827bdf3694dc373dcf6c06220bdaafd6924
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243197
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-09-23 15:11:24 +00:00
recipe-roller
ab52a7a53d 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/e8d0b68df47a63f3a184f64c138404a139e046ed [swarming] expose current bot_id and task_id on api.swarming. (tandrii@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3536a030ee7ea3fe12d765e080b94b4344fef8ec
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243397
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-09-23 09:53:53 +00:00
skia-autoroll
776d81525e Roll ../src 3243c3b11405..82de2e611e32 (463 commits)
3243c3b114..82de2e611e


Created with:
  gclient setdep -r ../src@82de2e611e

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 bungeman@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.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
TBR=bungeman@google.com
Change-Id: I1e009db168cd5b02a056ebc39eac2a428a150337
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243358
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-09-23 04:44:03 +00:00
skia-autoroll
5b4c0ee19b Roll third_party/externals/swiftshader b6fa949c4539..1f89f58faeb8 (5 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/b6fa949c4539..1f89f58faeb8

git log b6fa949c4539..1f89f58faeb8 --date=short --no-merges --format='%ad %ae %s'
2019-09-20 jmadill@chromium.org Do not call Scheduler destructor in libVulkan.
2019-09-20 natsu@google.com [android] Add missing lib to _common_debug target
2019-09-20 nicolascapens@google.com Merge changes Ia7ee9d37,Ia3214243
2019-09-20 sugoi@google.com Enable sampling a depth-stencil format
2019-09-20 sugoi@google.com Fix support for OpKill as non-terminator

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

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 bungeman@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.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
TBR=bungeman@google.com
Change-Id: I59850c8b3d73ab04200d47ad5efa211fe8434d22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243356
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-09-23 04:34:03 +00:00
recipe-roller
b4d60b5eda 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/7cb60e812f165c2d6eaa1646b2a672a5ecb4ef9f git-cache: fix bug in prior CL. (tandrii@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I83831d75de10d0fbe938800b434bab3c96209559
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243270
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-09-22 20:19:24 +00:00
skia-recreate-skps
8b9de72766 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I348f7b8a746e23fc7dc17beb591302c49cab1a67
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243266
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-09-22 18:08:26 +00:00
skia-recreate-skps
1848f3e963 Update Go deps
Change-Id: I080e1718f4e30eddb7daade85ed4a8470a00371e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243258
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-09-22 15:34:26 +00:00
recipe-roller
2e00c9f853 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/82ae4b4b7d53362d7c8ff27731e9c89747865b93 git-cache: don't limit pack files to 2GiB. (tandrii@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ibf68b8a90bca8bfab70ce2d53f9b484e7ba6676d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243296
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-09-22 15:32:36 +00:00
recipe-roller
23b8230b5d 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/a79f0e50bb33eac87ed7f64418c2889be2e0fbf5 tests/gclient_scm_test.py: Fix invalid escape sequences in regex strings (raul@tambre.ee)
  https://crrev.com/383f6cf02d4718ff6a3aadb514f0525222e7e730 gclient_utils: Actually pass the include_zero parameter to Annotated constructor (raul@tambre.ee)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic56e383b8b51832f5d5712eb1394040874506057
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243276
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-09-21 15:11:28 +00:00
skia-recreate-skps
46203b003a Update Go deps
Change-Id: Id6d41294e53b88a2f02ca8449685b3ad8f1944ac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243253
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-09-21 05:25:08 +00:00
recipe-roller
edd92eed5b 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/dcfe55f13f15e597373497675beaf89811d5d4f3 git-cache: add --gc-aggressive support. (tandrii@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1422dff73085b79a8495eaad52d6b23489135e1f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243248
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-09-21 04:35:58 +00:00
recipe-roller
bd67d0035a 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/d4d1ba4971aa0bb0cf2cf059251a12d31b275587 git-cl: Use buildbucket v2 to schedule try jobs. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id1f10738fc5425666b4db3e494190aa5d4c7164b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243240
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-09-20 22:22:27 +00:00
Ethan Nicholas
942d69fa9d Revert "Fixed GLSL ES compilation error in GLTestAtlasTextRenderer"
This reverts commit 382ea73f15.

Reason for revert: breaking the non-Metal iOS bots

Original change's description:
> Fixed GLSL ES compilation error in GLTestAtlasTextRenderer
> 
> The test was issuing GL code without precision modifiers in a GLSL
> ES context. This wasn't being detected as a fatal error (which is
> a separate issue that should probably be addressed) but was
> resulting in errors being logged from dm on (at least)
> Test-iOS-Clang-iPhone6-GPU-PowerVRGX6450-arm64-Release-All-Metal.
> 
> Bug: skia:9266
> Change-Id: Ic9b22ed2c66e37ed670270c377364de3bdd15f41
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243042
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

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

Change-Id: I02feb9a6523ca777cd0de243eed4d1d1263a337f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9266
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243162
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-09-20 21:04:49 +00:00
Ethan Nicholas
382ea73f15 Fixed GLSL ES compilation error in GLTestAtlasTextRenderer
The test was issuing GL code without precision modifiers in a GLSL
ES context. This wasn't being detected as a fatal error (which is
a separate issue that should probably be addressed) but was
resulting in errors being logged from dm on (at least)
Test-iOS-Clang-iPhone6-GPU-PowerVRGX6450-arm64-Release-All-Metal.

Bug: skia:9266
Change-Id: Ic9b22ed2c66e37ed670270c377364de3bdd15f41
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243042
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-09-20 20:18:37 +00:00
Brian Salomon
8660eb0df1 Check for scratch textures in GrResourceProvider.
Restores scratch pool checks that were accidentally removed here:
https://skia.googlesource.com/skia/+/a90382fcf6759d4e13c20cf542ab5440ffd4f02d

Also enables checking scratch pool for mip-mapped textures, which was not
previously done.

Consolidates level prep and write-pixels code.

Bug: chromium:1005237
Change-Id: I6f23ce15299290ca5b666f910dc5fc85541ec316
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243038
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-09-20 19:55:27 +00:00
Kevin Lubick
6b921b7e4a [canvaskit] add support for SkAnimatedImage
Also adds tests for static png,jpg,gif

Was unable to simply expose drawDrawable because the JS
side of things does not understand inheritance (specifically,
it doesn't know what is a descendant from SkDrawable).

Change-Id: I6a833c93f22ef90ae12e901168ff428e20504209
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242562
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-09-20 18:34:01 +00:00
Brian Osman
c248659c19 Use makeRenderTargetContextWithFallback when creating devices for layers
Fixes the case where someone uses the kF16ColorType flag to saveLayer
but the GPU doesn't support F16 render targets.

Follow-up to https://skia-review.googlesource.com/c/skia/+/243041,
which improved the quality of the savelayer_f16 GM on most GPUs, but
removed the final draw on the GPUs that can't respect the flag.

Change-Id: I03dac6b2370bc9117c082f6c5c9b14e84b631339
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243156
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-09-20 18:02:57 +00:00
recipe-roller
2ab109212f 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/849795f393c621ebbe81a1be35cb45ec0ab3ede5 Spellcheck recipes-py docs (qyearsley@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8dcb6b913ddb6cb3c362349f25ce359635d35394
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243149
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-09-20 17:55:07 +00:00
Brian Osman
2e29ab5b03 added support for user-defined functions to GrSKSLFP
Bug: skia:
Change-Id: I1483cdf7229b7234be41d21407e2b4abf99fff76
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/239925
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-09-20 17:13:57 +00:00
Robert Phillips
40b05c390c Remove a usage of GrPixelConfig in SkGpuBlurUtils::GaussianBlur (take 2)
Bug: skia:6718
Change-Id: I6a0be1cab5543c3d76a041fcdc9ae9be4a3b179b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242822
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-09-20 17:11:27 +00:00
Ethan Nicholas
5a9a9b8d5b Revert "added support for SkSL unpremul function"
This reverts commit ffdc3e6680.

Reason for revert: breaking Chrome roll

Original change's description:
> added support for SkSL unpremul function
> 
> Change-Id: I970f1ad0dd0859448c874498fe02342f8abc3aa3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242897
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

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

Change-Id: I72dacea82b1f4ea2aa6cd600122a4810657aa32e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243117
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-09-20 16:59:58 +00:00
Vasiliy Telezhnikov
6934d75b55 Added missed ETC2 case to GrVkFormatColorTypePairIsValid
Bug: skia: none
Change-Id: Ie4613a018db42040cc2450b25f14007e3199cff6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243098
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Vasiliy Telezhnikov <vasilyt@chromium.org>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-09-20 16:54:07 +00:00
Mike Reed
f755bc7f11 call Graphics Init() to get faster asm
Change-Id: I1d8c1714c63e2f3833726342845d44abfc49745c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243096
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-09-20 16:05:39 +00:00
Brian Osman
d7a5975e05 Reland "Use saveLayer-determined CT in SkGpuDevice::onCreateDevice"
This reverts commit 80c1f093cd.

Updated make_layer_info to avoid swizzling when the previous layer
was either version of 8888. Fixes all of the ANGLE MSAA failures.

Change-Id: Iedd410988882f3dce05bb5ec18bcd84363e3591a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243041
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-09-20 15:48:44 +00:00
Ethan Nicholas
57d0c985a3 regenerated fragment processors to make bot happy
Change-Id: I573b966bc8ad599adfe81008d053bfbbcefd42b4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243040
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-09-20 15:18:10 +00:00
Brian Osman
80c1f093cd Revert "Use saveLayer-determined CT in SkGpuDevice::onCreateDevice"
This reverts commit 16559a1f9f.

Reason for revert: ANGLE images look bad

Original change's description:
> Use saveLayer-determined CT in SkGpuDevice::onCreateDevice
> 
> Currently Ganesh always uses the prev render target CT, but saveLayer
> may force a different CT, depending on flags.
> 
> This fixes handling of saveLayer/kF16ColorType (added in
> https://skia-review.googlesource.com/c/skia/+/227066).
> 
> Change-Id: Iab476c4afa4c70e25c452b2c430cbded5adb25e9
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/241876
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=bsalomon@google.com,brianosman@google.com,fmalita@chromium.org

Change-Id: I1e8eafbfdd7391c18eda4942cbdf0046a4ee2b53
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243039
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-09-20 14:44:43 +00:00
Nathaniel Nifong
7b30b70299 Added functions supporting a resource view for images in the debugger.
Optimized how UrlDataManager is used.

Bug: Skia:9175
Change-Id: I9c5b3946d59fe2a2e900a245a3bd161fdce6d265
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242976
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-09-20 14:39:41 +00:00
Brian Osman
16559a1f9f Use saveLayer-determined CT in SkGpuDevice::onCreateDevice
Currently Ganesh always uses the prev render target CT, but saveLayer
may force a different CT, depending on flags.

This fixes handling of saveLayer/kF16ColorType (added in
https://skia-review.googlesource.com/c/skia/+/227066).

Change-Id: Iab476c4afa4c70e25c452b2c430cbded5adb25e9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/241876
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-09-20 13:52:50 +00:00
Brian Osman
aea77267bf Run gn format
Change-Id: Iac84a0c538ad89ef7579d1b73f7194fa135af0ad
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243037
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-09-20 13:46:15 +00:00
Brian Osman
1ec1e3c55e Use 64 bit shift to make MSVC happy
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Win-MSVC-arm64-Debug,Build-Win-MSVC-x86_64-Debug
Change-Id: I381da9c2b2e9b98bc50e8d80ead10ad048e50fce
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243036
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-09-20 13:44:00 +00:00
Ethan Nicholas
ffdc3e6680 added support for SkSL unpremul function
Change-Id: I970f1ad0dd0859448c874498fe02342f8abc3aa3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242897
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-09-20 13:41:10 +00:00
skia-autoroll
9a98411780 Roll third_party/externals/angle2 bf4268a3963b..6c4ff5ddab07 (8 commits)
bf4268a396..6c4ff5ddab

git log bf4268a3963b..6c4ff5ddab07 --date=short --no-merges --format='%ad %ae %s'
2019-09-19 ianelliott@google.com Vulkan: Narrow GLES1 Scissor test skip to just Vulkan-Windows-Intel
2019-09-19 jmadill@chromium.org SystemInfo: Fix Windows driver version masking.
2019-09-19 m.maiya@samsung.com Vulkan: Add support for OES_vertex_type_10_10_10_2
2019-09-19 geofflang@chromium.org GL: Update BlitGL to use ANGLE_GL_TRY.
2019-09-19 jonahr@google.com GL: DisplayGLX::makeCurrent should handle drawSurface==0
2019-09-19 geofflang@chromium.org Convert DXT1 RGB data to DXT3 RGBA when uploading to the GPU.
2019-09-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src e0932f676db6..caca1d1cc46e (2 commits)
2019-09-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 36c1c0e22fab..605c2e3c0ea7 (7 commits)

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

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 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.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=brianosman@google.com
Change-Id: I6b3c2dc41c407d2de5115240a61518b9e10f400c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243020
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-09-20 05:30:09 +00:00
skia-recreate-skps
3f6d5bd793 Update Go deps
Change-Id: I9d83866ccc59e4f47eb6d33b57a825c775964cb9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243027
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-09-20 05:25:29 +00:00
skia-autoroll
be0d7dfa61 Roll ../src b8149cbe28ad..3243c3b11405 (453 commits)
b8149cbe28..3243c3b114


Created with:
  gclient setdep -r ../src@3243c3b114

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 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.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
TBR=brianosman@google.com
Change-Id: If0fbf62ac45952ae7b036e809087fd07c47a42b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243021
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-09-20 04:39:59 +00:00
skia-autoroll
4643d634c7 Roll third_party/externals/swiftshader e9b6f28fdd71..b6fa949c4539 (2 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/e9b6f28fdd71..b6fa949c4539

git log e9b6f28fdd71..b6fa949c4539 --date=short --no-merges --format='%ad %ae %s'
2019-09-19 nicolascapens@google.com Merge changes I5e9afad9,Ibd0b2ee4
2019-09-19 amaiorano@google.com Fix ComputeProgramKey not strict weak ordering

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

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 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.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
TBR=brianosman@google.com
Change-Id: I628f83d252d1e66403e375c47116719260838b33
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243019
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-09-20 04:32:59 +00:00
Mike Klein
f51e1fd37d raster 8888 pow2 samples hack
The gist here is to use saveLayer() to create a buffer to draw each
subframe into, but not actually use it to draw anything at restore()
time, hence, canvas->clear(0).  (SkCanvas sniffs out cleverer approaches
like 0 alpha or SkBlendMode::kDst.)

Instead, we accessTopLayerPixels() and slurp the subframe out into a
16-bit accumulator, then when all subframes have drawn and accumulated
there, one more saveLayer() and accessTopLayerPixels() lets us put them
back, shifting back down to 8-bit.

The hot parts of the profile are drawing the frames themselves, then the
accumulate / repack code in renderToRaster8888Pow2Samples().

  $ time out/skottie_tool -i ~/Downloads/mb/data.json -w bar
  Before: 28.39user 1.14system 0:29.54elapsed
  After:  22.08user 1.12system 0:23.21elapsed

    I'm not proud of it.
    ...
    ...
    ...
    I am a bit!

Now using one layer.

Change-Id: I241529fad4c5b55c6abc55793f2d9c9693a03c18
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242853
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-09-20 03:53:08 +00:00
Hal Canary
e5b65d212b pdf-comparison and image_diff_metric tools
Change-Id: I2ee96581d77c5ded9c9c2dc371a554ebda6b8d26
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242819
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-09-19 21:18:28 +00:00
Robert Phillips
ea1b30b57b New proposed syntax for SkColorTypes
Everything except for SkImageInfo.h is mechanical

Change-Id: I2d775c79467fb15f6022e80d21b4a9151272fe2a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242896
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-09-19 20:42:55 +00:00
recipe-roller
f8b8b06dde 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/64ae6993f71edd1b0804b1fe481762f5cc1e4476 Reland "repo: pull in updates from latest release" (thakis@chromium.org)
  https://crrev.com/7735f52c6d421af7dd77bdab374798c60bf571b3 Reland "Set core.trustctime=false during git checkout operations." (thakis@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib655f548ed96b2f552a9f13630703ff608b903f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242886
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-09-19 20:09:01 +00:00
recipe-roller
fdea69ca28 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/2c80d01be6a9201333d80f5617a9d7fb60a58861 Revert "repo: pull in updates from latest release" (thakis@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6c6d1e56eb9516b1b394aa81228eb50d5fe3d264
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242878
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-09-19 19:35:31 +00:00
Robert Phillips
f47717ad8c Alter wacky_yuv_formats GM to skip rows if the required backing GPU format(s) aren't supported
Change-Id: I066345d57f11e0937fc760ebdba6ad308a5f948b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242821
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-09-19 18:06:38 +00:00
Robert Phillips
a5d96bcc51 Remove "experimental" comments regarding RG_F16 and RGBA_16161616
These two formats are now exercised in the wacky_yuv_formats GM

Change-Id: I07a5649401b7928e8c4666e39793915ac1d45646
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242560
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-09-19 18:05:38 +00:00
Mike Klein
72d2f571ff stifle warning in tValue2Scalar()
Spun off from https://skia-review.googlesource.com/c/skia/+/242776.

I was worried there that this indicated a bug, that we're actually
working with a slightly-wrong denominator, but thanks to the wonders of
float rounding, turns out everything's probably ok.  This is the same as
that CL above with unit tests that the important boundary conditions
work correctly.

Change-Id: I1df469daf48df12f0e72778e6af58f5e733452ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242841
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-09-19 17:40:58 +00:00
Jim Van Verth
b2f55532bb Set up prototype interface for MakeFromCAMetalLayer
Change-Id: I87b0fc76ef48c1a21498e576853a6c3b4a6a98f9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242563
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-09-19 17:37:00 +00:00
Robert Phillips
c766d7fe3d Revert "Remove a usage of GrPixelConfig in SkGpuBlurUtils::GaussianBlur"
This reverts commit f580721e11.

Reason for revert: maybe angle bots

Original change's description:
> Remove a usage of GrPixelConfig in SkGpuBlurUtils::GaussianBlur
> 
> Bug: skia:6718
> Change-Id: Ia8a96cf6907ffaafd989f1e5bb1443d1ef51b9e6
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242142
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: Ifcd22699ed64c7020c5d33781062c267595e246e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:6718
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242820
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-09-19 16:16:23 +00:00
Chris Dalton
0493fbd6e2 Use GrResourceProvider::MakeApprox for mask filter proxy sizes
This allows us to demand exact matches in size and eliminate our
dependence on absClear.

In the future we can take this a step further and offset the mask to
leave a transparent border on all sides, thereby creating a "decal"
effect.

Bug: skia:
Change-Id: I8cd02ba1365ace0ccaae250a7195f51d0c77ce8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/242720
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-09-19 15:40:43 +00:00