Commit Graph

46849 Commits

Author SHA1 Message Date
Mike Klein
3c3b543c7c try release MSAN jobs
Wonder if these run faster?

Change-Id: I410a77e757398172bdcb01fcaea375aa2a900883
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270390
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2020-02-12 16:47:05 +00:00
Mike Klein
508fd32091 make SkBBH a public interface
I don't necessarily like this long term, but in the short term Flutter
would like to record pictures using their own type separate from
SkRTree.  This makes SkBBoxHierarchy public, and converts it to use
other public types (SkTDArray -> vector).

Change-Id: I29c5ef9da7d641d8f4ba18522b168ddf7cefe84f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270387
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-02-12 16:31:05 +00:00
Mike Klein
e1bad065be calculate root bounds directly
This is a long-standing TODO.  No reason to ask
the BBH subclasses to calculate the root bounds
when we can simply union them up ourselves.

Change-Id: I9dbd883c43247400e4e9d56c74d4203d34f698e1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270276
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-12 16:28:56 +00:00
Jim Van Verth
55b137ca7d More tweaks to iOS build instructions.
The <>s in the version number were being treated as an HTML tag, and I
figured I'd make things a little clearer in other places.

Change-Id: I625f44320724ac72fe464c76a3eff736432a9d36
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268796
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
2020-02-12 15:46:03 +00:00
Greg Daniel
43956128ba Update generated effects to use views.
Bug: skia:9556
Change-Id: Iad4f7f2db2624e699184691d8aae2aaded81eb28
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270198
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-12 15:33:24 +00:00
herb
0234170cc6 Simplify SkStrike ctor
Allow a SkStrike to be created with a descriptor and a context.
Metrics can be passed in to support the diff canvas.

Change-Id: I981f929ccb6d6391b1d205cba8aaa96f8df4932c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270197
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-02-12 15:09:14 +00:00
Shachar Langbeheim
be28d2e75e This change allows users of PropertyObserver to compose a full keypath for each of the modified properties.
Also this contains a demonstration of how to implement this in CustomPropertyManager.

Change-Id: If4770e47b87ed76c98a85de3c235ab27c913dbc0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269696
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2020-02-12 14:13:13 +00:00
Mike Reed
125d3820d6 Revert "Ensure arcTo (SVG) ends at the targeted point"
This reverts commit 31143100ee.

Reason for revert: need to guard this, to stage changes to test images

Original change's description:
> Ensure arcTo (SVG) ends at the targeted point
> 
> Floating-point errors in the calculations in arcTo can cause the final
> point to differ significantly enough from the supplied target point that
> a subsequent 'close' operation inserts a lineTo to close the curve. This
> can result in bad miters on curves with thick outlines.
> 
> The fix is to ensure that the final point used is *exactly* the point
> that was supplied.
> 
> Bug: chromium:1001768
> Change-Id: I75c740ab25fb05153bc852a204be957977674cd2
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270000
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=reed@google.com,iapres@microsoft.com

Change-Id: If331924a4db83294769b28501bba875238a521bd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1001768
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270356
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-12 14:08:03 +00:00
recipe-roller
d282df432c Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
  https://crrev.com/ee858e5e410b4d30b666b29ebd759866300a5504 (tikuta@chromium.org)
    swarming: update swarming binary

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id5948507ec1cf59938fcc5d752e2dfd241ac2966
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270316
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>
2020-02-12 07:39:53 +00:00
skia-recreate-skps
29b6debdc9 Update Go Deps
Change-Id: I518cf50e565918a6c4b835490b47b0615605f9bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270305
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-02-12 05:30:23 +00:00
skia-autoroll
1b901d822d Roll ../src 32b4892fd4e5..b4a3bf71d776 (374 commits)
32b4892fd4..b4a3bf71d7


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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC stani@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: stani@google.com
Change-Id: I7dce8f082301524707fec7a48f411171355b4a53
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270300
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-12 05:08:23 +00:00
skia-autoroll
89e146d0ac Roll third_party/externals/angle2 b40d48a67c93..e1ccac7ff9f0 (5 commits)
b40d48a67c..e1ccac7ff9

git log b40d48a67c93..e1ccac7ff9f0 --date=short --first-parent --format='%ad %ae %s'
2020-02-12 ynovikov@chromium.org Don't print INFO level log messages in Release by default.
2020-02-11 jmadill@chromium.org Vulkan: Command graph linearization (Step 5).
2020-02-11 cnorthrop@google.com Vulkan: Update bug number in KHR ES 3.1 expectations
2020-02-11 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src 428455ca6121..45b9d01815d9 (2 commits)
2020-02-11 timvp@google.com Fix assignment of CacheOpResult::EnumCount

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC stani@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: stani@google.com
Change-Id: Iac2eb2643934a2d27afdb4bfbc879a5f0a5de7f5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270298
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-12 04:39:03 +00:00
skia-autoroll
6ac20975a2 Roll third_party/externals/swiftshader 196d81774ef8..6cbb02e0dc93 (10 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/196d81774ef8..6cbb02e0dc93

git log 196d81774ef8..6cbb02e0dc93 --date=short --first-parent --format='%ad %ae %s'
2020-02-11 bclayton@google.com CMakeLists: Drop the explicit include path to marl
2020-02-11 bclayton@google.com Bulk clang format
2020-02-11 bclayton@google.com Change SpirvShaderInstructions.inc extension to .inl
2020-02-11 bclayton@google.com Merge changes Ide16cac3,Id5d767fc
2020-02-11 jiaxun.yang@flygoat.com Fix MIPS build cflags
2020-02-11 bclayton@google.com Don't use std::initializer_list for array views.
2020-02-11 sugoi@google.com Support for VK_KHR_separate_depth_stencil_layouts
2020-02-11 sugoi@google.com Support for VK_KHR_create_renderpass2
2020-02-11 bclayton@google.com Revert "Add missed symbol __aeabi_idivmod for Android."
2020-02-11 gmouse@google.com Add missed symbol __aeabi_idivmod for Android.

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC stani@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: stani@google.com
Change-Id: I7903c728cfc13348281d3b0adbea538bf5eacb22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270299
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-12 04:37:23 +00:00
Ian Prest
31143100ee Ensure arcTo (SVG) ends at the targeted point
Floating-point errors in the calculations in arcTo can cause the final
point to differ significantly enough from the supplied target point that
a subsequent 'close' operation inserts a lineTo to close the curve. This
can result in bad miters on curves with thick outlines.

The fix is to ensure that the final point used is *exactly* the point
that was supplied.

Bug: chromium:1001768
Change-Id: I75c740ab25fb05153bc852a204be957977674cd2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270000
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-11 22:13:08 +00:00
Brian Osman
3841d0e8fb Remove unused fields from SkSL's IRGenerator
Change-Id: If2a05c1bdf6ed1bee2244c9721307c7906acda94
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270202
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2020-02-11 21:54:28 +00:00
Mike Klein
f7eb0544a8 basic, untested BGR 1010102 and 101010x
Updated every switch that yelled at me, and added support to dm and fm,
and then founds some more switches that shouldn't have defaults...

The tricky spots outside those were mips and dither,
since they aren't simply exhaustive switches.

_Now_ no diffs between RGB/BGR 1010102 and 101010x.

No GPU support.

Bug: skia:9893
Change-Id: I73ab3fd22bdef0519296dfe4cb84031e23ca0be3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270114
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-11 21:44:57 +00:00
Mike Klein
1cb5527bc6 remove enum docs
These docs repeat the possible values for these enums at
the time they were written ad nauseum.  They're not kept
up to date.

This is the result of searching for "one of" and deleting most.
I did keep one set of docs where some enum values were permitted
on some platforms and others on others.  And I kept docs for args
that didn't take enums but only accepted a particular range, like
[0,8] for matrix value indices or 0-4 for pixel size shifts.

Change-Id: Ib21ec54ebbc4abe456e9b3f436f3823d7da9097d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270107
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-02-11 21:43:07 +00:00
Eric Boren
471fa4f0af [infra] Update infra dep to fix Housekeeper-PerCommit-PushAppsFromWASMDockerImage
Bug: skia:9900
Change-Id: I53a0b2f2970fd1d47557e7eefda5881b30166f24
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270121
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2020-02-11 20:09:37 +00:00
herb
660317f6a7 Move scaler context fallback to GDI
The GDI Typeface is the only one that can fail to make a
scaler context. Move all the logic to the GDI specific code.

Change-Id: I50a0a58529bb44625068244e6ae27e54bccd9f67
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269913
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-02-11 19:50:27 +00:00
recipe-roller
ae99dcadb3 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (recipe_engine) into this repository.

recipe_engine:
  https://crrev.com/9d6a5450a86f921c7890b72414e99e7d9828d9a5 (tandrii@chromium.org)
    cq: update doc.

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I974f1e6cc8e029f252516f8e99a3bf5a6a3e0847
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270138
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>
2020-02-11 19:08:57 +00:00
Greg Daniel
124486b6b8 Fix a gpu couple tests to use views.
Bug: skia:9556
Change-Id: I1e3a1e900c9f25f249df45a0388fe63743a3bcfb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270068
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-11 18:20:56 +00:00
Mike Klein
ea81679818 remove chorizo cpu jobs
never cared about these

Bug: skia:9899
Change-Id: I1d467da491365668cbd2cb2fc606af63247b11da
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270102
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-11 18:16:17 +00:00
Jason Simmons
d6ff6f7f12 Fix typo: widthWithGhostSpaces
Change-Id: I14b56069fc273e4b6fcb6d7b528716bf6dc38c00
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269912
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Jason Simmons <jsimmons@google.com>
2020-02-11 18:03:27 +00:00
Nathaniel Nifong
b1525c721e Update canvaskit fiddle shader example
Change-Id: I6955bdd6e2e7040dfe151d43ea925d8d7e8f9498
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270067
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2020-02-11 17:13:57 +00:00
Mike Klein
6f9a37fb1a test _MSC_VER in SkCpu
We're looking to use tools provided by the compiler toolchain,
not by the OS, so the proper check is for MSVC (or compatible
clang-cl) not for Windows.  E.g. MinGW wants the #else path.

Change-Id: Iefc43a857a1f6438c9145d7503a42c0646c5cbf1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270096
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-11 16:54:07 +00:00
Greg Daniel
d11ae2eebe Update OnFlushResourceProvider for views.
Bug: skia:9556
Change-Id: I4c76192b9c4a5af9383ed131491e967741c3c743
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269909
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-11 16:34:27 +00:00
Brian Osman
f989aeaa01 Support children in SkRuntimeEffect::makeColorFilter
Change-Id: Icf8c69464a44341a08df16dce53aebedc2826bfd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270064
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-02-11 16:20:07 +00:00
Chris Dalton
c3b67eb988 Add a "conservative raster" flag for GrFillRectOp
Adds the ability to fill a rect with conservative raster enabled, and
fixes a bug in the gpu tessellation atlas where there were artifacts
from mixed samples.

Change-Id: Ic0b4f2059129ac238fdcb08d43896fc2b9e50211
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269989
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-02-11 15:39:57 +00:00
Greg Daniel
e32506bf66 Update GrClipStackClip and GrDeviceSpaceTextureDecalFP to use views.
Bug: skia:9556
Change-Id: I61346e31b67ca1dffc5132e0af47aff4fdfc6e22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269907
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-11 15:23:37 +00:00
Brian Osman
d0b3d9ca17 Add comment to SkTPin explaining NaN behavior
Change-Id: Ifaf86ce24dcc8843172761f4e210b0df6f83d32d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270062
Reviewed-by: Mike Reed <reed@google.com>
2020-02-11 14:43:39 +00:00
Mike Reed
88417e7430 SkCreateCGImageRef needs to not rely on N32
Change-Id: I7d657e7a25293cc8a540dd1d4f8fd5fd937891f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270060
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-11 14:35:24 +00:00
Mike Reed
50a490a1a4 fix gm to test unpremul etc.
Change-Id: Ia53003e31b2e24ffc5834faefb1de0687036683d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270057
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-02-11 14:04:02 +00:00
Weston Tracey
3e71209b06 [infra] Add ccache for mac default builds.
Also add pre and post build ccache stats reporting to provide insight for cache size, hit rate, etc.

Bug: skia:9887
Change-Id: I3786fb661ef9f14bdc9fcc7cbcecd1f1a588479f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269370
Commit-Queue: Weston Tracey <westont@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2020-02-11 13:18:36 +00:00
Eric Boren
cdf2491afa Update Go Deps
Change-Id: Icf2dde726b7f7dfd9fd3b567650d670e0fceb1bf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269992
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-02-11 12:13:36 +00:00
Mike Reed
dc2782c380 Update OverdrawColorFilter to clarify how it interprets its input array.
1. Document that Make() takes RGBA_premul
2. Change impl so that CPU matches this behavior/definition
3. Offer a clearer factory that takes SkColor
   (perhaps migrate clients to this one in the future)

Bug: skia:9896
Change-Id: I0a81dda45834a2fbf2b28b711ba7e6b83f360aff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269906
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-02-11 10:58:36 +00:00
skia-autoroll
4fe89b4d87 Roll third_party/externals/angle2 a8e6a463121b..b40d48a67c93 (10 commits)
a8e6a46312..b40d48a67c

git log a8e6a463121b..b40d48a67c93 --date=short --first-parent --format='%ad %ae %s'
2020-02-10 jmadill@chromium.org Vulkan: Remove ensure init from updateActiveImages.
2020-02-10 jmadill@chromium.org Vulkan: Fix EGLBlobCacheTest.
2020-02-10 jmadill@chromium.org Vulkan: Command graph linearization (Step 4).
2020-02-10 jmadill@chromium.org Speed up InstancingTest.LineLoop.
2020-02-10 jmadill@chromium.org Vulkan: Defer RenderPass image barriers.
2020-02-10 jmadill@chromium.org Suppress two failing NVIDIA D3D11 tests.
2020-02-10 cnorthrop@google.com Capture/Replay: Avoid null pointer dereference in MEC
2020-02-10 cnorthrop@google.com Capture/Replay: Initial support for framebuffer textures
2020-02-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader dd48b7e2d06e..b3b2a4fc756f (11 commits)
2020-02-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 95c414ffee64..ae59435606fc (1 commits)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC stani@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: stani@google.com
Change-Id: I0a9ed97fc4d6268b507bc8a1150f4326c4194880
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269986
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-11 05:26:05 +00:00
skia-autoroll
6e35e79dc0 Roll third_party/externals/swiftshader b3b2a4fc756f..196d81774ef8 (1 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/b3b2a4fc756f..196d81774ef8

git log b3b2a4fc756f..196d81774ef8 --date=short --first-parent --format='%ad %ae %s'
2020-02-10 bclayton@google.com Debug: Rename levels.

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC stani@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: stani@google.com
Change-Id: I4e274ab6d926cbb4f50cfc8dee5bdbebca13c5e0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269987
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-11 05:08:25 +00:00
skia-autoroll
abefc9c170 Roll ../src 437a856b0a5d..32b4892fd4e5 (392 commits)
437a856b0a..32b4892fd4


Created with:
  gclient setdep -r ../src@32b4892fd4

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC stani@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: stani@google.com
Change-Id: I2ba75ce95eba3918f7684aac914ffd4141b87daa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269988
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-02-11 04:29:05 +00:00
recipe-roller
88c3793a4e Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools, recipe_engine) into this repository.

depot_tools:
  https://crrev.com/7f6dec01696fa5319c505ca8f57579a5b02c4184 (ehmaldonado@google.com)
    git-cl: Simplify Change object construction.
  https://crrev.com/6e9bfb061750075b34568d7d5bed4b212deac309 (ehmaldonado@google.com)
    git-cl: Remove GetDescriptionFooters and UpdateDescriptionFooters
  https://crrev.com/6c6827cbf27df9964f0c8a1fd069f2d31a10b210 (ehmaldonado@google.com)
    git-cl: Simplify FetchDescription and UpdateDescription
  https://crrev.com/73c76703bee6ce2d1b3cfd626be48d35b80f20d2 (ehmaldonado@google.com)
    git-cl: Don't use assertRegexpMatches on tests.
  https://crrev.com/8ac1b465512d72c0bea0eb9f2de6a499b847e497 (tandrii@google.com)
    Delete tryserver.set_do_not_retry.
  https://crrev.com/3b8094ac6239876a0c03b2d0b6e42d73d633554b (ehmaldonado@google.com)
    git-cl: Fix call to GetChange.
  https://crrev.com/64c5af3a715f2d108412edadaf22003c2d18366f (vapier@chromium.org)
    repo: update to 2.0 launcher
recipe_engine:
  https://crrev.com/202779b4946ce3ff354fd4a1e9171cf132ca85c0 (maruel@google.com)
    [swarming] Roll executable, make invocation failure an infra failure
  https://crrev.com/0da3025f2afe23f98970f64f56c1869f137d4b4e (maruel@chromium.org)
    Revert "[swarming] Roll executable, make invocation failure an infra failure"

More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.

TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I766b211921aab190675016b35b8e81f588b200f3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270002
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>
2020-02-11 02:54:34 +00:00
Chris Dalton
f83d0346c0 Use mixed samples in GrDynamicAtlas
Change-Id: I0871f2e87be857ebf8577b212b318054a2ad84dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269908
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-02-10 22:46:45 +00:00
Mike Klein
cb1ba160da add -O1 to debug docker builds
I've been failing to repro the attached bug locally,
but I did notice that we're missing an -O1 like we
usually add to Debug bot builds.

Bug: skia:9793, skia:9664
Change-Id: If30ccfd55bad3e49862d453a754ed9fcbed9bbde
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269938
Auto-Submit: Mike Klein <mtklein@google.com>
Commit-Queue: Weston Tracey <westont@google.com>
Reviewed-by: Weston Tracey <westont@google.com>
2020-02-10 22:23:44 +00:00
Joe Gregorio
21f382c19d docs - Update links to go directly to doxygen content.
Bug: skia:9787
Change-Id: I98e97f4d36a3eaaba5dc660f10268901a8cfd508
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269904
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Heather Miller <hcm@google.com>
2020-02-10 21:40:24 +00:00
Herb Derby
daa19f35f8 Remove unused fields from SkScalerContextProxy
Change-Id: Ie6740ccb3302895dc9560e9a9278ab68dd64012b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269903
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-02-10 21:05:05 +00:00
Mike Klein
c2a0d0e9dc sub_f32 -> sub_f32_imm more sanely
Change-Id: Ic89359cd08298e73011952452ce909291d6f3fe9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269947
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-10 21:04:05 +00:00
Brian Salomon
5dd64f37d1 Fix fiddle after change to remove GrSurfaceDesc.
Broken by:
https://skia-review.googlesource.com/c/skia/+/269374

Bug: skia:9891
Change-Id: I9ebe6d0303fc1f868c0c0498c3492047bbd63c7d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269901
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2020-02-10 19:48:24 +00:00
Chris Dalton
4e9985327b Add a simple atlas to the GPU tessellation path renderer
If a path is small and simple enough, we now try to atlas it. There
is only one atlas and it caps at 2048x2048. Once it runs out of room,
everything just draws direct. The atlas is rendered using the existing
GrTessellatePathOp. It provides alpha8 coverage even for msaa render
targets.

Change-Id: I715da9ce7347b6f1ef8e28b3e13ab47f6eade1c7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268724
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-02-10 19:38:54 +00:00
Mike Klein
5cdeb390d0 only emit _imm ops when JITing for x86
There are probably ways to make this more efficient by only optimizing
what's necessary (e.g. try JIT first, then interpreter only if it fails)
and some other performance improvements to make, but for now I want to
focus mostly on keeping things simple and correct.

The line between Builder::done() and Program::Program() is particularly
fuzzy and becoming fuzzier here, and I think that'll be something
that'll change eventually.

This makes SkVMTest debug dumps more portable, though perhaps less
useful.  Might kill that feature soon now that SkVM is tested more
thoroughly in unit tests and GMs and bots and such.

Change-Id: Id9ce8daaf8570e5bea8b10f1a80b97f5b33d45dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269941
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-02-10 19:26:05 +00:00
Michael Ludwig
465864cad5 Don't clip non-AA quads
Minor optimization. When non-AA, the quad corners are never moved so it
won't go through the math that requires w > 0. The GPU is perfectly
capable of clipping to w > 0, except that it produces a non-AA edge;
for AA quads this is a problem, but not so when the draw was non-AA.

Change-Id: Ibf77b678f5b3b90a5a88fb3670a31cd12ff3775f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269762
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-02-10 18:34:19 +00:00
Michael Ludwig
a49de4de63 Keep UVs consistent in degenerate quads
An earlier CL noted that the edge correction sometimes caused popping
when undering extreme perspective, so I removed the edge correction
thinking that it was unnecessary. Turns out that for actual degenerate
quads, it is necessary. However, instead of re-determining the degenerate
edge based on the local edge length, this corrects the exact same edges
that had been corrected in device space. I confirmed that this seems to
prevent the popping under extreme perspective and draws triangles correctly.
It also avoids the coordinate scale issue that comes about when the edge
tolerances had been chosen for pixel space, but many of the local coordinates
being processed had already been normalized so differed by a factor of 3ish.

Bug: skia:9889
Change-Id: Ida4c626aa982fe4fdac6695e2ad95e162e42fca2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269758
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-02-10 18:34:02 +00:00
Greg Daniel
9f0dfbd1f4 Have various software uploaders in gpu backend use views.
Bug: skia:9556
Change-Id: I1ac3744632b6e926f79e182d4cd9d59498699aee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/269896
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2020-02-10 18:00:09 +00:00