Commit Graph

41605 Commits

Author SHA1 Message Date
skia-autoroll
ced2b79d00 Roll ../src a3585f70a100..f968f64cdf27 (436 commits)
a3585f70a1..f968f64cdf


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

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=herb@google.com

Change-Id: Iab32df080ed7aad61dcf97faa7b5efaa13e81cd0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209129
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-18 04:42:49 +00:00
Ben Wagner
14c90c1ca2 Reland "Remove includes from SkFontTypes.h"
This is a reland of cdd5914dc1

Original change's description:
> Remove includes from SkFontTypes.h
> 
> These aren't needed and at least the comment on the one seems out of
> date.
> 
> Change-Id: If76723b7534b338b4d85b84b7c436bf9659a5f15
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208666
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>

Change-Id: I862910310b95a0c8c1be5187d0a9d27d02e5a761
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209062
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-17 22:07:49 +00:00
Ben Wagner
e64e6327a1 Add __init__.py to page_sets
https://chromium-review.googlesource.com/c/catapult/+/1567486 caused the
Housekeeper-Nightly-RecreateSKPs_Canary bot to fail because it now
expects our page_sets dir to be a python module.

Change-Id: I121bba213ea50dc4ea4139707cd3b5f97c3d7f70
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209106
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-04-17 21:23:43 +00:00
Robert Phillips
396673870c Non-substantive changes
These changes are pulled out of:

https://skia-review.googlesource.com/c/skia/+/208227 (Implement alternate method for determining recycle-ability of allocated GrSurfaces)

Change-Id: I1126f0e0c149d07f5febb352c4e86a676960409f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209103
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-17 20:43:33 +00:00
Hal Canary
5b39dc8153 SkQP: fix model colorspace (16-bit gold images)
Problem: `make_gmkb.go `was ignoring the ignoring the embedded ICC
profile in the images it was getting from Gold.

Replace make_gmkb.go with two small programs: `goldgetter.py` and
`make_skqp_model.cpp`.

`make_skqp_model` uses Skia to create the model from a bunch of images.

`goldgetter` wraps `make_skqp_model` and handles:
  - json parsing
  - downloading images from gold
  - multiprocessing

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86-devrel-Android_SKQP,Test-Debian9-Clang-NUC7i5BNK-CPU-Emulator-x86-devrel-All-Android_SKQP

Change-Id: I7add1a1dfd83bbd0ab07ab126d4183c36325263c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209101
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-17 20:26:39 +00:00
Greg Daniel
e6bfb7daf0 Add struct to wrap all the gpu flush options.
Bug: skia:8802
Change-Id: Ia92807034a8f54067cead59e29c233f91e11f175
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208674
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-17 20:03:29 +00:00
recipe-roller
6f9047027b 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/1e2cb1573bd2a2c847dee2844a5b6750e9270c73 [roll-dep] Ignore chromium-autoroll rolls (maruel@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I84d4a92addffd4287d805c03efa1c22e45a05a98
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/209040
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-04-17 18:05:48 +00:00
Mike Reed
64670cb1b8 Reland "Simplify SkTypeface::charsToGlyphs API to require UTF32 input"
This is a reland of fde841de44

Original change's description:
> Simplify SkTypeface::charsToGlyphs API to require UTF32 input
> 
> Change-Id: I486713c496c40103eef13fa6068ac4d69e32f606
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207865
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

Change-Id: I5162c93b3ea6146d09334545744b791d993397b8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208679
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-17 17:56:39 +00:00
Brian Salomon
105d7c24c9 Add flag to map buffer flags in GrCaps to indicate whether mapping a
GrGpuBuffer for reading is synchronous or not.

Update transfer-from test to not call GrGpu->finishFlush() when maps
are synchronous.

Bug: skia:8962
Change-Id: I5eb003081725e5199157473faf7f916a65408dc8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208509
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-17 17:34:18 +00:00
Eric Boren
f19ef9bd68 [infra] More work on chrome_release_branch
- Actually create the new branch
- Create the CL to update the Chrome milestone

Bug: skia:8932
Change-Id: If49a5b8893b90d0285b3b576c5af94e42d40f803
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208671
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
2019-04-17 17:02:34 +00:00
Mike Klein
da8a6e1126 Add clang-cl arm64 builds
Nothing too tricky...
   1) tell clang-cl to --target=arm64-windows
   2) work around minor libpng issue temporarily

Change-Id: I4f0d792438610268821b67b92caf08fd78dcec4f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208882
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-17 16:48:04 +00:00
Greg Daniel
5155e09d14 Revert "added more SPIR-V RelaxedPrecision decorations"
This reverts commit 151a883e86.

Reason for revert: lots of broken GMs

Original change's description:
> added more SPIR-V RelaxedPrecision decorations
> 
> Bug: skia:
> Change-Id: I5717dc2c6d78f5a09ad4e948a73414fe514a4613
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208513
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

TBR=egdaniel@google.com,ethannicholas@google.com

Change-Id: Ia58f99a30a6c2cbe1593c56a368d6fb7930d7006
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208862
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-17 15:29:04 +00:00
Jim Van Verth
7a7a97d3c7 Make Metal render loop more stable
Bug: skia:8737
Change-Id: Ib825e5f0c9502692cbecc60fbb68d0d1a2bc635f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208672
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-17 14:41:11 +00:00
Mike Klein
629ca1d5c7 roll clang_win
Change-Id: I69b0a6777aba3186696d2aa64154fc497d9a8d3c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208883
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-17 14:33:41 +00:00
recipe-roller
3e217a80df 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/7e7523be4e21b0841ae815ef37521a5476f68549 [lucicfg] Bump lucicfg version v1.6.0 -> v1.7.0. (vadimsh@chromium.org)
  https://crrev.com/e72279d25f75444f1ea053ab2e5c13f1cedbeeaf Keep warning about unversioned trees until removed (hferreiro@igalia.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I78bc1fcf314fbd7d1f71a77a2b8ca395ad3980bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208860
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-04-17 12:37:41 +00:00
Robert Phillips
33906ad1e2 Reland "Revert "Simplify SkTypeface::charsToGlyphs API to require UTF32 input""
This reverts commit 652b007a4c.

Reason for revert: Potentially causing Google3 errors

Original change's description:
> Revert "Revert "Simplify SkTypeface::charsToGlyphs API to require UTF32 input""
> 
> with legacy guard for google3
> 
> Needs this to land first: https://critique.corp.google.com/#review/243924283
> 
> This reverts commit 70ed05e53a.
> 
> Change-Id: I3e821dfcdbf3004382092338ebad7cceaf40cefd
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208668
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
> Auto-Submit: Mike Reed <reed@google.com>

TBR=fmalita@chromium.org,reed@google.com

Change-Id: Id2b3ed8a6157b5e33721b0c5168c5680bfac15b0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208669
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-17 12:03:53 +00:00
skia-recreate-skps
e88d4382e1 Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I23573fb77a97a888bbc834e9cda6756b784889ff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208685
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-17 05:49:06 +00:00
skia-autoroll
c22a81fdbd Roll third_party/externals/angle2 e7da32f1c73e..c832cdd75f75 (7 commits)
e7da32f1c7..c832cdd75f


git log e7da32f1c73e..c832cdd75f75 --date=short --no-merges --format='%ad %ae %s'
2019-04-16 jonahr@google.com dEQP test_expectations parser should output an error on unused lines.
2019-04-16 sunnyps@chromium.org Add support for RGB10A2 in eglCreatePbufferFromClientBuffer
2019-04-16 spang@chromium.org Pack handle type enum for glImportMemoryFd & glImportSemaphoreFd
2019-04-16 sascha@adaptvis.com D3D: Update dynamic BufferUsage flags.
2019-04-16 mihu@microsoft.com GL_ANGLE_multiview has been renamed to GL_OVR_multiview2.
2019-04-16 cwallez@chromium.org Suppress tests crashing on teardown on Win Intel D3D11
2019-04-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 102e430a88db..3335c61147d7 (1 commits)


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

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=herb@google.com

Change-Id: If50a97deafb8aaa1049a4c68c66af9bd6bedfe82
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208829
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-17 05:08:06 +00:00
skia-autoroll
a6b421c6cd Roll third_party/externals/swiftshader 25be5bb97518..84c3a94e1450 (6 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/25be5bb97518..84c3a94e1450


git log 25be5bb97518..84c3a94e1450 --date=short --no-merges --format='%ad %ae %s'
2019-04-16 chrisforbes@google.com Wire up subgroup input builtins in graphics pipe
2019-04-16 chrisforbes@google.com Wire up FragDepth builtin
2019-04-16 chrisforbes@google.com Wire up FragCoord builtin
2019-04-16 chrisforbes@google.com Add support for rendering more formats
2019-04-16 bclayton@google.com Android: Always use LLVM 7, delete build files for LLVM 3
2019-04-16 swiftshader.regress@gmail.com Regres: Update test lists @ 25be5bb9


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

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=herb@google.com

Change-Id: If320d6461956af48835635491c09eb1bd48b368c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208830
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-17 04:44:16 +00:00
skia-autoroll
7bd13fc331 Roll ../src 95629c4c410f..a3585f70a100 (459 commits)
95629c4c41..a3585f70a1


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

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=herb@google.com

Change-Id: Id362d27433771d368dfd1ef36af3824c0b5b7279
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208828
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-17 04:43:46 +00:00
Mike Reed
652b007a4c Revert "Revert "Simplify SkTypeface::charsToGlyphs API to require UTF32 input""
with legacy guard for google3

Needs this to land first: https://critique.corp.google.com/#review/243924283

This reverts commit 70ed05e53a.

Change-Id: I3e821dfcdbf3004382092338ebad7cceaf40cefd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208668
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-17 03:08:40 +00:00
Mike Reed
70ed05e53a Revert "Simplify SkTypeface::charsToGlyphs API to require UTF32 input"
This reverts commit fde841de44.

Reason for revert: used in headless on google3, need to add a guard

Original change's description:
> Simplify SkTypeface::charsToGlyphs API to require UTF32 input
> 
> Change-Id: I486713c496c40103eef13fa6068ac4d69e32f606
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207865
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: I1d28ed5c31deaa76aa3c4b627454b0ad3356a6fc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208800
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2019-04-17 00:02:12 +00:00
Mike Reed
0b5e302326 Revert "Remove includes from SkFontTypes.h"
This reverts commit cdd5914dc1.

Reason for revert: need to revert so I can revert "Simplify SkTypeface::charsToGlyphs"

Original change's description:
> Remove includes from SkFontTypes.h
> 
> These aren't needed and at least the comment on the one seems out of
> date.
> 
> Change-Id: If76723b7534b338b4d85b84b7c436bf9659a5f15
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208666
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>

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

Change-Id: I84e3eb2f38ecf6b86f39102a3852c65193093b79
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208667
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-17 00:00:54 +00:00
Chris Dalton
fa971d6ceb Reland "Add GrDisableColorXPFactory::makeXferProcessor()"
This is a reland of 11157ef97a

Original change's description:
> Add GrDisableColorXPFactory::makeXferProcessor()
> 
> This allows us to access the actual XP for working directly with
> pipelines.
> 
> Bug: skia:
> Change-Id: I71e7c2e9d69f464685e28b4f4a85847f0496b864
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208345
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

Bug: skia:
Change-Id: I185aeea1e5f7d95ff551163828508d622897061a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208683
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-04-16 23:19:50 +00:00
Ben Wagner
cdd5914dc1 Remove includes from SkFontTypes.h
These aren't needed and at least the comment on the one seems out of
date.

Change-Id: If76723b7534b338b4d85b84b7c436bf9659a5f15
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208666
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-16 22:22:20 +00:00
Mike Reed
fde841de44 Simplify SkTypeface::charsToGlyphs API to require UTF32 input
Change-Id: I486713c496c40103eef13fa6068ac4d69e32f606
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/207865
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-16 21:34:10 +00:00
Ben Wagner
78e5577492 IWYU for SkCanvas.h
SkCanvas.h has accumulated a need to include a few more headers. Fixing
this allows for easier changes to other files.

Change-Id: I520eecf6c67580cc1201e68e8ffb8f7ee79587d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208665
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-16 21:07:40 +00:00
Ben Wagner
db13d38748 Move SkTLazy.h to src/
It is no longer used in public or private includes or by any users.

Change-Id: Id3803531b411dc7a565b2bb688505eb2c1212cfd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208661
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-16 20:31:20 +00:00
Mike Klein
96e4e53cf1 Reland "align skvx::Vec<N,T> to N*sizeof(T)"
This is a reland of e3b110dc6e

PS1 is the original, so best to diff against that.
This is the original with compiler workarounds.

Original change's description:
> align skvx::Vec<N,T> to N*sizeof(T)
>
> This increases the alignment of these vector types.  I would have liked
> to keep the alignment minimal, but it's probably no big deal either way.
>
> In terms of code generation, it doesn't make much difference for x86 or
> ARMv8, but it seems hugely important for good ARMv7 NEON code.  It's a
> ~10x difference for the bench I've been playing around with that spends
> most of its time in that SkOpts::blit_row_color32 routine.
>
> Bug: chromium:952502
> Change-Id: Ib12caad6b9b3f3f6e821ed70bfb57099db37b15f
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208581
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Auto-Submit: Mike Klein <mtklein@google.com>

Bug: chromium:952502
Cq-Include-Trybots: skia.primary:Test-Win2016-MSVC-GCE-CPU-AVX2-x86-Release-All,Build-Debian9-GCC-mips64el-Debug
Change-Id: Ief99e14ab4de5a56840ed6bb326cf7669c51dc97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208681
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-16 19:48:50 +00:00
Eric Boren
522efc438c [infra] Add chrome_release_branch script
Bug: skia:8932
Change-Id: I258fd8f5262e5f87800b85f9bcbd0c4982ef1e3d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208503
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-04-16 19:46:10 +00:00
Mike Klein
12de0c1bd4 roll libpng to 1.6.37
Adds NEON accelerated palette expansion.

Change-Id: I8a1378c58175c2343541a69b2bd7a1f476931a99
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208580
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-04-16 19:35:50 +00:00
Mike Klein
9a885b27f3 pass SkVx::Vec arguments as const&
Yet another surprising finding when looking at ARM code generation is
that passing these values to functions by const& does make a difference,
even when fully inlined.  I can only guess that the compiler's somehow
more sure that way that the values won't change?  Anyway, convert all
skvx functions that take Vec arguments to take const Vec& instead.

This tweak is enough to let the natural implementation of mull()
actually produce good code generation, so I've promoted that to SkVx.h
and added a unit test.  Notice in the NEON case we've got a base case at
N=8 and two recursive cases, one down to 8 as usual when N > 8, but also
one up to 8 when N < 8.

This also is another big speedup for ARMv7 NEON, bringing it to nearly
the same speed as ARMv8 NEON on the same device.

Bug: chromium:952502
Change-Id: I0f19bab45cf02222ccc8090053ea2a4a380f1dfe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208582
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-04-16 19:24:50 +00:00
Greg Daniel
e9c375cd3d Revert "Add GrDisableColorXPFactory::makeXferProcessor()"
This reverts commit 11157ef97a.

Reason for revert: breaking bots

Original change's description:
> Add GrDisableColorXPFactory::makeXferProcessor()
> 
> This allows us to access the actual XP for working directly with
> pipelines.
> 
> Bug: skia:
> Change-Id: I71e7c2e9d69f464685e28b4f4a85847f0496b864
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208345
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,csmartdalton@google.com

Change-Id: Ia12f17d955702b13f33753b352cb3ae232881175
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208662
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-16 19:19:52 +00:00
Ben Wagner
0a8da21fba Remove generateCharFromGlyph and charToGlyphID.
The methods on SkScalerContext are no longer used.

Change-Id: I6a5a5f2eb7018cb6369ea90649ab5a65b5a6660a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208660
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-16 18:49:40 +00:00
Ethan Nicholas
151a883e86 added more SPIR-V RelaxedPrecision decorations
Bug: skia:
Change-Id: I5717dc2c6d78f5a09ad4e948a73414fe514a4613
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208513
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-16 18:35:50 +00:00
Mike Klein
50303b9adc Revert "align skvx::Vec<N,T> to N*sizeof(T)"
This reverts commit e3b110dc6e.

Reason for revert: bot failures

Original change's description:
> align skvx::Vec<N,T> to N*sizeof(T)
> 
> This increases the alignment of these vector types.  I would have liked
> to keep the alignment minimal, but it's probably no big deal either way.
> 
> In terms of code generation, it doesn't make much difference for x86 or
> ARMv8, but it seems hugely important for good ARMv7 NEON code.  It's a
> ~10x difference for the bench I've been playing around with that spends
> most of its time in that SkOpts::blit_row_color32 routine.
> 
> Bug: chromium:952502
> Change-Id: Ib12caad6b9b3f3f6e821ed70bfb57099db37b15f
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208581
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Auto-Submit: Mike Klein <mtklein@google.com>

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

Change-Id: I72357b9775685efcc2cd75db220711c8145b8ac4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:952502
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208680
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-16 18:25:54 +00:00
Herb Derby
5dd7f84ae4 Reduce use of path generation
Since the prepare for draw generates a path when needed,
a lighter weight hasPath() can be used. The generatePath
only needs to be used until the bitmap device
path ARGB fallback is worked out.

Change-Id: I4b2c6d7907e0f818078841caa166a58a0a989827
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208510
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-16 18:24:40 +00:00
Mike Klein
e3b110dc6e align skvx::Vec<N,T> to N*sizeof(T)
This increases the alignment of these vector types.  I would have liked
to keep the alignment minimal, but it's probably no big deal either way.

In terms of code generation, it doesn't make much difference for x86 or
ARMv8, but it seems hugely important for good ARMv7 NEON code.  It's a
~10x difference for the bench I've been playing around with that spends
most of its time in that SkOpts::blit_row_color32 routine.

Bug: chromium:952502
Change-Id: Ib12caad6b9b3f3f6e821ed70bfb57099db37b15f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208581
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-04-16 17:59:22 +00:00
Chris Dalton
11157ef97a Add GrDisableColorXPFactory::makeXferProcessor()
This allows us to access the actual XP for working directly with
pipelines.

Bug: skia:
Change-Id: I71e7c2e9d69f464685e28b4f4a85847f0496b864
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208345
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-04-16 17:57:18 +00:00
Brian Salomon
30182b482b Ensure that insetting for blur texture domain doesn't invert domain rect.
Bug: chromium:949422
Change-Id: I9046ee89f5cfb56fc25c50bd3b9bd617f07a3a73
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208514
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-16 17:52:38 +00:00
Ben Wagner
393981d1db Remove deprecated SkPaintFilterCanvas::onFilter.
No longer used by any clients. The new onFilter is made pure virtual to
enforce that it is implemented and the existing fallback forwarding
implementation is removed.

Change-Id: I8ce522db78d28a1e83779fbfa6979e6e16a0cee5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208507
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-16 17:52:13 +00:00
Kevin Lubick
0e3342cfcd WASM build cleanups
Fix debugger includes (broke on https://skia-review.googlesource.com/c/skia/+/208226)

Fix canvaskit building w/o fonts

Change-Id: I1279d92ee1ac749a974830e75b41e97e9f75f578
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208515
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-04-16 17:48:53 +00:00
Herb Derby
8bd22ae8de Remove non-canonical font color
Change-Id: I65563e0a1814d0e59734a5fac794b906aa939f04
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208511
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-16 17:45:44 +00:00
Brian Salomon
68aeec07de Clarify that buffers of type GrGpuBufferType::kXferGpuToCpu are mapped for reading.
Don't allow GrGpuBuffer::updateData on kXferGpuToCpu (in GL this can resize the buffer
to a smaller size).

Don't call glBufferData with NULL prior to mapping for reading.

Don't set GL_MAP_WRITE_BIT when using glMapBufferRange for reading only.

Bug: skia:8962
Change-Id: I605d83fa40c7b170082c48a456436d97cf3b70a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206707
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-16 16:52:44 +00:00
Jim Van Verth
c809832930 Convert 565 and 4444 bitmaps to 8888 for Mac Metal.
Fixes a large number of GMs.

Bug: skia:8243
Change-Id: I8053ac218d894205d36a3a3cdc8b7a7ea2e27e71
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208320
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-04-16 15:29:14 +00:00
Chris Dalton
8c4cafd297 Don't flush pipeline state when querying sample locations in GL
This was a relic from back when we could use EXT_raster_multisample.
Since MSAA is now always baked into the framebuffer attachments, this
is no longer necessary.

Bug: skia:
Change-Id: I47c66fcdbd008e057dab5eae457bb70ec8e6bb9f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208460
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-16 15:21:33 +00:00
Mike Klein
c48bf3a34b just some refactoring for fm_bot.go
A couple little spots starting to look unwieldy.

Change-Id: If2971b71ae202b152f54ec3df6896d906c34a081
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208276
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-16 14:41:51 +00:00
Greg Daniel
4aa13e7da3 Remove deprecated SkSurface::prepareForExternalIO and related uses of the name.
In a future CL I intend to use prepareForExternalIO to be a specific operation
to do to an SkSurface/SkImage so this is a pre CL that removes our use of that
phrase when related to flushing.

Bug: skia:8802
Change-Id: I3efe4c4061fe962e2fc1339185feb5ded6e23005
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/208223
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-16 14:08:09 +00:00
Brian Salomon
26de56ef09 GrSurface -> GrGpuBuffer transfer improvements:
GrCaps now only provides the offset alignment requirement. The row bytes
is always bpp * width.

GrGpu::transferPixelsFrom now just returns bool since row bytes value is
implicit. It now asserts offset is aligned with GrCap's provided value
in base class.

Implement caps for GL.

Bug: skia:8962
Change-Id: I3299b62efe9fe05bfe02f2a6a4c2704f647d0f8a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206686
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-16 14:05:34 +00:00
Brian Salomon
c0d79e525f Avoid multiplication by alpha in fragment shader when known to be 1.
Implemented for image shaders, image draws, and gradient shaders.

Reimplement GrFragmentProcessor::OverrideInput as GrOverrideInputFragmentProcessor.fp.
It allows specification of whether the replacement input color should be
a literal in the shader code or a uniform. For above use case use with literal white.

Make key in variables in fp files work for 4f colors.

Fix issue in CPP code gen from .fp where when + key vars that pushed multiple values
into the shader key only skipped the first key value when the when condition is not
true.

Bug: skia:7722

Change-Id: Id7c865132d620e8cdea8b00f2a627103eef171ac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/201985
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2019-04-16 14:03:04 +00:00