platform/upstream/libSkiaSharp.git
7 years agoAdd docs for iOS simulator build.
Mike Klein [Tue, 21 Mar 2017 15:49:26 +0000 (11:49 -0400)]
Add docs for iOS simulator build.

The new bot[1] seems to be working.

[1] https://status.skia.org/repo/skia?filter=search&search_value=Build-Mac-Clang-x64-Release-iOS

BUG=skia:6329

Change-Id: I40ea4b19cba14a160d84317d7fee11aef5b17051
Reviewed-on: https://skia-review.googlesource.com/9973
Reviewed-by: Hal Canary <halcanary@google.com>
7 years agoAdd iOS simulator support and a Build bot.
Mike Klein [Mon, 13 Mar 2017 14:54:11 +0000 (07:54 -0700)]
Add iOS simulator support and a Build bot.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Mac-Clang-x64-Release-iOS

BUG=skia:6329

Change-Id: I4a9d79469683797ff54727b6a1031f438939ce9b
Reviewed-on: https://skia-review.googlesource.com/9517
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
7 years agocheck-headers-self-sufficient: update
Hal Canary [Wed, 15 Feb 2017 16:21:32 +0000 (11:21 -0500)]
check-headers-self-sufficient: update

  * Translate to python, use multiprocessing to make it wun in reasonanble time.
  * Fix three headers.
  * Move one header.

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

7 years agofix fuzz
Cary Clark [Tue, 21 Mar 2017 14:30:50 +0000 (10:30 -0400)]
fix fuzz

corrupted intersection point lists
can loop forever. Add a safety
hatch to abort after a large number
of iterations.

TBR=kjlubick@google.com
BUG=700679

Change-Id: Ifd4b180b47ba3bbde38ade0bb13b16b8d645c1cb
Reviewed-on: https://skia-review.googlesource.com/9967
Reviewed-by: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>

7 years agoExclude Vulkan from running PreFlushCallbackTest
Robert Phillips [Tue, 21 Mar 2017 14:30:41 +0000 (10:30 -0400)]
Exclude Vulkan from running PreFlushCallbackTest

This should "fix" the broken Vulkan bots

Change-Id: I220cda983d7aad469dfa851db7bf25df6074650e
Reviewed-on: https://skia-review.googlesource.com/9968
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoCompatible use of png_set_iCCP
Matt Sarett [Tue, 21 Mar 2017 14:06:45 +0000 (10:06 -0400)]
Compatible use of png_set_iCCP

BUG=skia:

Change-Id: Ie37b92fd5e0d2bc92ec7f2bf3e6f56d061bc30a2
Reviewed-on: https://skia-review.googlesource.com/9960
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agoAdd Chromecast Perf jobs
Kevin Lubick [Tue, 21 Mar 2017 13:25:34 +0000 (09:25 -0400)]
Add Chromecast Perf jobs

It starts out with some skps and resource-based perf
because all skps wouldn't fit and skimages are far too large

BUG=skia:

Change-Id: Icb07ffa84d39a85a8bc595e74ef934df921e749a
Reviewed-on: https://skia-review.googlesource.com/9901
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
7 years agoCombine some duplicate code in AA using template
Yuqian Li [Fri, 17 Mar 2017 15:26:29 +0000 (11:26 -0400)]
Combine some duplicate code in AA using template

BUG=skia:

Change-Id: Id048425e8199167feba0268f89f526bbf5b7242b
Reviewed-on: https://skia-review.googlesource.com/9832
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>

7 years agoMove build tasks to MacOS 10.12
Stephan Altmueller [Mon, 20 Mar 2017 17:38:45 +0000 (13:38 -0400)]
Move build tasks to MacOS 10.12

BUG=skia:

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

7 years agoIn Vulkan make sure to add barriers between write operations
Greg Daniel [Tue, 21 Mar 2017 13:48:44 +0000 (09:48 -0400)]
In Vulkan make sure to add barriers between write operations

BUG=skia:6396

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

7 years agoHave SkColorSpaceXformCanas tell SkCanvas about clips.
Mike Klein [Tue, 21 Mar 2017 02:47:33 +0000 (22:47 -0400)]
Have SkColorSpaceXformCanas tell SkCanvas about clips.

This should make queries like SkCanvas::getLocalClipBounds() work.

BUG=chromium:703363

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

7 years agoEnable GLES on Intel Linux bots.
Ben Wagner [Tue, 21 Mar 2017 02:56:19 +0000 (22:56 -0400)]
Enable GLES on Intel Linux bots.

BUG=skia:6401
NOTRY=true

Change-Id: Ief434ca38ffd504198e8d3656a0a869d0faa9ebf
Reviewed-on: https://skia-review.googlesource.com/9822
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agorename makeCopyForTextureParams to isACopyNeededForTextureParams
Robert Phillips [Tue, 21 Mar 2017 13:14:35 +0000 (09:14 -0400)]
rename makeCopyForTextureParams to isACopyNeededForTextureParams

I thought the old name was misleading

split out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)

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

7 years agoRevert "Make SkImage_Gpu be deferred"
Robert Phillips [Tue, 21 Mar 2017 13:26:13 +0000 (13:26 +0000)]
Revert "Make SkImage_Gpu be deferred"

This reverts commit 0db235bc0278887c344eb25b4681e9cca4cf892a.

Reason for revert: cc_unittests failing

Original change's description:
> Make SkImage_Gpu be deferred
>
> This CL removes the GrTexture-based ctor forcing everyone to create deferred SkImage_Gpus.
>
> split out into:
> https://skia-review.googlesource.com/c/9106/ (Remove atlas creation from GrResourceProvider)
>
> Change-Id: I266bbe089c242fe54d5b7adcc7895aa5a39440a0
> Reviewed-on: https://skia-review.googlesource.com/6680
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

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

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

7 years agoAttempt to fix AMD ANGLE bots.
Brian Salomon [Mon, 20 Mar 2017 21:08:43 +0000 (17:08 -0400)]
Attempt to fix AMD ANGLE bots.

Makes the second context used for image tests be of the same type as it was before https://skia.googlesource.com/skia/+/6405e71279e99731f89db69325c6763ec62a98e1

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

7 years agoFollowup fixes for recipe roll
Eric Boren [Tue, 21 Mar 2017 12:20:33 +0000 (08:20 -0400)]
Followup fixes for recipe roll

Simplifying some environment madness. Nobody gets to modify default_env.
Always apply it in run.__call__(). Add depot_tools path to PATH in
default_env. Result is simpler but now default_env is applied in many
more places, which should be harmless.

BUG=skia:

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

7 years agoreadpixels GM uses GPU image in GPU configs
Brian Osman [Mon, 20 Mar 2017 20:54:28 +0000 (16:54 -0400)]
readpixels GM uses GPU image in GPU configs

This now demonstrates that readPixels does not do color sapce conversion
in Ganesh (and fails completely for unpremul F16). Next: fix those issues.

BUG=skia:5853

Change-Id: If3bd1882249ae85b4738ef72e16cfb87b06b9363
Reviewed-on: https://skia-review.googlesource.com/9904
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoAdd support for F32 sources to SkColorSpaceXform
Matt Sarett [Mon, 20 Mar 2017 23:06:18 +0000 (19:06 -0400)]
Add support for F32 sources to SkColorSpaceXform

This also subtlely allows clients to convert between F32 and F16.

BUG=skia:

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

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

7 years agoAdd pre-Flush callback to GrDrawingManager (take 2)
Robert Phillips [Tue, 21 Mar 2017 11:56:47 +0000 (07:56 -0400)]
Add pre-Flush callback to GrDrawingManager (take 2)

This will allow internal systems (e.g., fonts & path renderers) to create pre-flush atlases.

Depends on: https://skia-review.googlesource.com/c/8988/ (Allow GrSurfaceProxy-derived classes to use flags when instantiating)

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

7 years agoMake SkImage_Gpu be deferred
Robert Phillips [Mon, 20 Mar 2017 18:37:13 +0000 (14:37 -0400)]
Make SkImage_Gpu be deferred

This CL removes the GrTexture-based ctor forcing everyone to create deferred SkImage_Gpus.

split out into:
https://skia-review.googlesource.com/c/9106/ (Remove atlas creation from GrResourceProvider)

Change-Id: I266bbe089c242fe54d5b7adcc7895aa5a39440a0
Reviewed-on: https://skia-review.googlesource.com/6680
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoRoll Recipe DEPS
Eric Boren [Mon, 20 Mar 2017 19:40:12 +0000 (15:40 -0400)]
Roll Recipe DEPS

BUG=skia:

Change-Id: Ic89d1b49aba842fb41c82ad6fc8f5ebe787893bd
Reviewed-on: https://skia-review.googlesource.com/9884
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
7 years agoremove SK_SUPPORT_LEGACY_DRAWVERTICES_VIRTUAL flag
Mike Reed [Tue, 21 Mar 2017 09:41:35 +0000 (05:41 -0400)]
remove SK_SUPPORT_LEGACY_DRAWVERTICES_VIRTUAL flag

BUG=skia:6366

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

7 years agoSupport vs2017.
Ben Wagner [Mon, 20 Mar 2017 20:53:05 +0000 (16:53 -0400)]
Support vs2017.

Change-Id: Icb333d34705c86f6204a5265b645a2a215e60ad6
Reviewed-on: https://skia-review.googlesource.com/9624
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoAdd support for writing ICC profiles in png encodes
Matt Sarett [Wed, 15 Mar 2017 21:50:08 +0000 (17:50 -0400)]
Add support for writing ICC profiles in png encodes

BUG=skia:

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

7 years agoUpdate SKP version
UpdateSKPs [Mon, 20 Mar 2017 22:13:50 +0000 (22:13 +0000)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

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

7 years agoRevert "Revert "remove unused SkMeshUtils and SkBoundaryPatch""
Mike Reed [Mon, 20 Mar 2017 20:53:02 +0000 (20:53 +0000)]
Revert "Revert "remove unused SkMeshUtils and SkBoundaryPatch""

This reverts commit 006c8da9c65e234f102f671e5abd41f697864c89.

Reason for revert: PDFium references have been removed

Original change's description:
> Revert "remove unused SkMeshUtils and SkBoundaryPatch"
>
> This reverts commit 5e21e0991968271ee37f446de7e08620ad1b50bb.
>
> Reason for revert: Breaks Pdfium build see:
>     https://chromium-swarm.appspot.com/task?id=3504e60d4bc10810&refresh=10
>
> Original change's description:
> > remove unused SkMeshUtils and SkBoundaryPatch
> >
> > BUG=skia:6366
> >
> > Change-Id: Ibacd397e0a246dbeefde074c98712ada3848a7b6
> > Reviewed-on: https://skia-review.googlesource.com/9852
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> >
>
> TBR=djsollen@google.com,reed@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:6366
>
> Change-Id: I2403bae0a17bce8eeec743c6f433bb51b214e669
> Reviewed-on: https://skia-review.googlesource.com/9891
> Reviewed-by: Stephan Altmueller <stephana@google.com>
> Commit-Queue: Stephan Altmueller <stephana@google.com>
>

TBR=djsollen@google.com,reviews@skia.org,stephana@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:6366

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

7 years agoreenable lua and fix bitrot
Mike Reed [Mon, 20 Mar 2017 20:13:34 +0000 (16:13 -0400)]
reenable lua and fix bitrot

BUG=skia:6366

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

7 years agoSet maxVertexAttrib limit for Vulkan
Greg Daniel [Mon, 20 Mar 2017 15:40:58 +0000 (11:40 -0400)]
Set maxVertexAttrib limit for Vulkan

BUG=skia:6396

Change-Id: If31507816ca9978a64d3bd25b282b373d292e7aa
Reviewed-on: https://skia-review.googlesource.com/9856
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoAdd $VULKAN_SDK/$Lib to lib_dirs on windows
Brian Salomon [Mon, 20 Mar 2017 19:54:41 +0000 (15:54 -0400)]
Add $VULKAN_SDK/$Lib to lib_dirs on windows

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

7 years agoDisable msaa nanobench on iOS due to crashes
Brian Salomon [Mon, 20 Mar 2017 18:22:04 +0000 (14:22 -0400)]
Disable msaa nanobench on iOS due to crashes

BUG=skia:6399

Change-Id: I9351579cdc78a59a99cc9ecbcac0c5146d186bd1
Reviewed-on: https://skia-review.googlesource.com/9902
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoImprovements to readpixels GM
Brian Osman [Mon, 20 Mar 2017 18:21:18 +0000 (14:21 -0400)]
Improvements to readpixels GM

We don't support unpremultiplied images. Therefore:
- Don't test unpremul source images.
- After doing an unpremultiplying read, make sure to premul before drawing

For this to work with F16, add support for F16 sources to
SkColorSpaceXform.

Public API change is comments-only.
TBR=reed@google.com

BUG=skia:

Change-Id: Ie05b58231e99ca88cd7792b65ffbb4f390b01726
Reviewed-on: https://skia-review.googlesource.com/9900
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
7 years agoIgnore Clang's -Wdeprecated-register for flex-generated code
Roland McGrath [Fri, 17 Mar 2017 21:34:00 +0000 (14:34 -0700)]
Ignore Clang's -Wdeprecated-register for flex-generated code

This change fixes the Fuchsia build.

Change-Id: I9342e5aacf75067f01aff883ccf100d11b8f4462
Reviewed-on: https://skia-review.googlesource.com/9849
Reviewed-by: Michael Jurka <mikejurka@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoMake SkMemory.h and adjust all files for usage.
Herb Derby [Mon, 20 Mar 2017 15:19:23 +0000 (11:19 -0400)]
Make SkMemory.h and adjust all files for usage.

This will be rolled out in three stages:
1) make SkMemory.h and have SkTypes.h include it.
2) Adjust chromium and android.
3) no long include SkMemory.h in SkTypes.h

Change-Id: If360ef5e1164d88f50b03f279e2e963ca2f57d5d
Reviewed-on: https://skia-review.googlesource.com/9874
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Herb Derby <herb@google.com>

7 years agoGray8 is supported on GPU, remove incorrect comments & check
Brian Osman [Mon, 20 Mar 2017 17:11:36 +0000 (13:11 -0400)]
Gray8 is supported on GPU, remove incorrect comments & check

BUG=skia:

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

7 years agoMake gn directory importable in python
Ravi Mistry [Mon, 20 Mar 2017 16:55:48 +0000 (12:55 -0400)]
Make gn directory importable in python

This will make it possible to do
>>> from gn import gn_to_bp
instead of:
>>> sys.path.append('gn')
>>> import gn_to_bp
in the new Android autoroller

BUG=skia:5538

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

7 years agoRoll Recipe DEPS
Eric Boren [Mon, 20 Mar 2017 16:48:31 +0000 (12:48 -0400)]
Roll Recipe DEPS

Backing up from https://skia-review.googlesource.com/c/9884 due to failures.

BUG=skia:

Change-Id: I12182044191f5df56518f355262bbf83f8c5c1f8
Reviewed-on: https://skia-review.googlesource.com/9895
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
7 years agoFix expected extension for CIPD on Windows
Brian Osman [Mon, 20 Mar 2017 16:17:02 +0000 (12:17 -0400)]
Fix expected extension for CIPD on Windows

New depot_tools copy is a batch file

BUG=skia:

Change-Id: Id1497f7f7d7d93600fbfbf5991f7582380781ae8
Reviewed-on: https://skia-review.googlesource.com/9896
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoRemove SkImage::MakeTextureFromPixmap
Brian Osman [Mon, 20 Mar 2017 15:03:55 +0000 (11:03 -0400)]
Remove SkImage::MakeTextureFromPixmap

Slight variation on https://skia-review.googlesource.com/c/7346/,
which had to be reverted. This version also changes the non-mip
upload path to use a GrTextureProxy. Hopefully this doesn't trigger
the same perf regression that we saw last time.

BUG=skia:

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

7 years agoSwitch 16 sample gpu configs to 8 samples
Brian Salomon [Mon, 20 Mar 2017 15:10:21 +0000 (11:10 -0400)]
Switch 16 sample gpu configs to 8 samples
BUG=skia:

Change-Id: I053cce7c05c74860cbace00cd94ea4b96e9a482c
Reviewed-on: https://skia-review.googlesource.com/9889
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agoEnable CIPD automatic GCE authentication and fix upload_skps.py
Ravi Mistry [Mon, 20 Mar 2017 14:43:26 +0000 (10:43 -0400)]
Enable CIPD automatic GCE authentication and fix upload_skps.py

BUG=skia:6385

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

7 years agoFix discardable memory bot by calling lockPixels()
Matt Sarett [Thu, 16 Mar 2017 01:17:08 +0000 (21:17 -0400)]
Fix discardable memory bot by calling lockPixels()

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE

BUG=skia:

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

7 years agoEager or Lazy evaluation of sub-drawings for SkDeferredCanvas.
Herb Derby [Fri, 17 Mar 2017 19:51:53 +0000 (15:51 -0400)]
Eager or Lazy evaluation of sub-drawings for SkDeferredCanvas.

Allow evaluation choice of Lazy or Eager evaluation for SkDeferredCanvas.

Eager is used for drawing to a non-recording canvas to reduce the number of
all operations.

Lazy is used for drawing to a recording canvas to reduce the amount decode/encode
that happens.

R=reed@google.com

Change-Id: I7837c4f6e5911c153e0796162e1170edbc34839e
Reviewed-on: https://skia-review.googlesource.com/9839
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoWiden nondetmerministic testing of processors to all Ubuntu bots
Brian Osman [Mon, 20 Mar 2017 14:21:26 +0000 (10:21 -0400)]
Widen nondetmerministic testing of processors to all Ubuntu bots

BUG=skia:6395

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

7 years agoMove SkOSFile.h to src/core
Ben Wagner [Mon, 20 Mar 2017 14:05:08 +0000 (10:05 -0400)]
Move SkOSFile.h to src/core

Skia needs implementations (ports) of the declarations in this header,
but no one outside of Skia the library should use them.

Change-Id: I1b92eca787a61892d7b3c0ac8c5996774429ae24
Reviewed-on: https://skia-review.googlesource.com/9878
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
7 years agoOmit hanging/failing tests on AMD Vulkan.
Ben Wagner [Sun, 19 Mar 2017 12:33:43 +0000 (08:33 -0400)]
Omit hanging/failing tests on AMD Vulkan.

BUG=skia:6396
NOTRY=true

Change-Id: Ib438c803aae01a3ec109d8c7416b3c5ab32a5aa5
Reviewed-on: https://skia-review.googlesource.com/9868
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoSkData::MakeFromFD to pass size to release proc.
Ben Wagner [Fri, 17 Mar 2017 21:52:22 +0000 (17:52 -0400)]
SkData::MakeFromFD to pass size to release proc.

6b7f34e34cc0ce397ce5e4ddc0c244f372b4f840
"simplify release-proc for SkData, removing unneeded size param"
updated SkData::MakeFromFILE to pass the size of the mmap to the
release proc, but did not update SkData::MakeFromFD.

Change-Id: I093fff78f06818a946053df7158302664edfee0e
Reviewed-on: https://skia-review.googlesource.com/9876
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoRevert "remove unused SkMeshUtils and SkBoundaryPatch"
Stephan Altmueller [Mon, 20 Mar 2017 14:22:58 +0000 (14:22 +0000)]
Revert "remove unused SkMeshUtils and SkBoundaryPatch"

This reverts commit 5e21e0991968271ee37f446de7e08620ad1b50bb.

Reason for revert: Breaks Pdfium build see:
    https://chromium-swarm.appspot.com/task?id=3504e60d4bc10810&refresh=10

Original change's description:
> remove unused SkMeshUtils and SkBoundaryPatch
>
> BUG=skia:6366
>
> Change-Id: Ibacd397e0a246dbeefde074c98712ada3848a7b6
> Reviewed-on: https://skia-review.googlesource.com/9852
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>

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

Change-Id: I2403bae0a17bce8eeec743c6f433bb51b214e669
Reviewed-on: https://skia-review.googlesource.com/9891
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>

7 years agoGetResourceAsData to use SkData::MakeFromFileName directly.
Ben Wagner [Fri, 17 Mar 2017 21:56:28 +0000 (17:56 -0400)]
GetResourceAsData to use SkData::MakeFromFileName directly.

The current code creates an SkFILEStream and then reads all the bytes
from it into an SkData. Instead, let the SkData just mmap the file.

Change-Id: I79e3550a84e6f54ccbbd7284f5cda81ce1fa9221
Reviewed-on: https://skia-review.googlesource.com/9877
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoremove unsupported flag
Mike Reed [Mon, 20 Mar 2017 13:31:20 +0000 (09:31 -0400)]
remove unsupported flag

BUG=skia:

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

7 years agoRemove budgeted parameter from SkSurface::makeImageSnapshot (take 2)
Robert Phillips [Mon, 20 Mar 2017 12:38:50 +0000 (08:38 -0400)]
Remove budgeted parameter from SkSurface::makeImageSnapshot (take 2)

This unused feature complicates MDB.

Chrome compiles locally for me with this CL.
frameworks/base/libs/hwui compiles locally for me with this CL.

Change-Id: Id3ad64dac72eace52855896df0d7ce3679f15884
Reviewed-on: https://skia-review.googlesource.com/9882
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoRemove gpu configs that don't have explicit API.
Brian Salomon [Mon, 20 Mar 2017 12:54:16 +0000 (08:54 -0400)]
Remove gpu configs that don't have explicit API.

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

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

7 years agoremove unused SkMeshUtils and SkBoundaryPatch
Mike Reed [Sun, 19 Mar 2017 20:26:20 +0000 (16:26 -0400)]
remove unused SkMeshUtils and SkBoundaryPatch

BUG=skia:6366

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

7 years agoremove legacy vertices virtual from SkDevice
Mike Reed [Sun, 19 Mar 2017 19:04:17 +0000 (15:04 -0400)]
remove legacy vertices virtual from SkDevice

BUG=skia:6366

Change-Id: I9fb49538f358343a7c2e4541d0044d961ac1b54d
Reviewed-on: https://skia-review.googlesource.com/9870
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
7 years agoRevert "Revert "Add color spin test for SkColorSpaceXformCanvas""
Mike Klein [Sat, 18 Mar 2017 15:36:52 +0000 (15:36 +0000)]
Revert "Revert "Add color spin test for SkColorSpaceXformCanvas""

This reverts commit 73e21af21390c2806eb1350253233903808edd6b.

Reason for revert: I will fix the broken bot next week.

Original change's description:
> Revert "Add color spin test for SkColorSpaceXformCanvas"
>
> This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.
>
> Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE
>
> Original change's description:
> > Add color spin test for SkColorSpaceXformCanvas
> >
> > Also changes behavior to treat nullptr srcs as sRGB.
> >
> > Testing locally, it looks like 353 gms have no diffs from 8888.
> > There are 269 diffs - some are fine (gms that do color space stuff)
> > and some are bugs.
> >
> > BUG=skia:
> >
> > Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> > Reviewed-on: https://skia-review.googlesource.com/9738
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Matt Sarett <msarett@google.com>
> >
>
> TBR=mtklein@google.com,msarett@google.com,brianosman@google.com,reviews@skia.org
> # Not skipping CQ checks because original CL landed > 1 day ago.
> BUG=skia:
>
> Change-Id: I70bb69f747b863d267494e37a60888a51ab0184c
> Reviewed-on: https://skia-review.googlesource.com/9823
> Reviewed-by: Eric Boren <borenet@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>
>

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

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

7 years agoremov patheffect flag from google3
Mike Reed [Sat, 18 Mar 2017 02:51:08 +0000 (22:51 -0400)]
remov patheffect flag from google3

BUG=skia:

Change-Id: Iceae8d1ed0a8a8ba4021dd114ff436f5df6905c6
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9851
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRevert "Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"""
Yuqian Li [Fri, 17 Mar 2017 20:50:06 +0000 (20:50 +0000)]
Revert "Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"""

This reverts commit 31249bb2df023868e4585f14519bf17c835f8700.

Reason for revert: Android build is still broken as shown below.

out/target/product/bullhead/obj/NATIVE_TESTS/hwui_unit_tests_intermediates/tests/unit/SkiaPipelineTests.o frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp"
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:211:51: error: non-virtual member function marked 'override' hides virtual member function
    sk_sp<SkImage> onNewImageSnapshot(SkBudgeted) override {
                                                  ^
external/skia/src/image/SkSurface_Base.h:46:28: note: hidden overloaded virtual function 'SkSurface_Base::onNewImageSnapshot' declared here: different number of parameters (0 vs 1)
    virtual sk_sp<SkImage> onNewImageSnapshot() = 0;
                           ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:281:84: error: no viable conversion from 'sk_sp<DeferLayer<DeferTestCanvas>>' to 'sk_sp<SkSurface>'
    pipeline->renderFrame(layerUpdateQueue, dirty, nodes, true, contentDrawBounds, surface);
                                                                                   ^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
    constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
              ^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
    sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
    ^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<DeferTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
    sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
    ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
                                                                                 ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<DeferTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
    operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
    ^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
            sk_sp<SkSurface> surface);
                             ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:312:58: error: no viable conversion from 'sk_sp<DeferLayer<ClippedTestCanvas>>' to 'sk_sp<SkSurface>'
            SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface);
                                                         ^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
    constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
              ^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
    sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
    ^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClippedTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
    sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
    ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
                                                                                 ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClippedTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
    operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
    ^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
            sk_sp<SkSurface> surface);
                             ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:343:58: error: no viable conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas>>' to 'sk_sp<SkSurface>'
            SkRect::MakeWH(CANVAS_WIDTH, CANVAS_HEIGHT), surface);
                                                         ^~~~~~~
external/skia/include/core/SkRefCnt.h:253:15: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
    constexpr sk_sp(std::nullptr_t) : fPtr(nullptr) {}
              ^
external/skia/include/core/SkRefCnt.h:259:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'const sk_sp<SkSurface> &' for 1st argument
    sk_sp(const sk_sp<T>& that) : fPtr(SkSafeRef(that.get())) {}
    ^
external/skia/include/core/SkRefCnt.h:268:5: note: candidate constructor not viable: no known conversion from 'sk_sp<DeferLayer<ClipReplaceTestCanvas> >' to 'sk_sp<SkSurface> &&' for 1st argument
    sk_sp(sk_sp<T>&& that) : fPtr(that.release()) {}
    ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>]
template <bool B, typename T = void> using enable_if_t = typename std::enable_if<B, T>::type;
                                                                                 ^
external/skia/include/gpu/../private/SkTLogic.h:27:82: note: candidate template ignored: disabled by 'enable_if' [with U = (anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>]
external/skia/include/core/SkRefCnt.h:327:5: note: candidate function
    operator unspecified_bool_type() const { return this->get() ? &sk_sp::fPtr : nullptr; }
    ^
frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.h:50:30: note: passing argument to parameter 'surface' here
            sk_sp<SkSurface> surface);
                             ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<DeferTestCanvas>'
    T* canvas() { return static_cast<T*>(getCanvas()); }
                                         ^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:282:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<DeferTestCanvas>::canvas' requested here
    EXPECT_EQ(4, surface->canvas()->mDrawCounter);
                          ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClippedTestCanvas>'
    T* canvas() { return static_cast<T*>(getCanvas()); }
                                         ^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:313:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClippedTestCanvas>::canvas' requested here
    EXPECT_EQ(1, surface->canvas()->mDrawCounter);
                          ^
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:214:42: error: cannot initialize object parameter of type 'SkSurface' with an expression of type '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>'
    T* canvas() { return static_cast<T*>(getCanvas()); }
                                         ^~~~~~~~~
frameworks/base/libs/hwui/tests/unit/SkiaPipelineTests.cpp:344:27: note: in instantiation of member function '(anonymous namespace)::DeferLayer<ClipReplaceTestCanvas>::canvas' requested here
    EXPECT_EQ(1, surface->canvas()->mDrawCounter);

Original change's description:
> Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""
>
> This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173.
>
> Reason for revert: Android-side fix has landed
>
> Original change's description:
> > Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
> >
> > This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.
> >
> > Reason for revert:
> >
> > Android build failed as shown below.
> >
> > frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
> >     mImage = surface->makeImageSnapshot(SkBudgeted::kNo);
> >
> > Original change's description:
> > > Remove budgeted parameter from SkSurface::makeImageSnapshot
> > >
> > > This unused feature complicates MDB.
> > >
> > > Chrome compiles locally for me with this CL.
> > >
> > > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> > > Reviewed-on: https://skia-review.googlesource.com/9734
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Robert Phillips <robertphillips@google.com>
> > >
> >
> > TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> >
> > Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
> > Reviewed-on: https://skia-review.googlesource.com/9788
> > Reviewed-by: Yuqian Li <liyuqian@google.com>
> > Commit-Queue: Yuqian Li <liyuqian@google.com>
> >
>
> TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Change-Id: If07d1b5db6e6c618d37445a0cf127780ed243a92
> Reviewed-on: https://skia-review.googlesource.com/9843
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org,liyuqian@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I674b0a9d4130e00164d2e0344a92c373cf70f4fd
Reviewed-on: https://skia-review.googlesource.com/9873
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>

7 years agoRun 4 sample msaa configs for perf on iOS
Brian Salomon [Fri, 17 Mar 2017 18:39:27 +0000 (14:39 -0400)]
Run 4 sample msaa configs for perf on iOS

Also remove seemingly incorrect DM suppression for msaa16 on iOS.

Change-Id: I3e86dc9c3c625a1b802a6edfbb9db3b708ecba4f
Reviewed-on: https://skia-review.googlesource.com/9863
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agosk_fgetsize to not use ftell.
Ben Wagner [Fri, 17 Mar 2017 17:49:31 +0000 (13:49 -0400)]
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>

7 years agoSkXPS: use correct drawBitmapRect logic for !bitmap.bounds().contains(*src)
Hal Canary [Fri, 17 Mar 2017 19:16:21 +0000 (15:16 -0400)]
SkXPS: use correct drawBitmapRect logic for !bitmap.bounds().contains(*src)

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

7 years agoremove unused params
Mike Reed [Fri, 17 Mar 2017 19:35:40 +0000 (15:35 -0400)]
remove unused params

BUG=skia:6366

Change-Id: I0cfb8e4a969dc018339047183176fb242e455ab8
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9869
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agodon't use deprecated (raw) form of SkPatchUtils, delete duplicate util
Mike Reed [Fri, 17 Mar 2017 18:29:05 +0000 (14:29 -0400)]
don't use deprecated (raw) form of SkPatchUtils, delete duplicate util

deprecated API still used in android -- will fix (and then delete)

BUG=skia:6366

Change-Id: Icd87acc680f7c8ae66ac231cb5d254f5eb178008
Reviewed-on: https://skia-review.googlesource.com/9864
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoadd flag for android
Mike Reed [Fri, 17 Mar 2017 19:15:29 +0000 (15:15 -0400)]
add flag for android

BUG=skia:6366

Change-Id: I2b250ed32442379e3e14ab2dc805ac9ccdc57e93
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9866
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoBe explicit on test and perf bots about GL vs GLES
Brian Salomon [Fri, 17 Mar 2017 18:32:05 +0000 (14:32 -0400)]
Be explicit on test and perf bots about GL vs GLES

This changes the names of several shorthand names for gpu configs to be prefixed either with "gl" or "gles" and makes the bots only use such configs. It adds some missing named configs.

Change-Id: Iea4e0e2ddafe0ac08e623111a15be7335156957c
Reviewed-on: https://skia-review.googlesource.com/9833
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
7 years agoRemove "Unused uniform in shader" messages
Brian Osman [Fri, 17 Mar 2017 18:10:21 +0000 (14:10 -0400)]
Remove "Unused uniform in shader" messages

BUG=skia:6393

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

7 years agoadd flag for google3
Mike Reed [Fri, 17 Mar 2017 18:09:54 +0000 (14:09 -0400)]
add flag for google3

BUG=skia:6366

Change-Id: If87770912c0f88816db0586bf7013b7e5788fcef
NOTRY=True
Reviewed-on: https://skia-review.googlesource.com/9861
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkXPS: fix drawBitmapRect()
Hal Canary [Fri, 17 Mar 2017 15:48:59 +0000 (11:48 -0400)]
SkXPS: fix drawBitmapRect()

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

7 years agoRevert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""
Robert Phillips [Fri, 17 Mar 2017 17:11:37 +0000 (17:11 +0000)]
Revert "Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot""

This reverts commit 9e9188f84b15a25e27f63d5f8de3ccd393d9a173.

Reason for revert: Android-side fix has landed

Original change's description:
> Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
>
> This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.
>
> Reason for revert:
>
> Android build failed as shown below.
>
> frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
>     mImage = surface->makeImageSnapshot(SkBudgeted::kNo);
>
> Original change's description:
> > Remove budgeted parameter from SkSurface::makeImageSnapshot
> >
> > This unused feature complicates MDB.
> >
> > Chrome compiles locally for me with this CL.
> >
> > Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> > Reviewed-on: https://skia-review.googlesource.com/9734
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Robert Phillips <robertphillips@google.com>
> >
>
> TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
> Reviewed-on: https://skia-review.googlesource.com/9788
> Reviewed-by: Yuqian Li <liyuqian@google.com>
> Commit-Queue: Yuqian Li <liyuqian@google.com>
>

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

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

7 years agoDetect RenderDoc in Windows viewer and make a core profile
Brian Osman [Fri, 17 Mar 2017 16:05:41 +0000 (12:05 -0400)]
Detect RenderDoc in Windows viewer and make a core profile

BUG=skia:

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

7 years agoUpdate build tools to newer gn.
Herb Derby [Fri, 17 Mar 2017 15:00:21 +0000 (11:00 -0400)]
Update build tools to newer gn.

Pasted from Chromium DEPS on 3/17/17.

R=reed@google.com

Change-Id: Ie1b93fadbad9e24b4a547f237df602a7257138f7
Reviewed-on: https://skia-review.googlesource.com/9831
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoAdd nondeterministic seed option for ProcessorOptimization test
Brian Osman [Fri, 17 Mar 2017 14:58:53 +0000 (10:58 -0400)]
Add nondeterministic seed option for ProcessorOptimization test

BUG=skia:

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

7 years agoremove legacy virtual for vertices, only support object form
Mike Reed [Fri, 17 Mar 2017 16:09:04 +0000 (12:09 -0400)]
remove legacy virtual for vertices, only support object form

BUG=skia:6366

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

7 years agoOnly set dw antialias mode to grayscale for A8.
Ben Wagner [Fri, 17 Mar 2017 15:23:32 +0000 (11:23 -0400)]
Only set dw antialias mode to grayscale for A8.

The previous code would also set 'grayscale' for aliased which would
then cause the code to use the new renderer, which has issues with
aliased glyphs.

BUG=skia:5416

Change-Id: Ia856322b59d0eba258522d73c3a4d827ab4429e1
Reviewed-on: https://skia-review.googlesource.com/9834
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoMake dstreadshuffle not crash in with --preAbandonGpuContext and look better in 565
Brian Salomon [Fri, 17 Mar 2017 14:41:39 +0000 (10:41 -0400)]
Make dstreadshuffle not crash in with --preAbandonGpuContext and look better in 565

BUG=skia:6386

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

7 years agoFix overflow bug in slow span.
Herb Derby [Thu, 16 Mar 2017 20:43:13 +0000 (16:43 -0400)]
Fix overflow bug in slow span.

Fix an overflow in the address calculation in the sampler.

BUG=chromium:700836

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

7 years agoAdd highp to specular lighting intermediate to fix iOS bots
Brian Osman [Fri, 17 Mar 2017 13:36:31 +0000 (09:36 -0400)]
Add highp to specular lighting intermediate to fix iOS bots

Looks like math was over/under-flowing at default precision, leading to garbage output. This appears to be the minimal change to fix it.

BUG=skia:

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

7 years agoRevert[2] "More SkVertices implementation work""
Mike Reed [Fri, 17 Mar 2017 13:50:46 +0000 (09:50 -0400)]
Revert[2] "More SkVertices implementation work""

The fix was to release the array of vertices in the picturerecorder
destructor (where we also release textblobs etc.

This reverts commit 1eb3fef136bc75bd8e8ed717ec7c5d4ab26def62.

BUG=skia:

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

7 years agoRevert "Revert "Revert "Revert "Detect Chrome either by renderer or version strings...
Brian Salomon [Thu, 16 Mar 2017 19:38:57 +0000 (15:38 -0400)]
Revert "Revert "Revert "Revert "Detect Chrome either by renderer or version strings.""""

Fixes issue with usage of sscanf.

This reverts commit fd47ca5cea3be4a3a8336a7c54e6e2775b041335.

Change-Id: Ie2e462a353a19d74eb18715ef44c14d1198fb5f8
Reviewed-on: https://skia-review.googlesource.com/9814
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
7 years agoRevert "More SkVertices implementation work"
Mike Reed [Fri, 17 Mar 2017 13:09:38 +0000 (13:09 +0000)]
Revert "More SkVertices implementation work"

This reverts commit 14583e11fd622c686993b741499060a6f3527055.

Reason for revert: leaking

Direct leak of 499104 byte(s) in 2112 object(s) allocated from:
    #0 0x1e195f0 in operator new(unsigned long) (/b/swarm_slave/w/irazbR79/out/Debug/dm+0x1e195f0)
    #1 0x3142b0a in SkVertices::Builder::init(SkCanvas::VertexMode, int, int, SkVertices::Sizes const&) (/b/swarm_slave/w/irazbR79/out/Debug/dm+0x3142b0a)

Original change's description:
> More SkVertices implementation work
>
> - change virtuals to take const SkVertices*, as we do for TextBobs and Images
> - override onDrawVerticesObject in recording canvases
> - deserialize raw-vertices into SkVertices object
>
> Possibly a follow-on would intercept the raw-form directly in canvas,
> and remove the virtual, and only support the object form.
>
> BUG=skia:6366
>
> Change-Id: I57a932667ccb3b3b004beb802ac3ae6898e3c6e0
> Reviewed-on: https://skia-review.googlesource.com/9633
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
>

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

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

7 years agoRevert "Add color spin test for SkColorSpaceXformCanvas"
Eric Boren [Fri, 17 Mar 2017 11:18:17 +0000 (11:18 +0000)]
Revert "Add color spin test for SkColorSpaceXformCanvas"

This reverts commit cb01aec63bcb3dee52afcf3605bcd64166b873c0.

Reason for revert: Breaks Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE

Original change's description:
> Add color spin test for SkColorSpaceXformCanvas
>
> Also changes behavior to treat nullptr srcs as sRGB.
>
> Testing locally, it looks like 353 gms have no diffs from 8888.
> There are 269 diffs - some are fine (gms that do color space stuff)
> and some are bugs.
>
> BUG=skia:
>
> Change-Id: I55c2825f4f4b857e0b0a0ec050c6db82ac881492
> Reviewed-on: https://skia-review.googlesource.com/9738
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
>

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

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

7 years agoMore SkVertices implementation work
Mike Reed [Thu, 16 Mar 2017 20:54:38 +0000 (16:54 -0400)]
More SkVertices implementation work

- change virtuals to take const SkVertices*, as we do for TextBobs and Images
- override onDrawVerticesObject in recording canvases
- deserialize raw-vertices into SkVertices object

Possibly a follow-on would intercept the raw-form directly in canvas,
and remove the virtual, and only support the object form.

BUG=skia:6366

Change-Id: I57a932667ccb3b3b004beb802ac3ae6898e3c6e0
Reviewed-on: https://skia-review.googlesource.com/9633
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoEnable Bazel build for ppc and arm.
Ben Wagner [Thu, 16 Mar 2017 23:15:09 +0000 (19:15 -0400)]
Enable Bazel build for ppc and arm.

External portion of internal cl/150002340.

NOTRY=true

Change-Id: Ic42ccd80bd26546b523fbdde058d8b0ee29d65f5
Reviewed-on: https://skia-review.googlesource.com/9821
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoReboot PixelCs before every task
Kevin Lubick [Thu, 16 Mar 2017 20:02:27 +0000 (16:02 -0400)]
Reboot PixelCs before every task

Just like the NexusPlayers, swarming can't reboot the PixelCs. This may
be causing the strange state we see in tasks like:
https://chromium-swarm.appspot.com/task?id=34ed0f1bdcd5a610&refresh=10

BUG=skia:

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

7 years agoremove unused VerticesFlags
Mike Reed [Thu, 16 Mar 2017 13:06:34 +0000 (09:06 -0400)]
remove unused VerticesFlags

Deferring removing the flags parameter from the virtuals until a
later CL (as it collides with another related CL)

BUG=skia:6366

Change-Id: I817fae3df03ecebe5ec3532f691ed06deab890e6
Reviewed-on: https://skia-review.googlesource.com/9739
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRevert "Remove GrPipeline from GrDrawOp."
Brian Salomon [Thu, 16 Mar 2017 19:51:42 +0000 (19:51 +0000)]
Revert "Remove GrPipeline from GrDrawOp."

This reverts commit 2bf4b3a97b770811d9e0558dbbfbdb57cfafbdb7.

Reason for revert: nanobench assertion

Original change's description:
> Remove GrPipeline from GrDrawOp.
>
> GrDrawOp subclasses are now free to construct their pipelines at flush time and now in theory could use multiple GrPipelines for multipass rendering.
>
> GrProcessorSet may be used to retain the processors from a GrPaint with "pending execution" style refs.
>
> NVPR and Instanced rendering are updated to create their pipelines at flush time without a GrPipelineBuilder.
>
> The monolithic pipeline creation/management that was on GrDrawOp is moved to GrMeshDrawOp. However, this is temporary and will be removed in coming changes.
>
> Change-Id: I124282e3cea5d070970b5460c8a679fcaf7a8eff
> Reviewed-on: https://skia-review.googlesource.com/7279
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
>

TBR=bsalomon@google.com,robertphillips@google.com,csmartdalton@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

7 years agoAdd Chromium's fuzz_fileter_fuzz to skia.
Herb Derby [Thu, 16 Mar 2017 16:30:43 +0000 (12:30 -0400)]
Add Chromium's fuzz_fileter_fuzz to skia.

Move the fuzzer in
chromium/src/skia/tools/filter_fuzz_stub/filter_fuzz_stub.cc
to Skia's fuzzer.

I recommend removing filter_fuzz_stub from chromium and only
using Skia's fuzzer.

BUG=chromium:700836

Change-Id: Ibab1a9b696e54a3042ee61f5524d196c12df2888
Reviewed-on: https://skia-review.googlesource.com/9802
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
7 years agoRevert "Revert "Revert "Detect Chrome either by renderer or version strings."""
Brian Salomon [Thu, 16 Mar 2017 19:21:24 +0000 (19:21 +0000)]
Revert "Revert "Revert "Detect Chrome either by renderer or version strings."""

This reverts commit c551fa4218fe931171801cc2d601f7523e1b7ead.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Revert "Detect Chrome either by renderer or version strings.""
>
> This reverts commit 1165b1ef6f069d512c6d5a43ef431b3be6f8c80f.
>
> Reason for revert: <INSERT REASONING HERE>
>
> Original change's description:
> > Revert "Detect Chrome either by renderer or version strings."
> >
> > This reverts commit be4eed2ef77d5e8c3e3920664fdc787e196ac6b0.
> >
> > Reason for revert: <INSERT REASONING HERE>
> >
> > Original change's description:
> > > Detect Chrome either by renderer or version strings.
> > >
> > > We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.
> > >
> > > Change-Id: Ice4ac3ae8ced5ac3d8fd2099300f0a3285f9c197
> > > Reviewed-on: https://skia-review.googlesource.com/9807
> > > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > > Commit-Queue: Brian Salomon <bsalomon@google.com>
> > >
> >
> > TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> >
> > Change-Id: I0100ce266ca9bf7b71a752495e509e67ff323870
> > Reviewed-on: https://skia-review.googlesource.com/9811
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Brian Salomon <bsalomon@google.com>
> >
>
> TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I43acf948b4f2339a79abc2b5c4e2bb3183a3c350
> Reviewed-on: https://skia-review.googlesource.com/9812
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
>

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

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

7 years agoRevert "Revert "Detect Chrome either by renderer or version strings.""
Brian Salomon [Thu, 16 Mar 2017 19:20:44 +0000 (19:20 +0000)]
Revert "Revert "Detect Chrome either by renderer or version strings.""

This reverts commit 1165b1ef6f069d512c6d5a43ef431b3be6f8c80f.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Detect Chrome either by renderer or version strings."
>
> This reverts commit be4eed2ef77d5e8c3e3920664fdc787e196ac6b0.
>
> Reason for revert: <INSERT REASONING HERE>
>
> Original change's description:
> > Detect Chrome either by renderer or version strings.
> >
> > We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.
> >
> > Change-Id: Ice4ac3ae8ced5ac3d8fd2099300f0a3285f9c197
> > Reviewed-on: https://skia-review.googlesource.com/9807
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Brian Salomon <bsalomon@google.com>
> >
>
> TBR=egdaniel@google.com,bsalomon@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
>
> Change-Id: I0100ce266ca9bf7b71a752495e509e67ff323870
> Reviewed-on: https://skia-review.googlesource.com/9811
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
>

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

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

7 years agoRevert[4] "store vertices arrays inline with object""""
Mike Reed [Thu, 16 Mar 2017 18:38:48 +0000 (14:38 -0400)]
Revert[4] "store vertices arrays inline with object""""

This reverts commit 0c492cfe1713d6895d1d513e754d938ff0faa5e5.

BUG=skia:

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

7 years agoRemove GrPipeline from GrDrawOp.
Brian Salomon [Thu, 16 Mar 2017 18:19:07 +0000 (14:19 -0400)]
Remove GrPipeline from GrDrawOp.

GrDrawOp subclasses are now free to construct their pipelines at flush time and now in theory could use multiple GrPipelines for multipass rendering.

GrProcessorSet may be used to retain the processors from a GrPaint with "pending execution" style refs.

NVPR and Instanced rendering are updated to create their pipelines at flush time without a GrPipelineBuilder.

The monolithic pipeline creation/management that was on GrDrawOp is moved to GrMeshDrawOp. However, this is temporary and will be removed in coming changes.

Change-Id: I124282e3cea5d070970b5460c8a679fcaf7a8eff
Reviewed-on: https://skia-review.googlesource.com/7279
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRevert "Detect Chrome either by renderer or version strings."
Brian Salomon [Thu, 16 Mar 2017 19:03:53 +0000 (19:03 +0000)]
Revert "Detect Chrome either by renderer or version strings."

This reverts commit be4eed2ef77d5e8c3e3920664fdc787e196ac6b0.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Detect Chrome either by renderer or version strings.
>
> We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.
>
> Change-Id: Ice4ac3ae8ced5ac3d8fd2099300f0a3285f9c197
> Reviewed-on: https://skia-review.googlesource.com/9807
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
>

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

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

7 years agoDetect Chrome either by renderer or version strings.
Brian Salomon [Thu, 16 Mar 2017 16:58:41 +0000 (12:58 -0400)]
Detect Chrome either by renderer or version strings.

We currently detect Chrome by GL_RENDERER. In anticipation of changes in Chrome to no longer override the renderer string we now also check the version string.

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

7 years agoSupport pixel antialising in DirectWrite.
Ben Wagner [Thu, 16 Mar 2017 16:38:46 +0000 (12:38 -0400)]
Support pixel antialising in DirectWrite.

DirectWrite2 supports pixel antialiasing and rendering without hinting.
To maintain the infered size based decisions of the previous rendering,
only use the new renderer when it is needed.

BUG=skia:5416

Change-Id: Ia87fdf8fc91dc7ff0f0ce4284c90a5d79045308f
Reviewed-on: https://skia-review.googlesource.com/9805
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
7 years agofixed missing dependency in spirv-tools/BUILD.gn
Ethan Nicholas [Thu, 16 Mar 2017 16:16:20 +0000 (12:16 -0400)]
fixed missing dependency in spirv-tools/BUILD.gn

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

7 years agoIn GrClipStackClip check whether op bounds are inside RT before checking for empty...
Brian Salomon [Thu, 16 Mar 2017 16:15:22 +0000 (12:15 -0400)]
In GrClipStackClip check whether op bounds are inside RT before checking for empty clip stack.

Also fixes the bounds of aa bevel stroked rectangles.

Change-Id: I4c80deb9066ebbf9514ce3d4b270ff566bf12e02
Reviewed-on: https://skia-review.googlesource.com/9786
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoRevert[3] "store vertices arrays inline with object"""
Mike Reed [Thu, 16 Mar 2017 16:44:25 +0000 (16:44 +0000)]
Revert[3] "store vertices arrays inline with object"""

This reverts commit 7d9f9e30204ee8a380443b868e4cc281319a2051.

Reason for revert: speculative revert to try to fix google3

Original change's description:
> Revert[2] "store vertices arrays inline with object""
>
> This reverts commit 9e62df6ecd1000860ad19ab9425579dfb7002ba0.
>
> Reason for revert: behavior in reader32 fixed
>
> Fix is here: https://skia-review.googlesource.com/c/9729/
>
> Original change's description:
> > Revert "store vertices arrays inline with object"
> >
> > This reverts commit eaaebb19a17d213355e7a70e0cfabe4ba61929d4.
> >
> > Reason for revert: may call SkReader32::read(null, 0) -- reader needs to handle this
> >
> > Original change's description:
> > > store vertices arrays inline with object
> > >
> > > Also unify some of naming (esp. around texCoords)
> > >
> > > BUG=skia:6366
> > >
> > > Change-Id: I5a6793f029cccf0cd0a2c1d180b259ce4eab526f
> > > Reviewed-on: https://skia-review.googlesource.com/9705
> > > Commit-Queue: Mike Reed <reed@google.com>
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > >
> >
> > TBR=bsalomon@google.com,reed@google.com,reviews@skia.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:6366
> >
> > Change-Id: Ie421654bcd74d74f8be6676291e3d6e16e2a7a16
> > Reviewed-on: https://skia-review.googlesource.com/9727
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> >
>
> TBR=bsalomon@google.com,reviews@skia.org,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:6366
>
> Change-Id: I1f12108fff8f551d66455cfadd6d5dd9412e9aa8
> Reviewed-on: https://skia-review.googlesource.com/9760
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>

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

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

7 years agoMarker for AMD driver update.
Ben Wagner [Thu, 16 Mar 2017 16:15:18 +0000 (12:15 -0400)]
Marker for AMD driver update.

BUG=skia:6317
NOTRY=true

Change-Id: I2a02d069f8414a4f45b5b9eb48ae12167e210b97
Reviewed-on: https://skia-review.googlesource.com/9803
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoturned off SPIR-V validation on ASAN bots
Ethan Nicholas [Thu, 16 Mar 2017 15:33:40 +0000 (11:33 -0400)]
turned off SPIR-V validation on ASAN bots

BUG=skia:

Change-Id: Ia86abbc5f0922a4818075c487c76b6fb0560a6c8
Reviewed-on: https://skia-review.googlesource.com/9800
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoRevert "Remove budgeted parameter from SkSurface::makeImageSnapshot"
Yuqian Li [Thu, 16 Mar 2017 15:04:53 +0000 (15:04 +0000)]
Revert "Remove budgeted parameter from SkSurface::makeImageSnapshot"

This reverts commit b64bcbdc3a5aa7b9e3ff216e4617ddc1db9260b5.

Reason for revert:

Android build failed as shown below.

frameworks/base/libs/hwui/VkLayer.cpp:32:41: error: too many arguments to function call, expected 0, have 1
    mImage = surface->makeImageSnapshot(SkBudgeted::kNo);

Original change's description:
> Remove budgeted parameter from SkSurface::makeImageSnapshot
>
> This unused feature complicates MDB.
>
> Chrome compiles locally for me with this CL.
>
> Change-Id: I611e464885fb984030eace43ead42cf39d0e7f72
> Reviewed-on: https://skia-review.googlesource.com/9734
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
>

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

Change-Id: Iae6e313c15b2352bd0d4fc7b5629de0a51ac398e
Reviewed-on: https://skia-review.googlesource.com/9788
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>

7 years agowired up SPIR-V validator
Ethan Nicholas [Thu, 16 Mar 2017 13:56:54 +0000 (09:56 -0400)]
wired up SPIR-V validator

Change-Id: I33dfd5e7ea3ea048b88c6db2f14389b16a0af7c8
Reviewed-on: https://skia-review.googlesource.com/9688
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoSupport all gradient types in SkColorSpaceXformCanvas.
Mike Klein [Wed, 15 Mar 2017 23:31:00 +0000 (16:31 -0700)]
Support all gradient types in SkColorSpaceXformCanvas.

This shader introspection still doesn't seem like the right way to go,
but while we've got it might as well fill in the rest of gradient types.

These are low-hanging and among the most egregious gbr-8888/8888 diffs.

Change-Id: Iaee67b615e49873c3aa8e2a67396a311efa75060
Reviewed-on: https://skia-review.googlesource.com/9746
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>