Commit Graph

29753 Commits

Author SHA1 Message Date
Brian Osman
03776fc0d7 Speed up convexpaths GM in debug builds
That GM has a path with 16k points, arranged in a rectangle. When we try
to draw it in Ganesh, we first check to see if it's a (closed) rectangle.
We eventually decide that it is a rectangle, but not closed, so it gets
passed along. Then we construct a GrShape, which tries to simplify the
shape, again asking if it's a rectangle...

Each isRect query was iterating over the 16k verbs, and for each one,
calling atVerb(i). That, internally, calls verbs(), which calls validate()
in debug builds. So we were walking all 16k points 16k times (to ensure
the bounds were correct). The end result is that the GM took over 11
seconds to draw, and now takes 3 ms.

Bug: skia:
Change-Id: If5f7a067b8c25f049dc64275d94a42ae4a50f6a9
Reviewed-on: https://skia-review.googlesource.com/34723
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-08-15 20:29:07 +00:00
Herb Derby
15bb26ec70 Add an average mode for sigma < 2
The original code had an optimization when sigma < 2 that averaged
pixels instead of Gaussian bluring them. This CL adds that
behavior back to the new implementation.

Add the flag SK_LEGACY_USE_GAUSS_FOR_SMALL_RADII to control the
new behavior.

BUG=chromium:745290

Change-Id: I6e7417ce7f42949f88376b549743a9f047667f09
Reviewed-on: https://skia-review.googlesource.com/34624
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-08-15 18:55:59 +00:00
Brian Osman
8d4b56b3f5 Don't emit CRLF when generating code on Windows (from SkSL)
Bug: skia:
Change-Id: I3f3c5f9df43e48f975b09f0bafadf03a15afec51
Reviewed-on: https://skia-review.googlesource.com/34745
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-08-15 18:51:08 +00:00
skia-deps-roller@chromium.org
24a952c4cd Roll skia/third_party/externals/angle2/ 79f7104ab..aadc8f376 (1 commit)
79f7104ab9..aadc8f376a

$ git log 79f7104ab..aadc8f376 --date=short --no-merges --format='%ad %ae %s'

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=bsalomon@google.com

Change-Id: I60d7fb738e5811eeeab23fee53706f0fa10f0f1c
Reviewed-on: https://skia-review.googlesource.com/34662
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-15 17:46:27 +00:00
Kevin Lubick
c14e5a71c0 Add tasks for Acer R13
Bug: skia:
NOTRY=true
Change-Id: Iafc9a00ff2a41919214cdea89251ceb0c5b443c5
Reviewed-on: https://skia-review.googlesource.com/34721
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2017-08-15 17:41:37 +00:00
Ben Wagner
0d2b091c73 Upgrade GT610 drivers.
Bug: skia:6959
Change-Id: I5d89a5bdc8729f3bc7103710744158397a286899
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/34722
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-08-15 17:24:27 +00:00
skia-deps-roller@chromium.org
057981388d Roll skia/third_party/externals/angle2/ 78ed6cd9e..79f7104ab (1 commit)
78ed6cd9ea..79f7104ab9

$ git log 78ed6cd9e..79f7104ab --date=short --no-merges --format='%ad %ae %s'

Created with:
  roll-dep skia/third_party/externals/angle2
BUG=754000


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=bsalomon@google.com

Change-Id: I3a31a134e11ebd57193516c8844ad78502a8ec5f
Reviewed-on: https://skia-review.googlesource.com/34601
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-15 16:11:55 +00:00
Brian Osman
634624a185 Micro optimizations to SkSL parser
Some of these are pretty trivial, but a few really moved the needle. In
total, this cut the time in the parser by about 10% in my profiling.

The early returns from peek and checkNext are probably the biggest wins,
everything else is mostly about cutting down on string copying.

Bug: skia:
Change-Id: I3da0a0cfbc557e8cef480cb3a7d301c2b3f8802a
Reviewed-on: https://skia-review.googlesource.com/34720
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-08-15 15:38:26 +00:00
Herb Derby
4009668cb8 Revert "Revert "Revert "Add an average mode for sigma < 2"""
This reverts commit f6975ea5fb.

Reason for revert:
Did not take into account there are layout test problems too. Adding a legacy flag.

Original change's description:
> Revert "Revert "Add an average mode for sigma < 2""
> 
> We are going to have the google3 auto roller build the CL,
> and add the fixes to the failing tests to that CL. Because
> these are scuba changes, this should be simpler.
> 
> This reverts commit 8e7503195c.
> 
> Reason for revert: <INSERT REASONING HERE>
> 
> Original change's description:
> > Revert "Add an average mode for sigma < 2"
> > 
> > This reverts commit ba8275148a.
> > 
> > Reason for revert: layout tests, Google3 equivalent failing.
> > 
> > Original change's description:
> > > Add an average mode for sigma < 2
> > > 
> > > The original code had an optimization when sigma < 2 that averaged
> > > pixels instead of Gaussian bluring them. This CL adds that
> > > behavior back to the new implementat.
> > > 
> > > BUG=chromium:745290
> > > Change-Id: I35b7de2138a859d546439cc2053b4b599a94ebe1
> > > Reviewed-on: https://skia-review.googlesource.com/34180
> > > Commit-Queue: Herb Derby <herb@google.com>
> > > Reviewed-by: Mike Klein <mtklein@chromium.org>
> > 
> > TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com
> > 
> > Change-Id: Ie8f38b042acec42260913cb7bed5538a2c957e9b
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: chromium:745290
> > Reviewed-on: https://skia-review.googlesource.com/34640
> > Reviewed-by: Mike Klein <mtklein@google.com>
> > Commit-Queue: Mike Klein <mtklein@google.com>
> 
> TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com
> 
> Change-Id: I5f7b706a2f8c8d52b3576c638ecddf12a1652031
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:745290
> Reviewed-on: https://skia-review.googlesource.com/34641
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Herb Derby <herb@google.com>

TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com

Change-Id: I9064f8494e5a1a4a78dd545697e22f52985c0fa1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:745290
Reviewed-on: https://skia-review.googlesource.com/34623
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2017-08-15 15:09:57 +00:00
Herb Derby
f6975ea5fb Revert "Revert "Add an average mode for sigma < 2""
We are going to have the google3 auto roller build the CL,
and add the fixes to the failing tests to that CL. Because
these are scuba changes, this should be simpler.

This reverts commit 8e7503195c.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Add an average mode for sigma < 2"
> 
> This reverts commit ba8275148a.
> 
> Reason for revert: layout tests, Google3 equivalent failing.
> 
> Original change's description:
> > Add an average mode for sigma < 2
> > 
> > The original code had an optimization when sigma < 2 that averaged
> > pixels instead of Gaussian bluring them. This CL adds that
> > behavior back to the new implementat.
> > 
> > BUG=chromium:745290
> > Change-Id: I35b7de2138a859d546439cc2053b4b599a94ebe1
> > Reviewed-on: https://skia-review.googlesource.com/34180
> > Commit-Queue: Herb Derby <herb@google.com>
> > Reviewed-by: Mike Klein <mtklein@chromium.org>
> 
> TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com
> 
> Change-Id: Ie8f38b042acec42260913cb7bed5538a2c957e9b
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:745290
> Reviewed-on: https://skia-review.googlesource.com/34640
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com

Change-Id: I5f7b706a2f8c8d52b3576c638ecddf12a1652031
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:745290
Reviewed-on: https://skia-review.googlesource.com/34641
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2017-08-15 15:00:17 +00:00
Brian Osman
72a37bed66 Fix string typing in generated code
Bug: skia:
Change-Id: Ifbccc6d6880522177ac7a0ae2183be64a3ebfe50
Reviewed-on: https://skia-review.googlesource.com/34681
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2017-08-15 13:41:26 +00:00
Mike Klein
5b117eafdf rename confusing lowp guard
Change-Id: I346429015e5f902b0a35663e140bb9a025c4220e
Reviewed-on: https://skia-review.googlesource.com/34680
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-08-15 13:19:36 +00:00
Mike Klein
8e7503195c Revert "Add an average mode for sigma < 2"
This reverts commit ba8275148a.

Reason for revert: layout tests, Google3 equivalent failing.

Original change's description:
> Add an average mode for sigma < 2
> 
> The original code had an optimization when sigma < 2 that averaged
> pixels instead of Gaussian bluring them. This CL adds that
> behavior back to the new implementat.
> 
> BUG=chromium:745290
> Change-Id: I35b7de2138a859d546439cc2053b4b599a94ebe1
> Reviewed-on: https://skia-review.googlesource.com/34180
> Commit-Queue: Herb Derby <herb@google.com>
> Reviewed-by: Mike Klein <mtklein@chromium.org>

TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com

Change-Id: Ie8f38b042acec42260913cb7bed5538a2c957e9b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:745290
Reviewed-on: https://skia-review.googlesource.com/34640
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-08-15 12:47:27 +00:00
Kevin Lubick
b40902b6b8 Add upload to task name schema file
Bug: skia:
Change-Id: I65cd5761bb01e648db706878b902e6b6ed67fab9
Reviewed-on: https://skia-review.googlesource.com/33761
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2017-08-15 11:58:25 +00:00
skia-deps-roller@chromium.org
68d1879c90 Roll skia/third_party/externals/angle2/ d93cd6c23..78ed6cd9e (1 commit)
d93cd6c23c..78ed6cd9ea

$ git log d93cd6c23..78ed6cd9e --date=short --no-merges --format='%ad %ae %s'

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=bsalomon@google.com

Change-Id: Idc2efb543ece0e1c371081f7fd5bb52307d8cf7a
Reviewed-on: https://skia-review.googlesource.com/34580
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-15 09:45:05 +00:00
skia-deps-roller@chromium.org
3d10e38645 Roll skia/third_party/externals/angle2/ d7487b135..d93cd6c23 (1 commit)
d7487b1359..d93cd6c23c

$ git log d7487b135..d93cd6c23 --date=short --no-merges --format='%ad %ae %s'

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=bsalomon@google.com

Change-Id: I964370cc17961dfec6c75951fb343b1b2ef92848
Reviewed-on: https://skia-review.googlesource.com/34342
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-14 22:44:55 +00:00
Florin Malita
5bfc85a8b3 Lowp overlay, hardlight stages
Before:

    micros   	bench
   7669.09 ?	blendmode_rect_HardLight	8888
   8707.13 ?	blendmode_rect_Overlay	8888


After:

    micros   	bench
   6679.60 ?	blendmode_rect_HardLight	8888
   6789.57 ?	blendmode_rect_Overlay	8888

Change-Id: I52f389253fa07dafe18e572af550af7387264a16
Reviewed-on: https://skia-review.googlesource.com/34280
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-08-14 21:31:25 +00:00
Brian Osman
93ba0a4fc8 Switch SkSL to std::string
On desktop, this saves just over 5% of the time in the SkSL compiler.

As written, the code will now build either way, so it's much easier to
switch back (or even have some platforms use SkString, if that's ever
required).

Bug: skia:
Change-Id: I634f26a4f6fcb404e59bda6a5c6a21a9c6d73c0b
Reviewed-on: https://skia-review.googlesource.com/34381
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-08-14 21:24:55 +00:00
Herb Derby
ba8275148a Add an average mode for sigma < 2
The original code had an optimization when sigma < 2 that averaged
pixels instead of Gaussian bluring them. This CL adds that
behavior back to the new implementat.

BUG=chromium:745290
Change-Id: I35b7de2138a859d546439cc2053b4b599a94ebe1
Reviewed-on: https://skia-review.googlesource.com/34180
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-08-14 20:20:55 +00:00
skia-deps-roller@chromium.org
61d1378857 Roll skia/third_party/externals/angle2/ 9b11ea4f2..d7487b135 (1 commit)
9b11ea4f2d..d7487b1359

$ git log 9b11ea4f2..d7487b135 --date=short --no-merges --format='%ad %ae %s'

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=bsalomon@google.com

Change-Id: I86dc1355753c42f93b4819c66d2a9cfb78d1db67
Reviewed-on: https://skia-review.googlesource.com/34340
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-14 20:08:55 +00:00
Ben Wagner
2c600fb216 Upgrade NVIDIA drivers on Linux bots.
Bug: skia:6959
No-Try: true
Change-Id: I849645dc5043a181bcdf3a1bb84cbd989684a7d7
Reviewed-on: https://skia-review.googlesource.com/34400
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-08-14 19:55:45 +00:00
Ben Wagner
aee878d767 Move lang to list in Android font manager.
Change-Id: Ia4af2769f4761e6b444ed0c232c48199872f3acc
Reviewed-on: https://skia-review.googlesource.com/33480
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-08-14 19:29:05 +00:00
Herb Derby
df33fefe14 Test blur small radii and text.
BUG=chromium:745290

Change-Id: I78cabf988115598e14a7ce39faf96e3a697a1a8f
Reviewed-on: https://skia-review.googlesource.com/34382
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-08-14 19:16:55 +00:00
Robert Phillips
ddfd2a6627 Use kLow_SkFilterQuality in generateGlyphImage
This reduces jank when flinging a page of emoji on Android (I have separately shared out a spreadsheet). Arguably, the quality loss should be acceptable since we shouldn't be down-scaling that much (magnitude-wise not frequency-wise). Ideally, we would add a raster mode where we would draw at the correct size w/o generating the mip maps.

Change-Id: Id91d638db1b2457567e54c264ed3fa5d10316976
Reviewed-on: https://skia-review.googlesource.com/33763
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-08-14 17:39:04 +00:00
Mike Klein
17e33cc7b0 we never define BLEND_MODE
Change-Id: I88f3e56971e9844ab2ff74edb0718e6b6e9c6559
Reviewed-on: https://skia-review.googlesource.com/34260
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-08-14 16:58:04 +00:00
Ethan Nicholas
08b79b73a0 reduced number of string copies in SkSL parser
Bug: skia:
Change-Id: Iab823b01b6f5f85bbb47c4ac69c6ce396dabf497
Reviewed-on: https://skia-review.googlesource.com/34000
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-08-14 16:19:44 +00:00
skia-deps-roller@chromium.org
10d4244e0a Roll skia/third_party/externals/angle2/ 0d671c9a7..9b11ea4f2 (1 commit)
0d671c9a77..9b11ea4f2d

$ git log 0d671c9a7..9b11ea4f2 --date=short --no-merges --format='%ad %ae %s'

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=bsalomon@google.com

Change-Id: Id1fd4041ce03d96bf0a4bff304bc2c6cabeb3fa4
Reviewed-on: https://skia-review.googlesource.com/33943
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-14 16:06:35 +00:00
Mike Klein
7cc49d65fc Record SkCanvas::flush().
We can record multiple frames in an .skp by recording SkCanvas::flush().
This should make SkPictures, SkLiteDL, and .skp files all record flush().

Change-Id: I6cf6e0e4ef993530d9f92fa168a53702ffce7d5e
Reviewed-on: https://skia-review.googlesource.com/34081
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-08-14 15:29:05 +00:00
Brian Osman
0db0779199 Fix tracing macros for framework builds
Bug: skia:
Change-Id: Ia5c27af2c8dafd5d6f2171fa82f435dbfdebd346
Reviewed-on: https://skia-review.googlesource.com/33760
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-08-14 15:12:05 +00:00
Ben Wagner
769faa2456 Run perf tests on glsrgb and glessrgb configs.
No-Try: true
Change-Id: I41dfddf21f8ed80582d5dc88150e1fbaf98326e6
Reviewed-on: https://skia-review.googlesource.com/33803
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-08-14 14:33:25 +00:00
Ben Wagner
f28d472bc5 Fix dm when --config not specified.
Broken by https://skia-review.googlesource.com/c/32862.

Change-Id: I711057da08793902b50e98b67af9107ac9ead8d2
Reviewed-on: https://skia-review.googlesource.com/33663
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-08-14 14:27:25 +00:00
Mike Klein
228f761111 Simplify difference and exclusion.
We can fold through some math in these two modes.

$ out/ok bench:samples=100 rp filter:search="Difference|Exclusion" serial

Before:
    [blendmode_rect_Exclusion]  4.94ms  @0  6.13ms  @99 6.25ms  @100
    [blendmode_mask_Exclusion]  10.9ms  @0  12.8ms  @99 12.9ms  @100
    [blendmode_rect_Difference] 5.56ms  @0  6.79ms  @99 6.8ms   @100
    [blendmode_mask_Difference] 11.4ms  @0  13.8ms  @99 14.1ms  @100

After:
    [blendmode_rect_Exclusion]  3.5ms   @0  4.12ms  @99 4.59ms  @100
    [blendmode_mask_Exclusion]  9.27ms  @0  11.2ms  @99 11.6ms  @100
    [blendmode_rect_Difference] 5.37ms  @0  6.58ms  @99 6.6ms   @100
    [blendmode_mask_Difference] 11ms    @0  12.1ms  @99 12.6ms  @100

Change-Id: I03f32368244d4f979cfee83723fd78dfbc7d5fc1
Reviewed-on: https://skia-review.googlesource.com/33980
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2017-08-14 14:22:46 +00:00
skia-deps-roller@chromium.org
d0803a4e1d Roll skia/third_party/externals/angle2/ 82ef774b7..0d671c9a7 (1 commit)
82ef774b73..0d671c9a77

$ git log 82ef774b7..0d671c9a7 --date=short --no-merges --format='%ad %ae %s'

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=bsalomon@google.com

Change-Id: I7c8ca2e75114fa0c26d673fc3e7908e05c96d97b
Reviewed-on: https://skia-review.googlesource.com/33942
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-14 12:25:58 +00:00
skia-deps-roller@chromium.org
a9b9e02f34 Roll skia/third_party/externals/angle2/ 5116d6875..82ef774b7 (1 commit)
5116d68759..82ef774b73

$ git log 5116d6875..82ef774b7 --date=short --no-merges --format='%ad %ae %s'

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=bsalomon@google.com

Change-Id: Ie22d59d30e07077f28aaf75c3ab1cc095979a6f6
Reviewed-on: https://skia-review.googlesource.com/33543
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-14 10:13:18 +00:00
Florin Malita
8ae12751f0 lowp: lighten, difference, exclusion
Change-Id: I5773cf831c7e41a932bee1f2c6830085fb7db025
Reviewed-on: https://skia-review.googlesource.com/33764
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-08-14 00:00:58 +00:00
UpdateSKPs
215922a1f1 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: If399ed5d4ca9947621b22fcea3e134d83b1d4831
Reviewed-on: https://skia-review.googlesource.com/33920
Commit-Queue: update-skps <update-skps@skia.org>
Reviewed-by: update-skps <update-skps@skia.org>
2017-08-13 07:39:58 +00:00
skia-deps-roller@chromium.org
13544dffb9 Roll skia/third_party/externals/angle2/ 936ea3250..5116d6875 (1 commit)
936ea32506..5116d68759

$ git log 936ea3250..5116d6875 --date=short --no-merges --format='%ad %ae %s'

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=bungeman@google.com

Change-Id: If643d95f447edb4d683cfd7122850c9c4860a3ae
Reviewed-on: https://skia-review.googlesource.com/33606
Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org>
Reviewed-by: Skia Deps Roller <skia-deps-roller@chromium.org>
2017-08-11 23:36:07 +00:00
Florin Malita
1c293c083d Guard lowp changes
Chromium uses the lowp code, we have to stage the changes.

TBR=
Change-Id: I45e97a51eca285c9afc71926bbf736a03d0d146c
Reviewed-on: https://skia-review.googlesource.com/33765
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-08-11 22:59:56 +00:00
Florin Malita
0bf0bc65e2 Lowp darken stage
Change-Id: I4bf618ad8728541fcef3fc1c6aa5b3ca106d50dc
Reviewed-on: https://skia-review.googlesource.com/33583
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-08-11 21:13:37 +00:00
Yuqian Li
6ad3ffeed1 Guard AA change to wait for rebaselines
We use SK_SUPPORT_LEGACY_DELTA_AA to guard the golden image change.
Such flag is defined for Android, Chrome, and Google3 so our auto-rollers
should all be OK.

TBR: bungeman@google.com

Bug: skia:6947
Change-Id: Ic2705e82f4f7f15ec08499254dce75b93d41727e
Reviewed-on: https://skia-review.googlesource.com/33762
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2017-08-11 21:12:37 +00:00
Ben Wagner
be8ad45fc2 Omit failing test for IntelIris640 Ubuntu Vulkan.
Bug: skia:6245
Change-Id: Id5e0704f51537abf4ed2794d67ab8424a725e1bc
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/33801
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-08-11 20:28:16 +00:00
Derek Sollenberger
dbb9e3682e Avoid converting drawImage/drawImageRect into drawBitmap calls
Change-Id: I1ae551afa93222126852bb9e429a565379a93f24
Reviewed-on: https://skia-review.googlesource.com/33661
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2017-08-11 20:14:10 +00:00
Brian Salomon
528751873a Remove CHECK_SHOULD_DRAW from SkGpuDevice
Change-Id: Ieb3910e2085235c62374d3e30d1ce6b9089de567
Reviewed-on: https://skia-review.googlesource.com/33780
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-08-11 19:50:36 +00:00
Herb Derby
35ae65d5d0 SkSafeMath for tracking size_t overflow
Do multiply (mul) and add while tracking that the
calculation does not overflow, which can be checked with
ok().

The new unit test shows a couple examples.

Author:  Herb Derby <herb@google.com>
Change-Id: I7e67671d2488d67f21d47d9618736a6bae8f23c3
Reviewed-on: https://skia-review.googlesource.com/33721
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Herb Derby <herb@google.com>
2017-08-11 19:23:06 +00:00
Yuqian Li
4a31c46006 Don't store clipped x which could break edge order
We only need to clip a temporary x to ensure that we don't blit
beyond clip. Storing such clipped x is problematic because it
may make our edges unsorted.

The added unit test would fail without this fix.

Bug: skia:6947
Change-Id: I6c21d7c7c097e50fef18ab151921d6c07c089318
Reviewed-on: https://skia-review.googlesource.com/33420
Commit-Queue: Yuqian Li <liyuqian@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2017-08-11 19:05:56 +00:00
Mike Klein
6dda584128 remove monobench
I'm betting big on ok bench.  This is a forcing function.

Change-Id: I8c359b7d712e16f8f0cbb90591801e0014073288
Reviewed-on: https://skia-review.googlesource.com/33660
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-08-11 19:02:56 +00:00
Ben Wagner
fef8fdde87 Add new Linux IntelIris640 jobs.
Bug: skia:6761
Change-Id: I635958a482a16fc7027d33152db431cb8c5bbe2c
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/33740
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-08-11 18:58:06 +00:00
Mike Klein
c10850f4e7 remove mask load() and store()
They appear to be slower than the generic load() and store() now.

    [blendmode_mask_Hue]    14.7ms  @0  15.6ms  @95 39.6ms  @100
    [blendmode_rect_Hue]    31.5ms  @0  37.6ms  @95 39.5ms  @100
    ~~>
    [blendmode_mask_Hue]    14.7ms  @0  15.2ms  @95 39.5ms  @100
    [blendmode_rect_Hue]    30.5ms  @0  32.6ms  @95 37.8ms  @100

Change-Id: I674b75087b8139debead71f3016631bcb0cb0047
Reviewed-on: https://skia-review.googlesource.com/33800
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-08-11 18:52:36 +00:00
Brian Osman
6382f455f0 Replace log2 with SkNextLog2
log2 didn't exist on Android until API 18, and it's doing double
precision math. I think this integer version is what we want?

Bug: skia:
Change-Id: I4909153c56a266688355349cda5d553b69f5c942
Reviewed-on: https://skia-review.googlesource.com/33680
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-08-11 18:05:26 +00:00
Mike Klein
a1d1703b74 double pump 8-bit stages
This basically unrolls all loops, handling twice as many pixels in a
stride.  We now pass around 4 native registers instead of just 2.

I've temporarily disabled AVX2 mask loads and stores.  It shouldn't be
hard to turn them back on, but I'd want to test on AVX2 hardware first.

Change-Id: I0907070f086a0650167456c149a479c1d96b8a2d
Reviewed-on: https://skia-review.googlesource.com/33361
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-08-11 16:52:06 +00:00