Commit Graph

41337 Commits

Author SHA1 Message Date
Mike Klein
16b1efb871 allow GMs to fail in DM
And mark atlastext as GPU-only, so it's skipped instead
of running and failing on non-GPU --configs.

Change-Id: I9b41873bed14e20f2e086a04f57b247994e9266e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205347
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-02 17:46:26 +00:00
Brian Osman
f7cdb682bd Remove redundant setup code in readSurfacePixels
Change-Id: I78fe9ad9ac6a617d0f060d92262ddfe661aa06c2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205487
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-02 17:37:16 +00:00
Jim Van Verth
ffacf656c8 Updates to iOS build
* Enable data bundling for all test apps unless specifically disabled.
* Add support to bundle symbols so that the stack trace in Instruments
  is correct.

Bug: skia:7525
Change-Id: I5eef9fa21ecee8f790b0736f5e23c9d678e47bef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205001
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-02 17:24:46 +00:00
Herb Derby
8341568629 Refactor main GPU glyph decisions
Change-Id: If36d53ab14b359b54f002c89557b9052087a584f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205304
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-02 16:14:56 +00:00
Mike Klein
f2d9b865d7 Add basic fm_bot script
This handles batching and things like figuring out "skps" means "all the
files under the directory skps", "gms" means "all the GMs linked into
fm", etc.

You can set up one job on the command line, or any number of them
with a -script file, e.g.

    ~/skia (fm-bot↑1|●1…) $ cat fm.script
    gms b=cpu w=foo/8888
    gms b=cpu w=foo/565  ct=565
    skps b=gl w=foo/msaa4-skps samples=4

Change-Id: I878c623bfc8673f04b4effa247bc850c0258a89b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204582
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-02 15:51:04 +00:00
Brian Osman
4428f2c39f Remove SkScalarSinCos
This differed from the separate versions in that it snapped to zero.
It was also strictly worse than calling the two separate versions.
Most clients don't need the snapping, so just call the two existing
functions. For clients that need the snapping, call new variants of
each that do snap.

Change-Id: Ia4e09fd9651932fe15caeab1399df7f6281bdc17
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205303
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2019-04-02 15:46:57 +00:00
Brian Salomon
08261b49a8 Make GrVkGpuCommandBuffer::CopyInfo hold source as pending read.
Bug: skia:8927
Change-Id: Iae9f6fe215705c94bc2a701c38c989204fdd55e9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205481
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
2019-04-02 15:42:46 +00:00
Mike Reed
7dafb09df6 add mtklein to api approvals
Change-Id: Ic6f86f615d046b7afdc8bd2fe21d76024d800613
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205348
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-02 15:16:56 +00:00
Mike Klein
556ef6ec76 remove SkColorFilter::onMakeComposed()
No implementations remain.

Change-Id: I569d2ca9c69df27228a33dd433790c6c06aebe08
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205340
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-02 15:01:31 +00:00
Mike Reed
9b2c4e94e2 remove double compose: lerp and mode
Bug: skia:8937
Change-Id: I5b890c03b0451afe4cbeb6a264798ebbb09b9888
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205346
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-02 14:56:27 +00:00
Ben Wagner
3bdb69c55f Clean up shaper handler.
Change-Id: Icb741ba9013747528e893c94df3b9242562028ba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205341
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-02 14:56:26 +00:00
Florin Malita
3d846c98ca [skottie] Initial gradient ramp effect support
Implement gradient ramp using SG shader effects.

A couple of quirks:

- since the gradient type (linear/radial) is animatiable (?!),
  update sksg::ShaderEffect to allow resetting the shader

- gradient ramp doesn't have an assigned/stable JSON effect type,
  but the data is present; introduce a name-based effect lookup method
  (used as a fallback when the type is not recognized)


Change-Id: I02bbd6c75c3af175b64c1df502aa52b7c0875162
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205342
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-02 14:24:56 +00:00
Max Vujovic
730c53ae3c Inset blur domain a tiny bit to prevent certain GPUs from sampling transparent black from scratch textures.
When running Skia GPU blur on an iPhone X, I noticed a bit a of transparency seeping into my clamped blur on the right and/or bottom edges of certain-sized rectangular blurs with large blur radii.

I could only repro this on an iPhone X; I couldn't repro on a retina Macbook Pro or a 1x external screen.

I think the iPhone X GPU is rounding the sampling coordinate a little differently than most other GPUs or there's some floating point error involved in the shader that makes it sample pixels outside of the desired blur domain. Since the blur source is inside a scratch texture filled with transparent black, some undesirable transparent black gets pulled in when we're decimating and blurring the source.

Bug: https://bugs.chromium.org/p/skia/issues/detail?id=8942

Change-Id: Iff28c3ee5d069c6999a831d4b156a650be3a9eb8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205208
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-02 14:11:56 +00:00
Brian Osman
215da624d1 Revert "Remove the NullGL interface (and associated test context)"
This reverts commit de206c75c2.

Reason for revert: Chrome is having issues with the switch to Mock in blink tests.

Original change's description:
> Remove the NullGL interface (and associated test context)
> 
> Bug: skia:
> Change-Id: Ie3c9ee39fc1e0a4406de085c60d8433ffb4419df
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/203708
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

Change-Id: Iff0cbf29dcea26957efc800a8c33d0ad8285de0a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205343
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-02 12:48:37 +00:00
Mike Reed
8e6aa55daa remove asComponentTable introspection method
Bug: skia:8941
Change-Id: I29d5a786987a517eff7ad50d92286e9a7edf3d2e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205268
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-04-02 12:41:36 +00:00
Leon Scroggins III
70d8f4f3ac SkWuffsCodec: Use drawing to do color correction and scaling
Bug: skia:8235 (Wuffs)
Bug: skia:8751 (Color correction)
Bug: skia:8762 (565)

This was brought up in https://skia-review.googlesource.com/c/skia/+/171645/1/src/codec/SkWuffsCodec.cpp#499
Remove the SkSwizzler and code that supports it (e.g.
SkWuffsSpySampler). In its place, use an SkDraw and draw from Wuffs'
working buffer into the output pixel memory. This trivially allows
support for 565 and f16, while removing the blend function that was
8888 specific. The draw operation also takes care of color correction
and allows arbitrary downscaling.

Add the intermediate subclass SkScalingCodec, to share methods between
SkWebpCodec and SkWuffsCodec.

Allowing arbitrary scaling from an SkCodec subclass is a bit of a break
from an original goal of SkCodec, which was to only do what the
underlying format supports naturally. Otherwise a client could just use
Skia to do effectively the same thing in a layer above SkCodec. (e.g.
jpegs can be downscaled by throwing away information during decode,
which libjpeg(-turbo) will do as requested. But gifs don't scale down
naturally in the same way, so SkGifCodec did not support downscaling
except when used with SkAndroidCodec.) But SkCodec has already deviated
from this goals in two ways. With SkAndroidCodec, sampling is done
inside SkGifCodec (and others) in order to save on memory allocation (we
can sample on a single line without allocating memory for the full size
image at its original size). (Note that this memory is not saved anyway
in SkWuffsCodec, because wuffs has its own image buffer.) The second
deviation is color correction, which could also be done in a layer
outside SkCodec. Since SkCodec is already doing this extra work,
simplify it.

Change-Id: If9a1698e0c353f60250aef5b6229855e6538a42d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/194186
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Nigel Tao <nigeltao@google.com>
2019-04-02 12:37:56 +00:00
recipe-roller
d962070feb 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/3c830222aedad072e0ee6c9feb55214cc24b36f1 git cl status: differentiate "dry-run" from generic "commit". (tandrii@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Idbcbd14040ded6214638c45daa486265c654def5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205380
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-02 06:55:15 +00:00
skia-recreate-skps
b3fd67ac36 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: Ice97288f5a2d1a10d4442acdb010e8ca191098ec
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205025
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-02 05:50:25 +00:00
skia-autoroll
f40addbcc8 Roll third_party/externals/angle2 3115a0fc17fa..6cb0cff57376 (9 commits)
3115a0fc17..6cb0cff573


git log 3115a0fc17fa..6cb0cff57376 --date=short --no-merges --format='%ad %ae %s'
2019-04-02 syoussefi@chromium.org Add a test for masked/scissored multi-attachment clear
2019-04-01 jmadill@chromium.org Add a presubmit builder.
2019-04-01 geofflang@chromium.org Add missing copyTexture functions in TextureNULL.
2019-04-01 jacek@codeweavers.com Correct case for includes.
2019-04-01 jonahr@google.com Ignore flaky failures from ANGLE's dEQP deps on Win/Linux/Mac.
2019-04-01 syoussefi@chromium.org Vulkan: Clear DS through render pass even if color is masked
2019-04-01 ynovikov@chromium.org Mark vertex attributes dirty during context switches
2019-04-01 jmadill@chromium.org Update texure cache after teleting bound texture.
2019-04-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src fcb845310450..320a7de5c9a5 (1 commits)


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

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=jlavrova@google.com

Change-Id: Ic866b8489a247bb402063c83e5bfe00339e6f932
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205365
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-02 04:58:45 +00:00
skia-autoroll
d9e660b6a9 Roll ../src e01c3e081ff3..b3f3a36219a1 (475 commits)
e01c3e081f..b3f3a36219


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

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=jlavrova@google.com

Change-Id: I9b0b39ff752738435991f11e40addd2bdc755bd6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205364
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-02 04:54:45 +00:00
skia-autoroll
1acf79a3e5 Roll third_party/externals/swiftshader 52a67b6495ce..459453a96257 (5 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/52a67b6495ce..459453a96257


git log 52a67b6495ce..459453a96257 --date=short --no-merges --format='%ad %ae %s'
2019-04-01 capn@google.com Eliminate Intermediate::replace()
2019-04-01 capn@google.com Elide single basic block variable materialization
2019-04-01 capn@google.com Avoid Array<> assignment
2019-04-01 capn@google.com Implement missing Short8 assignment operators
2019-04-01 bclayton@google.com Common: Document sw::Resource


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

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=jlavrova@google.com

Change-Id: I5da8cdd573595bf7dcd8c13b2c0fc9c6a5cee598
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205366
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-02 04:35:55 +00:00
Mike Reed
3f6a2ac636 remove unneeded asACompose
Bug: skia:8941
Change-Id: I020d5c00f18527ef3564a72a55d3326d647006ac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205302
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-01 20:50:03 +00:00
Brian Osman
b27667a15a Remove ToolUtils::write_pixels
Change-Id: If5463ea352e4c8ec6cbb1e07cc9e461504d06b37
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205300
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-01 20:24:55 +00:00
Nathaniel Nifong
036503b07e Include wasm debugger in continuous build part 2
Merge branch 'master' of https://skia.googlesource.com/skia into buildwasm


Two-part commit required, compile.sh changes first.


needed hashbang line to run in docker


Include wasm debugger in continuous build

Bug: skia:
Change-Id: I378bff703bdf884ca4da266d00069405ed8613d9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205266
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2019-04-01 19:51:43 +00:00
Ben Wagner
1e08a7cbc4 Expose basic shaper iterators.
Change-Id: I1b4a04a296df6830c50461a891725b48a2defbd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204261
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-01 19:42:53 +00:00
Mike Reed
e852427f1a mark introspection methods as deprecated
Bug: skia:8941
Change-Id: Ibf2269787540df699e56f5241c2f5d2852616ff0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205267
Auto-Submit: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-01 19:39:43 +00:00
Michael Ludwig
dcfbe32b21 Add geometry domain for non-rectilinear quads
Bug: chromium:947055
Change-Id: Ic110a1c4e83af0a8efa47ebf2dd035dfdb0e7af0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204725
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-01 19:27:23 +00:00
Chris Dalton
1d460d0ffe Fix mkdir_p in skpbench
We were crashing when trying to write an image on android.

Bug: skia:
Change-Id: Id8a4e07ea2385838e122291530710e2e4e74dd8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205209
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-01 19:19:23 +00:00
Nathaniel Nifong
63f8e0a3a9 Include wasm debugger in continuous build
Bug: skia:
Change-Id: Ic51ef5706bff66482127e648f2cb9ca0826ef4ca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205260
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-04-01 18:50:13 +00:00
Florin Malita
fb4bce8322 [sksg] Refactor gradient implementation
Currently, gradients are PaintNode subclasses - which limits their
applicability to leaf DAG nodes.

In order to support generalized gradient/shader effects:

  * introduce a new Shader base class
  * refactor gradients as Shader subclasses
  * introduce ShaderPaint (to support current Gradient-as-paint use)
  * introduce ShaderEffect (to support future Gradient-as-effect use)

Tangentially:

  * rename SkSGPaintNode.h -> SkSGPaint.h
  * consolidate sksg::Color into SkSGPaint.h

Change-Id: I94ba949f4504c09cfde4a4f030d927411fdd66a2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205263
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-01 18:43:43 +00:00
Ben Wagner
f23ff10eb2 Cache data stream for CG typefaces.
CoreGraphics requires a full data copy for all operations involving font
tables or data. As a result, cache the font data stream either from font
creation or from when reconstructing the font stream from cg. This greatly
increases the speed and decreases memory use in common use cases with
variable fonts and shaping.

Change-Id: Ife0646987268cb7be3f56ba9c2aa2b62cb3777d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204720
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-01 18:29:23 +00:00
Brian Salomon
b916b7b227 GrBackendTextureImageGenerator proxy callback uses unique key to find existing GrTexture.
This removes a case where we can get the first ref on a GrGpuResource outside of
GrResourceCache.

Bug: skia:8927
Change-Id: I4068aff2f91a2e11ada059f4ef406a620140319b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204770
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-01 18:07:23 +00:00
Robert Phillips
acc10fa32b Make prepareSurfaceForExternalIO always flush
This probably isn't a huge change from current behavior but, short-term, could introduce some additional flushes.

The long-term plan is to update the drawing manager to perform partial flushes (i.e., flush only the portion of the DAG required for the target proxy) at which point performance should actually be better than the current situation (in which the entire DAG is flushed if there is any pendingIO on the target proxy).

Change-Id: I3270474344c7f982f97cf5087b2c85691bdc31d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205000
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-01 17:31:58 +00:00
Brian Salomon
5fd105778e Make GrVkGpuRTCommandBuffer::CommandBufferInfo hold textures by pending read.
Bug: skia:8927
Change-Id: I437bc2ad99248fba4b5dccfd01a5c499ce80cd31
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205261
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-01 17:27:13 +00:00
Ravi Mistry
ef6c1742b1 Remove 4 page sets that are not useful as SKPs
After this lands we will have 50 SKPs in our repository. We can now
institute an "if we add one we have to delete another one rule".

NoTry: true
Bug: skia:8653
Change-Id: I4da8d2c2ce312878bfe8ac0c6bc2f7dc4711bb85
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205262
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2019-04-01 17:26:54 +00:00
Brian Salomon
b6a3a3b245 Make lazy proxies have 2 modes for proxy/surface key management.
kSynced: Proxy and GrSurface key kept in sync.

kUnsynced: Proxy and GrSurface keys are unrelated.

This will allow cross-context image generators' lazy instantiation
callbacks to use unique keys to find any pre-existing backing GrTexture
rather than keeping an unref'ed bare pointer to the GrTexture.

Bug: skia:8927

Change-Id: Id15e2a64e8d2e56c4ce70b9399eb1d8bcea6ac9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204723
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-01 17:16:43 +00:00
Brian Osman
de206c75c2 Remove the NullGL interface (and associated test context)
Bug: skia:
Change-Id: Ie3c9ee39fc1e0a4406de085c60d8433ffb4419df
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/203708
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-01 14:56:23 +00:00
Mike Klein
ce90d6f088 more opinionated file loading in fm
Only try to parse .skp files as SkPictures, only .svg
files as SVG, and only try to parse any given file once.

This cleans up error logging from, e.g., trying to
parse a .jpg as an .svg.  Sometimes even asserts.

Change-Id: Ibfab76e201eb273107b96fcbd3af94d397862291
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204882
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-01 14:10:13 +00:00
Robert Phillips
73cc4e8d5f Temporarily restore old behavior of read/writeSurfacePixels
In the interest of only changing one thing at a time, this should fix the putImageData perf regression in Chrome. It will be followed up by a CL to change prepareSurfaceForExternalIO to always flush (which could have a different perf impact).

On Chrome's putImageData benchmark we get:

w/o this CL: avg 293.1247823176651 runs/s
w/  this CL: avg 374.8427288397461 runs/s

Bug: 942538
Change-Id: I9b9bc752532890f4313a45e5a6aa34b915d5e43d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205003
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-01 13:35:57 +00:00
skia-recreate-skps
bb482ab871 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I8b25cbacdfcddc0c55a0cbb21a31557089e0b3c5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205200
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-01 05:47:26 +00:00
skia-autoroll
289376febc Roll third_party/externals/angle2 6446c8882fa3..3115a0fc17fa (2 commits)
6446c8882f..3115a0fc17


git log 6446c8882fa3..3115a0fc17fa --date=short --no-merges --format='%ad %ae %s'
2019-03-29 ynovikov@chromium.org Sync run_code_generation_hashes.json after glslang autoroll.
2019-03-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 2ff54e34ed37..fcb845310450 (1 commits)


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

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=jlavrova@google.com

Change-Id: I02bb42efa5b6d6a179ed40dfd9611696a4d93014
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205174
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-01 05:04:26 +00:00
skia-autoroll
58c28588eb Roll ../src 871828938944..e01c3e081ff3 (525 commits)
8718289389..e01c3e081f


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

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=jlavrova@google.com

Change-Id: I27e799c130cf781674ef0a5c2f4a55965f6126ae
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205176
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-01 04:48:26 +00:00
skia-autoroll
8d1a794686 Roll third_party/externals/swiftshader 5bb034db6243..52a67b6495ce (9 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/5bb034db6243..52a67b6495ce


git log 5bb034db6243..52a67b6495ce --date=short --no-merges --format='%ad %ae %s'
2019-03-31 nicolascapens@google.com Revert "Create a recursive version of MutexLock, and apply it to EGL."
2019-03-30 bclayton@google.com Reactor: Replace ArgI for std::tuple_element
2019-03-30 bclayton@google.com SpirvShader: Improve docs on IsStorageInterleavedByLane()
2019-03-30 swiftshader.regress@gmail.com Regres: Update test lists @ 513ed1d5
2019-03-29 bclayton@google.com SpirvShader: Fixes for complex loops.
2019-03-29 bclayton@google.com SpirvShader: Handle dead code branches.
2019-03-29 schuffelen@google.com Create a recursive version of MutexLock, and apply it to EGL.
2019-03-29 bclayton@google.com VkPipeline: Debug - show ids not names in disassembly.
2019-03-29 capn@google.com Fix descriptor set allocation and update


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

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=jlavrova@google.com

Change-Id: I11941c26d4d53dc9270291b53ff51b85955f8fee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205175
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-01 04:36:56 +00:00
Mike Reed
5ee611b26f Add sample to show strokeandfill and better alternatives
Change-Id: Ib4efd6ecc8d9dda67d6032405779c02c402b370d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205121
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-01 03:11:16 +00:00
skia-recreate-skps
acb4829c1b Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I990b35f9d2918fe022a682c136b50037ce05c51f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205146
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-03-31 08:38:55 +00:00
skia-recreate-skps
83edfbe736 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I50a8b1775d6c6532f0effc76efd186b3a2b19174
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205141
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-03-31 05:50:45 +00:00
Mike Reed
2fdbeae327 Start to unify signatures: return bool
Change-Id: If4a8e06f3a176697e3f5136dfc7ab1fbb347da70
Bug: skia:8937
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205120
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-03-30 19:02:24 +00:00
Mike Reed
a6dd1ebd42 Revert "Reland "GPU support for SkMixers""
This reverts commit c9822a1818.

Reason for revert: got it

Original change's description:
> Reland "GPU support for SkMixers"
> 
> This reverts commit e6ebe7427a.
> 
> Reason for revert: want to see the breaks
> 
> Original change's description:
> > Revert "GPU support for SkMixers"
> > 
> > This reverts commit 3f2d05e7af.
> > 
> > Reason for revert: breaking the bots
> > 
> > Original change's description:
> > > GPU support for SkMixers
> > > 
> > > Bug: skia:
> > > Change-Id: Ic92f0b3c4613b3d599d59924d93cd4da8d161e89
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204445
> > > Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> > > Reviewed-by: Mike Reed <reed@google.com>
> > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > 
> > TBR=bsalomon@google.com,ethannicholas@google.com,reed@google.com
> > 
> > Change-Id: Ice7c470a57a3ae55215288718aa6390592bd85e5
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: skia:
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204724
> > Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> 
> TBR=bsalomon@google.com,ethannicholas@google.com,reed@google.com
> 
> Change-Id: If51303bc320fc488196ef9e696df8480bfbd31f6
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204962
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=bsalomon@google.com,ethannicholas@google.com,reed@google.com

Change-Id: I509687bcfe8fde6760b74c566e4405ff12f9cc9e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204963
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-03-30 15:14:15 +00:00
Mike Reed
c9822a1818 Reland "GPU support for SkMixers"
This reverts commit e6ebe7427a.

Reason for revert: want to see the breaks

Original change's description:
> Revert "GPU support for SkMixers"
> 
> This reverts commit 3f2d05e7af.
> 
> Reason for revert: breaking the bots
> 
> Original change's description:
> > GPU support for SkMixers
> > 
> > Bug: skia:
> > Change-Id: Ic92f0b3c4613b3d599d59924d93cd4da8d161e89
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204445
> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> > Reviewed-by: Mike Reed <reed@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> 
> TBR=bsalomon@google.com,ethannicholas@google.com,reed@google.com
> 
> Change-Id: Ice7c470a57a3ae55215288718aa6390592bd85e5
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204724
> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

TBR=bsalomon@google.com,ethannicholas@google.com,reed@google.com

Change-Id: If51303bc320fc488196ef9e696df8480bfbd31f6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204962
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-03-30 14:56:16 +00:00
skia-recreate-skps
265fd3de35 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I9eafd567374bb10125a4a1d08de07c2fd40d2441
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204888
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-03-30 05:48:23 +00:00