The goal here is remove the need for all the specialized vulkan buffer
subclasses and to not have the new class use GrVkResources for tracking
lifetime on command buffers.
This CL just makes the new class and it is not actually used by anything
yet.
Bug: skia:11226
Change-Id: I5f8d8d112af773ba1e8da17e07e75f6f4100e927
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364617
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Change-Id: Idb2f6a3131824ffe29275fe669b5c1688867d448
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364620
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
7e81056a54..6cc845bb0a
2021-02-03 b.schade@samsung.com Vulkan: Add support for EXT_blend_func_extended
2021-02-02 jmadill@chromium.org testing: Add dEQP test merge script.
2021-02-02 amy.liu@arm.com Vulkan:Fix wrong outputCount of emulated RGB copies.
2021-02-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from df5dee645ab5 to 51045556acd0 (3 revisions)
2021-02-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 532fea9e2fd2 to 3535b64d3f52 (466 revisions)
2021-02-02 cnorthrop@google.com Tests: Add Manhattan 3.1 trace
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 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/master/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Tbr: robertphillips@google.com
Test: Test: angle_end2end_tests --gtest_filter=EXTBlendFuncExtendedDrawTest*Test: Test: angle_perftests --gtest_filter="*manhattan_31*"
Change-Id: Ie805677b0cb5c9aa3618c0c266176e20bce5653e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365156
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Without this we'd assert on empty container size.
Change-Id: I697d607af40ac6e62039be33aedb8ff1732d41b8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364839
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Existing call sites have been converted to the SK_ABORT macro.
The sksl_abort() function is no longer referenced and has been removed.
Change-Id: Idf94ce2523e37b62ce87b60afc5d121b9ad29627
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364858
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Change-Id: I4b11aaa8299a4aa2753097c26936e0176189f1db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364641
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
ABORT will be tackled in a followup CL since, unlike the others, it is
heavily used.
Change-Id: I96c092b6c07a3311cf8467b960b8f5e32c2074cb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364640
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
For now we simplify every stroke at the beginning of drawShape*, but in
the future we will give the tessellator a chance to claim stroked shapes
before simplifying the stroke.
Bug: chromium:1172543
Change-Id: Ie90c20a1d342661b9006b16ab1fdad3ebe290ba3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/362798
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
https://www.w3.org/TR/SVG11/struct.html#ImageElement
Supported reference types are data and non-local URIs. Resource loading
requires a ResourceProvider to have been set on the render context.
Not handled in this CL:
- preserveAspectRatio support
- SVG reference types (i.e. '<image xlink:href="file.svg" ...')
Bug: skia:10842
Change-Id: Ieec7569f60516b01fc847f4160d0733b1e3a1cf5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364576
Commit-Queue: Tyler Denniston <tdenniston@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
I don't really care what machine class it's running on right now, and
status.skia.org/capacity says these 10.14.6 bots are the least loaded
of any bot on the tree.
Change-Id: Ie49b2659e99d60e450235207bbbc018e565636b4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364716
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Not sure why these are off... let's find out.
Cq-Include-Trybots: luci.skia.skia.primary:Build-Mac-Clang-arm64-Debug-iOS,Build-Mac-Clang-x64-Release-iOS,Build-Mac-Xcode11.4.1-arm64-Debug-iOS_Metal,Build-Mac-Xcode11.4.1-arm64-Release-iOS,Build-Mac-Clang-arm64-Release-iOS_Metal,Build-Mac-Clang-arm64-Debug,Build-Mac-Clang-arm64-Release
Change-Id: Ibeaa3707eca3df2cd41b91b06ed329568e5398f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364498
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
DSLStatement contained an unnecessary import of SkSLIRNode.h and
referenced SkSL::Expression without declaring it.
Change-Id: I88391276a1c3cd10430ee4c6c63f3e2093e338b4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364603
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
This is just a few miscellaneous buffer changes to make future changes
around switching buffer classes cleaner.
Bug: skia:11226
Change-Id: Icba3b9b5b357956d78f95398cdce9e8733080028
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364616
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Calling td.FailStep() as written here doesn't really do anything except
hide the more useful summary error, e.g. "484 runs of build/fm failed
after retries." Maybe it'll become useful again if I add step nesting?
Change-Id: I23eb59afce8559f4b0e549f31873577939fc7ca7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364497
Reviewed-by: Mike Klein <mtklein@google.com>
This is an experiment to try and get better/different/earlier crashes on
two Android devices that appear to have driver memory corruption bugs.
Bug chromium:1147008, chromium:1164271
Change-Id: I163e045c4b0ec46e89891c24f3c10f7031e7e8db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364601
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Don't expect much out of TSAN given the process-based isolation,
but I'm curious to see how it goes. MSAN should work sensibly.
Change-Id: If0b794805461b0ecd7092900f4412d73cd80d0d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364466
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Implement CC Sphere.
No lighting support for now (matches AE's Light Intensity: 0,
Ambient: 100).
Change-Id: I7eb4d8f9c5dd4b4cb312321cefee0231a9901873
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/362457
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
Going to use this to enable some possible workarounds and investigatory
CLs for chromium crash bugs.
Bug: chromium:1147008, chromium:1164271
Change-Id: Ia7b23765d3ab14edf64d823b8a8adf1622b8ac62
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364600
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This will be used by the DSL.
Change-Id: Iadc5d06fd463b08cf6edf954f03aaf8ffa1fa56b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364578
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Change-Id: Ic53dc7ecab1b44761fe06e6b528864d24cc5fa58
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/363940
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Bug: skia:7650
Change-Id: Ia16f169efdb6be2ce381b9ab3b7f6fcecda26312
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/363799
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Mike Reed <reed@google.com>
td.FailStep() isn't enough to fail the bot,
so go back to a call to td.Fatal() when failures>0.
Change-Id: Ib2be7b15200376ab8a16e4a1b69d98fde0630673
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364471
Reviewed-by: Mike Klein <mtklein@google.com>
In theory, any class could be participate in our pool by subclassing
from Poolable. In practice, IRNode already serves as a good foundational
base class, but this gives us a cleaner division of responsibility.
Change-Id: I17e99caf08bce89bb4d089bf0157106001d5db46
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364118
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
This will make cleaning up the PosTan value easier.
Change-Id: I13aa12f94c560bf8539aa2edb1f9e13779635692
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/362458
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Using value_array (and value_object), while convenient,
adds a measurable overhead. This removes the Point value_object
and replaces it as a return value with Float32Array
(similar to rects). For inputs of a single point, I just
split it into x and y. For inputs with two points, I used
a _scratchFourFloats (formerly _scratchRect) bit of memory.
Two subtle decisions here:
- Why not use scratch memory for a single point? The cost of
having one extra param is a small/negligible price to pay
for less complex code.
- Why not accept Malloc objects? Again, simplicity. Accommodating
Malloc would make the code harder to read and require more
checks. I don't know if anyone wants to have malloced points;
if they do, we can probably accommodate that.
Change-Id: I1b1c29f62e01c2f1c8c1218f58e3bad642214322
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/362097
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Even with all the workarounds (deleted here), calling td methods still
costs a fair chunk of CPU work. Instead of sneakily working around it,
just never call it when run locally.
Change-Id: I2e421a5d585c86a6315d56867a29bdcdc9d45479
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364461
Reviewed-by: Mike Klein <mtklein@google.com>
This works around a GLSL compilation bug on the Tecno Spark 3 Pro.
Change-Id: I516bd64745a8e99cccc87ee4bb2e1f5d5b26c130
Bug: skia:11255
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364116
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Previously, our only test was invoking `sin(1)` which is a pretty
ineffective test. Now, we test args and return types for all the basic
scalars/vectors/matrices.
Change-Id: I7d335303eef8b9c9c6cfef2265a15bbd9bd73e0c
Bug: skia:11246
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/363943
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Bug: chromium:1172543
Change-Id: I442919070a70ed97d93cc66db81be3a67d615203
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/362796
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
0be050a44a..7e81056a54
2021-02-02 m.maiya@samsung.com Vulkan: Support integer type incomplete texture
2021-02-02 kbr@chromium.org Disable SH_SCALARIZE_VEC_AND_MAT_CONSTRUCTOR_ARGS workaround.
2021-02-02 jmadill@chromium.org Vulkan: Add missing variable inits to ContextVk.
2021-02-01 ynovikov@chromium.org Fix gn check on iOS for dEQP and trace targets
2021-02-01 timvp@google.com Tests: Add eFootball PES 2021 trace
2021-02-01 jmadill@chromium.org Log dEQP QPA files as test artifacts.
2021-02-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 5830d745b1b2 to df5dee645ab5 (4 revisions)
2021-02-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from e02583244aad to 38d88d12b2fd (4 revisions)
2021-02-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 0c6211fe862e to 532fea9e2fd2 (584 revisions)
2021-02-01 syoussefi@chromium.org Remove extension check in validation of ES3.2 entry points
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 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/master/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Tbr: robertphillips@google.com
Test: Test: angle_perftests --gtest_filter=TracePerfTest.Run/*efootball_pes_2021*
Change-Id: I34dd269b70d32f8c9f1d88102fc4fe442ad4194f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364199
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>