platform/upstream/libSkiaSharp.git
7 years agoAdd testing for ANGLE msaa on bots
Brian Salomon [Tue, 18 Oct 2016 15:28:20 +0000 (11:28 -0400)]
Add testing for ANGLE msaa on bots

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Win-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE-Trybot

BUG=skia:5804

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3587

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

7 years agoFix star artifact in SkRRectsGaussianEdgeShader
Robert Phillips [Tue, 18 Oct 2016 16:58:29 +0000 (12:58 -0400)]
Fix star artifact in SkRRectsGaussianEdgeShader

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3360

Change-Id: I791ae5f44a88ac3e4debdf1d4092c605acdf4969
Reviewed-on: https://skia-review.googlesource.com/3360
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoViewer builds (for Windows) with GN
Brian Osman [Tue, 18 Oct 2016 18:42:44 +0000 (14:42 -0400)]
Viewer builds (for Windows) with GN

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3599

Change-Id: Id6a142f90f544bef266d78e385f22e17288d5064
Reviewed-on: https://skia-review.googlesource.com/3599
Reviewed-by: Mike Klein <mtklein@google.com>
7 years agoAdd SKSL fuzzer
kjlubick [Tue, 18 Oct 2016 17:06:24 +0000 (10:06 -0700)]
Add SKSL fuzzer

BUG=skia:5490
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2418763004

Review-Url: https://codereview.chromium.org/2418763004

7 years agoRefactored SkColorSpace and added in a Lab PCS GM
raftias [Tue, 18 Oct 2016 17:02:51 +0000 (10:02 -0700)]
Refactored SkColorSpace and added in a Lab PCS GM

The refactoring breaks off A2B0 tag support into a separate
subclass of SkColorSpace_Base, while keeping the current
(besides CLUT) functionality in a XYZTRC subclass.

ICC profile loading is now aware of this and creates the A2B0
subclass when SkColorSpace::NewICC() is called on a profile
in need of the A2B0 functionality.

The LabPCSDemo GM loads a .icc profile containing a LAB PCS and
then runs a Lab->XYZ conversion on an image using it so we can
display it and test out the A2B0 SkColorSpace functionality,
sans a/b/m-curves, as well as the Lab->XYZ conversion code.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2389983002

Review-Url: https://codereview.chromium.org/2389983002

7 years agoSome GN-related recipe cleanup.
Mike Klein [Mon, 17 Oct 2016 18:36:18 +0000 (14:36 -0400)]
Some GN-related recipe cleanup.

All our bots but the iOS ones are on GN now.  This cleans up a bunch of GYP and other obsolete stuff.

  - Nothing's using default_flavor.py any more except as a base class.
  - There are no -CMake, -Shared or -VisualBench bots anymore.
  - Only the iOS bots care about GYP_DEFINES.

You'll see the PDFium bot's GYP_DEFINES change, but that doesn't matter... it's using PDFium's own (GN) build system, and it ignores GYP_DEFINES.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3567

Change-Id: I699e10f013ea77df4dcaa1cb559c51c5bf55dfdb
Reviewed-on: https://skia-review.googlesource.com/3567
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
7 years agoFix ASAN bot.
Mike Klein [Tue, 18 Oct 2016 16:11:07 +0000 (12:11 -0400)]
Fix ASAN bot.

TBR=caryclark@google.com

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3591

Change-Id: Ib80ee9c5a3277de64bcde85383ad712956118295
Reviewed-on: https://skia-review.googlesource.com/3591
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoRefactor GrVkGpuCommandBuffer to handle multiple GrVkCommandBuffers.
Greg Daniel [Tue, 18 Oct 2016 14:33:25 +0000 (10:33 -0400)]
Refactor GrVkGpuCommandBuffer to handle multiple GrVkCommandBuffers.

This CL is a pre CL to fix some issues where we will need a GpuCB to
internally have multiple commandbuffers that it submits. Because of
this, I need to move the bounds calculations down into the VkGpuCB
since we need to know the bounds for each sub commandbuffer and not
just entire set of commands. In part this is good since GL actually
never needed the calculations so it saves some work there.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3142

Change-Id: Ied918765da3630aa6d87e29ccce6c883b96c4ead
Reviewed-on: https://skia-review.googlesource.com/3142
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7 years agoskpbench: suppot Nexus 6P
csmartdalton [Tue, 18 Oct 2016 16:19:50 +0000 (09:19 -0700)]
skpbench: suppot Nexus 6P

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2415033002

Review-Url: https://codereview.chromium.org/2415033002

7 years agoConsider the start_coord in interlaced PNG
scroggo [Tue, 18 Oct 2016 16:14:11 +0000 (09:14 -0700)]
Consider the start_coord in interlaced PNG

crrev.com/2420843003 (DIFFERENT ISSUE) resulted in a slight difference
in Gold for interlaced PNGs. The new images appeared to have slid down
slightly, implying that we sampled pixels higher (earlier) in the
image.

It turns out we were not truly taking get_start_coord into account.
This CL initializes the srcRow to consider get_start_coord, and should
fix the problem/difference.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2424353003

Review-Url: https://codereview.chromium.org/2424353003

7 years agofix -NoGPU build bots.
Mike Klein [Tue, 18 Oct 2016 15:46:22 +0000 (11:46 -0400)]
fix -NoGPU build bots.

TBR=caryclark@google.com

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3589

Change-Id: I4bf4a6b812a8284f739c86d03f334521e896a1cf
Reviewed-on: https://skia-review.googlesource.com/3589
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoRun correctness tests on ANGLE bots using d3d9 backend
Brian Salomon [Tue, 18 Oct 2016 15:23:23 +0000 (11:23 -0400)]
Run correctness tests on ANGLE bots using d3d9 backend

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3584

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Win-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE-Trybot

Change-Id: Ic70002d13261d22d374f0fd29e2f8dd3c783d552
Reviewed-on: https://skia-review.googlesource.com/3584
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7 years agoRevert "re-land of skslc now automatically turns on derivatives support"
Mike Klein [Tue, 18 Oct 2016 15:48:46 +0000 (15:48 +0000)]
Revert "re-land of skslc now automatically turns on derivatives support"

This reverts commit d7d1997643db3b9b5caaaac235c0e2cd0fa23ec2.

This breaks the Chromium roll (it did last time it landed too).
https://codereview.chromium.org/2429853002

Please gate your next attempt on at least one of linux_android_rel_ng, linux_chromium_rel_ng, or mac_chromium_rel_ng.

TBR=benjaminwagner@google.com,ethannicholas@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I999d4af70a5704b8990f3cd7d145eabff57646f5
Reviewed-on: https://skia-review.googlesource.com/3590
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
7 years agobreak ambiguous angle sorting loop
caryclark [Tue, 18 Oct 2016 14:59:44 +0000 (07:59 -0700)]
break ambiguous angle sorting loop

A pair of cubics may be difficult to sort if the tangents suggest
one sort but the midpoints suggest a different one. When in this
gray area, and when the cumulative sort of all the angles fails to
resolve, reverse the sort to break the tie.

Before, when tiger8 was run through the signed distance field
generated directly from the path data, the simplify call might
hang since the angle could not be resolved. If the endless loop
is detected, and if there is no tie to break, just fail instead.

TBR=reed@google.com
BUG=skia:5131
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2426753002

Review-Url: https://codereview.chromium.org/2426753002

7 years agoAdd support for ANGLE MSAA framebuffer extensions.
Brian Salomon [Tue, 18 Oct 2016 14:21:43 +0000 (10:21 -0400)]
Add support for ANGLE MSAA framebuffer extensions.

BUG=skia:5804

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3505

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

7 years agore-land of skslc now automatically turns on derivatives support
Ethan Nicholas [Tue, 18 Oct 2016 13:09:49 +0000 (09:09 -0400)]
re-land of skslc now automatically turns on derivatives support

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3602

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

7 years agoMake SkColorSpaceXform an SK_API
Matt Sarett [Tue, 18 Oct 2016 14:21:45 +0000 (10:21 -0400)]
Make SkColorSpaceXform an SK_API

TBR=reed@google.com
BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3585

Change-Id: I8efaf7c46e0d600bb1bb92e39014db8c4a8d25d1
Reviewed-on: https://skia-review.googlesource.com/3585
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoRevert "skslc now automatically turns on derivatives support"
Ethan Nicholas [Tue, 18 Oct 2016 13:00:03 +0000 (13:00 +0000)]
Revert "skslc now automatically turns on derivatives support"

This reverts commit 311742bd0eac6fad150bf8f0a4e2809679464e47.

Reason for revert: Android try failure

Change-Id: I6e92b49df1c8f692da947b277067b9003a9367d0
Reviewed-on: https://skia-review.googlesource.com/3600
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
7 years agoInclude 4f variants of random gradients during testing
Brian Osman [Mon, 17 Oct 2016 16:48:13 +0000 (12:48 -0400)]
Include 4f variants of random gradients during testing

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3538

Change-Id: Ieee6e49cb830b6aab87b0ecd7865c65ffb90dfe8
Reviewed-on: https://skia-review.googlesource.com/3538
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoUse legacy color filter API when doing legacy paint conversion
Brian Osman [Mon, 17 Oct 2016 20:54:49 +0000 (16:54 -0400)]
Use legacy color filter API when doing legacy paint conversion

Matt fixed mode color filter so that the 4f filter uses a linearized
version of the stored color. This restores previous behavior, where legacy
devices are doing everything in sRGB space.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3581

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

7 years agoFix SKP version in tasks.json, make upload_skps.py update tasks.json
borenet [Tue, 18 Oct 2016 12:20:26 +0000 (05:20 -0700)]
Fix SKP version in tasks.json, make upload_skps.py update tasks.json

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2426863003

Review-Url: https://codereview.chromium.org/2426863003

7 years agoskslc now automatically turns on derivatives support
Ethan Nicholas [Tue, 18 Oct 2016 12:16:41 +0000 (08:16 -0400)]
skslc now automatically turns on derivatives support

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3569

Change-Id: I211f4a80ced951a0d2f29763f85fe75a5daccff7
Reviewed-on: https://skia-review.googlesource.com/3569
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agoIncremental decode: only use subset for subsetting
scroggo [Mon, 17 Oct 2016 21:32:41 +0000 (14:32 -0700)]
Incremental decode: only use subset for subsetting

In the initial patch, we modified the subset passed to incremental
decoding to account for sampling in Y. This allowed SkSampledCodec to
use a tighter bounds. But it also means that the implementation cannot
distinguish between lines that are excluded due to subsetting and those
excluded at the beginning and end due to sampling. This becomes
problematic in GIF (crrev.com/2045293002), which may need to fill,
requiring it to reconstruct the actual destination. In truth,
SkGifCodec does not need to support subsets, but cannot distinguish
between the tighter bounds and a true subset.

Fix this by passing the scaled subset to incremental decode, without
using the tighter bounds.

Make SkSampler::rowNeeded take the starting coordinate into account.

In SkPngCodec, compute the number of rows needed in the output, and use
that as a signal to stop.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2420843003

Review-Url: https://codereview.chromium.org/2420843003

7 years agoRemove aux procs from SkGlyphCache.
Ben Wagner [Mon, 17 Oct 2016 20:55:53 +0000 (16:55 -0400)]
Remove aux procs from SkGlyphCache.

Doesn't appear that anyone is using these anymore. The last user was
removed with https://codereview.chromium.org/1985163002/ landed as
https://skia.googlesource.com/skia/+/c2878e23d405e7ae77f6110602ad75ce1f6b941c

Change-Id: I224354cd0d1ecbbb1100aa1e4b415d48637a51f3
Reviewed-on: https://skia-review.googlesource.com/3582
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
7 years agoAvoid integer overflow in SkIcoCodec and SkImageInfo
Matt Sarett [Mon, 17 Oct 2016 18:32:46 +0000 (14:32 -0400)]
Avoid integer overflow in SkIcoCodec and SkImageInfo

Original Commit Message:
"""
Avoid integer overflow in SkIcoCodec

Definitely good to avoid overflow here.

FWIW, this looks to be harmless for Android's current use.
They will just fail later on when trying to allocate the
bitmap.

BUG=skia:5857
"""

With the new test, ASAN also caught an integer overflow
bug in SkImageInfo.  Fix this as well.

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN;master.client.skia.android:Test-Android-Clang-AndroidOne-CPU-MT6582-arm-Debug-GN_Android

BUG=skia:5857

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3568

Change-Id: I0d777a547850474ea6cea87e36efa05434e33635
Reviewed-on: https://skia-review.googlesource.com/3568
Reviewed-by: Kevin Lubick <kjlubick@google.com>
7 years agoRe-enable overdraw mode in debugger.
Ben Wagner [Mon, 17 Oct 2016 19:20:02 +0000 (15:20 -0400)]
Re-enable overdraw mode in debugger.

Debugger is the last user of the deprecated SkPaintFilterCanvas
constructor. Stop using it and remove the constructor.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3268

Change-Id: I3e9180d48abdf86cb2c05bd8d95acabcdaa70427
Reviewed-on: https://skia-review.googlesource.com/3268
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoUpdate SKP version
update-skps [Mon, 17 Oct 2016 21:06:21 +0000 (14:06 -0700)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=
NO_MERGE_BUILDS
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2430443002

Review-Url: https://codereview.chromium.org/2430443002

7 years agoModify deferred texture image API's handling of gamma
Brian Osman [Mon, 17 Oct 2016 13:51:37 +0000 (09:51 -0400)]
Modify deferred texture image API's handling of gamma

This tries to match the behavior you would see if you rendered directly to
a canvas without going through this round-trip. Specifically, mips are
built in the same way that they would be according to the context's
internal logic. To make things clearer, the user passes in the color space
of the destination surface, not our (internal) enum.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3526

Change-Id: If8c61500d34ae712227da0284f3a80cacf84113a
Reviewed-on: https://skia-review.googlesource.com/3526
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoskp_parser
halcanary [Mon, 17 Oct 2016 20:19:02 +0000 (13:19 -0700)]
skp_parser

compiles with GN.

NOTRY=true
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2281733003

Review-Url: https://codereview.chromium.org/2281733003

7 years agomore skslc hardening
ethannicholas [Mon, 17 Oct 2016 18:24:37 +0000 (11:24 -0700)]
more skslc hardening

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2427693002

Review-Url: https://codereview.chromium.org/2427693002

7 years agoApply correct sRGB->Linear4f conversion in SkModeColorFilter
Matt Sarett [Mon, 17 Oct 2016 17:52:49 +0000 (13:52 -0400)]
Apply correct sRGB->Linear4f conversion in SkModeColorFilter

This fixes a software rendering bug in Android.  Vector drawable
icons were being drawn "too light" because they were missing this
step.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3563

Change-Id: I9b9c0dc571244dab17ee125ecb7814d7f85181e2
Reviewed-on: https://skia-review.googlesource.com/3563
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoSwitch Windows ANGLE bots to GN.
Mike Klein [Mon, 17 Oct 2016 17:07:56 +0000 (13:07 -0400)]
Switch Windows ANGLE bots to GN.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-ANGLE-Trybot;master.client.skia:Test-Win-MSVC-ShuttleC-GPU-GTX960-x86_64-Release-ANGLE-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3539

Change-Id: I076c4c5972344b6688d648a8ea5e5618e87fd88d
Reviewed-on: https://skia-review.googlesource.com/3539
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoIncrease MSAN timeout from 4 to 9 hours.
Ben Wagner [Mon, 17 Oct 2016 17:29:02 +0000 (13:29 -0400)]
Increase MSAN timeout from 4 to 9 hours.

Recent runs have been timing out.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3562

Change-Id: I891d95fce0506df7ffe6cc57c9d2238bab1e547f
Reviewed-on: https://skia-review.googlesource.com/3562
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoAdd "Narrow" RGB gamut to DM
Brian Osman [Mon, 17 Oct 2016 15:14:02 +0000 (11:14 -0400)]
Add "Narrow" RGB gamut to DM

This is an artificially small color space, for testing rendering with
values that fall outside of [0,1]. All of the saturated sRGB colors used
in our tests will end up landing outside of [0,1] in this space, so we can
verify that nothing that crashes, or produces wildly incorrect results.

Of course, many GMs *do* produce wildly incorrect results, but I need
to catalog all of those and start figuring out why.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3532

Change-Id: Idb44ee6250f2d7198e634755cd2b1f3bc8f15412
Reviewed-on: https://skia-review.googlesource.com/3532
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoRevert "Avoid integer overflow in SkIcoCodec"
Matt Sarett [Mon, 17 Oct 2016 17:43:23 +0000 (17:43 +0000)]
Revert "Avoid integer overflow in SkIcoCodec"

This reverts commit 20cba06a4bc9bde60b2dc37907d11ca81ba35ce8.

Reason for revert: <INSERT REASONING HERE>

TBR=msarett@google.com,scroggo@google.com,kjlubick@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Id8f48a90a7dc620f9c0ee2f419d14bae2b0c1e7e
Reviewed-on: https://skia-review.googlesource.com/3564
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoAdd a buildbotless Android bot
borenet [Mon, 17 Oct 2016 17:17:53 +0000 (10:17 -0700)]
Add a buildbotless Android bot

BUG=skia:5626
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2428603002

Review-Url: https://codereview.chromium.org/2428603002

7 years agoAvoid integer overflow in SkIcoCodec
Matt Sarett [Mon, 17 Oct 2016 16:30:39 +0000 (12:30 -0400)]
Avoid integer overflow in SkIcoCodec

Definitely good to avoid overflow here.

FWIW, this looks to be harmless for Android's current use.
They will just fail later on when trying to allocate the
bitmap.

BUG=skia:5857

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3527

Change-Id: Ia1fb7d864d21ecdb127a1dd1a72cab8375cb43fb
Reviewed-on: https://skia-review.googlesource.com/3527
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
7 years agoGN: ANGLE build completes now on Windows
Mike Klein [Mon, 17 Oct 2016 16:34:38 +0000 (12:34 -0400)]
GN: ANGLE build completes now on Windows

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-ANGLE-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3537

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

7 years agoGN: get Angle compiling on Windows.
Mike Klein [Mon, 17 Oct 2016 15:51:11 +0000 (11:51 -0400)]
GN: get Angle compiling on Windows.

Angle does not yet link, but it does compile.

I chickened out and wrote cp.py to be the copy tool on Windows.  I've got all platforms using it for consistency.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-ANGLE-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3533

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

7 years agoexperimental/xps_to_png: fix DPI, usage message
Hal Canary [Mon, 17 Oct 2016 15:52:40 +0000 (11:52 -0400)]
experimental/xps_to_png: fix DPI, usage message

NOTRY=true
Change-Id: I4d4c46b5889ab8e8b8f54e8c631b3932912051dd
Reviewed-on: https://skia-review.googlesource.com/3534
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoMake GCC ninja log lines consistent with MSVC.
Mike Klein [Mon, 17 Oct 2016 14:41:41 +0000 (10:41 -0400)]
Make GCC ninja log lines consistent with MSVC.

I recently switched over MSVC to simpler log lines from Ninja.  This makes GCC- or Clang-based builds use the same set of messages.  It's less noise when things go right; Ninja prints the whole line when a step fails.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3540

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

7 years agoRecreateSKPs: Fix another .join() issue
borenet [Mon, 17 Oct 2016 15:09:33 +0000 (08:09 -0700)]
RecreateSKPs: Fix another .join() issue

BUG=skia:5843
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2429513002

Review-Url: https://codereview.chromium.org/2429513002

7 years agofix some fuzz
caryclark [Mon, 17 Oct 2016 14:54:33 +0000 (07:54 -0700)]
fix some fuzz

TBR=reed@google.com
BUG=654939, 655829, 656149
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2425733002

Review-Url: https://codereview.chromium.org/2425733002

7 years agoAvoid SkImage ref churn in short lived SkBitmapProvider
fmalita [Mon, 17 Oct 2016 14:16:05 +0000 (07:16 -0700)]
Avoid SkImage ref churn in short lived SkBitmapProvider

SkBitmapProvider is always stack-allocated and tightly-scoped.  It
should be safe to store a SkImage rawptr instead of a ref object.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2424813002

Review-Url: https://codereview.chromium.org/2424813002

7 years agoSkip SkBitmapProvider instantiation in SkImageShader::onContextSize
fmalita [Mon, 17 Oct 2016 13:09:26 +0000 (06:09 -0700)]
Skip SkBitmapProvider instantiation in SkImageShader::onContextSize

No reason to delegate through a SkBitmapProvider AFAICT.  This avoids
some ref churn.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2419333002

Review-Url: https://codereview.chromium.org/2419333002

7 years agoRoll recipe DEPS
borenet [Mon, 17 Oct 2016 12:12:15 +0000 (05:12 -0700)]
Roll recipe DEPS

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2425603003

Review-Url: https://codereview.chromium.org/2425603003

7 years agoRecreateSKPs: Fix GoogleStorageDataStore.delete_path
borenet [Mon, 17 Oct 2016 12:12:10 +0000 (05:12 -0700)]
RecreateSKPs: Fix GoogleStorageDataStore.delete_path

BUG=skia:5843
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2423093002

Review-Url: https://codereview.chromium.org/2423093002

7 years agoCache dst LUTs in SkColorSpaceXform
Matt Sarett [Sun, 16 Oct 2016 14:20:41 +0000 (10:20 -0400)]
Cache dst LUTs in SkColorSpaceXform

This is only useful in the rare case that the dst does not
fall into one of our main paths.

But it's a good optimization, since this does happen,
and typically, the dst won't change.

ColorCodecBench z620 --nonstd --xform_only
Without Patch 511us
With Patch    348us

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3400

Change-Id: Ibf68d9ce7072680465662922f4aa15630545e3d6
Reviewed-on: https://skia-review.googlesource.com/3400
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoupdate GN docs
Mike Klein [Sat, 15 Oct 2016 15:44:45 +0000 (11:44 -0400)]
update GN docs

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3425
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=3425

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

7 years agoPut all Win bots on GN except -ANGLE bots.
Mike Klein [Sat, 15 Oct 2016 15:09:30 +0000 (11:09 -0400)]
Put all Win bots on GN except -ANGLE bots.

Not quite there yet for ANGLE.  The rest should be good to go.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3424

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

7 years agoUnbreak -Fast bot.
Mike Klein [Sat, 15 Oct 2016 05:18:45 +0000 (01:18 -0400)]
Unbreak -Fast bot.

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3423

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

7 years agoSkNx_abi for passing Sk4f as function arguments, etc.
Mike Klein [Sat, 15 Oct 2016 04:13:29 +0000 (00:13 -0400)]
SkNx_abi for passing Sk4f as function arguments, etc.

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3422

Change-Id: Idc0a192faa7ff843aef023229186580c69baf1f7
Reviewed-on: https://skia-review.googlesource.com/3422
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoWrap SkNx types in anonymous namespace again.
Mike Klein [Fri, 14 Oct 2016 21:09:03 +0000 (17:09 -0400)]
Wrap SkNx types in anonymous namespace again.

This should make each compilation unit's SkNx types distinct from each other's as far as C++ cares.  This keeps us from violating the One Definition Rule with different implementations for the same function.

Here's an example I like.  Sk4i SkNx_cast(Sk4b) has at least 4 different sensible implementations:
     - SSE2:   punpcklbw xmm, zero; punpcklbw xmm, zero
     - SSSE3:  load mask; pshufb xmm, mask
     - SSE4.1: pmovzxbd
     - AVX2:  vpmovzxbd

We really want all these to inline, but if for some reason they don't (Debug build, poor inliner) and they're compiled in SkOpts.cpp, SkOpts_ssse3.cpp, SkOpts_sse41.cpp, SkOpts_hsw.cpp... boom!

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3461

Change-Id: I0088ebfd7640c1b0de989738ed43c81b530dc0d9
Reviewed-on: https://skia-review.googlesource.com/3461
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoRework GL fbo blit limitations as finer grained flags.
Brian Salomon [Fri, 14 Oct 2016 20:18:33 +0000 (16:18 -0400)]
Rework GL fbo blit limitations as finer grained flags.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3480
BUG=skia:5804

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

7 years agoFix bad test that was asserting on Vulkan Win10 bot
Brian Osman [Fri, 14 Oct 2016 20:48:17 +0000 (16:48 -0400)]
Fix bad test that was asserting on Vulkan Win10 bot

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3504

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

7 years agoGN/Win: Vulkan support, convert -Vulkan bots.
Mike Klein [Fri, 14 Oct 2016 18:04:56 +0000 (14:04 -0400)]
GN/Win: Vulkan support, convert -Vulkan bots.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86_64-Release-Vulkan-Trybot;master.client.skia:Test-Win10-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug-Vulkan-Trybot,Perf-Win10-MSVC-ShuttleA-GPU-GTX660-x86_64-Release-Vulkan-Trybot,Perf-Win10-MSVC-ShuttleA-GPU-GTX660-x86_64-Debug-Vulkan-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3421

Change-Id: I7012719fff66778488589ab9c15fd2fa2a109cd1
Reviewed-on: https://skia-review.googlesource.com/3421
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Greg Daniel <egdaniel@google.com>
7 years agoCapture ES3 MSAA blit restrictions using BlitFramebufferSupport not MSFBOType.
Brian Salomon [Fri, 14 Oct 2016 15:30:51 +0000 (11:30 -0400)]
Capture ES3 MSAA blit restrictions using BlitFramebufferSupport not MSFBOType.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3416

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

7 years agoDisable ANGLE GL backed on windows perf bots
Brian Salomon [Fri, 14 Oct 2016 19:41:54 +0000 (15:41 -0400)]
Disable ANGLE GL backed on windows perf bots

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3501

Change-Id: I0e3a166cd07560501cb350b780e264c274c81601
Reviewed-on: https://skia-review.googlesource.com/3501
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoanother SkSL crash fix
ethannicholas [Fri, 14 Oct 2016 19:14:46 +0000 (12:14 -0700)]
another SkSL crash fix

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2420163002

Review-Url: https://codereview.chromium.org/2420163002

7 years agoRefactor color_xform_RGBA() to improve performance
Matt Sarett [Fri, 14 Oct 2016 17:04:55 +0000 (13:04 -0400)]
Refactor color_xform_RGBA() to improve performance

Now that we've identified this as the "fast path", it has
become (somewhat) stable, and I'm ready to ship it, I feel
comfortable playing games with clang to get the behavior
we want.

toSRGB Performance on HP z620:
Before: 370us or 470us (depending on the mood of my computer)
After:  345us (or better, always)

My guess is that clang optimizers do a better job of interleaving
instructions effectively when we put everything into one function.

Regardless of being silly about performance, I also acutally
prefer how the code reads this way.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3440

Change-Id: Id7a40fb9966341ab184a5331b3e4da19b3af3344
Reviewed-on: https://skia-review.googlesource.com/3440
Commit-Queue: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoRevert of Presubmit recipe: commit the patch (patchset #3 id:40001 of https://coderev...
borenet [Fri, 14 Oct 2016 17:11:44 +0000 (10:11 -0700)]
Revert of Presubmit recipe: commit the patch (patchset #3 id:40001 of https://codereview.chromium.org/2398653002/ )

Reason for revert:
Instead of trying to run the presubmit for try jobs and at every commit, let's do it only for try jobs, which worked fine without this CL.

Original issue's description:
> Presubmit recipe: call presubmit_support.py directly
>
> For some reason, presubmit_support.py can't find PRESUBMIT.py
> unless it has a diff. Calling this script directly allows us
> to specify a fake upstream to force it to find a diff and
> therefore be able to find PRESUBMIT.py.
>
> BUG=skia:5823
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2398653002
>
> Committed: https://skia.googlesource.com/skia/+/c1c7c21fdd2793b2c03b8ffc06461a00c4241a18

TBR=rmistry@google.com,borenet@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:5823

Review-Url: https://codereview.chromium.org/2414133003

7 years agomore SkSL fuzzer crash fixes
ethannicholas [Fri, 14 Oct 2016 16:56:33 +0000 (09:56 -0700)]
more SkSL fuzzer crash fixes

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2414413002

Review-Url: https://codereview.chromium.org/2414413002

7 years agoAlways use RGBA textures for color font atlases
Brian Osman [Fri, 14 Oct 2016 15:42:20 +0000 (11:42 -0400)]
Always use RGBA textures for color font atlases

This is the last use of kSkiaGamma8888_GrPixelConfig

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3417

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

7 years agofix skslc crashes uncovered by fuzz testing
ethannicholas [Fri, 14 Oct 2016 15:37:32 +0000 (08:37 -0700)]
fix skslc crashes uncovered by fuzz testing

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2413423003

Review-Url: https://codereview.chromium.org/2413423003

7 years agoFaster 4f gradient premul path
fmalita [Fri, 14 Oct 2016 15:18:24 +0000 (08:18 -0700)]
Faster 4f gradient premul path

Similar to https://codereview.chromium.org/2409583003/, perform the
premul in 4f.  It turns out it's even faster to avoid the 255 load
multiplication in this case.

Also includes some template plumbing because DstTraits<>::load now needs
to be premul-aware (previously it wasn't).

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2416233002

Review-Url: https://codereview.chromium.org/2416233002

7 years agoExplicit control in tools of ANGLE frontend and backend
bsalomon [Fri, 14 Oct 2016 15:13:48 +0000 (08:13 -0700)]
Explicit control in tools of ANGLE frontend and backend

Update the ANGLE test GL context, GrContextFactory, and config parsing to allow explicit control of ANGLE front/backend.

This will allow us to explicitly test ES2 vs ES3 interfaces to ANGLE as well as D3D9, D3D11, and OpenGL backends.

Also makes the angle api types valid in all builds (but will just fail when SK_ANGLE=1 or not on windows for the d3d backends).

BUG=skia:5804
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2381033002

CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Win-MSVC-ShuttleC-GPU-GTX960-x86_64-Debug-ANGLE-Trybot

Review-Url: https://codereview.chromium.org/2381033002

7 years agoRemove many uses of kSkia8888 and kSkiaGamma8888
Brian Osman [Fri, 14 Oct 2016 13:16:21 +0000 (09:16 -0400)]
Remove many uses of kSkia8888 and kSkiaGamma8888

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3405

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

7 years agoUpdate CQ_INCLUDE_TRYBOTS examples in docs to actually be "real world"
Brian Salomon [Fri, 14 Oct 2016 14:03:36 +0000 (10:03 -0400)]
Update CQ_INCLUDE_TRYBOTS examples in docs to actually be "real world"

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3409
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=3409

Change-Id: I5f524b2d04822dd9780302fae9bd064d81f10c6c
Reviewed-on: https://skia-review.googlesource.com/3409
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoMove skdiff tool and add to gn build.
bungeman [Thu, 13 Oct 2016 21:36:40 +0000 (17:36 -0400)]
Move skdiff tool and add to gn build.

I really wanted this today, so I got it working again.

Change-Id: I1a37d48d4806198b55c59d1df5ff15a03500195f
Reviewed-on: https://skia-review.googlesource.com/3383
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoAdd NewRGB() with float gamma to SkColorSpace public API
Matt Sarett [Thu, 13 Oct 2016 22:24:20 +0000 (18:24 -0400)]
Add NewRGB() with float gamma to SkColorSpace public API

Necessary because PNGs like to specify their gamma this way.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3402

Change-Id: I399984d611db907b115b345df1afc88d39326fbb
Reviewed-on: https://skia-review.googlesource.com/3402
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoAdd support for Atrace and hook into SkEventTracer framework.
Greg Daniel [Fri, 14 Oct 2016 13:12:53 +0000 (09:12 -0400)]
Add support for Atrace and hook into SkEventTracer framework.

This change is a different version of:
https://skia-review.googlesource.com/c/3269/

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3345

Change-Id: I49d4f2987740d3ad1307f6aba3add0d63a46b22d
Reviewed-on: https://skia-review.googlesource.com/3345
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Greg Daniel <egdaniel@google.com>

7 years agoadded SkSL support for mustForceNegatedAtanParamToFloat cap
ethannicholas [Fri, 14 Oct 2016 13:40:02 +0000 (06:40 -0700)]
added SkSL support for mustForceNegatedAtanParamToFloat cap

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2413363002

Review-Url: https://codereview.chromium.org/2413363002

7 years agoAdd infra_tests.py, recipe, buildbotless bot
borenet [Fri, 14 Oct 2016 13:32:09 +0000 (06:32 -0700)]
Add infra_tests.py, recipe, buildbotless bot

Have the presubmit (upload) run infra_tests.py if anything in infra/ changed.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2415193002

Review-Url: https://codereview.chromium.org/2415193002

7 years agoexperimental: xps_to_png program (windows only)
Hal Canary [Thu, 13 Oct 2016 19:30:11 +0000 (15:30 -0400)]
experimental: xps_to_png program (windows only)

BUG=skia:409
NOTRY=true
Change-Id: Ib0df603535de71b0a324808c17e47691435df666
Reviewed-on: https://skia-review.googlesource.com/3342
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoGN/Win: hook in GPU support
Mike Klein [Thu, 13 Oct 2016 21:18:04 +0000 (17:18 -0400)]
GN/Win: hook in GPU support

Just a simple oversight... this should make Ganesh work.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-Exceptions-Trybot,Build-Win-MSVC-x86_64-Debug-GN-Trybot,Build-Win-MSVC-x86_64-Release-GN-Trybot
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3382

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

7 years agoGN/Win: suppport GDI, convert GDI bots to build with GN.
Mike Klein [Thu, 13 Oct 2016 19:45:07 +0000 (15:45 -0400)]
GN/Win: suppport GDI, convert GDI bots to build with GN.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-GDI-Trybot,Build-Win-MSVC-x86-Release-GDI-Trybot;master.client.skia:Perf-Win-MSVC-GCE-CPU-AVX2-x86_64-Debug-GDI-Trybot,Test-Win-MSVC-GCE-CPU-AVX2-x86_64-Debug-GDI-Trybot,Test-Win-MSVC-GCE-CPU-AVX2-x86_64-Release-GDI-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3324

Change-Id: I3ff2f5d16de9fff7ed77fa5127b96bef55bef957
Reviewed-on: https://skia-review.googlesource.com/3324
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSlightly generalize GPU hard stop gradient implementation.
Brian Salomon [Thu, 13 Oct 2016 20:08:36 +0000 (16:08 -0400)]
Slightly generalize GPU hard stop gradient implementation.

With this CL we handle single off-center hardstop gradients.

BUG=chromium:543625

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3303

Change-Id: Ic754e87469475ce15865c54055b8ed492e1d826d
Reviewed-on: https://skia-review.googlesource.com/3303
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7 years agoadded basic dataflow analysis to skslc
ethannicholas [Thu, 13 Oct 2016 20:25:34 +0000 (13:25 -0700)]
added basic dataflow analysis to skslc

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2405383003

Review-Url: https://codereview.chromium.org/2405383003

7 years agoAllow F16 color type on direct raster canvases
junov [Thu, 13 Oct 2016 20:14:27 +0000 (13:14 -0700)]
Allow F16 color type on direct raster canvases

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2416063002

Review-Url: https://codereview.chromium.org/2416063002

7 years agoremove SkError
Mike Klein [Thu, 13 Oct 2016 18:18:09 +0000 (14:18 -0400)]
remove SkError

It has not caught on.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3321

Change-Id: Ib2ee4ef99bc89c8f4b7504e42a9d7d9dfc483015
Reviewed-on: https://skia-review.googlesource.com/3321
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoAdd timestamp to bot ninja output.
Mike Klein [Thu, 13 Oct 2016 18:54:32 +0000 (14:54 -0400)]
Add timestamp to bot ninja output.

The default NINJA_STATUS format is "[%f/%t] ".  This prepends %e to help diagnose slow builds.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3323

Change-Id: Ied27317cedc2b07ff57c59eae61fe9e86c7fea33
Reviewed-on: https://skia-review.googlesource.com/3323
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Eric Boren <borenet@google.com>
7 years agoGN/Win: quieter builds
Mike Klein [Thu, 13 Oct 2016 18:31:01 +0000 (14:31 -0400)]
GN/Win: quieter builds

It's hard to read the logs as they are now.  This simplifies down the descriptions, and stifles a warning about linking object files with no symbols into a static library.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-Exceptions-Trybot,Build-Win-MSVC-x86_64-Debug-GN-Trybot,Build-Win-MSVC-x86_64-Release-GN-Trybot
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3322

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

7 years agoWorkaround unreachable code warning in GrGLCaps
Brian Salomon [Tue, 11 Oct 2016 21:40:33 +0000 (14:40 -0700)]
Workaround unreachable code warning in GrGLCaps

BUG=skia:5833

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3179

Change-Id: I0b5ba57e533280e85b3672f476017dc12aefbbe5
Reviewed-on: https://skia-review.googlesource.com/3179
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoRemoved makeLinearGamma() from the public API for SkColorSpace
raftias [Thu, 13 Oct 2016 17:45:44 +0000 (10:45 -0700)]
Removed makeLinearGamma() from the public API for SkColorSpace

It will now reside in SkColorSpace_Base. Future work for SkColorSpace
will cause this function to not be desirable or sensible to call on
all SkColorSpaces. Call sites were changed to make a kSRGBLinear_Named
instead of kSRGB_Named -> makeLinearGamma() (the majority of cases),
and if that was not possible, SkColorSpace_Base::makeLinearGamma()
was called instead.

TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2412613005

Review-Url: https://codereview.chromium.org/2412613005

7 years agoRemove SK_SUPPORT_LEGACY_TEXTBLOB_BUILDER.
Ben Wagner [Wed, 5 Oct 2016 16:30:14 +0000 (12:30 -0400)]
Remove SK_SUPPORT_LEGACY_TEXTBLOB_BUILDER.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2988

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

7 years agoGN/Win: pass /DEBUG to linker to get debug symbols.
Mike Klein [Thu, 13 Oct 2016 17:19:25 +0000 (13:19 -0400)]
GN/Win: pass /DEBUG to linker to get debug symbols.

Not much used for debug symbols if they're not linked in.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-Exceptions-Trybot,Build-Win-MSVC-x86_64-Debug-GN-Trybot,Build-Win-MSVC-x86_64-Release-GN-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3320

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

7 years agoStop rebooting Android devices during Swarming tasks
borenet [Thu, 13 Oct 2016 17:31:08 +0000 (10:31 -0700)]
Stop rebooting Android devices during Swarming tasks

Swarming will reboot the devices after each task.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2402403002

Review-Url: https://codereview.chromium.org/2402403002

7 years ago[task scheduler] Trybots assume rietveld for now
borenet [Thu, 13 Oct 2016 17:25:52 +0000 (10:25 -0700)]
[task scheduler] Trybots assume rietveld for now

Eventually we'll switch to gerrit-only. Supporting both will probably be
more complicated than it's worth.

BUG=skia:5723
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2413653005

Review-Url: https://codereview.chromium.org/2413653005

7 years agoSkXPS: compile under clang on win
halcanary [Thu, 13 Oct 2016 15:44:11 +0000 (08:44 -0700)]
SkXPS: compile under clang on win

BUG=chromium:616763
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2408133006

Review-Url: https://codereview.chromium.org/2408133006

7 years agoOutput location of rankings CSV and a link to download SKPs by rank
Ravi Mistry [Thu, 13 Oct 2016 14:36:50 +0000 (10:36 -0400)]
Output location of rankings CSV and a link to download SKPs by rank

Example run: https://luci-milo.appspot.com/swarming/task/31cdda8d5cb95310

BUG=skia:5826

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3173

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

7 years agoRevert of leave pixel memory uninitialized for opaque alpha type in SkSurface::MakeRa...
mtklein [Thu, 13 Oct 2016 14:46:14 +0000 (07:46 -0700)]
Revert of leave pixel memory uninitialized for opaque alpha type in SkSurface::MakeRaster (patchset #1 id:1 of https://codereview.chromium.org/2412633002/ )

Reason for revert:
Reverting while we think about skia:5854 so the bot doesn't regress further.

Original issue's description:
> leave pixel memory uninitialized for opaque alpha type in SkSurface::MakeRaster
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2412633002
>
> Committed: https://skia.googlesource.com/skia/+/c64ef3563dc8badac3d64544513b03df826cf8c3

TBR=mtklein@chromium.org,bsalomon@google.com,reed@google.com,lsalzman@mozilla.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5854

Review-Url: https://codereview.chromium.org/2421473003

7 years agoPreserve color space of images in deferred texture API
brianosman [Thu, 13 Oct 2016 13:44:23 +0000 (06:44 -0700)]
Preserve color space of images in deferred texture API

For raster images, this already worked (we were peeking the
pixmap's info). But for generated images, we discarded
format and color space information. Fixes an error with the
deferred GMs in sRGB modes, and also should help the Chrome
color correctness work.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2416453004

Review-Url: https://codereview.chromium.org/2416453004

7 years agoRecipe fixes to support try jobs in task scheduler
borenet [Thu, 13 Oct 2016 13:23:45 +0000 (06:23 -0700)]
Recipe fixes to support try jobs in task scheduler

BUG=skia:5723
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2410843002

Review-Url: https://codereview.chromium.org/2410843002

7 years agoGN/Win: warnings and warn-as-error
Mike Klein [Thu, 13 Oct 2016 03:58:06 +0000 (23:58 -0400)]
GN/Win: warnings and warn-as-error

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-Exceptions-Trybot,Build-Win-MSVC-x86_64-Debug-GN-Trybot,Build-Win-MSVC-x86_64-Release-GN-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3258

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

7 years agoGN: naive attempt for 32-bit Windows support
Mike Klein [Thu, 13 Oct 2016 02:42:55 +0000 (22:42 -0400)]
GN: naive attempt for 32-bit Windows support

This uses the win_toolchain's SetEnv.cmd script to set up the environment for x86 builds.  Some of what it sets is redundant with what we set: include_dirs (INCLUDE), lib_dirs (LIB).  I'd sort of like to learn what parts of it actually matter: VSINSTALLDIR? VCINSTALLDIR? likely PATH?
This will not work for local builds not using win_toolchain.  I don't mind that too much, at least for now, maybe forever.  Most humans should be using 64-bit builds.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-Exceptions-Trybot,Build-Win-MSVC-x86_64-Debug-GN-Trybot,Build-Win-MSVC-x86_64-Release-GN-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3257

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

7 years agoGN: take over Windows -Exceptions bot.
Mike Klein [Wed, 12 Oct 2016 23:27:41 +0000 (19:27 -0400)]
GN: take over Windows -Exceptions bot.

This will make it temporarily 64-bit until I sort out 32-bit builds (tomorrow?) but that's an unimportant dimension for this bot... we just want to make sure we can build with /EHsc.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86-Debug-Exceptions-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3255

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

7 years agoGN: windows flags tweaks.
Mike Klein [Wed, 12 Oct 2016 23:36:09 +0000 (19:36 -0400)]
GN: windows flags tweaks.

Should be no need for /TC, /TP.
Don't set GCC-like 32-bit build flags on Windows.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-GN-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3256

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

7 years agoleave pixel memory uninitialized for opaque alpha type in SkSurface::MakeRaster
lsalzman [Wed, 12 Oct 2016 23:50:16 +0000 (16:50 -0700)]
leave pixel memory uninitialized for opaque alpha type in SkSurface::MakeRaster

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2412633002

Review-Url: https://codereview.chromium.org/2412633002

7 years agoDisable MSVC optimization of sk_tool_utils::make_big_path().
Mike Klein [Wed, 12 Oct 2016 21:06:48 +0000 (17:06 -0400)]
Disable MSVC optimization of sk_tool_utils::make_big_path().

This one function takes MSVC about 2 minutes to compile with optimization turned on, and roughly doubles my clean build wall time on a Z840 (186s before this change -> 95s after).

It's test-only, so who really cares how fast it is?

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3254

Change-Id: I1318024caee281f3f8d44c05258b2bd4bd4eb695
Reviewed-on: https://skia-review.googlesource.com/3254
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoGN/Win: flesh out compiler flags.
Mike Klein [Wed, 12 Oct 2016 20:25:27 +0000 (16:25 -0400)]
GN/Win: flesh out compiler flags.

This should turn on the basics: optimization, debug symbols, disabled RTTI.

Release builds compile monobench, and cl.exe isn't happy with 1.0/0.0 there, so I swapped that into infinity().

Also, gn format I skipped last time.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-GN-Trybot,Build-Win-MSVC-x86_64-Release-GN-Trybot

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3252

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