This should give us access to newer system headers. We are upgrading to
C++17, and in iOS 9, the <optional> header is buried in
<experimental/optional>.
Change-Id: I3e4d4861ddf06c6e02939f1c97857d9617284428
Bug: skia:12882
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502305
Reviewed-by: Erik Rose <erikrose@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Test "InlinerHonorsGLSLOutParamSemantics" was failing on Wembley devices
and is now disabled on that GPU.
Also, it turns out that the inliner has ignored functions with out
params for a long time now, but our test names haven't been updated to
account for this. So, did some additional cleanup:
- "InlinerHonorsGLSLOutParamSemantics" (the test in question) has been
moved to shared/ and renamed to "OutParamsAreDistinct."
- Removed test "OutParamsNoInline" as it is functionally the same as
"OutParams".
Change-Id: I1431ed197b9216cb482eee4f5e4eb2579a5303f7
Bug: skia:12858
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502303
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Introduce GrTextReferenceFrame and use it in TransformedMaskSubRun
and TransformedMaskSubRunSlug. This will allow these to SubRuns
to be combined in the future.
In addition, move fAlloc to first field in Slug to avoid use
after free problems.
Change-Id: Ib4f791389cf9b3c2a0f2e0fd802eccdea4841d1f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502301
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
This reduces the reliance on the fBlob to only
initialPositionMatrix.
Change-Id: I92728ef0bec998a1c154642abfe139baceca7b6e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502299
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
This CL rolls back various changes from http://review.skia.org/457298
which made the code longer or more complex. They are no longer needed
now that we compile in C++17 mode.
A few changes were left as-is because they seemed equally good either
way.
Change-Id: I4eb0fe3d12382bcb485abb5222a0f00411742191
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502296
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
sk_SecondaryFragColor corresponds to an ES2-only concept
(gl_SecondaryFragColorEXT) and does not have any SPIR-V equivalent.
Two fixes were needed:
- sk_SecondaryFragColor shouldn't be in SPIR-V code at all. Report it as
an error when it appears.
- We don't stop compilation when this error is reported, so we need to
fix up the assertion that the fuzzer initially discovered.
Specifically, the fuzzer found that the `sk_SecondaryFragColor`
variable never got a SPIR-V ID assigned to it in fVariableMap, so the
compiler would assert when assembling an expression containing that
variable. Now, we make sure to populate fVariableMap with an (unused)
ID in `writeGlobalVar` to avoid this crash.
Change-Id: Ib86919dfc9a325b2b82a7f4b2054b747dad7c32f
Bug: oss-fuzz:44096
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501976
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Bug: skia:12845
Change-Id: Ia6a754d6e86991d9709422b3eb657ca4fbd52f3c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501842
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Change-Id: If0ecc3c1080b8e44f17dbb34ff6cc1d66794ae0b
Bug: skia:11052, skia:11919, skia:12858
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501843
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Removed a special case from `writeFunctionCallArgument` which avoided
using a scratch variable for out params; now we always use the scratch
variable and copy it back to the original variable at the end.
Change-Id: I0e446a3fde6d19554943384210bd911f6f9c8cfa
Bug: skia:11052, skia:11919, skia:12858
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501836
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Change-Id: I3bcf7a23eb27e98d24840b492930955125d35bd4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501476
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
My hope is that with Bazel, we will be able to remove
this CIPD package in favor of a properly maintained/created
toolchain.
Change-Id: I6a7b5013da22395511d828bee857777fbe0bcd8c
Bug: skia:12878
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502289
Reviewed-by: John Stiles <johnstiles@google.com>
This creates a new SkImage with the same texture and changes it
out without the user noticing (or needing to delete the old Image).
Change-Id: I3a1ce6d4a335873f2b7670d56dadfccdc7881c38
Bug: skia:12723
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/495556
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Change-Id: Id4ac8fae367798974d12941b4cb34894fcc4afb4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501841
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
This allows dm to run basic Vulkan tests, albeit without GPU
acceleration.
Change-Id: Idb738125ad302054be290d50f92b494d6fc6a84c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501686
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Christopher Dalton <csmartdalton@google.com>
Commit-Queue: Christopher Dalton <csmartdalton@google.com>
Using a struct with named variables made the code easier to understand.
Change-Id: If8af6c049d4360f9c463818116b52b4d943a9473
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501838
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
This allows us to use a newer Clang version that supports C++17.
Change-Id: Ifbff4dbd1f1da0212ea633eb81beb50ebe7744ac
Bug: skia:12875
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501479
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
We can disable SkSL tests on a case-by-case basis via the skip list in
`run-wasm-gm-tests.html`. This doesn't allow us to exclude by GPU, but
in practice the Golo machines tend to all have a uniform setup (with
Quadro P400s) so we can just work around failures as they come up.
Change-Id: I46f709691282e576d00d5191e9dbd46b740e4a5f
Bug: skia:12876
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501682
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
This is a reland of fc48cb5b39
Original change's description:
> Fill umbra for transparent directional geometric shadows.
>
> The shadow caching system was only set up for directional shadows where
> the center geometry drops out, so we need to add a new entry type to
> handle the case for transparent occluders.
>
> Bug: skia:12773
> Change-Id: I30e052db541ea26220f252ae7ccb858084e7ee7f
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/500896
> Reviewed-by: John Stiles <johnstiles@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
Bug: skia:12773
Change-Id: I5d236fae4d237051685bbd3fe0393506a38b52ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501681
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
This reverts commit 2710bcfc68.
Reason for revert: This CL is preventing the roll into Android because it is causing CTS failures.
Original change's description:
> HEIF decode: add support for 10-bit color format
>
> Bug: b/201083499
> Test: TBD
> Change-Id: I76d3244782c139006dff68ea713eb24c10bb962d
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501159
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Leon Scroggins <scroggo@google.com>
Bug: b/201083499
Change-Id: I4ea9fb74a9792bcc1687024d852ffc3525093727
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501676
Auto-Submit: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Change-Id: I077e504be5aa0aaca615a83ac0b984ea9f651e6e
Bug: skia:12858
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501478
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
602b957b88..701d51b101
2022-01-27 cclao@google.com Vulkan: Add SmallBufferPool for small allocations
2022-01-27 robertphillips@google.com Expand error message on BindTexture validation failure
2022-01-27 timvp@google.com Tests: Add PUBG Mobile launch trace
2022-01-27 cclao@google.com Vulkan: Use queue for mGarbageQueue
2022-01-27 jmadill@chromium.org Vulkan: Remove ProgramExecutableVk back-pointers.
2022-01-27 patrto@microsoft.com Change Windows display initialization from ANSI to wide version
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 robertphillips@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: robertphillips@google.com
Test: Test: TracePerfTest.Run/*pubg_mobile_launch
Change-Id: I0aefd3b1019c6ed1b4e29b42ffe34a73ff819274
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501459
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Only one SkSL test is broken at the moment, but I don't have fine-
grained controls for test disables in wasm.
Change-Id: Ic44b4d6d660d4cb382d18cccf07574318b982d5a
Bug: skia:12876
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501438
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Upcoming dehydration / rehydration changes require $intLiteral and
$floatLiteral to be present in the symbol table (as all other private
types are). It turns out that even with them marked private, having
them in the symbol table allows them to be incorrectly accessed without
error due to a code path that fails to check for private types.
This CL takes care of that and ultimately results in better output from
PrivateTypes.
Change-Id: Ic47b77a770834079f28c3195545a7cabca8e6cb3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501196
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
This reverts commit 64c971350e.
Reason for revert: breaks
Housekeeper-PerCommit-CreateDockerImage_Skia_Release
https://status.skia.org/logs/7PAT8xw23VsUyx4oJgZZ/1327ba91-d03a-4e98-b1dd-0dedb401333b
"<string_view> not found"
Original change's description:
> Use native std::string_view.
>
> We also used some string_view functionality from C++20/23. These have
> been replaced with free functions with the same name.
>
> Change-Id: I3bf40f99aeb500495f344fd8c6872619267d42be
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/500897
> Reviewed-by: Herb Derby <herb@google.com>
> Auto-Submit: John Stiles <johnstiles@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>
Change-Id: I3712eddc8ad49ad38d31ca5bf008260e251bdbd7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501396
Auto-Submit: John Stiles <johnstiles@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This CL backs out C++14 compatibility changes from
http://review.skia.org/457298 :
"2. Lack of C++17 copy elision means classes of objects constructed at
function return need a copy or move constructor even if RVO will mean it
isn't called."
Change-Id: I33a833d33b221e757bf6a6459835a7215b4e6b66
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501240
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
We also used some string_view functionality from C++20/23. These have
been replaced with free functions with the same name.
Change-Id: I3bf40f99aeb500495f344fd8c6872619267d42be
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/500897
Reviewed-by: Herb Derby <herb@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
This handles them using the same pattern used by Block, ensuring that
they are popped when we are done with them.
Change-Id: Ibffb85e036d623ac9a33221df0688aeebfd8e85b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501017
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Bug: b/201083499
Test: TBD
Change-Id: I76d3244782c139006dff68ea713eb24c10bb962d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501159
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
This shakes out a few driver issues.
Change-Id: I35041a904fb762a5b933b3e970f2d7a668803dcd
Bug: skia:12858, skia:11919
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501019
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>