platform/upstream/libSkiaSharp.git
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>

7 years agoFix double-accounting of SkPictureShader bitmap memory
fmalita [Wed, 12 Oct 2016 20:43:43 +0000 (13:43 -0700)]
Fix double-accounting of SkPictureShader bitmap memory

The pixels RAM is accounted via SkImageGenerator/SkImageCacherator, we
don't need to report it as part of SkPictureShader's BitmapShaderRec.

R=reed@google.com
BUG=chromium:619929
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2415673002

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

7 years agoGN/Win: support win_toolchain asset?
Mike Klein [Wed, 12 Oct 2016 19:52:44 +0000 (15:52 -0400)]
GN/Win: support win_toolchain asset?

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

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

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

7 years agoUpdate GN recipes for Windows.
Mike Klein [Wed, 12 Oct 2016 18:32:09 +0000 (14:32 -0400)]
Update GN recipes for Windows.

fetch-gn is a Python script, gn is a batch script, and ninja is an exe.

Pass the win_toolchain package to GN as windk.  This won't work yet.

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

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

7 years agofixed GLVec4ScalarBench
ethannicholas [Wed, 12 Oct 2016 18:46:07 +0000 (11:46 -0700)]
fixed GLVec4ScalarBench

TBR=jvanverth@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2419573002

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

7 years agoRemove hack allowing fRefCnt of 0.
Ben Wagner [Wed, 12 Oct 2016 15:04:25 +0000 (11:04 -0400)]
Remove hack allowing fRefCnt of 0.

In some legacy situations users of SkRefCnt subclasses were keeping
the objects alive with a reference count of 0. Now that these users are
cleaned up, remove the hack which allowed such code to keep functioning.

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

Change-Id: I22f63d87b6d995cad6326998284930ad9eaa2983
Reviewed-on: https://skia-review.googlesource.com/3264
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoAdd SkRasterPipeline support to SkModeColorFilter.
Mike Klein [Wed, 12 Oct 2016 15:05:05 +0000 (11:05 -0400)]
Add SkRasterPipeline support to SkModeColorFilter.

The shader leaves its color in r,g,b,a, so to implement this color filter, we move {r,g,b,a} into {dr,dg,db,da}, then load the filter's color in {r,g,b,a}, then apply the xfermode as usual.

I've left a note about how we could sometimes cut a stage for some xfermodes.  Similarly we really only need to move_src_dst instead of swap_src_dst, but it seemed handy and less error prone to do a full two way swap.  As usual, we can always circle back and fine-tune these things if we want.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3243
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Change-Id: I928c0fb25236eb75cf238134c6bebb53af5ddf07
Reviewed-on: https://skia-review.googlesource.com/3243
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoRemove workaround for old compilers that do not support SSSE3.
Mike Klein [Wed, 12 Oct 2016 16:28:03 +0000 (12:28 -0400)]
Remove workaround for old compilers that do not support SSSE3.

We now require SSSE3, SSE4.1, SSE4.2, AVX, F16C, AVX2, and FMA compiler support on x86.  This lone workaround for missing SSSE3 support is incongruous.  It's also unlikely that there's any x86 compiler that supports C++11 but not SSSE3, certainly none we care about.

BUG=skia:

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

Change-Id: Ie83f5ebb3f214eec726fedd0df6f46e72f735f38
Reviewed-on: https://skia-review.googlesource.com/3244
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoGN/Win: everything links on my machine.
Mike Klein [Wed, 12 Oct 2016 16:20:25 +0000 (12:20 -0400)]
GN/Win: everything links on my machine.

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

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

7 years agoSkRasterPipeline: 8x pipelines, without any 8x code enabled.
Mike Klein [Wed, 12 Oct 2016 13:52:55 +0000 (09:52 -0400)]
SkRasterPipeline: 8x pipelines, without any 8x code enabled.

Original review here: https://skia-review.googlesource.com/c/2990/
Second attempt here:  https://skia-review.googlesource.com/c/3064/

This is the same as the second attempt, but with the change to SkOpts_hsw.cpp left out.
That omitted part is the key piece... this just lands the refactoring.

CQ_INCLUDE_TRYBOTS=master.client.skia:Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot,Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-GN,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot;master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-Trybot

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

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

7 years agoDon't pass in RT to individual Gpu CommandBuffer calls
Greg Daniel [Wed, 12 Oct 2016 13:47:22 +0000 (09:47 -0400)]
Don't pass in RT to individual Gpu CommandBuffer calls

The Vulkan backend already stored a GrVkRT, but was inconsistent
in sometimes using the stored value and sometimes the passed in
value (though they should be the same). This just cleans up the
code so that everyone uses a stored RT.

BUG=skia:

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

Change-Id: I571de4bfb1da612d61171321d5224a9a19d8e545
Reviewed-on: https://skia-review.googlesource.com/3126
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7 years agoFix interface validation in Vulkan.
Greg Daniel [Tue, 11 Oct 2016 20:31:05 +0000 (16:31 -0400)]
Fix interface validation in Vulkan.

TBR=bsalomon@google.com

BUG=skia:

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

Change-Id: Ifad3249e6839e9b4aa34792646b2d54ff9304da7
Reviewed-on: https://skia-review.googlesource.com/3176
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoGrTessellator: make inverse fill types more sane.
senorblanco [Wed, 12 Oct 2016 13:47:44 +0000 (06:47 -0700)]
GrTessellator: make inverse fill types more sane.

In the screenspace AA tessellator, a path's fill types would be applied
twice: once when extracting contours, and then again when filling polys.
It was supposed to be forced to kWinding_FillType by the second call to
mesh_to_polys(), but for hysterical reasons this parameter is unused!

For kInverseWinding_FillType (the only mode where this actually caused a bug),
I unwittingly papered over the problem by reversing the outer contour for the
inverse fill types, and comparing against -1 instead of 1.

The better fix is to actually pass a winding mode of kWinding_FillType
to polys_to_triangles(), and remove the (ignored) param from mesh_to_polys().
Then we can pass a clockwise outer contour as before, and compare
against 1 instead of -1.

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

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

7 years agoTurned on SkSL->GLSL compiler
ethannicholas [Wed, 12 Oct 2016 13:39:56 +0000 (06:39 -0700)]
Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c
Committed: https://skia.googlesource.com/skia/+/ccb1dd8f267f9d7fe7c9d0ce222ebc81b41853b3
Review-Url: https://codereview.chromium.org/2288033003

7 years agoskpbench: add warmup run
csmartdalton [Wed, 12 Oct 2016 01:28:54 +0000 (18:28 -0700)]
skpbench: add warmup run

Does actual work while waiting for hardware settings to kick in,
rather than just sleeping.

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

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

7 years agoNDK Clang can build hb-icu.cc for mipsel now.
Mike Klein [Tue, 11 Oct 2016 23:59:22 +0000 (19:59 -0400)]
NDK Clang can build hb-icu.cc for mipsel now.

I haven't explicitly confirmed this, but it's likely that today's r12b -> r13 upgrade made this possible.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-Clang-mipsel-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-mipsel-Release-GN_Android-Trybot

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

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

7 years agoGN/Win: everything but skiaserve links.
Mike Klein [Tue, 11 Oct 2016 22:13:53 +0000 (18:13 -0400)]
GN/Win: everything but skiaserve links.

BUG=skia:

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

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

7 years agoGN/Windows: fiddle links and runs
Mike Klein [Tue, 11 Oct 2016 21:49:33 +0000 (17:49 -0400)]
GN/Windows: fiddle links and runs

BUG=skia:

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

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

7 years agoAdd SkColorSpaceTransferFn to SkColorSpace
Matt Sarett [Tue, 11 Oct 2016 20:57:50 +0000 (16:57 -0400)]
Add SkColorSpaceTransferFn to SkColorSpace

BUG=skia:

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

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

7 years agoMore steps toward GN/Windows.
Mike Klein [Tue, 11 Oct 2016 21:08:53 +0000 (17:08 -0400)]
More steps toward GN/Windows.

I think I'm now at the point of needing to just resolve missing symbols.

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

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

7 years agoimplement A8 destination fast-path for SkPixelInfo::CopyPixels
lsalzman [Tue, 11 Oct 2016 21:29:12 +0000 (14:29 -0700)]
implement A8 destination fast-path for SkPixelInfo::CopyPixels

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

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

7 years agoGN: windows compiles locally.
Mike Klein [Tue, 11 Oct 2016 20:26:57 +0000 (16:26 -0400)]
GN: windows compiles locally.

Not yet linking.  Ignoring bots for now.

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

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

7 years agofix vertex alpha calculation in GrTesselator
lsalzman [Tue, 11 Oct 2016 19:20:17 +0000 (12:20 -0700)]
fix vertex alpha calculation in GrTesselator

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

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

7 years agoAdd AA Analytic Compile Flag (and small fixes)
liyuqian [Tue, 11 Oct 2016 19:20:08 +0000 (12:20 -0700)]
Add AA Analytic Compile Flag (and small fixes)

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

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

7 years agoskpbench: add debug prints for thermal trip points
csmartdalton [Tue, 11 Oct 2016 19:15:13 +0000 (12:15 -0700)]
skpbench: add debug prints for thermal trip points

Prints thermal trip points that have been exceeded when a
HardwareException is raised, and verbosity is set to debug. This can
help us correlate thermal trip points with throttling and detect
future throttling before it occurs.

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

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

7 years agoFix 32-bit Vulkan build
Brian Osman [Mon, 10 Oct 2016 21:04:52 +0000 (17:04 -0400)]
Fix 32-bit Vulkan build

In 32-bit land, VkFence is uint64_t, so reinterpret_cast (between two
identical integral types) is illegal.

BUG=skia:

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

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

7 years agoAdd SkColorSpaceXform to the public API
msarett [Tue, 11 Oct 2016 19:15:03 +0000 (12:15 -0700)]
Add SkColorSpaceXform to the public API

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

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

7 years agoFix GN formatting presubmit on Windows.
Mike Klein [Tue, 11 Oct 2016 18:03:06 +0000 (14:03 -0400)]
Fix GN formatting presubmit on Windows.

BUG=skia:

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

Change-Id: I6e19b18d6851516357f71930e406b9fb324ea81f
Reviewed-on: https://skia-review.googlesource.com/3182
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
7 years agoMake `gn gen` work on Windows again.
Mike Klein [Tue, 11 Oct 2016 17:51:55 +0000 (13:51 -0400)]
Make `gn gen` work on Windows again.

Clang detection is specific to GCC-like toolchains.

BUG=skia:

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

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

7 years agoUpdate to Android NDK r13.
Mike Klein [Tue, 11 Oct 2016 15:21:36 +0000 (11:21 -0400)]
Update to Android NDK r13.

The libc++ include paths have changed very slightly.  I've left GN compatible with both older r12 NDKs and the new r13 to smooth the transition.

The libc++ in r13 depends on long-double math.h functions (cosl, atanl, etc.) only available in Android API v21 (Lollipop) and up.  That's what the 64-bit bots were already on, so we just pull the 32-bit bots up to the same target.  Conveniently, the oldest bots we have (N7 and N10) are on Lollipop.

The r13 MIPS64 sysroots are a little weird... /usr/include and /usr/lib64 but no /usr/lib.  That'd be fine---we only want 64-bit builds---but Clang searches for /usr/lib64 via its path to /usr/lib, and without at least an empty /usr/lib, it can't find /usr/lib64.  So you'll see a special mips64el section in the GN config where we do this all manually (other platforms pick this all up correctly from --sysroot).  I've chosen to do this rather than fix it up in the asset create.py scripts so that we stay compatible with vanilla NDKs, which is convenient for developers.

CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Mac-Clang-arm64-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-arm-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-arm-Release-GN_Android-Trybot,Build-Ubuntu-Clang-arm64-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-arm64-Debug-GN_Android_FrameworkDefs-Trybot,Build-Ubuntu-Clang-arm64-Debug-GN_Android_Vulkan-Trybot,Build-Ubuntu-Clang-arm64-Release-GN_Android-Trybot,Build-Ubuntu-Clang-mips64el-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-mips64el-Release-GN_Android-Trybot,Build-Ubuntu-Clang-mips64el-Release-GN_Android-Trybot,Build-Ubuntu-Clang-mipsel-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-mipsel-Release-GN_Android-Trybot,Build-Ubuntu-Clang-x64-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-x64-Release-GN_Android-Trybot,Build-Ubuntu-Clang-x86-Debug-GN_Android-Trybot,Build-Ubuntu-Clang-x86-Release-GN_Android-Trybot

BUG=skia:

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

Change-Id: I6f3b5d9411ded0ee49c1099490f41fa86a8736f8
Reviewed-on: https://skia-review.googlesource.com/3180
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoRevert of Turned on SkSL->GLSL compiler (patchset #49 id:1240001 of https://coderevie...
jvanverth [Tue, 11 Oct 2016 17:03:56 +0000 (10:03 -0700)]
Revert of Turned on SkSL->GLSL compiler (patchset #49 id:1240001 of https://codereview.chromium.org/2288033003/ )

Reason for revert:
Pre-emptive revert. Sorry, but we're getting back up on our roll and Chrome reverted our last one for apparently no reason.

Original issue's description:
> Turned on SkSL->GLSL compiler
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003
>
> Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
> Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
> Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
> Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
> Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c
> Committed: https://skia.googlesource.com/skia/+/ccb1dd8f267f9d7fe7c9d0ce222ebc81b41853b3

TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

7 years agoAdd SkColorSpacePrimaries to help with making D50 matrices
msarett [Tue, 11 Oct 2016 16:41:16 +0000 (09:41 -0700)]
Add SkColorSpacePrimaries to help with making D50 matrices

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

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

7 years agoRemove restrictive format pattern for Fontconfig matching
drott [Tue, 11 Oct 2016 16:03:46 +0000 (09:03 -0700)]
Remove restrictive format pattern for Fontconfig matching

This pattern pushes CFF fonts too far low in the list. Instead
it is enough to rely on the isValidPattern function to skip
Type 1 fonts.

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

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

7 years agoTurned on SkSL->GLSL compiler
ethannicholas [Tue, 11 Oct 2016 15:47:04 +0000 (08:47 -0700)]
Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c
Review-Url: https://codereview.chromium.org/2288033003

7 years agoAdd new GM to demonstrates SkGaussianEdgeShader
Robert Phillips [Tue, 11 Oct 2016 14:18:18 +0000 (10:18 -0400)]
Add new GM to demonstrates SkGaussianEdgeShader

This would've caught the incorrect distances in the center bug

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

Change-Id: I9461a8865b561cc139a18a5e779e933d7979ee0d
Reviewed-on: https://skia-review.googlesource.com/3111
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoRevert of Turned on SkSL->GLSL compiler (patchset #48 id:1220001 of https://coderevie...
mtklein [Tue, 11 Oct 2016 02:41:32 +0000 (19:41 -0700)]
Revert of Turned on SkSL->GLSL compiler (patchset #48 id:1220001 of https://codereview.chromium.org/2288033003/ )

Reason for revert:
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/26798

Original issue's description:
> Turned on SkSL->GLSL compiler
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003
>
> Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
> Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
> Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
> Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
> Committed: https://skia.googlesource.com/skia/+/dcfe6dba4a335e50e86ff68e3252065d4197432c

TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

7 years agofix 'GrClip::quickContains was hidden' warning in GrNoClip
lsalzman [Mon, 10 Oct 2016 22:36:24 +0000 (15:36 -0700)]
fix 'GrClip::quickContains was hidden' warning in GrNoClip

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

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

7 years agoGN: build dump_record
Mike Klein [Wed, 5 Oct 2016 19:41:01 +0000 (15:41 -0400)]
GN: build dump_record

BUG=skia:

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

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

7 years agoMore fixes for webpages_playback
borenet [Mon, 10 Oct 2016 20:20:49 +0000 (13:20 -0700)]
More fixes for webpages_playback

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

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

7 years agoSimplify rowsDecoded returned by incrementalDecode
scroggo [Mon, 10 Oct 2016 18:35:01 +0000 (11:35 -0700)]
Simplify rowsDecoded returned by incrementalDecode

When sampling, we previously had to figure out the number of rows that
were written to the output based on the value reported by
incrementalDecode. (We also messed up the first time - see the fix in
crrev.com/2343153003.)

Instead, make incrementalDecode report the actual number of rows
written to. This can be provided directly to fill.

Make SkPngCodec report the correct number of rows, by incrementing its
count when it actually writes to the destination.

This also will simplify my in progress GIF change.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2407543002

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

7 years agoRecreateSKPs: Don't download and use the .boto file
borenet [Mon, 10 Oct 2016 17:37:30 +0000 (10:37 -0700)]
RecreateSKPs: Don't download and use the .boto file

It's not needed for the new bucket.

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

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

7 years agoSpecify the Android build number as a swarming dimension
borenet [Mon, 10 Oct 2016 17:17:49 +0000 (10:17 -0700)]
Specify the Android build number as a swarming dimension

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

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

7 years agoTurned on SkSL->GLSL compiler
ethannicholas [Mon, 10 Oct 2016 17:09:00 +0000 (10:09 -0700)]
Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b
Review-Url: https://codereview.chromium.org/2288033003

7 years agoUpdate AndroidShadows slide with new stroking offset
Robert Phillips [Fri, 7 Oct 2016 18:44:07 +0000 (14:44 -0400)]
Update AndroidShadows slide with new stroking offset

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

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

7 years agoRevert of Turned on SkSL->GLSL compiler (patchset #47 id:1200001 of https://coderevie...
jvanverth [Mon, 10 Oct 2016 16:18:23 +0000 (09:18 -0700)]
Revert of Turned on SkSL->GLSL compiler (patchset #47 id:1200001 of https://codereview.chromium.org/2288033003/ )

Reason for revert:
Looks like it introduces new static initializers, and it's failing the Chrome roll.

Original issue's description:
> Turned on SkSL->GLSL compiler
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003
>
> Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
> Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
> Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
> Committed: https://skia.googlesource.com/skia/+/08b2ccf398e2b81bc05d2c105837e5419899469b

TBR=benjaminwagner@google.com,bsalomon@google.com,egdaniel@google.com,ethannicholas@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

7 years agoUpdate comment, move constant inside helper struct
Brian Osman [Mon, 10 Oct 2016 15:26:43 +0000 (11:26 -0400)]
Update comment, move constant inside helper struct

BUG=skia:

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

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

7 years agowebpages_playback: Fix GS path with extra '/'
borenet [Mon, 10 Oct 2016 15:14:11 +0000 (08:14 -0700)]
webpages_playback: Fix GS path with extra '/'

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

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

7 years agoAdd description to Gold
stephana [Mon, 10 Oct 2016 14:59:08 +0000 (07:59 -0700)]
Add description to Gold

BUG=skia:
R=hcm,jcgregorio
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2406753002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=2406753002

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

7 years agoFix iOS surface creation for SampleApp
jvanverth [Mon, 10 Oct 2016 14:39:38 +0000 (07:39 -0700)]
Fix iOS surface creation for SampleApp

BUG=skia:5810
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2394843003
TBR=bsalomon@google.com

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

7 years agoRevert "SkRasterPipeline: 8x pipelines, attempt 2"
Mike Klein [Mon, 10 Oct 2016 14:23:37 +0000 (14:23 +0000)]
Revert "SkRasterPipeline: 8x pipelines, attempt 2"

This reverts commit Id0ba250037e271a9475fe2f0989d64f0aa909bae.

crbug.com/654213
Looks like Chrome Canary's picking up Haswell code on non-Haswell machines.

Change-Id: I16f976da24db86d5c99636c472ffad56db213a2a
Reviewed-on: https://skia-review.googlesource.com/3108
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoReport 0 rowsDecoded for no rows (SkPngCodec interlaced)
scroggo [Mon, 10 Oct 2016 14:17:32 +0000 (07:17 -0700)]
Report 0 rowsDecoded for no rows (SkPngCodec interlaced)

incrementalDecode is supposed to report the number of rows decoded. It
failed to if none were decoded (for an interlaced png). Fix the bug and
add a test.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2402063002

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

7 years agoFix an assert statement in SkPngCodec
scroggo [Mon, 10 Oct 2016 13:45:32 +0000 (06:45 -0700)]
Fix an assert statement in SkPngCodec

allRowsCallback was asserting that
    rowNum - fFirstRow == fLinesDecoded

But it was expecting fFirstRow to be 0 (logically, it is, since we are
decoding all rows), and it never set it (because it doesn't really need
to, except for this assert). This is only a problem if we reuse an
SkPngCodec after previously scaling with it. Add a test that triggers
the assert, and fix it.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2401133002

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

7 years agoUpdate Perf docs and add a couple screenshots.
Joe Gregorio [Mon, 10 Oct 2016 13:38:59 +0000 (09:38 -0400)]
Update Perf docs and add a couple screenshots.

BUG=skia:

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

Change-Id: Ic2d1743b2dc42701202ff316277db4c944d969d3
Reviewed-on: https://skia-review.googlesource.com/3121
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>

7 years agoTurned on SkSL->GLSL compiler
ethannicholas [Mon, 10 Oct 2016 13:40:23 +0000 (06:40 -0700)]
Turned on SkSL->GLSL compiler
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2288033003

Committed: https://skia.googlesource.com/skia/+/9b0fe3d125f237d9884732a48414fa85fc71b4e3
Committed: https://skia.googlesource.com/skia/+/b12b3c6908c62c908b3680be01e3b5bfd30de310
Committed: https://skia.googlesource.com/skia/+/f008b0a59f45c0d4bea3e66faf3b01805009ec89
Review-Url: https://codereview.chromium.org/2288033003

7 years agoConvert gradient params test helper to a struct
Brian Osman [Mon, 3 Oct 2016 22:29:03 +0000 (18:29 -0400)]
Convert gradient params test helper to a struct

Much less copy-pasted code, fewer implementation details leaking out,
and going to be easier to extend for 4f and color space testing.

BUG=skia:

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

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

7 years agowebpages_playback: use gsutil instead of API, no shell_utils
borenet [Mon, 10 Oct 2016 12:57:18 +0000 (05:57 -0700)]
webpages_playback: use gsutil instead of API, no shell_utils

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

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

7 years agoRoll recipe DEPS
borenet [Mon, 10 Oct 2016 11:51:02 +0000 (04:51 -0700)]
Roll recipe DEPS

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

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

7 years agofix another fuzz
caryclark [Fri, 7 Oct 2016 19:57:47 +0000 (12:57 -0700)]
fix another fuzz

Add one more early exit.

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

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

7 years agofix fuzz busters
caryclark [Fri, 7 Oct 2016 18:15:15 +0000 (11:15 -0700)]
fix fuzz busters

When fuzz is hit
just quit

TBR=reed@google.com
BUG=skia:5837, skia:5838, skia:5839
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2404483002

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

7 years agoSkRasterPipeline: 8x pipelines, attempt 2
Mike Klein [Fri, 7 Oct 2016 15:21:06 +0000 (11:21 -0400)]
SkRasterPipeline: 8x pipelines, attempt 2

Original review here: https://skia-review.googlesource.com/c/2990/

Changes since:
  - simpler implementations of load_tail() / store_tail(): slower, but more obviously correct to all compilers
  - fleshed out math ops on Sk8i and Sk8u to make unit tests happy on -Fast bot (where we always have AVX2)
  - now storing stage functions as void(*)() to avoid undefined behavior and/or linker problems.  This restores 32-bit Windows.
  - all AVX2 Sk8x methods are marked always-inline, to avoid linking the "wrong" version on Debug builds.

CQ_INCLUDE_TRYBOTS=master.client.skia:Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN-Trybot,Perf-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-GN,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot;master.client.skia.compile:Build-Win-MSVC-x86_64-Debug-Trybot

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

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

7 years agoGrTessellator: refactor Line out of Edge.
senorblanco [Fri, 7 Oct 2016 15:36:56 +0000 (08:36 -0700)]
GrTessellator: refactor Line out of Edge.

There are cases where we need only a line equation, and not a full
Edge. Create a Line struct for this, and refactor Edge to use it.

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

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

7 years agoWhitespace change to kick build.
Ben Wagner [Fri, 7 Oct 2016 14:30:01 +0000 (10:30 -0400)]
Whitespace change to kick build.

7 years agoReduce geometry size for circles to help fill rate.
jvanverth [Fri, 7 Oct 2016 13:57:32 +0000 (06:57 -0700)]
Reduce geometry size for circles to help fill rate.

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

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

7 years agoDisable svgs on nanobench when running on Valgrind
stephana [Fri, 7 Oct 2016 13:36:16 +0000 (06:36 -0700)]
Disable svgs on nanobench when running on Valgrind

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

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

7 years agoRevert "SkRasterPipeline: 8x pipelines"
Mike Klein [Fri, 7 Oct 2016 13:16:35 +0000 (13:16 +0000)]
Revert "SkRasterPipeline: 8x pipelines"

This reverts commit I1c82e5755d8e44cc0b9c6673d04b117f85d71a3a.

Reason for revert: lots of failing bots.

TBR=mtklein@chromium.org,msarett@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I653bed3905187f43196504f19424985fa2a765b5
Reviewed-on: https://skia-review.googlesource.com/3063
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoDisable antialiasing on interior of filled RRects that need distance vectors
Robert Phillips [Thu, 6 Oct 2016 21:38:46 +0000 (17:38 -0400)]
Disable antialiasing on interior of filled RRects that need distance vectors

The interior antialiasing was causing a small transparent rectangle in the middle of filled rects

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

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

7 years agoSkRasterPipeline: 8x pipelines
Mike Klein [Thu, 6 Oct 2016 19:06:38 +0000 (15:06 -0400)]
SkRasterPipeline: 8x pipelines

Bench runtime changes:
sRGB: 7194 -> 3735  = 1.93x faster
F16:  6531 -> 2559  = 2.55x faster

Instead of building 4x and 1-3x pipelines and then maybe 8x and 1-7x, instead build either the short ones or the long ones, but not both.  If we just take care to use a compatible run_pipeline(), there's some cross-module type disagreement but everything works out in the end.

Oddly, a few places that looked like they'd be faster using SkNx_fma() or Sk4f_round()/Sk8f_round() are actually faster the long way, e.g. multiply, add 0.5, truncate.  Curious!  In all the other places you see here that I've used SkNx_fma(), it's been a significant speedup.

This folds in a couple refactors and cleanups that I've been meaning to do.  Hope you don't mind... if find the new code considerably easier to read than the old code.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2990
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

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

7 years agoAssorted Android fixes
fmalita [Thu, 6 Oct 2016 21:37:23 +0000 (14:37 -0700)]
Assorted Android fixes

Ran into these while trying to follow https://skia.org/user/quick/android.

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

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

7 years agoAuto re-gen for gn cmake generator.
Ben Wagner [Wed, 5 Oct 2016 21:18:38 +0000 (17:18 -0400)]
Auto re-gen for gn cmake generator.

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

Change-Id: I73c6ce9e852c280bbb2017c30717809b4cb44046
Reviewed-on: https://skia-review.googlesource.com/3028
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoAdd distance values to interior of filled RRects
Robert Phillips [Thu, 6 Oct 2016 19:03:34 +0000 (15:03 -0400)]
Add distance values to interior of filled RRects

This doesn't compute the correct distance vector but it suffices for gaussian edges.

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

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

7 years agoHarden SkPicturePlayback::handleOp() skips
fmalita [Thu, 6 Oct 2016 19:09:50 +0000 (12:09 -0700)]
Harden SkPicturePlayback::handleOp() skips

SkValidatingReadBuffer::skip() may return null - tread more carefully
around it.

BUG=skia:5828
R=reed@google.com,mtklein@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2399043002

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

7 years agoFix Vulkan orientation during screne rotations
Greg Daniel [Thu, 6 Oct 2016 17:57:57 +0000 (13:57 -0400)]
Fix Vulkan orientation during screne rotations

This will fix the Vulkan orientation when the screen is rotated by having
the compositor do the corrections for us. However, it is suggested in the
Android Vulkan docs that for power reasons it may be better for the app
to get the needed rotation off of the VkAndroidSurface and then manually
adjust for this rotation in the rendering without the compositor doing any
corrections. This is something we can look into a later date as it would
require sending some info back from the VulkanWindowContext back to Skia
about what Matrix should be applied.

BUG=skia:

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

Change-Id: I4d3d620ffcc77e607fce8d06b869c2912a61400c
Reviewed-on: https://skia-review.googlesource.com/3052
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>

7 years agoFix SkDeferredCanvas for use on android.
Herb Derby [Thu, 6 Oct 2016 18:33:43 +0000 (14:33 -0400)]
Fix SkDeferredCanvas for use on android.

BUG=skia:

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

Change-Id: Ie55023257736a12360a233d01096462ba2eb3e74
Reviewed-on: https://skia-review.googlesource.com/3030
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoremove sprintf
caryclark [Thu, 6 Oct 2016 18:46:25 +0000 (11:46 -0700)]
remove sprintf

Most uses of sprintf are
in pathops testing.

Replace them with
SkString::appendf

and replace the remaining
with snprintf

R=scroggo@google.com
BUG=skia:2716
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2391133005

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

7 years agoMake load4 and store4 part of SkNx properly.
Mike Klein [Thu, 6 Oct 2016 15:09:27 +0000 (11:09 -0400)]
Make load4 and store4 part of SkNx properly.

Every type now nominally has Load4() and Store4() methods.
The ones that we use are implemented.

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3046
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

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

7 years agofuzzer fix
Cary Clark [Thu, 6 Oct 2016 16:04:16 +0000 (12:04 -0400)]
fuzzer fix

Error out when fuzzing
conditions are met.

Also, make degenerate
input line ends consistent.

TBR=reed@google.com
BUG=653452, 626164, skia:5829

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

Change-Id: I23a01adde9dec07b54d66ab2418b3ea0b96e4456
Reviewed-on: https://skia-review.googlesource.com/3048
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
7 years agofix other printf warning for SkBlendMode
reed [Thu, 6 Oct 2016 14:14:39 +0000 (07:14 -0700)]
fix other printf warning for SkBlendMode

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

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

7 years agofix mac all build
caryclark [Thu, 6 Oct 2016 14:06:00 +0000 (07:06 -0700)]
fix mac all build

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

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

7 years agoFix SkPath::arcTo when sweepAngle is tiny and radius is big
xidachen [Thu, 6 Oct 2016 12:42:23 +0000 (05:42 -0700)]
Fix SkPath::arcTo when sweepAngle is tiny and radius is big

In this function, it first check whether this arc is a lone point
or not. If not, it converts angles to unit vectors. The problem
here is that when the radius is huge and the sweepAngle is small,
the function angles_to_unit_vectors() could return a startV ==stopV.
When that happens, it will draw a dot at the point that corresponding
to the startAngle. This CL adds a special branch for this case, and
draw a connecting line between the points at startAngle and endAngle.

BUG=640031, skia:5807
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2388833002

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

7 years agofix printf warning in dumpcanvas
Mike Reed [Thu, 6 Oct 2016 02:17:34 +0000 (22:17 -0400)]
fix printf warning in dumpcanvas

BUG=skia:

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

Change-Id: I850609e499a670cda0fd09941345fe221fbeeffb
Reviewed-on: https://skia-review.googlesource.com/3040
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRevert[8] "replace SkXfermode obj with SkBlendMode enum in paints"
reed [Thu, 6 Oct 2016 00:33:02 +0000 (17:33 -0700)]
Revert[8] "replace SkXfermode obj with SkBlendMode enum in paints"

This reverts commit c245574ba3d0e2ade6c94b2812de3baa383bf4c4.

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

TBR=

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

7 years agotight bounds optimization
caryclark [Wed, 5 Oct 2016 20:23:00 +0000 (13:23 -0700)]
tight bounds optimization

Add support for tight bounds to detect and return moveTo
followed by close or zero-length lineTo.

Also short circuit so that hard work is avoided when
the path bounds is also the tight bounds.

Avoid doing work if the bounds can be trivially computed.
Include naked moveTo coordinates in the tight bounds.

R=fmalita@chromium.org
BUG=skia:5555, skia:5553
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2394443004

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

7 years agoRevert[7] "replace SkXfermode obj with SkBlendMode enum in paints"
Mike Reed [Wed, 5 Oct 2016 19:59:51 +0000 (19:59 +0000)]
Revert[7] "replace SkXfermode obj with SkBlendMode enum in paints"

This reverts commit Ib4a154cdd5f5d1dcac921ef50d53b79a2d6a1be8.

Reason for revert: new assert from 100K bot

Original change's description:
> Revert[6] "replace SkXfermode obj with SkBlendMode enum in paints"
>
> - perform version check in CreateProc for XfermodeImageFilter and ArithmeticImageFilter
> This reverts commit 3ed485f4249e17abb4b11f5018d03175fd1afb44.
>
> BUG=skia:
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2992
>
> Change-Id: Ib4a154cdd5f5d1dcac921ef50d53b79a2d6a1be8
> Reviewed-on: https://skia-review.googlesource.com/2992
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>

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

Change-Id: I848e5a69c5cd67f2c14889f4f0a346652578c4ff
Reviewed-on: https://skia-review.googlesource.com/3023
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoRevert "add cast for printf"
Mike Reed [Wed, 5 Oct 2016 20:18:24 +0000 (20:18 +0000)]
Revert "add cast for printf"

This reverts commit Ib9277facab87747b3cf9b71585e63067b4be9a58.

Reason for revert: reverted related CL

Original change's description:
> add cast for printf
>
> BUG=skia:
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3020
>
> Change-Id: Ib9277facab87747b3cf9b71585e63067b4be9a58
> Reviewed-on: https://skia-review.googlesource.com/3020
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>

TBR=reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I1621d4ea42e9a9403ce78db147c62e8a458b4e00
Reviewed-on: https://skia-review.googlesource.com/3024
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoadd cast for printf
Mike Reed [Wed, 5 Oct 2016 19:20:35 +0000 (15:20 -0400)]
add cast for printf

BUG=skia:

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

Change-Id: Ib9277facab87747b3cf9b71585e63067b4be9a58
Reviewed-on: https://skia-review.googlesource.com/3020
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoupdate deferred
Mike Reed [Wed, 5 Oct 2016 18:52:50 +0000 (14:52 -0400)]
update deferred

BUG=skia:

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

Change-Id: I49e029d5825e84ba36331586bfcfbf0fe34f7c2c
Reviewed-on: https://skia-review.googlesource.com/2994
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>