platform/upstream/libSkiaSharp.git
7 years agoDon't pass uniform arrays in GrGLNonlinearColorSpaceXformEffect
Christopher Cameron [Mon, 22 May 2017 23:46:36 +0000 (16:46 -0700)]
Don't pass uniform arrays in GrGLNonlinearColorSpaceXformEffect

This avoids a problem where passing a uniform array as a function
array sometimes gets lost.

Instead of passing the uniform array as an argument to the
transfer function evaluation function, create two separate
transfer function evaluation functions that read the uniforms
directly.

BUG=723133

Change-Id: Ib46b99efdbc04ce0201644ebbc1dfd4cb27e9276
Reviewed-on: https://skia-review.googlesource.com/17293
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7 years agomove sk_memset?? to SkOpts
Mike Klein [Tue, 23 May 2017 16:20:38 +0000 (12:20 -0400)]
move sk_memset?? to SkOpts

This lets the compiler generate AVX versions with wider writes.

Change-Id: Ia63825e70c72bdb4d14bef97d8b4ea4be54c9d84
Reviewed-on: https://skia-review.googlesource.com/17715
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoadd knob to turn off fancy SkJumper features
Mike Klein [Tue, 23 May 2017 15:31:14 +0000 (11:31 -0400)]
add knob to turn off fancy SkJumper features

This is a new public API for testing (layout tests).

Change-Id: I10345231bad373c741b1e9656e546000538121b3
Reviewed-on: https://skia-review.googlesource.com/17712
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agocolor-correct patch
Mike Reed [Tue, 23 May 2017 15:22:56 +0000 (11:22 -0400)]
color-correct patch

Key work is to correctly convert SkColor corners into linear floats,
then interpolate, then (correctly) convert back to SkColors.

Bug: skia:6659
Change-Id: Iaf0ab842d7a4f8f3481e609903cec83814e5a749
Reviewed-on: https://skia-review.googlesource.com/17533
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7 years agoAdd animation support to SkWebpCodec
Leon Scroggins III [Tue, 23 May 2017 13:37:21 +0000 (09:37 -0400)]
Add animation support to SkWebpCodec

TBR=reed@google.com
(No change to the public API, but changed a header file)

SkWebpCodec:
- Implement onGetFrameCount, onGetFrameInfo, and onGetRepetitionCount
- Respect the alpha reported by libwebp. Although the spec states that
  it is only a hint, the libwebp encoder uses it properly. Respecting
  allows us to draw opaque images faster and decode them to 565. This
  also matches other SkCodecs (and Chromium).
- onGetPixels:
  - Decode the frame requested, recursively decoding required frame if
    necessary
  - When blending with a prior frame, use SkRasterPipeline

SkCodec:
- Move check for negative index to getFrameInfo
- Reset the colorXform if one is not needed

SkCodecAnimation:
- Add new blend enum, for WebP's (and APNG's) non-blending option

SkFrameHolder:
- New base classes for frames and the owner of the frames, allowing
  code sharing between SkWebpCodec and SkGifCodec (particularly for
  determining whether a frame has alpha and what frame it depends on)
- When moving items from SkGIFFrameContext, use Skia conventions (i.e.
  int instead of unsigned)
- Rename "delay time" to "duration", to match e.g. SkFrameInfo::
  fDuration

SkGifImageReader:
- Move pieces to SkFrameHolder, and adapt to changes made in the
  process
- Make setAlphaAndRequiredFrame (now on the base class SkFrameHolder)
  more general to support webp, and add support for frames that do not
  blend
- Change SkGIFFrameContext from a struct to a class, to match how we
  use the distinction elsewhere (i.e. struct is a small object with
  public fields)
- Rework hasTransparentPixel (now hasTransparency, since it returns true
  in some cases where there is not a transparent pixel) to better fit
  with the modified setAlphaAndRequiredFrame. Also be more consistent
  when there is no transparent pixel but no color map.
- Simplify an if condition that was previously simplified in 2d61e717
  but accidentally got reverted in a4db9be6

CodecAnimTest:
- Test new animated webp files
- Rearrange the test to more cleanly print alpha type mismatches for
  the first frame

resources:
- webp-animated.webp
  - animated webp from Chromium
- blendBG.webp
  - new webp file using bits of webp-animated-semitransparent4.webp
    from Chromium
  - tests required frame and alpha when using the non-blending mode
  - frames have the following properties:
    - Frame 0: no alpha, fills screen
    - Frame 1: alpha, fills screen
    - Frame 2: no alpha, fills screen
    - Frame 3: alpha, fills screen, blendBG
    - Frame 4: no alpha, fills screen, blendBG
    - Frame 5: alpha, blendBG
    - Frame 6: covers 4, has alpha, blendBG
  - also used to test decoding to 565 if the new frame data has alpha
    but blends onto an opaque frame

DM.cpp:
- Test animated images to non-native 8888 and unpremul

DMSrcSink.cpp:
- Do not test non-native 8888 decodes to f16 dst
- Test unpremul decodes to f16
- Copy a frame of an animated image prior to drawing, since in unpremul
  mode, the DM code will premultiply first.

Bug: skia: 3315
Change-Id: I4e55ae2ee5bc095b37a743bdcfac644be603b980
Reviewed-on: https://skia-review.googlesource.com/16707
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agosimpler portable round()
Mike Klein [Tue, 23 May 2017 13:53:36 +0000 (09:53 -0400)]
simpler portable round()

Calling out lrintf() is probably kind of extreme...
adding half and truncating should be just fine.

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

7 years agoadd gm to test alpha in drawPatch
Mike Reed [Tue, 23 May 2017 13:53:37 +0000 (09:53 -0400)]
add gm to test alpha in drawPatch

Bug: skia:
Change-Id: I79d0b0707b09a3eedeeaee940d6dafbbbdbe2fe2
Reviewed-on: https://skia-review.googlesource.com/17707
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoFix TSAN error for shadow cache
Jim Van Verth [Tue, 23 May 2017 13:40:02 +0000 (09:40 -0400)]
Fix TSAN error for shadow cache

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

7 years agoRevert "sk_fgetsize to not use ftell."
Leon Scroggins [Tue, 23 May 2017 13:29:14 +0000 (13:29 +0000)]
Revert "sk_fgetsize to not use ftell."

This reverts commit eefa289a214ea3917e5e00554f231adb5ad6f712.

Reason for revert: Causing failures in BitmapFactoryTest. b/38233042

Original change's description:
> sk_fgetsize to not use ftell.
>
> The previous version of sk_fgetsize used ftell and fseek to compute
> the size of a file. There are so many issues with this that it is called
> out by securecoding.cert.org as FIO19-C as a thing not to do. We already
> have correct code for computing the size of a file in the mmap code, so
> use that instead.
>
> Change-Id: I1d771124989d0ec1523f6d858814ee563263213a
> Reviewed-on: https://skia-review.googlesource.com/9860
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
>

TBR=bungeman@google.com,scroggo@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: Ie9392dde8747ae7c74ebfa00153705e316e841a2
Reviewed-on: https://skia-review.googlesource.com/17705
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>

7 years agoRemove compressed (ETC1) texture support from Ganesh (take 2)
Robert Phillips [Tue, 23 May 2017 11:43:48 +0000 (07:43 -0400)]
Remove compressed (ETC1) texture support from Ganesh (take 2)

Reland of https://skia-review.googlesource.com/c/17456/ (Remove compressed (ETC1) texture support from Ganesh) but w/o removing third_part\etc1 files

TBR=bsalomon@google.com
Change-Id: I8ec4b7e3ddf47d213cb24c382731c050ffb8847f
Reviewed-on: https://skia-review.googlesource.com/17700
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoremove min from repeat and mirror generally
Mike Klein [Tue, 23 May 2017 12:07:43 +0000 (08:07 -0400)]
remove min from repeat and mirror generally

I don't think they do anything anymore after the inclusive/exclusive
refactoring.

Change-Id: I63f2e010a00953b5b6415de002bcb51ec2b73458
Reviewed-on: https://skia-review.googlesource.com/17490
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
7 years agoretry tilers against 1
Mike Klein [Tue, 23 May 2017 11:52:01 +0000 (07:52 -0400)]
retry tilers against 1

These weren't the Valgrind problem.

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

7 years agoadd bench for patchutils
Mike Reed [Tue, 23 May 2017 02:45:05 +0000 (22:45 -0400)]
add bench for patchutils

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

7 years agoFix TSAN bot
Jim Van Verth [Mon, 22 May 2017 21:48:28 +0000 (17:48 -0400)]
Fix TSAN bot

Bug: skia:
Change-Id: I5626e4e4277255b1c0c10f912829ac2cd2ed1a8c
Reviewed-on: https://skia-review.googlesource.com/17600
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>

7 years agoRemove setting of alpha coverage in text ops when in LCD mode
Greg Daniel [Mon, 22 May 2017 20:34:34 +0000 (16:34 -0400)]
Remove setting of alpha coverage in text ops when in LCD mode

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

7 years agoCache ambient and spot shadows at a canonical position
Jim Van Verth [Mon, 22 May 2017 19:52:21 +0000 (15:52 -0400)]
Cache ambient and spot shadows at a canonical position

Change-Id: I1f80931513f7d2268b358fb38c86dd331f32f064
Reviewed-on: https://skia-review.googlesource.com/17394
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoFix to lcd blending in ganesh
Greg Daniel [Mon, 22 May 2017 19:56:22 +0000 (15:56 -0400)]
Fix to lcd blending in ganesh

This fixes the bug where a src color may originally be opaque but after
blending it is no longer opaque. We need to know the opacity after the
blend so this restricts us on which blend modes even work this way.

Bug: skia:
Change-Id: Ib3208887d718e5f25272ed7b0bf44683d04884d7
Reviewed-on: https://skia-review.googlesource.com/17488
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoRevert "Revert "mark SkRasterPipelineBlitter final""
Mike Klein [Mon, 22 May 2017 20:15:17 +0000 (20:15 +0000)]
Revert "Revert "mark SkRasterPipelineBlitter final""

This reverts commit b5b26a9d2999825ba8f405b8c37d33d49a529369.

Reason for revert: this one's probably fine too

Original change's description:
> Revert "mark SkRasterPipelineBlitter final"
>
> This reverts commit 317a1857f80ffc18d591dd6b1ac0988184b1ed2b.
>
> Reason for revert: Valgrind requires reverting ancestor commit.
>
> Original change's description:
> > mark SkRasterPipelineBlitter final
> >
> > This devirtualizes the call from blitAntiH to blitH,
> > and makes sure no future self calls will be virtual.
> >
> > Change-Id: I2a277bbc1450a96e07794791792d59e5f806bde0
> > Reviewed-on: https://skia-review.googlesource.com/17418
> > Commit-Queue: Mike Klein <mtklein@chromium.org>
> > Reviewed-by: Mike Klein <mtklein@chromium.org>
> >
>
> TBR=mtklein@chromium.org,herb@google.com,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: Ic726fd6b9bf18c397812ecc256353ab4a0a336c5
> Reviewed-on: https://skia-review.googlesource.com/17522
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>

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

Change-Id: Ic27fbfaab9d040a1ef49d596350649096b908ea3
Reviewed-on: https://skia-review.googlesource.com/17528
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>

7 years agoRevert "Remove compressed (ETC1) texture support from Ganesh"
Brian Osman [Mon, 22 May 2017 20:14:41 +0000 (20:14 +0000)]
Revert "Remove compressed (ETC1) texture support from Ganesh"

This reverts commit ee26363aaae62db2a851f2873e2405a9cf7f995a.

Reason for revert: Failing Google 3 roll.

Original change's description:
> Remove compressed (ETC1) texture support from Ganesh
>
> Change-Id: If4cf286df87ea87338aba47001d90a5fcc4f2667
> Reviewed-on: https://skia-review.googlesource.com/17456
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

7 years agoRevert "Revert "fix ubsan warning""
Brian Osman [Mon, 22 May 2017 19:45:09 +0000 (19:45 +0000)]
Revert "Revert "fix ubsan warning""

This reverts commit b03d69f0709f5da09a5237922d208e587b12a06a.

Reason for revert: This is the good CL I meant to re-land.

Original change's description:
> Revert "fix ubsan warning"
>
> This reverts commit 4d1c5d676eb32ed304ee4aa410cebbc6467b59c2.
>
> Reason for revert: Valgrind requires reverting ancestor commit.
>
> Original change's description:
> > fix ubsan warning
> >
> > CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN
> >
> > Change-Id: Ic8c5d95fdb899cb5293b2bc456f61b1637ec3aed
> > Reviewed-on: https://skia-review.googlesource.com/17489
> > Reviewed-by: Mike Klein <mtklein@chromium.org>
> > Commit-Queue: Mike Klein <mtklein@chromium.org>
> >
>
> TBR=mtklein@chromium.org,herb@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN
>
> Change-Id: Idbfdc4773756aa475829c1421d10d6f341081d7b
> Reviewed-on: https://skia-review.googlesource.com/17521
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
>

TBR=mtklein@chromium.org,herb@google.com,reviews@skia.org,brianosman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN

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

7 years agoRevert "fix ubsan warning"
Brian Osman [Mon, 22 May 2017 19:31:36 +0000 (19:31 +0000)]
Revert "fix ubsan warning"

This reverts commit 4d1c5d676eb32ed304ee4aa410cebbc6467b59c2.

Reason for revert: This one was fine (and fixes ASAN).

Original change's description:
> fix ubsan warning
>
> CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN
>
> Change-Id: Ic8c5d95fdb899cb5293b2bc456f61b1637ec3aed
> Reviewed-on: https://skia-review.googlesource.com/17489
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Mike Klein <mtklein@chromium.org>
>

TBR=mtklein@chromium.org,herb@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN

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

7 years agoRevert "We can mask load and store with just AVX."
Brian Osman [Mon, 22 May 2017 19:25:36 +0000 (19:25 +0000)]
Revert "We can mask load and store with just AVX."

This reverts commit 139e463dc6f965fdaed854efcb20c6cafbb6dbdc.

Reason for revert: Crashes on Valgrind bots.

Original change's description:
> We can mask load and store with just AVX.
>
> Previously we were using AVX2 instructions to generate the masks,
> and AVX2 instructions for the mask load and stores themselves.
>
> AVX came with float mask loads and stores, which will work perfectly
> fine.  I don't really get what the point of the 32-bit int loads and
> stores are in AVX2, beyond maybe syntax sugar?
>
> Change-Id: I81fa55fb09daea4f5546f8c9ebbc886015edce51
> Reviewed-on: https://skia-review.googlesource.com/17452
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Ravi Mistry <rmistry@google.com>
>

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

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

7 years agoRevert "add tilers against 1"
Brian Osman [Mon, 22 May 2017 19:25:05 +0000 (19:25 +0000)]
Revert "add tilers against 1"

This reverts commit 8110b849d60455d6fb594f26919f0f38c3ec9925.

Reason for revert: Valgrind requires reverting ancestor commit.

Original change's description:
> add tilers against 1
>
> Change-Id: I2482972a43cb89a93cbfb9e708614e0334002e53
> Reviewed-on: https://skia-review.googlesource.com/17483
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Mike Klein <mtklein@chromium.org>
>

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

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

7 years agoRevert "mark SkRasterPipelineBlitter final"
Brian Osman [Mon, 22 May 2017 19:24:47 +0000 (19:24 +0000)]
Revert "mark SkRasterPipelineBlitter final"

This reverts commit 317a1857f80ffc18d591dd6b1ac0988184b1ed2b.

Reason for revert: Valgrind requires reverting ancestor commit.

Original change's description:
> mark SkRasterPipelineBlitter final
>
> This devirtualizes the call from blitAntiH to blitH,
> and makes sure no future self calls will be virtual.
>
> Change-Id: I2a277bbc1450a96e07794791792d59e5f806bde0
> Reviewed-on: https://skia-review.googlesource.com/17418
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Mike Klein <mtklein@chromium.org>
>

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

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

7 years agoRevert "fix ubsan warning"
Brian Osman [Mon, 22 May 2017 19:24:13 +0000 (19:24 +0000)]
Revert "fix ubsan warning"

This reverts commit 4d1c5d676eb32ed304ee4aa410cebbc6467b59c2.

Reason for revert: Valgrind requires reverting ancestor commit.

Original change's description:
> fix ubsan warning
>
> CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN
>
> Change-Id: Ic8c5d95fdb899cb5293b2bc456f61b1637ec3aed
> Reviewed-on: https://skia-review.googlesource.com/17489
> Reviewed-by: Mike Klein <mtklein@chromium.org>
> Commit-Queue: Mike Klein <mtklein@chromium.org>
>

TBR=mtklein@chromium.org,herb@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-ASAN

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

7 years agoRemove kZeroCopy_GrSurfaceFlag
Brian Salomon [Mon, 22 May 2017 18:00:07 +0000 (14:00 -0400)]
Remove kZeroCopy_GrSurfaceFlag

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

7 years agoBlacklist memory instensive tests on 32-bit bots (part 2)
Matt Sarett [Mon, 22 May 2017 17:45:15 +0000 (13:45 -0400)]
Blacklist memory instensive tests on 32-bit bots (part 2)
Bug: skia:

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

7 years agofix ubsan warning
Mike Klein [Mon, 22 May 2017 17:45:38 +0000 (13:45 -0400)]
fix ubsan warning

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

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

7 years agoadd helper static to SkColorSpaceXform
Mike Reed [Mon, 22 May 2017 17:41:36 +0000 (13:41 -0400)]
add helper static to SkColorSpaceXform

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

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Mon, 22 May 2017 17:41:45 +0000 (10:41 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/12ef501b02a9ff66323ba2da0432dc6717d5bc89 Parse Bug, R, and Tbr git-footers in PRESUBMIT (agable@chromium.org)
  https://crrev.com/62ca960a5f6b956299dbb0a44d049d063962d3c5 gerrit_util: retry on 404s for replication lag (agable@chromium.org)
  https://crrev.com/fe92995d40a79af9c8a2cd31babda3fe53cc683f [cipd] Allow packaging whole root. (dnj@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iae8f5598cdfd8b64f5f090c1ca14eaa41ca04f82
Reviewed-on: https://skia-review.googlesource.com/17486
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoAdd serialization support for drawShadowRec
Jim Van Verth [Mon, 22 May 2017 16:02:21 +0000 (12:02 -0400)]
Add serialization support for drawShadowRec

Change-Id: Ic7f76681a037d8f53a6fdc25061c39559f5c3e30
Reviewed-on: https://skia-review.googlesource.com/17457
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Jim Van Verth <jvanverth@google.com>

7 years agoRemove compressed (ETC1) texture support from Ganesh
Robert Phillips [Mon, 22 May 2017 17:59:44 +0000 (13:59 -0400)]
Remove compressed (ETC1) texture support from Ganesh

Change-Id: If4cf286df87ea87338aba47001d90a5fcc4f2667
Reviewed-on: https://skia-review.googlesource.com/17456
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agomark SkRasterPipelineBlitter final
Mike Klein [Fri, 19 May 2017 22:29:36 +0000 (18:29 -0400)]
mark SkRasterPipelineBlitter final

This devirtualizes the call from blitAntiH to blitH,
and makes sure no future self calls will be virtual.

Change-Id: I2a277bbc1450a96e07794791792d59e5f806bde0
Reviewed-on: https://skia-review.googlesource.com/17418
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoadd tilers against 1
Mike Klein [Mon, 22 May 2017 17:15:25 +0000 (13:15 -0400)]
add tilers against 1

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

7 years agoAdd fixes & test for isConfigTexturable and isConfigRenderable
Robert Phillips [Mon, 22 May 2017 17:23:19 +0000 (13:23 -0400)]
Add fixes & test for isConfigTexturable and isConfigRenderable

This CL fixes:
  isConfigTexturable was returning true for:
            kRG_float for ANGLE ES2 configs
  isConfigRenderable was returning true for:
            kAlpha_8 for ANGLE ES2 configs
  isConfigTexturable and isConfigRenderable were returning true for:
            SBGRA on ES2
  The NexusPlayer was marking RGBA & RG float configs as renderable but not textureable

Bug: 720325

Change-Id: If21361870dbdde8f3e09bc9dff3a394f2a329157
Reviewed-on: https://skia-review.googlesource.com/17387
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoSwitch to SkVertices version of drawVertices
Brian Osman [Mon, 22 May 2017 15:03:01 +0000 (11:03 -0400)]
Switch to SkVertices version of drawVertices

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

7 years agoMarker for Win AMD driver update.
Ben Wagner [Mon, 22 May 2017 17:19:33 +0000 (13:19 -0400)]
Marker for Win AMD driver update.

Bug: skia:6317
Change-Id: Iab5049fdb21904f9a5427fa86a9667366e3fc853
NoTry: true
Reviewed-on: https://skia-review.googlesource.com/17484
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoWe can mask load and store with just AVX.
Mike Klein [Mon, 22 May 2017 14:28:27 +0000 (10:28 -0400)]
We can mask load and store with just AVX.

Previously we were using AVX2 instructions to generate the masks,
and AVX2 instructions for the mask load and stores themselves.

AVX came with float mask loads and stores, which will work perfectly
fine.  I don't really get what the point of the 32-bit int loads and
stores are in AVX2, beyond maybe syntax sugar?

Change-Id: I81fa55fb09daea4f5546f8c9ebbc886015edce51
Reviewed-on: https://skia-review.googlesource.com/17452
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>

7 years agoadd compile, use it in blitter
Mike Klein [Mon, 22 May 2017 16:01:59 +0000 (12:01 -0400)]
add compile, use it in blitter

I expanded an existing bench to show off the difference:

    SkRasterPipeline_…
    300  â€¦compile 1x  â€¦run 1.14x

Change-Id: I5d63d602cda3f78d2d0891fcc85baf5514632900
Reviewed-on: https://skia-review.googlesource.com/17458
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
7 years agoBlacklist memory intensive tests on 32-bit bots
Matt Sarett [Mon, 22 May 2017 14:34:41 +0000 (10:34 -0400)]
Blacklist memory intensive tests on 32-bit bots

This is to fix OOM errors on Windows bots.

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

7 years agorefactor SkRasterPipelineBlitter
Mike Klein [Fri, 19 May 2017 16:01:01 +0000 (12:01 -0400)]
refactor SkRasterPipelineBlitter

This refactors the factories so that the create-from-paint factory is a
front-patch to the create-from-shader-pipeline factory.  Feature-wise,
we make the pre-baked shader pipeline responsible for modulating by
paint alpha; the factory only adds when creating from the paint.

We can fold the alpha into the colors in drawVertices, which makes it
run a bit faster, dropping the need for a scale_1_float runtime stage.
This causes a few invisible diffs on the "vertices" GM, but everything
else draws the same.

Change-Id: I3eeacc9aafbce2023ab18991bbb68c35645e9387
Reviewed-on: https://skia-review.googlesource.com/17395
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agosome basic speed ups for SkRasterPipeline::append()
Mike Klein [Mon, 22 May 2017 12:28:45 +0000 (08:28 -0400)]
some basic speed ups for SkRasterPipeline::append()

The new bench demos the speedup:
    SkRasterPipelineReuse_…
    â€¦full 1x  â€¦some 1.8x  â€¦none 5.22x

Change-Id: I5e51fb4316ae04558710ce62560850584ccb4aea
Reviewed-on: https://skia-review.googlesource.com/17449
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years ago[recipes] Copy file, isolate, swarming, swarming_client from build.git
Eric Boren [Mon, 22 May 2017 12:35:36 +0000 (08:35 -0400)]
[recipes] Copy file, isolate, swarming, swarming_client from build.git

Rename swarming -> skia_swarming.
Some required heavy modification to remove other dependencies on modules
in build.git.

Expected changes:

- RECIPE_MODULE[build::<module>] -> RECIPE_MODULE[skia::<module>]
- No more runit; directly run through Python.

Bug: skia:6628
Change-Id: I1b1370ed387966222ce10731771dbde9020cf542
Reviewed-on: https://skia-review.googlesource.com/17448
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
7 years agoSkPDF: eliminate unnecessary clip for each page
Hal Canary [Fri, 19 May 2017 21:03:49 +0000 (17:03 -0400)]
SkPDF: eliminate unnecessary clip for each page

Somehow this improves the imagefilterscropped gm.

This also makes it easier for me to manually parse
PDF output for debugging.

Change-Id: I3af39f4b0ca3fc7fcdeec4825bf8649bd9544917
Reviewed-on: https://skia-review.googlesource.com/17413
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Mon, 22 May 2017 09:41:41 +0000 (02:41 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/bc9dcd6ed4e53b32dcb134a634fcba2b3556f60f Dart: Trigger some dart2js bots on commit, not with special trigger. (whesse@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iadf6e0d49853e015bcaa021bf2479a052af623b0
Reviewed-on: https://skia-review.googlesource.com/17447
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Sun, 21 May 2017 18:01:25 +0000 (11:01 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/22da36e95697d92463b1b8ea002f7c4b8a4de41a remote_run: Remove BuildBot Python path injection. (dnj@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icaf0b1f0f2f3476a7525bf5832c5fcdc78c706ae
Reviewed-on: https://skia-review.googlesource.com/17446
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Sun, 21 May 2017 16:51:17 +0000 (09:51 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/a757e193649738016b242a11f654c558adda8aaa Remove "url" recipe module. (dnj@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1caa2058733ef9dd28f4c21913eb7ff83007c331
Reviewed-on: https://skia-review.googlesource.com/17445
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Sun, 21 May 2017 16:00:40 +0000 (09:00 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/9d8e66c1f40b2318b042ebea3618d11fe831c689 Link to gerrit changes from buildbot build properties (agable@chromium.org)
  https://crrev.com/d9932108ec67f7d364de5f696f90a3c1ce8650b8 Remove "gitiles" recipe module. (dnj@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ifbcedeb690ebc61e25e23f221b37a77bb74f17a9
Reviewed-on: https://skia-review.googlesource.com/17444
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRevert "Revert "Remove GrSurfaceDesc member from GrSurface.""
Brian Salomon [Fri, 19 May 2017 19:45:48 +0000 (15:45 -0400)]
Revert "Revert "Remove GrSurfaceDesc member from GrSurface.""

This reverts commit 4b30a96a3e96b7f051e25025f4f17f3c54e04153.

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

7 years agoUpdate SKP version
UpdateSKPs [Sun, 21 May 2017 07:27:17 +0000 (07:27 +0000)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

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

7 years agotidy up dither stage
Mike Klein [Sat, 20 May 2017 17:21:59 +0000 (13:21 -0400)]
tidy up dither stage

Using the float iota was just an expedient to write the stage...
this CL adds the U32 iota that dither really wants.

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

7 years agostreamline SkRasterPipeline::run()
Mike Klein [Sat, 20 May 2017 14:10:38 +0000 (10:10 -0400)]
streamline SkRasterPipeline::run()

This used to need to be complicated to check for unimplemented stages,
but now that SkJumper rules the world, we can make this a lot simpler
and move a lot of the tricky stage selection logic into an SkOnce.

This should decrease the overhead of SkRasterPipeline::run().

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

7 years agoRevert "dither copies when decreasing precision"
Mike Klein [Sat, 20 May 2017 17:27:19 +0000 (17:27 +0000)]
Revert "dither copies when decreasing precision"

This reverts commit 766f9cd5553ab091b85d287a79f47cbb91ad7989.

Reason for revert: unit test failures, I think on bots running portable code path

Original change's description:
> dither copies when decreasing precision
>
> Still seeing the same 4444 diffs on copyTo4444 and all_bitmap_configs,
> and now also 565 in all_bitmap_configs.
>
> BUG=chromium:720105
>
> Change-Id: I19406f57aa6d2b2f98d98c093da302b004c7cd8b
> Reviewed-on: https://skia-review.googlesource.com/17419
> Commit-Queue: Mike Klein <mtklein@chromium.org>
> Reviewed-by: Matt Sarett <msarett@google.com>
>

TBR=mtklein@chromium.org,msarett@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:720105

Change-Id: Ia9ece7dccef325233b870102ab38fbed2336b95d
Reviewed-on: https://skia-review.googlesource.com/17442
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>

7 years agodither copies when decreasing precision
Mike Klein [Fri, 19 May 2017 23:15:55 +0000 (19:15 -0400)]
dither copies when decreasing precision

Still seeing the same 4444 diffs on copyTo4444 and all_bitmap_configs,
and now also 565 in all_bitmap_configs.

BUG=chromium:720105

Change-Id: I19406f57aa6d2b2f98d98c093da302b004c7cd8b
Reviewed-on: https://skia-review.googlesource.com/17419
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoSkWebpEncoder: use bgra for lossless and yuv for lossy
Matt Sarett [Fri, 19 May 2017 23:12:54 +0000 (19:12 -0400)]
SkWebpEncoder: use bgra for lossless and yuv for lossy

Previosuly, we would (accidentally) always use just yuv.

Bug: 713862
Change-Id: I00acc6ca2841ba0636494119b7b4f46a9deee401
Reviewed-on: https://skia-review.googlesource.com/17406
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 21:52:16 +0000 (14:52 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/2537c8c2d9fb1b2aa5def9315e0d48da41e93871 chromite: Stop setting LANG to a known value. (dgarrett@google.com)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ifa98070323e03a8f3c887ae064d3585a879e14c5
Reviewed-on: https://skia-review.googlesource.com/17417
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 21:11:46 +0000 (14:11 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/31b834a0e849ce66bd5a7c8544071dce1276ef2f Closure: turn down the old GYP format (dbeam@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Idb053a1f28af1bd6825b26187a30630b5c9dde95
Reviewed-on: https://skia-review.googlesource.com/17414
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoUpdate Porter Duff analysis to match LCD logic.
Greg Daniel [Fri, 19 May 2017 20:33:51 +0000 (16:33 -0400)]
Update Porter Duff analysis to match LCD logic.

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

7 years agoRemove debug flag for ios bots
Stephan Altmueller [Fri, 19 May 2017 20:29:05 +0000 (16:29 -0400)]
Remove debug flag for ios bots

TBR=borenet
Bug: skia:
Change-Id: I791ad92203ca8cdd6da8abe7c9f45fde528cb7b9
Reviewed-on: https://skia-review.googlesource.com/17409
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>

7 years agoImprove test coverage of image decode modes
Matt Sarett [Fri, 19 May 2017 19:21:05 +0000 (15:21 -0400)]
Improve test coverage of image decode modes

Summary of the new world...

--image

CodecSrc and ImageGenSrc tests run on:
(1) 8888 with kIgnore transfer fn behavior
(2) srgb with kRespect transfer fn behavior
(3) f16

AndroidCodecSrc and BRDCodecSrc tests run on:
(1) 8888, since SkAndroidCodec always uses kIgnore
(2) f16, since android uses f16

--colorImage

ColorCodecSrc tests run on:
(1) 8888 in kBaseline mode, so we can see what the raw pixels look like
(2) srgb in color correct modes
(3) f16 in color correct modes

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

7 years agostage version of vertices
Mike Reed [Fri, 19 May 2017 19:32:13 +0000 (15:32 -0400)]
stage version of vertices

This CL, just to limit its size/complexity, only handles
colors but not textures. Future CLs will cover everything.

Performance is pretty exciting. Its faster than the old code-path,
and when we fix a bug in pathutils to preserve opaqueness, it gets
a lot faster (8 -> 5)

Bug: skia:
Change-Id: I4113060e25fe25fe4e6a0ea59bd4fa5e33abc668
Reviewed-on: https://skia-review.googlesource.com/17276
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
7 years agominor skslc bugfixes
Ethan Nicholas [Fri, 19 May 2017 18:03:45 +0000 (14:03 -0400)]
minor skslc bugfixes

This fixes the attributes on sk_VertexID, and a backwards test on
SkSL::String::startsWith and ::endsWith.

Change-Id: Icfddfc8ca95454d8646a1771761685c2525b296e
Reviewed-on: https://skia-review.googlesource.com/17398
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 18:12:15 +0000 (11:12 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/0104dcd6b327b06880b9020f1cb2ca2b93d08a5d Fix recipe typo (martiniss@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I167a43ad87b66295d479d1012512e2a79d9f5a86
Reviewed-on: https://skia-review.googlesource.com/17400
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoComment out lcd assert to make GLPrograms test happy
Greg Daniel [Fri, 19 May 2017 18:11:06 +0000 (14:11 -0400)]
Comment out lcd assert to make GLPrograms test happy

TBR=bsalomon@google.com

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

7 years agoRemove transitional parts from iOS job names
Stephan Altmueller [Fri, 19 May 2017 17:08:19 +0000 (13:08 -0400)]
Remove transitional parts from iOS job names

Bug: skia:
Change-Id: If19e5a956d3f10448cfe889127c2f79d9c42926e
Reviewed-on: https://skia-review.googlesource.com/17372
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>

7 years agoFix gpu lcd blending to semi-correctly handle alpha coverage
Greg Daniel [Fri, 19 May 2017 14:56:46 +0000 (10:56 -0400)]
Fix gpu lcd blending to semi-correctly handle alpha coverage

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

7 years agoTemporarily use default webp encode method for bzl
Matt Sarett [Fri, 19 May 2017 16:57:03 +0000 (12:57 -0400)]
Temporarily use default webp encode method for bzl

I suspect that this will fix the failing golden image tests.

Bug: skia:
Change-Id: I9f88206ae782e6a04817e72cdfcb3e0c4bdaa293
Reviewed-on: https://skia-review.googlesource.com/17393
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
7 years agoUpdate NexusPlayers to O Preview 2
Kevin Lubick [Fri, 19 May 2017 15:19:29 +0000 (11:19 -0400)]
Update NexusPlayers to O Preview 2

This may help with NexusPlayers flaking out.

Bug: skia:6045
NOTRY=true
Change-Id: I1ac1bf3cb5e17d26069082da7cb0f420865c9630
Reviewed-on: https://skia-review.googlesource.com/17388
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agodetect (and preserve) if patch colors are opaque
Mike Reed [Fri, 19 May 2017 02:23:34 +0000 (22:23 -0400)]
detect (and preserve) if patch colors are opaque

Bug: skia:
Change-Id: Ida3a1ff3f78db2498a6dfc655d8be4de8ad912c7
Reviewed-on: https://skia-review.googlesource.com/17380
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkDocument: remove deprecated function
Hal Canary [Fri, 19 May 2017 14:18:47 +0000 (10:18 -0400)]
SkDocument: remove deprecated function

I meant to land this after https://crrev.com/2726103006 ,
but got sidetracked.

Change-Id: I4f0397302d41e89d2394bec545190cb024929bd8
Reviewed-on: https://skia-review.googlesource.com/17390
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoUpdated workaround for Intel 6xxx clear to 0/1 bug
Eric Karl [Thu, 18 May 2017 22:08:09 +0000 (15:08 -0700)]
Updated workaround for Intel 6xxx clear to 0/1 bug

The previous workaround only handled the glClearColor(0,0,0,1) case,
it turns out we need to work around any glClearColor made up of entirely
0s and 1s.

R=bsalomon@google.com
Bug: 710443
Change-Id: I78a75559fc11811ad9a218436231354d66d2ad51
Reviewed-on: https://skia-review.googlesource.com/17327
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Eric Karl <ericrk@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 14:10:18 +0000 (07:10 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/c33bbcee5e1f89a78814b7b9ebbc7cdbe19eddc8 Dart: Increase timeout for IE bots, use fewer processors (whesse@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8993e271c3252b57ce723f1f7095f38ceb5b50d7
Reviewed-on: https://skia-review.googlesource.com/17389
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 13:41:51 +0000 (06:41 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/9709c362f800ceeffd2be24edee6d398d68f18ac [cronet] Don't use is_official_build universally on cronet bots. (jbudorick@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I8408708568bebc62682439f9322a4684550b46b5
Reviewed-on: https://skia-review.googlesource.com/17385
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 11:21:26 +0000 (04:21 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/00749f571ff265c29cc9f2be07120364b00fcda8 Dart: Add "debug" and "unittests" options to dart2js recipe. (whesse@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6d8bcf28eaf04733eae8fcd587fb24b9b2beb652
Reviewed-on: https://skia-review.googlesource.com/17384
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 09:01:37 +0000 (02:01 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/28ebfb41f178f521e9187108c7b6ddd66b8e4a85 V8: Bump shards on PPC and S390 bots (machenbach@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I669307e2e1b10f2fb5e2f66781d3bb12839bff70
Reviewed-on: https://skia-review.googlesource.com/17383
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 02:41:34 +0000 (19:41 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/fc03e67e9ae41efc4be498ae91f6d6eddc96f1c6 Refactor PRESUBMIT support for tags (agable@chromium.org)
  https://crrev.com/064f6f4a9d2932ae699dbf4355bc63359e599026 gclient flatten: first pass (phajdan.jr@chromium.org)
  https://crrev.com/063814f82efdda25a0d1737395172faa88a5fd0f Remove "url" recipe module. (dnj@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I85f0df7d2de9782fc8c66e827c53eb16c03edf34
Reviewed-on: https://skia-review.googlesource.com/17382
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Fri, 19 May 2017 01:11:37 +0000 (18:11 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/e99a7805ce3c1fef96b428fb542d23fe975e8c5c Fix bot config for battor non linux builders (martiniss@chromium.org)
  https://crrev.com/cdf1ebd83441bc4bb54899e3f94d92d7953b8c66 Remove Android Swarming Tester (martiniss@chromium.org)
  https://crrev.com/9d08858e8f2f3aa0c556c1339eeca3d88bb44d46 Add four more slaves to N5 bot on chromium.swarm (bpastene@google.com)
  https://crrev.com/16c52aa6473518cf6751a9503a6e0b0d684979f8 CrOS: Update Chromite pin. (nodir@google.com)
  https://crrev.com/2cc4e2912d055df545a22801adaae8d16fbcb216 Convert Android One Perf builder to swarming (martiniss@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I75e3e2f14548081e5dfb585b22aec25f48a81e76
Reviewed-on: https://skia-review.googlesource.com/17374
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Thu, 18 May 2017 22:11:40 +0000 (15:11 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/f347ca1f531aad4cfb60ac6f23b4a8d8426195db ios/try: add regression test for patch application failure (phajdan.jr@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3a296e258c78850341874b8698242ec75260f5ba
Reviewed-on: https://skia-review.googlesource.com/17373
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRevert "Update clearOp for split-OpList world"
Robert Phillips [Thu, 18 May 2017 20:57:43 +0000 (20:57 +0000)]
Revert "Update clearOp for split-OpList world"

This reverts commit 7f1ce29c9bb9be8b2d8dbf9a99f14f74d5dc6d80.

Reason for revert: Maybe causing problems in imagemakewithfilter & dropshadowimagefilter

Original change's description:
> Update clearOp for split-OpList world
>
> It would reduce a lot of noise if the GrRenderTargetOpList kept a pointer to the GrCaps but, for now, I'm trying to shrink the GrRTOpList, not expand it.
>
> Change-Id: Ieed56fa2a41a3fb20234e26552ae2d301147e4f2
> Reviewed-on: https://skia-review.googlesource.com/17323
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

7 years agoRevert "Revert "Disable resource cache in shadow_utils GM for now""
Jim Van Verth [Thu, 18 May 2017 20:15:44 +0000 (20:15 +0000)]
Revert "Revert "Disable resource cache in shadow_utils GM for now""

This reverts commit 0b58ef7b525e5325ecd194c4b470e4c924cbb56a.

Reason for revert: Wasn't actually fixed.

Original change's description:
> Revert "Disable resource cache in shadow_utils GM for now"
>
> This reverts commit c34a946d5a975ba8b8cd51f79b55174a5ec0f99f.
>
> Reason for revert: This is probably fixed with https://skia-review.googlesource.com/c/17279/.
>
> Original change's description:
> > Disable resource cache in shadow_utils GM for now
> >
> > This should make the GMs more stable in tiled mode.
> >
> > Change-Id: I72996b1305fc99e60626af35267952d0a5c38624
> > Reviewed-on: https://skia-review.googlesource.com/17275
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Jim Van Verth <jvanverth@google.com>
> >
>
> TBR=jvanverth@google.com,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I0d21652a301b3f81e7ec04638bedbaabc723e583
> Reviewed-on: https://skia-review.googlesource.com/17304
> Reviewed-by: Jim Van Verth <jvanverth@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
>

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

Change-Id: If606795bfeb4e6ed78f199fcb86ee2767bde5216
Reviewed-on: https://skia-review.googlesource.com/17371
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>

7 years agocomment SK_API and add fix params
Cary Clark [Thu, 18 May 2017 19:27:57 +0000 (15:27 -0400)]
comment SK_API and add fix params

I thought that SK_API on operator== was
redundant with SK_API on the enclosing class,
and was not needed. Turns out for mac_chromium_debug_ng
it is needed. Added comments for history.

Meanwhile, bookmaker found some missing and
mis-named parameters, so all is not lost.

R=reed@google.com

Change-Id: I88645666a9d06ec90c5ac133673460d6e6c75528
Reviewed-on: https://skia-review.googlesource.com/17277
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoRemove ambient and spot mask filters.
Jim Van Verth [Thu, 18 May 2017 19:06:54 +0000 (15:06 -0400)]
Remove ambient and spot mask filters.

Also remove a deprecated interface in SkShadowUtils.

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

7 years agoUpdate clearOp for split-OpList world
Robert Phillips [Thu, 18 May 2017 18:38:55 +0000 (14:38 -0400)]
Update clearOp for split-OpList world

It would reduce a lot of noise if the GrRenderTargetOpList kept a pointer to the GrCaps but, for now, I'm trying to shrink the GrRTOpList, not expand it.

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

7 years agoAdd microbench for shadows
Jim Van Verth [Thu, 18 May 2017 18:31:19 +0000 (14:31 -0400)]
Add microbench for shadows

Based on Android's shadowgrid2.

Change-Id: I33209b6b84fc63a762405c4988afbdbffcc170d6
Reviewed-on: https://skia-review.googlesource.com/17360
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRoll recipe dependencies (trivial).
recipe-roller [Thu, 18 May 2017 18:32:53 +0000 (11:32 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/09b389732d01bbeb2bfb17f5de06e15a952f0cbb buildbot: log path where pruning is happening (nodir@google.com)
  https://crrev.com/e13406ec6a3459b6dccd3eca4be5bdcd5325682e Remove Win10 experimental bots (hinoka@google.com)
  https://crrev.com/745e8d9fbc8344d522a84131ffa9b43472dbb06d Revert "Reland: zip_build.py: Exclude secondary toolchain obj and gen, as well as .ninja" (agrieve@chromium.org)
depot_tools:
  https://crrev.com/16d2ae8cb05c27956530d8f05a893caec6a488ac bot_update: fix regression with swallowed exception (phajdan.jr@chromium.org)
recipe_engine:
  https://crrev.com/2f2d5c663eddcd8b6924a8775aaf88f3600d2ac8 [step_runner] expand try/catch to cover all step preparation functionality (iannucci@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0dfbef52e05e67b967846b91813ca1c6ee3abf15
Reviewed-on: https://skia-review.googlesource.com/17366
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRevert "Remove GrSurfaceDesc member from GrSurface."
Greg Daniel [Thu, 18 May 2017 18:13:40 +0000 (18:13 +0000)]
Revert "Remove GrSurfaceDesc member from GrSurface."

This reverts commit 84911546b9535a2fff6c5e07f588f175d5a04f45.

Reason for revert: Breaking bots possibly?

Original change's description:
> Remove GrSurfaceDesc member from GrSurface.
>
> Change-Id: I0fe979994e1e3fc457b952dfb5e0090c45fad771
> Reviewed-on: https://skia-review.googlesource.com/17273
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I404e509fcd3e3d5527b3bc6e286b7d436c12e879
Reviewed-on: https://skia-review.googlesource.com/17364
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>

7 years agoHide SkPerlinNoiseShader impl details
Florin Malita [Thu, 18 May 2017 15:52:59 +0000 (11:52 -0400)]
Hide SkPerlinNoiseShader impl details

Move the shader impl to a private class, leave SkPerlinNoiseShader as
a factory class only (similar to e.g. SkLightingShader).

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

7 years agoUse persistent checkout for UpdateMetaConfig bot
Ravi Mistry [Thu, 18 May 2017 16:44:40 +0000 (12:44 -0400)]
Use persistent checkout for UpdateMetaConfig bot

Bot is failing without this.

BUG=skia:6591

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

7 years agoRemove GrSurfaceDesc member from GrSurface.
Brian Salomon [Thu, 18 May 2017 16:30:34 +0000 (12:30 -0400)]
Remove GrSurfaceDesc member from GrSurface.

Change-Id: I0fe979994e1e3fc457b952dfb5e0090c45fad771
Reviewed-on: https://skia-review.googlesource.com/17273
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoSwitch over GrDiscardOp to IORef-ing the GrRenderTargetProxy
Robert Phillips [Thu, 18 May 2017 16:17:35 +0000 (12:17 -0400)]
Switch over GrDiscardOp to IORef-ing the GrRenderTargetProxy

This cannot land until after https://skia-review.googlesource.com/c/14186/ (Split up opLists (take 3)) sticks.

This is because, prior to that CL, the SurfaceProxies have a ref on the last OpList that wrote to them. Since this CL adds a IORef from a discardOp in an opList to the SurfaceProxy this can result in a loop. After the required CL sticks, opLists have a IORef on the SurfaceProxy to which they wrote and the SurfaceProxy just has a raw back pointer so there will be no loop.

Change-Id: I198035f5dd5a8fad549052dea6aaa61477a89844
Reviewed-on: https://skia-review.googlesource.com/16663
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoCQ_INCLUDE_CHROMIUM_TRYBOTS: add optional trybots
Hal Canary [Thu, 18 May 2017 15:29:04 +0000 (11:29 -0400)]
CQ_INCLUDE_CHROMIUM_TRYBOTS: add optional trybots

Change-Id: Id1bc86592a3006b00dfd313bf48488e038f3a041
Reviewed-on: https://skia-review.googlesource.com/17317
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoAdd drawArraysBaseVertexIsBroken flag
Chris Dalton [Wed, 17 May 2017 21:15:50 +0000 (15:15 -0600)]
Add drawArraysBaseVertexIsBroken flag

A non-zero base vertex in glDrawArrays appears to not always work on
Adreno.

Bug: skia:6650
Change-Id: I301eaba8c7790ed814a2ab8d8c53dd2b9e0d77d1
Reviewed-on: https://skia-review.googlesource.com/17083
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoAdd check for incorrect opList splits
Robert Phillips [Thu, 18 May 2017 15:40:04 +0000 (11:40 -0400)]
Add check for incorrect opList splits

This CL relies on: https://skia-review.googlesource.com/c/14186/ (Split up opLists (take 3))

We can't/don't want to close the opList in the GrSurfaceContext dtor because we, semi-often, wrap a proxy in a utility SurfaceContext in order to upload data to it (e.g., when creating a proxy w/ data or in the texture strip atlas).

In the current set up, the "temporary fixes" in newRTOpList and newTextureOpList should prevent any out of order execution.

Change-Id: I8189db6ed59096d7b8c1704028df395f84e4a681
Reviewed-on: https://skia-review.googlesource.com/14187
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoRevert "Revert "Remove GrSurface::desc() method.""
Brian Salomon [Thu, 18 May 2017 14:02:08 +0000 (10:02 -0400)]
Revert "Revert "Remove GrSurface::desc() method.""

This reverts commit c96da1e51e1ca72d54dda49f32891bd41530ad31.

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

7 years agoExpand small tables in SkColorSpaceXform_A2B
Matt Sarett [Thu, 18 May 2017 14:39:46 +0000 (10:39 -0400)]
Expand small tables in SkColorSpaceXform_A2B

Bug: 722855
Change-Id: Id3661be1e9747ac0de1e35b60d334ee8187a5be5
Reviewed-on: https://skia-review.googlesource.com/17312
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoPre-cache SkPath's genID in PreCachedPath too
Mike Klein [Thu, 18 May 2017 15:26:53 +0000 (11:26 -0400)]
Pre-cache SkPath's genID in PreCachedPath too

SkPath::getGenerationID() calls SkPathRef's, which is where the race is.

Change-Id: I71296b32148c8cda2d2b2fe249ef6b9ef84fcfe0
Reviewed-on: https://skia-review.googlesource.com/17316
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoRoll recipe dependencies (trivial).
recipe-roller [Thu, 18 May 2017 15:20:19 +0000 (08:20 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/1929522b5629bc18495781feaf794bef80db81f4 Nitfix follow up for https://chromium-review.googlesource.com/c/507128 (tandrii@chromium.org)
  https://crrev.com/feefbde597dd2c76463f51ad35e555922ce2c93f Bootstrap "authorize_adb_devices". (dnj@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I24c8fc5e7c1e5a141ace50e9a8a17b079e397afe
Reviewed-on: https://skia-review.googlesource.com/17314
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoFix SkImage::onMakeColorSpace() for subset lazy images
Matt Sarett [Thu, 18 May 2017 13:26:50 +0000 (09:26 -0400)]
Fix SkImage::onMakeColorSpace() for subset lazy images

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

7 years agoRoll recipe dependencies (trivial).
recipe-roller [Thu, 18 May 2017 13:30:06 +0000 (06:30 -0700)]
Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
build:
  https://crrev.com/df8a4659dcb826adfeb1f1534f124db33cda13e8 Revert "Remove debug output during recipe training." (tandrii@chromium.org)
  https://crrev.com/589e5267097f76224e0ac2e2ea554aff635d979f Revert "Turtles all the way down = aka debugging chromium_tests 2." (tandrii@chromium.org)
  https://crrev.com/af07a8d4dd8b3525570758f551c386dd680e0bf2 Revert "Turtles all the way down = aka debugging chromium_tests." (tandrii@chromium.org)
  https://crrev.com/81ae4cac09270557f27b650e4a19239d16ae9fde Revert "Add debug marker for ease text search for debugging info." (tandrii@chromium.org)
  https://crrev.com/208399a7f37deab314244d1c990570c0fd630a6a Revert "Log masked exception in test utils" (tandrii@chromium.org)
  https://crrev.com/8e9cb844bc627074c4aa50e1255cb468241dc2f6 V8: Add concurrent marking tsan bots (machenbach@chromium.org)

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I5823023f3b6910011055136ff603d3579482a690
Reviewed-on: https://skia-review.googlesource.com/17310
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>

7 years agoRemove unused SkZeroShaderContext
Florin Malita [Thu, 18 May 2017 13:26:41 +0000 (09:26 -0400)]
Remove unused SkZeroShaderContext

Change-Id: I3e9d9cb9c2f948b0bb363871e038ade1cf2f3d67
Reviewed-on: https://skia-review.googlesource.com/17308
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>