Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update skia to milestone 117 #138

Merged
merged 825 commits into from
Oct 28, 2024
Merged

Update skia to milestone 117 #138

merged 825 commits into from
Oct 28, 2024

Conversation

mattleibow
Copy link

@mattleibow mattleibow commented Oct 28, 2024

Description of Change

Updating the version to the next one.

API Changes

Removed:

SK_C_API void sk_canvas_flush(sk_canvas_t* ccanvas);
SK_C_API void sk_surface_flush(sk_surface_t* surface);
SK_C_API void sk_surface_flush_and_submit(sk_surface_t* surface, bool syncCpu);

Added:

SK_C_API gr_recording_context_t* sk_get_recording_context(sk_canvas_t* canvas);
SK_C_API sk_surface_t* sk_get_surface(sk_canvas_t* canvas);

Behavioral Changes

None.

Required SkiaSharp PR

mono/SkiaSharp#3047

PR Checklist

  • Rebased on top of skiasharp at time of PR
  • Changes adhere to coding standard
  • Updated documentation

lhkbob and others added 30 commits July 24, 2023 14:29
Change-Id: I4e2d6464dee9eb6e65605f282742e61fb324d277
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/727700
Reviewed-by: Nicolette Prevost <[email protected]>
Commit-Queue: Michael Ludwig <[email protected]>
In std140 layout, float arrays are very space-inefficient.

Change-Id: I397504654a6d83b2e54bf46f660c6c8b2dddb740
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/726948
Reviewed-by: Robert Phillips <[email protected]>
Reviewed-by: Michael Ludwig <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: John Stiles <[email protected]>
This makes most modifier-flag checks a lot easier to parse.
I've intentionally omitted accessors for the in/out bits for
clarity (should modifiers.isOut() return true for an inout?).

Change-Id: I8fbf5abea9978d06572a9c88600b1d797e12fcb2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/727916
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: James Godfrey-Kittle <[email protected]>
Reviewed-by: James Godfrey-Kittle <[email protected]>
Change-Id: I5e7ed806b7467f1df9e3ce4e66175f7a682312f0
Bug: skia:14317
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728697
Reviewed-by: Michael Ludwig <[email protected]>
Commit-Queue: Kevin Lubick <[email protected]>
This was not actually used in any public headers.

Change-Id: Ica1a2fd9d31e2377f5a673cf8596edf6bc965f2c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728796
Reviewed-by: Michael Ludwig <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: John Stiles <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
Change-Id: Ie6969d47263258a5de48019c2dfc419a629a6a89
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/726056
Reviewed-by: Jim Van Verth <[email protected]>
Commit-Queue: Nicolette Prevost <[email protected]>
This puts it on equal footing with its rival, SkBitmaskEnum.h.

Change-Id: I0e976988db1d43b7422957733f95f6b6824b7121
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728699
Commit-Queue: John Stiles <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: Kevin Lubick <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
This took more rearranging than I expected mainly bc the original compute_size helper needed Caps and the Graphite Image doesn't carry them around. To achieve the end goal I had to:

Move compute_size to TextureUtils.h (renamed to ComputeSize)
Add TextureInfo::bytesPerPixel (and use it in ComputeSize)
Add TextureProxy::uninstantiatedGpuMemorySize

Change-Id: Ifb284586f37a5d22dd51031bc96f1f83b28df997
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/727276
Reviewed-by: Brian Osman <[email protected]>
Reviewed-by: Jim Van Verth <[email protected]>
Commit-Queue: Robert Phillips <[email protected]>
Change-Id: I093656dc30ed4746a9207e69f3bcc90f47232c67
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728737
Commit-Queue: Jorge Betancourt <[email protected]>
Reviewed-by: Florin Malita <[email protected]>
This landed in https://crrev.com/c/4374637 and was not reverted in
the months since.

Change-Id: I63e2fa3f657cdc1be3ae54c2c8896c3196e99c30
Bug: skia:14163
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728698
Reviewed-by: Brian Osman <[email protected]>
Commit-Queue: Kevin Lubick <[email protected]>
Client CLs:
 - http://ag/24151403
 - http://cl/549704569

Change-Id: Ib94475992a4f6fb7323f92053c62542812777b9d
Bug: skia:14317
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728701
Reviewed-by: Brian Osman <[email protected]>
Commit-Queue: Kevin Lubick <[email protected]>
https://skia.googlesource.com/buildbot.git/+log/1de81d2a1fc2..2ca55949153a

2023-07-24 [email protected] Roll Skia Infra CIPD packages from ac6948eb5d9f to 1de81d2a1fc2 (10 revisions)

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 [email protected],[email protected] 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: [email protected]
Change-Id: I53d92273abe55f619efb89300a07710d302ed8a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728821
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
Bug: b/289896316
Change-Id: I4d2b0b534dce53ce7f3ec2bffe35348c5728aa4e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/727816
Reviewed-by: Brian Osman <[email protected]>
Reviewed-by: Michael Ludwig <[email protected]>
Auto-Submit: Jim Van Verth <[email protected]>
Commit-Queue: Brian Osman <[email protected]>
https://chromium.googlesource.com/vulkan-deps.git/+log/18e535f0ebf3..4c8d1ddb012a

Also rolling transitive DEPS:
  https://skia.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/d52c39c37d4d7aece12e6177203cc3d733e8b772..ec90d2872acbb4802661c9186a1e0fce8924e97b
  https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools/+log/e69a7c71c52c2e9316f4bd7f95af7a084a1a2870..ed6820d508fd24b1a50166a600dbf7ee8300e9d9

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 [email protected],[email protected] 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:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: [email protected]
Change-Id: I9f1af15f558982ff6f2225e4d9e9c628a0deffe3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728721
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
For excessively large crop rects, isEmpty() was returning true when
the width or height overflowed. isEmpty64() just checks left < right
and top < bottom, which makes it consistent with SkRect::isEmpty().

The large crop rects are now allowed through, and when they are
intersected with the desired output, become reasonable and usable.
Previously they were causing the entire operation to be dropped.

In the event that somehow we try to create a backing image for a
layer irect that is this large, but was previously being rejected with
the 32-bit isEmpty(), the width and height will still be negative and
image allocation will fail, which is still guarded.

Bug: chromium:1466359
Change-Id: I3045773e111bbb779826e155ea26da13212481bf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728676
Reviewed-by: Robert Phillips <[email protected]>
Reviewed-by: Brian Osman <[email protected]>
Commit-Queue: Michael Ludwig <[email protected]>
SkEmptyFontMgr is the last resort fallback for font managers. Prior to
this change if one was needed it would be created as a static local
variable and an sk_sp to it returned and then the sk_sp was also stored
as a static local variable. This meant that the SkEmptyFontMgr static
local could be destroyed before the sk_sp static local variable. This is
the Static Initialization Order Fiasco but for destruction.

To avoid these problems create the single SkEmptyFontMgr on the heap if
it is needed and make it always owned by sk_sp. The order of destruction
is no longer a problem as the last sk_sp to be destroyed will delete the
SkEmptyFontMgr.

Change-Id: Ia32678ec449dbfc4674a276193b636c29dbaf9c2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728738
Reviewed-by: Leandro Lovisolo <[email protected]>
Commit-Queue: Ben Wagner <[email protected]>
Auto-Submit: Ben Wagner <[email protected]>
Commit-Queue: Leandro Lovisolo <[email protected]>
https://swiftshader.googlesource.com/SwiftShader.git/+log/66d6b0dd0c39..9fbca2df22a8

2023-07-24 [email protected] LLVMReactor: Support LLVM 17+
2023-07-24 [email protected] LLVMReactor: Remove CreateFreeze() call

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 [email protected],[email protected] 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: [email protected]
Change-Id: Ida93676f600e1f9ff0d0c229791d608b34c9ac90
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728913
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
https://skia.googlesource.com/buildbot.git/+log/1de81d2a1fc2..2ca55949153a

2023-07-24 [email protected] Roll Skia Infra CIPD packages from ac6948eb5d9f to 1de81d2a1fc2 (10 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/infra-skia
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia Infra: https://bugs.chromium.org/p/skia/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

Bug: None
Tbr: [email protected]
Change-Id: Ib5d95e1a84a810d3882eb8332bfebb8dbfa8a32c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728914
Bot-Commit: skia-autoroll <[email protected]>
Commit-Queue: skia-autoroll <[email protected]>
https://chromium.googlesource.com/angle/angle.git/+log/430a4f559cbc..2d999f744809

2023-07-24 [email protected] Android: Add a way to prepare traces without running tests
2023-07-24 [email protected] Vulkan: Remove dead code
2023-07-24 [email protected] Metal: Don't flush on eglBindTexImage.
2023-07-24 [email protected] Android.bp generation: vulkan-headers LICENSE.txt -> .md
2023-07-24 [email protected] Roll SwiftShader from 4a260c12b8c1 to 66d6b0dd0c39 (6 revisions)
2023-07-24 [email protected] Roll Chromium from 986ed21b8935 to 6eba95b5d89b (527 revisions)

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 [email protected],[email protected] 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:Build-Mac-Clang-arm64-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: [email protected]
Change-Id: If80a537f88ce49b4f4f775000c6daae33ba893a2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728827
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
https://chromium.googlesource.com/vulkan-deps.git/+log/4c8d1ddb012a..6f1c3384ecb6

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 [email protected],[email protected] 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:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: [email protected]
Change-Id: I1a4b92ada50261b3c946fead8d367d46378b6e91
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728831
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
Change-Id: I0af36ff2cf738a88f23104d90165d7b5d417fdf2
Bug: b/291097600
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/726057
Commit-Queue: Nicolette Prevost <[email protected]>
Reviewed-by: Jim Van Verth <[email protected]>
This map was only used to associate a field with an interface block
when emitting field-access expressions. This allowed us to give a
unique name to anonymous interface-blocks when their field accesses
occurred. Instead of having a map, we can use the type of the
interface block as a key for this lookup instead, since each
interface block must have a unique type.

Change-Id: Ief0beed539ff215c0a8f2fe39f62b86983a2de55
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728916
Reviewed-by: Brian Osman <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: Brian Osman <[email protected]>
Array types currently do not compile cleanly in std430 layout. For
instance, consider the float[] type. If we apply std430 layout to SSBOs
and std140 layout to UBOs (as the latter is required), a different array
stride will be inferred for this type if it is declared inside a UBO
block and a SSBO block in the same program (16 in std140 and 4 in
std430).

This difference in layout is currently not handled well by SkSL,
especially when array types appear in user-defined function parameter
signatures. For example, consider this program:

layout(...) uniform UBO {
    float uboArray[4];
};

layout(...) buffer SSBO {
    float ssboArray[4];
};

void helper(float[4] arg) {...}

half4 main() {
    ...
    helper(uboArray);
    helper(ssboArray);
    ...
}

This is a valid SkSL program but it is unclear what code this should
generate in the WGSL and SPIR-V backends, both of which need to
determine:

  1. What is the stride of `arg`?
  2. What is the stride of `ssboArray`?
  3. If `arg` and `ssboArray` have different strides what are the
     argument passing semantics of `helper(ssboArray)`?
  4. What is the stride of a temporary binding, e.g.

     float[4] myArray = ssboArray;
     myArray = uboArray;

The SPIR-V backend passes function arguments by pointer but the pointer
types of two different arrays with different strides are incompatible,
so a better way to pass an array as an argument is to copy its
elements into a temporary composite, which is not how SPIR-V codegen
works today.

WGSL requires that different array strides be declared via different
type signatures. `array<f32, N>` always has a stride of 4 and is
incompatible with UBO layout, which requires `float[N]` to be converted
to `array<vec4<f32>, N>` or `array<S, N>` where `S` is a struct with 16
byte alignment. What should the function parameter signature of `helper`
be in WGSL?

It makes sense for SPIR-V and WGSL codegen to have a consistent story
to determining stride if we want to support packed array layouts with
std430. Until then, use std140 layout with SSBOs.

Bug: skia:14639

Change-Id: I9fc154dabadf384fdd926786a5fbade959a3e935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728956
Commit-Queue: Arman Uguray <[email protected]>
Reviewed-by: John Stiles <[email protected]>
Change-Id: Iba793a1c9c13af393aca5e343e31f3fad78cbba4
Bug: skia:14317
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728703
Reviewed-by: Michael Ludwig <[email protected]>
Note the default implementation of SkColorFilterBase::addToKey
is handled in the kNoOp switch case.

Change-Id: I963098148a1b9e1b40e5ff53ddc885e23f5e8517
Bug: skia:13983
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728917
Commit-Queue: Kevin Lubick <[email protected]>
Reviewed-by: Michael Ludwig <[email protected]>
We now generate valid code for the storage-buffer golden output
test case. This also fixes the multiple anonymous-interface-block
test cases; this isn't important (we don't use it in Skia), but
it came naturally from the implementation.

Bug: skia:13092
Change-Id: I75d33e1d63977473261225ec06659c37f80772b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/729256
Reviewed-by: Arman Uguray <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: John Stiles <[email protected]>
https://skia.googlesource.com/buildbot.git/+log/2ca55949153a..983f600aab02

2023-07-25 [email protected] [CT] Email CT Admins only on failures
2023-07-25 [email protected] [cd] Ignore "other" file mode in assertFileMatches
2023-07-25 [email protected] Roll Skia Infra CIPD packages from 1de81d2a1fc2 to 2ca55949153a (1 revision)

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 [email protected],[email protected] 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: [email protected]
Change-Id: I13fe1a5015bb914546f2f8bfabbe4af1787308d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/729378
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
Also enforce IWYU on it.

Change-Id: I2dc4331cc43bc1224530be91038b378c9cdd8a02
Bug: skia:14317
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728700
Commit-Queue: Kevin Lubick <[email protected]>
Reviewed-by: Michael Ludwig <[email protected]>
Bug: skia:14638
Change-Id: I72fa72d4ecd16d839108d7c0fc22a04be30cb7bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728736
Reviewed-by: Brian Osman <[email protected]>
Commit-Queue: Michael Ludwig <[email protected]>
Reviewed-by: Robert Phillips <[email protected]>
Moved the compute test file declarations out of the metal test list and
into their own filegroup in preparation for enabling them in more
backends. Moved the compute error tests to the shared error sources as
they are not backend-specific.

Bug: b/262428625
Change-Id: Ia0cbac78aa8cafb957d1c5393467cb17219a9e15
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/729096
Reviewed-by: John Stiles <[email protected]>
Commit-Queue: Arman Uguray <[email protected]>
johnstiles-google and others added 27 commits August 7, 2023 16:11
This flag was added to allow us to transition from SkVM to SkRP.
We don't plan on supporting a build of Skia that omits SkSL, so
there's no reason to disable SK_ENABLE_SKSL_IN_RASTER_PIPELINE.
(This would cause various effects to stop painting.)

Bug: b/294209201
Change-Id: I61b9868413266f3b6e7f65408f0188eebee01f05
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736880
Commit-Queue: John Stiles <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
Reviewed-by: Brian Osman <[email protected]>
Commit-Queue: Brian Osman <[email protected]>
This flag did not have any effect; we use SkRP for software
rasterization.

Change-Id: I0147c81acef4947cabd7dc03450a79e0bba17e32
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736882
Reviewed-by: Kevin Lubick <[email protected]>
Reviewed-by: Brian Osman <[email protected]>
Commit-Queue: John Stiles <[email protected]>
Auto-Submit: John Stiles <[email protected]>
There are several CPU backend SkOpts modules that actually belong in
SkGraphics, rather than trying to find isolated homes for them. If
anything, it's the other opts that need distinct locations.

Change-Id: I5b76a1a87976476775921879c62e06908b74fc1f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736976
Commit-Queue: Brian Osman <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
This was an odd helper struct. It's much clearer to just call
SkGraphics::Init (as is done in most of our other tools and client
code).

Last client usage removed in cl/554487694

Change-Id: Idc30ae2da278ca2a13319001cd6ceaab65f3887f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736883
Commit-Queue: Brian Osman <[email protected]>
Reviewed-by: Herb Derby <[email protected]>
sk_sp<T> has a destructor which we do not want to register.

Change-Id: I1c5fdfed21a9a480eb6c57bb718829ea5d30a68b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/728797
Commit-Queue: John Stiles <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Reviewed-by: Herb Derby <[email protected]>
Reviewed-by: Ben Wagner <[email protected]>
A new machine won't have `python` bound to anything.

Change-Id: I67ce37dea2ecfb3deaca4712804b04dc8d39ae36
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736996
Commit-Queue: Kevin Lubick <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
Modify the Bazel side build rules so that the CXX core-lib target
contains its symbols from libc++. The Bazel build performs the build of
the CXX Rust interface library based on clang arguments '-std=c++17'
'-stdlib=libc++' so that it requires libc++ symbols to be
present. Depending on platform and linker, the GN+ninja build cannot
provide those (example ld linker and GNU libstd++ on Linux). We address
this by making the CXX core-lib build include the libc++ symbols on
Linux.

This may lead to a partial duplication of C++ standard library
functionality, which may be acceptable for the viewer executable or
other test executables.

In Chromium, Skia + Fontations + Blink's font stack is built using the
GN based Rust builds that the Chrome security team developed - so this
problem will not apply there.

Bug: b/40045269
Change-Id: I1a6654a8dda99fcc15781fbb7414d5bf889e43e4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/719916
Commit-Queue: Dominik Röttsches <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
Commit-Queue: Dominik Röttsches <[email protected]>
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/debugger-app-base-skia
Please CC [email protected],[email protected] 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: [email protected]
Change-Id: I98909dcc97a4bc9846f426e0efcb7927082563e2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736803
Bot-Commit: skia-autoroll <[email protected]>
Commit-Queue: skia-autoroll <[email protected]>
Like Metal, WGSL only supports matrix-op-scalar natively for
multiplication, so we need to rewrite these expressions into
matrix-op-matrix by splatting the scalar across every matrix
element.

This fixes one test. I've also adjusted the test slightly to
increase its coverage a bit. Previously it only tested
assignment-expressions (`matrix op= scalar`) but neglected
to test `scalar-op-matrix` or `matrix = matrix op scalar`.
I've rewritten the expressions to cover these forms as well.

Change-Id: I41dd4b6fc1ef93a6bbc2b5ed6424147500fdeb9b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/737056
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: Brian Osman <[email protected]>
Reviewed-by: Brian Osman <[email protected]>
See https://skia-review.googlesource.com/c/skia/+/727257 for details

Bug: b/40045064
Bug: b/40045066
Change-Id: I2294e49be894d7b470e6a69b4a7ec06ec44439cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736881
Commit-Queue: Brian Osman <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
This is used by Graphite, so a polyfill is necessary here. The
logic was cloned from MetalCodeGenerator and then updated to WGSL
syntax.

Change-Id: I9e87f880ba8925347345c75b7cd76fd27110714c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736879
Commit-Queue: John Stiles <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Reviewed-by: Brian Osman <[email protected]>
This CL adds support for registering GMs that are unknown at compile time, such as those that depend on command-line flags.

See comments in //gm/gm.h for rationale, and //gm/BazelGMRunner.cpp for sample use.

The follow-up CL (https://skia-review.googlesource.com/c/skia/+/734379) introduces some dynamically registered GMs.

Bug: b/40045301
Change-Id: I532391cc500aac6b4501d0d1f56f879c478aa469
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/734163
Commit-Queue: Leandro Lovisolo <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
Previously, we disallowed ternary expressions with a void result,
but the error message was slightly unclear; we also disallowed
ternary expressions that contained an array, but only in ES2.

It turns out that WebGL2 explicitly disallows ternaries that
evaluate to void or to arrays or s-of-a's. I've improved the
error message in the void case, and made the array case invalid
all the time instead of just in ES2.

(https://registry.khronos.org/webgl/specs/latest/2.0/#5.26)

Change-Id: I6dbdc98a89dd127d5e7dcdbac51ad17130a9b661
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736358
Commit-Queue: John Stiles <[email protected]>
Reviewed-by: Brian Osman <[email protected]>
Commit-Queue: Brian Osman <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Change-Id: I35ad18eae732e4f06bdecd552455741fc6d2af5a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/737176
Commit-Queue: John Stiles <[email protected]>
Commit-Queue: Brian Osman <[email protected]>
Auto-Submit: Brian Osman <[email protected]>
Reviewed-by: John Stiles <[email protected]>
Until we have a workaround in the GLSL code generator, we will need
to disable this test in WebGL.

Bug: b/294893925
Change-Id: Id08a3f029a91bad9a444dce628a4fe09de8ab7cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/737180
Commit-Queue: Kevin Lubick <[email protected]>
Reviewed-by: Kevin Lubick <[email protected]>
Auto-Submit: John Stiles <[email protected]>
Commit-Queue: John Stiles <[email protected]>
https://chromium.googlesource.com/vulkan-deps.git/+log/33af718d939e..c46d48f777b7

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 [email protected],[email protected] 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:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: [email protected]
Change-Id: I08c961332e8e236814a92b6bffac21a7299a8010
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736674
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
Follow-up to https://skia-review.googlesource.com/c/skia/+/736256

(I had already started this CL when I noticed the bug in the original
SkOpts, and never fixed this code before landing).

Change-Id: I6114cd220e131ad26a12e62d0fd61551621ba561
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736361
Auto-Submit: Brian Osman <[email protected]>
Commit-Queue: John Stiles <[email protected]>
Commit-Queue: Brian Osman <[email protected]>
Reviewed-by: John Stiles <[email protected]>
https://skia.googlesource.com/buildbot.git/+log/89658e42bb91..333a87d1ef8a

2023-08-07 [email protected] [machineserver] Fix Intel CPU parsing bug.
2023-08-07 [email protected] ephemeral_storage.go: Fix test_machine_monitor panic on Windows.

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 [email protected],[email protected] 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: [email protected]
Change-Id: I7d5542fe78134ece44689b33cc48752d6dc4e36f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/736810
Bot-Commit: skia-autoroll <[email protected]>
Commit-Queue: skia-autoroll <[email protected]>
https://skia.googlesource.com/buildbot.git/+log/0e52994bf1b6..333a87d1ef8a

2023-08-07 [email protected] [machineserver] Fix Intel CPU parsing bug.
2023-08-07 [email protected] ephemeral_storage.go: Fix test_machine_monitor panic on Windows.
2023-08-07 [email protected] initial refactor to support text properties per text box
2023-08-07 [email protected] Reland "Reland "Reland "Reland "Testing whitespace change with GitWatcher""""
2023-08-07 [email protected] [autoroll] Creating docker child
2023-08-07 [email protected] Roll Skia Infra CIPD packages from ed824b45206d to 0e52994bf1b6 (4 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/infra-skia
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia Infra: https://bugs.chromium.org/p/skia/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

Bug: chromium:1470711
Tbr: [email protected]
Change-Id: Ic7a39aa9f9d93894752bef02c6e4bbe9c6c9cddd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/737296
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
https://chromium.googlesource.com/angle/angle.git/+log/135a24fc3706..f7d7be8d2ff0

2023-08-07 [email protected] Metal: upstream "UBO convert only whole block".
2023-08-07 [email protected] Vulkan: Retain loadOp when there is a resolve attachment
2023-08-07 [email protected] Simplify struct LinkedUniform a bit more
2023-08-07 [email protected] load/save entire std::vector<LinkedUniform> with one call.
2023-08-07 [email protected] Move name and mappedName out of LinkedUniform struct
2023-08-07 [email protected] Add Gitmodules to angle.
2023-08-07 [email protected] Vulkan: Remove type indices with host-visible bit
2023-08-07 [email protected] Change LinkedUniform::arraySizes from std::vector to unsigned int
2023-08-07 [email protected] Use offscreen DisplayVk on ChromeOS
2023-08-07 [email protected] Validate program binaries are the same CPU bit-ness.
2023-08-07 [email protected] Roll VK-GL-CTS from 00cccd7cf562 to cedd20620c84 (11 revisions)
2023-08-07 [email protected] Metal: disable fastmath less often.
2023-08-07 [email protected] ANGLETest: fix crashes when switching between GLESDriverTypes

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 [email protected],[email protected] 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:Build-Mac-Clang-arm64-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: [email protected]
Change-Id: Id4ba41b582628ea0fcc446a498c4e35d85769d13
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/737257
Commit-Queue: skia-autoroll <[email protected]>
Bot-Commit: skia-autoroll <[email protected]>
Change-Id: Ibbd0cfa6df5ef13448e59c0e0d772597c049fee1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/737933
Reviewed-by: Chris Mumford <[email protected]>
Auto-Submit: Rakshit Sharma <[email protected]>
Change-Id: I658a4d46085bd47dd3cfbe58162a96b49e5b9248
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/738222
Reviewed-by: Chris Mumford <[email protected]>
As per the linked bugs, this was causing a severe performance
regression.

Change-Id: Ibacf842408cee1eb434795437c8bbe0dc5244c8e
Bug: b/291711510, chromium:1475906
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/750403
Reviewed-by: Greg Daniel <[email protected]>
Commit-Queue: Kevin Lubick <[email protected]>
(cherry picked from commit 02fa147)
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/751517
Change-Id: I080ba2191ede25c1c848cf94f05169334084eb32
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/786340
Reviewed-by: Heather Miller <[email protected]>
…kia-m117

# Conflicts:
#	DEPS
#	RELEASE_NOTES.md
#	gn/core.gni
#	gn/utils.gni
#	infra/bots/jobs.json
#	src/gpu/graphite/mtl/MtlCaps.mm
#	src/utils/win/SkDWrite.cpp
@mattleibow mattleibow merged commit 5ab716e into skiasharp Oct 28, 2024
1 check passed
@mattleibow mattleibow deleted the dev/update-skia-m117 branch October 28, 2024 13:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.