Commit Graph

42741 Commits

Author SHA1 Message Date
Mike Klein
1d1e44f689 remove all Debug Perf jobs
Lately we're not sure they're worth running.

I'd remove Perf-Debian9-Clang-GCE-CPU-AVX2-x86-Debug-All
from the CQ too but I can't find where that's configured.

Change-Id: Ieb55d9d39a6d9cf775e6740b9b541d3ceee01896
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225163
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-07-02 18:46:07 +00:00
Brian Salomon
5f39427b28 Fix trace event categories in src/gpu ("skia"->"skia.gpu")
Change-Id: I74b041d3f820d423601bd06805edec001a0d980e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225256
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
2019-07-02 18:39:07 +00:00
Brian Salomon
1047a49d82 GrGpu requires row bytes to be non-zero before read/writePixels and createTexture
Make GrGpu base class validate GrMipLevel arrays and row bytes parameters.

GrCaps states whether row bytes passed to GrGpu must be tight or not and callers
are responsible for temporary buffers if needed to make tight.

Change-Id: I2c522f7bd67c86044a36b3f70e13d7dcb38b0a6b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224961
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-07-02 18:33:51 +00:00
Hal Canary
5823f6b90c SkPDF: fix typo s/ProcSets/ProcSet/ (again)
Bug: skia:9081
Change-Id: I713efff5ce7c9a79d873d527331c18490b897830
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223978
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-07-02 18:30:31 +00:00
Herb Derby
c9fce9c962 Centralize calculating SkPackedGlyphIDs
Currently the different strikes caclulate SkPackedGlyphIDs from positions and
SkGlyphIDs. This means that there are two implementations one for SkStrike
and one for SkRemoteGlyphCache. This moves all SkPackedGlyphID calculations to
the painter thereby centralizing it.

Change-Id: If9467aca01d46aa3a2d62e7acbc97a5b6a97f13b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224544
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-07-02 18:28:41 +00:00
Chris Dalton
215ff33252 Don't attempt mixed samples on "borrowed" render targets
Bug: skia:9231
Change-Id: I55809299c34bb835c2d3437b31dab318572a948d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225165
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-07-02 17:22:07 +00:00
Greg Daniel
e783ba4238 Add ColorTypeInfo struct to FormatInfo in GrGLCaps.
This CL starts the support for properties that are dependent on both the
format and color type. For now this adds a can upload data flag which is
currenly used in combination with the format texturable flag to determine
high level "textureability" for ganesh. The only format where these two
flags diverage from eachother currently is RGBA8 format with BGRA colortype.

Change-Id: I08b419af355d698ca4e9001949be6b7fd2e1c33d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224959
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-07-02 15:05:04 +00:00
Brian Osman
22e47f985c Reland "Test MSAA on Gen9 Intel GPUs"
Updated caps to allow MSAA on newer Intel GPUs.

This reverts commit 41f937f042.

Bug: skia:9225
Change-Id: I15bdc4d4a754945fafcc4bc7d1afaa701d6f0426
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224958
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-07-02 14:22:03 +00:00
Lei Zhang
22f34b11f9 Make SkFloatToDecimal() param name match declaration.
In SkFloatToDecimal.cpp, the |output| parameter for SkFloatToDecimal()
is named |result|. Change it to |output| and change the local variable
|output| to |output_ptr|. Fix some typos along the way.

Change-Id: Id34848f4823e69fcbd5203618ea90083fc157b6c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225014
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
2019-07-02 13:54:21 +00:00
Brian Salomon
bd3d8d39b3 Remove GrPixelConfig from GrColorSpaceInfo.
Replace GrColorInfo with GrColorSpaceInfo.

Change-Id: I7abe28203dd7f22162d68c4eee41293f483bb1aa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225036
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-07-02 13:43:41 +00:00
Chris Dalton
effee20657 Use mixed samples internally for default coverage AA
Lays the infrastructure to use mixed samples internally, and begins
using nvpr with mixed samples on the default "gl" and "gles" configs.

In this rendition, we take the simplest approach possible re: stencil
attachments. We initially create a render target without stencil
(i.e., 0 samples). Then, any time a proxy needs a stencil buffer with
more samples than its target currently has, we create and attach a new
stencil buffer. However, we never "downgrade" a render target's
stencil attachment to one with fewer samples. So if the proxy only
needs one sample and the target has many, we leave it.

Bug: skia:
Change-Id: I8558ba799ac3dee457f349f77d4517c11413c9a9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224456
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-07-02 06:04:09 +00:00
skia-autoroll
2ef8265768 Roll third_party/externals/angle2 f116aa9c158b..5faff91af499 (3 commits)
f116aa9c15..5faff91af4


git log f116aa9c158b..5faff91af499 --date=short --no-merges --format='%ad %ae %s'
2019-07-01 cnorthrop@google.com texture3D: Codegen changes towards OES_texture_3D
2019-07-01 cnorthrop@google.com Revert "Vulkan: pipeline cache not populated as blob cache is not set"
2019-07-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 6ccb52b86492..e6e3e2ccc6a2 (1 commits)


Created with:
  gclient setdep -r third_party/externals/angle2@5faff91af499

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=jvanverth@google.com

Change-Id: I7850d53a7f6a0505d51488b6aafd23dc366b018a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225120
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-07-02 04:59:19 +00:00
skia-autoroll
27c8b9fccc Roll ../src d38e9bb41f04..fb906fa57d41 (308 commits)
d38e9bb41f..fb906fa57d


Created with:
  gclient setdep -r ../src@fb906fa57d

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=jvanverth@google.com

Change-Id: I04940327362776ab6c97770c0f32b3857e35bd8b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225121
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-07-02 04:36:49 +00:00
Brian Salomon
f2c52efce5 Update valgrind suppression
TBR: egdaniel@google.com

Change-Id: If44b5d4b4ac2ffbff5b10950fdf37bf6e79864ce
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225097
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-07-02 01:45:03 +00:00
Brian Osman
9fb7fa537d Fix asserts in EllipticalRRectOp::Make to match logic of make_rrect_op
Comments and earlier code verify that the radii are not less than 1/2.
Asserting that they are therefore greater than 1/2 fails (rarely).

Change-Id: I294eb2304c087332698dd624567a8e1d286d0144
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225037
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-07-01 21:39:11 +00:00
Jim Van Verth
5e8f389797 Re-enable Metal buffer suballocation with extra mutex guard.
Bug: skia:9213
Change-Id: Ia29489b00bcaaf17d4c7b6613ed4f22e87a87ffc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224545
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-07-01 21:34:41 +00:00
Mike Klein
42d6d700c9 more --loops 1
Change-Id: Ie5d8eabb9db2911d41854535fb146ed53b0be8ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225007
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-07-01 20:20:12 +00:00
Herb Derby
9c9af8ebc7 Use bulk metrics call in SkFont
Unify the handling of glyph metrics data in SkFont.

Change-Id: Ie1ad2a96ba205c0ee4570d70461b9db0cd874918
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224577
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-07-01 20:10:12 +00:00
Robert Phillips
da2e67a357 Add GrProtected parameter to all createBackendTexture variants
Change-Id: I667bc730e321b579bef98f3d6003f7a7b29c9890
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224957
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-07-01 19:46:18 +00:00
Brian Salomon
a7de0f3231 Reenable GPU ReadPixels tests on ANGLE ES2
Bug: skia:6742
Change-Id: I96728c01e961c15085d44fdc7187806e363c27e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224736
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-07-01 19:32:48 +00:00
Brian Salomon
dc0710f2a2 Make GrCaps::surfaceSupportsReadPixels return distinct values rather than flags.
Change-Id: I2744ca6cb0e9f1f2fd7d20e293400c788e7d4083
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224960
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-07-01 19:30:18 +00:00
Florin Malita
45dc1f0001 [skottie] Cleanup: split off layers into own CUs
TBR=
Change-Id: Ia6c27cca33f9dc8f242a50e624341dd0b465b380
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224738
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-07-01 18:29:22 +00:00
Ethan Nicholas
cab767f219 SkSL now respects layout(key) on all variables
Change-Id: I33332967bba0f16a73633f13ffa851e38eba100d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224737
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-07-01 18:04:45 +00:00
Brian Osman
41f937f042 Revert "Test MSAA on Gen9 Intel GPUs"
This reverts commit e0b2dafeb6.

Reason for revert: Need to blacklist more unit tests

Original change's description:
> Test MSAA on Gen9 Intel GPUs
> 
> Change-Id: Ie5441350fc150356ffb7d6acffe1089ca1de4364
> Bug: skia:9225
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224539
> Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=bsalomon@google.com,benjaminwagner@google.com,brianosman@google.com

Change-Id: I49c7a2f1132baeef80fa5296c2f2313f2bef0830
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9225
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224956
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-07-01 18:04:44 +00:00
Mike Klein
1e87a5410e move SkVM interpreter back to SkVM.cpp
No real pressing reason to have an AVX2-specialized interpreter now that
we've got an AVX2 JIT.  Keeping things centralized makes it easier to
keep track of and helps reduce dependendcies on the rest of Skia, which
in turn makes it easier to develop SkVM on wimpy machines like an RPi.

Change-Id: Ic4729603ec6c9141929b3e2a56ba380240ea5e0d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224822
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-07-01 17:55:17 +00:00
Brian Salomon
1d43530aa2 Pass alpha type to GrSurfaceContext::read/writePixels and remove flags.
We deduce whether to premul or unpremul based on the the input/output
alpha types. This means we also now support unpremuling on write and
premuling on read.

Class-ify former struct GrPixelInfo. Remove origin and instead pass a
flip bool to GrConvertPixels.

Unifies read/write methods on GrSurfaceContext via automatic conversion
of SkImageInfo to GrPixelInfo and making GrDirectContext an optional
parameter.

Bug: skia:7580

Change-Id: I42f6997852b4b902fb81264c6de68ca9537606aa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224281
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-07-01 17:30:40 +00:00
Mike Klein
1fa149a713 finish up arm64 ops
Some small refactoring to common up redundant opcode building.

Oddly, I think I've got better codegen than what Clang would do here.
Clang doesn't generate uxtl-based code to unpack 8-bit to 32-bit,
instead preferring to load each byte one at a time and insert them one
at a time.

Me:
    ldr  s0, [x0]
    uxtl v0.8h, v0.8b
    uxtl v0.4s, v0.8h

Clang:
    ldrb  w8,  [x0]
    ldrb  w9,  [x0, #1]
    ldrb  w10, [x0, #2]
    ldrb  w11, [x0, #3]
    fmov  s0,      w8
    mov   v0.s[1], w9
    mov   v0.s[2], w10
    mov   v0.s[3], w11

Change-Id: I0fdf5c6cdcde6a4eb9290936284fd3ffcb2159f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224821
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-07-01 17:26:03 +00:00
Brian Osman
e0b2dafeb6 Test MSAA on Gen9 Intel GPUs
Change-Id: Ie5441350fc150356ffb7d6acffe1089ca1de4364
Bug: skia:9225
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224539
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-07-01 16:56:45 +00:00
Mike Klein
ac8f443f92 auto-tune nanobench in all builds
I'm kind of getting bored of having to pass --loops 0
in optimized+asserts builds.

We'd been defaulting to 1 loop in Debug and ASAN builds,
and manually setting Valgrind builds to 1 loop with 1
sample.  Remove the default so all builds auto-tune,
but set Debug and ASAN bots like Valgrind bots.

Change-Id: Ifedd98a11ea74a2c222fe59bd50b96683d12b98c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224816
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-07-01 16:07:22 +00:00
Robert Phillips
c046ff0b10 Add SkSurfaceCharacterization::isCompatible
Although the main change in this CL is the addition of GrCaps::areColorTypeAndFormatCompatible.

This is split out of:

https://skia-review.googlesource.com/c/skia/+/222781 (Add bridge between GrContext::createBackendTexture and SkSurface::MakeFromBackendTexture)

Change-Id: I2e50fff91eb07fb1358840e1a4a76dc138a2f195
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223932
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-07-01 15:15:12 +00:00
skia-recreate-skps
30e265153c Update Go deps
Change-Id: Ic0e54215a957224fb22f3d73274f51ca1fe71d51
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224722
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-07-01 05:25:20 +00:00
skia-autoroll
ebb7231326 Roll third_party/externals/angle2 923c30fba116..f116aa9c158b (14 commits)
923c30fba1..f116aa9c15


git log 923c30fba116..f116aa9c158b --date=short --no-merges --format='%ad %ae %s'
2019-06-28 lujc@google.com Vulkan: detect swapchain recreation passively
2019-06-28 jmadill@chromium.org Pull angle-internal for internal ANGLE devs.
2019-06-28 jonahr@google.com Update KHR GLES31 expectations to get bots running.
2019-06-28 jmadill@chromium.org Roll dEQP (June 2019)
2019-06-28 dongja@google.com Vulkan: improve handling of RGB texture formats
2019-06-28 dongja@google.com Test out-of-bounds writes in glCopyTexSubImage2D
2019-06-28 jmadill@chromium.org Re-land "Cleanup angle_libs_suffix in BUILD.gn."
2019-06-28 m.maiya@samsung.com Added end2end tests for GL_EXT_texture_rg
2019-06-28 syoussefi@chromium.org Add suppression for test failing on old MESA
2019-06-28 syoussefi@chromium.org Vulkan: Enable numerous deqp texture tests
2019-06-28 jmadill@chromium.org Revert "Cleanup angle_libs_suffix in BUILD.gn."
2019-06-28 geofflang@chromium.org GL: Clamp uniform array access on Android and AMD devices.
2019-06-28 fei.yang@arm.com Vulkan: pipeline cache not populated as blob cache is not set
2019-06-28 jmadill@chromium.org Cleanup angle_libs_suffix in BUILD.gn.


Created with:
  gclient setdep -r third_party/externals/angle2@f116aa9c158b

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=jvanverth@google.com

Change-Id: I7f6fb06d4bb11065a4194631b869df2202d03cfa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224698
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-07-01 04:50:20 +00:00
skia-autoroll
6a68dbd48d Roll third_party/externals/swiftshader 40495290dceb..52edb176f1bd (7 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/40495290dceb..52edb176f1bd


git log 40495290dceb..52edb176f1bd --date=short --no-merges --format='%ad %ae %s'
2019-06-28 sugoi@google.com PipelineCache implementation
2019-06-28 bclayton@google.com Reactor: Assert that array indexing is in bounds
2019-06-28 bclayton@google.com CMakeLists: Use ccache if found
2019-06-28 srisser@google.com Cleanup unittests a bit
2019-06-28 bclayton@google.com Pipeline/ShaderCore: Reimplement halfToFloatBits to not rely on denorm float multiply
2019-06-28 chrisforbes@google.com Wire up remaining 32b __sync_* functions required for arm32
2019-06-28 swiftshader.regress@gmail.com Regres: Update test lists @ 40495290


Created with:
  gclient setdep -r third_party/externals/swiftshader@52edb176f1bd

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=jvanverth@google.com

Change-Id: Ie9067fa4246818118b0ea280a2c7540d4004bd2d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224696
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-07-01 04:32:40 +00:00
skia-autoroll
4b1572a795 Roll ../src 9ef8c105f0dc..d38e9bb41f04 (418 commits)
9ef8c105f0..d38e9bb41f


Created with:
  gclient setdep -r ../src@d38e9bb41f

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=jvanverth@google.com

Change-Id: I2a85e4eafad572aea5b9327f02471f7e9f19c238
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224697
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-07-01 04:28:20 +00:00
Michael Ludwig
dcb832ac63 Revert "Switch drawTexture calls to use attemptQuadOptimization"
This reverts commit 9b2defc3d5.

Reason for revert: Likely broke chrome layout tests

Original change's description:
> Switch drawTexture calls to use attemptQuadOptimization
> 
> Before the quad-rendering op refactor, regular filled rectangles and
> textured rectangles used an internal crop_filled_rect function to crop
> to the bounding box of the clip. As the quad op refactor progressed,
> regular filled rectangle drawing went through the new attemptQuadOptimization
> function that supported more cropping to the exact clip when axis-aligned,
> and could be better handle complex paints.
> 
> Following the generalized factories added to GrTextureOp in earlier CLs,
> it is now possible to route all textured rectangle draws through the same
> optimizations. While there are a number of public interfaces for drawing
> rectangles and textures on GrRTC, internally there is now just drawFilledQuad
> (for complex paints) and drawTexturedQuad(for textures, avoids GrPaint use).
> Both of these are very similar, and share attemptQuadOptimization(), which
> makes all rectangle-drawing code, regardless of shader/paint/etc., handled
> in a consistent manner.
> 
> This doesn't entirely resolve the complexities of non-AA clipping and non-AA
> axis-aligned rectangle drawing. That needs additional logic added to the
> GrQuadUtils::CropToRect function, but this CL is the last structural change
> to how the ops are created, and to GrRTC to get Ganesh to that stage.
> 
> Change-Id: Icfbd223eef6e3da0054699334725b5084aaee58a
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223934
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

TBR=bsalomon@google.com,michaelludwig@google.com

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

Change-Id: Ide21002c336dbc3831a2b042acfec92a509ebacf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224639
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-07-01 01:19:10 +00:00
skia-recreate-skps
21a486d04a Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: I681f12498a583a6b86e0fe6a8932b48bca9afc58
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224661
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-06-30 08:18:39 +00:00
skia-recreate-skps
d70add68ff Update Go deps
Change-Id: I2f251776ccc378c2a9ceb3219b8567c8399a38ed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224656
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-06-30 05:29:49 +00:00
skia-recreate-skps
161f47dfbf Update Go deps
Change-Id: I4aac068e0b4edec07560551cf87fa12b65604566
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224616
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-06-29 05:32:48 +00:00
recipe-roller
0d8c1aefd1 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/dc37feb99d46bdf499715ceb467d341d24524e0b Make it clear in the help message that my_activity.py dates are mm/dd/yy (mheikal@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia31e374763b118d7531cfc0175d94e26b056d2f0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224567
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-06-28 23:08:47 +00:00
Herb Derby
1ddee02522 Remove preparePath from the SkStrikeInterface
This call is only used by the bitmap drawing. Just use SkStrike
for bitmap drawing.

Change-Id: Ib9313b21bb2f9c7de2b8ac084d905538ba45f51b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224576
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-06-28 21:57:47 +00:00
Greg Daniel
ab013ebe9c Move GL caps textureable and fbocolorattachment flags to FormatInfo.
Change-Id: I68d623151a64dd68a5ea7a396023c7909c6e48a0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223798
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-06-28 19:43:37 +00:00
recipe-roller
8f284b01f7 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/6095d4006152c956759c24af5466f47b1a0ab1d3 Make sure PresubmitResult can be converted to a json. (debrian@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ie73b4614260176f15a8a46d086c8206554499cf3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224513
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-06-28 19:20:07 +00:00
Michael Ludwig
9b2defc3d5 Switch drawTexture calls to use attemptQuadOptimization
Before the quad-rendering op refactor, regular filled rectangles and
textured rectangles used an internal crop_filled_rect function to crop
to the bounding box of the clip. As the quad op refactor progressed,
regular filled rectangle drawing went through the new attemptQuadOptimization
function that supported more cropping to the exact clip when axis-aligned,
and could be better handle complex paints.

Following the generalized factories added to GrTextureOp in earlier CLs,
it is now possible to route all textured rectangle draws through the same
optimizations. While there are a number of public interfaces for drawing
rectangles and textures on GrRTC, internally there is now just drawFilledQuad
(for complex paints) and drawTexturedQuad(for textures, avoids GrPaint use).
Both of these are very similar, and share attemptQuadOptimization(), which
makes all rectangle-drawing code, regardless of shader/paint/etc., handled
in a consistent manner.

This doesn't entirely resolve the complexities of non-AA clipping and non-AA
axis-aligned rectangle drawing. That needs additional logic added to the
GrQuadUtils::CropToRect function, but this CL is the last structural change
to how the ops are created, and to GrRTC to get Ganesh to that stage.

Change-Id: Icfbd223eef6e3da0054699334725b5084aaee58a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223934
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-06-28 19:14:47 +00:00
Jim Van Verth
ccd895e16d Disable some code to handle Metal TSAN errors.
This is a temporary fix until I can figure out where these errors are
coming from.

Bug: skia:9213
Change-Id: Iac21415bf26f39f5237e12ec146769252e833d36
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223981
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-06-28 18:36:42 +00:00
Michael Ludwig
205224fbd5 Remove old texture op factories
Change-Id: I526cd01be501bf356307f00deb2c3067ab16de8f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223927
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-06-28 17:33:52 +00:00
Brian Osman
9c310473c6 Reland "DM: Add a per-sink MemoryCache to all GPU sinks"
Once https://skia-review.googlesource.com/c/skia/+/224258 lands, this
should be safe.

This reverts commit 1958fbbcff.

Change-Id: I2fca1e60a2d945d440b7cd5f60e4b4dec211decd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224278
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-06-28 16:30:24 +00:00
Brian Osman
e4c88bb1f8 Prevent caching path-rendering programs
As described in the comments, this is a workaround for a rare situation
when trying to use cached program binaries in conjunction with ANGLE and
path rendering.

Change-Id: Ief5bb0042f5ec13cbea2242ff9c4f0b9f9e65641
Bug: angle:3619
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224258
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-06-28 16:25:54 +00:00
Florin Malita
afd2c10c98 [skottie] Use hybrid bounds for custom Shaper VAlign modes
We used to rely solely on visual bounds for vertical alignment.  That
had the downside of leading/trailing empty lines being ignored.

Then https://skia-review.googlesource.com/c/skia/+/220916 switched to
using typographical bounds.  This approach produces results in line
with AE, but allows some glyphs to overflow the alignment boundary.

This CL introduces a hybrid approach:

1) for standard AE text alignment, continue to use typographical bounds

2) for Skottie VAlign extensions (sk_vj), use the union of typographical
   and visual bounds - this should mitigate both issues mentioned above

Change-Id: Ifd3ccae3d721728ce67942206160ebe92056d3a2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224188
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Avinash Parchuri <aparchur@google.com>
2019-06-28 11:35:09 +00:00
Florin Malita
d75fed41c2 [skottie] Use explicit font ascent in Shaper
Bodymovin exports an explicit ascent for each font, as a percentage of
the text size.

Change-Id: I25708944b2b79b42a6ccb05abbe002685e36dfa1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/223986
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-06-28 11:35:09 +00:00
skia-recreate-skps
b851469b8e Update Go deps
Change-Id: Id26b7f97fa724c0b7aefa829695667d5584ff058
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/224441
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-06-28 05:29:33 +00:00