Commit Graph

42417 Commits

Author SHA1 Message Date
Robert Phillips
37a59ef1af Revert "Shuffle SkSL sources around so compiler and bytecode can be used w/o GPU"
This reverts commit 90507286cc.

Reason for revert: Seems to be breaking some builds

Original change's description:
> Shuffle SkSL sources around so compiler and bytecode can be used w/o GPU
> 
> Change-Id: I7236a30040ab532086e68d6e9de2898dd7acaa32
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221098
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>

TBR=mtklein@google.com,kjlubick@google.com,brianosman@google.com,ethannicholas@google.com,reed@google.com

Change-Id: Ie230315a72ebcfae32bc9ce7bafec1f87106cff2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221536
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-06-18 11:35:18 +00:00
Robert Phillips
578c8ee076 Suppress Valgrind test
AFAICT valgrind is breaking this test

BUG: skia:9171 skia:8847
Change-Id: I6f86cbeec57849f195562408d94d66c1f727ca19
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221418
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-06-18 11:34:26 +00:00
Ben Wagner
c6628127dc Correctly call SkFontMgr_DirectWrite constructor.
The passed localeName and defaultFamilyName and associated lengths are
expected to include the terminating NULL (mostly due to the way LOGFONT
and GetUserDefaultLocaleName are defined). This implies that in the case
where these values cannot be retrieved the empty string should be
passed.

Bug: chromium:973361
Change-Id: I0ac98f5250e1cb2d7fa426b255c5e2c2619dc51c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221417
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2019-06-18 07:23:56 +00:00
skia-autoroll
e7f8c34384 Roll third_party/externals/angle2 853ebacf99a4..c211c2f5b59d (17 commits)
853ebacf99..c211c2f5b5


git log 853ebacf99a4..c211c2f5b59d --date=short --no-merges --format='%ad %ae %s'
2019-06-17 clemendeng@google.com Make proc table autogen use gl.xml data
2019-06-17 dongja@google.com Debug: suppress INFO log level in tests
2019-06-17 jmadill@chromium.org Vulkan: Minor cleanup to ContextVk::setupIndexedDraw.
2019-06-17 jonahr@google.com Clean up workarounds/features to single location.
2019-06-17 tobine@google.com Merge ESSL pre-processsor token errors
2019-06-17 syoussefi@chromium.org Vulkan: Enable previously failing clear tests
2019-06-17 dongja@google.com Vulkan: add LINE_LOOP with primitive restart
2019-06-17 jmadill@chromium.org Suppress Bindings perf test on Win/Intel/GL.
2019-06-17 jmadill@chromium.org Remove obsolete WinRT files.
2019-06-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 42830e5a68c3..59983a601091 (2 commits)
2019-06-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 96ee92f09b7c..def9662348b0 (2 commits)
2019-06-14 clemendeng@google.com Autogen gles2+ declarations
2019-06-14 syoussefi@chromium.com Update glslang_validator binary for Windows.
2019-06-14 syoussefi@chromium.org Update glslang_validator binary for Linux.
2019-06-14 jmadill@chromium.org Add more DrawCallPerf offscreen configs.
2019-06-14 jmadill@chromium.org Vulkan: Use dynamic buffer for driver uniform updates.
2019-06-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src 9866ad9195ce..96ee92f09b7c (1 commits)


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

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

Change-Id: Ia8f1abfd7dddd38384eb5ffd3a25995737177a2a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221496
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-06-18 06:06:26 +00:00
skia-autoroll
5805302c81 Roll ../src a2197be674d6..aad06d1d3342 (843 commits)
a2197be674..aad06d1d33


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

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

Change-Id: I8dc43a575bb3a42b538213b5b2a1354fef0f5098
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221516
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-06-18 05:24:16 +00:00
skia-autoroll
f1dd7a174a Roll third_party/externals/swiftshader 8c12f564113c..9283b2559c05 (14 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/8c12f564113c..9283b2559c05


git log 8c12f564113c..9283b2559c05 --date=short --no-merges --format='%ad %ae %s'
2019-06-17 chrisforbes@google.com Wire up some required external functions for arm32
2019-06-17 bclayton@google.com LLVMReactor: Mark all functions as 'DoesNotThrow'
2019-06-17 swiftshader.regress@gmail.com Regres: Update test lists @ bd4cf81f
2019-06-17 sugoi@google.com Reduce the complexity of VkNonDispatchableHandle
2019-06-17 swiftshader.regress@gmail.com Regres: Update test lists @ 126bd7ab
2019-06-14 sugoi@google.com Warnings fix
2019-06-14 capn@google.com Remove unused user clip planes
2019-06-14 capn@google.com Parse 'Sample' image instruction operand
2019-06-14 colin.samples+git@gmail.com Update Reactor for PPC64 support
2019-06-14 colin.samples+git@gmail.com Update LLVM build for PPC64
2019-06-14 colin.samples+git@gmail.com Regenerate Linux LLVM sources
2019-06-14 colin.samples+git@gmail.com Add support for PPC64 to LLVM update script
2019-06-14 sugoi@google.com Moved many Cast functions to libVulkan.cpp
2019-06-14 swiftshader.regress@gmail.com Regres: Update test lists @ 8c12f564


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

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

Change-Id: I5b78d7571df521cbadafcca0c2dae69aa9e08e0f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221476
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-06-18 04:44:46 +00:00
Herb Derby
9c71e7be10 Remove all global mutexes
Remove the SkBaseMutex (and SkBaseSemaphore). This allows all the thread
annotation machinery to work.

Change-Id: I2da420ec3165ccbcd90c474c0b62bfef42df2a53
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221340
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-06-18 00:39:15 +00:00
Mike Klein
17a9655db2 enable SkVM JIT testing on x86-64 Linux bots
Change-Id: Id87d8e7f4d9ae458f2eb79c82682702f659dec43
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221271
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-06-18 00:29:45 +00:00
Mike Klein
7a177b4d21 centralize and force-inline unaligned_{load,store}
We've got slightly different implementations of unaligned_load(), and
that's causing a x86 Chromium Debug builds to go a bit haywire.  A
single best implementation with an SK_ALWAYS_INLINE and explanation
should help things.

Might as well move its companion unaligned_store() too.

Bug: chromium:974542
Change-Id: If9f3eb4d33bfb8390c661f9e196122da0b9b84ca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221409
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-06-18 00:03:45 +00:00
Chris Dalton
1e6c5b8dee Add a "preferredInternalSampleCount" cap
This new cap tells Ganesh how many samples to use when performing
internal draws with MSAA or mixed samples. The default is always 4x,
but the client can change that with
GrContextOptions::fPreferredInternalMSAASampleCount.

Also adds a command line flag to viewer to control
fPreferredInternalMSAASampleCount.

Bug: skia:
Change-Id: Iba369273e802aa1bee796b576b3c18af347b0494
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221156
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-06-17 23:47:59 +00:00
Mike Reed
4b203ad7ac add motion blur params to skottie2movie
--motion_angle ... [default is 180]
--motion_samples ... [default is 1, for no motion blur]

Change-Id: Iec0f31655b3369f51e0b398efb2d5b156dcbaf2e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221416
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-06-17 23:13:16 +00:00
Brian Osman
b500ef7a76 Add some precision back to timestamps when using --trace
Optimizations to JSON size (%f -> %g) changed the meaning of the digits
argument, causing these timestamps to become severely truncated. Traces
have been fairly useless as a result (too many events starting/stopping
at the same time). This adds enough digits back that things are better.

Change-Id: I3f2d2a3dd064daf8449ac34ab5440f95e339a392
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221346
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-06-17 22:08:06 +00:00
Brian Osman
90507286cc Shuffle SkSL sources around so compiler and bytecode can be used w/o GPU
Change-Id: I7236a30040ab532086e68d6e9de2898dd7acaa32
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221098
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-06-17 21:16:18 +00:00
recipe-roller
6df3bd56aa Roll recipe dependencies (nontrivial).
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).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/bc23ca13f1b3b684d9c2a127f33b618a71644829 [bootstrap/win] Canary Python 2.7.15 (smut@google.com)
recipe_engine:
  https://crrev.com/8b75d5d75414bb2756bcf0b5188918887da8db20 Remove json_result leftovers (martiniss@google.com)


R=rmistry@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia986290330d883f23322559b521067a78e5794b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221347
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2019-06-17 21:11:53 +00:00
Ben Wagner
59230e7923 Omit build number for LenovoYogaC630 os dimension
Change-Id: I2816a6fca59adefd7dbceb42c9be2c6e9df5ea4a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221345
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-06-17 21:11:13 +00:00
Brian Salomon
2935638a1b Make SkASSERT not break build in constexpr GrSwizzle method on GCC
Change-Id: I042b90e7c405505447662e6d187ca1519efd4743
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221342
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-06-17 20:43:13 +00:00
Brian Salomon
5509102043 Add function to GrDataUtils to handle color conversions.
Like SkConvertPixels but knows about all GrColorTypes, origin, and can
apply an arbitrary GrSwizzle.

Use in GrSurfaceContext read/write pixels methods.

Add support for '0' to GrSwizzle.


Change-Id: Ib9dd215fcb0ee8b33c4020893c22b4ab7ce1f40b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220761
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-06-17 19:31:57 +00:00
Florin Malita
b97824d4d1 [skottie] Motion tile effect
Implement support for AE's Motion Tile effect [1].

This is the first effect which needs layer size information, so the CL includes
related plumbing.

Limitations: no phase support at this point.

[1] https://helpx.adobe.com/after-effects/using/stylize-effects.html#motion_tile_effect

Change-Id: I023bf8a9d3e3d2a48458fa94218f143e6aac4c9f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221244
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-06-17 18:20:15 +00:00
Ravi Mistry
e66780dd1c Fix ingested perf data from Skottie tracing bots + add renderer key
Notry: true
Bug: skia:8884
Change-Id: I8222145b843db971269a85ab7bb4a768125ef3fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221356
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2019-06-17 18:15:56 +00:00
Brian Salomon
3ec1f54750 Revert "Store GrSwizzle on proxies for texturing and swizzling."
This reverts commit 23093135d1.

Reason for revert: Breaking Google3 :(

Original change's description:
> Store GrSwizzle on proxies for texturing and swizzling.
> 
> Bug: skia: 6718
> Change-Id: I023d7507da9334e984ac8209a32323d616b3d79d
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214305
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: Ie2303ad090f58de07db7b0ac2d42e06e5e5bbcc1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia: 6718
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221338
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-06-17 17:55:16 +00:00
Greg Daniel
23093135d1 Store GrSwizzle on proxies for texturing and swizzling.
Bug: skia: 6718
Change-Id: I023d7507da9334e984ac8209a32323d616b3d79d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/214305
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-06-17 17:04:48 +00:00
Jim Van Verth
731454a085 Prefer using GrOvalOpFactory over GrFillRRect for circles and
axis-aligned circular roundrects.

Bug: chromium:971936
Change-Id: I4cd0cd9047b9b06d657826820ba5a937547f87c3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221000
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
2019-06-17 16:32:47 +00:00
Ravi Mistry
92b81e14d9 Add CL link in G3 trybot
NoTry: true
Bug: skia:9169
Change-Id: I9fca155d0e8b238e5a38348a40fb3351f0aef2fc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221276
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2019-06-17 16:16:47 +00:00
Ben Wagner
ddc0ccd5e8 Add NativeFonts jobs for Mac10.13 and Mac10.14 VMs
Bug: chromium:93561
Change-Id: I11446cbe787e85d500564d86f8119b8c2fc1bf28
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221116
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-06-17 15:44:47 +00:00
Mike Klein
71c24f31b8 slightly better handrails
Make sure we're using five or fewer arguments.

Today all programs use one or two arguments, so this doesn't
really have any immediate effect, but it should be there.

Change-Id: Ia85e56ef63ceb442702546c402cd11a13daa2c25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221270
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-06-17 15:43:28 +00:00
Mike Klein
342b1b2753 proposed: add bytes() op
I'm staring at this assembly,

	vmovups	(%rsi), %ymm3
	vpsrld	$24, %ymm3, %ymm4
	vpslld	$16, %ymm4, %ymm15
	vorps	%ymm4, %ymm15, %ymm4
	vpsubw	%ymm4, %ymm0, %ymm4

Just knowing that could be

	vmovups	(%rsi), %ymm3
	vpshufb	 0x??(%rip), %ymm3, %ymm4
	vpsubw	%ymm4, %ymm0, %ymm4

That is, instead of shifting, shifting, and bit-oring
to create the 0a0a scale factor from ymm3, we could just
byte shuffle directly using some pre-baked control pattern
(stored at the end of the program like other constants)

pshufb lets you arbitrarily remix bytes from its argument and
zero bytes, and NEON has a similar family of vtbl instructions,
even including that same feature of injecting zeroes.

I think I've got this working, and the speedup is great,
from 0.19 to 0.16 ns/px for I32_SWAR, and
from 0.43 to 0.38 ns/px for I32.

Change-Id: Iab850275e826b4187f0efc9495a4b9eab4402c38
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220871
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2019-06-17 15:29:34 +00:00
Brian Osman
e5c1f97de1 Pre-CL so I can prep Chrome for splitting up SkSL sources
Change-Id: Ie4c8e8c5df8f3d37ea49d0c0f7e432e6999b7f0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221243
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-06-17 14:54:58 +00:00
Mike Reed
51cae01fd7 cache sksl in runtime colorfilter
With the modified gm, the time (on imac pro) goes from 2.4 to 1.6

Change-Id: I9f940220c129f74771f3b17126657bcf3739044f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221176
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2019-06-17 14:41:08 +00:00
Derek Sollenberger
11b34d967b Restrict workaround for Adreno 3xx series to pre-Android O.
This is based on an external upload request on AOSP
https://android-review.googlesource.com/c/platform/external/skia/+/979577

Change-Id: Ib5635da591115d587af9fa2c72c3b4f54e852cfc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221002
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-06-17 13:44:56 +00:00
Eric Boren
ad43f98f94 [infra] Update Skolo Win OS version
Bug: skia:9168
Change-Id: Id931959278a0638a333a5eb6a70117a9d04e25dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221237
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2019-06-17 12:47:56 +00:00
Florin Malita
5fe7429bab [skottie] Fix layer transform vs. effects interactions
Turns out, in addition to solid layers, pre-comp and image layer
effects are also subject to layer transforms.

TBR=
No-Try: true
Change-Id: Ie235ff19374b8e0246eeec8e08079a2340e2a92a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221177
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-06-17 12:26:13 +00:00
skia-recreate-skps
057a32d9a2 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: Idac42082c8a9f52cc39b1657968a4fda294a951a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221196
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-06-16 08:34:54 +00:00
Herb Derby
3721688f64 Make fMaskFormate private
Change-Id: I20e652f2b6f9bf606b03c6dd4e346c3439ea8a0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220876
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-06-15 00:56:48 +00:00
Florin Malita
941b9ff09b [skottie] Effects cleanup pass
Split-off effects into separate CUs.

TBR=
Change-Id: Ic214027d27e1c341085d9a8c74f605caba260630
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221118
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-06-14 20:31:45 +00:00
Brian Osman
d30e039d07 Fix SkSL standalone build
Change-Id: I66713976f08b1dbf0966d9a901f666b9f834b659
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221096
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-06-14 18:33:35 +00:00
Kevin Lubick
5f11dd74ce add html for perfing skottie-wasm
Change-Id: I7ce4d869565d57756b17587fcb612ccbfdbea9e2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220747
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2019-06-14 17:51:25 +00:00
Brian Salomon
6c1205a900 Avoid using GrGpu::readPixels in GrTestingBackendTextureUploadTest.
Change-Id: Ic7ba918177f6f5cc35da713cf063c467bd7a7908
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220999
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-06-14 17:15:11 +00:00
Derek Sollenberger
d7a959726d Update CtsSkQPTestCases to non-shardable in release script
The curent SKQP runner doesn't support sharding.

Bug: b/134522828
Change-Id: Ia4e147fea36551e71737b16218e316570384f507
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220296
Auto-Submit: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2019-06-14 17:05:51 +00:00
Florin Malita
e47d8afabd [skottie] Add support for Transform distort effect
Yet another way to transform a layer, disguised as a distort effect.

TBR=
Change-Id: Ic2d5479fa6ae27b460de60875924f73f77fc7f71
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/221001
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-06-14 16:58:31 +00:00
Brian Osman
08a8496135 Interpreter: Simplify interface quite a bit.
Slightly sharper, but far easier to hold:

- Remove Value union from interface, everything is a 32-bit
  value type, or a collection thereof.
- Collapse to one version of Run (that takes count), and make
  it a member on ByteCode.
- Similarly, move disassemble to ByteCodeFunction.

Change-Id: I07c85e65991178b3f52e20e815c25f36bc9c4257
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220753
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-06-14 16:04:58 +00:00
Greg Daniel
3fc5df443e Correctly set GrBackendFormat when changing colortype of bitmap in GrProxyProvider.
Bug: chromium:974177
Change-Id: I725f1ba63cbd57348419654a45934f09d1bcb6f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220996
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-06-14 15:39:09 +00:00
skia-autoroll
c3252a04b3 Roll third_party/externals/angle2 85fef1bc62f8..853ebacf99a4 (14 commits)
85fef1bc62..853ebacf99


git log 85fef1bc62f8..853ebacf99a4 --date=short --no-merges --format='%ad %ae %s'
2019-06-14 ynovikov@chromium.org Suppress Mac 10.13.6 Intel OpenGL dEQP failures
2019-06-13 dongja@google.com Vulkan: implement primitive restart
2019-06-13 syoussefi@chromium.org Vulkan: Output render pass loadOp in graph dump
2019-06-13 jmadill@chromium.org Vulkan: Implement a texture descriptor cache.
2019-06-13 shrekshao@google.com Enable floatBlend for D3D9
2019-06-13 dongja@google.com Vulkan: fix array size for internal shaders
2019-06-13 jmadill@chromium.org Refactor DrawCallPerfParams.
2019-06-13 spang@chromium.org Reland "Vulkan: Build validation layers with asserts only"
2019-06-13 jonahr@google.com Clean up and expose frontend features to egl.
2019-06-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 9c0830133b07..42830e5a68c3 (2 commits)
2019-06-13 jmadill@chromium.org Vulkan: Prefer immediate present mode for benchmarking.
2019-06-13 jmadill@chromium.org Revert "Vulkan: Build validation layers with asserts only"
2019-06-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-headers/src 9cf7c3a7d2d2..de99d4d834ae (1 commits)
2019-06-13 jiajia.qin@intel.com Fix the crash in angle_deqp_gles31_tests


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

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: I66cf86ba54e2d38f3be65bd353207b787f69c06c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220942
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-06-14 05:30:39 +00:00
skia-autoroll
314a6f827a Roll ../src f6ed31446fb7..a2197be674d6 (428 commits)
f6ed31446f..a2197be674


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

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: I3cd00f5edd315664e413f2cc72b51a305fb526b4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220943
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-06-14 05:14:39 +00:00
skia-autoroll
bc2090a665 Roll third_party/externals/swiftshader df84b9466cfd..8c12f564113c (5 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/df84b9466cfd..8c12f564113c


git log df84b9466cfd..8c12f564113c --date=short --no-merges --format='%ad %ae %s'
2019-06-13 srisser@google.com Fix unsigned "less than zero" comparison
2019-06-13 shrekshao@google.com Expose EXT_float_blend
2019-06-13 capn@google.com Process independent vertex elements
2019-06-13 capn@google.com Fix alignment of projected vertex coordinates
2019-06-13 sugoi@google.com Fixed sRGB multisample tests


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

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: Ifa3b0068fdfdad0fabb22e162e5345affa3d2ffd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220941
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-06-14 05:03:09 +00:00
Florin Malita
87e8850388 Reland "[skottie] Use metrics for Shaper vertical alignment"
This is a reland of 084fa1b52f

Original change's description:
> [skottie] Use metrics for Shaper vertical alignment
>
> Relying on visual bounds yields incorrect results in some cases (e.g.
> leading/trailing empty lines).
>
> Update the vertical alignment logic to use metrics instead:
>
>   - track the first line ascent and last line descent
>   - compute content height as
>
>       first_ascent + last_descent + line_height * (line_count - 1)
>
>   - relocate Result::computeBounds() to the unit test (only user)
>
> Empirically, this causes top-alignment to be less snug (likely due to
> ascent slack in the tested fonts).
>
> Bug: skia:9098
> Change-Id: Ib92bf907af8889d6b0d0fda22ef41a2cc8b50901
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220656
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>

TBR=
No-Try: true
Bug: skia:9098
Change-Id: Iaba53968840749e35b9c3ed04b15d6e2cda55e72
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220916
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-06-14 02:47:04 +00:00
Mike Klein
4c4945a252 trim another instruction of I32_SWAR
Now that we've got shr_16x2, extract(..., 8, splat(0x00ff00ff)) is
better done as shr_16x2(..., 8).  This swaps a 16-bit shift in for
the 32-bit shift, a wash, but lets us drop the bit_and at the end,
saving one whole instruction.

This places I32_SWAR a tiny little bit faster than the code in Opts,
like .19 ns/px vs .20 ns/px for Opts.

Change-Id: I4160dc03ecc8b855c0773a927f1510ad5cbb4b87
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220856
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2019-06-13 21:58:05 +00:00
Mike Klein
7f061fb53b streamline srcover math in I32_SWAR
This is the final bunny I've got in my hat, I think...

Remembering that none of the s += d*invA adds can overflow,
we can use a single 32-bit add to add them all at once.

This means we don't have to unpack the src pixel into rb/ga
halves.  We need only extract the alpha for invA.

This brings I32_SWAR even with the Opts code!

curr/maxrss	loops	min	median	mean	max	stddev	samples   	config	bench
  36/36  MB	133	0.206ns	0.211ns	0.208ns	0.211ns	1%	▁▇▁█▁▇▁▇▁▇	nonrendering	SkVM_4096_I32_SWAR
  37/37  MB	152	0.432ns	0.432ns	0.434ns	0.444ns	1%	▃▁▁▁▁▃▁▁█▁	nonrendering	SkVM_4096_I32
  37/37  MB	50	0.781ns	0.794ns	0.815ns	0.895ns	5%	▆▂█▃▅▂▂▁▂▁	nonrendering	SkVM_4096_F32
  37/37  MB	76	0.773ns	0.78ns	0.804ns	0.907ns	6%	▄█▅▁▁▁▁▂▁▁	nonrendering	SkVM_4096_RP
  37/37  MB	268	0.201ns	0.203ns	0.203ns	0.204ns	0%	█▇▆▆▆▆▁▆▆▆	nonrendering	SkVM_4096_Opts

Change-Id: Ibf0a9c5d90b35f1e9cf7265868bd18b7e0a76c43
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220805
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-06-13 21:32:45 +00:00
Herb Derby
f7a57f986a Add missing header
Change-Id: I0a007595f1c5458417eabba7277ceb1ead9284f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220755
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-06-13 21:30:54 +00:00
Mike Klein
7b50231112 slight bugfix for shr_i16x2 in the interpreter
It's doing an arithmetic shift at head,
but we want a logical shift there...

Change-Id: I82eba87ccc3fba6a9511bf3a4d3ff88d90c29585
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220855
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-06-13 21:27:34 +00:00
Greg Daniel
2b5be0aa34 Fix EGLImageTest for new assert.
Change-Id: I873a17712c77413ceb09ccc9a0813a5838fe62e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220754
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-06-13 21:22:39 +00:00