Commit Graph

48139 Commits

Author SHA1 Message Date
Ben Wagner
e8ffb088c1 Close file before writing in SkVMTest.
On Windows each time the test is run one gets

sk_fopen: fopen("resources\SkVMTest.expected", "wb") returned nullptr (errno:22): Invalid argument

due to 'expected' holding a read lock on the file when trying to open
the same file for writing. Windows locks files aggressively and in this
case there is no good reason to keep the read access when trying to
truncate and write to this file path.

This also changes the logic to only update the file in the error case
when the content would actually change. Previously it seems this file
would be re-written (usually with the same content) every time this test
ran.

Change-Id: I9c96f1e7e0692e57326fec351c7353c423014c9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287381
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-05 15:10:09 +00:00
Robert Phillips
3d311a983b Switch some GMs over to using create_portable_typeface
This is in response to some Win7 vs Win10 font selection diffs on the compositor_quads_filter GM.

Change-Id: I9564d8a305b0bf773ddb31597b29878e0bc3323d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287796
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-05-05 13:59:48 +00:00
John Stiles
70941591b8 Remove unnecessary SK_SIZE_T_SPECIFIER macro.
This macro was only necessary to support Visual Studio 2013, which did
not yet support %zu format specifiers. Skia no longer compiles on
Visual Studio 2013.

Change-Id: Ie32a66c7a8e022b8596272476ca3547df1f89a55
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287738
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-05 13:25:28 +00:00
Nathaniel Nifong
1bedbeb081 Pass 4f colors to private functions with float pointers
Change-Id: I4534a246c37870750298d39edcbc869781dc1008
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286880
Commit-Queue: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-05-05 13:17:28 +00:00
Herb Derby
d16e322f02 Add subspan() to SkSpan
Change-Id: I1ac2ec8cf22a96c50261ca3863edeb0ed3c24dd6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287579
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-05-05 13:02:48 +00:00
skia-recreate-skps
96d31defe3 Update Go Deps
Change-Id: I3fec3b8ffc44505893ead6a824db2d60a80a2769
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287735
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-05 05:38:28 +00:00
skia-autoroll
0ce0fd07a6 Roll third_party/externals/angle2 040e4f6fcf54..41f7bcce04a8 (14 commits)
040e4f6fcf..41f7bcce04

git log 040e4f6fcf54..41f7bcce04a8 --date=short --first-parent --format='%ad %ae %s'
2020-05-04 cclao@google.com Vulkan: Add missing cache flush
2020-05-04 jmadill@chromium.org Vulkan: Update VMA integration.
2020-05-04 sugoi@google.com Fix clearing the program's validation-related cache too early
2020-05-04 spang@chromium.org Fix VulkanExternalImageTest on SwiftShader
2020-05-04 jonahr@google.com Fix issue with missing step info in generate_stats.py
2020-05-04 spang@chromium.org Vulkan: Move ICD overrides to a common place
2020-05-04 spang@chromium.org Fix wrong date in ANGLE_external_objects_fuchsia revision history
2020-05-04 cnorthrop@google.com Tests: Add program pipeline object tests
2020-05-04 jmadill@chromium.org EGLWindow: Clean up some init attribute code.
2020-05-04 courtneygo@google.com Implement setBinaryRetrievableHint
2020-05-04 jmadill@chromium.org Expose EGL 1.5.
2020-05-04 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 694e21400ee5..b798cfa374eb (9 commits)
2020-05-04 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src c0f34c020d9d..17019fa23604 (2 commits)
2020-05-04 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src b179a50e9c9c..2f609275c00c (8 commits)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: bsalomon@google.com
Change-Id: I7d09fb63574863ac1706277c5491305a7c2c34c7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287729
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:59:58 +00:00
skia-autoroll
bc8982c866 Roll third_party/externals/swiftshader b798cfa374eb..c4bbd378e95b (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/b798cfa374eb..c4bbd378e95b

git log b798cfa374eb..c4bbd378e95b --date=short --first-parent --format='%ad %ae %s'
2020-05-04 capn@google.com Remove typeinfo from GLES exported symbols

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bsalomon@google.com
Change-Id: I2e15f1c88a7921f3976b9d001b8a79201d992026
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287728
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:55:48 +00:00
skia-autoroll
e6e61a0fe4 Roll ../src 06a27cbea2e5..abf0e59f0c48 (412 commits)
06a27cbea2..abf0e59f0c


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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: bsalomon@google.com
Change-Id: I8a1136206b4bfa923e1b86b71b9c93d6c989a299
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287726
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:53:48 +00:00
skia-autoroll
45ce5a2198 Roll third_party/externals/dawn ccc40f6ffaa6..07328ba0bbce (6 commits)
https://dawn.googlesource.com/dawn.git/+log/ccc40f6ffaa6..07328ba0bbce

git log ccc40f6ffaa6..07328ba0bbce --date=short --first-parent --format='%ad %ae %s'
2020-05-04 yunchao.he@intel.com Add validation tests for texture resource tracking - 2
2020-05-04 yunchao.he@intel.com Add validation code for texture subresource usage tracking
2020-05-04 yunchao.he@intel.com Add resource usage tests in a single draw/dispatch
2020-05-04 cwallez@chromium.org DescriptorSetAllocation.h: Add missing include
2020-05-04 cwallez@chromium.org Use unordered_set<std::string> for deprecation warnings
2020-05-04 yunchao.he@intel.com Fix incorrect validation error in CommandBufferStateTracker

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 39281fb710c3..39281fb710c3
  https://chromium.googlesource.com/external/github.com/google/shaderc 41f271e6139c..41f271e6139c
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637

Created with:
  gclient setdep -r third_party/externals/dawn@07328ba0bbce

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Bug: None
Tbr: cwallez@google.com
Change-Id: I5f4cfa385623d881d55de1ac04c10c51ca6de6d1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287727
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-05 04:48:28 +00:00
Brian Salomon
41e377d1ba Revert "Support large kernels on GPU in matrix convolution effect"
This reverts commit 1ed4391fe7.

Reason for revert: Looks like some bad images showed up at gold.skia.org and that the ProcessorCloneTest is crashing on Windows bots:
https://logs.chromium.org/logs/skia/4bfabe0bad476911/+/steps/dm/0/stdout

Original change's description:
> Support large kernels on GPU in matrix convolution effect
> 
> Currently matrix convolution falls back to CPU execution for large kernels, due to the argument limit for fragment shaders.
> 
> Now for large kernels, we store them in a texture and sample them in a shader to sidestep the limit.
> 
> Change-Id: Icc069a701ea8e9cd0adf75f4bfd149fd22e31afd
> Bug: skia:8449
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263495
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Adlai Holler <adlai@google.com>

TBR=robertphillips@google.com,michaelludwig@google.com,adlai@google.com

Change-Id: Iaf4858131046a343481bcf0fd9cc3919d9fc2bda
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8449
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287736
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-05 01:28:11 +00:00
Greg Daniel
6d2febd632 Reland "Add create backend texture with color upload bench."
This reverts commit 1ff415d5a1.

Reason for revert: relanding with fix

Original change's description:
> Revert "Add create backend texture with color upload bench."
> 
> This reverts commit 690b4c4644.
> 
> Reason for revert: breaking bots
> 
> Original change's description:
> > Add create backend texture with color upload bench.
> > 
> > Change-Id: Id4994cb809d6e19ca511b63dba71b45257eca927
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287618
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> 
> TBR=egdaniel@google.com,robertphillips@google.com
> 
> Change-Id: I2ac38977abc0004b38a94dacf0a235ae4fbac5d3
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287636
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

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

Change-Id: I287a1d829d4d861d149b0f1d9adf556a38e44abb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287638
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-05 00:43:52 +00:00
Brian Osman
d5f937bfca Add min/max/clamp/saturate intrinsics to ByteCodeGenerator
Change-Id: I357f9b0d3f2c8315b67a9ead6ddbb6633524ec3d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287577
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-04 20:45:27 +00:00
Julia Lavrova
9588a643d9 TextHeightBehavior implemented
Bug: skia:10201
Change-Id: I5398836d2068164282bab77fe8448654a72050d7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286456
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-05-04 20:21:07 +00:00
Greg Daniel
1ff415d5a1 Revert "Add create backend texture with color upload bench."
This reverts commit 690b4c4644.

Reason for revert: breaking bots

Original change's description:
> Add create backend texture with color upload bench.
> 
> Change-Id: Id4994cb809d6e19ca511b63dba71b45257eca927
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287618
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

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

Change-Id: I2ac38977abc0004b38a94dacf0a235ae4fbac5d3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287636
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-04 20:20:29 +00:00
Michael Ludwig
4fc7c5f36a Add drawRRect and drawShape(GrShape) to GrSWMaskHelper
Change-Id: I68d586b44f3207c330e5c0505659457c9d05074e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287384
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-05-04 20:00:17 +00:00
Jonathan Backer
40c683a24a Tune how quickly we drop unused atlases
This will drop the atlases after about 128 frames / 24 Hz video ~= 5
seconds of youtube video.

Bug: https://crbug.com/1058905
Change-Id: Idde2f6b4a2c035b3d2f7ca5d0fb556fa7e4c7905
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287599
Commit-Queue: Jonathan Backer <backer@chromium.org>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Auto-Submit: Jonathan Backer <backer@chromium.org>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-05-04 19:45:27 +00:00
Brian Salomon
c15c7040e4 Ensure ownership of src in SkPathRef::CreateTransformedCopy
When the src and dst are the same and other threads own all
other refs to the pathref the existing code is unsafe.

Change-Id: I44810877b98d9a365fe82232e3e2288a7111a1ff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287616
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-04 19:44:27 +00:00
Chris Dalton
f03781b6a9 Update canvaskit to use the new path iterator
Change-Id: I248396f7c0d176f846e0b87a5fed5b7e20063aa2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287598
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-04 19:36:27 +00:00
Greg Daniel
690b4c4644 Add create backend texture with color upload bench.
Change-Id: Id4994cb809d6e19ca511b63dba71b45257eca927
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287618
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-05-04 19:33:17 +00:00
Adlai Holler
1ed4391fe7 Support large kernels on GPU in matrix convolution effect
Currently matrix convolution falls back to CPU execution for large kernels, due to the argument limit for fragment shaders.

Now for large kernels, we store them in a texture and sample them in a shader to sidestep the limit.

Change-Id: Icc069a701ea8e9cd0adf75f4bfd149fd22e31afd
Bug: skia:8449
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263495
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Adlai Holler <adlai@google.com>
2020-05-04 19:26:48 +00:00
Chris Dalton
8d3eb24f2e Delete ToolUtils::set_path_pt
This can be done more simply with SkPathRef::Editor::writablePoints.

Change-Id: Icef31bf3a6cc2c8c4ef6da36167c574c73a0d944
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287497
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-04 19:00:57 +00:00
Kevin Lubick
8a2f29eae7 [infra] use more unique task id for perf upload
Change-Id: Ic68adf8cb8444b0ad2a704aecd0eb4362a11e27c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287386
Reviewed-by: Ravi Mistry <rmistry@google.com>
2020-05-04 17:19:03 +00:00
Chris Dalton
4b72661368 Remove RawIter usage cases from SkPath.cpp
Change-Id: I0a41c640f1eb423eb3ce53a36055226463991fcd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287004
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-04 16:27:50 +00:00
Brian Osman
2c9cc2f788 Blacklist glyph_pos GMs on the various cache-test configs
These are flaky on the Quadro bots, leading to errors in the cache
configs (that expect pixel-perfect replays).

Bug: skia:8534
Change-Id: I1ac06f5abbb13955951be9c9a8aad18fe1f00aa6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287382
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-05-04 15:50:29 +00:00
Brian Salomon
f686fa9af9 Make backdrop_hintrect_clipping GM use kClamp tile mode
Change-Id: Ic9d9200a7c1346d0e6bd70029331f9213db5e374
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287380
Auto-Submit: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-05-04 15:25:19 +00:00
Ben Wagner
b71e7121ab Fix potential leak of DWriteFontTypeface.
While disposing DWriteFontTypeface the base class must be disposed, but
if the resource releases fail before that then they currently return
instead of continuing. This means the DWriteFontTypeface is never
deleted.

Change-Id: I842a74a2ea5141210fae0cbd038f62266156c1c0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286816
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2020-05-04 15:12:49 +00:00
Brian Osman
3479a955fa Add declaration for pow() to sksl_interp.inc
... and a comment to try and prevent any more of these.

Change-Id: I58ddd0523710c66600020e9d4e2b93614a5f9d01
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287379
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-05-04 15:08:30 +00:00
Greg Daniel
b698ad3f2b Add d3d pipeline state cache
Change-Id: Iab9d4288a54d0743dfbf94f078b206e5df3b5f87
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287378
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-05-04 15:05:59 +00:00
Brian Osman
8842b37fc7 Adding some intrinsics to the interpreter
Includes all of the vectorized comparisons, as well as the selecting
and lerping variants of mix. The previous implementations of lerping mix
were available based on the compiler front-end, this moves them to the
byte code generator, so they're available in runtime effects (not just
generic interpreter programs).

Change-Id: I88d10c8a18a7e63e49acac8181b687e2b40ad66b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287008
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-05-04 15:00:29 +00:00
Jim Van Verth
280d4f76c7 Add rendertarget clear to D3D.
Change-Id: Ifccabb59f7cd9faa4bcbfc89785e9ee739a0e076
Bug: skia:9935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286042
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-05-04 14:48:29 +00:00
Ethan Nicholas
9fdab9fea2 fixed an SkSL ASAN issue
Bug: oss-fuzz:20029
Change-Id: I8fcd6ab6a76dd003f90be6751bb9abaf21b2a0b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286937
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2020-05-04 14:41:49 +00:00
Brian Osman
4dab280c28 Add some missing declarations to SkSL .inc files
Some new intrinsics were recently implemented in ByteCodeGenerator.
Those are visible to runtime effects via sksl_gpu.inc, but not to
generic interpreter prorgrams - added them to sksl_interp.inc to fix
that. (atan, fract).

length() is similar, but it still had a pure SkSL implementation. Remove
that, so that generic interpreter programs get the builtin version.

All of the others were missing half-precision overloads of existing
intrinsics. These don't matter much, but (I think) prevent confusing
type errors when calling these intrinsics with half-precision arguments
and getting float-precision results.

Change-Id: I87270efc2f0520d1ac2f18eee890147b5b1c93d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287376
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-04 14:06:24 +00:00
Florin Malita
3facc9c886 [skottie] Non-legacy brightness effect
Includes POW intrinsic plumbing.

Change-Id: Ida961718e28822c8559f17f97003f67082dd44cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287156
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-05-04 14:04:24 +00:00
Michael Ludwig
3d919c5301 Fix uninitialized read in simplifyRect()
Bug: oss-fuzz:21976
Change-Id: I635b9092bc4a30bb6a23ddcf1430a3ec06b9d598
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287377
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-05-04 14:01:19 +00:00
Robert Phillips
2329db1171 Switch to using the gpu-ddl sink(s) to generate the DDL images
The previous settings used the ddl-via - which doesn't use threads as effectively.

Change-Id: I82a0632d99c772421afc645f53bb749420275460
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285812
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-05-04 13:59:19 +00:00
skia-autoroll
cdf23dd9f1 Roll third_party/externals/dawn 303a3daf0dec..ccc40f6ffaa6 (1 commits)
https://dawn.googlesource.com/dawn.git/+log/303a3daf0dec..ccc40f6ffaa6

git log 303a3daf0dec..ccc40f6ffaa6 --date=short --first-parent --format='%ad %ae %s'
2020-05-04 yunchao.he@intel.com Fix a bug in ResourceUsageTrackingTests

Also rolling transitive DEPS:
  https://chromium.googlesource.com/chromium/src/third_party/markupsafe 8f45f5cfa000..8f45f5cfa000
  https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang 39281fb710c3..39281fb710c3
  https://chromium.googlesource.com/external/github.com/google/shaderc 41f271e6139c..41f271e6139c
  https://chromium.googlesource.com/chromium/src/third_party/jinja2 b41863e42637..b41863e42637

Created with:
  gclient setdep -r third_party/externals/dawn@ccc40f6ffaa6

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Bug: None
Tbr: cwallez@google.com
Change-Id: I70cf6bd9934a13a099fc81e693e7f86237a393eb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287278
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-04 06:10:58 +00:00
skia-recreate-skps
a1184aca58 Update Go Deps
Change-Id: I1cf3e926e95318d15840159639b1b3279a9125c3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287256
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-04 05:35:23 +00:00
skia-autoroll
bd87bf432d Roll third_party/externals/angle2 df31624eaf3d..040e4f6fcf54 (14 commits)
df31624eaf..040e4f6fcf

git log df31624eaf3d..040e4f6fcf54 --date=short --first-parent --format='%ad %ae %s'
2020-05-01 tobine@google.com Vulkan: Minor command buffer refactor
2020-05-01 ianelliott@google.com Vulkan: Improve viewport and scissor for pre-rotation
2020-05-01 jmadill@chromium.org Work around strange git cl format issue.
2020-05-01 geofflang@google.com Handle 3D texture entire-mip initialization for FBO attachments
2020-05-01 cnorthrop@google.com Capture/Replay: Refactor default uniform handling for arrays
2020-05-01 tobine@google.com Vulkan: Migrate trace events and occlusion queries
2020-05-01 ynovikov@chromium.org doc: fix link to pre-commit try waterfall
2020-05-01 jmadill@chromium.org Capture/Replay: Use BindAttribLocation to force MEC compat.
2020-05-01 jmadill@chromium.org Validation: Fix some function types.
2020-05-01 jmadill@chromium.org Revert "Add type for attribute locations."
2020-05-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 39281fb710c3..2c53baedbb64 (2 commits)
2020-05-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 49ca250b44c6..2e1d208ed9de (3 commits)
2020-05-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src 70eeffc7ca3d..b179a50e9c9c (8 commits)
2020-05-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 98d2cab108ce..694e21400ee5 (5 commits)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: bsalomon@google.com
Change-Id: Idb9e07df50cd93543c2c61ffa1b715e36aeecde5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287198
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-04 04:50:29 +00:00
skia-autoroll
48eaa24e4d Roll ../src b39ec968b468..06a27cbea2e5 (419 commits)
b39ec968b4..06a27cbea2


Created with:
  gclient setdep -r ../src@06a27cbea2

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: bsalomon@google.com
Change-Id: I8083ec91c1f9ddd3bdfbda303aa9a73fc3f17a65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287196
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-04 04:41:28 +00:00
skia-autoroll
a92362484c Roll third_party/externals/swiftshader 694e21400ee5..b798cfa374eb (9 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/694e21400ee5..b798cfa374eb

git log 694e21400ee5..b798cfa374eb --date=short --first-parent --format='%ad %ae %s'
2020-05-02 capn@google.com Enable the shaderStorageImageArrayDynamicIndexing feature
2020-05-02 capn@google.com Enable the shaderStorageBufferArrayDynamicIndexing feature
2020-05-02 capn@google.com Enable the shaderSampledImageArrayDynamicIndexing feature
2020-05-02 capn@google.com Enable the shaderUniformBufferArrayDynamicIndexing feature
2020-05-02 capn@google.com Implement dynamic descriptor array indexing
2020-05-02 capn@google.com Skip image sampling if no SIMD lanes are active
2020-05-01 capn@google.com Move the OFFSET() macro to Reactor
2020-05-01 amaiorano@google.com Regres: use Subzero backend by default
2020-04-30 bclayton@google.com Update Marl to 3c643dd4c

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bsalomon@google.com
Change-Id: I6be990f565bdf65c94a68cba2e462ccbe762b2ec
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287197
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-05-04 04:37:23 +00:00
skia-recreate-skps
05c1e1c474 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: Ib98f93a3263114dc3aaa0603cc15c881a77bacda
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287150
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-03 08:43:56 +00:00
skia-recreate-skps
57f289d742 Update Go Deps
Change-Id: Ica0c5f35093bae2ca388cc539df14dc5018ef33b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287146
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-03 05:41:16 +00:00
skia-recreate-skps
80cab81409 Update Go Deps
Change-Id: I860add063c9c11c1b2e5fb9126bc9e336e6a653e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287085
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-05-02 05:33:57 +00:00
Chris Dalton
64964bb115 Update GrTriangulator to use SkPathPriv::Iterate
Change-Id: I0998f22e3ce958fd651c359c930a2e48af27ce73
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/285985
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-05-01 22:35:28 +00:00
Ben Wagner
c19459bf1e Don't trust glyph runs in XPS.
In XPS if a glyph is out of range, ignore it. Also resolve the default
font in the new way, removing the last user of SkTypefacePriv.

In PDF handle fonts with zero glyphs correctly.

Rewrite SkBitSet to keep track of its size, move properly, and make it
more obvious when certain checks are actually made instead of relying on
undefined behavior.

Add a test in a GM to ensure we don't draw anything when a glyph is
out of range on all backends.

Fix the DirectWrite SkScalerContext to pass this new test for
consistency.

Bug: chromium:1071311
Change-Id: I2583970bf1425f59d0d64e3dd7d28109991f9ea9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286776
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2020-05-01 22:17:17 +00:00
Mike Klein
33951266c5 improve QOL of local fm_driver runs
The default Task Driver logging gets in the way on the console, so I've
sent it to /dev/null for local runs.  We control the horizontal and the
vertical.

Instead, print out each isolated failure and how to reproduce it:

    out/fm -i resources -b cpu -s ducky_yuv_blend #failed:
    	Resource "resources/images/ducky.jpg" not found.
    	../tools/fm/fm.cpp:573: fatal error: "Image(s) failed to load."

    	Signal 5:
    	_sigtramp (+0x1d)
    	sk_abort_no_print() (+0x5)
    	std::__1::__function::__func<...
    	_GLOBAL__sub_I_fm.cpp (+0x0)
    	main (+0x12d5)

    out/fm -i resources -b cpu --skvm true -s ducky_yuv_blend #failed:
    	Resource "resources/images/ducky.jpg" not found.
    	../tools/fm/fm.cpp:573: fatal error: "Image(s) failed to load."

    	Signal 5:
    	_sigtramp (+0x1d)
    	sk_abort_no_print() (+0x5)
    	std::__1::__function::__func<...
    	_GLOBAL__sub_I_fm.cpp (+0x0)
    	main (+0x12d5)

    2 runs of out/fm failed after retries.
    exit status 1

Bot runs still look ok,
https://task-driver.skia.org/td/TEaSLB6jtmRq5XDBUIwS?ifNotFound=https%3A%2F%2Fchromium-swarm.appspot.com%2Ftask%3Fid%3D4bea6af25506c010

Change-Id: I56adacdaeed5545785a3096a4e495eb524db442f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287017
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-05-01 21:54:47 +00:00
Brian Salomon
f1c9eaed95 Allow multiple closed observers on GrOpsTask.
Bug: skia:10188

Change-Id: Ibed96f10c07feddbbf1e78d014c8ea346c91e53c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287002
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-05-01 21:40:47 +00:00
Chris Dalton
c259202113 Remove SkPathVerb::kDone
This was meant as a "stop" verb for the old iterators. With the new
iterator, it simply leads to more SkUNREACHABLEs and SkASSERTs.

Change-Id: I9edd0cefaf4aff782f753560aebd528ed7f4ec04
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/287043
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-05-01 21:27:18 +00:00
Mike Klein
962020fe39 simplify binary ops too
Rename apply() to unary(), then add binary().

Fix unary to calculate N=base-inst+1.

Convert to simpler `auto&& fn` mode by renaming
approx_atan(y,x) to approx_atan2.  Now we can pass
functions, lambdas, non-lambda functors, whatever.

Change-Id: I17a6aa137f224edc0accd0509c5023a30980fe39
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/286900
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-05-01 20:43:09 +00:00