d4439824c5..72001c7d85
2020-11-10 m.maiya@samsung.com Vulkan: Bug fix in texture respecification code
2020-11-09 jmadill@chromium.org Vulkan: Move ExtensionNameList out of the class.
2020-11-09 jmadill@chromium.org Vulkan: Move primary command buffer to CommandQueue.
2020-11-09 jmadill@chromium.org Traces: Use 4 download threads.
2020-11-09 jmadill@chromium.org Perf Tests: Trace multiple threads.
2020-11-09 jmadill@chromium.org Vulkan: Make feature names consistent.
2020-11-09 syoussefi@chromium.org Fix expectations file for prerotation dEQP executables
2020-11-09 m.maiya@samsung.com Vulkan: Rewrite interpolateAtOffset to account for Y-flip
2020-11-09 jmadill@chromium.org Fix trace writing in angle_perftests.
2020-11-09 m.maiya@samsung.com Vulkan: Support VK_KHR_image_format_list for AHB backed EGL image
2020-11-09 stha09@googlemail.com Vulkan: add explicit template specialization for barrierImpl
2020-11-09 m.maiya@samsung.com Vulkan: Add EXT_external_buffer entry points
2020-11-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 612ded0654a0 to 4ed9d3498dcf (2 revisions)
2020-11-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-Headers from 87451c55aa8b to 670ffea9d61b (1 revision)
2020-11-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 52d33a46255e to 61aafe6377ea (506 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 jlavrova@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: jlavrova@google.com
Test: Test: ImageTest.Source2DTarget2DTargetTextureRespecify*Test: Test: angle_end2end_tests.exe
Change-Id: I6aeb8fba50ede8532c96e174f9c194ca1caca325
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333281
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Originally, the positions had a bias of -initialOrigin,
so all that was needed was to add the new drawingOrigin
in. Store the actual device coordinates thus eliminating
the -initialOrigin, and calculate the origin offset
drawingOrigin - initialOrigin at vertex fill time.
Change-Id: I5a7fe0074f0c7fd01c5fe90a47e67509631379fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333127
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Remove done and release distinction. Chrome is not using either as
it tracks texture access using other synchronization mechanisms
(semaphores, flush finish procs). Now there is just fulfill and release
where release is called when the texture can be deleted. Also,
release proc can be null.
Simplify texture idle mechanism as the "flushed" state was only used to
implement the old idea of a release proc. The "finished" idle state is
still used to implement the new release proc. Though, it could also be
removed if GrTexture were to be removed for textures returned by fulfill.
Not directly tied to this bug, but a new YUVA factory will be required
and it's good to clean things up first to avoid adding another
instance of the current complexity.
Bug: skia:10632
Change-Id: I4fe3c0af3f5a591506b1b3c736fd3284a38465a6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/331836
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Lots of this stuff can be delegated to each other,
cutting the protected SkTArray constructors to two.
Change-Id: Ie35b7a5ceb0ffef5a9548afccc546e076bd668cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333256
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This resolves the fuzzer error, as the program will fail compilation
before reaching the SPIR-V translation stage at all.
Change-Id: Ia73af497b1f57314a29878f2d2a29dc80186e630
Bug: oss-fuzz:27300
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333130
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
This decreases alignment for things like float
and increases alignment for things like __m128.
The other users of SkAlignedSStorage looked simple enough to port to
aligned char[]. I haven't changed either of their alignments---still
the old max(void*,double)---but we can now if we want.
All that together lets us delete SkAlignedSStorage.
Change-Id: I6b5957a26f42ad859de383054573fb58d5cd0576
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333196
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Before the script would simply assert when it couldn't find valid
code-signing information. Now it spits out a message explaining
what's going wrong and a suggestion on how to fix it.
Change-Id: I81f64450702238f8a53ea0d7900e7de2d23b457b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333134
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Do these tests run ok once we init the SkSTArray storage first?
Cq-Include-Trybots: luci.skia.skia.primary:Test-Debian10-GCC-GCE-CPU-AVX2-x86-Debug-All-Docker,Test-Debian10-GCC-GCE-CPU-AVX2-x86-Release-All-Docker,Test-Debian10-GCC-GCE-CPU-AVX2-x86_64-Debug-All-Docker,Test-Debian10-GCC-GCE-CPU-AVX2-x86_64-Release-All-Docker
Change-Id: I5009b06ba16edf72692a58a9f2469fd38cefb2a6
Bug: skia:10891
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333147
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
`in` vars shouldn't support initializer expressions at all. The fuzzer
noticed that dead-stripping interacts poorly with `in` var initializer
expressions, which makes sense because it's an unsupported and untested
path. In a followup CL, lines 1 and 3 will both become errors.
Change-Id: Ibb64ca319a046b040eea976acb6798a1402451de
Bug: oss-fuzz:27300
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333128
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>
Using private inheritance is similar to having a class member,
except it's initialized before the next base class, SkTArray.
This lets us pass it to SkTArray's constructors.
I think we can make related changes (updating the various SkAlignedFoo,
not using them here, or not using them anywhere) independently.
... storage constructors made explicit at suggestion of GCC's -Wextra.
... now with explicit static_cast<STORAGE*>(this)
Change-Id: I665cf840e111da68f039416c9649ce328cc308d6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333146
Reviewed-by: John Stiles <johnstiles@google.com>
Failing with RuntimeError: function signature mismatch
Bug: skia:10869
Change-Id: Ifd2f78362e2fd30b1c53be56a811551974e3cac3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333119
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Change-Id: If8ed057c230ca8d5291b65603f7196dbad897bcc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333120
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Change-Id: I9490479242a025fa1f5ff84a556ae43d8de4c19a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332897
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Once I noticed this, I had to go for it.
Change-Id: Ibd720e8b731298ab716eab8409c6fe05417c12b5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332721
Commit-Queue: Adlai Holler <adlai@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Especially while I'm fiddling with the implementation, we don't
want the user to be surprised when using DDLs also triggers
this other codepath.
Bug: skia:10877
Change-Id: I660ea08189fff45acd7a45df12e15c45f607758a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332720
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Auto-Submit: Adlai Holler <adlai@google.com>
In addition, place all the subruns, and helpers in
an anonymous namespace. Add helper has_some_antialiasing.
Change-Id: Iee7dc24f7e568e2bace03ee00c1c98dbf3050634
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332744
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
This reverts commit 4cb5c5e172, and fixes
the Chromium issue by declaring sign(x) in sksl_public.sksl.
Original description:
This makes numerous internal and GLSL types or intrinsics hidden from
public (runtime effect) SkSL. In particular:
- Only core numeric types are visible to all program types. GLSL types
involving images, textures, and sampling are restricted to internal use.
- sk_Caps is no longer visible to runtime effects.
- The set of intrinsics available to runtime effects is now a separate,
curated list in sksl_public.sksl. It exactly matches the GLSL ES 1.00
spec order.
- The blend intrinsics are no longer visible, which also fixes a bug.
These are nice, but we're not going to offer them yet - they involve
enums, which creates complications.
Bug: skia:10680
Bug: skia:10709
Bug: skia:10913
Cq-Include-Trybots: luci.chromium.try:linux-chromeos-rel,linux-rel
Change-Id: I42deeeccd725a9fe18314d091ce253404e3572e2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332750
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
We already allowed narrowing type conversions, so GLSL type aliases
could be used almost exclusively. This fixes the last spot that a
client would be forced to use half4 rather than vec4.
Bug: skia:10679
Change-Id: Ie9cfc161650b238678861b9b126ce586c229162d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332743
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Supporting this filter will also allow us to start implementing and
testing the filter result DAG via the filters-color-01-b test. That test
is one of the simplest that involves filter result storage, so it's a
good candidate to start with.
Bug: skia:10841
Change-Id: Id8317ccfb78031cc6af83c9f3e3f382dcb6dee98
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332599
Commit-Queue: Tyler Denniston <tdenniston@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
This should never be possible.
Bug: skia:10877
Change-Id: I476ece42182b2296da528a2b3a3a2587c5bfedea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332719
Auto-Submit: Adlai Holler <adlai@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
This makes both APIs have the same arguments with the two
source coordinates first and all the destination params
(image info, optional buffer, optional rowBytes) after.
Bug: skia:10717
Change-Id: I483e4f33f24e226793db6113d5ba5b1955cd892e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332622
Reviewed-by: Mike Reed <reed@google.com>
Experimenting with a single struct for everything, to simplify the
number of API changes/additions needed.
e.g. makeShader(...)
Idea is to use SkSampleOptions to augment drawBitmap calls, so we can
remove SkFilterQuality enum from SkPaint.
Change-Id: I9045ff483f58af29148d7dc21d30b294c4a718a1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332739
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>
This is a reland of 87bc83eaa6
Original change's description:
> Add memsets to the GrBlockAllocator unit tests.
>
> These will verify that our blocks are actually set up properly--if not,
> we'll stomp over a sentinel word and/or trip an ASAN poisoned byte,
> causing the test to fail.
>
> Change-Id: I2dcb5b913d00c408f70c71f2660c6ec6017b452c
> Bug: skia:10885
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332260
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Auto-Submit: John Stiles <johnstiles@google.com>
Bug: skia:10885
Change-Id: Ie1ffcfeffec14a016b50e6464fc23878b4dd2ccb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332716
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
This implements constant folding optimizations on int vectors
(== != + - * /) that were previously only supported on float vectors.
Bug: skia:10908
Change-Id: Ibf61ab43eb7ae2ce8e99cce21cc55777359817e5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332424
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
This gives template code a generic way to access IntLiteral/
getIVecComponent or FloatLiteral/getFVecComponent based on their
template type.
(Interestingly, we have BoolLiterals and support vectors of bools, but
don't have any paths in the optimizer that support constant-folding bool
vectors, so we don't have a getBVecComponent.)
Change-Id: I7af754f77544716cf6cd5c6703a07fb3dd1d5173
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332742
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
No-Try: true
Change-Id: Ief2f5af2d7ea827f772c5ee1c32bae761fc8d60b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332748
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
- Add rendering test for the empty path case
Bug: skia:10909
Change-Id: I19188c58d4ee0841e441c33f4c1a5ed27dc2fd25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332736
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
This reverts commit bea0dc67f4.
No-Try: true
Change-Id: I7b000de199dc23bd3719a4ee835b2a8d3c93fefd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332747
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
This reverts commit 1277971939.
Change-Id: I7985ef22ddd19adcab468acc684b330ce6978c8d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332738
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
This simplifies our world a little bit.
Bug: skia:10877
Change-Id: I2fb27cd53e9fda0f279c046f6eaa50fd02774e72
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332604
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Adlai Holler <adlai@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
This reverts commit f8f23b2030.
Reason for revert: b/172617382 is creating issues for Android's Webview
Original change's description:
> Draw image filters directly under non-axis-aligned transforms
>
> This removes hacking the canvas CTM and wrapping the paint's image
> filter in a special MatrixTransform that computed a post-transform
> instead of its documented pre-transform effect. Performance-wise, the
> computed layer sizes should be about the same, but we avoid one less
> render target switch because we apply the transformation while drawing
> to the dst device, vs. transforming into another temporary layer and
> then drawing that to the dst device.
>
> Several important changes in behavior here:
> 1. The DeviceCM record no longer has a stashed matrix to restore and
> holds its restoration paint directly.
> 2. Devices for image filter inputs can now have device-to-global
> transforms that are not integer translates.
> 3. The MatrixTransform hack punted when there was perspective because it
> could produce excessively large temporary images, but the new version
> appears to work around that. We now impose a maximum layer size to
> protect against that and automatically scale the layer to prevent it.
> Perspective image filters otherwise now draw correctly.
> 6. Updated layer sizing code to use the new image filter APIs
> 7. Updated backdrop filter and restore filters to go through the same
> code paths, although restore filters skip the intermediate image
> transform.
> - layer bounds and transforms now go through the updated skif API
> and is hopefully more straight forward to understand.
> 8. Now we can optimize root color filter nodes of a filter DAG, even if
> the entire DAG can't be represented as a color filter. The last node
> is pulled off and composed with the restoration paint instead.
>
> Bug: skia:9074,skia:9283
> Change-Id: I1fa1d50135b9d6d453b02f89aa3cc3b54deab678
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/328376
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>
TBR=bsalomon@google.com,robertphillips@google.com,fmalita@google.com,reed@google.com,michaelludwig@google.com
Change-Id: I098d0e4b8ee067b436400eb9fea047e629544eec
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9074
Bug: skia:9283
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332737
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>