Commit Graph

35376 Commits

Author SHA1 Message Date
angle-skia-autoroll
76c3799754 Roll third_party/externals/angle2 49aacad566aa..9491e5ebed98 (3 commits)
49aacad566..9491e5ebed


git log 49aacad566aa..9491e5ebed98 --date=short --no-merges --format='%ad %ae %s'
2018-06-14 geofflang@chromium.org Generate framebuffer IDs used in DXGISwapChainWindowSurfaceWGL.
2018-06-14 geofflang@chromium.org Implement EGL_KHR_debug.
2018-06-14 lucferron@chromium.org Vulkan Intel: Flaky test suppression


Created with:
  gclient setdep -r third_party/externals/angle2@9491e5ebed98

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

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: I66484dcadf00df44fd722481f2b0df7ced60c010
Reviewed-on: https://skia-review.googlesource.com/135120
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-15 01:42:44 +00:00
recipe-roller
c2572baac7 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/fce7bc9e08256a6c59e85cd37fefe6c754d4bb6b Add infradata/config repo to gclient. (tandrii@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I443e827a488e9c755a553045e960c2f9272c7b20
Reviewed-on: https://skia-review.googlesource.com/135054
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-06-15 00:12:04 +00:00
recipe-roller
69b2891cea 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/690d8d437bdf6da7a722c537c64f7a1a7b682590 Revert "gclient_scm: Use cherry-picking instead of rebasing." (tandrii@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6c70e27e1b8d951eba9a2fd55da7b9788280b49b
Reviewed-on: https://skia-review.googlesource.com/135052
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2018-06-14 23:22:14 +00:00
recipe-roller
1986036f69 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/c912114140868b880bd23382d3569d5394678ff4 gclient_scm: Use cherry-picking instead of rebasing. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I64a9a51d6603d87ff7c14ae3e2e679068d805ad5
Reviewed-on: https://skia-review.googlesource.com/135050
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-06-14 22:41:34 +00:00
Florin Malita
7d42c44cdd [skottie] Switch to SkJSON
Convert to SkJSON APIs and remove RapidJSON dependency.

TBR=
Change-Id: I5b4fd78821a443326e3a5b370748d840b80ef279
Reviewed-on: https://skia-review.googlesource.com/134612
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-14 21:21:14 +00:00
Hal Canary
725d5ad257 SkTHashTable no longer uses SkNoncopy
Change-Id: I0944195d3087c97353994ff219f77464d94f1ba8
Reviewed-on: https://skia-review.googlesource.com/135045
Commit-Queue: Hal Canary <halcanary@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-14 20:30:24 +00:00
recipe-roller
ddaf5a5768 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/425d9ce2d32cbc84acc62e64f2dd8fde9718b608 Allow CheckPatchFormatted to cause a failure (nodir@google.com)
  https://crrev.com/0c91147d50ae4b67828a1d8551bb7ba876d5955d gclient: Don't allow None URLs (except in .gclient files) (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I5a1de9b665373229744c51991ab8e7913acd358d
Reviewed-on: https://skia-review.googlesource.com/135042
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-06-14 20:13:04 +00:00
Cary Clark
a740190722 do not mistake locals for methods
bookmaker parsed xxx(xxx) as a method but in this case
fXxx(xxx) was a local initialization. Look for 'f' followed
by an upper case letter to know the difference.

TBR=csmartdalton@google.com

Bug: skia:6898
Change-Id: Ie0138d9412bc6c06915af81a5b83cbd7e83ebef6
Reviewed-on: https://skia-review.googlesource.com/135041
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-06-14 19:57:34 +00:00
Hal Canary
0acb79eb2a SkTemplates no longer uses Sknoncopyable
Change-Id: I142ff4f6b05e633b92d982f3c39a0e58617c1c0e
Reviewed-on: https://skia-review.googlesource.com/135040
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-06-14 19:50:44 +00:00
Florin Malita
fedfd5402c Reland [skjson] Size-constrained input API
Pass an explicit input size instead of requiring a C string.

Thanks to mtklein's clever trick, this has no measurable perf impact.

TBR=
Change-Id: Ic8cb1dc75f4d0814e5b2c80038d1b8d3a7b072ab
Reviewed-on: https://skia-review.googlesource.com/134946
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-14 19:40:04 +00:00
Hal Canary
14f739043b SkCanvas, SkImageGenerator, SkStream: remove SkNoncopyable
Change-Id: If2b27f62c3d825b388239ef6ee35722d46eed664
Reviewed-on: https://skia-review.googlesource.com/134949
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-06-14 19:33:04 +00:00
Hal Canary
e08ce40f4a SkRefCnt no longer a SkNoncopyable
Change-Id: I345c83783c578f5ce25b4fc46c971c055e113cd0
Reviewed-on: https://skia-review.googlesource.com/134945
Auto-Submit: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-14 19:14:04 +00:00
Jim Van Verth
e39bc9fd43 Implement tilted concave ambient shadow
Bug: skia:7971
Change-Id: I6a92a5021f53ae10fb35ef355081653e96bc04b0
Reviewed-on: https://skia-review.googlesource.com/134844
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-06-14 19:09:44 +00:00
Florin Malita
0510edeebf Revert "[skjson] Size-constrained input API"
This reverts commit fc792b8718.

Reason for revert: New ASAN, Android failures.

Original change's description:
> [skjson] Size-constrained input API
> 
> Pass an explicit input size instead of requiring a C string.
> 
> Thanks to mtklein's clever trick, this has no measurable perf impact.
> 
> Change-Id: I64f210a9f653a78b05ab6b58fa34479504aa35ff
> Reviewed-on: https://skia-review.googlesource.com/134940
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>

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

Change-Id: Ic0b52398b1ce6f64c781debb858829cb64bbae58
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/135022
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-14 18:41:50 +00:00
Florin Malita
28f5dd8a4c [skjson] Fix ASAN undefined behavior
ASAN opines that a nullptr memcpy dest is undefined behavior, even when
n == 0.  ASAN may be right.

This doesn't occur internally, in the parser, but can be triggered with
the DOM builder API (as do some tests currently).

We could say "don't do that", but if someone wants to build an empty
string/array/object, it's kind of awkward to force them to provide a
valid source pointer instead of simply e.g. Array(nullptr, 0).

So let's guard for this case to make ASAN happy.

Change-Id: If12e39f5eb8b273f22bbb0b5fce3321bf6482173
Reviewed-on: https://skia-review.googlesource.com/134944
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-14 18:23:47 +00:00
Florin Malita
fc792b8718 [skjson] Size-constrained input API
Pass an explicit input size instead of requiring a C string.

Thanks to mtklein's clever trick, this has no measurable perf impact.

Change-Id: I64f210a9f653a78b05ab6b58fa34479504aa35ff
Reviewed-on: https://skia-review.googlesource.com/134940
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-14 18:13:19 +00:00
swiftshader-skia-autoroll
00f4df9022 Roll third_party/externals/swiftshader 170766a36bd7..a5ac650d2031 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/170766a36bd7..a5ac650d2031


git log 170766a36bd7..a5ac650d2031 --date=short --no-merges --format='%ad %ae %s'
2018-06-14 sugoi@google.com Optimizer optimization


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

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

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: I86e951a7498ef6520b986446f15a51941e67e6f2
Reviewed-on: https://skia-review.googlesource.com/134980
Reviewed-by: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-14 18:08:47 +00:00
Hal Canary
33f920e3f1 SkImageInfo: make use of SkISize
Change-Id: Id3c427cae2988dcc2dfcf4dc713921142469e3f6
Reviewed-on: https://skia-review.googlesource.com/134840
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-06-14 18:04:17 +00:00
Cary Clark
ca6a2454b8 refresh generated includes
Found some bookmaker bugs that were suppressing
spelling errors and syntax errors.

TBR=reed@google.com

Bug: skia:6898
Change-Id: Ie7331dd03723d987cb2df46018a984f42d0ee518
Reviewed-on: https://skia-review.googlesource.com/134942
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
2018-06-14 18:02:37 +00:00
Greg Daniel
cf274da6fa Revert "added 565 to 8888 conversion for gpu LCD text rendering for macOS"
This reverts commit e6f2ecafaf.

Reason for revert: breaking chrome roll cause of static initializers

Original change's description:
> added 565 to 8888 conversion for gpu LCD text rendering for macOS
> 
> Bug: skia:
> Change-Id: Ie24160bb098d388bf4ad69d0c2f9f8ed4beb215c
> Reviewed-on: https://skia-review.googlesource.com/134508
> Commit-Queue: Timothy Liang <timliang@google.com>
> Reviewed-by: Jim Van Verth <jvanverth@google.com>

TBR=egdaniel@google.com,jvanverth@google.com,timliang@google.com

Change-Id: Ida97a4085c93fcb990999ab71f99364ec2ef86b7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/135000
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-14 17:41:58 +00:00
Chris Dalton
9414c96781 ccpr: Generalize GrCCAtlas to work for cached atlases as well
Converts atlas offsets to SkIVector, adds a GrCCAtlasStack class,
moves the Op that renders the atlases into GrCCPerFlushResources, etc.

Bug: skia:
Change-Id: I5110be8e74da709f3ce84bb6798ead572142d0fa
Reviewed-on: https://skia-review.googlesource.com/134701
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-06-14 17:21:47 +00:00
Brian Osman
653f34da95 Remove GrPixelConfig argument to GrColorSpaceXform[Effect]::Make
This was for sRGB configs, which are no longer treated special.
Pulling this out of https://skia-review.googlesource.com/c/skia/+/132090
to land separately.

Change-Id: Id04c4e82ad4ffe375cfd384490839b0488e54d44
Reviewed-on: https://skia-review.googlesource.com/134843
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-14 17:02:07 +00:00
Cary Clark
5538c13906 docs fix external substitutions
explict substitutions are required to distiguish words
that preserve underscores

R=caryclark@google.com

Docs-Preview: https://skia.org/?cl=134841
Bug: skia:6898
Change-Id: Id1a5669c180e03e048de3c0251882bd06b297283
Reviewed-on: https://skia-review.googlesource.com/134841
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
2018-06-14 16:54:47 +00:00
Hal Canary
ab17347df3 Revert "Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines."
This reverts commit e1bc7de7c0.

Reason for revert: chrome used it

Original change's description:
> Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines.
> 
> sed 's/SK_MaxSizeT/SIZE_MAX/g'
> sed 's/SK_MaxU32/UINT32_MAX/g'
> sed 's/SK_MaxU16/UINT16_MAX/g'
> 
> SK_MinU32 and SK_MinU16 were unused
> 
> Change-Id: I6b6c824df47b05bde7e73b13a58e851a5f63fe0e
> Reviewed-on: https://skia-review.googlesource.com/134607
> Commit-Queue: Hal Canary <halcanary@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=halcanary@google.com,bungeman@google.com,reed@google.com

Change-Id: I1e2c440dcf9f59bf87c1fea113248cd5136f7519
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/134921
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-06-14 16:17:38 +00:00
angle-skia-autoroll
b94097f315 Roll third_party/externals/angle2 d668be9ce66f..49aacad566aa (2 commits)
d668be9ce6..49aacad566


git log d668be9ce66f..49aacad566aa --date=short --no-merges --format='%ad %ae %s'
2018-06-14 lucferron@chromium.org Vulkan: Support the indices offset in drawElements calls
2018-06-14 lucferron@chromium.org Vulkan: Don't use swizzle state when its not needed


Created with:
  gclient setdep -r third_party/externals/angle2@49aacad566aa

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

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: I78caa19dd01d80ea3cf9aa3879ec53c80f562501
Reviewed-on: https://skia-review.googlesource.com/134900
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-14 16:15:27 +00:00
Florin Malita
ae2527964f Reland [skjson] Implementation/API tweaks
*  move most common accessor methods to the header, for inlining
  *  drop the lazy type checking semantics in favor of explicit guarded/unguarded
     conversions
  *  revisit the public class hierarchy to better constrain type-bound APIs
  *  expose public type factories and add tests
  *  drop the empty-vector optimization -- allocating an external size_t in these
     uncommon cases is better than paying for a conditional on every access.

TBR=
Change-Id: Ic609bb74f12cad1756865a2489ad56c03ecc5494
Reviewed-on: https://skia-review.googlesource.com/134845
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-14 15:49:57 +00:00
Florin Malita
5ff4fb286c Revert "[skjson] Implementation/API tweaks"
This reverts commit 03b68421ca.

Reason for revert: Broke Debian9 builds

Original change's description:
> [skjson] Implementation/API tweaks
> 
>   *  move most common accessor methods to the header, for inlining
>   *  drop the lazy type checking semantics in favor of explicit guarded/unguarded
>      conversions
>   *  revisit the public class hierarchy to better constrain type-bound APIs
>   *  expose public type factories and add tests
>   *  drop the empty-vector optimization -- allocating an external size_t in these
>      uncommon cases is better than paying for a conditional on every access.
> 
> Change-Id: I24a7c75db3aa8b12c740c77ac7df4af4e3a1dff8
> Reviewed-on: https://skia-review.googlesource.com/134610
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> Reviewed-by: Mike Klein <mtklein@google.com>

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

Change-Id: I2c681ef5c8d5fc15508e58b4b0f6ab9491b7d76f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/134880
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-14 15:16:48 +00:00
Florin Malita
03b68421ca [skjson] Implementation/API tweaks
*  move most common accessor methods to the header, for inlining
  *  drop the lazy type checking semantics in favor of explicit guarded/unguarded
     conversions
  *  revisit the public class hierarchy to better constrain type-bound APIs
  *  expose public type factories and add tests
  *  drop the empty-vector optimization -- allocating an external size_t in these
     uncommon cases is better than paying for a conditional on every access.

Change-Id: I24a7c75db3aa8b12c740c77ac7df4af4e3a1dff8
Reviewed-on: https://skia-review.googlesource.com/134610
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-14 15:07:47 +00:00
Stephen White
b141fcbba9 GrTessellator: rename intersection check args.
Now that there's a required ordering of the arguments to
check_for_intersection(), rename the parameters to match.
Cosmetic change only.

Change-Id: I68f6ae0b6e5f89a3344048cf73fedabded9ed138
Reviewed-on: https://skia-review.googlesource.com/134823
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2018-06-14 14:56:47 +00:00
Hal Canary
c640d0dc96 Revert "Revert "SkTypes: extract SkTo""
This reverts commit fdcfb8b7c2.

> Original change's description:
> > SkTypes: extract SkTo
> >
> > Change-Id: I8de790d5013db2105ad885fa2683303d7c250b09
> > Reviewed-on: https://skia-review.googlesource.com/133620
> > Reviewed-by: Mike Klein <mtklein@google.com>

Change-Id: Ida74fbc5c21248a724a5edbf9fae18a33bcb23aa
Reviewed-on: https://skia-review.googlesource.com/134506
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2018-06-14 14:55:17 +00:00
Mike Klein
4d4665436e Reland "use std::enable_if instead of assert()"
This is a reland of c6530d1e5e

Original change's description:
> use std::enable_if instead of assert()
> 
> Crazy?  Genius?
> 
> Change-Id: I6033ab5f1af1a6bee84c27025b988e1143d59293
> Reviewed-on: https://skia-review.googlesource.com/134512
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Auto-Submit: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Ben Wagner <bungeman@google.com>

Change-Id: I50849c89a37255396706ce659e20f00c0b0f08c6
Reviewed-on: https://skia-review.googlesource.com/134860
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-06-14 14:51:07 +00:00
recipe-roller
2c8bc68a41 Roll recipe dependencies (nontrivial).
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).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/cd8d4a659a2b622f4cc2674896ace670c57e9ad3 gclient recipe: use env_suffixes insetad of custom ENV manipulation. (tandrii@chromium.org)


R=benjaminwagner@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I668725d3215e19b55b86900edb2813cade6a1dbc
Reviewed-on: https://skia-review.googlesource.com/134662
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2018-06-14 14:48:17 +00:00
Hal Canary
bf54a76f0f SkImageInfo: MakeN32*() avoids extra ref/deref
Change-Id: I8d5c07222bd1cd1bea4fc0060d07a29786f8e254
Reviewed-on: https://skia-review.googlesource.com/134784
Commit-Queue: Hal Canary <halcanary@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-14 14:15:07 +00:00
Hal Canary
e1bc7de7c0 Remove SK_MaxSizeT, SK_M{in|ax}U{16|32}, #defines.
sed 's/SK_MaxSizeT/SIZE_MAX/g'
sed 's/SK_MaxU32/UINT32_MAX/g'
sed 's/SK_MaxU16/UINT16_MAX/g'

SK_MinU32 and SK_MinU16 were unused

Change-Id: I6b6c824df47b05bde7e73b13a58e851a5f63fe0e
Reviewed-on: https://skia-review.googlesource.com/134607
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2018-06-14 14:10:47 +00:00
Mike Klein
b6b5b7a808 Reland "simplify SkTFitsIn, try 2"
This is a reland of 009f51e43f

Original change's description:
> simplify SkTFitsIn, try 2
> 
> Originally we wrote this in C++14 constexpr,
> but because this is used from public headers, we can't use
> C++14 yet.  Now a somewhat sillier looking C++11 version.
> 
> All the old tests still pass, and one new added.
> Updated the comments a bit for correctness and readability.
> 
> Change-Id: I99c01e1346c1a5a36278cc08f30538112e5259aa
> Reviewed-on: https://skia-review.googlesource.com/134425
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Auto-Submit: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Ben Wagner <bungeman@google.com>

Change-Id: I99676faac6153830538c1396a325ca1456dfb126
Reviewed-on: https://skia-review.googlesource.com/134800
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-06-14 14:05:27 +00:00
Jim Van Verth
bdde428d53 Add variable offset support
Bug: skia:7970
Change-Id: I9dadf75f21e19ebe26f82643bcc47dd5794d8970
Reviewed-on: https://skia-review.googlesource.com/134421
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-06-14 13:54:57 +00:00
Greg Daniel
10a83da287 Add GrContext::MakeVulkan factory that doesn't take a ref'd GrVkBackendContext.
This is the first step towards removing the ref counted ness of GrVkBackendContext.

Bug: skia:
Change-Id: I38f8861dd093a6a6098dd2e421c26c41185320f7
Reviewed-on: https://skia-review.googlesource.com/134783
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2018-06-14 13:54:47 +00:00
Timothy Liang
e6f2ecafaf added 565 to 8888 conversion for gpu LCD text rendering for macOS
Bug: skia:
Change-Id: Ie24160bb098d388bf4ad69d0c2f9f8ed4beb215c
Reviewed-on: https://skia-review.googlesource.com/134508
Commit-Queue: Timothy Liang <timliang@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2018-06-14 13:46:47 +00:00
Brian Osman
861ea5b7b2 Remove const from (immutable) SkColorSpace args to some functions
Another piece of https://skia-review.googlesource.com/c/skia/+/132090
that I'd like to land separately.

Change-Id: I64d8968cf7e0fb0d288eca71c79d361410c924b8
Reviewed-on: https://skia-review.googlesource.com/134782
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-06-14 13:40:27 +00:00
Jim Van Verth
8760e2f428 Add outline concave shadow support
Bug: skia:7971
Change-Id: I97370b9c942c5e5f1e53ec15524bd2d20794d68c
Reviewed-on: https://skia-review.googlesource.com/134328
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2018-06-14 12:25:27 +00:00
Brian Osman
f018b7d607 SkColorSpaceXformSteps improvements and tests
Added some helper functions and put the booleans in a nested struct
(this is motivated by upcoming changes). Added a unit test of steps
against skcms, with round-tripping in both combinations.

Change-Id: Iea3d60cd52edb5259b5576b1422ed6f856cde815
Reviewed-on: https://skia-review.googlesource.com/134660
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-06-14 11:30:47 +00:00
angle-skia-autoroll
b57a861f18 Roll third_party/externals/angle2 4cc753e01054..d668be9ce66f (1 commits)
4cc753e010..d668be9ce6


git log 4cc753e01054..d668be9ce66f --date=short --no-merges --format='%ad %ae %s'
2018-06-13 jmadill@chromium.org Vulkan: Use push constants in PipelineLayoutCache.


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

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

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: I4e16d1eeb8eb9b3ed81bd416158896827b9bca9e
Reviewed-on: https://skia-review.googlesource.com/134741
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-14 07:24:16 +00:00
skia-bookmaker
7d4d6b816c Update markdown files
Automatic commit by the Housekeeper-Nightly-Bookmaker bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: If284d35923308d05003694d0eccc84b945d8641c
Reviewed-on: https://skia-review.googlesource.com/134762
Commit-Queue: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
Reviewed-by: <skia-bookmaker@skia-swarming-bots.iam.gserviceaccount.com>
2018-06-14 06:59:56 +00:00
swiftshader-skia-autoroll
28252da5cf Roll third_party/externals/swiftshader 41320521bd3f..170766a36bd7 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/41320521bd3f..170766a36bd7


git log 41320521bd3f..170766a36bd7 --date=short --no-merges --format='%ad %ae %s'
2018-06-14 sugoi@google.com Allow SwiftShader to compile on Fuchsia


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

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

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: I45a5e1fdee6b7db080bf36fb5bad07331ac3a8ee
Reviewed-on: https://skia-review.googlesource.com/134740
Reviewed-by: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: swiftshader-skia-autoroll <swiftshader-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-14 02:51:26 +00:00
Ben Wagner
657edbede4 Remove SkBool8 (again).
Just when I thought it was out... they pull it back in.

Change-Id: I93781d306e94407ed71e782e7879469f69492bd4
Reviewed-on: https://skia-review.googlesource.com/134661
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Auto-Submit: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-06-13 22:49:46 +00:00
angle-skia-autoroll
ad115b2056 Roll third_party/externals/angle2 3e313805e5a2..4cc753e01054 (8 commits)
3e313805e5..4cc753e010


git log 3e313805e5a2..4cc753e01054 --date=short --no-merges --format='%ad %ae %s'
2018-06-13 jmadill@chromium.org Vulkan: Implement sampler arrays.
2018-06-13 jmadill@chromium.org Vulkan: Fix qualifier replacement for sampler arrays.
2018-06-13 jmadill@chromium.org Vulkan: Store Pipeline/DS Layouts in ProgramVk.
2018-06-13 jmadill@chromium.org Vulkan: Add PipelineLayout and DescriptorSetLayout caches.
2018-06-13 tobine@google.com Migrating ANGLE to split LVL repos
2018-06-13 lucferron@chromium.org Vulkan: Clamp the point size range to have a min value of 1.0
2018-06-13 oetuaho@nvidia.com Remove unnecessary checks when traversing nodes
2018-06-13 oetuaho@nvidia.com Remove TIntermRaw


Created with:
  gclient setdep -r third_party/externals/angle2@4cc753e01054

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

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: I23fc3b584e5189a32ecc70bd421f269400f89571
Reviewed-on: https://skia-review.googlesource.com/134680
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-06-13 22:45:16 +00:00
Ben Wagner
082a7a701f Adjust FreeType matrix based on what came back.
In the FreeType backend requests are made for a specific height but that
might not be the final height which was created by FreeType. In the
bitmap case this is obvious (a nearby size was picked) but this can also
happen in the outline case then the requested size was less than one.

BUG=skia:8042

Change-Id: Ibe3ae01b3732019870950b726270b9c85baeaffe
Reviewed-on: https://skia-review.googlesource.com/133448
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2018-06-13 22:11:26 +00:00
Chris Dalton
42c2115fc3 ccpr: Initialize the atlas size more intelligently
Rather than always starting the atlas at 1024 x 1024, begin with the
first pow2 dimensions whose area is theoretically large enough to
contain the pending paths.

Bug: skia:
Change-Id: I263e77ff6a697e865f6b3b62b9df7002225f9544
Reviewed-on: https://skia-review.googlesource.com/133660
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-06-13 21:53:36 +00:00
Florin Malita
527a297d6e Handle missing json resource gracefully in 3dgm
If the json resource is not found (it is not currently packaged with the
APK), Viewer crashes.

TBR=
Change-Id: I0a0bdf7f97fdac8afc84d539c88d2a391e54855c
Reviewed-on: https://skia-review.googlesource.com/134515
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2018-06-13 19:43:16 +00:00
recipe-roller
251494005e 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/7b5d8f513ee8ba48625d806c5e23d7a4a4b4f44c Update the recipes user guide. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic2edec1a84d1d38b13552216f4e6ab8c6e5ab9e5
Reviewed-on: https://skia-review.googlesource.com/134608
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2018-06-13 19:42:50 +00:00