Commit Graph

29544 Commits

Author SHA1 Message Date
Yuqian Li
cc8eb60c48 Revert "Revert "Revert "Add support for semaphores to be inserted on GrContext flush"""
This reverts commit 876aed8758.

Reason for revert: the bots seem to be unhappily red with this CL

Original change's description:
> Revert "Revert "Add support for semaphores to be inserted on GrContext flush""
> 
> This reverts commit 8724b46099.
> 
> Reason for revert: Creating a test CL to see what happens on the bots
> 
> Original change's description:
> > Revert "Add support for semaphores to be inserted on GrContext flush"
> > 
> > This reverts commit cd1416efbc.
> > 
> > Reason for revert: speculative, to try to fix roll see gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_GpuRasterization_ConcavePaths
> > 
> > Original change's description:
> > > Add support for semaphores to be inserted on GrContext flush
> > > 
> > > This also moves the logic of inserting semaphores down into GrDrawingManager
> > > and finishFlush on GrGpu. With it being on finishFlush, there should be no
> > > issues when the DrawingManager starts respecting the proxy passed in assuming
> > > it always calls finishFlush at the end (which it should).
> > > 
> > > Bug: skia:
> > > Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7
> > > Reviewed-on: https://skia-review.googlesource.com/25641
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > 
> > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
> > 
> > Change-Id: I9c5b9cf8c060193e1861dbb8f0c10fb11dfb5249
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: skia:
> > Reviewed-on: https://skia-review.googlesource.com/25980
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> 
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: skia:
> Change-Id: I5edbeaa0769670ee58f362f0ccaa78319410aa6c
> Reviewed-on: https://skia-review.googlesource.com/26160
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com

Change-Id: I22fd6febafe70489a5fdb695c6f4263368eb423d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/29422
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2017-08-01 17:43:41 +00:00
Brian Salomon
8514ebfb19 Allow RegionOp to be used for stenciling
Change-Id: I03473573bfe3da1a2d0fff40205094f7ba9e13af
Reviewed-on: https://skia-review.googlesource.com/29320
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-08-01 17:13:08 +00:00
Brian Osman
e779ab17b6 Remove unused code for index 8
Bug: skia:
Change-Id: I0d421874e7ab71a39e2708575314f5b3615882e4
Reviewed-on: https://skia-review.googlesource.com/29221
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-08-01 17:12:58 +00:00
Robert Phillips
eaa90b2a1a Roll ANGLE
cce8965d2c..878c8b1e5e

ANGLE now crashes (on program compilation) if there isn't a flush between uses of different flavors of ANGLE context (e.g., angle_gl_es2 vs. angle_gl_es3).

Change-Id: If59b6ec683e682db5214bb002a70863cee5fe013
Reviewed-on: https://skia-review.googlesource.com/28865
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-08-01 17:08:03 +00:00
Greg Daniel
876aed8758 Revert "Revert "Add support for semaphores to be inserted on GrContext flush""
This reverts commit 8724b46099.

Reason for revert: Creating a test CL to see what happens on the bots

Original change's description:
> Revert "Add support for semaphores to be inserted on GrContext flush"
> 
> This reverts commit cd1416efbc.
> 
> Reason for revert: speculative, to try to fix roll see gpu_tests.pixel_integration_test.PixelIntegrationTest.Pixel_GpuRasterization_ConcavePaths
> 
> Original change's description:
> > Add support for semaphores to be inserted on GrContext flush
> > 
> > This also moves the logic of inserting semaphores down into GrDrawingManager
> > and finishFlush on GrGpu. With it being on finishFlush, there should be no
> > issues when the DrawingManager starts respecting the proxy passed in assuming
> > it always calls finishFlush at the end (which it should).
> > 
> > Bug: skia:
> > Change-Id: I925c2a289dcbbb9159b9120878af1d34f21a2dc7
> > Reviewed-on: https://skia-review.googlesource.com/25641
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> 
> TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com
> 
> Change-Id: I9c5b9cf8c060193e1861dbb8f0c10fb11dfb5249
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/25980
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reed@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:
Change-Id: I5edbeaa0769670ee58f362f0ccaa78319410aa6c
Reviewed-on: https://skia-review.googlesource.com/26160
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-08-01 17:07:53 +00:00
Mike Klein
7516c2775c link libwebpmux in system-webp builds
We use several symbols from this library... we currently fail to link.

(The other small changes in here are automatic from gn format.)

BUG=skia:6891

Change-Id: Iec6f5deceecdb61571827ebb502a9f7e7e4a4bef
Reviewed-on: https://skia-review.googlesource.com/29260
Commit-Queue: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
2017-08-01 14:33:38 +00:00
Robert Phillips
7294b851d2 Revert "Remove origin field from GrSurface"
This reverts commit df0e09feac.

Reason for revert: Experimental revert to see if this is blocking the roll


Original change's description:
> Remove origin field from GrSurface
> 
> This mainly consists of rm origin from GrSurface and the wrapBackEnd*
> methods and then re-adding an explicit origin parameter to all the 
> GrGpu methods that need it.
> 
> Change-Id: Iabd79ae98b227b5b9409f3ab5bbcc48af9613c18
> Reviewed-on: https://skia-review.googlesource.com/26363
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=bsalomon@google.com,robertphillips@google.com

Change-Id: Id606aa01e84e2b83be71d833eefca477c1ad0d01
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/29220
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-08-01 13:51:54 +00:00
Ben Wagner
ac32662d12 Clean up SkPathRef::makeSpace.
Note that this does not clean up the users of this function, which
may themselves be subject to other overflow issues.

BUG=chromium:728936

Change-Id: I3eaa7627c3b6ff49296ea2618a0157dacdc1d9cc
Reviewed-on: https://skia-review.googlesource.com/29121
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
2017-07-31 22:42:24 +00:00
Mike Klein
402e463877 add more win/clang bots
- add a Debug builder
  - add Debug and Release CPU testers on GCE

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Win-Clang-x86_64-Debug,Test-Win2k8-Clang-GCE-CPU-AVX2-x86_64-Debug,Test-Win2k8-Clang-GCE-CPU-AVX2-x86_64-Release

Change-Id: I4f2d7309b36a532683f68fbdde9c7a9aaaa861ea
Reviewed-on: https://skia-review.googlesource.com/29023
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-31 21:46:24 +00:00
Mike Klein
a91ec58b4e Tell clang/win to emulate MSVC 2015
By default it emulates your installed cl.exe, but the bots don't have
one.  I think the fallback is 2013, which causes all sorts of pre-C++11
problems.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Win-Clang-x86_64-Release

Change-Id: I2556abe68825e58762b4172d067ba6826de5c133
Reviewed-on: https://skia-review.googlesource.com/29021
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-31 20:58:55 +00:00
Greg Daniel
0576a45c75 Add GrMtlUtil class
Currently just adding support functions to go back and forth between
GrPixelConfigs and MTLPixelFormats.

Bug: skia:
Change-Id: I01a7d6877ebed87b87090ac2b920fee45dc0e856
Reviewed-on: https://skia-review.googlesource.com/29080
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-07-31 20:53:18 +00:00
Brian Salomon
96271cd180 Require clone() be implemented by GrFragmentProcessor subclasses
Change-Id: I66ba0978e5748806d563ff4f26000e4e0095ed24
Reviewed-on: https://skia-review.googlesource.com/29042
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-31 20:51:42 +00:00
Brian Salomon
f3ce7e3c67 More GrPipeline cleanup.
Remove CanCombine and AreEqual (unused)

Remove isInitialized() now that pipelines are initialized at creation.

Change-Id: Ibacf81d1f879c7ef9ea91a8f471c3d1df3eb2fed
Reviewed-on: https://skia-review.googlesource.com/29020
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-31 20:44:27 +00:00
Christopher Cameron
179849efe5 Fix premul state in from_srgb in convert_with_pipeline
Without this patch, the pipeline
1. converts to unpremultiplied
2. applies the sRGB transfer assuming the pixel is premultiplied

In step 2, we should assume the pixel is unpremultiplied.

Bug:738517
Change-Id: Ic11fcf64faa423577ccb1cfc0cfe96feb57db09a
Reviewed-on: https://skia-review.googlesource.com/28404
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2017-07-31 20:39:37 +00:00
Ben Wagner
0500ebafec Remove union from SkFontStyle.
This is prompted by a bug in vc++ reported at
https://developercommunity.visualstudio.com/content/problem/86829/constexpr-initializing-struct-in-union-only-zero-i.html

Visual C++ will not properly constexpr initialize a struct inside a
union. Removing this construct also allows us to avoid writing and
reading from different members of a union.

Change-Id: I76e069ecce77ef21b7ad3821bf9c29e1b0843618
Reviewed-on: https://skia-review.googlesource.com/28300
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-07-31 20:24:47 +00:00
Robert Phillips
49f58a3825 Add asserts to SkBlurImageFilter flatten & CreateProc
It seems rather implausible that this could be occuring but the Chrome
bug seems to say otherwise.

Bug: 748155
Change-Id: I8e14f1562c71da4ae80d626e4dba053d7ee13d97
Reviewed-on: https://skia-review.googlesource.com/28863
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-07-31 20:15:20 +00:00
Mike Klein
8e3c42b1ee add a Win/Clang build bot
BUG=skia:2679

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Win-Clang-x86_64-Release

Change-Id: I861366ae1340abcc67e87041904d08337b465bbe
Reviewed-on: https://skia-review.googlesource.com/28864
Reviewed-by: Eric Boren <borenet@google.com>
2017-07-31 19:53:51 +00:00
Mike Klein
98adfa8726 use -imsvc (~= -isystem) with win/clang
This should shut up any warnings in the win toolchain headers?

Change-Id: I7d17bf6d63d56e66afffa557d0ed06bc3994200d
Reviewed-on: https://skia-review.googlesource.com/28981
Reviewed-by: Ben Wagner <bungeman@google.com>
2017-07-31 19:53:24 +00:00
Eric Boren
2aa9b7ba2d Add clang_win asset
Bug: skia:2679
Change-Id: I7abffae32102a69271b23834a121c51426813e27
Reviewed-on: https://skia-review.googlesource.com/28785
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-31 19:14:53 +00:00
Jim Van Verth
1380bb47ab Don't draw text with zero glyph counts as paths
Bug: chromium:750420
Change-Id: Ie1a62356a3263c440a94ba1fd637c12884465515
Reviewed-on: https://skia-review.googlesource.com/28862
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-07-31 18:55:12 +00:00
Mike Klein
c722f79b6c clang on windows support
1) Run python bin/fetch-clang-win
2) Set clang_win = "../bin/clang_win"
3) ???
4) Profit

Most changes here are to pass the right -mfoo flags to Clang
to enable advanced instruction sets, or fixed warning-as-errors.

BUG=skia:2679

Change-Id: Ieed145d35c209131c7c16fdd3ee11a3de4a1a921
Reviewed-on: https://skia-review.googlesource.com/28740
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-31 18:39:23 +00:00
Yuqian Li
d301629d1d Add links to Analytic AA design docs
No-Try: true
Docs-Preview: https://skia.org/?cl=28860
Bug: skia:
Change-Id: I19b4227bebba9070884b7dbf3530e6305e45aaf2
Reviewed-on: https://skia-review.googlesource.com/28860
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>
2017-07-31 18:36:13 +00:00
Cary Clark
66e393c689 longer is better
R=robertphillips@google.com
Bug: 749315
Change-Id: Id8091a077771553b313aaf3aff20b7b37765cc53
Reviewed-on: https://skia-review.googlesource.com/28787
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
2017-07-31 17:48:38 +00:00
Cary Clark
d9b6773052 disable single threaded debugging code
Stroking has some debug code that is examined
by StrokerTest.cpp; this test is not thread-safe.

Chrome detects this in TSAN, so disable the
test code in SkStroker.cpp the same way it
is disabled in StrokerTest.cpp

R=bsalomon@google.com
Bug: 749315
Change-Id: I6e424648b4d28509789e3e4123112e0fc95e34ed
Reviewed-on: https://skia-review.googlesource.com/28780
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
2017-07-31 17:21:52 +00:00
Brian Salomon
972b2f6041 Initialize GrPipeline at construction.
Change-Id: I44bfa3553786ad197acdf807b15155e61d4e5952
Reviewed-on: https://skia-review.googlesource.com/28623
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2017-07-31 16:59:53 +00:00
Eric Boren
ba937a4366 Some bots should only run on the master branch
Bug: skia:6556
Change-Id: Iebe8b30de70685f56b795521ccc2242b0682000b
Reviewed-on: https://skia-review.googlesource.com/28660
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2017-07-31 16:55:03 +00:00
Cary Clark
579985ce4f fix self references
try removing self references in method definitions.
If this creates awkward wording, it can always be allowed
in another CL. Also tighten rules for identifying function
references in include comments.

R=briansoman@google.com, caryclark@google.com
TBR=reed@google.com
Bug: skia:6898
Change-Id: I1a0e6b2a76dacfe71d134deb4589fb74e6611a03
Reviewed-on: https://skia-review.googlesource.com/28624
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2017-07-31 16:49:12 +00:00
Robert Phillips
df0e09feac Remove origin field from GrSurface
This mainly consists of rm origin from GrSurface and the wrapBackEnd*
methods and then re-adding an explicit origin parameter to all the 
GrGpu methods that need it.

Change-Id: Iabd79ae98b227b5b9409f3ab5bbcc48af9613c18
Reviewed-on: https://skia-review.googlesource.com/26363
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-07-31 16:02:42 +00:00
Ethan Nicholas
f57c0d6761 automatically generate clone() methods for SkSL fragment processors
Bug: skia:
Change-Id: Ib7b90f20d2b1558aad14f38f95c7c884e654c96d
Reviewed-on: https://skia-review.googlesource.com/28620
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-31 15:44:32 +00:00
Ethan Nicholas
45b0f15688 added support for flat and noperspective modifiers in SPIR-V
Bug: skia:
Change-Id: I41f90464377be5de6813d6011b7e53dbac9230b6
Reviewed-on: https://skia-review.googlesource.com/26345
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-07-31 15:39:52 +00:00
Florin Malita
f41996e310 Remove dead SK_SUPPORT_LEGACY_BILERP code
Change-Id: Iec5725d594cc4726ac72526a1cc62f48e35b6647
Reviewed-on: https://skia-review.googlesource.com/28640
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-07-31 15:27:32 +00:00
Greg Daniel
cebcb84739 Add caps files for metal
Bug: skia:
Change-Id: I8e7488320d4237cf67d6ebeaad319d3de75b67e6
Reviewed-on: https://skia-review.googlesource.com/27741
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2017-07-31 15:03:22 +00:00
Greg Daniel
6bd729d8eb Uncomment glinterface asserts not that chrome has functions
Bug: skia:
Change-Id: I4c90f8e6eb10389340155fcf7c76c7cb3a5163b3
Reviewed-on: https://skia-review.googlesource.com/28600
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-07-31 14:40:02 +00:00
Jim Van Verth
1af03d4396 Compute correct bounds for DrawShadowRec.
Bug: skia:6880
Change-Id: Ia8b94e52eec3feb5104d2351bf7a7e6f99101deb
Reviewed-on: https://skia-review.googlesource.com/26370
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-31 13:55:32 +00:00
Ethan Nicholas
0d67fafa3e updated spirv-tools to latest version
Bug: skia:
Change-Id: I6a6ee1a3d7e63981e6e9c45cf2672060e31a6213
Reviewed-on: https://skia-review.googlesource.com/25020
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-07-31 13:37:52 +00:00
Brian Salomon
b3f6ac44db Don't create GrAtlasTextBlobs for zero glyph count text draws.
Bug: chromium:749472

Change-Id: I709889dd6bb06032e30cbf820ca67e7534cfac58
Reviewed-on: https://skia-review.googlesource.com/28540
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-31 13:22:42 +00:00
Cary Clark
1eace2db48 fix capitalization
Fix 'arcs' at sentence start to Arcs.
This fix corrected other capitalizations as well,
and exposed some mis-capitalizations in the bmh
doc.

R=brianosman@google.com
TBR=reed@google.com
Bug: skia:
Change-Id: I4d51388556f7e8ff868a9236ce76745915560327
Reviewed-on: https://skia-review.googlesource.com/28241
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2017-07-31 12:12:02 +00:00
Florin Malita
50b2084bd1 Gradient stages cleanup
Hoist the matrix setup into SkGradientShaderBase.

Drop the bool return for adjustMatrixAndAppendStages(), and rename to
appendGradientStages().

Change-Id: Iad412f638f86223e5af46a7d3dea6f768f52bcad
Reviewed-on: https://skia-review.googlesource.com/26427
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-07-30 14:24:21 +00:00
UpdateSKPs
c25437da5c Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: I42bf807fe84f84793a9ace7eee5e893c451a8c6a
Reviewed-on: https://skia-review.googlesource.com/28520
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>
2017-07-30 06:06:50 +00:00
Florin Malita
77c6866668 Remove stale SkTwoPointConicalGradient assert
Change-Id: If46426393e5151dad4f66ee5a54341024701e87e
TBR=
NOTRY=true
Reviewed-on: https://skia-review.googlesource.com/28500
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2017-07-29 23:24:20 +00:00
Florin Malita
9c2212fa79 Don't instantiate degenerate 2pt gradients
We can catch the condition at construction time, no need to defer.

Change-Id: I973b9e1b79998e2b334e3a91694c793882dfd65a
Reviewed-on: https://skia-review.googlesource.com/26564
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-07-29 23:01:10 +00:00
Florin Malita
28a586966d Remove now-dead SK_SUPPORT_LEGACY_GRADIENT_MATRIX_MATH code
Change-Id: I080942c44d2ce1a018ba127944c0a477af876158
TBR=
Reviewed-on: https://skia-review.googlesource.com/28480
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-07-29 21:55:00 +00:00
Yuqian Li
93fe0ccd24 Enable delta AA by default
The earlier CL doesn't change the flag definition so it's not
turned on yet.

Bug: skia:
Change-Id: Id278ae5fc27d703ab7f6628bed95093d32cd7d0b
TBR: caryclark@google.com, fmalita@chromium.org
Reviewed-on: https://skia-review.googlesource.com/28161
Commit-Queue: Yuqian Li <liyuqian@google.com>
Reviewed-by: Yuqian Li <liyuqian@google.com>
2017-07-29 18:14:50 +00:00
Mike Klein
5f9b59b52d use new Stage ABI for ARMv7 too
ARMv7 can pass 16 floats as function arguments.  We've been slicing that
as 8 2-float vectors.  This CL switches to 4 4-float vectors.

We'll now operate on 4 pixels at a time instead of 2, at the expense of
keeping the d-vectors (mostly used for blending) on the stack.  It'll
be interesting to see how this plays out performance-wise.

One nice side effect is now both ARMv7 and ARMv8 use 4-float NEON
vectors.  Most of the code is now shared, with just a couple checks
to use new instructions added in ARMv8.

It looks like we do see a ~15% win:

    $ bin/droid out/monobench SkRasterPipeline_srgb 200
    Before: 644.029ns
    After:  547.301ns
    ARMv8:  453.838ns  (just for reference)

Change-Id: I184ff29a36499e3cdb4c284809d40880b02c2236
Reviewed-on: https://skia-review.googlesource.com/27701
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-07-29 12:28:32 +00:00
Ethan Nicholas
31981ecdcb fixed a vec2 -> float2 that got missed
Bug: skia:
Change-Id: I51ae880ba0949d0c71331be6ce0ff13411169191
Reviewed-on: https://skia-review.googlesource.com/28122
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2017-07-28 23:50:22 +00:00
Brian Salomon
94e0b1166e Two small fixes from recent changes prepping for std::unique_ptr<GrFragmentProcessor>.
Change-Id: I5d58c7a1ef27095685215eef814df204e9beb63a
Reviewed-on: https://skia-review.googlesource.com/28240
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-07-28 20:51:23 +00:00
Ethan Nicholas
5af9ea399d renamed SkSL types in preparation for killing precision modifiers
Bug: skia:
Change-Id: Iff0289e25355a89cdc289a0892ed755dd1b1c900
Reviewed-on: https://skia-review.googlesource.com/27703
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-07-28 20:43:03 +00:00
Cary Clark
0edfbb7824 fix output header in bookmaker
change underscore to space if needed
remove bmh_ prefix

TBR=caryclark@google.com
Bug: skia:
Change-Id: I9d4d29c7ff91d9d29bf8740d163724f371e5e211
Reviewed-on: https://skia-review.googlesource.com/28044
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
2017-07-28 19:56:14 +00:00
Cary Clark
12799e17d5 bookmaker generated site docs
The documents were generated by running
tools/bookmaker against docs/*.bmh

No-Try: true
Docs-Preview: https://skia.org/?cl=28002
Change-Id: I7d7dd73cdea4a234c6175646d5b8938e1af3117a
Reviewed-on: https://skia-review.googlesource.com/28002
Reviewed-by: Cary Clark <caryclark@skia.org>
Commit-Queue: Cary Clark <caryclark@skia.org>
2017-07-28 19:25:53 +00:00
Greg Daniel
293d9bd3c2 Add Metal build bot
Bug: skia:6896
Change-Id: If2ed083703e6300b9d2a86cfb298011bbf54e018
Reviewed-on: https://skia-review.googlesource.com/28180
Reviewed-by: Eric Boren <borenet@google.com>
2017-07-28 18:41:43 +00:00