platform/upstream/libSkiaSharp.git
8 years agoMake copySurface work for texture dsts, return a bool, & add unit test.
bsalomon [Thu, 11 Feb 2016 19:42:31 +0000 (11:42 -0800)]
Make copySurface work for texture dsts, return a bool, & add unit test.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684313002

Review URL: https://codereview.chromium.org/1684313002

8 years agoenable ThermalManager on Android
joshualitt [Thu, 11 Feb 2016 19:42:19 +0000 (11:42 -0800)]
enable ThermalManager on Android

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684653002

Review URL: https://codereview.chromium.org/1684653002

8 years agoSupport more color types for ICOs
msarett [Thu, 11 Feb 2016 18:49:31 +0000 (10:49 -0800)]
Support more color types for ICOs

BUG=skia:4620
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1694513002

Review URL: https://codereview.chromium.org/1694513002

8 years agoAvoid initializing memory twice on incomplete RLE bmps
msarett [Thu, 11 Feb 2016 18:35:48 +0000 (10:35 -0800)]
Avoid initializing memory twice on incomplete RLE bmps

BUG=skia:4582
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689983002

Review URL: https://codereview.chromium.org/1689983002

8 years agointegrated SkDebugCanvas JSON support with UrlDataManager
ethannicholas [Thu, 11 Feb 2016 18:35:21 +0000 (10:35 -0800)]
integrated SkDebugCanvas JSON support with UrlDataManager
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686143004

Review URL: https://codereview.chromium.org/1686143004

8 years agoTest SkAndroidCodec for more types
scroggo [Thu, 11 Feb 2016 18:24:55 +0000 (10:24 -0800)]
Test SkAndroidCodec for more types

Now that SkAndroidCodec supports all types, stop selectively running
its tests for the types supported by BRD.

For the tests that actually require BRD support (i.e. partial
scanlines), change the method name from supports_scaled_codec to
supports_partial_scanlines to be more accurate today.

Use the name SkAndroidCodec instead of SkScaledCodec.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691823002

Review URL: https://codereview.chromium.org/1691823002

8 years agoFurther reduce the number of primitives in the donut tests. Avoids crashes on iOS.
brianosman [Thu, 11 Feb 2016 17:07:02 +0000 (09:07 -0800)]
Further reduce the number of primitives in the donut tests. Avoids crashes on iOS.

BUG=skia:4937
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691813002

Review URL: https://codereview.chromium.org/1691813002

8 years agoClarify bmp comment about when we support the alpha mask
msarett [Thu, 11 Feb 2016 16:41:53 +0000 (08:41 -0800)]
Clarify bmp comment about when we support the alpha mask

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689183002

Review URL: https://codereview.chromium.org/1689183002

8 years agoFix scanline decoding of rare RLE bmps
msarett [Thu, 11 Feb 2016 16:41:01 +0000 (08:41 -0800)]
Fix scanline decoding of rare RLE bmps

This also exposed a bug in rewinding RLE bmps, which I have also
fixed in this CL.

This should fix testcase7.bmp on Gold.

The image that I am adding to resources is in the
public domain.

BUG=skia:4730
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689953002

Review URL: https://codereview.chromium.org/1689953002

8 years agoSkNx refactoring
mtklein [Thu, 11 Feb 2016 16:10:22 +0000 (08:10 -0800)]
SkNx refactoring

  - add back Sk4i typedef
  - define SSE casts in terms of Sk4i
      * uint8  <-> float becomes uint8  <-> int <-> float
      * uint16 <-> float becomes uint16 <-> int <-> float

    This has the nice side effect of specializing uint8 <-> int
    and uint16 <-> int, which are useful in their own right.

There are many cast specializations now, some of which call each other.
I have tried to arrange them in some sort of sensible order, subject to
the constraint that those called must precede those who call.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690633003
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1690633003

8 years agoRemove SK_SUPPORT_LEGACY_BITMAP_FILTER guard
fmalita [Thu, 11 Feb 2016 16:06:39 +0000 (08:06 -0800)]
Remove SK_SUPPORT_LEGACY_BITMAP_FILTER guard

TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1695443002

Review URL: https://codereview.chromium.org/1695443002

8 years agoSkDocument: remove use of SkTArray (part 1/3).
halcanary [Thu, 11 Feb 2016 15:59:59 +0000 (07:59 -0800)]
SkDocument: remove use of SkTArray (part 1/3).

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689683002

Review URL: https://codereview.chromium.org/1689683002

8 years agowire up new json code in skiaserve
joshualitt [Thu, 11 Feb 2016 15:09:51 +0000 (07:09 -0800)]
wire up new json code in skiaserve

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691773002

Review URL: https://codereview.chromium.org/1691773002

8 years agofix for gpu valgrind bot
joshualitt [Thu, 11 Feb 2016 14:53:36 +0000 (06:53 -0800)]
fix for gpu valgrind bot

TBR=egdaniel@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689823004

Review URL: https://codereview.chromium.org/1689823004

8 years agoPass a GrContext pointer in GrDrawContext constructor
joshualitt [Thu, 11 Feb 2016 14:46:52 +0000 (06:46 -0800)]
Pass a GrContext pointer in GrDrawContext constructor

TBR=bsalomon@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691503002

Review URL: https://codereview.chromium.org/1691503002

8 years agoAdd AndroidCodecBench to time scaled decodes
msarett [Thu, 11 Feb 2016 14:45:51 +0000 (06:45 -0800)]
Add AndroidCodecBench to time scaled decodes

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685693003

Review URL: https://codereview.chromium.org/1685693003

8 years agoSkHalfToFloat_01 / SkFloatToHalf_01
mtklein [Thu, 11 Feb 2016 14:30:03 +0000 (06:30 -0800)]
SkHalfToFloat_01 / SkFloatToHalf_01

These are basically inlined, 4-at-a-time versions of our existing functions,
but cut down to avoid any work that's only necessary outside [0,1].

Both f16 and f32 denorms should work fine modulo the usual ARMv7 NEON denorm==zero caveat.

In exchange for a little speed, f32->f16 does not round properly.
Instead it truncates, so it's never off by more than 1 bit.

Support for finite values >1 or <0 is straightforward to add back.
>1 might already work as-is.

Getting close to _u16 performance:
    micros    bench
    261.13   xferu64_bw_1_opaque_u16
   1833.51   xferu64_bw_1_alpha_u16
   2762.32 ? xferu64_aa_1_opaque_u16
   3334.29   xferu64_aa_1_alpha_u16
    249.78   xferu64_bw_1_opaque_f16
   3383.18   xferu64_bw_1_alpha_f16
   4214.72   xferu64_aa_1_opaque_f16
   4701.19   xferu64_aa_1_alpha_f16

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133005

Committed: https://skia.googlesource.com/skia/+/9ea11a4235b3e3521cc8bf914a27c2d0dc062db9

CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1685133005

8 years agoRevert of SkHalfToFloat_01 / SkFloatToHalf_01 (patchset #11 id:200001 of https:/...
mtklein [Thu, 11 Feb 2016 14:00:49 +0000 (06:00 -0800)]
Revert of SkHalfToFloat_01 / SkFloatToHalf_01 (patchset #11 id:200001 of https://codereview.chromium.org/1685133005/ )

Reason for revert:
Gotta fix Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Original issue's description:
> SkHalfToFloat_01 / SkFloatToHalf_01
>
> These are basically inlined, 4-at-a-time versions of our existing functions,
> but cut down to avoid any work that's only necessary outside [0,1].
>
> Both f16 and f32 denorms should work fine modulo the usual ARMv7 NEON denorm==zero caveat.
>
> In exchange for a little speed, f32->f16 does not round properly.
> Instead it truncates, so it's never off by more than 1 bit.
>
> Support for finite values >1 or <0 is straightforward to add back.
> >1 might already work as-is.
>
> Getting close to _u16 performance:
>     micros    bench
>     261.13   xferu64_bw_1_opaque_u16
>    1833.51   xferu64_bw_1_alpha_u16
>    2762.32 ? xferu64_aa_1_opaque_u16
>    3334.29   xferu64_aa_1_alpha_u16
>     249.78   xferu64_bw_1_opaque_f16
>    3383.18   xferu64_bw_1_alpha_f16
>    4214.72   xferu64_aa_1_opaque_f16
>    4701.19   xferu64_aa_1_alpha_f16
>
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133005
>
> Committed: https://skia.googlesource.com/skia/+/9ea11a4235b3e3521cc8bf914a27c2d0dc062db9

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

Review URL: https://codereview.chromium.org/1693443003

8 years agoSkHalfToFloat_01 / SkFloatToHalf_01
mtklein [Thu, 11 Feb 2016 13:56:08 +0000 (05:56 -0800)]
SkHalfToFloat_01 / SkFloatToHalf_01

These are basically inlined, 4-at-a-time versions of our existing functions,
but cut down to avoid any work that's only necessary outside [0,1].

Both f16 and f32 denorms should work fine modulo the usual ARMv7 NEON denorm==zero caveat.

In exchange for a little speed, f32->f16 does not round properly.
Instead it truncates, so it's never off by more than 1 bit.

Support for finite values >1 or <0 is straightforward to add back.
>1 might already work as-is.

Getting close to _u16 performance:
    micros    bench
    261.13   xferu64_bw_1_opaque_u16
   1833.51   xferu64_bw_1_alpha_u16
   2762.32 ? xferu64_aa_1_opaque_u16
   3334.29   xferu64_aa_1_alpha_u16
    249.78   xferu64_bw_1_opaque_f16
   3383.18   xferu64_bw_1_alpha_f16
   4214.72   xferu64_aa_1_opaque_f16
   4701.19   xferu64_aa_1_alpha_f16

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685133005

Review URL: https://codereview.chromium.org/1685133005

8 years agoMove surface props off of GrTextContext
joshualitt [Thu, 11 Feb 2016 13:42:30 +0000 (05:42 -0800)]
Move surface props off of GrTextContext

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685653004

Review URL: https://codereview.chromium.org/1685653004

8 years agoskia: Add support for CHROMIUM_image backed textures.
erikchen [Thu, 11 Feb 2016 00:32:34 +0000 (16:32 -0800)]
skia: Add support for CHROMIUM_image backed textures.

I created a new abstract base class TextureStorageAllocator that consumers of
Skia can subclass and pass back to Skia. When a surface is created with a
pointer to a TextureStorageAllocator, any textures it creates, or that are
derived from the original surface, will allocate and deallocate storage using
the methods on TextureStorageAllocator.

BUG=https://code.google.com/p/chromium/issues/detail?id=579664
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1623653002

Committed: https://skia.googlesource.com/skia/+/92098e691f10a010e7421125ba4d44c02506bb55

Committed: https://skia.googlesource.com/skia/+/7fec91ce6660190f8d7c5eb6f3061e4550cc672b

Committed: https://skia.googlesource.com/skia/+/b8d6e088590160f1198110c2371b802c1d541a36

Review URL: https://codereview.chromium.org/1623653002

8 years agoAdd bench and gm for shapes
cdalton [Wed, 10 Feb 2016 22:54:21 +0000 (14:54 -0800)]
Add bench and gm for shapes

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1677253002

patch from issue 1686673002 at patchset 20001 (http://crrev.com/1686673002#ps20001)

Review URL: https://codereview.chromium.org/1677253002

8 years agoskiaserve: Fix /cmd/N and /cmd/N[0|1], the response was never queued.
jcgregorio [Wed, 10 Feb 2016 22:10:37 +0000 (14:10 -0800)]
skiaserve: Fix /cmd/N and /cmd/N[0|1], the response was never queued.

BUG=skia:
R=joshualitt@google.com, ethannicholas@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686553006

Review URL: https://codereview.chromium.org/1686553006

8 years agoadded JSON support for various lesser-used features
ethannicholas [Wed, 10 Feb 2016 22:05:02 +0000 (14:05 -0800)]
added JSON support for various lesser-used features
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690613002

Review URL: https://codereview.chromium.org/1690613002

8 years agoMore efficient Jpeg skipScanlines for older versions of libjpeg-turbo
msarett [Wed, 10 Feb 2016 21:49:36 +0000 (13:49 -0800)]
More efficient Jpeg skipScanlines for older versions of libjpeg-turbo

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683283002

Review URL: https://codereview.chromium.org/1683283002

8 years agoFix bug processing bmp bit masks
msarett [Wed, 10 Feb 2016 21:40:10 +0000 (13:40 -0800)]
Fix bug processing bmp bit masks

BUG=skia:4866
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1688003002

Review URL: https://codereview.chromium.org/1688003002

8 years agoadded SkDebugCanvas::toJSON
ethannicholas [Wed, 10 Feb 2016 20:57:30 +0000 (12:57 -0800)]
added SkDebugCanvas::toJSON
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684233002

Review URL: https://codereview.chromium.org/1684233002

8 years agoDocumentation for accessing the different repositories of SKPs
rmistry [Wed, 10 Feb 2016 20:55:06 +0000 (12:55 -0800)]
Documentation for accessing the different repositories of SKPs

BUG=skia:2306
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683233002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1683233002

Review URL: https://codereview.chromium.org/1683233002

8 years agoStart whittling down GrTextContext
joshualitt [Wed, 10 Feb 2016 20:52:21 +0000 (12:52 -0800)]
Start whittling down GrTextContext

TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684733005

Review URL: https://codereview.chromium.org/1684733005

8 years agoadded some missing static modifiers
ethannicholas [Wed, 10 Feb 2016 20:10:00 +0000 (12:10 -0800)]
added some missing static modifiers
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690683002

Review URL: https://codereview.chromium.org/1690683002

8 years agoRemove GrTextBlobCache/GrAtlasTextBlob friendliness
joshualitt [Wed, 10 Feb 2016 19:55:52 +0000 (11:55 -0800)]
Remove GrTextBlobCache/GrAtlasTextBlob friendliness

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686113002

Review URL: https://codereview.chromium.org/1686113002

8 years agodisable flaky gm for now
reed [Wed, 10 Feb 2016 19:36:06 +0000 (11:36 -0800)]
disable flaky gm for now

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689653002

TBR=

Review URL: https://codereview.chromium.org/1689653002

8 years agoRevert of Make SkPicture/SkImageGenerator default to SkCodec (patchset #7 id:120001...
kjlubick [Wed, 10 Feb 2016 19:25:07 +0000 (11:25 -0800)]
Revert of Make SkPicture/SkImageGenerator default to SkCodec (patchset #7 id:120001 of https://codereview.chromium.org/1671193002/ )

Reason for revert:
Breaks Ubuntu and Mac CMAKE

Original issue's description:
> Make SkPicture/SkImageGenerator default to SkCodec
>
> Remove reference to SkImageDecoder from SkPicture. Make the default
> InstallPixelRefProc passed to CreateFromStream use
> SkImageGenerator::NewFromEncoded instead.
>
> Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator.
> Remove the old version that used SkImageDecoder.
>
> Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default
> now behaves lazily.
>
> Update all clients to use the default.
>
> Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly.
>
> BUG=skia:4691
> BUG=skia:4290
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1671193002
>
> Committed: https://skia.googlesource.com/skia/+/026388a01864c74208ad57d1ba4f711602d101c6

TBR=msarett@google.com,reed@google.com,scroggo@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4691

Review URL: https://codereview.chromium.org/1685963004

8 years agoMake SkPicture/SkImageGenerator default to SkCodec
scroggo [Wed, 10 Feb 2016 19:15:21 +0000 (11:15 -0800)]
Make SkPicture/SkImageGenerator default to SkCodec

Remove reference to SkImageDecoder from SkPicture. Make the default
InstallPixelRefProc passed to CreateFromStream use
SkImageGenerator::NewFromEncoded instead.

Make SkImageGenerator::NewFromEncoded create an SkCodecImageGenerator.
Remove the old version that used SkImageDecoder.

Remove all versions of lazy_decode_bitmap/LazyDecodeBitmap. The default
now behaves lazily.

Update all clients to use the default.

Move SkImageDecoderGenerator into KtxTest.cpp, and use it directly.

BUG=skia:4691
BUG=skia:4290
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1671193002

Review URL: https://codereview.chromium.org/1671193002

8 years agoTurn on conservative raster clip for GPU canvases
bsalomon [Wed, 10 Feb 2016 18:41:01 +0000 (10:41 -0800)]
Turn on conservative raster clip for GPU canvases
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1682223002

Review URL: https://codereview.chromium.org/1682223002

8 years agoFinalize gpu shaders in ProgramBuilding.
egdaniel [Wed, 10 Feb 2016 17:50:38 +0000 (09:50 -0800)]
Finalize gpu shaders in ProgramBuilding.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1689703002

Review URL: https://codereview.chromium.org/1689703002

8 years agoFix for mips build
joshualitt [Wed, 10 Feb 2016 17:47:28 +0000 (09:47 -0800)]
Fix for mips build

TBR=scroggo@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1688823002

Review URL: https://codereview.chromium.org/1688823002

8 years agomove compose-shader into base-class as factory
reed [Wed, 10 Feb 2016 16:53:15 +0000 (08:53 -0800)]
move compose-shader into base-class as factory

next steps:
1. this lands
2. update android to call the new factory
3. move SkComposeShader.h into private

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686803003

Review URL: https://codereview.chromium.org/1686803003

8 years agocleanup textblob cache sanity check and prevent it from bitrotting
joshualitt [Wed, 10 Feb 2016 16:52:24 +0000 (08:52 -0800)]
cleanup textblob cache sanity check and prevent it from bitrotting

TBR=bsalomon@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684513004

Review URL: https://codereview.chromium.org/1684513004

8 years agoClean up comments in SkSwizzler
msarett [Wed, 10 Feb 2016 16:39:37 +0000 (08:39 -0800)]
Clean up comments in SkSwizzler

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1690583002

Review URL: https://codereview.chromium.org/1690583002

8 years agoSk4f: floor() via int32_t roundtrip.
mtklein [Wed, 10 Feb 2016 15:55:56 +0000 (07:55 -0800)]
Sk4f: floor() via int32_t roundtrip.

About 25% faster on both x86 and ARMv7.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1682953002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1682953002

8 years agoEnable ImageGenerator tests on direct raster and direct gpu backends
msarett [Wed, 10 Feb 2016 14:48:21 +0000 (06:48 -0800)]
Enable ImageGenerator tests on direct raster and direct gpu backends

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1682973004

Review URL: https://codereview.chromium.org/1682973004

8 years agoMoved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
ethannicholas [Wed, 10 Feb 2016 13:40:46 +0000 (05:40 -0800)]
Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
SkJSONCanvas and SkJSONRenderer will be deleted once the debug server
has been updated.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681643002

Committed: https://skia.googlesource.com/skia/+/32fff1ba0c759d97ab78320b7ae46dd7696a4e6e

Committed: https://skia.googlesource.com/skia/+/46cb6d6b82b0ab71033aef91419e8beae25bb8a4

Review URL: https://codereview.chromium.org/1681643002

8 years agoRevert of Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas. ...
caryclark [Wed, 10 Feb 2016 12:34:08 +0000 (04:34 -0800)]
Revert of Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas. (patchset #3 id:40001 of https://codereview.chromium.org/1681643002/ )

Reason for revert:
breaks various android builds, e.g.

https://android-build.storage.googleapis.com/builds/git_master-skia-linux-bullhead-userdebug/2596406/acb02999d48ace628601452700d4b4f8dcd5ed71b426e6ecdb1c7f5bc5452f7b/logs/build_error.log?Signature=BkLEdMOdi0LelP0v939QECdTZzznSD2dLFIkPu52E7%2BPr5Oj1ktq5nNlxGZn%2F4ZhCKXAw2%2FNHxy27nNJ8lffcgXn7PhQpa82bP%2B8F%2Bbyo9j%2BT%2B3etmOdQFEejJSRsEv2RrVWtKsKYRX%2FuZinrF9yD37jUpSbKNZvmvIbKa4V4IQ%3D&GoogleAccessId=701025073339-mqn0q2nvir9iurm6q5d00tdv7blbgvjr%40developer.gserviceaccount.com&Expires=1455108483

external/skia/bench/../tools/debugger/SkDrawCommand.cpp:602:9: error: use of undeclared identifier 'free'
        free(data);

Original issue's description:
> Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
> SkJSONCanvas and SkJSONRenderer will be deleted once the debug server
> has been updated.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681643002
>
> Committed: https://skia.googlesource.com/skia/+/32fff1ba0c759d97ab78320b7ae46dd7696a4e6e
>
> Committed: https://skia.googlesource.com/skia/+/46cb6d6b82b0ab71033aef91419e8beae25bb8a4

TBR=jcgregorio@google.com,joshualitt@chromium.org,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/1683093002

8 years agoRevert of skia: Add support for CHROMIUM_image backed textures. (patchset #19 id...
caryclark [Wed, 10 Feb 2016 00:28:46 +0000 (16:28 -0800)]
Revert of skia: Add support for CHROMIUM_image backed textures. (patchset #19 id:380001 of https://codereview.chromium.org/1623653002/ )

Reason for revert:
Breaks ASAN bot:

Direct leak of 56 byte(s) in 1 object(s) allocated from:
...
test_CustomTexture

https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Debug-ASAN/builds/2676/steps/dm/logs/stdio

Original issue's description:
> skia: Add support for CHROMIUM_image backed textures.
>
> I created a new abstract base class TextureStorageAllocator that consumers of
> Skia can subclass and pass back to Skia. When a surface is created with a
> pointer to a TextureStorageAllocator, any textures it creates, or that are
> derived from the original surface, will allocate and deallocate storage using
> the methods on TextureStorageAllocator.
>
> BUG=https://code.google.com/p/chromium/issues/detail?id=579664
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1623653002
>
> Committed: https://skia.googlesource.com/skia/+/92098e691f10a010e7421125ba4d44c02506bb55
>
> Committed: https://skia.googlesource.com/skia/+/7fec91ce6660190f8d7c5eb6f3061e4550cc672b
>
> Committed: https://skia.googlesource.com/skia/+/b8d6e088590160f1198110c2371b802c1d541a36

TBR=bsalomon@chromium.org,cblume@chromium.org,bsalomon@google.com,robertphillips@google.com,egdaniel@google.com,reed@google.com,erikchen@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=https://code.google.com/p/chromium/issues/detail?id=579664

Review URL: https://codereview.chromium.org/1684993002

8 years agoturn off debug svg file
caryclark [Wed, 10 Feb 2016 00:02:58 +0000 (16:02 -0800)]
turn off debug svg file

TBR=fmalita@chromium.org
BUG=skia:4549
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1674303004

Review URL: https://codereview.chromium.org/1674303004

8 years agoSk4f: add floor()
mtklein [Tue, 9 Feb 2016 23:41:36 +0000 (15:41 -0800)]
Sk4f: add floor()

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685773002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Committed: https://skia.googlesource.com/skia/+/86c6c4935171a1d2d6a9ffbff37ec6dac1326614

CQ_EXTRA_TRYBOTS=client.skia.android:Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release-Trybot,Test-Android-GCC-Nexus9-GPU-TegraK1-Arm64-Release-Trybot

Review URL: https://codereview.chromium.org/1685773002

8 years agoRevert of Sk4f: add floor() (patchset #3 id:40001 of https://codereview.chromium...
mtklein [Tue, 9 Feb 2016 23:10:56 +0000 (15:10 -0800)]
Revert of Sk4f: add floor() (patchset #3 id:40001 of https://codereview.chromium.org/1685773002/ )

Reason for revert:
build break must be this, right?

Original issue's description:
> Sk4f: add floor()
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685773002
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/86c6c4935171a1d2d6a9ffbff37ec6dac1326614

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

Review URL: https://codereview.chromium.org/1679343004

8 years agoMoved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
ethannicholas [Tue, 9 Feb 2016 22:37:55 +0000 (14:37 -0800)]
Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
SkJSONCanvas and SkJSONRenderer will be deleted once the debug server
has been updated.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681643002

Committed: https://skia.googlesource.com/skia/+/32fff1ba0c759d97ab78320b7ae46dd7696a4e6e

Review URL: https://codereview.chromium.org/1681643002

8 years agomake test consistent
caryclark [Tue, 9 Feb 2016 22:32:42 +0000 (14:32 -0800)]
make test consistent

Don't pass rand() to a function as a pair of
parameters, since the order of evaluation
is unknown

TBR=robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1682203002

Review URL: https://codereview.chromium.org/1682203002

8 years agoSk4f: add floor()
mtklein [Tue, 9 Feb 2016 21:46:49 +0000 (13:46 -0800)]
Sk4f: add floor()

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1685773002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1685773002

8 years agoskia: Add support for CHROMIUM_image backed textures.
erikchen [Tue, 9 Feb 2016 21:30:55 +0000 (13:30 -0800)]
skia: Add support for CHROMIUM_image backed textures.

I created a new abstract base class TextureStorageAllocator that consumers of
Skia can subclass and pass back to Skia. When a surface is created with a
pointer to a TextureStorageAllocator, any textures it creates, or that are
derived from the original surface, will allocate and deallocate storage using
the methods on TextureStorageAllocator.

BUG=https://code.google.com/p/chromium/issues/detail?id=579664
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1623653002

Committed: https://skia.googlesource.com/skia/+/92098e691f10a010e7421125ba4d44c02506bb55

Committed: https://skia.googlesource.com/skia/+/7fec91ce6660190f8d7c5eb6f3061e4550cc672b

Review URL: https://codereview.chromium.org/1623653002

8 years agoadd drawCircle to c api
reed [Tue, 9 Feb 2016 21:25:51 +0000 (13:25 -0800)]
add drawCircle to c api

BUG=skia:4927
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684763002

TBR=

Review URL: https://codereview.chromium.org/1684763002

8 years agoadd helper to create fancy underlines
caryclark [Tue, 9 Feb 2016 21:25:45 +0000 (13:25 -0800)]
add helper to create fancy underlines

Add a couple of utility functions to SkPaint that return the bounds
of glyphs between a pair of lines.

The common use case envisioned generates the edges of descenders
between the top and bottom bounds of an underline to allow computing
a stroke that skips those descenders.

The implementation stores a linked list in each glyph containing
the bounds of the lines parallel to the advance and the outermost
intersections within those bounds.

When the glyph cache is constructed, the glyph path is intersected
with the bounds and the extreme min and max values within the bounds
is added to an intercept.

Share the text to path iter to construct the data.

Make a half-hearted attempt to support vertical text; while the
vertical implementation is complete; surrounding code (e.g. paint
align) has short-comings with vertical.

R=fmalita@chromium.org, reed@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1654883003

Review URL: https://codereview.chromium.org/1654883003

8 years agomoved debugger support files from src/utils/debugger to tools/debugger
ethannicholas [Tue, 9 Feb 2016 20:44:06 +0000 (12:44 -0800)]
moved debugger support files from src/utils/debugger to tools/debugger
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1678893003

Review URL: https://codereview.chromium.org/1678893003

8 years agoDisable indirect backends for image decode tests
msarett [Tue, 9 Feb 2016 20:39:17 +0000 (12:39 -0800)]
Disable indirect backends for image decode tests

BUG=skia:4924
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684713002

Review URL: https://codereview.chromium.org/1684713002

8 years agoupdate DM deps in g3 build
mtklein [Tue, 9 Feb 2016 20:32:52 +0000 (12:32 -0800)]
update DM deps in g3 build

Added https://skia.googlesource.com/skia/+/f1d415188ffb4c34e2886c2cfceb363a148333f1

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683803002

Review URL: https://codereview.chromium.org/1683803002

8 years agoimplement more xfermodeproc4f and add GM
reed [Tue, 9 Feb 2016 19:59:24 +0000 (11:59 -0800)]
implement more xfermodeproc4f and add GM

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1677293004

Review URL: https://codereview.chromium.org/1684623002

8 years agoRemove SkNEW_APPEND_TO_TARRAY.
bungeman [Tue, 9 Feb 2016 19:32:56 +0000 (11:32 -0800)]
Remove SkNEW_APPEND_TO_TARRAY.

The use of SkNEW_APPEND_TO_TARRAY is now better served by
SkTArray::emplace_back(...) which should now be used instead. The
existing users of SkNEW_APPEND_TO_TARRAY are converted and the code
relating to SkNEW_APPEND_TO_TARRAY is removed.

TBR=reed
This only removes code. The file should also be made private.

Review URL: https://codereview.chromium.org/1682083002

8 years agorestore sk4i SSE specialization
mtklein [Tue, 9 Feb 2016 19:32:51 +0000 (11:32 -0800)]
restore sk4i SSE specialization

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1679343003
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1679343003

8 years agoSlim down Sk4fRoundtrip benches.
mtklein [Tue, 9 Feb 2016 19:03:40 +0000 (11:03 -0800)]
Slim down Sk4fRoundtrip benches.

Looks like the conversions are complicated enough to not compile away.
No need to mess with random number generation, etc.
We still need to blackhole it into a volatile in the end.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1682793002

Review URL: https://codereview.chromium.org/1682793002

8 years agosknx refactoring
mtklein [Tue, 9 Feb 2016 18:35:27 +0000 (10:35 -0800)]
sknx refactoring

  - trim unused specializations (Sk4i, Sk2d) and apis (SkNx_dup)
  - expand apis a little
    * v[0] == v.kth<0>()
    * SkNx_shuffle can now convert to different-sized vectors, e.g. Sk2f <-> Sk4f
  - remove anonymous namespace

I believe it's safe to remove the anonymous namespace right now.
We're worried about violating the One Definition Rule; the anonymous namespace protected us from that.

In Release builds, this is mostly moot, as everything tends to inline completely.
In Debug builds, violating the ODR is at worst an inconvenience, time spent trying to figure out why the bot is broken.

Now that we're building with SSE2/NEON everywhere, very few bots have even a chance about getting confused by two definitions of the same type or function.  Where we do compile variants depending on, e.g., SSSE3, we do so in static inline functions.  These are not subject to the ODR.

I plan to follow up with a tedious .kth<...>() -> [...] auto-replace.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1683543002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1683543002

8 years agoAdd unit test to feed valid SVG sequences to make sure that
caryclark [Tue, 9 Feb 2016 18:30:22 +0000 (10:30 -0800)]
Add unit test to feed valid SVG sequences to make sure that
path strings can be parsed without returning an error.

Draw the output through Skia and SVG to make sure they are
parsed correctly.

R=fmalita@chromium.org
BUG=skia:4549
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1675053002

Review URL: https://codereview.chromium.org/1675053002

8 years agoShot in the dark to fix 581472
joshualitt [Tue, 9 Feb 2016 18:09:55 +0000 (10:09 -0800)]
Shot in the dark to fix 581472

BUG=581472
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1679743005

Review URL: https://codereview.chromium.org/1679743005

8 years agoAdd some backend flexibility for shader declarations in ProgramBuilding.
egdaniel [Tue, 9 Feb 2016 17:54:43 +0000 (09:54 -0800)]
Add some backend flexibility for shader declarations in ProgramBuilding.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1682703003

Review URL: https://codereview.chromium.org/1682703003

8 years agostart experimenting with 64bit frame-buffers
reed [Tue, 9 Feb 2016 17:14:59 +0000 (09:14 -0800)]
start experimenting with 64bit frame-buffers

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1680523002

Review URL: https://codereview.chromium.org/1680523002

8 years agoSkTArray to move when moving.
bungeman [Tue, 9 Feb 2016 17:14:28 +0000 (09:14 -0800)]
SkTArray to move when moving.

This updates SkTArray to move elements when possible, instead of always
copying them.

TBR=reed
Agreed moving is good. This should also become private.

Committed: https://skia.googlesource.com/skia/+/3c69348e725131150e4ab962dec1b3ff1148a6bd

Review URL: https://codereview.chromium.org/1672063002

8 years agoUse skstd::remove_pointer_t in GrGLFunction
bsalomon [Tue, 9 Feb 2016 16:28:54 +0000 (08:28 -0800)]
Use skstd::remove_pointer_t in GrGLFunction
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684513003

Review URL: https://codereview.chromium.org/1684513003

8 years agoRelocate anisotropic mipmap logic to SkMipMap::extractLevel()
fmalita [Tue, 9 Feb 2016 16:20:18 +0000 (08:20 -0800)]
Relocate anisotropic mipmap logic to SkMipMap::extractLevel()

Pass a full x/y scale and defer the anisotropic heuristic to SkMipMap.

R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686563002

Review URL: https://codereview.chromium.org/1686563002

8 years agoskeleton for float <-> half optimized procs
mtklein [Tue, 9 Feb 2016 16:18:10 +0000 (08:18 -0800)]
skeleton for float <-> half optimized procs

Nothing fancy yet, just calls the serial code in a loop.

I will try to folow this up with at least some of:
   - SSE2 version of serial code
   - NEON version of serial code
   - NEON version using vcvt.f32.f16/vcvt.f16.f32
   - F16C (between AVX and AVX2) version using vcvtph2ps/vcvtps2ph
The last two are fastest but need runtime detection.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1686543003

Review URL: https://codereview.chromium.org/1686543003

8 years agoUse min scale when selecting mip level
fmalita [Tue, 9 Feb 2016 15:41:48 +0000 (07:41 -0800)]
Use min scale when selecting mip level

R=reed@google.com,robertphillips@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681953004

Review URL: https://codereview.chromium.org/1681953004

8 years agoCreate a thermal manager class and wire it in to nanobench behind a flag
joshualitt [Tue, 9 Feb 2016 15:18:08 +0000 (07:18 -0800)]
Create a thermal manager class and wire it in to nanobench behind a flag

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1671573002

Review URL: https://codereview.chromium.org/1671573002

8 years agoRevert of SkTArray to move when moving. (patchset #3 id:40001 of https://codereview...
mtklein [Tue, 9 Feb 2016 13:14:04 +0000 (05:14 -0800)]
Revert of SkTArray to move when moving. (patchset #3 id:40001 of https://codereview.chromium.org/1672063002/ )

Reason for revert:
Broke the Chrome roll:

https://codereview.chromium.org/1680563005

Original issue's description:
> SkTArray to move when moving.
>
> This updates SkTArray to move elements when possible, instead of always
> copying them.
>
> TBR=reed
> Agreed moving is good. This should also become private.
>
> Committed: https://skia.googlesource.com/skia/+/3c69348e725131150e4ab962dec1b3ff1148a6bd

TBR=reed@google.com,bungeman@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/1683693002

8 years agoAlter SkXfermode's asFragmentProcessor & asXPFactory contracts
robertphillips [Tue, 9 Feb 2016 13:09:27 +0000 (05:09 -0800)]
Alter SkXfermode's asFragmentProcessor & asXPFactory contracts

TBR=bsalomon@google.com

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1674673002

Review URL: https://codereview.chromium.org/1674673002

8 years agoRemove SkNx AVX code. It is not really used. Getting in the way of refactoring.
mtklein [Mon, 8 Feb 2016 23:50:22 +0000 (15:50 -0800)]
Remove SkNx AVX code.  It is not really used.  Getting in the way of refactoring.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1679053002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1679053002

8 years agoOptionally run RAW images serially
scroggo [Mon, 8 Feb 2016 23:09:48 +0000 (15:09 -0800)]
Optionally run RAW images serially

RAW images use a lot of memory. Add a new FLAG to run one at a time so
we have less risk of running out of memory.

Isolate RAW images to their own thread on particular devices where our
images cause OOM errors.

Locally, this drops the max memory use from 3945 MB to 1664 MB (running only --image --images <RAW images we test>)

BUG=skia:4912
BUG=skia:4878
BUG=b/27035849
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681553003

Review URL: https://codereview.chromium.org/1681553003

8 years agoDM: this must have been missing from the previous CL
mtklein [Mon, 8 Feb 2016 22:30:25 +0000 (14:30 -0800)]
DM: this must have been missing from the previous CL

It'd be neat to have an Android trybot.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1678293002

Review URL: https://codereview.chromium.org/1678293002

8 years agoSkia serve now supports favicon correctly
joshualitt [Mon, 8 Feb 2016 21:57:44 +0000 (13:57 -0800)]
Skia serve now supports favicon correctly

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676403002

Review URL: https://codereview.chromium.org/1676403002

8 years agoSupport --dryRun in nanobench to get a list of benchmarks.
brianosman [Mon, 8 Feb 2016 21:49:12 +0000 (13:49 -0800)]
Support --dryRun in nanobench to get a list of benchmarks.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681583002

Review URL: https://codereview.chromium.org/1681583002

8 years agoOptimize CMYK->RGBA (BGRA) transform for jpeg decodes
msarett [Mon, 8 Feb 2016 21:26:25 +0000 (13:26 -0800)]
Optimize CMYK->RGBA (BGRA) transform for jpeg decodes

Swizzle Bench Runtime
Nexus 6P     0.14x
Dell Venue 8 0.12x

CMYK Jpeg Decode Runtime
Nexus 6P     0.81x
Dell Venue 8 0.85x

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676773003
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1676773003

8 years agoextend modecolorfilter to 4f
reed [Mon, 8 Feb 2016 20:56:56 +0000 (12:56 -0800)]
extend modecolorfilter to 4f

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1670063002

Review URL: https://codereview.chromium.org/1670063002

8 years agodm: simplify parallel/serial decisions
mtklein [Mon, 8 Feb 2016 20:39:59 +0000 (12:39 -0800)]
dm: simplify parallel/serial decisions

  - instead of complicated enclaves, just allow parallel or main thread serial
  - either the Src or the Sink can force the task to go serial

ALSO,
  - simpler file extension parsing

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1675423002

Review URL: https://codereview.chromium.org/1675423002

8 years agoReland of whitespace change to test bugdroid (patchset #1 id:1 of https://codereview...
sheyang [Mon, 8 Feb 2016 19:59:52 +0000 (11:59 -0800)]
Reland of whitespace change to test bugdroid (patchset #1 id:1 of https://codereview.chromium.org/1673083003/ )

Reason for revert:
test

Original issue's description:
> Revert of whitespace change to test bugdroid (patchset #1 id:1 of https://codereview.chromium.org/1676253002/ )
>
> Reason for revert:
> test
>
> Original issue's description:
> > whitespace change to test bugdroid
> >
> > NOTRY=true
> > TBR=
> > BUG=skia:4814
> > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676253002
> >
> > Committed: https://skia.googlesource.com/skia/+/ae22c68d847997e37aad1f6ee761ec37decc0a8c
>
> TBR=
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:4814
>
> Committed: https://skia.googlesource.com/skia/+/8dbe00293f5ce05ac99b72e33bf70373bb63e293

TBR=rmistry@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4814

Review URL: https://codereview.chromium.org/1678993002

8 years agoremove dead SK_SUPPORT_LEGACY_NEG_SCALE_HQ flag
reed [Mon, 8 Feb 2016 19:57:52 +0000 (11:57 -0800)]
remove dead SK_SUPPORT_LEGACY_NEG_SCALE_HQ flag

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1674263003

Review URL: https://codereview.chromium.org/1674263003

8 years agoBlacklist RAW images on GPU tests
msarett [Mon, 8 Feb 2016 19:43:50 +0000 (11:43 -0800)]
Blacklist RAW images on GPU tests

BUG=skia:4888
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1677133002

Review URL: https://codereview.chromium.org/1677133002

8 years agoRevert of Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas. ...
ethannicholas [Mon, 8 Feb 2016 19:37:01 +0000 (11:37 -0800)]
Revert of Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas. (patchset #2 id:20001 of https://codereview.chromium.org/1681643002/ )

Reason for revert:
Breaking cmake build

Original issue's description:
> Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
> SkJSONCanvas and SkJSONRenderer will be deleted once the debug server
> has been updated.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681643002
>
> Committed: https://skia.googlesource.com/skia/+/32fff1ba0c759d97ab78320b7ae46dd7696a4e6e

TBR=jcgregorio@google.com,joshualitt@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/1680853002

8 years agoMoved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
ethannicholas [Mon, 8 Feb 2016 19:20:32 +0000 (11:20 -0800)]
Moved Canvas->JSON and JSON->Canvas functionality into SkDebugCanvas.
SkJSONCanvas and SkJSONRenderer will be deleted once the debug server
has been updated.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681643002

Review URL: https://codereview.chromium.org/1681643002

8 years agoReland of SkTArray to move when moving. (patchset #1 id:1 of https://codereview.chrom...
kjlubick [Mon, 8 Feb 2016 18:20:12 +0000 (10:20 -0800)]
Reland of SkTArray to move when moving. (patchset #1 id:1 of https://codereview.chromium.org/1677103002/ )

Reason for revert:
This was not the problem.

Original issue's description:
> Revert of SkTArray to move when moving. (patchset #3 id:40001 of https://codereview.chromium.org/1672063002/ )
>
> Reason for revert:
> This appears to have broken several things.
>
> Original issue's description:
> > SkTArray to move when moving.
> >
> > This updates SkTArray to move elements when possible, instead of always
> > copying them.
> >
> > TBR=reed
> > Agreed moving is good. This should also become private.
> >
> > Committed: https://skia.googlesource.com/skia/+/3c69348e725131150e4ab962dec1b3ff1148a6bd
>
> TBR=reed@google.com,mtklein@google.com,bungeman@google.com
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: https://skia.googlesource.com/skia/+/2f8c9bf96ceea9d13fb0fc29285ecaf1673f2e8b

TBR=reed@google.com,mtklein@google.com,bungeman@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/1678923002

8 years agoImprove GLSL integer support
cdalton [Mon, 8 Feb 2016 18:11:47 +0000 (10:11 -0800)]
Improve GLSL integer support

 - Adds shader types for uint.
 - Adds a cap for integer support.
 - Uses glVertexAttribIPointer for integer attribs.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1669853002

Committed: https://skia.googlesource.com/skia/+/3a2caf8ecf38124f4ad21a0f6c4dabfcfa17911a

Review URL: https://codereview.chromium.org/1669853002

8 years agoRevert of SkTArray to move when moving. (patchset #3 id:40001 of https://codereview...
kjlubick [Mon, 8 Feb 2016 18:03:14 +0000 (10:03 -0800)]
Revert of SkTArray to move when moving. (patchset #3 id:40001 of https://codereview.chromium.org/1672063002/ )

Reason for revert:
This appears to have broken several things.

Original issue's description:
> SkTArray to move when moving.
>
> This updates SkTArray to move elements when possible, instead of always
> copying them.
>
> TBR=reed
> Agreed moving is good. This should also become private.
>
> Committed: https://skia.googlesource.com/skia/+/3c69348e725131150e4ab962dec1b3ff1148a6bd

TBR=reed@google.com,mtklein@google.com,bungeman@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/1677103002

8 years agomsan: define BREAK_IF_DEBUGGING_AND_OUT_OF_RANGE in piex
mtklein [Mon, 8 Feb 2016 17:35:05 +0000 (09:35 -0800)]
msan: define BREAK_IF_DEBUGGING_AND_OUT_OF_RANGE in piex

This should assert(false) if we're in the error case of RangeCheckedBytePtr::extractBytes:

> #ifdef BREAK_IF_DEBUGGING_AND_OUT_OF_RANGE
>   #define BREAK_IF_DEBUGGING() assert(false)
> #else
>   #define BREAK_IF_DEBUGGING() assert(true)
> #endif
  ...
> std::vector<unsigned char> RangeCheckedBytePtr::extractBytes(size_t pos, size_t length) const {
>   std::vector<unsigned char> result;
>   if (pos + length < pos /* overflow */ || remainingLength() < pos + length) {
>     BREAK_IF_DEBUGGING();
>     error_flag_ = RANGE_CHECKED_BYTE_ERROR_OVERFLOW;
>     return result;
>   }
  ...

BUG=skia:4903
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1678913002

Review URL: https://codereview.chromium.org/1678913002

8 years agoSkDeflateWStream: support gzip output
halcanary [Mon, 8 Feb 2016 17:34:34 +0000 (09:34 -0800)]
SkDeflateWStream: support gzip output

BUG=skia:4892
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681603002

Review URL: https://codereview.chromium.org/1681603002

8 years agoTest CodecImageGenerator on GPU bots
msarett [Mon, 8 Feb 2016 17:10:47 +0000 (09:10 -0800)]
Test CodecImageGenerator on GPU bots

In crrev.com/1549473003, CodecImageGenerator implemented getYUV8Planes,
so that we can test on a GPU bot. Update the arguments to DM so that
we run CodecImageGenerator on GPU bots.

This is adapted from:
https://codereview.chromium.org/1663453002/

This will cause many untriaged images on Gold.
The GPU converts YUV->RGBA differently than we
do in software.

BUG=skia:4888
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676663002

Review URL: https://codereview.chromium.org/1676663002

8 years agoSkTArray to move when moving.
bungeman [Mon, 8 Feb 2016 17:02:34 +0000 (09:02 -0800)]
SkTArray to move when moving.

This updates SkTArray to move elements when possible, instead of always
copying them.

TBR=reed
Agreed moving is good. This should also become private.

Review URL: https://codereview.chromium.org/1672063002

8 years agoReplace GrGLInterface's function pointers with std::functions.
bsalomon [Mon, 8 Feb 2016 15:22:17 +0000 (07:22 -0800)]
Replace GrGLInterface's function pointers with std::functions.

This is to facilitate binding to GLES2Interface in Chromium rather than the C interface. It requires capturing the GLES2Interface.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1674823002

Review URL: https://codereview.chromium.org/1674823002

8 years agoCreate image cache for use by json canvas
joshualitt [Mon, 8 Feb 2016 15:08:21 +0000 (07:08 -0800)]
Create image cache for use by json canvas

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1670153005

Review URL: https://codereview.chromium.org/1670153005

8 years agosimplify piex.gyp
mtklein [Mon, 8 Feb 2016 14:33:07 +0000 (06:33 -0800)]
simplify piex.gyp

Was just starting to dig into skia:4903, and decided to start by learning piex.
It's tiny.  Why such GYP complexity to build 5 files?

BUG=skia:4903
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1681533002

Review URL: https://codereview.chromium.org/1681533002

8 years agofix float <---> uint16_t conversion, with Mike's tests.
mtklein [Mon, 8 Feb 2016 13:54:38 +0000 (05:54 -0800)]
fix float <---> uint16_t conversion, with Mike's tests.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1679713002

patch from issue 1679713002 at patchset 1 (http://crrev.com/1679713002#ps1)
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1676893002

8 years agoFix autoroll link
kjlubick [Mon, 8 Feb 2016 13:23:37 +0000 (05:23 -0800)]
Fix autoroll link

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676993002
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1676993002

Review URL: https://codereview.chromium.org/1676993002

8 years agoRevert of whitespace change to test bugdroid (patchset #1 id:1 of https://codereview...
rmistry [Mon, 8 Feb 2016 12:33:28 +0000 (04:33 -0800)]
Revert of whitespace change to test bugdroid (patchset #1 id:1 of https://codereview.chromium.org/1676253002/ )

Reason for revert:
test

Original issue's description:
> whitespace change to test bugdroid
>
> NOTRY=true
> TBR=
> BUG=skia:4814
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1676253002
>
> Committed: https://skia.googlesource.com/skia/+/ae22c68d847997e37aad1f6ee761ec37decc0a8c

TBR=
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4814

Review URL: https://codereview.chromium.org/1673083003