Commit Graph

43608 Commits

Author SHA1 Message Date
Mike Reed
ba7e9a6365 never check for degenerates in path::iter
This does not appear to be used externally, and only internally in 3
sites in GPU, which we can handle explicitly.

For now you can still pass bools to Iter::next() but they are ignored.
After this lands, I will update the callers to remove those.

FWIW: none of our other tests or gms seem to notice this change...

Bug: skia:9339
Change-Id: If40077b1ebb3d47cfce0ec43996ff272318e4a62
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235104
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-08-16 20:39:05 +00:00
Greg Daniel
457da50801 Remove uses of GrPixelConfig in GrMtlCaps.
Bug: skia:6718
Change-Id: I493b97b8d9c7d4c19992b0f981f897b88aea90d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235316
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-08-16 20:26:25 +00:00
Stephen White
170d9905cc Dawn: implement textures & samplers.
Add samplers to Dawn binding group layout.
Convert filter modes from Gr to Dawn.
Rename fUniformBindGroup to fBindGroup (since it does more than uniforms now).
Split combined samplers into separate textures and samplers bindings;
recombine in the shader with makeSampler().
Create complete bind group layout before creating UBOs.
Implement scissor rect.
Set blend color in command buffer.
Pass shader caps to SkSL.
Enable flat interpolation, integer support, derivative support in Dawn Caps.
Reduce the Dawn caps to 6 fragment/sampler combos.
Add support for Int (1) vertex format.

Change-Id: Id5e9060855f0dfc8c071f84ea6c456aba2a72b35
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/233977
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2019-08-16 19:32:35 +00:00
recipe-roller
4bdcbc2704 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/f4d453e0751cf9778edb3b5e0fd07327b5c977a8 Remove checkout_mobile_internal from {android,ios}_internal fetch configs. (jbudorick@chromium.org)
recipe_engine:
  https://crrev.com/74065d30431d49f380cba90ac7bb751df5aab235 [recipe_api] Update AggregatedStepFailure.contains_infra_failure when adding infra failure. (ihuh@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I94c9bb8391af1488c8d9f3359120b2aeb0de6ec8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235336
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-08-16 19:15:05 +00:00
Brian Osman
bb651c4902 Remove old version of SkImage::makeTextureImage
Client code has been updated to call new version

Change-Id: Id7e18154fe273590f04435c936121b3a3e3665df
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235317
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-08-16 19:01:55 +00:00
Greg Daniel
0fac86944d Remove uses of GrPixelConfig in GrVkCaps and other vk files.
Bug: skia:6718
Change-Id: I2f0d38b2b7a68a424732ced56e8b6c7e5965a722
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235023
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-08-16 18:57:05 +00:00
Stephen White
6db3b7b03e Dawn: update to GrCaps changes.
Change-Id: I96486606c6392cb35f8fcd63fe37866b7ac07a00
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234380
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2019-08-16 18:54:25 +00:00
Brian Osman
237a95fe7b Remove old version of MakeCrossContextFromPixmap
Client code has been updated

Change-Id: Ic6102effc63c0f4f00a47b8876107aa0b2306e32
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235296
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-08-16 17:41:35 +00:00
herb
7022b773ee Part 1/2 to remove SkTextBlobCacheDiffCanvas::Settings
fMaxTextureSize and were never used by Skia, and
f{Min|Max}DistanceFieldFontSize are never set by Chrome.

Make a new constructor that only takes a bool to indicate DFT
capability. Move Chrome to use that ctor.

Change-Id: I1889dd39ffdaa2134b0892b8275f8223c6c8aad0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235102
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-08-16 15:27:35 +00:00
Mike Klein
df54f37a5d remove SkPicture_none.cpp
I happened to notice that SkPicture_none.cpp no longer compiles.

    ...
    src/core/SkPicture_none.cpp:101:44: error: out-of-line definition of
    'CreateProc' does not match any declaration in 'SkPictureImageFilter'
    sk_sp<SkFlattenable> SkPictureImageFilter::CreateProc(SkReadBuffer& buffer) {
    ...

This leads me to conclude that it cannot be in active use.

Change-Id: I92a4daa3c7d5d7889c4f841b578c9c691525c1cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235216
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-08-16 14:52:25 +00:00
skia-autoroll
d95c9ac599 Roll third_party/externals/angle2 3ea90d609720..cdecd97ceefa (9 commits)
3ea90d6097..cdecd97cee

git log 3ea90d609720..cdecd97ceefa --date=short --no-merges --format='%ad %ae %s'
2019-08-16 shrekshao@google.com Add Draw base vertex and base instance function entrypoints
2019-08-15 syoussefi@chromium.org Vulkan: Write preprocessed shaders with // instead of #if 0
2019-08-15 ianelliott@google.com Vulkan: Expect more texture-specification tests to pass.
2019-08-15 jmadill@chromium.org Capture/Replay: Use GL types for packed types.
2019-08-15 clemendeng@google.com Deleted unnecessary built-in conditions
2019-08-15 jmadill@chromium.org Remove GL/EGL function pointers from tests.
2019-08-15 jmadill@chromium.org Capture/Replay: Also capture on postSubBuffer.
2019-08-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 37fc4d27d612..95609e6d923a (1 commits)
2019-08-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src f701237f2d88..ff872dc6bf9f (3 commits)

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

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:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=scroggo@google.com
Change-Id: I19cd1f0ff70cc9a9d13f09f554104bd1dd65f71a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235154
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-16 05:25:09 +00:00
skia-recreate-skps
166e104bd3 Update Go deps
Change-Id: I18ac91c5f1603e2546211e984ce306eb11c70089
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235180
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-08-16 05:25:00 +00:00
skia-autoroll
e24dbe8601 Roll ../src efe495cfe7ef..f21be5041b55 (415 commits)
efe495cfe7..f21be5041b


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

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
Bug: None
TBR=scroggo@google.com
Change-Id: I2d50e516b1b0fc16aa273c866a28834bcc8d1bc7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235176
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-16 05:11:30 +00:00
skia-autoroll
da4f12c25b Roll third_party/externals/swiftshader aa3f31f98a5c..2bcadf49d820 (8 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/aa3f31f98a5c..2bcadf49d820

git log aa3f31f98a5c..2bcadf49d820 --date=short --no-merges --format='%ad %ae %s'
2019-08-15 bclayton@google.com vk::SurfaceKHR: Expose support for VK_IMAGE_USAGE_TRANSFER_SRC_BIT
2019-08-15 chrisforbes@google.com Add missing Reactor/CPUID.cpp to GLES side of build
2019-08-15 capn@google.com Default to LLVM JIT for ARM32 CMake build
2019-08-15 chrisforbes@google.com Jettison android subzero support entirely
2019-08-15 chrisforbes@google.com Add libyarn static library to Android build
2019-08-15 bclayton@google.com SpirvShader: Fix another edge case with phis and loops
2019-08-15 bclayton@google.com VkPipeline: Use vk::warn for spirv-opt warnings / errors
2019-08-15 swiftshader.regress@gmail.com Regres: Update test lists @ aa3f31f9

Created with:
  gclient setdep -r third_party/externals/swiftshader@2bcadf49d820

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
Bug: None
TBR=scroggo@google.com
Change-Id: I0208b864d8195e1d28fd202810343063bb263972
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235153
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-16 04:34:30 +00:00
recipe-roller
6a519b8dd8 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/9f4b37db0e36216cdb09dadc07e200ca25c14ea6 depot_tools: Make watchlist tests use mock and remove pymox. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib91ac97c4444deb0e4910a8ab4feabc3d4b6e107
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235157
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-08-16 00:40:59 +00:00
recipe-roller
56b1b9d65c 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/614050efa060fbfa2dfe831f819aef28970c7bb3 depot_tools: Stop using mox on gclient_utils_test.py. (ehmaldonado@chromium.org)
  https://crrev.com/9cafbf4b35763f287d33dcaccba214f026ded930 depot_tools: Separate TestCaseUtils into its own file. (ehmaldonado@chromium.org)
  https://crrev.com/f32a0e8da8f9110c721dabaf201bbdd29be74d75 depot_tools: Don't use mox on presubmit_unittest. (ehmaldonado@chromium.org)
recipe_engine:
  https://crrev.com/54c9a286d41d9f711837dd4c002fc7fbc9bfde83 [buildbucket] Fix timeout in collect_builds (nodir@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1ea366020eaba9e9cd50d6d2749531e31b0de1dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235156
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-08-16 00:11:09 +00:00
Brian Salomon
77a9a6cc78 Remove std::move()s from returns of std::unique_ptrs
Change-Id: I50f9c56f05514c6cb3e013ef8f8b2ae3873f2645

Cq-Include-Trybots: skia.primary:Test-Chromecast-Clang-Chorizo-CPU-Cortex_A7-arm-Debug-All
Change-Id: I50f9c56f05514c6cb3e013ef8f8b2ae3873f2645
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235100
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-08-15 23:48:59 +00:00
recipe-roller
e5fee78d26 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/26a8b9f35639bbbbe971e8d1364fb25ec4a1266b depot_tools: Make gclient Python3 compatible. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I713449e41827cf941ecf7252b860357a2694de83
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235065
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-08-15 21:21:09 +00:00
Herb Derby
82963a3c97 Remove SkRemoteGlyphCacheImpl.h
Move everything to SkRemoteGlyphCache.cpp. Add a call
to SkStrikeServer (AddGlyphForTest), to make tests work.
* Misc cleanups

Change-Id: I22bea686838f60cf96d097e1ea025cb5399903e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235096
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-08-15 21:20:09 +00:00
Michael Ludwig
d18c98cd86 Move Context into separate header/namespace
The new namespace 'skif' will contain many more types down the road
to help with image filter implementations. Too many to make inner
classes like Context was, but once the namespace exists, it doesn't
make sense for Context to be the only inner class.

Bug: skia:9282
Change-Id: I4ed76bd5f6c8f0b8ca2f2e1c5d76006c7cccf91e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234581
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-15 20:08:29 +00:00
Mike Klein
963a606677 roll cast toolchain
- clang 3.9 -> clang "9"  (pre-release)
  - libstdc++ -> libc++     (pretty sure)

PS1 should fail to build... need to update
infra/bots/recipe_modules/build/chromecast.py too.

PS2 compiles but fails to link.

PS3 puts -Lchromebook_arm_gles/lib on the link line;
unclear to me how we're linking today...

PS4 removed a workaround for the older toolchain.

PS5+ tries to request the older glibc math symbols
that shipped with the devices we test on... we don't
seem to have glibc 2.27 there.

Cq-Include-Trybots: skia.primary:Test-Chromecast-Clang-Chorizo-CPU-Cortex_A7-arm-Debug-All,Perf-Chromecast-Clang-Chorizo-GPU-Cortex_A7-arm-Release-All,Test-Chromecast-Clang-Chorizo-GPU-Cortex_A7-arm-Release-All
Change-Id: I7a1ac2da646fb5b0cbdeb44310f1c0747013f3f0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234956
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-08-15 20:02:18 +00:00
Brian Osman
b5391bfa0b Revert "Revert "Go back to blacklisting MSAA on all Intel GPUs""
This reverts commit f0696bd4da.

Bug: chromium:527565, chromium:983926
Change-Id: I549c9f384c9c2ca81052a86df68501d5a7057c98
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235021
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-08-15 19:27:34 +00:00
Ben Wagner
4008519f84 Remove paint from simplifyTextBlobIgnoringRSXForm.
It isn't used, so remove it.

Change-Id: Ic10d54e5cb54e458c94f2e544c3a022be2068f0d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235016
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-08-15 19:26:33 +00:00
Ethan Nicholas
0be3480546 Revert "Revert "unified Vulkan uniform buffers""
This reverts commit 19754b5470.

Bug: skia:
Change-Id: Ie531a962934ee1909fecda59a5ee48c98e66f898
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234900
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-08-15 19:14:03 +00:00
Hal Canary
bb108480ec SkMallocPixelRef: remove MakeDirect and MakeWithProc from API.
Not currently used by any clients.

Change-Id: I21d554fb95ffef4f317945ab22c4cfb14fbb6b2a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234660
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-08-15 19:01:13 +00:00
recipe-roller
a28a6959c0 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.
recipe_engine:
  https://crrev.com/5ad4574eb507b14945b29450e6aa378fac0ea120 [analyze] Improve module path detection logic. (iannucci@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3affcaca34d4242c21e50eb68cd2f6fc3c72bdea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234981
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-08-15 18:41:39 +00:00
Robert Phillips
f0696bd4da Revert "Go back to blacklisting MSAA on all Intel GPUs"
This reverts commit c385da4fc0.

Reason for revert: Vulkan bots needs some love

Original change's description:
> Go back to blacklisting MSAA on all Intel GPUs
> 
> Skia's testing on Gen9 showed decent performance and quality, but Chrome
> has still been seeing driver crashes in the wild.
> 
> Bug: chromium:527565 chromium:983926
> Change-Id: I54f4f4013d313538da9afdab4d48ff232629152b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234909
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

Change-Id: Ief86bd5862897b1e7906b74177f2bea47bc84a2e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:527565 chromium:983926
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/235019
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-08-15 18:38:30 +00:00
Herb Derby
1436a13881 Add empty check for mask case. Small cleanups elsewhere.
We were overly cautious with spaces close to a cut. Re-enable
empty glyph removal from the Renderer' diff canvas processing.

* rename prepareForDrawing -> prepareForDrawingRemoveEmpty

Bug: chromium:881505
Change-Id: I9b5d51cd66645bccfc3b1f6fefb317f9eaf621e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/233417
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-15 18:12:39 +00:00
Ben Wagner
c86cf3cdb3 Restore SkFontMetrics documentation.
With 462505f310 "include refresh" most of
the useful parts of the SkFontMetrics documentation were removed.
Restore the documentation and update it with the latest information.

Change-Id: I28c13bc194b53265818e31e7b26e93a390f6259c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234945
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-08-15 18:11:39 +00:00
Brian Salomon
9c73e3df83 Turn off -Wreturn-std-move-in-c++11
Change-Id: I127c979670c3dc7dac2e35908a795afbdefca8f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234902
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-08-15 17:45:58 +00:00
Brian Osman
c385da4fc0 Go back to blacklisting MSAA on all Intel GPUs
Skia's testing on Gen9 showed decent performance and quality, but Chrome
has still been seeing driver crashes in the wild.

Bug: chromium:527565 chromium:983926
Change-Id: I54f4f4013d313538da9afdab4d48ff232629152b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234909
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-08-15 17:45:29 +00:00
Brian Osman
4c3fd34e00 Remove MakeCrossContextFromEncoded, unused argument from ...FromPixmap
Change-Id: I962e923a4994eb549a9c1002323f33d05b936b84
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234912
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-08-15 17:10:28 +00:00
Michael Ludwig
5b218519a4 Add helpers for creating new contexts
Also adds more documentation to Context and renames ctm() to layerMatrix()
albeit keeping ctm() around as deprecated.

Bug: skia:9282, skia:9295
Change-Id: Ibc1d5b39ab6bb9c2b65d6f3b0af65e5dcdf3f42c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234580
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-15 16:43:58 +00:00
Ravi Mistry
3959dc29e2 [perf_skottiewasm_lottieweb] Increase loops to 5
NoTry: true
Bug: skia:9237
Change-Id: I6ca6434ac24c9172787b0bf545e5ce446cbfe756
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234899
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2019-08-15 16:21:29 +00:00
Ethan Nicholas
e5dc1ebc86 unified Metal uniform buffers
Bug: skia:
Change-Id: I7929b01eb550278343ffc41f80040bc716e2a1a1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234378
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-08-15 15:56:38 +00:00
Brian Osman
bacb821c42 Fix crash in reinterpretcolorspace GM with abandoned context
CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu18-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-PreAbandonGpuContext

Change-Id: Ic46232b1f98f81c997ed547b79e46b9b1f0b142e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234906
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>
2019-08-15 15:06:28 +00:00
Dave Tapuska
7139f13f7f Fix duplicate definition of kRect_ClipType.
kRect_ClipType is defined in GrTypesPriv.h and SkDevice.h. To fix this
change SkDevice::ClipType to be an enum class.

Bug: chromium:993871
Change-Id: I14b3f2b129a4e05414c23263a456b91bd2cb4175
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234442
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-08-15 14:11:28 +00:00
recipe-roller
12bac7a982 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/f411acf552caafe18bb6ecacda477bd91eb344bf Make it possible to build a Windows SDK package without arm libs (bratell@opera.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I9571956c16bdee5903b0894cb390e9a1ec6860d4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234888
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-08-15 14:02:08 +00:00
Brian Salomon
096b091874 Make GrBlend.h private
Change-Id: I77f3dbc80d85d3a19e8986dae42450ee5b8c07a7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234668
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-15 13:34:57 +00:00
Brian Osman
d514837136 Add SkImage::reinterpretColorSpace
This reinterprets the contents of an image as though they were in a
different color space. Helpful for tools and debug visualization.

Bug: chromium:795132 chromium:985500
Change-Id: Ia8739bbd73d72249b8bee9d51dfa11d560a2a1f5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234328
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-08-15 13:30:41 +00:00
Greg Daniel
30ad4680ad Remove remaining functions in GrGLCaps that use GrPixelConfig.
At this point this just leaves the function that converts a GrBackendFormat
to a GrPixelConfig. This function will probably need to live until we
fully remove GrPixelConfig.

Also removed the bgraIsInternalFormat call since we literally have the format
so we can just straight up check if it is bgra or not.

Bug: skia:6718
Change-Id: I917d9361b590d69baeb0f6a5e1e5dae6908f09ad
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234658
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-08-15 13:26:41 +00:00
Michael Ludwig
e30a485a68 Move the source image into Context
This folds the source SkSpecialImage, that was previously passed in as
an argument to filterImage(), into the filtering Context. This allows
the Context to provide convenient access to backend properties that
are only accessible through the source image, but makes it clear in
calling code that the actual pixels of the source image are not needed.

IMO this improves readability in implementations that previously had
functions that would take a 'src' and an 'input' image, but would only
really process the input image's pixels.

Bug: skia:9282
Change-Id: I42437dcc6819e3d3882bff7851f9b16277a69f06
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234578
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-15 12:31:11 +00:00
Brian Salomon
201cdbb646 Make GrSamplerState.h and GrRenderTarget.h private
Change-Id: Id7a270f5a528e1a4a6d94474fa092545252753b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234667
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-08-15 12:22:11 +00:00
skia-autoroll
f3f5009953 Roll third_party/externals/angle2 99cffe5db419..3ea90d609720 (11 commits)
99cffe5db4..3ea90d6097

git log 99cffe5db419..3ea90d609720 --date=short --no-merges --format='%ad %ae %s'
2019-08-14 lujc@google.com Fix compile error on capture with client array
2019-08-14 stuartmorgan@google.com Standardize copyright notices to project style
2019-08-14 tobine@google.com Add shared mutex to frontend
2019-08-14 courtneygo@google.com Add support for sampling stencil texture
2019-08-14 syoussefi@chromium.org Vulkan: Emulate subgroup ops in seamful cubemap emulation
2019-08-14 ianelliott@google.com Vulkan: Enable copy_tex_image_conversions tests to run
2019-08-14 courtneygo@google.com Vulkan: Add support for D32F_S8 depth_texture
2019-08-14 fei.yang@arm.com Vulkan: pipeline cache not populated as blob cache is not set
2019-08-14 cnorthrop@google.com Implement FramebufferTexture3D
2019-08-14 syoussefi@chromium.org Suppress flaky SwapInterval test
2019-08-14 jmadill@chromium.org Roll glmark2.

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

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:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
TBR=scroggo@google.com
Change-Id: If73baecb068ac14d444fccaab5a8ecfed1135d02
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234800
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-15 05:39:01 +00:00
skia-recreate-skps
cdad8cedd2 Update Go deps
Change-Id: I71c93b0ce624b843ea4a44db6ebbe572a123b4fc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234806
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-08-15 05:25:01 +00:00
skia-autoroll
87a1803d45 Roll ../src 3f00da8c515f..efe495cfe7ef (457 commits)
3f00da8c51..efe495cfe7


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

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
Bug: None
TBR=scroggo@google.com
Change-Id: I9fc561de0cb72c96f7c531d5da4a47a0d868c041
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234801
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-15 05:11:01 +00:00
skia-autoroll
d1783268ab Roll third_party/externals/swiftshader 5e4e8b0af5fa..aa3f31f98a5c (26 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/5e4e8b0af5fa..aa3f31f98a5c

git log 5e4e8b0af5fa..aa3f31f98a5c --date=short --no-merges --format='%ad %ae %s'
2019-08-14 srisser@google.com Avoid blitting malformed rectangles
2019-08-14 digit@google.com [vulkan] Bleeding-edge update Vulkan headers for Fuchsia
2019-08-14 bclayton@google.com Yarn: Add Utils.hpp
2019-08-14 bclayton@google.com Yarn: Add Ticket, Ticket::Queue
2019-08-14 bclayton@google.com Yarn: Add BoundedPool<> and UnboundedPool<>
2019-08-14 bclayton@google.com Yarn: Add WaitGroup
2019-08-14 bclayton@google.com Yarn: Add ConditionVariable
2019-08-14 bclayton@google.com Yarn: Add Containers.hpp
2019-08-14 bclayton@google.com Yarn: Add Trace class
2019-08-14 bclayton@google.com Yarn: Add Scheduler class
2019-08-14 bclayton@google.com Yarn: Add stubs for MSVC source-code annotations
2019-08-14 bclayton@google.com Yarn: Add Thread helper class
2019-08-14 bclayton@google.com Yarn: Implement fiber context switching for Windows, macOS, Linux and Android.
2019-08-14 bclayton@google.com Yarn: Add Debug.hpp and Debug.cpp
2019-08-14 bclayton@google.com Yarn: Add make_finally(), make_shared_finally() and defer()
2019-08-14 digit@google.com Support launching the VulkanUnitTests suite on Fuchsia.
2019-08-14 bclayton@google.com Kokoro: Build yarn, run unit tests
2019-08-14 bclayton@google.com Yarn: Add CMake build rules (disabled by default) and stub tests
2019-08-14 bclayton@google.com Reactor: Add Ctlz() and Cttz() overloads for UInt
2019-08-14 bclayton@google.com Pipeline: Cleanup and simplify setting of SpirvShader input builtins
2019-08-14 bclayton@google.com SpirvShader: Implement GroupNonUniformShuffleRelative capability
2019-08-14 bclayton@google.com SpirvShader: Implement GroupNonUniformShuffle capability
2019-08-14 bclayton@google.com SpirvShader: Refactor AllTrueMask() / AnyTrueMask()
2019-08-14 bclayton@google.com SpirvShader: Implement GroupNonUniformVote capability
2019-08-14 bclayton@google.com SpirvShader: Implement GroupNonUniformBallot capability
2019-08-14 bclayton@google.com SpirvShader: Expose shader capabilities.

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

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
Bug: None
TBR=scroggo@google.com
Change-Id: I546b6658a03ad33db86c0b816a74c4cd0c426aa1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234799
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-08-15 04:33:31 +00:00
recipe-roller
319fd3d7bc 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.
recipe_engine:
  https://crrev.com/9739dd145b64ef8a9e33d0a4a5e25e8c516d83d4 Make set_worse_status not crash on None status (engeg@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I7718b819b47f001f688d7fd434aa44802e2938e1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234769
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-08-14 23:59:03 +00:00
recipe-roller
e8cd1d05c3 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.
recipe_engine:
  https://crrev.com/dbc1acf1456ba2041808ab5ac96d2bbe5ebdbf49 Improve the exception for missing config. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I857319eeac4aeac9c4215bdd8be422b43a79139f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234776
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-08-14 23:24:33 +00:00
recipe-roller
709e73a2da 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/a989d55904725b08c75d7dde8558966d9294ab21 git-cl: simplify squash commandline parsing (vapier@gentoo.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib1175a4df03b92137c481d5728ad64158d07d4b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/234443
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-08-14 22:38:43 +00:00