Commit Graph

26260 Commits

Author SHA1 Message Date
Florin Malita
6d11ed2951 SkRasterPipeline shader adapter
(lifted from https://skia-review.googlesource.com/c/7088/)

R=mtklein@google.com,herb@google.com,reed@google.com

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

Change-Id: Idddb84069423c5fc535bea0a65a5b21a4d07084d
Reviewed-on: https://skia-review.googlesource.com/7615
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2017-01-29 16:19:08 +00:00
Brian Salomon
22af73f2a5 Rename GrFragmentProcessor::MulOutputByInputUnpremulColor to MakeInputPremulAndMulByOutput.
Change-Id: I33d74ddb8a7836e8f1922a5ae73f0adb74d59db3
Reviewed-on: https://skia-review.googlesource.com/7609
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-01-28 21:26:34 +00:00
herb
0a84a343fd Make SkSmallAllocator obey alignment properties of objects.
TBR=mtklein@google.com

Change-Id: I505590f18a7e5babc9f0fc8af07d89b774d267bf
Reviewed-on: https://skia-review.googlesource.com/7728
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2017-01-28 21:13:17 +00:00
Matt Sarett
e95941f2c6 Update SkJPEGImageEncoder
(1) Use libjpeg-turbo color space extensions when possible.
(2) Use transform_scanline_procs when pre-libjpeg-turbo transformation
    are required.
(3) Add support for Gray and F16.

BUG=skia:

Change-Id: I77b977cb8c9e0afc17d907dd73a1cf3f16539bcc
Reviewed-on: https://skia-review.googlesource.com/7642
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-01-28 01:59:09 +00:00
Florin Malita
0bd8f36309 Add missing nextafter() clamping to SkLinearBitmapPipeline tile procs
Fixes the asserts trigered in
https://skia-review.googlesource.com/c/7615

Change-Id: I7e1802bc699becf85396445fe0df4cb110ab69c4
Reviewed-on: https://skia-review.googlesource.com/7720
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2017-01-27 21:13:53 +00:00
Stephen White
86cc841e23 AA GrTessellator: fix bevelling of acute angles.
The code to handle acute outer angles in generated geometry was pretty
broken: it did a simple runnning average of consecutive acute vertices,
and didn't handle acute angles between the last and first edges.
Replaced it with something simpler that does proper bevelling for
angles less than 2.5 degrees.

This revealed a bug with thin path segments, exposed by the thinconcavepaths
test. This will be fixed by upcoming changes, but I've also dded a few more
test cases to make it clearer.

Change-Id: I23a628ab2e16acaab798c746a5fd87842cacbfab
Reviewed-on: https://skia-review.googlesource.com/7660
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stephan White <senorblanco@chromium.org>
2017-01-27 21:06:55 +00:00
Hal Canary
2d0c238fcb experimental/documentation/gerrit.md
NOTRY=true
Change-Id: I5f429b48732ca99409cb923c2a3d7bf5f4189d24
Reviewed-on: https://skia-review.googlesource.com/7723
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-01-27 20:39:59 +00:00
Lee Salzman
26d3f217bf verify that glyph position rect is non-empty in GrAtlasTextBlob::appendGlyph
BUG=skia:

Change-Id: I35d170480cb3320a9d116e34aaf740aa201a294f
Reviewed-on: https://skia-review.googlesource.com/7700
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-01-27 20:16:20 +00:00
Leon Scroggins III
6ccd2cabaa Generate Android build targets for dm and nanobench
Generate targets for dm and nanobench from ninja and add them to the
generated Android.bp file.

Remove nanobenchAndroid and SkAndroidSDKCanvas. These rely on HWUI
internals and are currently unused.

Update gyp file references to removed files, just in case.

Change-Id: Ic6ae18a70bfd0c33804e7996d077f2081dfdfe07
Reviewed-on: https://skia-review.googlesource.com/7635
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-01-27 20:02:23 +00:00
Jim Van Verth
91af727038 Add geometric version of spot shadow
BUG=skia:6119

Change-Id: Ib9770bd88f4eebd68f2d893c5788f966d89f193c
Reviewed-on: https://skia-review.googlesource.com/7585
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2017-01-27 19:53:18 +00:00
Leon Scroggins III
fe8225802d Remove old generator code
We're generating Android.bp from BUILD.gn, so no need for the old
version.

Change-Id: Ie5bcec1d4f15d0e9a178feb9191e42c872bd8e08
Reviewed-on: https://skia-review.googlesource.com/7639
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-01-27 19:10:49 +00:00
Leon Scroggins III
428865794b Set fOptions in SkCodec::getPixels
Subclasses sometimes try to read fOptions, but it used to not get set
for full decodes. As a result, they might be reading the Options from a
previous scanline/incremental decode. In addition to being wrong, this
is bad in the case of an fSubset pointing to a rectangle that no longer
exists.

So set fOptions in getPixels, prior to any attempts to read it by sub-
classes. Use a different workaround for the webp/incomplete bug. Set
fSubset to null prior to calling fillIncompleteImage. It can only be
non-null for webp, and in that case we do not want the fill call to
be using the subset width.

Modify the Codec_jpeg_rewind test to use an incomplete image, so that
it will also test fillIncompleteImage.

DM tests of inc0.webp and inc1.webp will verify that the incomplete
bug has not resurfaced.

BUG=skia:5772

Change-Id: If5e1e3c9a7f337183783299c0a9e58dcbbc84119
Reviewed-on: https://skia-review.googlesource.com/7682
Commit-Queue: Matt Sarett <msarett@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-01-27 18:50:37 +00:00
Mike Reed
c121a8849c give up on big cubics (for now) and just draw a line
BUG=683631, skia:6152

Change-Id: I69aa741af74a37e1d7bed25ad0401535599f6af0
Reviewed-on: https://skia-review.googlesource.com/7659
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-01-27 18:17:59 +00:00
Hal Canary
1b2b3fbd1e SkTScopedComPtr: implicit nullptr cast to SkTScopedComPtr<T>()
Change-Id: Ic09da242650eb20164f31333e912fc899428c548
Reviewed-on: https://skia-review.googlesource.com/7634
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-01-27 18:17:48 +00:00
Florin Malita
00dca8cb09 Remove SkBlitter:resetShaderContext()
Refactor SkDraw::drawVertices() to reset the whole blitter instead.

No noticeable bench diff.

  out/Release/nanobench --config 8888 -m patch_grid_colors_tex

Before:

   9/9   MB	1	9.24ms	11.4ms	11.5ms	15ms	16%	█▆▅▄▄▃▂▂▁▁	8888	patch_grid_colors_texs_big
   9/9   MB	1	5.2ms	5.2ms	5.2ms	5.21ms	0%	█▃▂▁▂▂▃▂▂▁	8888	patch_grid_colors_texs_medium
   9/9   MB	2	378µs	380µs	380µs	382µs	0%	█▆▅▄▄▁▄▄▆▄	8888	patch_grid_colors_texs_small

After:
   9/9   MB	1	9.29ms	11.5ms	11.6ms	15.3ms	17%	█▇▅▄▄▃▂▂▁▁	8888	patch_grid_colors_texs_big
   9/9   MB	1	5.15ms	5.16ms	5.16ms	5.18ms	0%	█▄▁▁▄▂▁▂▃▂	8888	patch_grid_colors_texs_medium
   9/9   MB	2	378µs	380µs	380µs	382µs	0%	█▅▄▃▁▄▄▄▃▄	8888	patch_grid_colors_texs_small

R=reed@google.com,mtklein@google.com,herb@google.com
BUG=skia:6168

Change-Id: I0b6b7d1297323681d8d2838040450c4e1afabc17
Reviewed-on: https://skia-review.googlesource.com/7626
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-01-27 17:48:08 +00:00
Hal Canary
a6f6f77566 tools/git-sync-deps improvements
* Use `/usr/bin/env python` patten: more robust on non-standard systems.
  * Factor out status line, make formatting clearer.
  * Alwyas call `git remote set-url origin $repo` since it is quick.
  * Find `fetch-gn` script more robustly.
  * `--help` works again.
  * handling deps_os better
  * check to see that directories don't include each other

Change-Id: I06806226e2c263147723c6326c09c5e385abc68d
Reviewed-on: https://skia-review.googlesource.com/7646
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-01-27 17:39:12 +00:00
Robert Phillips
26caf898f1 Add utilities to create GrSurfaceProxy & GrSurfaceContext from backend descs
Change-Id: Iff2278de8ddd6c0dff74e5cf1996702bad31217b
Reviewed-on: https://skia-review.googlesource.com/7647
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-01-27 17:00:38 +00:00
Florin Malita
882ccafee0 Raster pipeline support for SkLocalMatrixShader composition
Plumb a local matrix arg to onAppendStages, similar to onCreateContext's
ContextRec::fLocalMatrix.

Change-Id: I6db3706918733b35eb7a3ae2cc65503223d0cf2d
Reviewed-on: https://skia-review.googlesource.com/7653
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2017-01-27 16:57:47 +00:00
Greg Daniel
dbd44c78ec Add offset to uniform blocks in Vulkan
This is the first step to being able to use push constants.

BUG=skia:5039

Change-Id: I49edea8faacf78814036ce3b3f9f2814974cf2c7
Reviewed-on: https://skia-review.googlesource.com/7448
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-01-27 16:55:35 +00:00
Brian Salomon
587e08f361 Revert "Revert "Start of rewrite of GrFragmentProcessor optimizations.""
This reverts commit 052fd5158f.

Disables the test (of unused code) until platform-specific issues are addressed.

Change-Id: I7aa23a07954fccf382aa07d28afcbffb0bebcd6d
Reviewed-on: https://skia-review.googlesource.com/7656
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-01-27 16:43:38 +00:00
Hal Canary
4d3adb6b0d bin/sync : call tools/git-sync-deps now
Also, update some docs.

NOTRY=true
Change-Id: I7ad3375fc1cbf8f71ed42a460ecfe29ef6c1d85e
Reviewed-on: https://skia-review.googlesource.com/7657
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-01-27 16:03:35 +00:00
Robert Phillips
3500b77f7d Consolidate read/write-Pixels testing code - take 2
Change-Id: I0de058a9eec749a7086138ac2eb79732f06ce55e
Reviewed-on: https://skia-review.googlesource.com/7650
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-01-27 15:52:20 +00:00
Ethan Nicholas
052fd5158f Revert "Start of rewrite of GrFragmentProcessor optimizations."
This reverts commit 85eb4226a4.

Reason for revert: test failures on Windows, e.g. https://chromium-swarm.appspot.com/task?id=33f9527484414110&refresh=10

Original change's description:
> Start of rewrite of GrFragmentProcessor optimizations.
> 
> This adds a replacement for computeInvariantOutput buts does not use it yet. The replacement allows for three types of optimizations:
> 
> * known input color -> known output color for GrFP elimination
> * tracking of whether all color processors modulate their input for the "tweak alpha" optimziation
> * opaqueness tracking
> 
> This loses some of the generality of computInvariantOutput. It does not track the known output status of individual color components (other than opaque alpha). It does not track whether GrFragmentProcessors read their input color. It doesn't allow a processor that will receive non-constant output to advertise that it produces a constant output. These could probably be added back in the unlikely case that they prove valuable.
> 
> Unlike computeInvariantOutput the optimizations are decided at instantiation time and constant colors are expressed as GrColor4f rather than GrColor.
> 
> Change-Id: I684d3f9050693dde2d28154fa695e049ed8cf61a
> Reviewed-on: https://skia-review.googlesource.com/7481
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> 

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

Change-Id: I2390df257456013fa74137cb5d7b5a93820c291e
Reviewed-on: https://skia-review.googlesource.com/7652
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2017-01-27 15:34:43 +00:00
Brian Salomon
85eb4226a4 Start of rewrite of GrFragmentProcessor optimizations.
This adds a replacement for computeInvariantOutput buts does not use it yet. The replacement allows for three types of optimizations:

* known input color -> known output color for GrFP elimination
* tracking of whether all color processors modulate their input for the "tweak alpha" optimziation
* opaqueness tracking

This loses some of the generality of computInvariantOutput. It does not track the known output status of individual color components (other than opaque alpha). It does not track whether GrFragmentProcessors read their input color. It doesn't allow a processor that will receive non-constant output to advertise that it produces a constant output. These could probably be added back in the unlikely case that they prove valuable.

Unlike computeInvariantOutput the optimizations are decided at instantiation time and constant colors are expressed as GrColor4f rather than GrColor.

Change-Id: I684d3f9050693dde2d28154fa695e049ed8cf61a
Reviewed-on: https://skia-review.googlesource.com/7481
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-01-27 14:56:48 +00:00
Ravi Mistry
bcda1f07d5 Revert "Revert "SkUserConfig.h: remove out-of-date comment on SK_SFNTLY_SUBSETTER""
This reverts commit 156a749eb1.

Reason for revert: Reverting this makes it much easier to test the merge_into_android.py script. I also stopped the Android autoroller for now.

Original change's description:
> Revert "SkUserConfig.h: remove out-of-date comment on SK_SFNTLY_SUBSETTER"
> 
> This reverts commit 68fc549e84.
> 
> Reason for revert: Breaking the Android roll.
> 
> (The change is fine, but the script for merging did not consider that we might edit this file. We can reland this after we update the script.)
> 
> Original change's description:
> > SkUserConfig.h: remove out-of-date comment on SK_SFNTLY_SUBSETTER
> > 
> > Change-Id: I6894fe43de071999e4923e1515a951b73e2ba0b1
> > Reviewed-on: https://skia-review.googlesource.com/7619
> > Reviewed-by: Ben Wagner <bungeman@google.com>
> > Commit-Queue: Hal Canary <halcanary@google.com>
> > 
> 
> TBR=halcanary@google.com,bungeman@google.com,reed@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> 
> Change-Id: Ib1a2c9faa79d1186705d87c5e17f20fe49b82bb1
> Reviewed-on: https://skia-review.googlesource.com/7641
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Leon Scroggins <scroggo@google.com>
> 

TBR=mtklein@chromium.org,halcanary@google.com,bungeman@google.com,scroggo@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ifa42e4fb48bbe9dac40c57cf09cf9586ca86c6df
Reviewed-on: https://skia-review.googlesource.com/7649
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2017-01-27 14:40:01 +00:00
Robert Phillips
2b270e5662 Revert "Consolidate read/write-Pixels testing code"
This reverts commit 0bd4a23ef4.

Reason for revert: What?!?

Original change's description:
> Consolidate read/write-Pixels testing code
> 
> Change-Id: I853f8f747ed0040333473fbc722cabac84e6ac83
> Reviewed-on: https://skia-review.googlesource.com/7560
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
> 

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

Change-Id: I9cb049a4f86350f849d00839a55b55fb07e861b0
Reviewed-on: https://skia-review.googlesource.com/7648
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-01-27 14:28:40 +00:00
Mike Reed
837e74365e remove SK_SUPPORT_LEGACY_GETCLIPBOUNDS
BUG=skia:6166

Change-Id: I5c8035ee172e14a7a769baff45392a29014d09cb
Reviewed-on: https://skia-review.googlesource.com/7645
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-01-27 13:59:47 +00:00
Robert Phillips
0bd4a23ef4 Consolidate read/write-Pixels testing code
Change-Id: I853f8f747ed0040333473fbc722cabac84e6ac83
Reviewed-on: https://skia-review.googlesource.com/7560
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2017-01-27 13:27:21 +00:00
Leon Scroggins
156a749eb1 Revert "SkUserConfig.h: remove out-of-date comment on SK_SFNTLY_SUBSETTER"
This reverts commit 68fc549e84.

Reason for revert: Breaking the Android roll.

(The change is fine, but the script for merging did not consider that we might edit this file. We can reland this after we update the script.)

Original change's description:
> SkUserConfig.h: remove out-of-date comment on SK_SFNTLY_SUBSETTER
> 
> Change-Id: I6894fe43de071999e4923e1515a951b73e2ba0b1
> Reviewed-on: https://skia-review.googlesource.com/7619
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Hal Canary <halcanary@google.com>
> 

TBR=halcanary@google.com,bungeman@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ib1a2c9faa79d1186705d87c5e17f20fe49b82bb1
Reviewed-on: https://skia-review.googlesource.com/7641
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2017-01-26 23:52:13 +00:00
Matt Sarett
1c2974b50c Delete SkAutoTime from jpeg encoder
We use nanobench instead to measure encode performance.

BUG=skia:

Change-Id: I4f0b43b7e09f99967889e941cb6947433033006a
Reviewed-on: https://skia-review.googlesource.com/7640
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2017-01-26 23:49:16 +00:00
Herb Derby
5a523fef68 Keep valgrind happen by purging caches.
Change-Id: Ic387edb9b5d71110c10c8a40a362ed2853d140f5
Reviewed-on: https://skia-review.googlesource.com/7638
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2017-01-26 22:38:50 +00:00
Ben Wagner
25272300c3 Implement getFamilyName for stream fonts on Linux.
When SkFontMgr_fontconfig and SkFontMgr_FontConfigInterface create a
typeface from data they do not store the default font name and
getFamilyName will return the empty string. All of the code to handle
this properly now exists, it just needs to be hooked up.

BUG=skia:1508

Change-Id: I75f2a598a5451babb4a9ceb5e9a9e9d3daa41d60
Reviewed-on: https://skia-review.googlesource.com/7506
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-01-26 22:21:34 +00:00
Florin Malita
bbeb5730e7 Simplify SkShader::ContextRec::fLocalMatrix handling
Minor cleanup.

R=robertphillips@google.com,reed@google.com

Change-Id: I1a27af61e3e3bb5e895c9a3265da6b0408234165
Reviewed-on: https://skia-review.googlesource.com/7632
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-01-26 22:13:17 +00:00
Mike Klein
690dd5e374 Really use vpmaddwd in hsw::convolve_vertical().
No pixel diffs.
Performance on 8888 looks like an overall win.

Before:
    micros  bench
    222.41  bitmap_scale_filter_64_256
     40.06  bitmap_scale_filter_256_64
      8.17  bitmap_scale_filter_90_10
     10.32  bitmap_scale_filter_90_30
     22.50  bitmap_scale_filter_90_80
      1.80  bitmap_scale_filter_90_90
     57.51  bitmap_scale_filter_80_90
     41.99  bitmap_scale_filter_30_90
     31.51  bitmap_scale_filter_10_90

After:
    micros  bench
    193.60  bitmap_scale_filter_64_256
     46.26  bitmap_scale_filter_256_64
      7.81  bitmap_scale_filter_90_10
      9.99  bitmap_scale_filter_90_30
     22.05  bitmap_scale_filter_90_80
      1.96  bitmap_scale_filter_90_90
     52.07  bitmap_scale_filter_80_90
     37.73  bitmap_scale_filter_30_90
     27.63  bitmap_scale_filter_10_90

Change-Id: I2f29366b0fd503176c5af4d825fa524e632da21b
Reviewed-on: https://skia-review.googlesource.com/7630
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-01-26 21:58:09 +00:00
Mike Klein
88235bbbbe Graceful degredation for SkOpts_hsw.
__AVX2__ will not be defined if you omit -mavx2.  Android does this
intentionally for x86 builds.  (No mobile CPU supports AVX2 AFAIK.)

This should fix the Android roll.

Change-Id: Ib94c862641abc11fbb46863afc53bcc049f362ad
Reviewed-on: https://skia-review.googlesource.com/7633
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-01-26 21:47:31 +00:00
Ben Wagner
0bda6235fb Reland "remove clipbounds flag"
This reverts commit 2aa26abe6d.

Reason for revert: CL this depends on has now landed.

Original change's description:
> Revert "remove clipbounds flag"
> 
> This reverts commit 7e0489da25.
> 
> Reason for revert: missed a headless
> 
> Original change's description:
> > remove clipbounds flag
> > 
> > BUG=skia:
> > 
> > Change-Id: I55b3098abd5e566e9f8bf27988c33e531d2ea54d
> > Reviewed-on: https://skia-review.googlesource.com/7618
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> > 
> 
> TBR=reed@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
> 
> Change-Id: Id1310372499905dddcca4b9454f6a81d192a1e32
> Reviewed-on: https://skia-review.googlesource.com/7629
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> 

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

Change-Id: I593bdad8d654e272e772559aa0fccafcce8ff541
Reviewed-on: https://skia-review.googlesource.com/7636
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2017-01-26 21:40:12 +00:00
Matt Sarett
eebe87f7a2 Fix gradients gm
Some of my local changes slipped into the tree.

BUG=skia:

Change-Id: I6e452f12608db6b80c5887ccd3cac199cfbf9494
Reviewed-on: https://skia-review.googlesource.com/7625
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-01-26 20:56:27 +00:00
Mike Reed
2aa26abe6d Revert "remove clipbounds flag"
This reverts commit 7e0489da25.

Reason for revert: missed a headless

Original change's description:
> remove clipbounds flag
> 
> BUG=skia:
> 
> Change-Id: I55b3098abd5e566e9f8bf27988c33e531d2ea54d
> Reviewed-on: https://skia-review.googlesource.com/7618
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
> 

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

Change-Id: Id1310372499905dddcca4b9454f6a81d192a1e32
Reviewed-on: https://skia-review.googlesource.com/7629
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-01-26 20:49:40 +00:00
Mike Klein
f65d19b199 Fix variable names in convolve_vertical().
These new names reflect the actual pixels stored in each register.

Change-Id: I8e626196cd8bcbef622e4fb87ac3566a79d3573a
Reviewed-on: https://skia-review.googlesource.com/7624
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-01-26 20:06:21 +00:00
Mike Reed
5baafa8ff1 extend clipper for lines, for uniformity, and so curves can call itself with lines
BUG=skia:

Change-Id: Id8c1fba6fcd2496802d3d17afe3f5c91bf5dfc33
Reviewed-on: https://skia-review.googlesource.com/7621
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-01-26 19:57:47 +00:00
Hal Canary
68fc549e84 SkUserConfig.h: remove out-of-date comment on SK_SFNTLY_SUBSETTER
Change-Id: I6894fe43de071999e4923e1515a951b73e2ba0b1
Reviewed-on: https://skia-review.googlesource.com/7619
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-01-26 19:46:00 +00:00
Mike Klein
fb2c6334ba exclude *hsw* source files on Android/iOS G3 build.
Like *sse2*, *avx*, etc, these are x86-specific and
even there must be compiled with particular flags.

Change-Id: Ibbc004b9ba5da6da70449177423a785d2c644846
Reviewed-on: https://skia-review.googlesource.com/7623
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-01-26 19:42:29 +00:00
Matt Sarett
6f67fc29ed Add SkICC::rawTransferFnData()
BUG=skia:

Change-Id: I912b044a0091a4d396c954d1ad1d84f5f8d50f56
Reviewed-on: https://skia-review.googlesource.com/7366
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-01-26 19:29:29 +00:00
Mike Reed
7e0489da25 remove clipbounds flag
BUG=skia:

Change-Id: I55b3098abd5e566e9f8bf27988c33e531d2ea54d
Reviewed-on: https://skia-review.googlesource.com/7618
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-01-26 19:00:38 +00:00
Cary Clark
f20a98f58b remove obsolete flag
Added by humper in 2013, it is not
referenced anywhere I can find.

R=reed@google.com

Change-Id: I35b3891b29b2fddb132647b5a1e337a0fc68e79e
Reviewed-on: https://skia-review.googlesource.com/7610
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2017-01-26 18:24:55 +00:00
Mike Klein
a174e06787 SkOpts_hsw ODR paranoia
I'm warming back up to the idea of very careful use of SkOpts_hsw.
But if we're going to do that, we need a strict header discipline.
No header can be assumed to be safe without vetting, and most aren't.

Today there's only one function defined in SkOpts_hsw, so this CL mostly
rewrites that convolve_vertically() to use no headers beyond immintrin.h
and stdint.h, both safe.  It shared very little code with the others
anyway, so we're not losing anything by putting it directly into
SkOpts_hsw.cpp.  I have also streamlined the implementation considerably
to improve maintainability and readability.

Change-Id: Ia03daae660e54125a0d2e2988464cfc930349e80
Reviewed-on: https://skia-review.googlesource.com/7611
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-01-26 18:22:38 +00:00
Florin Malita
3311b1513d Remove SkBlitter::getShaderContext()
Unused.  Also ComposeShaderContext::getShaderContext{A,B}.

R=reed@google.com,mtklein@google.com

Change-Id: I36a8346f0c7e842455774339f388c04920db0040
Reviewed-on: https://skia-review.googlesource.com/7613
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-01-26 18:09:36 +00:00
Brian Salomon
7a1f09ca2b Fix extension suffic for getting procs from GL_EXT_debug_marker on ES
Change-Id: I483fbf7c5f6d4489802def78fa855f70313e4a19
Reviewed-on: https://skia-review.googlesource.com/7602
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-01-26 18:07:39 +00:00
Mike Reed
0c0da2b0e2 add test for big cubic -- currently disabled
BUG=skia:

Change-Id: Ief11a1e54d427b1241b47f3cfab5b44fb656443a
Reviewed-on: https://skia-review.googlesource.com/7607
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-01-26 16:32:19 +00:00
Brian Osman
964dec3948 Move SkGammaColorFilter to tools, limit to sRGB
Similarly, limit GrGammaEffect to sRGB (and rename it).

BUG=skia:

Change-Id: I88feef11ab7040bca2fa4c2eed71923ded87a0d0
Reviewed-on: https://skia-review.googlesource.com/7375
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-01-26 15:27:49 +00:00