Commit Graph

43423 Commits

Author SHA1 Message Date
Hal Canary
4df3d5340e rewrite_includes.py: make it work on windows
Also:
    Revert "don't try to format includes on windows"
    This reverts commit e68b5bd4e6.

Change-Id: I93dc4dba4808c07882e977ac0693c93e282bbad5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230878
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-08-05 16:14:35 +00:00
Hal Canary
71c34240f4 experimental/tools/gerrit_percent_encode
NoTry: true
Change-Id: I448b4791911dd1b87104ca809b2b41c62ce0ee3d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231480
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-08-05 16:11:45 +00:00
Florin Malita
76eef9a21f Add missing GrLumaColorFilterEffect opt flag
GrLumaColorFilterEffect implements constantOutputForConstantInput() but
doesn't opt in for this optimization.

Change-Id: I9ba22a5e6da5974ba75610ad33d37bc467e45689
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232399
Commit-Queue: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Florin Malita <fmalita@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-08-05 15:26:15 +00:00
Michael Ludwig
55edb50262 Update tests to use new image filter factories
Bug: skia:9280
Change-Id: Id8253baa6ca387b6f2f0583f29b2c25cc1005545
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230880
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-05 15:15:45 +00:00
Michael Ludwig
bf8439d7e2 Fix GMs broken during API porting
Bugs:
morphology GM: Had swapped Erode and Dilate
imagefilterscropexpand GM: Was applying the filter to the wrong rectangle
imagefilterstransformed, filterfastbounds, et al GMs: The new
SkImageFilters::Image() factory had defaulted to using kNone for quality,
since it appeared to keep a 1-to-1 scale. However, it actually draws the
image from srcRect into the dstRect, mapped by the CTM, so if there's a
scaling factor in the CTM the filter no longer is 1-to-1 and kNone leads
to weird scaling artifacts. So switched back to the original kHigh default.
Change-Id: I30ee455008720048fb27eaed1c2c42915d222c97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232396
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-05 14:53:45 +00:00
Greg Daniel
9655534306 Put read and output swizzle back on gl format table.
Change-Id: I8d1fa3aefba8f953e261e8a20818c24398468be0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232143
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-08-05 14:22:26 +00:00
Robert Phillips
00c9f0dc92 Increase specificity of GrColorType computed for YUV planes (take 2)
When a single channel texture is used for a YUV channel we will
interpret it as kGray_8. When a single channel texture is used
as an A channel we will interpret it as kAlpha_8.

Change-Id: I0a02b849d214f63369dedf09b78195a293adc78e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232142
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-08-05 12:59:40 +00:00
skia-autoroll
594583382d Roll third_party/externals/angle2 369f9e5df60b..dc2c5c5a419e (12 commits)
369f9e5df6..dc2c5c5a41

git log 369f9e5df60b..dc2c5c5a419e --date=short --no-merges --format='%ad %ae %s'
2019-08-03 ianelliott@google.com Vulkan: Initial Implementation of PBO support (software only)
2019-08-03 m.maiya@samsung.com Vulkan: Fix incorrect alignment logic in readPixels
2019-08-03 ianelliott@google.com Vulkan: Enable more tests to run (and in most cases pass).
2019-08-03 rafael.cintron@microsoft.com Fix memory leak in Renderer11::getD3DTextureInfo
2019-08-03 ynovikov@chromium.org Switch all Win10 GPU.FYI bots and related trybots to 64-bit
2019-08-02 timvp@google.com Enable ASTC 3D Textures
2019-08-02 hckim.kim@samsung.com Vulkan: Add support for OES_vertex_half_float
2019-08-02 timvp@google.com Vulkan: Implement framebuffers without attachments
2019-08-02 syoussefi@chromium.org Vulkan: Remove finish calls before BufferVk::mapImpl
2019-08-02 lujc@google.com Vulkan: Recycle VkFence in checkCommandsCompleted
2019-08-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src ac3d131054ac..0b70972a29c7 (6 commits)
2019-08-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src eea340047eca..a0eb5efd2bad (1 commits)

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

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:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=reed@google.com
Change-Id: Iad51bf6e2e45f1be2138727bc0bc32cf42c99691
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232287
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-05 05:08:30 +00:00
skia-autoroll
c6a07dd6cc Roll ../src 01452febf2d0..d67ae722191a (443 commits)
01452febf2..d67ae72219


Created with:
  gclient setdep -r ../src@d67ae72219

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
Bug: None
TBR=reed@google.com
Change-Id: I108ab828ca772b45eadd79838f0149f7094beb65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232288
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-05 04:39:30 +00:00
skia-autoroll
a56838e0ef Roll third_party/externals/swiftshader f63c4e51101a..060fcf777159 (3 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/f63c4e51101a..060fcf777159

git log f63c4e51101a..060fcf777159 --date=short --no-merges --format='%ad %ae %s'
2019-08-02 swiftshader.regress@gmail.com Regres: Update test lists @ f63c4e51
2019-08-02 capn@google.com Omit null initialization of sampler cache pointers
2019-08-02 srisser@google.com Update ANGLE docs to match MakeCurrent status

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

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
Bug: None
TBR=reed@google.com
Change-Id: Ic264857f72a70b656fdeb125fe62ce356bcea0d6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232289
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-05 04:36:00 +00:00
Mike Reed
dc85d3cb67 remove dead SK_SUPPORT_LEGACY_BICUBIC_FILTERING code
All clients that used the flag (google3, chrome) have been updated

Change-Id: I08062301a02a4270cda7e5765e6d21c8ac82b691
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232025
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2019-08-05 01:58:59 +00:00
skia-recreate-skps
ced601b40b Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I2e49d60acdbaf8a932371b8906aa523318518bbe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232197
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-08-04 08:19:28 +00:00
skia-recreate-skps
cdd524c501 Update Go deps
Change-Id: I339a5f6aefbbfb4e1ae935a0471f28acbd40d8ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232276
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-08-04 05:25:08 +00:00
skia-recreate-skps
babf848978 Update Go deps
Change-Id: Ic49b87e016c75b20ff74aa1829fd2b9f2bc8e2b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232236
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-08-03 05:28:37 +00:00
recipe-roller
32623297b0 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/921f6a17514698ebc9b037f1f1e8696b6c359fdd depot_toools: Make subcommand Python 3 compatible. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I26682cacf3fb51908cf7c85d968db873bf4ef28f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232196
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-08-03 02:04:36 +00:00
Florin Malita
66374f69e4 [skottie] Fix Venetian Blinds typo
TBR=

Change-Id: Ia6d802202e6b3dfe069e36a6daeb92bf4c49b873
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232123
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-08-02 23:33:03 +00:00
Stephen White
d7325185a2 Dawn backend: update to recent Skia changes.
Change-Id: I0cdeb89c3b1efe4d59c65a14cca40a7c4b562972
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232023
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2019-08-02 21:49:40 +00:00
Michael Ludwig
898bbfac2e Update gms to use new image filter factories
Bug: skia:9280
Change-Id: Ic7ca3a9c86025128bc45b89ea90aa4553287b8c9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230879
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-02 21:08:40 +00:00
Stan Iliev
8341022d23 Delete unused variant of MakeBackendTexture
Test: built and ran Android
Bug: b/138674291
Change-Id: I7ee7a2489749cde7c4f384002856ca2ea1bd00d7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232018
Commit-Queue: Stan Iliev <stani@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-08-02 20:55:40 +00:00
Greg Daniel
1ff50215a4 Add table for supported colortypes in GrVkCaps.
Currently Vulkan does not have a second layer table for external IO
GrColorTypes since it doesn't need any extra meta data it for both
read and write it always uses the GrColorType of the surface.

Also removed a few switches in the GrVkCaps to use the new table.

Bug: skia:6718
Change-Id: Ib4df5862051a235df0c7c0acc0540a6b56dee516
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232020
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-08-02 20:32:33 +00:00
Stephen White
a800ec96f7 Dawn: implement sk_app window contexts for all backends.
Implement Window contexts for D3D12, Metal and Vulkan, as well as
a base class for all of them (DawnWindowContext).
Implement WSI, swap chains and external textures for all backends.
Add Dawn support to Viewer app.

Change-Id: I9368eae8d43594821aa1edd9fd559c8a9ba30066
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/228060
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-08-02 19:51:02 +00:00
Chris Dalton
f8e5aadbd4 Remove 'dst' argument from GrOpList::copySurface
The dst should always be fTarget. Otherwise we need to rethink our
model of when to mark mipmaps, etc. as dirty.

Bug: skia:
Change-Id: Ie4e98374df40d825801494bf335b0a5a2c6f459f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230916
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-02 19:38:58 +00:00
Michael Ludwig
8ee6cf3691 Move SkImageFilter functionality into private SkImageFilter_Base
Bug: skia:9281
Change-Id: I189dbf652580805641f8c4b9a6587cf15a9049dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231256
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-02 18:56:39 +00:00
Mike Klein
bc2c71f031 no need to increment uniform pointers by zero
This is basically a no-op, just trimming a tiny bit of silly codegen.

Change-Id: I0c20a22f1c9fb6226f9121eb8232b85f156a7f05
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232061
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-08-02 18:50:44 +00:00
Robert Phillips
8ba5315073 Revert "Increase specificity of GrColorType computed for YUV planes"
This reverts commit c326aaf134.

Reason for revert: ANGLE D3D es2 bots

Original change's description:
> Increase specificity of GrColorType computed for YUV planes
> 
> When a single channel texture is used for a YUV channel we will
> interpret it as kGray_8. When a single channel texture is used
> as an A channel we will interpret it as kAlpha_8.
> 
> Change-Id: I746f8d761d7779266a4106311a93d651266bb422
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232017
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: I57a00d65c6226822a501b231e103016a45943e5e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232138
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-08-02 18:29:27 +00:00
Mike Klein
b994412823 select, {eq,lt,gt}_i32 on x86
Add vpblendvb, vpcmpeqd, and vpcmpgtd, to implement select and eq/lt/gt.
I want to think just a touch bit more about neq, lte, and gte.

This is enough to JIT everything SkVMBlitter creates today.

There are 24 possible argument orders to vpblendvb,
so I'm sure I've got them wrong somehow, even with the new test.

Change-Id: I357664b866d8258a2b5438d520f47542ad581c50
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232060
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-08-02 18:28:15 +00:00
Florin Malita
17b9d1d1de [skottie] Initial Hue/Saturate effect support
Due to limitations in BodyMovin/AE JSX, full effect data is not
available (specifically the "channel range" property).

We only support static master hue, static master saturation and
static master lightness at this point.

This CL also introduces a new animation builder pattern:
DiscardableAdapterBase and attachDiscardableAdapter().

The former is a base class for adapters with full animator ownership.
This enables a) capturing raw adapter pointers in animator lambdas and
b) syncing to SG only once, after all local animators are updated).

The latter is a helper for managing adapter creation and optional
destruction (when all adapter properties are static we can discard it).

Change-Id: Iecc4b78830e5464e7958cb12cdfd75a61010aa25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231956
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-08-02 18:04:14 +00:00
Mike Klein
95529e8216 x86 store16
Nothing particularly tricky.  Very much like store8,
but with one fewer shuffle.

This lets some of the 565 blitters JIT!

Change-Id: I853905bda30a0cda89f3fcb5fef1dfe62725063b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232059
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-08-02 17:47:34 +00:00
Robert Phillips
c326aaf134 Increase specificity of GrColorType computed for YUV planes
When a single channel texture is used for a YUV channel we will
interpret it as kGray_8. When a single channel texture is used
as an A channel we will interpret it as kAlpha_8.

Change-Id: I746f8d761d7779266a4106311a93d651266bb422
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232017
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-08-02 17:44:04 +00:00
Mike Reed
b2e3c649ef fix bicubic to not be confused by rotated ctms
... a bunch of gm diffs, but all are expected.

Guard flag: SK_SUPPORT_LEGACY_BICUBIC_FILTERING

Bug: skia:9293
Change-Id: I992222ebdee806baa84aff950cd9da270ad3070f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232019
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-08-02 17:41:16 +00:00
Robert Phillips
d344284e77 More SkAutoPixmapStorage
A left over code review request

Change-Id: Ib58abaee4761d14b8ec67f88dc903ac1ed06a58e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232016
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-08-02 16:59:04 +00:00
Chris Dalton
6b49810f98 Extract a GrRenderTask base class from GrOpList
This is a more abstract representation of something that can
participate in the DAG by modifying a GrSurfaceProxy's pixels. This
will serve as the direct base class for future DAG participants that
aren't opLists, and help to eventually remove GrTextureOpList.

Bug: skia:
Change-Id: Ia903c0188e0f6a6602781b90ee8da87ba3cc13f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231277
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-08-02 16:56:09 +00:00
Mike Klein
52010b7dd8 x86, load16
Very similar to load8.

The only interesting thing is how different vpinsrw is from vpinsrb (and
vpinsrd and vpinsrq)... different map of instructions entirely.

Change-Id: Ia413b83604dd2d277d59495c5f693f505c35be9f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232058
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-08-02 16:52:44 +00:00
Hal Canary
ebfcf0c073 experimental/editor: cleanup
Remove unneeded setText().
    Change default font.
    EditorApplication constructor does no real work.

Change-Id: Ie257fbc9873d99ccb3972842493d65a12b0e7904
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231479
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
2019-08-02 16:51:04 +00:00
Mike Klein
94d054b53c x86 uniform8
Add vbroadcastss(Ymm, Xmm) and expand movzbl() to support an offset.

The sequence

    movzbl          (load a byte, zero-extend to 4 byte)
    vmovd           (move that 4 byte value to an xmm)
    vbroadcastss    (broadcast low 4 bytes of xmm to all lanes of ymm)

implements uniform8.

Change-Id: I1d3125920d19dcb3cad5980495310bc95b9dffee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232057
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-08-02 16:41:44 +00:00
Hal Canary
149f3f1978 tools/sk_app: fWindowContext is unique_ptr<>
Change-Id: I828f298e336da22756588d981481c76b890af2ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231648
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-08-02 16:16:34 +00:00
Mike Klein
788967eb37 add vbroadcastss(Ymm, GP64, int)
vbroadcastss with a register argument and immediate offset implements
uniform32.  And this turns on the JIT for some new SkVMBlitter paths
that pass more arguments that I'd previously wired up, so add a few
more.

Change-Id: I66db1286dcdb2c4a4ba7c43f2dc2cd13564d4d34
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/232056
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-08-02 16:07:37 +00:00
Hal Canary
3f4a2b3499 sk_app, editor: cursor blink
Change-Id: I43044727298265ddb711456346c2b544ca8d509d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231477
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
2019-08-02 15:36:40 +00:00
Brian Salomon
01915c0dd0 GrCaps::supportedWritePixelsColorType takes CT/format rather than config.
Bug: skia:6718
Change-Id: I555a1c6962e7abbe0c7a7271f563e2aab714207d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231640
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-08-02 15:21:30 +00:00
Michael Ludwig
297587ba1a Update skottie/sksg to use new filter factories
Bug: skia:9280
Change-Id: I944c2985a6ebdd23a11729069a0ece2c49c4f4b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230887
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-08-02 14:51:42 +00:00
Michael Ludwig
a861106e49 Update docs and samplecode to use new image filter factories
Bug: skia:9280
Change-Id: I03ba9bf1cc952dec77664721fdb3a311f47f7e89
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230884
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
2019-08-02 14:47:35 +00:00
Michael Ludwig
ef43f68697 Update fuzzer to use new image filter factories
Bug: skia:9280
Change-Id: I36c197a8481c99b6f8577fc613869ff89f1d5ef6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230886
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-02 14:46:40 +00:00
Ben Wagner
22e04c6e10 Tweak css3 weight score, prevent ties.
The old code could produce ties and didn't make much logical sense.
Now the range between 400 and 500 prefers heavier weights up to 500,
then lower weights, then the least weight above 500.

Change-Id: I4e80f43c039d795efc49a7329c5c64f9da0fd9b1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231957
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-08-02 14:42:31 +00:00
Stephen White
bb6bed1d07 First implementation of GrDawnProgramBuilder.
Conversion of SkSL to (Dawn-friendly) SPIR-V.
Conversion of GlBlendCoeff -> dawn::BlendFactor.
Conversion of GlBlendEquation -> dawn::BlendOperation.
Creation of dawn::ColorState from color format, write mask, blend state.
Building of basic BindGroupLayouts and BindGroups (the equivalent of
Vulkan's DescriptorSets).
Handling the RTAdjustment uniform, which handles the viewing transform.

Change-Id: If8aef19d71f81bc805defcf5fd7c4ebe3b9547db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231177
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2019-08-02 14:25:00 +00:00
Michael Ludwig
06eacf44d5 Add new SkImageFilters factory API
In preparation for moving the filter-specific headers from include/effects and into src/effects/imagefilters, this exposes a more convenient API where all filters provided by Skia are accessible from the same factory.

It also only exposes the factories that take the shared enums (SkColorChannel, SkTileMode), so the per-filter enums can be phased out (SkBlurImageFilter::TileMode, etc.). It also accepts an SkIRect* instead of an SkImageFilter::CropRect* since all uses seem to be for integer rectangles and flags are either always on or always off. This will allow us to later remove the CropRect type.

Bug: skia:9280
Change-Id: I71f77ff44b573f87b837d6523b9eb565521f0f36
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230876
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-02 13:33:35 +00:00
Greg Daniel
eadfac9878 Rework maxRenderTargetSampleCount and isFormatRenderable in GrCaps.
With this maxRenderTargetSampleCount only takes a GrBackendFormat and
returns a sample count based on that only. If a caller wants to know if
a given Format and GrColorType pair is renderable they should use
isFormatRenderable which now also takes a desired sample count.

This change also allows the removal of GrPixelConfig version of
maxRenderTargetSampleCount and internalMultisampleCount.

Bug: skia:6718
Change-Id: I563c61f8349e56f6681378170a45f33ac5cddfa9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231558
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-02 13:31:45 +00:00
Nathan Rogers
fdd03910d6 Add a TRACE_EVENT for SkGpuBlurUtils::GaussianBlur
This function has been found to have strong influence over UI
performance for the Fuchsia project (in both the GPU work it goes on to
create, and the execution of the function itself when shader compilation
is required).  Add a trace event for it to increase its visibility in
traces.

Change-Id: Ia29cc26fc047d03fb0a4db48dae5ea2ebcd07099
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/230017
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Nathan Rogers <nathanrogers@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-02 12:39:04 +00:00
skia-recreate-skps
ccb8f1c82e Update Go deps
Change-Id: I3414526eb3bdf08d27da1d5f60325f56b789ba10
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231928
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-08-02 05:26:13 +00:00
skia-autoroll
29ec74ce48 Roll third_party/externals/angle2 1dbbc7b3e232..369f9e5df60b (7 commits)
1dbbc7b3e2..369f9e5df6

git log 1dbbc7b3e232..369f9e5df60b --date=short --no-merges --format='%ad %ae %s'
2019-08-01 geofflang@chromium.org GL: Support Rectangle textures as sources for glCopyTextureCHROMIUM.
2019-08-01 syoussefi@chromium.org Vulkan: Enable passing ES2 multisample tests
2019-08-01 dongja@google.com Vulkan: Fix array handling in default uniforms
2019-08-01 jmadill@chromium.org Capture/Replay: Refactor entry points.
2019-08-01 syoussefi@chromium.org Disable atomic counter buffer tests on AMD/Windows/GL
2019-08-01 jmadill@chromium.org Refactor return values from entry points.
2019-08-01 xinghua.cao@intel.com Use memoryBarrier to sync image load and store

Created with:
  gclient setdep -r third_party/externals/angle2@369f9e5df60b

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:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=benjaminwagner@google.com
Change-Id: I3ee00b7724a4c0582edb6778070ad8d8c738c037
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231923
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-02 05:07:13 +00:00
skia-autoroll
d8714df9c6 Roll ../src 9aeb39b9ab0a..01452febf2d0 (403 commits)
9aeb39b9ab..01452febf2


Created with:
  gclient setdep -r ../src@01452febf2

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
Bug: None
TBR=benjaminwagner@google.com
Change-Id: I5f040f4f3c56edf0d131da1aadc4ed58f15ea3b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/231924
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-02 05:04:05 +00:00