Commit Graph

55192 Commits

Author SHA1 Message Date
skia-autoroll
e918606a11 Roll Dawn from 26468c407175 to e2f083e4b0f5 (6 revisions)
https://dawn.googlesource.com/dawn.git/+log/26468c407175..e2f083e4b0f5

2021-05-11 enga@chromium.org Add tests for copies between 3D and 2D array textures
2021-05-11 enga@chromium.org Implement 3D texture copies on OpenGL/ES
2021-05-11 enga@chromium.org Implement 3D texture copies on Metal
2021-05-10 enga@chromium.org Implement 3D texture copies on Vulkan
2021-05-10 enga@chromium.org Validate that 3D texture copies cannot be between the same subresource
2021-05-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 6a56744b557c to 9fdfa1e32374 (1 revision)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 6a56744b557c to 9fdfa1e32374

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 kainino@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-Debug-Dawn
Bug: None
Tbr: kainino@google.com
Change-Id: I329872804b1e794d7549b318253aae2e5341b080
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406560
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-11 05:43:36 +00:00
skia-autoroll
cb41df0bfa Roll SwiftShader from e260190edbd2 to dcb33711bd4b (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/e260190edbd2..dcb33711bd4b

2021-05-10 srisser@google.com Allow unrestricted depth bounds
2021-05-10 srisser@google.com Make clang-format-all.sh git aware
2021-05-10 sugoi@google.com Reduce size of SampledImageDescriptor

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 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:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: robertphillips@google.com
Change-Id: I86bda4d104da35e9016585d12943c72aade77553
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406558
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-11 05:28:36 +00:00
skia-autoroll
dc753cfc65 Roll ANGLE from 69d593b5d650 to 0639f7a9e653 (40 revisions)
69d593b5d6..0639f7a9e6

2021-05-10 jmadill@chromium.org Check angle_has_build before including runtime_deps.
2021-05-10 cnorthrop@google.com Tests: Add --fixed-test-time option
2021-05-10 cnorthrop@google.com Tests: Run Android tests fullscreen
2021-05-10 syoussefi@chromium.org Translator: Ensure structs and blocks are uniquely defined
2021-05-10 m.maiya@samsung.com Vulkan: Add device local fallback in findCompatibleMemoryIndex(...)
2021-05-10 timvp@google.com Remove Settings GUI from AOSP Builds and make product-specific
2021-05-10 jmadill@chromium.org infra: Remove duplicated trybots from the CQ.
2021-05-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from e839645bb9a6 to e260190edbd2 (2 revisions)
2021-05-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 13d25088cdc6 to d3354ebca460 (6 revisions)
2021-05-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 5f1f8ce65c68 to 518c3462c0a9 (330 revisions)
2021-05-10 lubosz.sarnecki@collabora.com TracePerfTest: Delete offscreen objects only when initialized.
2021-05-10 lubosz.sarnecki@collabora.com Capture/Replay: Add GLES1 test expectations.
2021-05-10 lubosz.sarnecki@collabora.com samples: Add TorusLighting sample.
2021-05-10 lexa.knyazev@gmail.com Update entry points for GL_EXT_texture_sRGB_RG8
2021-05-10 lubosz.sarnecki@collabora.com FrameCapture: Capture GLES1 vertex buffer pointers.
2021-05-08 syoussefi@chromium.org Translator: remove image2DRect
2021-05-08 syoussefi@chromium.org Vulkan: Cleanup buffer format fallbacks
2021-05-08 syoussefi@chromium.org Use ANGLE GL for Lacros Chrome
2021-05-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from f4228a4b663d to 5f1f8ce65c68 (809 revisions)
2021-05-07 m.maiya@samsung.com Vulkan: Don't assume host visibility for external buffers
2021-05-07 jmadill@chromium.org infra: Re-enable swarming tests.
2021-05-07 jplate@google.com Remove redundant OpenCL ICD library
2021-05-06 lubosz.sarnecki@collabora.com capture_gles_1_0: Implement ES1 capture functions.
2021-05-06 m.maiya@samsung.com Vulkan: Handle GL_MAP_PERSISTENT_BIT_EXT for external buffer
2021-05-06 jmadill@chromium.org Add missing perf results merger scripts.
2021-05-06 syoussefi@chromium.org Allow translator to use headers from common/spirv
2021-05-06 jmadill@chromium.org Explicitly include "runtime_deps" on Windows.
2021-05-06 m.maiya@samsung.com Vulkan: Honor mapRangeImpl and unmapImpl abstraction
2021-05-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 9698f0db4cd5 to dab93ea8f88c (1 revision)
2021-05-06 sergeyu@google.com [Fuchsia] Disable Vulkan validation
2021-05-06 jplate@google.com Add warning messages for not (yet) supported CL commands
2021-05-06 jmadill@chromium.org infra: Temporarily disable all swarming tests.
2021-05-06 jmadill@chromium.org Revert "Temporarily remove standalone tester bots from CQ."
2021-05-06 jmadill@chromium.org infra: Fix exclusion spec JSON.
2021-05-06 jplate@google.com Add loader for CL pass-through back end
2021-05-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 476acb91ebc2 to 9698f0db4cd5 (14 revisions)
2021-05-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 484a3e15893c to e839645bb9a6 (5 revisions)
2021-05-06 lubosz.sarnecki@collabora.com queryutils: Handle AmbientAndDiffuse param count.
2021-05-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from bc5a26253bb7 to 13d25088cdc6 (7 revisions)
2021-05-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 2270e13321c2 to f4228a4b663d (543 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 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
Test: Test: angle_perftests --fixed-test-time 20
Test: Test: angle_perftests --max-trial-time 2
Test: Test: python3 src/tests/capture_replay_tests.py --gtest_filter="*/ES1_Vulkan_SwiftShader"
Change-Id: I20cd4156b8f5199c3ceb12650a6679d6be532151
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406381
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-10 23:33:34 +00:00
Jorge Betancourt
e3934b937e [androidkit] expose lookAt, perspective, and inverse Matrix construction
Change-Id: I94de24b2e47365cd65025166d83dd8b6c8fda90a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405857
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2021-05-10 23:25:54 +00:00
Ethan Nicholas
614fb1ef9c Removed early_fragment_tests layout qualifier
This layout qualifier is not actually used anywhere.

Change-Id: I817c9affdd00e492c70f251eb52680644b7ff3f7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406141
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-05-10 23:21:34 +00:00
Brian Salomon
99ebb17aed Add detection of underlying GL driver info on ANGLE GL backend.
Also remove kANGLE from GrGLVendor and GrGLDriver. Just use
GrGLANGLEBackend to detect if on ANGLE.

Bug: 1203705
Change-Id: I676dcf52ae5209abf6227175d0435441d0d42e25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405692
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-05-10 22:42:55 +00:00
Ethan Nicholas
4fe43b3ad8 Added a comment explaining DSL Declare's signature
Change-Id: Ie151d31f7662586862b17d994ccf196b1d492a68
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406201
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-05-10 19:47:52 +00:00
John Stiles
420c563ba1 Add support for uint types in DSL C++ code generation.
UInt support was added to DSL in http://review.skia.org/403601. We use
the UInt type in the DitherEffect fragment processor.

Change-Id: I2770eb0196177ee403b461134c9895d2e0b2e6db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406139
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-05-10 18:43:52 +00:00
Brian Osman
a372429440 Align SkSpan API with std::span
SkSpan is a convenient type to use on API boundaries - callers can have
their collection in a stack-allocated array, or any contiguous container
(std::vector, etc). Those will all implicitly convert to SkSpan, making
call-sites easy to read/write.

Before making it part of Skia's public API, this CL removes parts of the
API that aren't present in std::span -- when Skia moves to C++20, this
should allow us to use std::span instead, and remove SkSpan entirely.

The most disruptive change is the removal of `int count()`. That's
replaced by a new free function `SkCount` that works on any container,
and incorporates the overflow check from SkTo<int>.

Change-Id: I86cdfad1700f341da3b81a965b396ca9d8b79df9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405816
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-05-10 17:41:52 +00:00
Brian Salomon
5ff9b79f44 Split out GrGLDriver/driver version detection from GrGLGetDriverInfo.
This will make it possible to reuse this code to detect the GL driver
info when running on ANGLE's GL backend.

Bug: 1203705
Change-Id: Ib0ef3f1ea50e462d743f5a0be3ec1eef3850c62b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405691
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-05-10 17:18:32 +00:00
John Stiles
60cafdf336 Simplify generated SkSL in emitNormalizedSkPosition.
This relands one portion of http://review.skia.org/403079, which was
rolled back due to a Chrome roll issue (a pixel-gap introduced in a form
rendering test).

Change-Id: I1a609ca54be58dd7ceeb2a63c22aac6eea90e8b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406138
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>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-05-10 16:52:02 +00:00
Jorge Betancourt
c44ede6c78 [androidkit] expose minimal stroke settings to Java
Change-Id: I012aa2760ff2b39f0c21d6e235cf6731d13bfe3f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405856
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
2021-05-10 16:33:32 +00:00
Ben Wagner
51308f145c SkTHashTable assert key self equal.
Add an assert in SkTHashTable::uncheckedSet that each added key is equal
to itself. This is an implied precondition which is easy to get wrong if
the key contains floating point values which may become NaN.

Motivated by https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=30314
which would have been much easier to track down with this assert, since
the issue would have been discovered at insertion instead of much later
on removal.

Change-Id: I4eabb6892d2bff1e7bc33c04fd6b297b189a3b02
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405695
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2021-05-10 15:51:02 +00:00
Shahbaz Youssefi
8d8a68339b Fix ANGLE roll
ANGLE requires two new variables to be defined; angle_spirv_headers_dir
and angle_spirv_tools_dir.

This change adds those variables in preparation for an ANGLE roll.

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
Change-Id: I0c45cb19fd07c6a8551de68cdfe430675108ddb2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405678
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-05-10 15:34:52 +00:00
Michael Ludwig
799658f5c2 More sanitization of coordinates in GrTriangulator
It took a few "independent" changes in order to get the linked fuzzer
bugs to pass without failing. Leaving any out triggered an issue :/

 1. I changed nearly_flat to be <= epsilon, since if it's == epsilon and
    we split the edge, then the new coordinates would have
    difference < epsilon.
 2. I updated double_to_clamped_scalar to also snap very small values to
    0 (right now 16 * float epsilon).
 3. double_to_clamped_scalar is now used to clean up the computed
    intersection of two edges, and is used to process all initial
    vertices (in case the curve evaluation generates lots of denormals
    etc.)
 4. I updated the use of nearly_flat in checkForIntersection to report
    no intersection if both lines are nearly_flat. The comments suggest
    nearly_flat means you can't split along that line since the new
    coord is incalculable. So if both lines are flat, it's a really
    tough numerical scenario and I just punt.

Then I made a few other changes for the fuzzer and debugging:
 1. Added more logging messages and updated the code so that it compiles
    correctly if TRIANGULATOR_LOGGING is defined.
 2. I was also getting asserts in the fuzzer because the vertex
    allocator expects the vertex buffer to be detached by the path
    renderer before its destroyed, so I just have the fuzzer detach and
    discard it. Running locally, the fuzzer test cases from the two
    linked bugs pass successfully without oom'ing or timing out.

Bug: oss-fuzz:33672, oss-fuzz:33620
Change-Id: I7687b920db0a9e200b3fa79b323974b7812e52ff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404120
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2021-05-10 15:23:02 +00:00
Dominik Röttsches
ee98a42d72 Avoid code duplication in retrieving color stops
Define a lambda to iterate over a FT_ColorStopIterator and copy the
stops and colors to a vector.

No functional changes.

Change-Id: I505b32c3add7b723beb43f6ec10cfcd3feaf3b9a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405716
Commit-Queue: Dominik Röttsches <drott@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2021-05-10 14:59:02 +00:00
John Stiles
edac7716aa Evaluate single-argument generic intrinsics at compile time.
In particular, this optimizes abs() and sign() when all inputs are known
at compile time. This resolves a TODO on a test case in
`IllegalIndexing.rts`.

Change-Id: Ica310522a85b42dc7ae255bd25004a6629d04176
Bug: skia:10835
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405676
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-05-10 14:50:50 +00:00
Brian Salomon
96263aa7c6 Reuse GL enums for ANGLE vendor/renderer
Currently our ANGLE vendor/renderer detection is based ANGLE's D3D
backends. To detect on the GL backend it'd be helpful to reuse the
normal GL detection after extracting the relevant GL backend strings
that ANGLE puts in GL_RENDERER in its GLES frontend. This is a step in
that direction.

Bug: 1203705
Change-Id: I5367c49e8aaee2e138088316566f95900b9c4831
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405689
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-05-10 13:38:30 +00:00
skia-autoroll
bdadfc16df Roll SK Tool from 33de3938b244 to bccbf0e3ae0f
https://skia.googlesource.com/buildbot.git/+log/33de3938b244..bccbf0e3ae0f

2021-05-10 kjlubick@google.com [gold] Search for closest diffs in parallel
2021-05-08 rmistry@google.com Use main branch in skcms-skia roller

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 lovisolo@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

Tbr: lovisolo@google.com
Change-Id: I13892d0d7056b2f9de5c104fe9a77afa6afc4efb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406076
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-10 12:59:01 +00:00
skia-autoroll
e03030e1a7 Roll Chromium from 54647a439c14 to ed46c1e47728 (599 revisions)
54647a439c..ed46c1e477

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 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: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: robertphillips@google.com
Change-Id: Ie39c76e663678ed767efca5a36a22517adec7531
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406022
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-10 05:41:00 +00:00
skia-autoroll
bb2acbb147 Roll Dawn from 09a97ad44611 to 26468c407175 (6 revisions)
https://dawn.googlesource.com/dawn.git/+log/09a97ad44611..26468c407175

2021-05-08 enga@chromium.org Metal: Add CommandRecordingContext argument to ClearTexture
2021-05-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 25df959dadb0 to 6a56744b557c (9 revisions)
2021-05-07 bajones@chromium.org Suppress specific Vulkan validation messages
2021-05-07 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 698d01383cda to 25df959dadb0 (7 revisions)
2021-05-07 jiawei.shao@intel.com Skip CopyTests_T2B/CopyOneRowWithDepth32Float on D3D12
2021-05-07 jrprice@google.com Remove use of EmitVertexPointSize transform

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 698d01383cda to 6a56744b557c

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 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-Debug-Dawn
Bug: None
Tbr: bajones@google.com
Change-Id: Ic3b51bfca7eb42602496aeafd202e13d47498e03
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406025
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-10 04:59:00 +00:00
skia-autoroll
6100cd8c1a Roll SwiftShader from 8b09c1078a2b to e260190edbd2 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/8b09c1078a2b..e260190edbd2

2021-05-07 sugoi@google.com Obtain all sampler parameters through SamplingRoutineCache::Key

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 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:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: robertphillips@google.com
Change-Id: I231c327da76c806ea5dc0b96e7115ba8ad0e819b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406023
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-10 04:51:33 +00:00
Mike Reed
1f85dd9159 Expose embolden on Font
Change-Id: I92c3b86b8cfff1a77e2a27503ec0cdc8b0cab784
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406037
Reviewed-by: Mike Reed <reed@google.com>
2021-05-09 18:03:44 +00:00
Mike Reed
7d093d8828 Quick out-of-range fix for selections
Change-Id: I6373f9a70c6e341a39114f0bdce50a92ee745dcb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/406036
Reviewed-by: Mike Reed <reed@google.com>
2021-05-09 17:28:45 +00:00
Mike Reed
511c327de6 Sync styles when inserting/deleting text
Change-Id: I263ae85b0b229d359b865d8b8c9f4aed736b0654
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405880
Reviewed-by: Mike Reed <reed@google.com>
2021-05-09 17:00:14 +00:00
skia-recreate-skps
c6ec4abbe7 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: If613ec1867b020047b84a8a80bd00736c6a9bbd0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405956
Reviewed-by: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2021-05-09 06:36:19 +00:00
skia-autoroll
ab1ec37ff3 Roll SK Tool from ad82a156ba1c to 33de3938b244
https://skia.googlesource.com/buildbot.git/+log/ad82a156ba1c..33de3938b244

2021-05-09 skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com Update CIPD Packages

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 rmistry@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

Tbr: rmistry@google.com
Change-Id: I1a35e7b2fb6e8da38a060a08936b12b5c9ea965a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405902
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-09 06:27:59 +00:00
skia-autoroll
028de13d6f Roll skcms from 31ba46d6a284 to bae5e281e80f (1 revision)
https://skia.googlesource.com/skcms.git/+log/31ba46d6a284..bae5e281e80f

2021-05-08 rmistry@google.com Add whitespace.txt

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 egdaniel@google.com,mtklein@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: luci.chromium.try:linux-blink-rel
Tbr: egdaniel@google.com,mtklein@google.com
Change-Id: If800196fd280423d58126d506f67d3dce51fb527
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405899
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-08 21:32:59 +00:00
Mike Reed
686dd910dd Track non-shaping style runs
We only break runs (from the shaper's perspective) on typeface/size
changes. All others we just track locally, and then 'chop up' our draws
accordingly.

Change-Id: I81695772f71175cd5116ed34981ecf16b52123c8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405876
Reviewed-by: Mike Reed <reed@google.com>
2021-05-08 20:18:36 +00:00
John Stiles
dabb2891c4 Fold casts of known values at compile time.
A cast like `float(five)` or `int4(colorGreen)` will now detect const
variables and replace the expression with its compile-time constant
equivalent value. This can unblock further constant folding
opportunities.

(This CL is very similar in spirit to http://review.skia.org/404676)

Change-Id: If78a2091770777b0caaaec696fe15a0f55d88c24
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405683
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-05-07 22:04:48 +00:00
John Stiles
27193d4bce Add test demonstrating missed opportunities with casts.
A cast like `float(five)` or `int4(colorGreen)` should detect const
variables and replace the expression with its compile-time constant
equivalent value. At present, this replacement is missed, which inhibits
further optimization opportunities on the expression.

(This CL is very similar in spirit to http://review.skia.org/404676)

Change-Id: I04b5c435a30d2afcdbdb3d020adc15e9c651cc31
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405682
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-05-07 22:04:16 +00:00
Herb Derby
88983f1a3a Fix enumerate to handle refs
The SkEnumerate was capturing elements by value instead of
by reference. This caused odd things to happen when the value
was used on the left side of an assignment.

Added a test to demonstrate this.

Change-Id: I14bbeee8041bcbaa4e5ca845d6510096558673b1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/341462
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2021-05-07 21:51:38 +00:00
Jim Van Verth
1c318eb4ce Direct3D: fix up tests
* Enable MipmappedTest
* Add didWriteToSurface calls to fix up MipmapInvalidation test
* Add flush & submit to fix DDLSkSurfaceFlush test

Change-Id: I9c3cad96b40491a54cab4edb8f56639d6cc16665
Bug: skia:10446
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405496
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-05-07 21:48:38 +00:00
Mike Reed
72de83df3a Manage styles in editor
Change-Id: Ifde8853a780b8406ef6b794cd458904ee0663771
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405694
Reviewed-by: Mike Reed <reed@google.com>
2021-05-07 21:17:42 +00:00
Brian Salomon
c411429239 Convert GrGLDriver/Vendor/Renderer to enum classes
Reformat uses to de-yodaify and try to improve readabilty of
complicated conditionals.

Change-Id: Ifccb84836cbe4f5a01813795ceb287089984f8ae
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405685
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-05-07 18:28:48 +00:00
Greg Daniel
063fdce620 Reland "Fix semaphore support check on GrDirectContext::wait"
This reverts commit 4ecc0f43f2.

Reason for revert: relanding after fix in chrome

Original change's description:
> Revert "Fix semaphore support check on GrDirectContext::wait"
>
> This reverts commit 671177905d.
>
> Reason for revert: breaking chrome dawn test, most likely chrome bug
>
> Original change's description:
> > Fix semaphore support check on GrDirectContext::wait
> >
> > Change-Id: Ifce5346b513b0caa291333c80effda7901bfb0c5
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/403236
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,bsalomon@google.com
>
> Change-Id: I6248850376ca1d0236b6f44d049bf65f3f8e9127
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/403697
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I49e03dd8e7ef8a5f087136e25e37c6e256e338f7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405402
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-05-07 18:18:08 +00:00
Julia Lavrova
b44d6f4099 Reland "LRU Cache requires exact float comparison"
This is a reland of 85a51865f9

Original change's description:
> LRU Cache requires exact float comparison
>
> Bug: oss-fuzz:30314
> Change-Id: Id5dccdbab2a4801e6796254a68e417dbdc0f7a4a
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404780
> Commit-Queue: Julia Lavrova <jlavrova@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

Bug: oss-fuzz:30314
Change-Id: I0736a068b5b952415099f56733b6748a5a93981a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405681
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2021-05-07 17:50:48 +00:00
Mike Reed
cced68e42c fakeBold is gone, scaleX is in (sort of)
Change-Id: I5db9e935d0c43de92a9688baf8cb1e1f9e74e7c9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405684
Reviewed-by: Julia Lavrova <jlavrova@google.com>
2021-05-07 17:26:25 +00:00
Brian Salomon
893358e208 Fix incorrect assignment from refactor.
Accidentally regressed here:
https://skia-review.googlesource.com/c/skia/+/405200

Bug: 1203705
Change-Id: If74c4a281467d2f0fa0d01086f54bdc425f227f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405687
Auto-Submit: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-05-07 17:15:08 +00:00
John Stiles
ffba524ff8 Add variation of GetConstantValueForVariable which handles ownership.
The new function `MakeConstantValueForVariable` behaves the same, except
it takes unique_ptrs as inputs and returns a unique_ptr as output.
We already had this behavior coded up in two places and I realized I
could use this functionality in other spots as well.

Change-Id: I2f0c43e8555a3c89bf9a1eef7030b422355ec2a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405680
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-05-07 17:03:38 +00:00
Jorge Betancourt
062793401d [androidkit] optimize JNI calls in AndroidKit.Matrix transformations
Note: Shouldn't add or change the Skia API, only accepts an optional z value to preScale()

Change-Id: Ic73c723ebc2b75acca1fce5395953434ef1582e6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404376
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
2021-05-07 16:17:09 +00:00
John Stiles
115645ee9b Evaluate various single-argument float intrinsics at compile time.
This CL only handles a subset of our intrinsics. In particular, it
avoids changing the behavior of `sqrt` as many of our tests use sqrt as
an optimization barrier.

The transcendental test inputs are intentionally kept very simple to
avoid putting numbers in the test outputs which could round differently
on various platforms and cause Housekeeper to complain.

Change-Id: I539f918294332310dcd6fe12fab163c0b6216f65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405398
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-05-07 14:37:18 +00:00
Brian Salomon
6e0e7cbe89 remove RGB_888x pixel tests exceptions.
Should have been removed with
https://skia.googlesource.com/skia/+/974c821502042c0ab233affb0f38bf2b49f5ecfe

Bug: skia:8862
Change-Id: I3e6445a006165cc2d5713c4b21b23ed674c0a6fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405399
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-05-07 14:15:18 +00:00
John Stiles
1dc2d0fe0f Allow compile-time intrinsic evaluation to read const variables.
Previously, the code neglected to resolve constant variables into
values. This meant that expressions like `lessThan(zero, one)` could not
be compile-time evaluated even when `zero` and `one` have known values.

Change-Id: I2f5ce303e3dcc682be14e4d2485e24dd7c59212e
Bug: skia:10835
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405536
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-05-07 13:36:08 +00:00
John Stiles
aaac4e4e3e Use the IntrinsicKind to look up SPIR-V intrinsic calls.
This is more efficient than looking up the intrinsic by name.

Change-Id: I69bc5734073477d4359ef2b37c4b37dffc90fed5
Bug: skia:11961
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405278
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-05-07 13:32:38 +00:00
Brian Salomon
1989342920 Consolidate gathering of info from GL strings.
Should not change functionality.

Bug: 1203705
Change-Id: I2a17fb0ccb729033c964a138dbd5e86be7f93d9e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405200
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-05-07 13:20:18 +00:00
Greg Daniel
daa02f4021 Revert "Simplify quickReject implementation in SkCanvas"
This reverts commit 0a0f4f5c35.

Reason for revert: possible cause of flutter roll failure

Original change's description:
> Simplify quickReject implementation in SkCanvas
>
>  - SkCanvas no longer keeps fIsScaleTranslate bool that has to stay in
>    sync with the type of the matrix.
>  - No more fast or slow path for quickReject, the Sk4f code has been
>    completely removed.
>  - Uses SkM44::mapRect instead of SkMatrix::mapRect. This is slightly
>    slower for S+T, but much faster for other transforms. I'm hopeful we
>    won't notice the regression in the grand scheme for S+T, since the
>    code is a lot simpler now.
>  - The final isFinite() and intersects() check for quickReject uses
>    SkRect's functions instead of hand-written SSE/NEON. If we think this
>    is optimization is necessary, I'm hoping we can rewrite it in terms
>    of skvx instead of specific instructions.
>  - Consolidated how the quick-reject bounds outsetting into
>    computeDeviceClipBounds, and added an option to skip outsetting for
>    the one call site that doesn't want it.
>
> Bug: skia:10987
> Change-Id: I3cf2a73636cdeed06d12cab4548cfb94d1eb074a
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405198
> Commit-Queue: Mike Reed <reed@google.com>
> Auto-Submit: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Mike Reed <reed@google.com>

TBR=mtklein@google.com,reed@google.com,michaelludwig@google.com

Change-Id: I1a373740ee167827b9a6a2eee9afb7f814641fb0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10987
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405616
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-05-07 12:55:19 +00:00
Greg Daniel
bb4bf6eaaf Revert "LRU Cache requires exact float comparison"
This reverts commit 85a51865f9.

Reason for revert: possibly causing flutter roll failure

Original change's description:
> LRU Cache requires exact float comparison
>
> Bug: oss-fuzz:30314
> Change-Id: Id5dccdbab2a4801e6796254a68e417dbdc0f7a4a
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404780
> Commit-Queue: Julia Lavrova <jlavrova@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=bungeman@google.com,jlavrova@google.com

Change-Id: I2cbbcf667734145b94359be4331bbf21e299d6a0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: oss-fuzz:30314
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405576
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-05-07 12:43:39 +00:00
skia-autoroll
703f68e660 Roll SwiftShader from e839645bb9a6 to 8b09c1078a2b (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/e839645bb9a6..8b09c1078a2b

2021-05-06 swiftshader.regress@gmail.com Regres: Update test lists @ 04c037ac

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 egdaniel@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:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: egdaniel@google.com
Change-Id: Id66f547bff6221c776105aee4a6e52332b959993
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405526
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-07 05:14:02 +00:00
skia-autoroll
17a6ccbb5a Roll Chromium from 8e935e49a890 to 54647a439c14 (553 revisions)
8e935e49a8..54647a439c

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 egdaniel@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: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: egdaniel@google.com
Change-Id: Ia67f45fc59b2e58ec3753a32f3c15c16ea97224e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/405525
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-05-07 05:08:59 +00:00