Commit Graph

30187 Commits

Author SHA1 Message Date
Ethan Nicholas
c576e93d17 Switch to the new SkSL lexer.
This completely replaces flex with a new in-house lexical analyzer generator,
which we have done for performance and memory usage reasons. Flex requires us
to copy strings every time we need the text of a token, whereas this new lexer
allows us to handle strings as a (non-null-terminated) pointer and length
everywhere, eliminating most string copies.

Bug: skia:
Change-Id: I2add26efc9e20cb699520e82abcf713af3968aca
Reviewed-on: https://skia-review.googlesource.com/39780
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-09-11 16:17:00 +00:00
Ravi Mistry
a2bdf005f3 Add a "[DO NOT SUBMIT]" prefix to the uploaded Android change
Since the script cannot do anything to prevent submission via the API it might
help to atleast add a "[DO NOT SUBMIT]" prefix.

NoTry: true
Bug: skia:7016
Change-Id: I825f28947df85a4d54ead764f8d363e12f83fbfb
Reviewed-on: https://skia-review.googlesource.com/44840
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-09-11 15:28:05 +00:00
Jim Van Verth
6a7a704aa4 Add multitexture support to text and path shaders, take 3.
This does not add additional textures to the atlases, just adds the
ability to access those textures in the shaders.

Bug: skia:3550
Change-Id: I4c1da2bc374a76131f5f4ad946543e03e0ab3126
Reviewed-on: https://skia-review.googlesource.com/44841
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-09-11 15:24:30 +00:00
Ravi Mistry
b816322422 Sync only the current branch and use a shallow checkout
Tried this out locally and it shrunk the size of the checkout from 1010M
to 586M and shaved a few seconds off the running time as well.

NoTry: true
Bug: skia:7016
Change-Id: I472712e88d2cf30f0cfd71a373630d12a4937684
Reviewed-on: https://skia-review.googlesource.com/44820
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2017-09-11 15:23:00 +00:00
Roger Johannesson
b5f3b656de Add missing stdarg.h include
This file makes use of va_list so it should include stdarg.h. This was handled
implictly by SkString.h before https://skia-review.googlesource.com/34381
landed.

Bug: skia:
Change-Id: I74fc50463549481a0e8835943823e627bc288dd8
Reviewed-on: https://skia-review.googlesource.com/44740
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-09-11 14:09:30 +00:00
Ben Wagner
cf9365a0bc Retry adb commands on flaky devices.
No-Try: true
Change-Id: I3519131cf064d0a9676abd0fb9d7e946646ce27f
Reviewed-on: https://skia-review.googlesource.com/43564
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-09-11 14:09:20 +00:00
Justin Novosad
8b1360dcfa Reland "Optimize SkColorSpaceXformCanvas for GPU-acceleration"
This is a reland of 1d3df3848f
Original change's description:
> Optimize SkColorSpaceXformCanvas for GPU-acceleration
> 
> This change ensures that SkImages are uploaded to the GPU before
> applying the xform when the destination canvas is on the GPU. This
> makes it possible to get hits in the texture cache and it ensures
> that transforms get computed on the GPU.
> 
> This fixes a severe performance regression in Chrome that happened
> when color correction was enabled.
> 
> Associated chromium patch for layout test rebaselines:
> https://chromium-review.googlesource.com/c/chromium/src/+/655483
> 
> Merge dependency: Merging this change to the M-62 and M-61
> branches also requires merging the following change, otherwise
> there will be rendering errors:
> https://skia-review.googlesource.com/c/skia/+/43562
> 
> BUG=chromium:760738
> 
> Change-Id: I49fd5ef7968272d311249c3824fe15bee4648b73
> Reviewed-on: https://skia-review.googlesource.com/43183
> Commit-Queue: Justin Novosad <junov@chromium.org>
> Reviewed-by: Brian Osman <brianosman@google.com>

Bug: chromium:760738
Change-Id: I94a3482713dc4ff824ae21ea640c04d06bb7e29d
Reviewed-on: https://skia-review.googlesource.com/44760
Reviewed-by: Justin Novosad <junov@chromium.org>
Commit-Queue: Justin Novosad <junov@chromium.org>
2017-09-11 14:01:00 +00:00
angle-deps-roller@chromium.org
abd6774558 Roll skia/third_party/externals/angle2/ 6f0c17c7d..1aa66bc73 (1 commit)
6f0c17c7d5..1aa66bc73d

$ git log 6f0c17c7d..1aa66bc73 --date=short --no-merges --format='%ad %ae %s'
2017-09-06 mradev Add ANGLE_multiview sample

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=stephana@google.com

Change-Id: I41d9f48dcdc260b55ae2ba03893ce801e4b8ac9b
Reviewed-on: https://skia-review.googlesource.com/44700
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-11 10:01:00 +00:00
Mike Klein
bc7b1eab6c update clang_linux package to Clang 5
Disable some new warning flags to get us building.

Change-Id: I10299d667b06fb61d03e52329883c634bd42f45c
Reviewed-on: https://skia-review.googlesource.com/44341
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-09-10 13:20:49 +00:00
UpdateSKPs
e5964bc7d4 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: Ie30d4614101383044b76c9c2dcb959ce447c1a67
Reviewed-on: https://skia-review.googlesource.com/44640
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>
2017-09-10 08:01:58 +00:00
Florin Malita
ebca0ddac0 Fix SkSVGDOM length & presentation context scoping
TBR=
BUG=skia:7033

Change-Id: I07584acc35253acfd6ca2c3c91c615bb507f7601
Reviewed-on: https://skia-review.googlesource.com/44620
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-09-09 14:06:28 +00:00
Petr Hosek
8bc6917053 Use enum value as the lower bound
This is triggering a compilation error in the latest version of Clang
because of the new Wtautological-unsigned-zero-compare warning.

Change-Id: I578eb1244719fd331113b9444e2eca672912afc8
Reviewed-on: https://skia-review.googlesource.com/44580
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-09-09 13:02:59 +00:00
Mike Klein
11cd4640d4 explicitly set user email to <self>@google.com
I have my global user.email set to mtklein@chromium.org,
and Android's Gerrit won't let me upload that way.

Change-Id: Id5c1a0843fa7912b67ef6f32c0e262ca85a9139f
Reviewed-on: https://skia-review.googlesource.com/44500
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-09-08 22:57:17 +00:00
Mike Klein
acc8d2e11a Revert "Revert "Revert "Add multitexture support to text and path shaders"""
This reverts commit 6c251d24cf.

Reason for revert: crashes Fuchsia.

Original change's description:
> Revert "Revert "Add multitexture support to text and path shaders""
> 
> This does not add additional textures to the atlases, just adds the
> ability to access those textures in the shaders.
> 
> Bug: skia:3550
> Change-Id: I552e2c2e4713a5ea68801fdb8e3bab3867e77988
> Reviewed-on: https://skia-review.googlesource.com/44261
> Reviewed-by: Robert Phillips <robertphillips@google.com>

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

Change-Id: I25cc5f11a1fa76ca7b2cf24920ae3a2a15aac723
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:3550
Reviewed-on: https://skia-review.googlesource.com/44540
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-09-08 22:19:08 +00:00
Ravi Mistry
e1e47b70e0 Script that uploads a specified Skia change to Android's Gerrit instance
This script does the following:
* Downloads the repo tool.
* Inits and checks out the bare-minimum required Android checkout.
* Sets the required git config options in external/skia.
* Cherry-picks the specified Skia patch.
* Modifies the change subject to append a "Test:" line required for presubmits.
* Uploads the Skia change to Android's Gerrit instance.

After the change is uploaded to Android, developers can trigger TH and download binaries (if required) after runs complete.
The script re-uses the workdir when it is run again. To start from a clean slate delete the workdir.

Timings:
* ~1m15s when using an empty/non-existent workdir for the first time.
* ~15s when using a workdir previously populated by the script.

Example usage:
  $ python upload_to_android.py -w /repos/testing -c 44200

Bug: skia:7016
Change-Id: I9a34b05de7f119a2c321687f7391add7e8cfd7ba
Reviewed-on: https://skia-review.googlesource.com/44380
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-09-08 21:19:20 +00:00
Brian Osman
5ad87aad68 Copy benchmark names, which may be transient strings
Bug: skia:
Change-Id: Ic4073aa17a04e8b400cc4a9db9a0669ee4a5c894
Reviewed-on: https://skia-review.googlesource.com/44203
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-09-08 20:30:48 +00:00
Ben Wagner
2e4e73f732 Omit encode-platform also for Debug Mac CPU.
Bug: skia:6992
No-Try: true
Change-Id: I824e44f0e9f08f607aa3aaa5e0074bce72a2b4ee
Reviewed-on: https://skia-review.googlesource.com/44202
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-09-08 20:29:58 +00:00
angle-deps-roller@chromium.org
71c05ead16 Roll skia/third_party/externals/angle2/ ec3a9cbb5..6f0c17c7d (1 commit)
ec3a9cbb54..6f0c17c7d5

$ git log ec3a9cbb5..6f0c17c7d --date=short --no-merges --format='%ad %ae %s'
2017-09-08 jmadill Update docs to mention Win 10 SDK is required.

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=robertphillips@google.com

Change-Id: I6986e8ba3854f795ec6dcec997a972c925e975e0
Reviewed-on: https://skia-review.googlesource.com/44144
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-08 20:01:43 +00:00
Greg Daniel
21918231b2 Revert "Remove isMipMapped from GrSurfaceDesc" and follow up find exact scratch CL
This reverts commit 52cb5fe23b.
This reverts commit e1fbf17058.

TBR:bsalomon@googole.com

Bug: chromium:763333
Change-Id: Ie94e00c3c7231e32f009b9dc7bb51ebb53baf7b1
Reviewed-on: https://skia-review.googlesource.com/44400
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-09-08 19:58:18 +00:00
Mike Klein
1170a553be Don't allow iteration through non-finite points.
Added a unit test too.

BUG=chromium:756563

Change-Id: Ic77a89b4a98d1a553877af9807a3d3bdcd077bb9
Reviewed-on: https://skia-review.googlesource.com/44420
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2017-09-08 19:56:38 +00:00
Chris Dalton
900cd05037 CCPR: Check for flat lines before crunching on curves
Bug: skia:
Change-Id: Ib99f3f83aee4c261ef1cfc4e1045b2be3113e1ae
Reviewed-on: https://skia-review.googlesource.com/43100
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-09-08 19:29:58 +00:00
Jim Van Verth
6c251d24cf Revert "Revert "Add multitexture support to text and path shaders""
This does not add additional textures to the atlases, just adds the
ability to access those textures in the shaders.

Bug: skia:3550
Change-Id: I552e2c2e4713a5ea68801fdb8e3bab3867e77988
Reviewed-on: https://skia-review.googlesource.com/44261
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-09-08 17:23:00 +00:00
Mike Klein
71b45fbc4f update SkJumper stages to clang 5
To continue building stages, update Clang and update your GN args:
  $ brew update
  $ brew upgrade llvm
  $ find . | grep args.gn | xargs sed -ie 's/clang-4.0/clang-5.0/g'

Some interesting codegen changes I noticed:
  - ARMv7: generally better register assignment, tighter code
  - ARMv7: dropped the 128-bit alignment hint when loading and storing dst "registers",
           unclear why.
  - HSW:   now clearing the destination register before vgatherdps,
           to break a dependency on the previous value

Change-Id: I4f804a4cbfcde530fad5ed535438174e852a9593
Reviewed-on: https://skia-review.googlesource.com/44241
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-09-08 16:57:53 +00:00
Greg Daniel
0d53780b8c Update GrResourceCache changeUniqueKey to stay in valid state after each step
The issues are that we are intertwining removing things from the old and new
resource. This changes it so we do all the removal on the old resource first
then start updating the new resource.

Bug: skia:
Change-Id: I7ce4a309290cd499cdc4398c87d1cfd42ef6994d
Reviewed-on: https://skia-review.googlesource.com/44242
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-09-08 16:04:33 +00:00
Brian Osman
33fea05c3f Skip making a surface context when doing threaded SW paths
Bug: skia:
Change-Id: I4f78abc836f22a216e94a47cb2a7414edccbd2b6
Reviewed-on: https://skia-review.googlesource.com/44201
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-09-08 15:26:53 +00:00
Jim Van Verth
e7492fe49c Revert "Add multitexture support to text and path shaders"
This reverts commit 7f754260f7.

Reason for revert: Bot failures.

Original change's description:
> Add multitexture support to text and path shaders
> 
> This does not add additional textures to the atlases, just adds the
> ability to access those textures in the shaders.
> 
> Bug: skia:3550
> Change-Id: I636b329a6f748b6753f5f92a70066fb412623df2
> Reviewed-on: https://skia-review.googlesource.com/43000
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

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

Change-Id: I5c28ea48ed9bdde2cd936ef4f96fc720d5e4b4a5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:3550
Reviewed-on: https://skia-review.googlesource.com/44162
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-09-08 14:43:54 +00:00
Brian Salomon
336ce7babc Revert "Revert "Make TextureOp use multitexturing to batch draws of different SkImages.""
This reverts commit 4e95a88c83.

Bug: skia:
Change-Id: I5f849abff3f8406587e3d7cf990f50ef14fc4656
Reviewed-on: https://skia-review.googlesource.com/44220
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-09-08 14:23:00 +00:00
Ben Wagner
407a3b7874 Update NexusPlayers to Android O PR6.
No-Try: true
Change-Id: I0abb5e6d9d705d352089024a303d2f8be0f051aa
Reviewed-on: https://skia-review.googlesource.com/43203
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-09-08 14:22:58 +00:00
angle-deps-roller@chromium.org
3ef63abb13 Roll skia/third_party/externals/angle2/ 95644f92d..ec3a9cbb5 (2 commits)
95644f92dd..ec3a9cbb54

$ git log 95644f92d..ec3a9cbb5 --date=short --no-merges --format='%ad %ae %s'
2017-09-07 oetuaho Only support GL_OVR_multiview extension variant
2017-09-07 mradev Restructure InstanceID initialization to fix HLSL warning

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=robertphillips@google.com

Change-Id: I32441134de5ccd86335fd11b25c40c669f87dee7
Reviewed-on: https://skia-review.googlesource.com/44141
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-08 14:17:55 +00:00
Jim Van Verth
7f754260f7 Add multitexture support to text and path shaders
This does not add additional textures to the atlases, just adds the
ability to access those textures in the shaders.

Bug: skia:3550
Change-Id: I636b329a6f748b6753f5f92a70066fb412623df2
Reviewed-on: https://skia-review.googlesource.com/43000
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-09-08 14:17:53 +00:00
Robert Phillips
7231c50f9c Revert "Optimize SkColorSpaceXformCanvas for GPU-acceleration"
This reverts commit 1d3df3848f.

Reason for revert: Mac timeouts? crbug.com/763197

Original change's description:
> Optimize SkColorSpaceXformCanvas for GPU-acceleration
> 
> This change ensures that SkImages are uploaded to the GPU before
> applying the xform when the destination canvas is on the GPU. This
> makes it possible to get hits in the texture cache and it ensures
> that transforms get computed on the GPU.
> 
> This fixes a severe performance regression in Chrome that happened
> when color correction was enabled.
> 
> Associated chromium patch for layout test rebaselines:
> https://chromium-review.googlesource.com/c/chromium/src/+/655483
> 
> Merge dependency: Merging this change to the M-62 and M-61
> branches also requires merging the following change, otherwise
> there will be rendering errors:
> https://skia-review.googlesource.com/c/skia/+/43562
> 
> BUG=chromium:760738
> 
> Change-Id: I49fd5ef7968272d311249c3824fe15bee4648b73
> Reviewed-on: https://skia-review.googlesource.com/43183
> Commit-Queue: Justin Novosad <junov@chromium.org>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=brianosman@google.com,junov@chromium.org

Change-Id: I1a43e9b277075d1aee0efd651c899e15ac3fa53b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:760738
Reviewed-on: https://skia-review.googlesource.com/44160
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-09-08 11:44:34 +00:00
angle-deps-roller@chromium.org
2c6db724ec Roll skia/third_party/externals/angle2/ 1de29abad..95644f92d (1 commit)
1de29abad1..95644f92dd

$ git log 1de29abad..95644f92d --date=short --no-merges --format='%ad %ae %s'
2017-09-07 ynovikov Make ScopedIgnorePlatformMessages work

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=robertphillips@google.com

Change-Id: Ie3243322e6b6acd7a67f5661d0a43ad97a40d04f
Reviewed-on: https://skia-review.googlesource.com/44100
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-08 02:40:33 +00:00
angle-deps-roller@chromium.org
9d68bff985 Roll skia/third_party/externals/angle2/ fe8b5989d..1de29abad (1 commit)
fe8b5989d0..1de29abad1

$ git log fe8b5989d..1de29abad --date=short --no-merges --format='%ad %ae %s'
2017-09-07 ynovikov Skip MultiviewRenderTest.FlatInterpolation on Win Intel D3D11

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=robertphillips@google.com

Change-Id: Iac5856f1eadd944a06c69679bc40e259dc0b153e
Reviewed-on: https://skia-review.googlesource.com/44041
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-08 01:06:13 +00:00
angle-deps-roller@chromium.org
439407ced4 Roll skia/third_party/externals/angle2/ e98e16eab..fe8b5989d (1 commit)
e98e16eab8..fe8b5989d0

$ git log e98e16eab..fe8b5989d --date=short --no-merges --format='%ad %ae %s'
2017-09-07 jmadill Program: Fixed unreferenced Samplers.

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=robertphillips@google.com

Change-Id: I4474fd9895c70d46b576c9f27ebc051bbcb05e06
Reviewed-on: https://skia-review.googlesource.com/43961
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-07 23:17:12 +00:00
Chris Dalton
7c304ba402 Only run CPU SVG tests on a single bot
Runs the testing on Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN.
We only care about parsing SVGs CPU-side so there's no need to retest
it on every bot.

Bug: skia:6918
Change-Id: If2c5afbc41a600ece63d9a6a60f0dab5ca7b3676
Reviewed-on: https://skia-review.googlesource.com/43461
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-09-07 22:23:53 +00:00
Chris Dalton
5ed4423090 Improve GrPathRendererChain heuristics
Changes GrPathRenderer::canDrawPath to return a 'CanDrawPath' enum,
which contains a new kAsBackup value that means "I'm better than SW,
but give the path renderers below me a chance first."

Bug: skia:
Change-Id: Ia339567800a3127e61b9beaed19504cd504f18af
Reviewed-on: https://skia-review.googlesource.com/43761
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-09-07 22:18:53 +00:00
angle-deps-roller@chromium.org
2199e0bc7c Roll skia/third_party/externals/angle2/ 3ed604246..e98e16eab (3 commits)
3ed604246f..e98e16eab8

$ git log 3ed604246..e98e16eab --date=short --no-merges --format='%ad %ae %s'
2017-08-25 cwallez Update gpu_test_expectations and use angle_gpu_info_util
2017-09-07 jmadill SwapChain11: Create SRV copy texture lazily.
2017-09-07 jmadill D3D11: Cache multisample resolve texture.

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=robertphillips@google.com

Change-Id: I1258d524a25ab314b513cdc02b048b3007bc0109
Reviewed-on: https://skia-review.googlesource.com/43861
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-07 22:06:54 +00:00
Robert Phillips
4e95a88c83 Revert "Make TextureOp use multitexturing to batch draws of different SkImages."
This reverts commit 2e50d0f5f9.

Reason for revert: Shader compilation error

Original change's description:
> Make TextureOp use multitexturing to batch draws of different SkImages.
> 
> On a benchmark drawing small texture backed images this shows a 50% improvement on a Pixel XL 2016 and a little better than that on a Z840. 
> 
> Change-Id: I5c307ef0d8615aeae67bae7393874ad7e52eb233
> Reviewed-on: https://skia-review.googlesource.com/42121
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

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

Change-Id: I28b9a139627e2492a2af53dd82fc8c43be94464b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/43920
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-09-07 21:11:16 +00:00
angle-deps-roller@chromium.org
54c78afb3f Roll skia/third_party/externals/angle2/ 7cadfcc70..3ed604246 (3 commits)
7cadfcc70c..3ed604246f

$ git log 7cadfcc70..3ed604246 --date=short --no-merges --format='%ad %ae %s'
2017-09-07 jmadill Test using the same texture with multiple samplers.
2017-09-06 mradev Extend multiview perf tests to cover all extension code paths
2017-09-06 geofflang Don't create SRVs for multisampled depth stencil textures in FL10.0.

Created with:
  roll-dep skia/third_party/externals/angle2


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

If the roll is causing failures, see:
http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls


CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Perf-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Perf-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE,Test-Win10-MSVC-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-ANGLE,Test-Win10-MSVC-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-ANGLE,Test-Win10-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE,Test-Win10-MSVC-ZBOX-GPU-GTX1070-x86_64-Debug-ANGLE
TBR=robertphillips@google.com

Change-Id: I88463dad887ed9f2d40c46ba50b6cbca27d9de9c
Reviewed-on: https://skia-review.googlesource.com/43586
Commit-Queue: angle-deps-roller . <angle-deps-roller@chromium.org>
Reviewed-by: angle-deps-roller . <angle-deps-roller@chromium.org>
2017-09-07 20:37:52 +00:00
Chong Zhang
c1868cdf96 add heic extension to DM test
b/64077740

Change-Id: Ice0232d9be7ed4ba0421400b3b93ecd58d69f45f
Reviewed-on: https://skia-review.googlesource.com/43360
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-09-07 20:37:50 +00:00
Greg Daniel
faa5329b9b Update GenerateMipMapsAndUploadtoTextureProxy to respect color space when setting up SurfaceDesc
Bug: skia:
Change-Id: Ie98c9c565ee9e2fd4d405389be9e9487cf71f951
Reviewed-on: https://skia-review.googlesource.com/43743
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-09-07 20:32:47 +00:00
Brian Salomon
2e50d0f5f9 Make TextureOp use multitexturing to batch draws of different SkImages.
On a benchmark drawing small texture backed images this shows a 50% improvement on a Pixel XL 2016 and a little better than that on a Z840. 

Change-Id: I5c307ef0d8615aeae67bae7393874ad7e52eb233
Reviewed-on: https://skia-review.googlesource.com/42121
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-09-07 20:32:45 +00:00
Chris Dalton
e5ede4b138 Revert "Improve GrPathRendererChain heuristics"
This reverts commit 60f42494f5.

Reason for revert: breaking gold

Original change's description:
> Improve GrPathRendererChain heuristics
> 
> Changes GrPathRenderer::canDrawPath to return a 'CanDrawPath' enum,
> which contains a new kAsBackup value that means "I'm better than SW,
> but give the path renderers below me a chance first."
> 
> Bug: skia:
> Change-Id: I45aac5462ca1bc0bc839eb1c315db9493901a07e
> Reviewed-on: https://skia-review.googlesource.com/42222
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

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

Change-Id: I46020dbd56b6f6b88668894285b9b7b80f89b9a2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/43780
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-09-07 18:33:22 +00:00
Brian Salomon
b3e39f6759 Update mtl backend to use GrSamplerState
Bug: skia:
Change-Id: I9f9469f6c250f80095b9c36539226919fa54c75e
Reviewed-on: https://skia-review.googlesource.com/43740
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-09-07 18:08:46 +00:00
Justin Novosad
1d3df3848f Optimize SkColorSpaceXformCanvas for GPU-acceleration
This change ensures that SkImages are uploaded to the GPU before
applying the xform when the destination canvas is on the GPU. This
makes it possible to get hits in the texture cache and it ensures
that transforms get computed on the GPU.

This fixes a severe performance regression in Chrome that happened
when color correction was enabled.

Associated chromium patch for layout test rebaselines:
https://chromium-review.googlesource.com/c/chromium/src/+/655483

Merge dependency: Merging this change to the M-62 and M-61
branches also requires merging the following change, otherwise
there will be rendering errors:
https://skia-review.googlesource.com/c/skia/+/43562

BUG=chromium:760738

Change-Id: I49fd5ef7968272d311249c3824fe15bee4648b73
Reviewed-on: https://skia-review.googlesource.com/43183
Commit-Queue: Justin Novosad <junov@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
2017-09-07 17:47:51 +00:00
Chris Dalton
60f42494f5 Improve GrPathRendererChain heuristics
Changes GrPathRenderer::canDrawPath to return a 'CanDrawPath' enum,
which contains a new kAsBackup value that means "I'm better than SW,
but give the path renderers below me a chance first."

Bug: skia:
Change-Id: I45aac5462ca1bc0bc839eb1c315db9493901a07e
Reviewed-on: https://skia-review.googlesource.com/42222
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2017-09-07 17:04:51 +00:00
Brian Salomon
2bbdcc44c6 Rework GrSamplerParams to be more compact and use its own wrap mode enum.
The main change is to make GrSamplerParams smaller by making its enums have byte-sized underlying types. The rest is cosmetic.

Change-Id: Ib71ea50612d24619a85e463826c6b8dfb9b445e3
Reviewed-on: https://skia-review.googlesource.com/43200
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-09-07 16:58:31 +00:00
Brian Salomon
4df0092eac Revert "Remove "content" rect from GrTextureAdjuster."
This reverts commit 6e4bbbefe1.

Reason for revert: assertion failure

Original change's description:
> Remove "content" rect from GrTextureAdjuster.
> 
> Since we got rid of texture-backed bitmaps this is no longer required.
> 
> Change-Id: Id15c745994a3d6a1489e193b5d29916fa0931264
> Reviewed-on: https://skia-review.googlesource.com/36340
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

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

Change-Id: I2229ec05079368ff196ff351107f88062080e5ec
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/43720
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-09-07 16:34:22 +00:00
Brian Osman
1e75f2a102 Blacklist more flaky GMs in gltestthreading config
Bug: skia:7011 skia:6544
Change-Id: Idacb5ff8090bea6ddbdef710bc0f4dbb8bd23549
Reviewed-on: https://skia-review.googlesource.com/43560
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-09-07 16:07:01 +00:00
Brian Salomon
6e4bbbefe1 Remove "content" rect from GrTextureAdjuster.
Since we got rid of texture-backed bitmaps this is no longer required.

Change-Id: Id15c745994a3d6a1489e193b5d29916fa0931264
Reviewed-on: https://skia-review.googlesource.com/36340
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-09-07 16:02:51 +00:00