Commit Graph

41381 Commits

Author SHA1 Message Date
Mike Reed
b5c685991f remove shader factory guard define
Change-Id: Id2d700556e5c0bc55a97b88180103e34344503ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207040
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-10 01:11:35 +00:00
Greg Daniel
2655ede7c9 Revert "Add non-AA support to OvalFactoryOps."
This reverts commit 10bf7020aa.

Reason for revert: broken layout tests (which actually look bad with change)

Original change's description:
> Add non-AA support to OvalFactoryOps.
> 
> Non-AA stroked ovals and rounded rects were falling back to a path renderer, when they can use
> the much faster OvalFactoryOps. And since CircleOp is slightly faster than FillRRectOp for AA
> circles, this extends it to work with non-AA circles as well.
> 
> Change-Id: I7e3576e081f076056a00ed57ac6a805be7348b28
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206700
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Chris Dalton <csmartdalton@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

TBR=jvanverth@google.com,bsalomon@google.com,brianosman@google.com,csmartdalton@google.com

Change-Id: I8d8b9addd12a41c625fbbd9ae69a5c37c7f0ca2e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207041
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-10 00:49:37 +00:00
Kevin Lubick
85de152dfa Move common canvas/pathkit dockerfiles to more intuitive location
Also rename emsdk-base -> emsdk-release so it is consistent with
the container name.

Bug: skia:
NOTRY: true
Change-Id: Idec19bdeb64a64120d0890b2987c2dce0a57535a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206909
Reviewed-by: Stephan Altmueller <stephana@google.com>
2019-04-09 23:14:13 +00:00
Jim Van Verth
10bf7020aa Add non-AA support to OvalFactoryOps.
Non-AA stroked ovals and rounded rects were falling back to a path renderer, when they can use
the much faster OvalFactoryOps. And since CircleOp is slightly faster than FillRRectOp for AA
circles, this extends it to work with non-AA circles as well.

Change-Id: I7e3576e081f076056a00ed57ac6a805be7348b28
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206700
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-04-09 21:33:35 +00:00
Ethan Nicholas
ff4fb3335b ComposeShader GPU implementations
Bug: skia:
Change-Id: I007b46ead1900a8f5cce82dec33b6d662fc63d8e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206918
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-09 21:04:15 +00:00
Jim Van Verth
46431bf9d0 Add RG format to Metal
Bug: skia:8243
Change-Id: I2140a558afeacaca26c81355c906cf6ae16a2df4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206917
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-09 20:42:55 +00:00
Mike Klein
9816878163 extract ToolUtils::colortype_depth()
Change-Id: I55a3956ed6d0587f72ddff24a1769ab14e25131f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206981
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-09 20:32:15 +00:00
Ben Wagner
201b3752e6 Build HarfBuzz with multi-thread support.
Change-Id: I0d0061aaa37c49ca108203df955318f4481db874
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206916
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-04-09 19:47:16 +00:00
Mike Klein
de8362c6f2 remove DMJsonWriter::AddTestFailure
As far as I can tell, Gold doesn't do anything with this information.
The bots go red if any unit test fails... no need to log it long-term.

Change-Id: Iae9ddd61c0a7d37437bb93441e83948c2e518b42
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206940
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-09 19:42:02 +00:00
Brian Salomon
42cbedd3c7 Temporarily make TransferPixelsFromTest read BGRA as RGBA on ES.
Remove disable of transfer support on Tegra.

Longer term we want GrGLGpu to handle the swizzle to BGRA after reading
RGBA. However, deferring that work to be part of color-type/format
refactoring.

Bug: skia:8962
Change-Id: Ib1d75fe0330aaaa02330724e58a1374129274a8f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206699
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-04-09 19:33:30 +00:00
Mike Reed
442973874c remove def of colorfilter flag
Bug: skia:8937
Change-Id: I5d735fafa0339f93f5a3b3cb4adadb059e64b389
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206913
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-09 19:28:58 +00:00
Mike Reed
c8bea7deb6 New factories for SkShaders
Bug: skia:8937
Change-Id: Ic253b70fbf89059321185912aa771b1c1de7d231
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206693
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-09 19:15:01 +00:00
Nathaniel Nifong
d54b1fcdd9 full collection of externs
Full list of externs that need exposing

Bug: skia:
Change-Id: I9abb3d2c595d213463f69f11b1164c965d036023
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206690
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2019-04-09 18:37:18 +00:00
Herb Derby
66083e9011 Reland "Handle translating blob to origin in bulk"
This is a reland of 7a2ff3c9a8

Original change's description:
> Handle translating blob to origin in bulk
>
> Move all the glyphs in bulk. Handling the origin
> translation will be needed to use the bulk APIs.
>
> Change-Id: Ic38ebc8504d874367e4a7291e26f3dfc2c59222b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206397
> Auto-Submit: Herb Derby <herb@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

Change-Id: Idc1c96d9386b73c3f6f9dbb89f7eb8618863550a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206906
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-09 18:16:08 +00:00
Hal Canary
774227856f SkPDF: move annotations away from device.
This eliminates an unneccesary copy when we do drawDevice()

Change-Id: If2fd866b5bdd6c60b0493eb2b763a63b18ea9f13
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206910
Auto-Submit: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-09 18:07:11 +00:00
Mike Klein
a833cff194 some refactoring ideas
- streamline source initialization so that each
    kind of source only has to mention what's interesting
    to it, with defaults for some obvious fields.

  - have sources return a Result rather than a bool,
    encapsulating Ok/Skip/Fail and any failure message,
    but grab this in a middle draw() layer so each backend
    doesn't have to care about anything but Ok/Skip.

Change-Id: I715278ba5e05892e42c8875bd607160b0cc594b5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206763
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-09 17:54:36 +00:00
Ethan Nicholas
bcd51e8e6d SkSL 'key' variables can now be controlled by 'when' expressions
Bug: skia:8880
Change-Id: I075ef57035b37250196d85bc6767eb877e445aa2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206698
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-09 17:46:56 +00:00
Florin Malita
80658204f4 Revert "[skottie] More snug kTop Shaper alignment"
This reverts commit 7ef3e14516.

Reason for revert: TSAN failures (HB?)

Original change's description:
> [skottie] More snug kTop Shaper alignment
> 
> The current implementation relies on SkShaper ascent values for top
> text box alignment, but the results are not as visually accurate as AE
> (or Lottie).
> 
> Use the computed tight bounds instead.
> 
> Change-Id: I4447a834fe3cae398fc887766daa68802e7f50a5
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206684
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>

TBR=bungeman@google.com,fmalita@chromium.org

Change-Id: Icdcca2f6a7b33c8366c1118be2e842ff3978c8bd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206911
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-09 17:37:21 +00:00
Hal Canary
f22466e57c SkPDF: remove unused field
Change-Id: Ib596fca159044c5406be32e501796c4f10ac085e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206903
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-09 17:26:06 +00:00
Greg Daniel
212ff0512d Fix to barrier batching.
The vulkan spec doesn't specify a specific order for which memory barriers
submitted in the batch will execute. Thus we need to break apart batches
if barriers overlap in the subresources that they affect to make sure they're
ordered how we want.

Bug: skia:
Change-Id: I6ca6fe365301b88d11f6792ee059882f06e2eca5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206907
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-09 17:08:14 +00:00
Mike Klein
7b8bc53b93 --parameters -> --properties
This was a brain fart when I wrote it the first time;
the expected flag name is --properties.

    ~/skia (refactoring↑1|…) $ git grep DEFINE_string\(properties
    bench/nanobench.cpp:static DEFINE_string(properties, "",
    dm/DM.cpp:static DEFINE_string(properties, "",
    tools/fm/fm.cpp:static DEFINE_string(properties, "",

Change-Id: I9ada23e26a748bd6bc85ae5682bd03c130edc054
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206941
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-09 17:08:13 +00:00
Michael Ludwig
97b9442b0d Detect simpler quad type when possible
Previously, providing 4 SkPoints to draw as a quad meant the tessellator
used either kStandard or kPerspective, and couldn't use the faster
kRect and kRectilinear options. This had been simple and under the
assumption that most provided quad points would be from BSP splitting.

However, to emulate SkiaRenderer's required content_area clipping, the
content area is sent as the srcRect and the original geometry is stored
in the SkPoints. In these situations, the it is easy to detect that the
4 points make a rectangle and then relying on the CTMs matrix for the
quad type is perfectly safe.

Change-Id: Ib2b599fa9c82d275519e17cf813713806a565afe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206908
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-04-09 16:57:43 +00:00
Mike Reed
b5d8c634f9 remove guard for bitmap shader api
Change-Id: I6500f036970aa7fcc86ca0a9d2066a66e4c1c039
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206692
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-09 16:08:00 +00:00
Brian Salomon
4ffbfe6177 Add support for importing GL_R16F for YUVA promise images
Change-Id: Id9bfc98e7154dd41f3954c5824a3ab04afce3f50
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206900
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-09 14:50:40 +00:00
Martin Vejdarski
8842799432 add missing shared lib visibility macros
fixes linker errors when using is_component_build

Change-Id: Ie28b0e8881cb81715a959df3a87bae4fa854afda
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206140
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Auto-Submit: Martin Vejdarski <martin@mainframe.co.uk>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-09 14:34:55 +00:00
Herb Derby
09fb824a93 Revert "Handle translating blob to origin in bulk"
This reverts commit 7a2ff3c9a8.

Reason for revert: Breaks all kinds of GMs

Original change's description:
> Handle translating blob to origin in bulk
> 
> Move all the glyphs in bulk. Handling the origin
> translation will be needed to use the bulk APIs.
> 
> Change-Id: Ic38ebc8504d874367e4a7291e26f3dfc2c59222b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206397
> Auto-Submit: Herb Derby <herb@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=bungeman@google.com,herb@google.com

Change-Id: I007971ccf5d2af96b8dfe52c1d4a03660080a189
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206904
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:34:47 +00:00
Herb Derby
c6cfca4dac Revert "Reland "Do not use sub-pixel positioning for source space""
This reverts commit 8aa0ea04ba.

Reason for revert: Breaks win7 SVG positioning tests

Original change's description:
> Reland "Do not use sub-pixel positioning for source space"
> 
> This reverts commit d9b8eed848.
> 
> Reason for revert: This does not seem to change anything in gold
> 
> Original change's description:
> > Revert "Do not use sub-pixel positioning for source space"
> > 
> > This reverts commit 7b56b0ae39.
> > 
> > Reason for revert: speculative: broke win7 layout tests
> > 
> > Original change's description:
> > > Do not use sub-pixel positioning for source space
> > > 
> > > Since the source space drawing modes call getGlyphMetrics with
> > > the point {0, 0}, just turn of sub-pixel positioning. This uses
> > > a more efficient code path in the strike
> > > 
> > > Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
> > > Reviewed-by: Ben Wagner <bungeman@google.com>
> > > Commit-Queue: Ben Wagner <bungeman@google.com>
> > > Commit-Queue: Herb Derby <herb@google.com>
> > > Auto-Submit: Herb Derby <herb@google.com>
> > 
> > TBR=bungeman@google.com,herb@google.com
> > 
> > Change-Id: I06cafe542fe6374d1a273db09617dbebd9eb04c7
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206696
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> 
> TBR=bungeman@google.com,herb@google.com,reed@google.com
> 
> Change-Id: I44ed127ee1e7494c8959b66d25654b3393e99b27
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206901
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Herb Derby <herb@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: I24ce322fa5bc285bf0fc1e0687490fa3971b291f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206713
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:28:58 +00:00
skia-autoroll
ba6087c8b7 Roll skia/third_party/skcms 36eeb1311a72..0da672fc2c69 (1 commits)
https://skia.googlesource.com/skcms.git/+log/36eeb1311a72..0da672fc2c69

2019-04-09 mtklein@google.com runtime detection for AVX-512


The AutoRoll server is located here: https://autoroll.skia.org/r/skcms-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel
TBR=egdaniel@google.com

Change-Id: I03188337dea03591fecfae9b3e93a5c4a8bd3725
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206880
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 14:27:45 +00:00
Herb Derby
a519999fa5 Reland "Add maxDimension() to glyph"
This reverts commit d3516170ac.

Reason for revert: This does not seem to affect gold

Original change's description:
> Revert "Add maxDimension() to glyph"
> 
> This reverts commit c19cf51df4.
> 
> Reason for revert: speculative: broke win7 layout tests
> 
> Original change's description:
> > Add maxDimension() to glyph
> > 
> > Expand the too large for atlas calculation. Considering making
> > a "small enough" function on glyph.
> > 
> > Change-Id: I113831f4182df0939110f651fb4a5921447124c1
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206705
> > Commit-Queue: Herb Derby <herb@google.com>
> > Commit-Queue: Ben Wagner <bungeman@google.com>
> > Auto-Submit: Herb Derby <herb@google.com>
> > Reviewed-by: Ben Wagner <bungeman@google.com>
> 
> TBR=bungeman@google.com,herb@google.com
> 
> Change-Id: Ie11df8e314ccf801f1d223d56344640b49200633
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206695
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: I91af46df68c901394380a97678ba2366c52cc4bf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206902
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:15:27 +00:00
Herb Derby
8aa0ea04ba Reland "Do not use sub-pixel positioning for source space"
This reverts commit d9b8eed848.

Reason for revert: This does not seem to change anything in gold

Original change's description:
> Revert "Do not use sub-pixel positioning for source space"
> 
> This reverts commit 7b56b0ae39.
> 
> Reason for revert: speculative: broke win7 layout tests
> 
> Original change's description:
> > Do not use sub-pixel positioning for source space
> > 
> > Since the source space drawing modes call getGlyphMetrics with
> > the point {0, 0}, just turn of sub-pixel positioning. This uses
> > a more efficient code path in the strike
> > 
> > Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
> > Reviewed-by: Ben Wagner <bungeman@google.com>
> > Commit-Queue: Ben Wagner <bungeman@google.com>
> > Commit-Queue: Herb Derby <herb@google.com>
> > Auto-Submit: Herb Derby <herb@google.com>
> 
> TBR=bungeman@google.com,herb@google.com
> 
> Change-Id: I06cafe542fe6374d1a273db09617dbebd9eb04c7
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206696
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: I44ed127ee1e7494c8959b66d25654b3393e99b27
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206901
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:13:47 +00:00
Brian Osman
5aa11fb67a Shader serialization experiment (with Mali Offline Compiler analysis)
1) Adds a --writeShaders option to fm. When that's included, the GPU
backend is run with a persistent cache (and no binary caching).
Then we dump all of the fragment shaders (GLSL for now) that were
created to the passed-in directory, along with a JSON digest listing
the number of times each one was referenced in the cache.

2) Adds a python script that invokes the Mali Offline Compiler on a
directory generated from #1, scraping the output of each compile for
cycle counts and writing the collated information to stdout.

Change-Id: Ie4b58ddac4f62e936707c6fec44f4fe605c213fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206162
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-09 13:37:55 +00:00
Mike Reed
d9b8eed848 Revert "Do not use sub-pixel positioning for source space"
This reverts commit 7b56b0ae39.

Reason for revert: speculative: broke win7 layout tests

Original change's description:
> Do not use sub-pixel positioning for source space
> 
> Since the source space drawing modes call getGlyphMetrics with
> the point {0, 0}, just turn of sub-pixel positioning. This uses
> a more efficient code path in the strike
> 
> Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Commit-Queue: Herb Derby <herb@google.com>
> Auto-Submit: Herb Derby <herb@google.com>

TBR=bungeman@google.com,herb@google.com

Change-Id: I06cafe542fe6374d1a273db09617dbebd9eb04c7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206696
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-09 12:51:30 +00:00
Mike Reed
d3516170ac Revert "Add maxDimension() to glyph"
This reverts commit c19cf51df4.

Reason for revert: speculative: broke win7 layout tests

Original change's description:
> Add maxDimension() to glyph
> 
> Expand the too large for atlas calculation. Considering making
> a "small enough" function on glyph.
> 
> Change-Id: I113831f4182df0939110f651fb4a5921447124c1
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206705
> Commit-Queue: Herb Derby <herb@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Auto-Submit: Herb Derby <herb@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=bungeman@google.com,herb@google.com

Change-Id: Ie11df8e314ccf801f1d223d56344640b49200633
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206695
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-09 12:48:37 +00:00
Robert Phillips
9a7c7be159 Revert "Skip flush in GrDrawingManager if the specifed proxy doesn't have any work"
This reverts commit 4187ac5e47.

Reason for revert: test if this is causing the angle GM image diffs

Original change's description:
> Skip flush in GrDrawingManager if the specifed proxy doesn't have any work
> 
> This is rather ham-fisted but I would like to have a short-term fix for the "always-flush" perf regressions.
> 
> Change-Id: Id359ad5a01a290e7e6c06f7ccc1c385ad47d2c06
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206277
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: I19ea23a6b8e3985353fc1ebaf974513bb922e9f2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206694
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-09 12:46:27 +00:00
skia-recreate-skps
097e77cd3b Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I1c941f92dd694d04d12e909e494d3fae37fc48b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206762
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-09 05:58:39 +00:00
skia-autoroll
696e8dda3c Roll third_party/externals/swiftshader 4ba1911b2d7f..eba396cc66d3 (3 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/4ba1911b2d7f..eba396cc66d3


git log 4ba1911b2d7f..eba396cc66d3 --date=short --no-merges --format='%ad %ae %s'
2019-04-08 bclayton@google.com Rename 'unittests' to 'gles-unittest'
2019-04-08 swiftshader.regress@gmail.com Regres: Update test lists @ 4ba1911b
2019-04-08 bclayton@google.com Replace use of ASSERT(false) with UNIMPLEMENTED


Created with:
  gclient setdep -r third_party/externals/swiftshader@eba396cc66d3

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=egdaniel@google.com

Change-Id: If7081c2e9a74f9cb265af885f775e96ca20cf595
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206811
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 05:20:29 +00:00
skia-autoroll
8f838d55a4 Roll third_party/externals/angle2 90b1865e2a8b..82418c821689 (8 commits)
90b1865e2a..82418c8216


git log 90b1865e2a8b..82418c821689 --date=short --no-merges --format='%ad %ae %s'
2019-04-09 syoussefi@chromium.org Add support for updating glslang_validator binary from Linux.
2019-04-08 syoussefi@chromium.org Add glslang and SPIRV autorollers to wrangling doc
2019-04-08 syoussefi@chromium.org Vulkan: Implement robust resource initialization
2019-04-08 shrekshao@google.com Fix formsRenderingFeedbackLoopWith check
2019-04-08 jmadill@chromium.org Remove function pointers in CopyTexture3DTest.
2019-04-08 syoussefi@chromium.org Vulkan: make sure clear value is completely initialized
2019-04-08 jmadill@chromium.org Add standalone glslang_validator as a download hook.
2019-04-08 jmadill@chromium.org Add MD browser to DEPS.


Created with:
  gclient setdep -r third_party/externals/angle2@82418c821689

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=egdaniel@google.com

Change-Id: I1d0c34a5b74fc18ca4df2ef26dae6ef74b1c468d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206810
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 05:05:29 +00:00
skia-autoroll
643624630a Roll ../src afd96fdcf75a..79154509c679 (442 commits)
afd96fdcf7..79154509c6


Created with:
  gclient setdep -r ../src@79154509c6

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=egdaniel@google.com

Change-Id: I680a4b9e2c93fea132dfa2e0c40b3d20d02321e2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206809
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 04:54:09 +00:00
recipe-roller
0ea414a082 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/9cbb703d2234f3627a95f2fef0d75ae8e5850f75 [buildbucket] Use bb tool (nodir@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0a816e77cb63c98342ce9b848a4e561df005991c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206710
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-04-09 01:27:19 +00:00
Florin Malita
7ef3e14516 [skottie] More snug kTop Shaper alignment
The current implementation relies on SkShaper ascent values for top
text box alignment, but the results are not as visually accurate as AE
(or Lottie).

Use the computed tight bounds instead.

Change-Id: I4447a834fe3cae398fc887766daa68802e7f50a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206684
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-08 22:48:08 +00:00
Greg Kaiser
2f08a4043b examples: Avoid undefined behavior
When 'int' is 32-bits, "1 << 31" is undefined.  So we avoid that
in these couple example programs.

Bug: 8968
Change-Id: Iacaa28bf46a4006de4aee90de33560911744925e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206691
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-08 22:14:49 +00:00
Mike Reed
187a91e363 undef guard for bitmap shader
Bug: skia:8937
Change-Id: I25a70f4700f2809477d31e2bf3632fa948d0bc54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206689
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-08 22:00:39 +00:00
Mike Reed
b286bc2da8 Introduce new factory for SkColorFilters
Idea: transition callers to this, so we can later typedef SkColorFilter
and SkShader to the same thing.

Bug: skia:8937
Change-Id: I000c882e11622091aa44c141aa6ddd1216414f46
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206685
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-08 21:03:59 +00:00
Herb Derby
c19cf51df4 Add maxDimension() to glyph
Expand the too large for atlas calculation. Considering making
a "small enough" function on glyph.

Change-Id: I113831f4182df0939110f651fb4a5921447124c1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206705
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-08 20:43:09 +00:00
recipe-roller
f9c5d56d14 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/1fb046306b9ebe160eeacc7843ee1ddd15a47ffa Fix UTF-8 output in gclient_utils.CheckCallAndFilter (raul@tambre.ee)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icc3e65f4a2bc3aec1b68f7852333089abfc3016d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206761
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-04-08 20:10:13 +00:00
Chris Dalton
6b76df09a0 Disable output swizzling from GrDisableColorXP
This makes sure the final shader does not output a color.

Bug: skia:
Change-Id: I1e5299bb63391d6ff72598ed72fe4fb80b18fa07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206352
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-04-08 20:06:29 +00:00
Brian Osman
a5a010b8cd Update SPIRV caching to use SkWriter32/SkReader32 and allow inspection
Change-Id: I6656d971c05f0ed3515f095ffcd41ae73a5c483f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206687
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-08 19:38:58 +00:00
skia-autoroll
c328be8947 Roll skia/third_party/skcms 99740cdf2835..36eeb1311a72 (1 commits)
https://skia.googlesource.com/skcms.git/+log/99740cdf2835..36eeb1311a72

2019-04-08 mtklein@google.com update clang_win package


The AutoRoll server is located here: https://autoroll.skia.org/r/skcms-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel
TBR=egdaniel@google.com

Change-Id: I49e77b51613fe8ce5e809db4481d02ec58960e5c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206760
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-08 19:23:28 +00:00
Brian Osman
6b797fec83 Simplify persistent cache code, make GLSL easier for tools to access
Using SkWriter32/SkReader32 cleans up the construction and unpacking of
cache entries (I first tried adding a dedicated class to manage this,
but it added too much scaffolding). Importantly, this also externalizes
the GLSL packing/unpacking so that other tools (GLSL inspector, offline
compiler dumps, etc...) can also unpack the cache entries.

For the cache entries that will never be inspected, we can leave their
serialization code in the relevant backend location. Putting the GLSL
(and later SPIR-V) serialization in helpers seems like a good
compromise (given that it doesn't require any backend types).

Change-Id: I9e8ccc458939ae30e18bc67f9161dbffa1648bda
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206702
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-08 18:51:28 +00:00
Chris Dalton
8e30ad439b Add a mustWriteToFragColor() workaround flag
Bug: skia:
Change-Id: Ifeff01125ebe5418d4632ffe2422140944e44469
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206351
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-08 18:48:04 +00:00