platform/upstream/libSkiaSharp.git
7 years agoSkColorSpace: remove named API, add gamut API
Matt Sarett [Tue, 7 Feb 2017 18:56:11 +0000 (13:56 -0500)]
SkColorSpace: remove named API, add gamut API

Reland from: https://skia-review.googlesource.com/c/8021/

BUG=skia:

Change-Id: I18985f130587b15fccbc86b76b2bb5c49ba5ba8a
Reviewed-on: https://skia-review.googlesource.com/8136
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoRemove Perf upload ACL
Eric Boren [Tue, 7 Feb 2017 17:56:57 +0000 (12:56 -0500)]
Remove Perf upload ACL

BUG=skia:6070

Change-Id: I2ccd5c5a773094da5cadcc934ec953b0bc9de757
Reviewed-on: https://skia-review.googlesource.com/8131
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agofix tools/git-sync-deps
Hal Canary [Tue, 7 Feb 2017 17:05:47 +0000 (12:05 -0500)]
fix tools/git-sync-deps

Change-Id: I8755fd7a316d284627e25f88e02b69e2f67f9622
Reviewed-on: https://skia-review.googlesource.com/8126
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoAddress feedback on makeTextureImage
Brian Osman [Tue, 7 Feb 2017 17:31:02 +0000 (12:31 -0500)]
Address feedback on makeTextureImage

BUG=skia:

Whitespace change in public API.

Change-Id: Iaab7b0ed6b157b1c246eae5f0f0440b0ae4d72ab
Reviewed-on: https://skia-review.googlesource.com/8130
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoFix infratests
Eric Boren [Tue, 7 Feb 2017 18:00:46 +0000 (13:00 -0500)]
Fix infratests

BUG=skia:

Change-Id: I19ff5750e12bbd66ba6c43fe8d6c3234f9bb1372
Reviewed-on: https://skia-review.googlesource.com/8132
Reviewed-by: Eric Boren <borenet@google.com>
7 years agoRevert "Use SkArenaAlloc instead of SkSmallAllocator in the SkAutoBlitterChoose code."
Robert Phillips [Tue, 7 Feb 2017 17:28:15 +0000 (17:28 +0000)]
Revert "Use SkArenaAlloc instead of SkSmallAllocator in the SkAutoBlitterChoose code."

This reverts commit 2b57b7f7a7fc97db57f190b5a8ebcf68e177ee2d.

Reason for revert: Android compile failing

Original change's description:
> Use SkArenaAlloc instead of SkSmallAllocator in the SkAutoBlitterChoose code.
>
>
> TBR=reed@google.com
> Change-Id: Iefb044bf7657fbf982f23aa91a3f4d013ce2c626
> Reviewed-on: https://skia-review.googlesource.com/7786
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Herb Derby <herb@google.com>
>

TBR=mtklein@chromium.org,mtklein@google.com,herb@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Id09c35377dddae0811d998b7d0c34c422325a5bc
Reviewed-on: https://skia-review.googlesource.com/8129
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRevert "SkColorSpace: remove named API, add gamut API"
Matt Sarett [Tue, 7 Feb 2017 17:06:09 +0000 (17:06 +0000)]
Revert "SkColorSpace: remove named API, add gamut API"

This reverts commit ecaaf6f1c156e5690200322fc2636380c1f63dd8.

Reason for revert: Breaks everything

Original change's description:
> SkColorSpace: remove named API, add gamut API
>
> BUG=skia:
>
> Change-Id: I01c5e1874c9a034febc64e25b3aaafb5050393a6
> Reviewed-on: https://skia-review.googlesource.com/8021
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=msarett@google.com,brianosman@google.com,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: Ief5a0a4eeabe75a21f7512e23fc15309151066c4
Reviewed-on: https://skia-review.googlesource.com/8127
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoSkColorSpace: remove named API, add gamut API
Matt Sarett [Mon, 6 Feb 2017 17:59:48 +0000 (12:59 -0500)]
SkColorSpace: remove named API, add gamut API

BUG=skia:

Change-Id: I01c5e1874c9a034febc64e25b3aaafb5050393a6
Reviewed-on: https://skia-review.googlesource.com/8021
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoBring back SkImage::makeTextureImage
Brian Osman [Tue, 7 Feb 2017 16:23:28 +0000 (11:23 -0500)]
Bring back SkImage::makeTextureImage

Ensures that an image is GPU backed on the passed-in GrContxt. The new
version requires a destination color space (intended usage of the image),
so we can make a proper decision about decoded format.

This reverts commit d263413a2a92cafe3fd3b051c67d00206c9a0e4d.

BUG=skia:

Change-Id: Ibccddbafc301779559592045ed5a5fa9264e7432
Reviewed-on: https://skia-review.googlesource.com/8116
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoRevert "Reland "Respect canvas size and frame offset in webp decoder""
Matt Sarett [Tue, 7 Feb 2017 16:39:23 +0000 (16:39 +0000)]
Revert "Reland "Respect canvas size and frame offset in webp decoder""

This reverts commit 604971e39a20392fd4c74a56bcdc187311cf86dc.

Reason for revert: Strange vk failures

Original change's description:
> Reland "Respect canvas size and frame offset in webp decoder"
>
> Original Change Reviewed At:
> https://skia-review.googlesource.com/c/7800
>
> CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN
>
> BUG=skia:6185
>
> Change-Id: I92baa9070e15ef3c62dd347c08c906c2715dda10
> Reviewed-on: https://skia-review.googlesource.com/8050
> Reviewed-by: Matt Sarett <msarett@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=msarett@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:6185
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN

Change-Id: Ice93b62c55ea13fce83140567be16225ff0e2fdb
Reviewed-on: https://skia-review.googlesource.com/8123
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoTear down 32-bit iOS test/perf bots.
Mike Klein [Tue, 7 Feb 2017 15:22:43 +0000 (10:22 -0500)]
Tear down 32-bit iOS test/perf bots.

The 64-bit bots look fine.  We're only testing GPU on iOS, so it's not
super critical to have 32-bit iOS testers.  I'll keep the builders.

Change-Id: I405153fd9da63b541584d78bdb975b5800679391
Reviewed-on: https://skia-review.googlesource.com/8114
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoRemove _lowp SkSplicer experiment for now.
Mike Klein [Tue, 7 Feb 2017 15:11:52 +0000 (10:11 -0500)]
Remove _lowp SkSplicer experiment for now.

SkSplicer is an experiment, and _lowp SkSplicer is an experiment^2.
It's not that it's a bad idea... it just makes working on the main
SkSplicer experiment more complicated.

While not live at head, it'll live on in my heart.

Change-Id: Ib099370be25623e4cf1bbbca211634e3fe92b475
Reviewed-on: https://skia-review.googlesource.com/8112
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoharfbuzz 1.3.0 → 1.4.2
Hal Canary [Fri, 27 Jan 2017 19:12:32 +0000 (14:12 -0500)]
harfbuzz 1.3.0 → 1.4.2

Change-Id: I0c2f050c70755523abfbe98c17e90a90ecbedff5
Reviewed-on: https://skia-review.googlesource.com/8113
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoAnother workaround for libstdc++ unique_ptr
Brian Salomon [Tue, 7 Feb 2017 15:46:33 +0000 (10:46 -0500)]
Another workaround for libstdc++ unique_ptr

Change-Id: Ic08bf6f23e2509db332fcc0f6cab577189c2f558
Reviewed-on: https://skia-review.googlesource.com/8115
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoUse SkArenaAlloc instead of SkSmallAllocator in the SkAutoBlitterChoose code.
Herb Derby [Mon, 6 Feb 2017 20:26:09 +0000 (15:26 -0500)]
Use SkArenaAlloc instead of SkSmallAllocator in the SkAutoBlitterChoose code.

TBR=reed@google.com
Change-Id: Iefb044bf7657fbf982f23aa91a3f4d013ce2c626
Reviewed-on: https://skia-review.googlesource.com/7786
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>

7 years agoFix canvas size of new tiled bitmap GM
Brian Osman [Tue, 7 Feb 2017 14:19:17 +0000 (09:19 -0500)]
Fix canvas size of new tiled bitmap GM

Copy-paste error.

BUG=skia:

Change-Id: Ifebe23ee7ac4a46e351f10ebe0f4c68490bfeb44
Reviewed-on: https://skia-review.googlesource.com/8110
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoUse SkVertices for tessellated spot and ambient shadow rendering.
Brian Salomon [Mon, 6 Feb 2017 20:47:44 +0000 (15:47 -0500)]
Use SkVertices for tessellated spot and ambient shadow rendering.

Change-Id: Ia81e7a771d345286533752708e4304c1ae3b97c9
Reviewed-on: https://skia-review.googlesource.com/8042
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Stan Iliev <stani@google.com>

7 years agogen_tasks.go: Add --builder_name_schema flag
Eric Boren [Tue, 7 Feb 2017 14:16:30 +0000 (09:16 -0500)]
gen_tasks.go: Add --builder_name_schema flag

BUG=skia:6070

Change-Id: I66ac3057f7863f822445d5163e54ca3b11755068
Reviewed-on: https://skia-review.googlesource.com/8107
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoShadowUtils: Fix umbra inset calculation when determining if umbra is fully occluded.
Brian Salomon [Mon, 6 Feb 2017 19:23:53 +0000 (14:23 -0500)]
ShadowUtils: Fix umbra inset calculation when determining if umbra is fully occluded.

Change-Id: Id0db49ad45b341d39abf7ee532ecc0799a832192
Reviewed-on: https://skia-review.googlesource.com/8079
Commit-Queue: Stan Iliev <stani@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoAdd GM to exercise some of the darker corners of SkMagnifierImageFilter
Robert Phillips [Mon, 6 Feb 2017 17:32:55 +0000 (12:32 -0500)]
Add GM to exercise some of the darker corners of SkMagnifierImageFilter

An upcoming CL (https://skia-review.googlesource.com/c/7995/ (Remove asTextureRef from SkSpecialImage & update effects accordingly)) modifies some untested portions of the SkMagnifierImageFilter.

This adds a test to prevents regressions.

Change-Id: I9fa406f699e39fa393212e7f63a457b015b36edb
Reviewed-on: https://skia-review.googlesource.com/8023
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoAdd 64-bit iOS bots.
Mike Klein [Tue, 7 Feb 2017 00:30:51 +0000 (19:30 -0500)]
Add 64-bit iOS bots.

Because it's 2017.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-iOS-Clang-iPadMini4-GPU-GX6450-arm64-Debug,Perf-iOS-Clang-iPadMini4-GPU-GX6450-arm64-Release,Test-iOS-Clang-iPadMini4-GPU-GX6450-arm64-Debug,Test-iOS-Clang-iPadMini4-GPU-GX6450-arm64-Release

Change-Id: I8708585a3416962d2563c17e6cc357da48ad9519
Reviewed-on: https://skia-review.googlesource.com/8106
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoAdd a fast case for copying vertices in GrDrawVerticesOp.
Brian Salomon [Tue, 7 Feb 2017 00:06:22 +0000 (19:06 -0500)]
Add a fast case for copying vertices in GrDrawVerticesOp.

Uses Sk2f to apply a translation-only matrix when the vertex attributes contain only positions and colors.

We should look at how to generalize this for other draw vertices cases and other ops.

Change-Id: I5eb692982dc216b1c0a71209c969672b0562143c
Reviewed-on: https://skia-review.googlesource.com/8103
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoFix rounding error with tiled bitmap draws
Brian Osman [Mon, 6 Feb 2017 21:48:57 +0000 (16:48 -0500)]
Fix rounding error with tiled bitmap draws

We were snapping the top-left of the destination rectangle to integers,
but using the original (fractional) size. This led to us losing rows or
columns of pixels at the first tile boundary.

Also added a GM that demonstrates the bug (now renders correctly).

BUG=skia:

Change-Id: I50629dab9dd90fedad2c7e3393a1b1d1c7a8d45e
Reviewed-on: https://skia-review.googlesource.com/8102
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoGrTessellator (AA): improve antialiasing of thin shapes.
Stephen White [Mon, 6 Feb 2017 14:50:27 +0000 (09:50 -0500)]
GrTessellator (AA): improve antialiasing of thin shapes.

(Long description, but actually quite a small change.)

This is the first change inspired by the "straight skeleton" algorithm.
This algorithm gives us a mental model to describe the edge-antialiasing
problem: consider the shape as walls of a house, the outer alpha
geometry is a 45-degree "roof" up to a flat top at a height of 1.0
(the filled interior).  The faces of the sloping roof join at the
bisectors between the inner and outer points.

When the shape being drawn is sufficiently thin, there should be no flat
roof, and the sloping roof meets at an edge (the straight skeleton).

This patch detects cases where an edge inverts on stroking, which
indicates that the flat roof has turned inside out, and should be
reduced to a point instead. The model above describes what to do:
follow down the "roof" along the bisectors to their intersection.
This is the point to which an inverted edge should be collapsed.
Fortunately, the bisector edges are easy to compute: they're the
connector edges joining inner and outer points. Linearly interpolating
the distance from the top to the bottom point gives the alpha we
should use to approximate coverage.

Now that we are correctly handling inversions, bevelling outer edges
is no longer necesary, since pointy outer edges won't cause nasty
opaque artifacts.

A couple of other quality improvements: on intersection, always lerp
the alpha of connector edge, even if the opposite edge is an inner edge
(later, when these edges are collapsed, we need this value to compute
the correct alpha). Fix the case where an intruding outer vertex
intersects exactly with an inner edge by maxing its alpha with the
computed value in check_for_intersection(). Finally, we also no longer
round off the intersections produced by Line::intersect(), since it
introduces a loss of quality with no measurable performance benefit.

Change-Id: I6fd93df3a57fffc0895e8cb68adbdba626ded0f1
Reviewed-on: https://skia-review.googlesource.com/8028
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stephan White <senorblanco@chromium.org>

7 years agoMake recipes upload results to bucket specified in top-level config
Eric Boren [Mon, 6 Feb 2017 20:38:41 +0000 (15:38 -0500)]
Make recipes upload results to bucket specified in top-level config

BUG=skia:6070

Change-Id: I67c040239ca2cf77a7430aa1a45b1bb69fef3b91
Reviewed-on: https://skia-review.googlesource.com/8069
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoSet IOS_BUNDLE_ID in recipes.
Mike Klein [Mon, 6 Feb 2017 18:44:12 +0000 (13:44 -0500)]
Set IOS_BUNDLE_ID in recipes.

Instead of hard coding to com.google.dm, which will only work for Test
bots, set it in the environment when we know which bundle we're using.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-iOS-Clang-iPadMini4-GPU-GX6450-arm-Release,Perf-iOS-Clang-iPadMini4-GPU-GX6450-arm-Debug

Change-Id: I43a0c832ff70e3b3c9bb987173784f4b6b992403
Reviewed-on: https://skia-review.googlesource.com/8076
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoMake workaround for std::unique_ptr<const T[]> bug in old libstdc++ work.
Brian Salomon [Mon, 6 Feb 2017 20:30:06 +0000 (15:30 -0500)]
Make workaround for std::unique_ptr<const T[]> bug in old libstdc++ work.

BUG=skia:

Change-Id: I58a07d4ce35bdd03e7edcf50e88d9982b3885546
Reviewed-on: https://skia-review.googlesource.com/8101
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoWork around broken std::unique_ptr<const T[]> constructor from std::unique_ptr<T...
Brian Salomon [Mon, 6 Feb 2017 19:11:51 +0000 (14:11 -0500)]
Work around broken std::unique_ptr<const T[]> constructor from std::unique_ptr<T>&& in older libstdc++.

Change-Id: Ie4190800369515168203ff98b3e3fe0e2d790f1a
Reviewed-on: https://skia-review.googlesource.com/8072
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoUpdate image cipd version.
Joe Gregorio [Mon, 6 Feb 2017 19:37:49 +0000 (14:37 -0500)]
Update image cipd version.

BUG=skia:
NOTRY=true

DOCS_PREVIEW= https://skia.org/?cl=8083

Change-Id: Ie3750b6a4b5d49e2b45dc9b9a5f2de8da8d31c49
Reviewed-on: https://skia-review.googlesource.com/8083
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>

7 years agoAdd sk_sp make variant to SkArenaAlloc.
Herb Derby [Mon, 6 Feb 2017 18:03:49 +0000 (13:03 -0500)]
Add sk_sp make variant to SkArenaAlloc.

R=bungeman@google.com
BUG=skia:

Change-Id: Iec588cb6946f0230ff3d3ec46499c365aa6b8d09
Reviewed-on: https://skia-review.googlesource.com/8067
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>

7 years agoRevert "Added dead variable / code elimination to skslc."
Ethan Nicholas [Mon, 6 Feb 2017 18:53:07 +0000 (18:53 +0000)]
Revert "Added dead variable / code elimination to skslc."

This reverts commit 113628d76176a1ab3e6719c59efff23cd10ab213.

Reason for revert: Looks to have caused https://bugs.chromium.org/p/chromium/issues/detail?id=688939

Original change's description:
> Added dead variable / code elimination to skslc.
>
> BUG=skia:
>
> Change-Id: Ib037730803a8f222f099de0e001fe06ad452a22c
> Reviewed-on: https://skia-review.googlesource.com/7584
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
>

TBR=egdaniel@google.com,benjaminwagner@google.com,ethannicholas@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:

Change-Id: I85599e4ca2bc6bfd782edc163f67b64195d6ae65
Reviewed-on: https://skia-review.googlesource.com/8077
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
7 years agoHave ShadowTessellators transform path; add SkShadowTessellator base class
Jim Van Verth [Mon, 6 Feb 2017 18:38:23 +0000 (13:38 -0500)]
Have ShadowTessellators transform path; add SkShadowTessellator base class

BUG=skia:6119

Change-Id: I37639ebab43c9f32f48d2d7dbb8d4619efb9b09e
Reviewed-on: https://skia-review.googlesource.com/8061
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRevert "Allow conversion from non-opaque to opaque"
Matt Sarett [Mon, 6 Feb 2017 18:28:49 +0000 (18:28 +0000)]
Revert "Allow conversion from non-opaque to opaque"

This reverts commit bfe8dca7dfdd9cafbccba0a637f2fcd58c7a54fb.

Reason for revert: I believe I've fixed all the call sites,
so this is now ok.

Original change's description:
> Allow conversion from non-opaque to opaque
>
> BUG:683787
>
> Change-Id: I1b78cc8d1b5d3917a2a952da036b93022e99e053
> Reviewed-on: https://skia-review.googlesource.com/7374
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

TBR=msarett@google.com,robertphillips@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I2369c9b81321ca83a7063bb85e66ddbc03914d2b
Reviewed-on: https://skia-review.googlesource.com/8073
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoFix two bugs when deciding to tile. Large images were always tiling.
Brian Osman [Mon, 6 Feb 2017 18:24:47 +0000 (13:24 -0500)]
Fix two bugs when deciding to tile. Large images were always tiling.

usedTileBytes was actually usedTileTexels, so we underestimated how much
of the image we were using by a factor of 4.

Then, to determine if we were using more than 50% of the image, we wrote:
usedTileBytes < 2 * bmpSize;

That meant we were off by another factor of 4.

BUG=skia:

Change-Id: Iba2acc75c5e7603543f05e4473b73f76a2937d7a
Reviewed-on: https://skia-review.googlesource.com/8063
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoSkXPS: new document API.
Hal Canary [Mon, 6 Feb 2017 14:51:42 +0000 (09:51 -0500)]
SkXPS: new document API.

Now requires a IXpsOMObjectFactory pointer.  This will allow sandboxing
to be used in Chromium.  (Chrome will create a IXpsOMObjectFactory, then
go into sandbox mode, then call SkDocumenent::MakeXPS().)

Change-Id: Ic4b48d4b148c44e188d12a9481fb74735546528a
Reviewed-on: https://skia-review.googlesource.com/8052
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoReland "Respect canvas size and frame offset in webp decoder"
Matt Sarett [Mon, 6 Feb 2017 14:51:48 +0000 (09:51 -0500)]
Reland "Respect canvas size and frame offset in webp decoder"

Original Change Reviewed At:
https://skia-review.googlesource.com/c/7800

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN

BUG=skia:6185

Change-Id: I92baa9070e15ef3c62dd347c08c906c2715dda10
Reviewed-on: https://skia-review.googlesource.com/8050
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoSK_USE_SDL is never defined
Hal Canary [Mon, 6 Feb 2017 18:03:36 +0000 (13:03 -0500)]
SK_USE_SDL is never defined

This CL also removes dead code, SkOSWindow_SDL.cpp.

Change-Id: I659dc271a4bcceba7fe29ac5ac6e79d684153870
Reviewed-on: https://skia-review.googlesource.com/8070
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoGet linux vulkan running on Intel NUC
Kevin Lubick [Mon, 6 Feb 2017 17:45:29 +0000 (12:45 -0500)]
Get linux vulkan running on Intel NUC

This CL includes a few things.

First, it creates two CIPD assets, a Debug and Release version
of the Linux Vulkan Intel Driver. The driver is still young,
so the Debug version helps us submit better bugs to the
developers.  The current version is Mesa 13.04:
ftp://ftp.freedesktop.org/pub/mesa/13.0.4/

Second, it fixes the GN flavor to not purge out all environment
variables - a leftover from the GYP -> GN migration.

Third, it sets environment variables on both Test and Perf such
that the vulkan sdk, libraries and drivers all linked in from
their homes in CIPD.

BUG=skia:6133

Change-Id: I9a999e24a0203ab7a9f4733bee1110b79e616935
Reviewed-on: https://skia-review.googlesource.com/7994
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoRemove unused files in third_party/libsdl.
Mike Klein [Mon, 6 Feb 2017 18:01:47 +0000 (13:01 -0500)]
Remove unused files in third_party/libsdl.

Change-Id: I44c95341e7bc631322a9802bce3fdc5a0e8c4bb5
Reviewed-on: https://skia-review.googlesource.com/8066
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
7 years agoMake iOS main() functions normal.
Mike Klein [Mon, 6 Feb 2017 17:46:20 +0000 (12:46 -0500)]
Make iOS main() functions normal.

The weird foo_mains are no longer needed when we build with GN.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Mac-Clang-arm-Debug-iOS

Change-Id: Iae50696741e0dc277d96dda4968a1ae41cb17c8a
Reviewed-on: https://skia-review.googlesource.com/8064
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Stephan Altmueller <stephana@google.com>
7 years agoClean up more references to GYP.
Mike Klein [Mon, 6 Feb 2017 17:26:51 +0000 (12:26 -0500)]
Clean up more references to GYP.

Delete files only used by GYP, and files that used GYP.  Neither can
possibly be actively used.  Beyond that, just a couple doc tweaks.

Change-Id: I0220d7226e7bb9ed7c54a7d8f2906a718313c521
Reviewed-on: https://skia-review.googlesource.com/8062
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Hal Canary <halcanary@google.com>
7 years agoAdd refcnt'ed immutable vertices class for SkCanvas::drawVertices.
Brian Salomon [Mon, 6 Feb 2017 14:41:10 +0000 (09:41 -0500)]
Add refcnt'ed immutable vertices class for SkCanvas::drawVertices.

Change-Id: I44a62f5efc674d0adbbf4a33690c3ded9fab3803
Reviewed-on: https://skia-review.googlesource.com/8040
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoSkXPS: Begin refactoring SkXPSDevice
Hal Canary [Mon, 6 Feb 2017 14:26:49 +0000 (09:26 -0500)]
SkXPS:  Begin refactoring SkXPSDevice

A later CL will move all document-level fields  and methods into
SkXPSDocument.

  * SkXPSDocument cnstructor requires a xps factory ptr.

  * All device layers share ownership of a single factory.

  * renames SkDocument_XPS to the easier-to-say SkXPSDocument.

  * Moves autocoinitialize to DM.

TODO: pipe the IXpsOMObjectFactory* into the SkDocument api.

No change in rendered documents.

Change-Id: I8a4680a3603951b1ce5f6c1de48714d4902061a9
Reviewed-on: https://skia-review.googlesource.com/7998
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoFix getMaxResidentSetSizeMB() on iOS.
Mike Klein [Mon, 6 Feb 2017 15:41:11 +0000 (10:41 -0500)]
Fix getMaxResidentSetSizeMB() on iOS.

It's reporting numbers rather too large to be plausible.

Change-Id: I09a32ebcf6d5c9cbab18d2099cfd394efe650b24
Reviewed-on: https://skia-review.googlesource.com/8055
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoAdd back a gaggle of iOS bots.
Mike Klein [Mon, 6 Feb 2017 15:12:32 +0000 (10:12 -0500)]
Add back a gaggle of iOS bots.

These should match the old ones I removed last week.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Mac-Clang-arm-Debug-iOS,Build-Mac-Clang-arm64-Debug-iOS,Build-Mac-Clang-arm64-Release-iOS

Change-Id: I2d56332c11cdd410ab6e60d888231cf7ecd5eafd
Reviewed-on: https://skia-review.googlesource.com/8051
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoremove all GYP files
Hal Canary [Mon, 6 Feb 2017 15:39:48 +0000 (10:39 -0500)]
remove all GYP files

Change-Id: I66e4fb028664f1e20cd307da0a784ff5d7b9eb5e
Reviewed-on: https://skia-review.googlesource.com/8056
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agostart removing uses of SkScalarMul
Mike Reed [Sat, 4 Feb 2017 16:04:26 +0000 (11:04 -0500)]
start removing uses of SkScalarMul

BUG=skia:6197

Change-Id: Ic444c7ee4ca547f483dc8232dcacd6d4ba87d913
Reviewed-on: https://skia-review.googlesource.com/8041
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoiOS: cd into Documents folder at startup
Mike Klein [Mon, 6 Feb 2017 14:26:14 +0000 (09:26 -0500)]
iOS: cd into Documents folder at startup

CQ_INCLUDE_TRYBOTS=skia.primary:Test-iOS-Clang-iPadMini4-GPU-GX6450-arm-Release

Change-Id: I7beadad742bc9444491c7a315a827297a636d70d
Reviewed-on: https://skia-review.googlesource.com/8049
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoStart updating iOS docs.
Mike Klein [Fri, 3 Feb 2017 18:13:29 +0000 (13:13 -0500)]
Start updating iOS docs.

This removes the docs for the old GYP-based local development and
replaces them with ones for GN-based development.

I have not yet updated the docs for iOS on the bots... still in flux.

Change-Id: I1f9c5c1a3331ae192dc08c614ef7da26924f808e
Reviewed-on: https://skia-review.googlesource.com/8002
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoAdd toXYZD50() to SkColorSpace API
Matt Sarett [Fri, 3 Feb 2017 23:03:58 +0000 (15:03 -0800)]
Add toXYZD50() to SkColorSpace API

BUG=skia:

Change-Id: I996877c9482453fc5ff58b0f66fa29715bea2191
Reviewed-on: https://skia-review.googlesource.com/8024
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoRevert "Respect canvas size and frame offset in webp decoder"
Robert Phillips [Mon, 6 Feb 2017 13:12:18 +0000 (13:12 +0000)]
Revert "Respect canvas size and frame offset in webp decoder"

This reverts commit 0f33970c8d950a68b7d83cc626ac0500953d6b15.

Reason for revert: msan complaint

Original change's description:
> Respect canvas size and frame offset in webp decoder
>
> BUG=skia:6185
>
> Change-Id: Id543cb689a5e33b800ebbc18f4a234e78a4c4298
> Reviewed-on: https://skia-review.googlesource.com/7800
> Commit-Queue: Matt Sarett <msarett@google.com>
> Reviewed-by: Leon Scroggins <scroggo@google.com>
>

TBR=borenet@google.com,msarett@google.com,scroggo@google.com,reviews@skia.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=skia:6185

Change-Id: Ie01dc7d7ebfebe36a235335d0d8cb28bccb2ecff
Reviewed-on: https://skia-review.googlesource.com/8046
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRoll recipe DEPS
Eric Boren [Mon, 6 Feb 2017 12:21:29 +0000 (07:21 -0500)]
Roll recipe DEPS

BUG=skia:

Change-Id: Ie29ddf2e13149b5904817f244aca87da9bfcba0c
Reviewed-on: https://skia-review.googlesource.com/8045
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoRemove unused assignment in SkScan::AntiFillXRect.
Jeremy Roman [Sun, 5 Feb 2017 04:25:46 +0000 (23:25 -0500)]
Remove unused assignment in SkScan::AntiFillXRect.

Found by static analysis.

Change-Id: I566da96938a735d29acc854cd700fcb944bc09fc
Reviewed-on: https://skia-review.googlesource.com/8026
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoUpdate SKP version
UpdateSKPs [Sun, 5 Feb 2017 07:00:53 +0000 (07:00 +0000)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: I5d0141c2727b59e7453df8a69b6020f4c2957894
Reviewed-on: https://skia-review.googlesource.com/8027
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>

7 years agoRespect canvas size and frame offset in webp decoder
Matt Sarett [Fri, 3 Feb 2017 20:24:19 +0000 (15:24 -0500)]
Respect canvas size and frame offset in webp decoder

BUG=skia:6185

Change-Id: Id543cb689a5e33b800ebbc18f4a234e78a4c4298
Reviewed-on: https://skia-review.googlesource.com/7800
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
7 years agoImproved SkShadowUtils caching
Brian Salomon [Fri, 3 Feb 2017 19:25:02 +0000 (14:25 -0500)]
Improved SkShadowUtils caching

Multiple ambient and spot shadows can be cached for each geometry.

Spot shadows can be reused when x,y light offset is different.

We categorize spot shadows for rrects as either transparent, opaque with partial umbra occlusion, or opaque with full umbra occlusion and use that to improve cache performance.

Change-Id: Id530bdaa5092edb46c8f584979090fbb766307fc
Reviewed-on: https://skia-review.googlesource.com/7987
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoDisable unpremul f16 image tests
Matt Sarett [Fri, 3 Feb 2017 19:58:59 +0000 (11:58 -0800)]
Disable unpremul f16 image tests

Testing premul f16 is enough test coverage, and we aren't doing
this correctly right now anyways (the drawing code assumes a
premul bitmap, we would need to premultiply after the unpremul
decode).

BUG=skia:

Change-Id: I798f56db67faadd0348974453a05cd726b9a509c
Reviewed-on: https://skia-review.googlesource.com/8020
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoiOS: set up device dirs to be relative
Mike Klein [Fri, 3 Feb 2017 18:31:05 +0000 (13:31 -0500)]
iOS: set up device dirs to be relative

Hopefully this get things pushed to and reading from directories under
com.google.dm's Documents.  I've hardcoded to DM's app for now.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-iOS-Clang-iPadMini4-GPU-GX6450-arm-Release

Change-Id: Iea54b3604b65551e4a486b50d6c7ea9aba26f869
Reviewed-on: https://skia-review.googlesource.com/8004
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoRevert "Revert "Don't instantiate shaders with non-invertible local matrix""
Florin Malita [Fri, 3 Feb 2017 18:21:17 +0000 (18:21 +0000)]
Revert "Revert "Don't instantiate shaders with non-invertible local matrix""

This reverts commit 0e86725ba4f667056ff1ef65275165853a47303b.

Reason for revert: landed Blink fix, should pass layout tests now

Original change's description:
> Revert "Don't instantiate shaders with non-invertible local matrix"
>
> This reverts commit ebfbba9bbdacd754c8ad7429ee066f53f17bc66b.
>
> Reason for revert: breaks chrome blink tests for linux_trusty_blink_rel
>
> Original change's description:
> > Don't instantiate shaders with non-invertible local matrix
> >
> > Change-Id: If11f7d57cbf45929632d858f91c02d8f5fa9f442
> > Reviewed-on: https://skia-review.googlesource.com/7885
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Florin Malita <fmalita@chromium.org>
> >
>
> TBR=fmalita@chromium.org,reed@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I41c5513523c27dc4bad68008f08369185897b7a2
> Reviewed-on: https://skia-review.googlesource.com/7948
> Commit-Queue: Hal Canary <halcanary@google.com>
> Reviewed-by: Hal Canary <halcanary@google.com>
>

TBR=halcanary@google.com,reviews@skia.org,fmalita@chromium.org,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I373ea6c61a256fd8cfbfb34f8b2d39a3ff8109db
Reviewed-on: https://skia-review.googlesource.com/8003
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
7 years agoexpose new tight-bounds method on SkPath
Mike Reed [Fri, 3 Feb 2017 16:34:13 +0000 (11:34 -0500)]
expose new tight-bounds method on SkPath

BUG=skia:

Change-Id: Ie50df49c1758af203042a84dc2cd505046373d2c
Reviewed-on: https://skia-review.googlesource.com/7996
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRestore ios_flavor.
Mike Klein [Thu, 2 Feb 2017 23:55:03 +0000 (18:55 -0500)]
Restore ios_flavor.

Just like Android, there's enough special ceremony needed to move files
to and from iOS devices that this reads most clearly as its own flavor.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-iOS-Clang-iPadMini4-GPU-GX6450-arm-Release

Change-Id: I01c8e5494c364cc61e219568f022219f7c3f5fdc
Reviewed-on: https://skia-review.googlesource.com/7988
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoMake shadow tessellators fail gracefully and add unit test for this.
Brian Salomon [Fri, 3 Feb 2017 15:33:25 +0000 (10:33 -0500)]
Make shadow tessellators fail gracefully and add unit test for this.

Change-Id: I42a9d06a18928588347a6dea2f6150518ba29aa8
Reviewed-on: https://skia-review.googlesource.com/7886
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoGrTessellator (AA): Fix for missing fill artifacts.
Stephen White [Fri, 3 Feb 2017 15:15:16 +0000 (10:15 -0500)]
GrTessellator (AA): Fix for missing fill artifacts.

Some regions were being incorrectly filled due to setting
connector edges winding to zero *after* merging collinear edges.
This would cause the merge to add the wrong winding value. Putting the
adjust before the call to merge_collinear_edges() fixes the problem.

Also, some pixels were not getting coverage due the inner edge being
+1 winding. Using -2 winding for inner edges ensure the interior
regions are -1 winding, which gives coverage in more cases of
self-intersection. This required flipping the comparisons on the
intruding-vertices workaround.

BUG=skia:

Change-Id: I216fa3d30c196a6b7773637e48802f6572c993c7
Reviewed-on: https://skia-review.googlesource.com/7962
Commit-Queue: Stephan White <senorblanco@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoInitialize some more variables in SpotShadowTessellator
Jim Van Verth [Fri, 3 Feb 2017 14:22:37 +0000 (09:22 -0500)]
Initialize some more variables in SpotShadowTessellator

BUG=skia:6119

Change-Id: Id3a3042df6254e3367713b82f3b08257e0be71b1
Reviewed-on: https://skia-review.googlesource.com/7992
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>

7 years agoexperimental tight-bounds
Mike Reed [Fri, 3 Feb 2017 01:45:56 +0000 (17:45 -0800)]
experimental tight-bounds

not sure about api -- perhaps it could just return the bounds, and make them 0,0,0,0 if the path
is empty -- the caller can trivially know if the path is empty themselves.

BUG=skia:

Change-Id: I2dbb861e8d981b27c5a6833643977f5bd6802217
Reviewed-on: https://skia-review.googlesource.com/7989
Reviewed-by: Cary Clark <caryclark@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoAdded dead variable / code elimination to skslc.
Ethan Nicholas [Thu, 2 Feb 2017 21:11:39 +0000 (16:11 -0500)]
Added dead variable / code elimination to skslc.

BUG=skia:

Change-Id: Ib037730803a8f222f099de0e001fe06ad452a22c
Reviewed-on: https://skia-review.googlesource.com/7584
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agoBatch across matrix changes in drawVertices and add GM to test.
Brian Salomon [Fri, 3 Feb 2017 02:05:19 +0000 (21:05 -0500)]
Batch across matrix changes in drawVertices and add GM to test.

Change-Id: I6b08d37781e3c715a1d9d8c9729667ec78625836
Reviewed-on: https://skia-review.googlesource.com/7949
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agofix up shadow_utils gm dimensions
Brian Salomon [Fri, 3 Feb 2017 01:59:09 +0000 (20:59 -0500)]
fix up shadow_utils gm dimensions

Change-Id: I5204296871404065b4d55d53922b7cf05ca5a50f
Reviewed-on: https://skia-review.googlesource.com/7990
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoiOS: dequote args one level
Mike Klein [Thu, 2 Feb 2017 22:07:33 +0000 (17:07 -0500)]
iOS: dequote args one level

Change-Id: Ice2e1aeef724595844799ee26140f653a1acb0e4
Reviewed-on: https://skia-review.googlesource.com/7985
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoiOS: try running the binary
Mike Klein [Thu, 2 Feb 2017 21:43:21 +0000 (16:43 -0500)]
iOS: try running the binary

Change-Id: I723631d1744b128350546d480201da5d4159af65
Reviewed-on: https://skia-review.googlesource.com/7983
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoRevert "Revert "Spot shadow cleanup and optimization""
Brian Salomon [Thu, 2 Feb 2017 20:39:34 +0000 (15:39 -0500)]
Revert "Revert "Spot shadow cleanup and optimization""

This reverts commit aa2bd8f726d98edafd28c8553e99cbae33c431dd.

Change-Id: Iaa5d9e649d842889ff031eeb11d0547270968420
Reviewed-on: https://skia-review.googlesource.com/7981
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agobin/list-skia-bots
Hal Canary [Thu, 2 Feb 2017 21:15:08 +0000 (16:15 -0500)]
bin/list-skia-bots

NOTRY=true
Change-Id: Ie123bf796ff062972fd86319f0a20f3a81a9b2ff
Reviewed-on: https://skia-review.googlesource.com/7982
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoBlacklist large images on 32-bit Win 2k8
Matt Sarett [Thu, 2 Feb 2017 17:40:54 +0000 (09:40 -0800)]
Blacklist large images on 32-bit Win 2k8

BUG=skia:

Change-Id: Ic423d2042f6b8b0bbadfd2ee1dc8b3f9f5992523
Reviewed-on: https://skia-review.googlesource.com/7940
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoadd package_ios.py to ios_bin
Mike Klein [Thu, 2 Feb 2017 20:27:41 +0000 (15:27 -0500)]
add package_ios.py to ios_bin

Change-Id: I749e4fe8887f84a943cbef2c49971195ef381508
Reviewed-on: https://skia-review.googlesource.com/7980
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSkXPSDevice inherits from SkBaseDevice
Hal Canary [Wed, 1 Feb 2017 22:04:44 +0000 (17:04 -0500)]
SkXPSDevice inherits from SkBaseDevice

Change-Id: I81ed36da33821df36d11806a6349a2ede61c6f73
Reviewed-on: https://skia-review.googlesource.com/7942
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoRevert "Don't instantiate shaders with non-invertible local matrix"
Hal Canary [Thu, 2 Feb 2017 19:49:27 +0000 (19:49 +0000)]
Revert "Don't instantiate shaders with non-invertible local matrix"

This reverts commit ebfbba9bbdacd754c8ad7429ee066f53f17bc66b.

Reason for revert: breaks chrome blink tests for linux_trusty_blink_rel

Original change's description:
> Don't instantiate shaders with non-invertible local matrix
>
> Change-Id: If11f7d57cbf45929632d858f91c02d8f5fa9f442
> Reviewed-on: https://skia-review.googlesource.com/7885
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>
>

TBR=fmalita@chromium.org,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I41c5513523c27dc4bad68008f08369185897b7a2
Reviewed-on: https://skia-review.googlesource.com/7948
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
7 years agoRevert "Spot shadow cleanup and optimization"
Hal Canary [Thu, 2 Feb 2017 19:47:57 +0000 (19:47 +0000)]
Revert "Spot shadow cleanup and optimization"

This reverts commit 47784c18adc20d1bfefebd00c3ee98c669d79b4d.

Reason for revert: MSAN, ASAN

Original change's description:
> Spot shadow cleanup and optimization
>
> Fixes clip polygon and centroid calculation.
> Clips interior umbra region against original path.
>
> BUG=skia:6119
>
> Change-Id: I37a740ae004c38b75405e05158d92cf9fd954eda
> Reviewed-on: https://skia-review.googlesource.com/7823
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=jvanverth@google.com,bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:6119

Change-Id: I7a4d9fa3af0d30feac999229f2e94aae2bdafc9c
Reviewed-on: https://skia-review.googlesource.com/7947
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoTemporarily remove unused iOS builds.
Mike Klein [Thu, 2 Feb 2017 19:15:01 +0000 (14:15 -0500)]
Temporarily remove unused iOS builds.

Long-term we probably want to have all four of these builds (arm64 for
real, arm for reference) but right now the only one we need is
arm-Release to drive Test-iOS-Clang-iPadMini4-GPU-GX6450-arm-Release.
The other builds just delay getting that Test bot working.

Change-Id: Idf3d10dd9f66cc0a4c1000a1cb9295ea778827d2
Reviewed-on: https://skia-review.googlesource.com/7944
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoiOS: package and deploy
Mike Klein [Thu, 2 Feb 2017 19:05:11 +0000 (14:05 -0500)]
iOS: package and deploy

Change-Id: I3536cf695d7dfd07862beb23f1a459ba316cf8c5
Reviewed-on: https://skia-review.googlesource.com/7943
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoTear down old iOS bots, bring up one new one.
Mike Klein [Thu, 2 Feb 2017 18:45:15 +0000 (13:45 -0500)]
Tear down old iOS bots, bring up one new one.

This replaces all GYP-based iOS bots with one new GN-based one.
Ordinarily I'd do this more incrementally but we have only one iPad.

This new bot will start very broken, but should be the quickest
to cycle builds once I get it working.

Change-Id: I41865e3ad431dea3cf023d0b33ccc88e175cf227
Reviewed-on: https://skia-review.googlesource.com/7941
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSpot shadow cleanup and optimization
Jim Van Verth [Thu, 2 Feb 2017 18:06:31 +0000 (13:06 -0500)]
Spot shadow cleanup and optimization

Fixes clip polygon and centroid calculation.
Clips interior umbra region against original path.

BUG=skia:6119

Change-Id: I37a740ae004c38b75405e05158d92cf9fd954eda
Reviewed-on: https://skia-review.googlesource.com/7823
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoRevert "Replaced all calls to fragmentPosition() with sk_FragCoord"
Ethan Nicholas [Thu, 2 Feb 2017 15:43:58 +0000 (10:43 -0500)]
Revert "Replaced all calls to fragmentPosition() with sk_FragCoord"

This reverts commit de4d301881e7fd084f1f0b359ec6f9b2bf8bd4c5.

Reason for revert: several Chrome rendering bugs on Mac

BUG=skia:

Change-Id: I492082b0b7e7c902ede4b598c5809f604d210ce1
Reviewed-on: https://skia-review.googlesource.com/7887
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoDon't instantiate shaders with non-invertible local matrix
Florin Malita [Wed, 1 Feb 2017 23:01:43 +0000 (15:01 -0800)]
Don't instantiate shaders with non-invertible local matrix

Change-Id: If11f7d57cbf45929632d858f91c02d8f5fa9f442
Reviewed-on: https://skia-review.googlesource.com/7885
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>

7 years agoForce instantiation in GaussianBlur to hopefully prevent (and diagnose) Chrome crash
Robert Phillips [Thu, 2 Feb 2017 15:06:18 +0000 (10:06 -0500)]
Force instantiation in GaussianBlur to hopefully prevent (and diagnose) Chrome crash

BUG=687174

Change-Id: Ieb9930feca9abad9220a1a099e7dd247e6eff70e
Reviewed-on: https://skia-review.googlesource.com/7920
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoRevert "Revert "SkScalar: delete code that doesn't compile.""
Hal Canary [Thu, 2 Feb 2017 15:03:22 +0000 (10:03 -0500)]
Revert "Revert "SkScalar: delete code that doesn't compile.""

This reverts commit 8233fc82b00763d37a7b0db7890b15c7d58939d4.

Change-Id: Ia32ccdb3b385ed28e1b41e553c7d80cf803522cc
Reviewed-on: https://skia-review.googlesource.com/7899
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoCopy modules back in from skia-recipes repo
Eric Boren [Thu, 2 Feb 2017 14:02:37 +0000 (09:02 -0500)]
Copy modules back in from skia-recipes repo

BUG=skia:6070

Change-Id: I86b3f039c27bd8287516c1db8bd1cae62888171b
Reviewed-on: https://skia-review.googlesource.com/7890
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoRevert "SkScalar: delete code thqat doesn't compile."
Leon Scroggins [Thu, 2 Feb 2017 13:12:23 +0000 (13:12 +0000)]
Revert "SkScalar: delete code thqat doesn't compile."

This reverts commit 565da18f6e4a0f04dc836ce9d35f31bee31644f7.

Reason for revert:  breaking android roll:

https://googleplex-android-review.git.corp.google.com/#/c/1853481/-1..1

Some code in Android references SK_SCALAR_IS_FLOAT:
https://cs.corp.google.com/android/frameworks/base/core/jni/android/graphics/Interpolator.cpp?q=frameworks/base/core/jni/android/graphics/Interpolator.cpp&sq=package:android&l=30

Original change's description:
> SkScalar: delete code thqat doesn't compile.
>
> Change-Id: I8a5c404d6151fca79af5c5a98d4b44924c0ade52
> Reviewed-on: https://skia-review.googlesource.com/7882
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Hal Canary <halcanary@google.com>
>

TBR=halcanary@google.com,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I4df06c4593abaa3ac3877b270a41aec7a9c3fc8f
Reviewed-on: https://skia-review.googlesource.com/7888
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
7 years agogen_tasks.go: Read jobs, Android, and GPU mappings from a JSON file
Eric Boren [Wed, 1 Feb 2017 20:56:55 +0000 (15:56 -0500)]
gen_tasks.go: Read jobs, Android, and GPU mappings from a JSON file

BUG=skia:6070

Change-Id: I02edcb0b1a98967e5d84f89a5ef578b36efadd8f
Reviewed-on: https://skia-review.googlesource.com/7825
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agomake GR_TEST_UTILS=0 work
Hal Canary [Tue, 31 Jan 2017 18:50:44 +0000 (13:50 -0500)]
make GR_TEST_UTILS=0 work

Change-Id: Icce35140ca08b65217b32e6b1ffc6ad2f38ab37f
Reviewed-on: https://skia-review.googlesource.com/7840
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoHave Vulkan advertise that compressed textures are currently unsupported
Robert Phillips [Wed, 1 Feb 2017 19:45:04 +0000 (14:45 -0500)]
Have Vulkan advertise that compressed textures are currently unsupported

This allows the ProxyTest to run on the Vulkan backend.

Change-Id: I89a3212bdc2d4a1ceb0c27d0ff60f558d7b12647
Reviewed-on: https://skia-review.googlesource.com/7880
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoSkScalar: delete code thqat doesn't compile.
Hal Canary [Wed, 1 Feb 2017 19:47:57 +0000 (14:47 -0500)]
SkScalar: delete code thqat doesn't compile.

Change-Id: I8a5c404d6151fca79af5c5a98d4b44924c0ade52
Reviewed-on: https://skia-review.googlesource.com/7882
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoPrepare to test all image decode modes to F16
Matt Sarett [Wed, 1 Feb 2017 23:34:22 +0000 (15:34 -0800)]
Prepare to test all image decode modes to F16

I've only been running F16 tests in "colorImage" mode.
We really should be running our "image" tests to F16 as well - so
they can be tested with scaling, subsets, etc.

This CL fixes bugs so that we can enable those tests.

BUG=skia:

Change-Id: I8137eb4fce7ea12f2c9d233a029d946d4a63e6b0
Reviewed-on: https://skia-review.googlesource.com/7801
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
7 years agoAdd a GM for SkShadowUtils and fix a few issues.
Brian Salomon [Wed, 1 Feb 2017 17:23:25 +0000 (12:23 -0500)]
Add a GM for SkShadowUtils and fix a few issues.

1) Transform the path center to device space before computing the shadow offset.

2) Modulate the shadow color by the color filter's output color.

3) Make the scale of path points in the spot tessellator be relative to the path centroid.

4) Clamp the shadow alphas at 1.

Change-Id: I480476df79b959f11c1eca0ba2a49a134d355cbb
Reviewed-on: https://skia-review.googlesource.com/7860
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoRoll skia-recipes to pick up shadow_utils blacklist.
Brian Salomon [Wed, 1 Feb 2017 19:23:56 +0000 (14:23 -0500)]
Roll skia-recipes to pick up shadow_utils blacklist.

Change-Id: I11dd76fcb687e46c708feb725aef6f1102d74d0a
Reviewed-on: https://skia-review.googlesource.com/7881
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoAdd caching of ambient and spot shadow meshes.
Brian Salomon [Wed, 1 Feb 2017 17:07:17 +0000 (12:07 -0500)]
Add caching of ambient and spot shadow meshes.

Change-Id: If882186225621af4af4b4ddae0c786ec33ff40f3
Reviewed-on: https://skia-review.googlesource.com/7643
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoDisable Vulkan backend in DeferredProxyTest (for now)
Robert Phillips [Wed, 1 Feb 2017 16:14:57 +0000 (11:14 -0500)]
Disable Vulkan backend in DeferredProxyTest (for now)

With the expansion in https://skia-review.googlesource.com/c/7864/ (Add test for proactive proxy-creation failure) the ProxyTest is now failing for the  PixelXL and N6p in Vulkan mode

Change-Id: Iebefa1be4f1a5deb450e1f2083a06f3f2249c382
Reviewed-on: https://skia-review.googlesource.com/7870
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoUpdate to ubuntu 16.10 to see if a driver update helps
Kevin Lubick [Wed, 1 Feb 2017 16:10:32 +0000 (11:10 -0500)]
Update to ubuntu 16.10 to see if a driver update helps

BUG=skia:6186

Change-Id: I7e76ca2c76b287e03c046076745130ebae50efbe
Reviewed-on: https://skia-review.googlesource.com/7869
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoFix memory leak in DeferredProxyTest
Robert Phillips [Wed, 1 Feb 2017 15:53:20 +0000 (10:53 -0500)]
Fix memory leak in DeferredProxyTest

Change-Id: Ib183f71e972b0756b8558098dabe32b6934c0847
Reviewed-on: https://skia-review.googlesource.com/7866
Commit-Queue: Robert Phillips <robertphillips@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
7 years agoExpand SkImage::getTextureHandle call
Robert Phillips [Tue, 31 Jan 2017 22:53:34 +0000 (17:53 -0500)]
Expand SkImage::getTextureHandle call

AFAICT cc/output/gl_renderer.cc only calls SkImage:getTexture to determine the origin of the backing GrTexture. What do y'all think of this CL as a means of removing that call to getTexture?

One alternative would be to add a new entry point like:

bool SkImage::getBackendTextureDesc(GrBackendTextureDesc* desc) const;

which fills in the entire desc and returns whether the image is texture backed.

Change-Id: Idd302c0a11d69ad08e0100bcf546b3bbaa7cf27e
Reviewed-on: https://skia-review.googlesource.com/7788
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoBroaden checking of GrSurfaceProxy::MakeDeferred's return value
Robert Phillips [Tue, 31 Jan 2017 23:24:12 +0000 (18:24 -0500)]
Broaden checking of GrSurfaceProxy::MakeDeferred's return value

We now expect MakeDeferred to baulk if the ultimate texture/rendertarget will not be instantiable.

Added checks for MakeWrapped too since, technically, it too can baulk.

BUG=676753

Change-Id: I3e052ebf98303fc46124272082c10f303d89da27
Reviewed-on: https://skia-review.googlesource.com/7830
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>