Commit Graph

42028 Commits

Author SHA1 Message Date
recipe-roller
95a6f95040 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/54434e7e1dabdc79232c3eeca06c44e5c0aabab9 Ignore git submodules when calculating dirty files. (eliribble@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I762dd9318b759468ec533fee57f830754911ce8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215780
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-05-24 01:29:23 +00:00
recipe-roller
f68f1f82bf 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/a541b28d4eba269fa7a4d3427ba9e04057053415 Add 'X in tuple()' support to gclient conditionals. (bpastene@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8da540748e0a07c0660fb34a34201f719d647714
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215740
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-05-24 00:57:34 +00:00
recipe-roller
d6ac1d108a 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/f4b41ab0783dba26b58eb476fe13c3feb20c7e79 Move Step and Command to non-internal file for post-process inputs. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icc31ba026444a85aca015cb3a31ea516732ae26b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215720
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-05-23 22:49:47 +00:00
recipe-roller
bef05a6dbc 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/96bcf6aaa92a254a19c1120b446dd6b35e8dc902 Revert gevent from recipe engine for now. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I9a600cbb4b594137e26fca7496471a3b1085a3d7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215683
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-05-23 21:51:40 +00:00
Brian Salomon
ce2e4aafcc Disable two new tests on two bots while errors investigated
Bug: skia:9124
Bug: skia:9123
Change-Id: Ia996d111f3fda64e6885c0c3f47dd56580a1a64d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215642
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2019-05-23 21:38:56 +00:00
Brian Osman
3e833e138a Interpreter: Disassemble during execution when TRACE is enabled
Change-Id: If06c377c7653eaa75b84bdfef49705b17eda98c8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215616
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2019-05-23 20:52:41 +00:00
Brian Osman
07c117b6f8 Support larger compound types in the interpreter
Field access and array indexing are supported, including
dynamic indices. Larger types (> 4 slots) can be used as
lvalues, rvalues, etc.

Change-Id: I9bb4ed850be4259c05c8952c6c0a17b71f813772
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214443
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2019-05-23 20:19:30 +00:00
Jim Van Verth
bd83231a3a Remove Metal Perf bot from MacBook Air
Change-Id: I273baef020e1502f462af2419a57a7a00dc0e6a9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215680
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-05-23 20:06:30 +00:00
Ben Wagner
a541db4dca Add test of char to glyph round tripping.
This also tries to work around some surprising behavior on macOS, which
may cause attributing space glyphs to character 9 instead of 32.

This also updates the gdi character to glyph mapping for non BMP
characters on Windows 10. This forces all uniscribe script analysis to
simple to get just the default cmap mapping without shaping.

Change-Id: Id93a2de6de27ab61fbf034f5087e93e4c7e839ba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215431
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-05-23 20:05:40 +00:00
Mike Reed
6a5f7e29a8 split RGB into YUV planes
Change-Id: Ifd1d010068691e187561a25aff45d8b67ae62c39
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215442
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-05-23 19:57:30 +00:00
Florin Malita
e85067f29d [skottie] Clamp seek() to the valid frame range
AE's valid frame range for a given composition/layer is
[inPoint,outPoint).  That is, a given object is not active at outPoint.

https://skia-review.googlesource.com/c/skia/+/215432 started enforcing
this for layers, but the side effect is seek(1) now produces blank
frames.

This CL pins t in the [inPoint,outPoint) interval, to guarantee a valid
frame.

Change-Id: I6e0001f284b85fe733e30469a7a7947818c1e07e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215681
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-05-23 19:53:50 +00:00
recipe-roller
7e8cce1d9d 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/812fc275e67c06d6fd5c3f9ee52ed145555e3bd0 Add gevent to recipe engine. (iannucci@chromium.org)
  https://crrev.com/318a18a4f0481d5eac3ed195b241867dc2749298 Fix accidental regression due to rebase flub. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1f98bbd19d324143c99b23f29bee42e2e6c904a7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215618
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Reviewed-by: Robbie Iannucci <iannucci@google.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-05-23 19:32:50 +00:00
Isabel Ren
87224bbed6 Active layer excludes outPoint
Exported AE layers outPoint is exclusive

Change-Id: Ie53954ef8df3938e13f2241b649429775553aa59
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215432
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-05-23 18:58:49 +00:00
Khushal
be132c2004 remote fonts: Also send empty paths so they don't count in cache misses.
R=herb@google.com

Bug: 960981
Change-Id: Ib2aada3bbb6d62fcc25498a3ba09a5b787c583a6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215611
Auto-Submit: Khushal Sagar <khushalsagar@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Khushal Sagar <khushalsagar@chromium.org>
2019-05-23 18:57:11 +00:00
Michael Ludwig
41f395d445 Reland "Track quad type on GrQuad directly"
This reverts commit 0dee19bacc.

Reason for revert: properly remember src quad type

Original change's description:
> Revert "Track quad type on GrQuad directly"
>
> This reverts commit 85766c4cd3.
>
> Reason for revert: red - so much red
>
> Original change's description:
> > Track quad type on GrQuad directly
> >
> > This makes subsequent higher-level drawing APIs more compact, and
> > shouldn't come with a performance hit. Everywhere we used to need
> > a GrPerspQuad, we'd also take the GrQuadType as a second argument.
> > The quad list types already deconstruct the quad so there's no
> > extra overhead in the op's memory usage.
> >
> > It also improves usability and decreases the likelihood that an
> > incorrect quad type is ever associated with the quad.
> >
> > Bug: skia:
> > Change-Id: Iba908fb133ad664744a5788a7088d90de0d3a1c2
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214820
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
>
> TBR=bsalomon@google.com,robertphillips@google.com,michaelludwig@google.com
>
> Change-Id: Ied594673116fb901287b334fea41da3c71494fb1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215607
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: Id5fb51218f2ace37086112caa2e43461d2f2b46b
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215640
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-05-23 18:51:11 +00:00
Brian Salomon
9456f7aba5 Allow swapping out of GrBackendTexture used by SkSurface
Change-Id: I67f26efaee87536f3faf51ca164bf003013c7c8a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215428
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-05-23 18:38:28 +00:00
Herb Derby
ea41c7b4b4 Get bulk advances for SkPDFDevice::internalDrawGlyphRun
Change-Id: Ief7150c5036d0d83c66e7eced76d0e8720170056
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215427
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-23 18:10:54 +00:00
Brian Salomon
031b0babeb Add GPU implementation of rescaling for SkSurface::asyncRescaleAndRead.
The only new capability added is bicubic downscaling but this opens up
more possibilities to add specializations to reduce passes in the GPU
implementation.

Bug: skia:8962
Change-Id: I4ff2e89b24df9dc15988d31ed10a3316b018e583
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215445
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-05-23 17:55:28 +00:00
Robert Phillips
0dee19bacc Revert "Track quad type on GrQuad directly"
This reverts commit 85766c4cd3.

Reason for revert: red - so much red

Original change's description:
> Track quad type on GrQuad directly
> 
> This makes subsequent higher-level drawing APIs more compact, and
> shouldn't come with a performance hit. Everywhere we used to need
> a GrPerspQuad, we'd also take the GrQuadType as a second argument.
> The quad list types already deconstruct the quad so there's no
> extra overhead in the op's memory usage.
> 
> It also improves usability and decreases the likelihood that an
> incorrect quad type is ever associated with the quad.
> 
> Bug: skia:
> Change-Id: Iba908fb133ad664744a5788a7088d90de0d3a1c2
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214820
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

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

Change-Id: Ied594673116fb901287b334fea41da3c71494fb1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215607
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-23 17:22:29 +00:00
Herb Derby
2b35b7db51 Start using strike specs in PDF.
Change-Id: I2a5ee882a8fadcfc183db5484ab76ed540aff184
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215426
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
2019-05-23 17:18:55 +00:00
Michael Ludwig
85766c4cd3 Track quad type on GrQuad directly
This makes subsequent higher-level drawing APIs more compact, and
shouldn't come with a performance hit. Everywhere we used to need
a GrPerspQuad, we'd also take the GrQuadType as a second argument.
The quad list types already deconstruct the quad so there's no
extra overhead in the op's memory usage.

It also improves usability and decreases the likelihood that an
incorrect quad type is ever associated with the quad.

Bug: skia:
Change-Id: Iba908fb133ad664744a5788a7088d90de0d3a1c2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214820
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-05-23 16:52:55 +00:00
Robert Phillips
459b295bed Expand backend allocation API to allow an initialization color (only for GL to start)
Change-Id: I8e676e80f85f14c81c3cec8d766d0fdc7e25f426
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214445
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-23 15:11:04 +00:00
Ethan Nicholas
93d3753092 Reland "remove unused functions in sksl.inc"
This is a reland of 76ba2fb0a6

Original change's description:
> remove unused functions in sksl.inc
> 
> Bug: skia:
> Change-Id: I8f791324bbde13d51c7be2b85ee5d5fadb938e5e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215423
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
> Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>

Bug: skia:
Change-Id: Iae5bd25db46796e8075b987a17f99f4a14513773
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215601
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-05-23 14:53:08 +00:00
Brian Osman
c51d791ab9 Interpreter: Fix scalar -> vector constructors
We were never replicating scalar values when constructing vector types
from a single argument.

Change-Id: I5bdeeb91f5a10c151b18561de6c275f2db2898fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215526
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
2019-05-23 14:51:58 +00:00
Greg Daniel
acd66b4946 Remove viewport from GrGLRenderTarget.
Change-Id: Id69d8dbe60a38dda2c4c14b02ddeebf230f9299a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215522
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-05-23 13:27:28 +00:00
skia-autoroll
550868a2b2 Roll third_party/externals/angle2 fb8e1b25ad71..8224a58b4749 (5 commits)
fb8e1b25ad..8224a58b47


git log fb8e1b25ad71..8224a58b4749 --date=short --no-merges --format='%ad %ae %s'
2019-05-22 aleino@nvidia.com Normalize fragment color in Texture2DIntegerTestES3
2019-05-22 spang@chromium.org Implement resource management for GL_EXT_semaphore
2019-05-22 spang@chromium.org Add packed enum for GL_EXT_semaphore image layouts
2019-05-22 aleino@nvidia.com Fix integer cube map sample HLSL calculation
2019-05-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 47741f05043a..d9c00e1d2de1 (5 commits)


Created with:
  gclient setdep -r third_party/externals/angle2@8224a58b4749

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=csmartdalton@google.com

Change-Id: I1ec482ada463f13f9bf63cbecc25205f1da1f0a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215576
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-05-23 05:38:59 +00:00
skia-autoroll
9e74c8441f Roll ../src aacbdfe80aea..a410b6988151 (444 commits)
aacbdfe80a..a410b69881


Created with:
  gclient setdep -r ../src@a410b69881

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

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

Change-Id: I2ae3433b8d67564951ef847347342777c24fa5d8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215577
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-05-23 05:12:39 +00:00
skia-autoroll
734bddb03e Roll third_party/externals/swiftshader f4d2a446cc12..cae8cde7fa65 (12 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/f4d2a446cc12..cae8cde7fa65


git log f4d2a446cc12..cae8cde7fa65 --date=short --no-merges --format='%ad %ae %s'
2019-05-22 hliatis@google.com Add missing semi-colon in Android code
2019-05-22 bclayton@google.com SpirvShader: Use an atomic instead of a volatile int for serialCounter
2019-05-22 bclayton@google.com Reactor: Fix printing of strings with escape characters
2019-05-22 bclayton@google.com Renderer: Fix deadlock when calling Renderer::draw() with a count of 0.
2019-05-22 bclayton@google.com Simplify sw::Chan
2019-05-22 bclayton@google.com Move Chan out of VkQueue.hpp and into System/Synchronization.hpp
2019-05-22 amaiorano@google.com Make REACTOR_EMIT_DEBUG_INFO work on Windows and add "print on emit" support
2019-05-22 amaiorano@google.com Add minimal boost install for boost::backtrace
2019-05-22 chrisforbes@google.com Also return extension function pointers from GIPA
2019-05-22 sugoi@google.com Only expose device extension functions that are enabled
2019-05-22 swiftshader.regress@gmail.com Regres: Update test lists @ f4d2a446
2019-05-22 capn@google.com Fix typo in Vector lerp()


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

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

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

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=csmartdalton@google.com

Change-Id: Ic73205db45deb70f4f36788bcf134df493f75ff6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215575
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-05-23 04:32:19 +00:00
Brian Osman
e85b6a54b6 Interpreter: Tweak tracing output
Instruction addresses became wrong when we switched to 16-bit. Printing
floats with %g makes the stack dumps typically much shorter.

Change-Id: Ie3d13729ff478f5d0c73015be0e29c14f49ecf51
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215523
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-05-23 01:40:54 +00:00
recipe-roller
8f874af982 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/71751d787ce1cce2996836a9af823cf961638ccf Fix test runner so it adapts to the terminal width. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic99f209e8c905be5252884d8205bc42226f013f0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215530
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-05-23 00:20:32 +00:00
Chris Dalton
4201eb1126 Revert "remove unused functions in sksl.inc"
This reverts commit 76ba2fb0a6.

Reason for revert: "mix" was used by CCPR

Original change's description:
> remove unused functions in sksl.inc
> 
> Bug: skia:
> Change-Id: I8f791324bbde13d51c7be2b85ee5d5fadb938e5e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215423
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
> Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>

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

Change-Id: I68f809db99e9af68de322c4fd5b94b4a7ea4700f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215532
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-05-23 00:19:43 +00:00
recipe-roller
c826dd1731 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/2e0f8a6ee99d812e17a4b560d400e85235dd5b4e Switch from scroll to floppy disk. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I33d67fa97244af4ef72a5bedef1e7eecb82d7961
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215529
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-05-22 23:40:03 +00:00
recipe-roller
47f6fc90c9 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/d4e20baf1800a735f3ac6d42fdb118dac7af9f3e Implement new test runner. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id90d3e778d6d37d16e27bf25588970d6b99e1c21
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215482
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-05-22 23:11:53 +00:00
recipe-roller
9339a8a61a 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/fabc042a04faa20d56ca4a82425037e7f894d715 Refine check for `self` in magic_check_fn. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic48a66e758aed112e2acace3478b69a90752de6c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215524
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-05-22 22:21:33 +00:00
Ben Wagner
965de68dd7 Remove SkTextEncoding and SkFontHinting macros.
It appears all known users have been mirgrated to the new enums.

Change-Id: Id64083c18bf8aa5f2ec935c80af3babebad90a2d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215459
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-05-22 20:44:28 +00:00
Robert Phillips
08ba085253 Revert "De-GL-ify tests, gm and tools"
This reverts commit 89fb346d2b.

Reason for revert: Google3 failure

Original change's description:
> De-GL-ify tests, gm and tools
> 
> Change-Id: Id15a3a4b2c8b80b9dc7ecdab1cf1af1f9282f442
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215447
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: I155b033ac48d9fea15f66b22a090fb34f3bb81fa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215521
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-22 20:23:56 +00:00
recipe-roller
cdd8d3f0cc 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/cdb318f1f461a292c8b4b20b738433108419c88f Fix timeout bug in subproc runner. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: If360a1073ec7c0b186ae8ccb7bf01241f96d07cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215520
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-05-22 20:02:38 +00:00
Herb Derby
b98fc51dff Use bulk advances in SkFont
Change-Id: I0a846baa2c82deef46583d2e67d862f65465a95f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215099
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-22 19:47:08 +00:00
Robert Phillips
89fb346d2b De-GL-ify tests, gm and tools
Change-Id: Id15a3a4b2c8b80b9dc7ecdab1cf1af1f9282f442
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215447
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-05-22 19:24:17 +00:00
Jim Van Verth
40479ae5b0 Add new Metal bots
Bug: skia:8243
Change-Id: I660ccd8aa17c2c6575f006d2e07a4b904e636935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215451
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-05-22 19:23:58 +00:00
Herb Derby
f084bb1310 Check for SDF or ARGB in SDF case.
The SDF case in painter assumes that glyphs will only
have formats of SDF or ARGB (or be empty).

Change-Id: I5fe1d6f017bd639163c4c3f0582d7f84a6455f51
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215454
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-22 19:16:18 +00:00
Ethan Nicholas
76ba2fb0a6 remove unused functions in sksl.inc
Bug: skia:
Change-Id: I8f791324bbde13d51c7be2b85ee5d5fadb938e5e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215423
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-05-22 18:36:51 +00:00
recipe-roller
0cfdf7fd4c 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/c923df1b4ecf75345768d71a09e0ce17fd21c9aa Autoformat recipes.py with yapf chromium style (olivernewman@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie3ac5d67b4b1f060d3721100f742dec8fb87deb0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215449
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-05-22 17:57:25 +00:00
Hal Canary
db5863c24c SkMatrix: get rid of AggregateMatrix
Change-Id: I9bb7b1f0f238937b59539d1b60e0f9b106498201
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215444
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-05-22 17:48:04 +00:00
Herb Derby
e384a1ed7f Reland "Make SkRemoteGlyphCache obey the prepareForDrawing contract"
This is a reland of 4e045301f1

Original change's description:
> Make SkRemoteGlyphCache obey the prepareForDrawing contract
>
> Change-Id: I3f781b8d72f460edb73c5b3d446676db19a4a935
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215090
> Commit-Queue: Herb Derby <herb@google.com>
> Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>

Change-Id: Ia1e8f09c8969a83cf9281936931b795efbaf5dc3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215168
Commit-Queue: Khushal Sagar <khushalsagar@chromium.org>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
2019-05-22 16:47:19 +00:00
Mike Klein
f77dbd04b9 remove -ffp-contract
We don't set it in Chrome, so this'll make our local bots a little more
consistent with what we see in Chrome.  Very, very minor stuff.

Bug: skia:9103
Change-Id: Iecedd367780b6a721bc49dfa2d0a7837eb3bd28d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215144
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-05-22 16:29:09 +00:00
Stephen White
c4dbc3758f GrTessellator: improved straight skeleton implementation.
This patch improves the straight skeleton implementation used by
GrTessellator to collapse overlap regions in the alpha gradient border.
The resulting quality improvement can be seen in the
"thinconcavepaths" GM, for example, where the coverage values of
the "thin right angle", "thin rect and triangle" and "skinny snake"
are now lower and match the raster backend more closely. It also improves
correctness, such as on the linked Chromium bugs below.

Previously, the straight skeleton was performed using the same Vertex
and Edge classes used for tessellation, but this led to fragility in
maintaining the connectivity and ordering required by those classes.
Instead, that functionality has been moved to new SSEdge and SSVertex
classes. Their construction results in alternating SSVertex and
SSEdges around the boundary of the each overlap region, shrunk by one
SSEdge as the boundary collapses.

Applying events may now also create further events (chained events),
as intersections between newly-adjacent bisectors change the structure
of the skeleton. This is always calculated from the bisectors of
original boundary, not the shrunk boundary of the straight skeleton,
which is why each SSEdge points at its originating Edge. If the edges
are parallel or near-parallel, the bisector may be infinite. This is
handled by a new flavour of create_event(), which does a Line/Line
intersection (rather than an Edge/Edge intersection) to find the
intersection between the infinite bisector and an adjacent bisector.

Several ancillary bugs were fixed: the priority queue used to represent
edge events was sorting the inner edges incorrectly. These need to be
sorted in descending not ascending order of coverage. Its implementation
was moved from Skia's TDPQueue to std::priority_queue(), which is more
flexible in specifying a comparator.

check_for_intersection()'s partner synthesis code was moved into a new
function, compute_bisector(), also used by the chained skeleton events
code.

Degenerate edges are now removed during the simplify_boundary() pass.
They were previously detected but ignored, causing incorrect inner and
outer tangents to be computed in stroke_boundary().

An fSynthetic flag was added to Vertex, in order to detect vertices
which cannot be moved by an edge collapse event (e.g., intersections
with non-boundary edges, merged vertices, straight skeleton vertices).

More raw implementation notes:
Connect straight skeleton vertices as we find them, so we don't
have to use partnering (ss_connect()).
Only disconnect edges which are still alive after event application.
Add a check for near-parallel lines in compute_bisector().
Don't use edge type to determine direction to offset for bisectors.
The winding should already include this information.
Move Event ownership to SSEdge.
If we're down to the last two edges in a skeleton, don't check for events.
Add concave_arc_and_circle GM.
Add a collapsepaths GM.

Bug: 941429, 913349, 929915, 945853

Change-Id: Ib89e231d0e8611f8735fd3592db6391da096369d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215094
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-05-22 16:16:59 +00:00
Herb Derby
f59ea7ddf3 Move SkFont over to SkStrikeSpecStorage
Change-Id: I5b4adec40162896aa3f6d36f9c83a1fc3744110c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215095
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-05-22 16:15:29 +00:00
Chris Dalton
1706cbffc7 Remove VisitorType from GrOp::visitProxies
We are planning to start detecting mipmaps and MSAA resolves during
the "gather" step now, so all visits should behave the same at this
point. (And it appears there might not have been any GrOps that
actually changed their behavior based on this flag at the moment.)

Bug: skia:
Change-Id: I7a7a1c9c47cbe03683c42025bf6d0ecb32a57ba1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/215145
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-05-22 15:13:50 +00:00
Jim Van Verth
57b177dc91 Fix resize and vsync issues in Mac Viewer
* Move OpenGL vsync setup out of initial context setup block
* Fix window repaints for OpenGL and Metal
* Also moved some Mac-specific code into Mac-specific Metal class

Bug: skia:9095
Change-Id: I221edfbd2292d949cc15232ed2791f8fe1bbe2ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214686
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-05-22 14:54:20 +00:00