Commit Graph

60083 Commits

Author SHA1 Message Date
Kevin Lubick
1d3fe5b289 Roll Dawn from 088a600b0367 to 17b1a4525363 (147 revisions)
https://dawn.googlesource.com/dawn.git/+log/088a600b0367..17b1a4525363

2022-04-14 bsheedy@google.com Split large CTS logs
2022-04-14 bclayton@google.com Roll CTS and update expectations
2022-04-14 yunchao.he@intel.com Add data verification for e2e tests in RequiredBufferSizeInCopyTests.cpp
2022-04-14 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from de965415a139 to 1d450ae99a0f (2 revisions)
2022-04-14 bclayton@google.com tools: Add resultsdb package
2022-04-14 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 01c0bc215f4a to 871878352630 (4 revisions)
2022-04-14 bclayton@google.com tools: Add buildbucket package
2022-04-14 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c9be322642fb to 7e9ab0686bf4 (5 revisions)
2022-04-14 shaobo.yan@intel.com Skip Unneccessary GetPendingCommandContext() Call To Save An Extra Fence
2022-04-14 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 011bba68c819 to de965415a139 (2 revisions)
2022-04-14 lokokung@google.com Reland "Add render pipeline cache key generation for Vulkan."
2022-04-13 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from eeb396535317 to 01c0bc215f4a (22 revisions)
2022-04-13 rharrison@chromium.org Fix path for stamp file in fuzzer corpuse generation
2022-04-13 lokokung@google.com Changes dependency on vulkan-tools typemap header.
2022-04-13 cwallez@chromium.org Roll third_party/webgpu-cts/ dcba3ac6b..5e83d8349 (25 commits)
2022-04-13 enga@chromium.org Revert "Add render pipeline cache key generation for Vulkan."
2022-04-13 enga@chromium.org Add WebGPU Adapter tags to the expectations file
2022-04-13 dsinclair@chromium.org Fixup CQ and Kokoro lint mismatches.
2022-04-13 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 9c0d5b64c767 to c9be322642fb (4 revisions)
2022-04-13 cwallez@chromium.org Change Dawn samples to use surface-based swapchains.
2022-04-13 dsinclair@chromium.org Fixup kokoro lint issue
2022-04-13 bajones@chromium.org Refactored how debug labels are set with Vulkan
2022-04-13 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 3f37fd8e4fbe to 011bba68c819 (3 revisions)
2022-04-13 dsinclair@chromium.org Remove redundant virtual.
2022-04-13 lokokung@google.com Add render pipeline cache key generation for Vulkan.
2022-04-12 lokokung@google.com Adds device-side cache key generation.
2022-04-12 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 9b2a1bfa4434 to 9c0d5b64c767 (5 revisions)
2022-04-12 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 620982155d55 to 3f37fd8e4fbe (1 revision)
2022-04-12 bclayton@google.com tools: Add gitiles package
2022-04-12 dsinclair@chromium.org Remove redundant override in include/dawn.
2022-04-12 dsinclair@chromium.org Fix build/include_order in include/dawn.
2022-04-12 dsinclair@chromium.org Remove fuzzer CPPLINT file.
2022-04-12 dsinclair@chromium.org Fixup explicit on some constructors.
2022-04-12 dsinclair@chromium.org Add explicit in include/dawn
2022-04-12 cwallez@chromium.org Rework dawn/native/ProcTable.cpp's template to better handle functions.
2022-04-12 ukai@google.com use stamp file for tint_generate_wgsl_corpus
2022-04-12 bclayton@google.com tools: Minor improvements to the git package
2022-04-12 bclayton@google.com tools: Flesh out the gerrit package
2022-04-12 cwallez@chromium.org Make WebGPU CTS scripts use Python3
2022-04-12 bclayton@google.com kokoro: Check go tool unit tests
2022-04-12 bclayton@google.com tools: Remove old tint test runner
2022-04-12 bclayton@google.com tint: Fix doxygen failure
2022-04-12 cwallez@chromium.org dawn.node: Make run-cts --print-stdout print the run's stdout/err
2022-04-12 dsinclair@chromium.org Remove extra CPPLINT.cfg files.
2022-04-12 dsinclair@chromium.org Fix copyright issues in src/include forwarding headers.
2022-04-12 dsinclair@chromium.org Fix missing copyrights in src/dawn.
2022-04-12 dsinclair@chromium.org Add missing include/webgpu copyrights.
2022-04-12 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from ca8ce3e715c2 to 9b2a1bfa4434 (6 revisions)
2022-04-12 ynovikov@chromium.org Revert "Ignore VUID-vkCmdDraw-None-06538 VVL message"
2022-04-12 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from b120ab6d49f4 to eeb396535317 (12 revisions)
2022-04-12 enga@chromium.org Mark webgpu:shader,execution,shader_io,compute_builtins:inputs:* failing on Windows x86 NVIDIA
2022-04-12 senorblanco@chromium.org GLES: revert part of the view format reinterpretation on GLES.
2022-04-12 bajones@chromium.org Enable Queue, Device labels to be set. (Take 2)
2022-04-11 bclayton@google.com tint: Re-enable doxygen
2022-04-11 bclayton@google.com dawn/node: Fix GCC warning
2022-04-11 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from d15c42482560 to 620982155d55 (2 revisions)
2022-04-11 amaiorano@google.com tint: Make GLSL backend consistent with the others
2022-04-11 amaiorano@google.com tint: spirv writer: add a GeneralImpl to be consistent with HLSL and MSL backends
2022-04-11 bclayton@google.com dawn/node: Define NAPI_DISABLE_CPP_EXCEPTIONS
2022-04-11 bclayton@google.com tint: More doxygen fixes
2022-04-11 bclayton@google.com Roll CTS and update expectations
2022-04-11 dsinclair@chromium.org Enable build/header_guard
2022-04-11 bclayton@google.com tint: Fix doxygen errors
2022-04-11 cwallez@chromium.org CMake: Add support with Swiftshader with DAWN_ENABLE_SWIFTSHADER
2022-04-11 cwallez@chromium.org Move samples/ under src/dawn/samples/
2022-04-11 amaiorano@google.com tint: Simplify backend Sanitize functions by passing in Options
2022-04-11 dsinclair@chromium.org Fixup include directory errors in src/dawn.
2022-04-11 dsinclair@chromium.org Enable empty_if_body lint.
2022-04-11 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 60e6ec01372a to ca8ce3e715c2 (1 revision)
2022-04-11 amaiorano@google.com Add ifdefs for Tint API usage that may not be available
2022-04-11 dsinclair@chromium.org Fix build/include lint in samples/
2022-04-11 bclayton@google.com tint: Standardize the way we forward-declare
2022-04-11 dsinclair@chromium.org Fixup readability/braces lint warning.
2022-04-11 dsinclair@chromium.org Enable runtime/printf
2022-04-11 dsinclair@chromium.org Fixup build/include issues in src/dawn
2022-04-11 dsinclair@chromium.org Create more targeted CPPLINT.cfg files.
2022-04-11 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 1b94c585682b to b120ab6d49f4 (1 revision)
2022-04-11 bclayton@google.com tools: Add src/cts/result
2022-04-11 bclayton@google.com tools: Simplify gerrit-stats and snippets
2022-04-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 727cd8ef6634 to 1b94c585682b (1 revision)
2022-04-10 dsinclair@chromium.org Combine contributing files.
2022-04-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 19082e8adae0 to 60e6ec01372a (2 revisions)
2022-04-09 senorblanco@chromium.org OpenGLES: simulate glTextureView() with texture-to-texture copies.
2022-04-09 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from d4572ee122d4 to 19082e8adae0 (1 revision)
2022-04-09 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 09a24f3d53cd to 727cd8ef6634 (3 revisions)
2022-04-09 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 2ce1d878f9c9 to d4572ee122d4 (6 revisions)
2022-04-09 lokokung@google.com Add compute pipeline cache key generation for Vulkan.
2022-04-08 amaiorano@google.com tint: Fix copy instead of move of ArrayLengthFromUniform::used_size_indices
2022-04-08 dsinclair@chromium.org Fixup whitespace/comments issues.
2022-04-08 amaiorano@google.com tint: handle CRLF on Windows when splitting WGSL source
2022-04-08 bclayton@google.com CMake: Fix sanitizer builds
2022-04-08 bclayton@google.com Kokoro: Ensure that no CRLF creep in
2022-04-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 3cea7fcc01ce to 09a24f3d53cd (2 revisions)
2022-04-08 cwallez@chromium.org dawn.node: Detach buffer mappings on GPUBuffer.destroy.
2022-04-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from acc216fde2a5 to 2ce1d878f9c9 (4 revisions)
2022-04-08 bclayton@google.com Normalize all line endings to LF
2022-04-08 bclayton@google.com Kokoro: install GLFW dependencies
2022-04-08 dsinclair@chromium.org Re-enable lint presubmit
2022-04-08 jiawei.shao@intel.com Always use 0 for the Depth operand of OpTypeImage
2022-04-08 cwallez@chromium.org Validate that alignment limits are powers of two.
2022-04-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 17311a73f6fb to acc216fde2a5 (7 revisions)
2022-04-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from d09282e5c609 to d15c42482560 (2 revisions)
2022-04-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from ba04fcfd10c7 to 3cea7fcc01ce (6 revisions)
2022-04-07 rharrison@chromium.org Clean up contributing documentation post tint merge
2022-04-07 bclayton@google.com CMake: Fix building of tint with fuzzers enabled
2022-04-07 dsinclair@chromium.org Minor formatting changes.
2022-04-07 enga@chromium.org Make texture view default format robust against invalid aspects
2022-04-07 bclayton@google.com Remove standalone.gclient
2022-04-07 bclayton@google.com Move kokoro dir under infra
2022-04-07 bclayton@google.com .vscode/tasks.json - Add 'cmake gen'
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/reader.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/reader/spirv.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/ast.
2022-04-07 bclayton@google.com tools: Replace copy-pasta scripts
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/inspector.
2022-04-07 cwallez@chromium.org Add top-level OWNERS and scope Tint owners more tightly.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/reader/wgsl.
2022-04-07 amaiorano@google.com Ignore tools/cmake*
2022-04-07 bclayton@google.com tools/src: Fix up paths post-tint-merge
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/fuzzers.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/resolver.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/diagnostic.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/utils.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/transform.
2022-04-07 amaiorano@google.com spirv: Remove AssembleFailure() tests
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/sem.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/writer.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/val
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/writer/glsl.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/writer/hlsl.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/writer/spirv.
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/writer/msl.
2022-04-07 jrprice@google.com Add support for increment/decrement statements
2022-04-07 jrprice@google.com wgsl: Add support for increment/decrement statements
2022-04-07 jrprice@google.com resolver: Validate increment/decrement statements
2022-04-07 jrprice@google.com ast: Add an IncrementDecrementStatement node
2022-04-07 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 746dd371204b to 17311a73f6fb (9 revisions)
2022-04-07 enga@chromium.org Implement rendering with view format reinterpretation
2022-04-07 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 9c16e141823e to d09282e5c609 (3 revisions)
2022-04-07 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 152616eedcfd to ba04fcfd10c7 (6 revisions)
2022-04-07 cwallez@chromium.org Remove lintcpp from presubmits since it fails on all Dawn files
2022-04-07 dsinclair@chromium.org Condense namespaces in tint/writer/wgsl.
2022-04-07 cwallez@chromium.org DEPS: add the clang-format hook on windows back.
2022-04-07 bclayton@google.com OWNERS: Move bclayton to core owners
2022-04-06 rharrison@chromium.org Remove hooks that are causing *-rel builds to fail
2022-04-06 jrprice@google.com Add Tint's .clang-format file to src/tint

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 bajones@google.com,brianosman@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: bajones@google.com,brianosman@google.com
Test: Test: tint_unittests
Change-Id: Ib0786ce79bc994d7228d6967b27f11554cd9dfbb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/530180
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-14 19:38:26 +00:00
Ben Wagner
42d514781d Fix return documentation for SkFont::measureText.
There seems to be a copy-paste issue with the documentation for the
return value of SkFont::countText. SkFont::countText returns the number
of glyphs, measureText returns the sum of the default advances.

Change-Id: Id3c9008c20e7b4b8ad4f1d834df19183a9b2bf1e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/530046
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-14 19:15:49 +00:00
Sergey Ulanov
69021b0a95 [Fuchsia] Fix reference loop in SkFontMgr_Fuchsia
Previously SkFontMgr_Fuchsia could be leaked because it kept cache of
loaded fonts and these fonts kept reference to SkFontMgr_Fuchsia. Fixed
this issue by moving SkData caching logic to a separate class, which
breaks the loop.

Bug: chromium:1287367
Change-Id: I09208502d61273c86bb6d06ecf7affd5f18ffb7e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529937
Auto-Submit: Sergey Ulanov <sergeyu@chromium.org>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-14 19:10:54 +00:00
Kevin Lubick
75c03895b6 Remove literal operator from SkVM
http://engdoc/eng/doc/devguide/cpp/cpp11#disallowlist says no
user-defined literal expressions.

Change-Id: I71925f0bb3da8d2f457998247ed97aa99a4672f3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/530236
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-04-14 19:10:39 +00:00
Ben Wagner
17c639f028 Restructure scaledemoji_rendering gm.
Staticaly define what the tests will be to make it easier to add more
and tweak them when testing.

Also remove the attempt at left aligning the drawing. This was actually
a bit confusing since it caused positioning differences between the
bitmap and outline versions of the font.

Change-Id: Idc6da6f4628755154d186cc1e62daed28a65aaf5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529750
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-14 18:51:12 +00:00
skia-autoroll
0ef37bc504 Roll SK Tool from 9345f9d7ba0c to 0a929d25e606
https://skia.googlesource.com/buildbot.git/+log/9345f9d7ba0c..0a929d25e606

2022-04-14 jcgregorio@google.com Add auth.NewTokenSourceFromKeyString().

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Tbr: erikrose@google.com
Change-Id: I3da62df7ec15c464cbcb79785fbcc8225fe651b8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/530181
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-14 18:22:41 +00:00
Kevin Lubick
83cee23c98 [bazel] Run buildifier on BUILD.bazel files
buildifier --lint=fix -r .

Change-Id: I6a41858270d20137978f8271c8f6160b51120777
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529751
Reviewed-by: Ben Wagner <bungeman@google.com>
2022-04-14 18:13:43 +00:00
Ben Wagner
a1246adf4e Reorganize COLR font support with FreeType.
When using a COLR glyph representation there is no need to load the base
glyph to draw. If COLR glyph representation was chosen for metrics, the
image and drawable generation should use the same format. Separate the
drawing of COLR glyphs with Skia and drawing other glyphs with FreeType
data.

This is not intended to change behavior. However, this does incidentally
fix an issue where previously a COLRv0 glyph would use the metrics of
its last component instead of the metrics of the base glyph. The
specification requires that all COLRv0 layers have the same advance
width and the test fonts do this. However, other code like the FreeType
autohinter may kick in and cause the value to be slightly different.
Since COLRv1 requires that the base glyph advance be used, this change
standardizes on using the base glyph.

[0] https://docs.microsoft.com/en-us/typography/opentype/spec/colr#metrics-for-color-glyphs-using-version-0-formats

Change-Id: I0258c82d83076327cfb2c68954b9bb2683599e9c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529804
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-14 18:05:37 +00:00
John Stiles
0688ea21b2 Reland "Use op cache when emitting types."
This is a reland of commit 60ff0facbf

Structs are now deduplicated using a [Type*, SpvId] map.

Original change's description:
> Use op cache when emitting types.
>
> We no longer need to maintain a separate `fTypeMap` for mapping types
> to SpvIds, since the op cache handles this automatically.
>
> We also now support deduplicating instructions that don't have a result,
> such as decorations. (In particular, we needed to avoid emitting the
> SpvDecorationArrayStride op every time the array type was accessed, but
> this op doesn't have a result ID.)
>
> Change-Id: I779b8c8e3de5973b8f487b28c0a8ece9a1041845
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529732
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>
> Auto-Submit: John Stiles <johnstiles@google.com>

Change-Id: I9f6a78d58e8af38a1fd690a8860d8b5aa3193be6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529748
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-14 17:39:37 +00:00
Brian Osman
5977429087 Set dawn_vulkan_tools_dir in Dawn's GN overrides
Now that Skia has vulkan-tools (and vulkan-tools has had its internal GN
issues fixed), this should unblock the roller again.

Bug: dawn:1365
Change-Id: I1ce3b8aeffda57a742655fa5eddc50d3242f2ca5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529749
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-04-14 17:05:33 +00:00
skia-autoroll
a83ab20fba Roll vulkan-deps from 7e9ab0686bf4 to 565408992c44 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/7e9ab0686bf4..565408992c44

Also rolling transitive DEPS:
  https://skia.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools from 898ba64d2463 to cb96abbf7aff
  https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools from 576ce7a50864 to fa288188b574

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

To file a bug in skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Bug: None
Tbr: armansito@google.com,brianosman@google.com
Change-Id: Ia2d060b0b087499a7d9d8b373b3275e0393f39e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/530176
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-14 16:58:40 +00:00
Brian Osman
028586238e Update vulkan validation errors in generated files
Change-Id: I800fa2a1fb0e64ad478c76ea2d5cda176ea8f48b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529746
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-14 15:09:37 +00:00
Brian Osman
0d99188804 Revert "Use op cache when emitting types."
This reverts commit 60ff0facbf.

Reason for revert: Broke D3D bots

Original change's description:
> Use op cache when emitting types.
>
> We no longer need to maintain a separate `fTypeMap` for mapping types
> to SpvIds, since the op cache handles this automatically.
>
> We also now support deduplicating instructions that don't have a result,
> such as decorations. (In particular, we needed to avoid emitting the
> SpvDecorationArrayStride op every time the array type was accessed, but
> this op doesn't have a result ID.)
>
> Change-Id: I779b8c8e3de5973b8f487b28c0a8ece9a1041845
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529732
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>
> Auto-Submit: John Stiles <johnstiles@google.com>

Change-Id: I0e2187f88f2a945fd6f88ce75ff815e03d2f7df5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529747
Auto-Submit: Brian Osman <brianosman@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-04-14 14:43:09 +00:00
Brian Salomon
de301c8d70 Reland "skif:LayerSpace<SkRect>::roundOut/In have epsilon tolerance."
This is a reland of commit acb8770918

Original change's description:
> skif:LayerSpace<SkRect>::roundOut/In have epsilon tolerance.
>
> Adds a little tolerance so that e.g. left=30.999994 with roundOut
> will still round to 31 not 30. Helps avoid cases where imprecision
> leads to including an entire unwanted row/column of an input image
> to an image filter.
>
> This Chrome change must land first:
> https://chromium-review.googlesource.com/c/chromium/src/+/3577185/
>
> Bug: chromium:1313579
> Change-Id: I143c8f99b90413a6b610f2b3a5e54e648777ca68
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528652
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Bug: chromium:1313579
Change-Id: Ia827c6fc01542fa3d56f560cde517570b8f0021d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529744
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-04-14 14:41:22 +00:00
Leon Scroggins III
28c9c8b9f5 Update libwebp to 1.2.2
Update the version of libwebp used in Skia's testing/development to
1.2.2. This corresponds to the recent update in Android:
https://android-review.googlesource.com/c/platform/external/webp/+/2060423/

Change-Id: I217fff50083dd6b100ac258a06c230bcf8a53ec8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529742
Auto-Submit: Leon Scroggins <scroggo@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2022-04-14 13:45:28 +00:00
skia-autoroll
c7a2172cb5 Roll vulkan-deps from c9be322642fb to 7e9ab0686bf4 (5 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/c9be322642fb..7e9ab0686bf4

Also rolling transitive DEPS:
  https://skia.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers from 9c3fd01c8a91 to 82becc8a8a92
  https://skia.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools from 92c17edde79a to 898ba64d2463
  https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools from 5f3ce24e7a53 to 576ce7a50864

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

To file a bug in skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Bug: None
Tbr: armansito@google.com
Change-Id: I79dc18e45c119d73f16a1a8dfeec78d62154ebfe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/530020
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-14 13:38:33 +00:00
John Stiles
60ff0facbf Use op cache when emitting types.
We no longer need to maintain a separate `fTypeMap` for mapping types
to SpvIds, since the op cache handles this automatically.

We also now support deduplicating instructions that don't have a result,
such as decorations. (In particular, we needed to avoid emitting the
SpvDecorationArrayStride op every time the array type was accessed, but
this op doesn't have a result ID.)

Change-Id: I779b8c8e3de5973b8f487b28c0a8ece9a1041845
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529732
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-04-14 13:32:55 +00:00
John Stiles
c66b72dc46 Use op cache for pointer and function types.
Previously, we stringized the types and put them into fTypeMap. Using
the op cache is a simpler mechanism that should work equally well.

Output diffs are almost all ID reorderings. In a few cases we
managed to deduplicate function types that stringize differently but
come out the same in SPIR-V (e.g. no float/half distinction).

Change-Id: If7de5b2dafa12d05c3c2c497a243e9e3908dfee7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529805
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-14 13:00:27 +00:00
Kevin Lubick
458f4ded2b [bazel] Consolidate skylib loads
For importing into G3, this will simplify the regex needed
and allow us to stub out things not supported (e.g. gazelle)

Change-Id: I770f5dee6f29e555356742dae36212ad6cfb713a
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529836
Reviewed-by: Ben Wagner <bungeman@google.com>
2022-04-14 11:37:08 +00:00
skia-autoroll
c49bf3e754 Roll ANGLE from 6768aff710de to 871878352630 (12 revisions)
6768aff710..8718783526

2022-04-14 gman@chromium.org Metal: For readPixels copy IOSurface to non-IOSurface texture
2022-04-14 gman@chromium.org Suppress CopyTextureTest.CopyToMipmap on Intel Mac OpenGL
2022-04-13 syoussefi@chromium.org Vulkan: Relax advanced blend on VK extension requirement
2022-04-13 syoussefi@chromium.org Vulkan: Emulate GL_KHR_blend_equation_advanced
2022-04-13 jonahr@google.com Revert "Vulkan: Support Wayland"
2022-04-13 syoussefi@chromium.org Vulkan: Enum class instead of bool didRespecify
2022-04-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 345e2a278e69 to c9be322642fb (74 revisions)
2022-04-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 620982155d55 to 011bba68c819 (4 revisions)
2022-04-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from f961a0d4732b to 61150a1970a3 (431 revisions)
2022-04-13 gman@chromium.org Metal:Speed up BGRA8 to RGBA8 copy for readPixels
2022-04-13 syoussefi@chromium.org Remove feature override platform methods
2022-04-13 syoussefi@chromium.org Vulkan: Fix resolve with subpass into smaller framebuffer

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 armansito@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/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
Tbr: armansito@google.com
Change-Id: I84afae906a212954688530adad0a0b41e12adabf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529978
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-14 05:30:39 +00:00
skia-autoroll
61f8dd3549 Roll Chromium from ba62a8683b71 to 91a2fd838a6a (504 revisions)
ba62a8683b..91a2fd838a

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 armansito@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/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
Tbr: armansito@google.com
Change-Id: Ie44ca24d9bd0db8b2502960bec03741e639c2e00
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529976
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-14 04:58:09 +00:00
skia-autoroll
602c29929e Roll SwiftShader from 011bba68c819 to 1d450ae99a0f (4 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/011bba68c819..1d450ae99a0f

2022-04-14 sugoi@google.com Stop building legacy SwiftShader GL in Chromium
2022-04-13 capn@google.com Alert about Legacy SwiftShader debug build usage
2022-04-13 swiftshader.regress@gmail.com Regres: Update test lists @ d621b4de
2022-04-13 capn@google.com Temporarily ignore unsupported feature struct

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 armansito@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: armansito@google.com
Change-Id: I66194a529be3aef69b149e569a002de2afa1ad29
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529979
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-14 04:49:36 +00:00
John Stiles
8a00b0f69d Use op cache when emitting matrix copies.
Change-Id: I3f6e25ec7b31339bfc9bd2435bc9226e6d9be06b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529498
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-04-14 00:23:04 +00:00
skia-autoroll
3aa6ec7bbd Roll skcms from 0ff18ebed22b to dcb0286a1e17 (1 revision)
https://skia.googlesource.com/skcms.git/+log/0ff18ebed22b..dcb0286a1e17

2022-04-13 lovisolo@google.com [bazel] Use hermetic Android NDK C++ toolchain in CI tasks.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Canary-Chromium
Tbr: armansito@google.com,brianosman@google.com
Change-Id: Ia65a51f237365353540527c936de91150c548002
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529891
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-14 00:20:15 +00:00
Dominik Röttsches
29ef396aee [COLRv1] Fixes for PaintSweepGradient
Fix starting angle to be the positive x axis instead of the vertical
upward axis, support repeat modes, fix clipping of sectors that cross
the 0/360 degrees position. No longer cut off sweep gradients outside
start and end angle.

Update test font with new sweep examples from [1].

[1] https://github.com/googlefonts/color-fonts/pull/98

Fixed: skia:13208, skia:13209, skia:13210
Cq-Include-Trybots: luci.skia.skia.primary:Test-Android-Clang-GalaxyS20-GPU-MaliG77-arm64-Release-All-Android_NativeFonts
Change-Id: I1bf4e3dd6184229dfd8b2a81aa6670e4f2be8937
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529460
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-13 23:33:20 +00:00
Herb Derby
f2eccd9839 Revert "Use Slugs to render non-Blob text"
This reverts commit f274197de1.

Reason for revert: Glyphs are render wrong

Original change's description:
> Use Slugs to render non-Blob text
>
> Weaken the assert to allow Slugs to draw if the matrix is the same as
> when the Slug was created with.
>
> Bug: skia:13214
> Change-Id: If0820408208378d57711afb31082a918c00ffc63
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529811
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Herb Derby <herb@google.com>

Bug: skia:13214
Change-Id: Ifa675b74f05f32f36d77d7b48ec157c308c9c076
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529936
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-04-13 22:48:05 +00:00
skia-autoroll
35f80d69e8 Roll skcms from 5394ae3ed6c8 to 0ff18ebed22b (1 revision)
https://skia.googlesource.com/skcms.git/+log/5394ae3ed6c8..0ff18ebed22b

2022-04-13 lovisolo@google.com [bazel] Add hermetic Android NDK C++ toolchain.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Canary-Chromium
Tbr: armansito@google.com,brianosman@google.com
Change-Id: I9519d90a799bf6c1e75bb7dee7531baccc09326e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529673
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-13 22:14:15 +00:00
Herb Derby
f274197de1 Use Slugs to render non-Blob text
Weaken the assert to allow Slugs to draw if the matrix is the same as
when the Slug was created with.

Bug: skia:13214
Change-Id: If0820408208378d57711afb31082a918c00ffc63
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529811
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-04-13 21:38:29 +00:00
Ben Wagner
b502b89e99 Change SkGlyph::fScalerContextBits to uint16_t.
This used to be uint8_t and was changed to uint32_t to soak up some
unused bits. However, it turns out that it was actually sitting in a
three byte region, so declaring this uint32_t accidentally made SkGlyph
larger. Changing this to uint16_t should allow it to soak up two of the
three unused bytes.

Bug: chromium:1315972
Change-Id: If02dc5d9f38db2715fb08a762246d16055e06214
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529812
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-13 21:24:18 +00:00
Robert Phillips
e110e5495a [graphite] Allow rtFlip to be entirely disabled
Bug: skia:12701
Change-Id: Ic4eea73c37e4b9c02040d5f7ba7bd7beb468d53b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529721
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-04-13 21:14:33 +00:00
Kevin Lubick
b98328a27b [bazel] Add license to all our BUILD.bazel files
find -name "BUILD.bazel" -exec sed -i -e '1i licenses(["notice"])\n' {} +

Change-Id: Ie48f163b7d8d6ede9ba5f952e87232dd5c9fa8e6
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529808
Reviewed-by: Ben Wagner <bungeman@google.com>
2022-04-13 19:50:29 +00:00
skia-autoroll
76cdd06cdc Roll SK Tool from c5fda538cae2 to dd5f8a6a7ab2
https://skia.googlesource.com/buildbot.git/+log/c5fda538cae2..dd5f8a6a7ab2

2022-04-13 jcgregorio@google.com Move from auth.NewDefaultTokenSource to google.DefaultTokenSource.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Tbr: erikrose@google.com
Change-Id: I2abe5fc811ab436243996f7d9a826ee49079673c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529667
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-13 17:19:04 +00:00
John Stiles
d2be132e24 Use op cache to deduplicate diagonal matrix construction.
Change-Id: Ic19d7591c90f75f04dd1c58b406f2b770f9780c7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529351
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-13 16:35:15 +00:00
John Stiles
3134ec4324 Use op cache for OpCompositeExtract.
If we start with an OpConstantComposite, then we do an
OpCompositeExtract from it, we can look up the result directly from op
cache and avoid doing any work. This helps our matrix code a lot.

Change-Id: Idfbdc0c69676b9c1e91cdc57bf0d6382b9b5d8d4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529339
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-04-13 16:35:06 +00:00
Brian Osman
68476b304d Add vulkan-deps to DEPS
Many chromium adjacent projects have started using this repo to fetch
all of the Vulkan and SPIRV repos in a single bundle. Using this ensures
that we get a group of repos that should work together (atomically), and
simplifies autoroller configuration (we just need one roller for
vulkan-deps that does transitive rolls of the children, rather than five
separate rollers).

Change-Id: I015edb5811be60eb2275cdfe195138317d341a03
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529730
Reviewed-by: Eric Boren <borenet@google.com>
2022-04-13 16:04:30 +00:00
Brian Osman
b00f0a6b23 Add vulkan-tools to DEPS
This library is now used by Dawn, so will be required to get the roller
working again. Landing this separately (and unused), first.

Change-Id: I22a820e4996299ccdc9181ac96fb617eb7933c5b
Bug: dawn:1365
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529725
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2022-04-13 15:53:21 +00:00
Jorge Betancourt
8a5aa6d7c0 add Mac hash for MarkupSafe requirements
Change-Id: Ibbc3abd2b84b4a77b90ceec8707776dbc238fa89
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528442
Auto-Submit: Jorge Betancourt <jmbetancourt@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
2022-04-13 15:39:27 +00:00
skia-autoroll
319f38e9f7 Roll skcms from 30c8e303800c to 5394ae3ed6c8 (1 revision)
https://skia.googlesource.com/skcms.git/+log/30c8e303800c..5394ae3ed6c8

2022-04-13 lovisolo@google.com Ignore .vscode.

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Canary-Chromium
Tbr: armansito@google.com,brianosman@google.com
Change-Id: Ia82a4c2072a951e1b2fad286e5cd4b0812813ca1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529571
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-13 14:59:11 +00:00
Dominik Röttsches
442997ab88 Fix PaintRotate and PaintSkew angle orientation
PaintRotate needs to rotate counter-clockwise, but was rotating
clockwise due to passing the font's value unchanged to
SkMatrix::RotateDeg. Negate the value to achieve counter-clockwise
rotation.

For PaintSkew, we compute the tangent from the values in the font and
set up a skew matrix with that. Since we're using the trigonometric
functions to set up the matrix, the angle works in counter-clockwise
direction.

So this previously worked correctly for skew in the x
direction, but not in the y-direction due Skia using a y-down coordinate
system. Negate the y-angle from PaintSkew before calculating the
tangent and setting up the matrix.

Bug: skia:13190
Cq-Include-Trybots: luci.skia.skia.primary:Test-Android-Clang-GalaxyS20-GPU-MaliG77-arm64-Release-All-Android_NativeFonts
Change-Id: I98329f9746bcc6e875c4f87982782470e0f0a17d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529076
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Dominik Röttsches <drott@google.com>
2022-04-13 14:42:36 +00:00
Brian Salomon
114b8c99c7 Don't set max aniso when creating GL texture
Creates unexplained regression in chrome perf test.

Bug: 1312339
Change-Id: I691bb845904ae541f8cae7537af7210ae8efdd99
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529682
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-04-13 13:41:15 +00:00
skia-autoroll
a1d5fffd9a Roll ANGLE from 797e627e641c to 6768aff710de (13 revisions)
797e627e64..6768aff710

2022-04-12 yuxinhu@google.com Fix Geometry Shader Conformance Test Failure on Pixel6
2022-04-12 penghuang@chromium.org Use the real max vertex attrib index instead of MAX_VERTEX_ATTRIBS
2022-04-12 sunnyps@chromium.org vulkan: Mark external memory textures as preinitialized
2022-04-12 ynovikov@chromium.org Suppress multisample_interpolation dEQP failures on Pixel 6 Vulkan
2022-04-12 senorblanco@chromium.org D3D: Remove a pass-through function.
2022-04-12 cclao@google.com Vulkan: Change ContextVk to Context for BufferPool APIs
2022-04-12 antonio.caggiano@collabora.com Vulkan: Support Wayland
2022-04-12 ynovikov@chromium.org Roll chromium_revision f89964bd5b..f961a0d473 (990903:991486)
2022-04-12 steven@valvesoftware.com egl_angle_ext: add more missing extension enum values
2022-04-12 ynovikov@chromium.org Update ANGLE's docs regarding Windows 10 SDK version to use
2022-04-12 steven@valvesoftware.com gl_angle_ext.xml: treat glProvokingVertexANGLE as alias
2022-04-12 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from d15c42482560 to 620982155d55 (2 revisions)
2022-04-12 syoussefi@chromium.org Reland "Vulkan: Fix texture-after-framebuffer sync issues"

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 armansito@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/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
Tbr: armansito@google.com
Change-Id: Ib51255cbfe22bc809674075cadfe34fda49e40bd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529564
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-13 05:28:03 +00:00
skia-autoroll
0da5f80744 Roll Chromium from 8219c5d3322a to ba62a8683b71 (531 revisions)
8219c5d332..ba62a8683b

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 armansito@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/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
Tbr: armansito@google.com
Change-Id: I4dac7a88bff85d24dfa7130af3b2fbcf881426bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529566
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-13 05:06:05 +00:00
skia-autoroll
1513df3c1f Roll SwiftShader from 620982155d55 to 011bba68c819 (4 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/620982155d55..011bba68c819

2022-04-12 capn@google.com Optimize sRGB conversion using FMA
2022-04-12 capn@google.com Fix storage image write of VK_FORMAT_B8G8R8A8_SRGB
2022-04-12 capn@google.com Refactor sRGB color space conversions
2022-04-12 swiftshader.regress@gmail.com Regres: Update test lists @ 62098215

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 armansito@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/+doc/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: armansito@google.com
Change-Id: I682b7cf43494a1e434bf10d68d8e581d52cff2ef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529565
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-13 04:50:39 +00:00
Herb Derby
d5a244e6c0 Add dimensions to SkGlyphDigest and remove max dimension
Add dimensions to the glyph digest to enable SkRemoteGlyphCache to build
SubRuns directly.

It would be nice to use SkGlyphRect to encode this information but,
the MSVC-2019 compiler has problems producing correct code on 32-bit
machines.

Change-Id: I519ffecf3c727f608a8e6972742aee04b65a283a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529613
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-04-12 22:50:37 +00:00
John Stiles
702bf7ed1b Add support for SkSpan::subspan(offset).
https://en.cppreference.com/w/cpp/container/span/subspan

The real std::span::subspan in C++20 allows the "count" argument to
default to `std::dynamic_extent` (a fancy way of spelling ~0U). I didn't
think it would be worth adding `skstd::dynamic_extent`, but I did have
a use for an unbounded subspan, so I added a single-argument version to
SkSpan.

Change-Id: I297cc452cf2db727a3f9869ff8f46f3527e19370
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529603
Reviewed-by: Arman Uguray <armansito@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-04-12 22:44:11 +00:00
Ben Wagner
97f7956254 Generalize SkGlyph::fForceBW.
The field SkGlyph::fForceBW is currently used by the DirectWrite
SkScalerContext implementation to let generateImage know that
generateMetrics needed to fall back to aliased rendering in order to
load the glyph. This is part of a more general issue where
generateMetrics must generate the metrics based on some glyph
representation and then generateImage must use that same representation
to draw.

Currently this consistency comes from ensuring that generateMetrics and
generateImage make the same decisions, with the only real information
passed from generateMetrics to generateImage being the mask format.
However, there have always been multiple glyph represenations for a
given mask format (like outline masks vs. embedded bitmap masks) and now
there are four (soon to be five) different color formats. While the mask
format and bounds are enough to allocate the space for a glyph
rendering, this is not enough information for generateMetrics and
generateImage to agree on which glyph rendering to choose. The
additional required information has come from implicitly coding
generateImage to make the same decisions generateMetrics would have.
However, these decisions may have been based on information which is
expensive to compute, like probing the font for which representations a
glyph may have.

To transmit this extra information, formalize that generateMetrics may
state which decisions it made (which glyph representation it used) so
that generateImage can use this information explicitly instead of
implicitly. Do this by expanding fForceBW and renaming it
fScalerContextBits and documenting what it is used for.

Change-Id: I91ba747233447f4d7bea81b0dcde51e49fa705fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529604
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-12 22:20:03 +00:00
Herb Derby
8191a9f29b Before atlas rebuild check pinned strike
The invariant for drawing is that this strike must be pinned in
the cache. If it is not, then dump a stacktrace.

Bug: chromium:1315730
Change-Id: I73a79d8d3c45262753ef64b679e4af23cd1d6eea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529557
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-04-12 22:03:37 +00:00
Leandro Lovisolo
44cf5ad0f4 gcs_mirror.go: Add support for .zip files.
Bug: skia:12400
Change-Id: Ice706804bfb46593afe0773311870c993c1a7551
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529608
Auto-Submit: Leandro Lovisolo <lovisolo@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-04-12 22:01:38 +00:00
John Stiles
ad235abc1b Add assertion that samplers cannot be subpass inputs.
Based on some code archaeology, we believe that textures (not samplers)
should always be used for subpass inputs.

Change-Id: Ida461e20f3b4f236918e72076e9c008ac280b8ef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529609
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-04-12 21:49:52 +00:00
John Stiles
abf84fd342 Use op cache for constant matrix construction.
Previously, we didn't usually generate OpConstantComposite ops for
matrices. Now, a matrix assembled from constants should come out as a
constant.

Change-Id: I458718901686dffb84e4079a81017d61195420d3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529338
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-12 21:43:14 +00:00