Commit Graph

53379 Commits

Author SHA1 Message Date
Mike Reed
2847d078c5 Undo legacy high-quality hack
Change-Id: I102551cd9cb0854d111d14fd623b39df12c9acf3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366537
Reviewed-by: Mike Reed <reed@google.com>
2021-02-05 13:54:45 +00:00
Robert Phillips
03555e92a1 Revert "Don't simplify strokes that could have been tessellated"
This reverts commit 3f95357c4c.

Reason for revert: I believe this is blocking the Chrome roll

Original change's description:
> Don't simplify strokes that could have been tessellated
>
> Bug: chromium:1172543
> Change-Id: I3be0d822ca0a338118059c7aa37b2fd7822869b8
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/362936
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

TBR=robertphillips@google.com,csmartdalton@google.com,michaelludwig@google.com

Change-Id: Id574d974617423b44d1767d7a478ce39bea810fa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1172543
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366717
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-02-05 13:22:12 +00:00
skia-autoroll
2c6d8d970a Roll SwiftShader from 14dcbed947ce to ff010f9f0131 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/14dcbed947ce..ff010f9f0131

2021-02-05 capn@google.com Limit Subzero routine stack size to 512 KiB
2021-02-05 capn@google.com Limit LLVM routine stack size to 512 KiB

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 robertphillips@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: robertphillips@google.com
Change-Id: Id4fe3a72e285f4914570fb0a5d6347de080afe6b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366562
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-02-05 06:04:20 +00:00
skia-autoroll
09839148f3 Roll Dawn from d5a0728b67c8 to 2b9707d3369a (7 revisions)
https://dawn.googlesource.com/dawn.git/+log/d5a0728b67c8..2b9707d3369a

2021-02-05 brandon1.jones@intel.com Re-enable Intel D3D12 Validation Tests
2021-02-04 senorblanco@chromium.org Don't call glUniform for Storage Texture on OpenGL ES.
2021-02-04 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from b17aea159c32 to 1f2d38c826ce (13 revisions)
2021-02-04 enga@chromium.org Reject callbacks if the device is destroyed before completion
2021-02-04 brandon1.jones@intel.com Add Backend Validation Levels Option to Dawn Tests
2021-02-04 enga@chromium.org Fix GetMappedRange unittests on the wire
2021-02-04 cwallez@chromium.org Device: Deprecated GetDefaultQueue in favor of ::GetQueue()

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from b17aea159c32 to 1f2d38c826ce

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: cwallez@google.com
Change-Id: I78c761109539bc388a6fdf2f667859f31e8d41c1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366561
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-02-05 05:46:30 +00:00
skia-autoroll
2a21a21223 Roll Chromium from 782ff20a9dc1 to e94d2f0da382 (512 revisions)
782ff20a9d..e94d2f0da3

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 robertphillips@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/+doc/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
Tbr: robertphillips@google.com
Change-Id: Idb6604e8879842db31c40664c99f32b7ff87a7b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366560
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-02-05 05:29:30 +00:00
Chris Dalton
3f95357c4c Don't simplify strokes that could have been tessellated
Bug: chromium:1172543
Change-Id: I3be0d822ca0a338118059c7aa37b2fd7822869b8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/362936
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-02-05 03:23:49 +00:00
Brian Salomon
91a88f0715 Keep mapped buffer manager alive until after buffers are disposed of.
There is currently window of time where we have removed the Inbox
that receives messages about buffers that need to be unmapped and
the disposal (abandonment/releasing) by GrDirectContext.

If on another thread an async read result is released it will attempt
to post to the inbox and transfer its buffer ref along with the
posted message. However, the inbox is gone so it unrefs the
buffer and we delete the buffer on that thread instead of in
~GrDirectContext.


Speculative fix for:

Bug: chromium:1153592
Change-Id: I223bcedca624faa159b0f4c6fcb9e45aded64dff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366403
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-02-05 02:13:39 +00:00
Chris Dalton
9f704a8640 Don't call drawSimpleShape from drawShape
This can wait until drawShapeUsingPathRenderer.

Bug: chromium:1172543
Change-Id: I3217084f89125ee90f67907a2e045394cf8ae839
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366147
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-02-05 00:55:49 +00:00
Ravi Mistry
52bf4853c1 Add new MotionMark SVG
Bug: skia:11244
Change-Id: Ia8916210bfc85c4818cc96584e603150caaf02d8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366404
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2021-02-05 00:14:19 +00:00
Greg Daniel
f76259e9cb Make sure to unbind xfer buffer before glReadPixels to cpu call.
If follow on change when I try to use cached buffers for read backs we
get into a state where we're doing normal readPixels but we still have
the buffer alive and it is still bound to PIXEL_PACK_BUFFER which causes
INVALID_OPERATION errors.

Bug: skia:11226
Change-Id: If5486cc2743908ee7222925afb372c1cfafef429
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366319
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-02-04 23:36:19 +00:00
John Stiles
b88b4e1a12 Migrate additional SkSL tests to run in dm.
- MultipleAssignments
- NegatedVectorLiteral
- NumberCasts
- OutParams
- OutParamsTricky (disabled on GPU due to skia:11269)

Change-Id: I87dc9c5019931f3d2dc3aafbe1e02d0eee2e1a05
Bug: skia:11009, skia:11269
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366400
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-02-04 22:12:27 +00:00
Chris Dalton
bfe0d37c69 Add a drawSimpleShape method to GrSurfaceDrawContext
Bug: chromium:1172543
Change-Id: I8c5f48cd7744755d5c207c53088912f0aa893369
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366146
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-02-04 22:06:18 +00:00
Robert Phillips
2c2303ebab Handle possible degenerate case in the hairline path renderer
Bug:1172796
Change-Id: Ifc03709a0f978b4dec6c8f7ea2c721c860167abb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366337
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-02-04 21:41:28 +00:00
Michael Ludwig
7c6abf86f5 Reland "Remove deprecated SkImageFilter::MakeMatrixFilter"
This reverts commit fde740c7f2.

Reason for revert: g3 updated so roll won't be stopped

Original change's description:
> Revert "Remove deprecated SkImageFilter::MakeMatrixFilter"
>
> This reverts commit ed63d4f177.
>
> Reason for revert: Breaking G3 roll?
>
> Original change's description:
> > Remove deprecated SkImageFilter::MakeMatrixFilter
> >
> > The equivalent functionality is available in
> > include/effects/SkImageFilters.h via SkImageFilters::MatrixTransform.
> >
> > Bug: skia:11230
> > Change-Id: I77b78d508d653a32c913a7599f1004ab634e3e6d
> > Docs-Preview: https://skia.org/?cl=361497
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/361497
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> > Auto-Submit: Michael Ludwig <michaelludwig@google.com>
> > Reviewed-by: Mike Reed <reed@google.com>
>
> TBR=reed@google.com,michaelludwig@google.com
>
> Change-Id: I60a98a1ca9a42db6bfc5796cf4df69042571161e
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:11230
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364097
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=robertphillips@google.com,reed@google.com,michaelludwig@google.com

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

Bug: skia:11230
Change-Id: I76ef4d762151475c498e8cf9392bc2191d84fe1a
Docs-Preview: https://skia.org/?cl=366318
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366318
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2021-02-04 21:17:58 +00:00
Brian Osman
4fca9956db Simplify function declaration handling in GrSkSLFP
This adds a new version of emitFunction that operates directly on an
SkSL::FunctionDeclaration, which saves us the trouble of mapping the
return and parameter types back to the corresponding GrSLType.

It's also a pre-requisite for supporting functions that return or accept
types that can't be mapped like this (eg, structs or enums).

Bug: skia:10939, skia:11246
Change-Id: Ib5d2fb80a983efbf70fe8ce5ac3ba1d769e44d07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/361562
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-02-04 20:30:23 +00:00
Chris Dalton
2a1b594716 Get tessellation shaders compiling again on GLSL
Bug: skia:10419
Change-Id: I187144439232c3bb99bfaaaa729067c38696abfe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366145
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-02-04 20:25:38 +00:00
Chris Dalton
05007dfd58 Rename GrStrokeOp -> GrStrokeTessellateOp
Bug: skia:10419
Change-Id: I04fecec39610d7519edef8a97f367b329b6eea4c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366116
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-02-04 20:25:18 +00:00
Tyler Denniston
04f471aa49 Add GrWangsFormula implementation for conics
Also add a unit test that the vectorized version equals the reference
implementation.

Bug: skia:10419
Change-Id: I4d165fd45532e9ec468565d0637fb769b51f5fcd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/345122
Commit-Queue: Tyler Denniston <tdenniston@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2021-02-04 20:07:28 +00:00
Chris Dalton
2224100b25 Create an abstract GrStrokeTessellator class
Now there is only one op to tessellate a stroke, and it creates its
own GrStrokeIndirectTessellator or GrStrokeHardwareTessellator
internally. This will allow us to dynamically switch into hardware
tessellation when we need to batch strokes that have different
parameters or colors.

Bug: chromium:1172543
Bug: skia:10419
Change-Id: I3cddb855fdbb9ab018785584497c843e3e31b75e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366056
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-02-04 19:57:28 +00:00
John Stiles
e609598fe6 Reject array-typed vardecls and array ctors in strict ES2 mode.
This is enforced by ANGLE in Strict ES2 mode; we need to enforce it as
well.

Change-Id: I6e2f547ad8e0ce817742cf84659764cf6bce38b9
Bug: skia:11270
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366339
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-02-04 19:36:50 +00:00
Weston Tracey
1a771fe976 [fuzzing] Add SkParagraph to oss-fuzz.
Modeled after FuzzPathOp.

Bug: skia:10894
Change-Id: Iaa1b0f3a80044daa04fc11d1a7338d79685d504c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366281
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Weston Tracey <westont@google.com>
2021-02-04 19:34:48 +00:00
Kevin Lubick
a0fea40486 [canvaskit] Deploy 0.23.0
Change-Id: I436340f365f144c0cffc9cfb55af4199f5a4cf12
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366397
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2021-02-04 19:09:15 +00:00
Mike Klein
71d420ddbd only tweak sampling when hitting pixel centers
I think this was the rough idea?  I'm a little fuzzy
on the SkMatrixProvider overloads that concat... I
really don't have a head for matrix transforms.

Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Bug: skia:11260
Change-Id: I6eb8e4397da035d17fe6b96e5c5494dce0483e26
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365520
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2021-02-04 17:57:48 +00:00
Brian Osman
f2f3d52ad5 Add CanvasKit bindings for SkRuntimeEffect's uniform data
Written to use the exact same names and semantics as particles.

Cq-Include-Trybots: luci.skia.skia.primary:Test-Debian10-EMCC-GCE-CPU-AVX2-wasm-Release-All-CanvasKit,Test-Debian10-EMCC-GCE-GPU-AVX2-wasm-Release-All-CanvasKit
Change-Id: I4031efbce06527a519f1ce8c261f79231554e1ef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365701
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-02-04 17:43:28 +00:00
John Stiles
b44185086e Reland "Improve support for arrays in Metal."
This reverts commit 38df4c8470.

Reason for revert: updated ArrayTypes test for ES2 compatibility

Original change's description:
> Revert "Improve support for arrays in Metal."
>
> This reverts commit dd904af566.
>
> Reason for revert: breaks ANGLE
>
> Original change's description:
> > Improve support for arrays in Metal.
> >
> > Arrays in Metal now use the `array<T, N>` type instead of the C-style
> > `T[N]` type. This gives them semantics much more in line with GLSL,
> > so they can be initialized and assigned like GLSL arrays.
> >
> > This allows the ArrayTypes and Assignment tests to pass, so they have
> > been added to our dm SkSL tests. (ArrayConstructors also passes, but
> > is not ES2-compliant so it is not enabled.)
> >
> > Change-Id: Id1028311963084befd0e044e11e223af6a064dda
> > Bug: skia:10761, skia:10760, skia:11022, skia:10939
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365699
> > Commit-Queue: John Stiles <johnstiles@google.com>
> > Auto-Submit: John Stiles <johnstiles@google.com>
> > Reviewed-by: Brian Osman <brianosman@google.com>
>
> TBR=brianosman@google.com,ethannicholas@google.com,johnstiles@google.com
>
> Change-Id: If6a18dea7d6a45fa7836e9129bf81c2e536f07e3
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:10761
> Bug: skia:10760
> Bug: skia:11022
> Bug: skia:10939
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365976
> Reviewed-by: John Stiles <johnstiles@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>

TBR=brianosman@google.com,ethannicholas@google.com,johnstiles@google.com

Bug: skia:10761
Bug: skia:10760
Bug: skia:11022
Bug: skia:10939
Change-Id: Ia1c4917f5d3c41162d282b3093814d861707ad30
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366144
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-02-04 17:33:28 +00:00
Mike Klein
420c8a505e end kickoff() step at the right time
If we track how many pending batches a kickoff()
has in flight, we can endStep() it properly when
that number hits zero.

This double sync.WaitGroup trick is pretty neat.
Now we're thinking with portals...

Added some comments to prevent myself falling in
the trap of assuming we'll have runtime.NumCPU()
batches... rounding the batch size up means we'll
sometimes have fewer.

Change-Id: If50615c204485862462c240b9bbdfd4ddbad43b2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366142
Reviewed-by: Eric Boren <borenet@google.com>
2021-02-04 17:19:43 +00:00
Chris Dalton
a6bf48c100 Improve handling of cusps in GrStrokeTessellateOp
Takes more care when chopping to make sure cusps are detected and
handled correctly.

Bug: skia:10419
Change-Id: I11f1c31534b3266155e9b47eb0daa5bd676fe2a6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365817
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-02-04 17:19:07 +00:00
John Stiles
16a97bb2cb Re-enable SkSL Hex test with constants that fit in 16 bits.
Larger constants caused failures on Adreno 330 (Nexus 5).

Change-Id: I1af1df786f8e4d34f8ec47152875927bfe948190
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366336
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-02-04 17:15:08 +00:00
Greg Daniel
d49b1282fe Update GrLatticeOp to not read from the gpu vertex buffer.
Change-Id: I93e90da7762c379486fd1a329ebf984e93578c69
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364917
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-02-04 16:30:48 +00:00
Mike Klein
1dea436a38 make fetching Gold hashes a step
It's nice to see it in the task log, and to be able to see
it's not there when we're not working with Gold (*SAN) bots.
(One trybot of each kind here.)

Change-Id: Ibb4aa20badf95ef603f3890e1c8248cad675507f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366143
Reviewed-by: Eric Boren <borenet@google.com>
2021-02-04 16:19:17 +00:00
Greg Daniel
8eb119af46 Move uniform buffers over to new vulkan buffer class.
Bug: skia:11226
Change-Id: Ia6a0e86722bc718e6827c0da8ee5035d90a2deb9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365536
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2021-02-04 15:42:27 +00:00
Herb Derby
1cdb5a6e88 guard against masks that are too big to blur
Check that the calculation of the tmp buffer size will not
overflow an int.

Bug=skia:27758

Change-Id: Ie1def7a4bf81f04e3231bfc1bd590f24ba3f5f7f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365487
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2021-02-04 15:06:27 +00:00
Mike Klein
f38f20ecf7 another layer of step nesting
Group batches from a single kickoff() into another mid-level step:

Top-Level
    kickoff --some flags
        batch sources...
            batch (exec)
        batch other sources ...
            batch (exec)
            rerun (exec)
            rerun (exec)
        batch yet other sources ...
            batch (exec)
            rerun (exec)
    kickoff --some other flags
        ...

Big question: is it okay for the kickoff steps to td.EndStep() while its
kids are still running (or haven't even started) on other goroutines?

Change-Id: I77ad2274e35cea0151be0cca6c690eafc4f8983e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366140
Reviewed-by: Eric Boren <borenet@google.com>
2021-02-04 14:47:56 +00:00
Brian Salomon
56c78f4d9e Reland "Add backend texture and backend render target versions snapshot GMs"
This is a reland of fa87f9c7b9

Went back to original approach of checking isFramebufferOnly outside
GrCopyRenderTask::Make().

Original change's description:
> Add backend texture and backend render target versions snapshot GMs
>
> GPU may behave differently depending on whether the SkSurface backing
> store is wrapped and whether it is a texture or not.
>
> Bug: skia:11208
> Change-Id: I5e9921d56c0840cfe34ed2926a55be7460409b23
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/364639
> Reviewed-by: Adlai Holler <adlai@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Bug: skia:11208
Change-Id: I7af6078e904fdd772b97ad3a27e26cab577fc6a3
Cq-Include-Trybots: luci.skia.skia.primary:Test-Ubuntu18-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-PreAbandonGpuContext
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365702
Reviewed-by: Adlai Holler <adlai@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-02-04 14:30:57 +00:00
John Stiles
1aa55de9a2 Disable SkSLHex test.
Fixes breakage on tree.

Change-Id: Ifc951535e482227bb415c85a3ee4d7523d17c43b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366278
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2021-02-04 14:24:40 +00:00
Mike Klein
cb6ea84c4e remove more bots now covered by FM
Change-Id: I19559e78e0727bb5d3b868993bf7610636818de8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365816
Reviewed-by: Eric Boren <borenet@google.com>
2021-02-04 14:11:50 +00:00
Mike Klein
c481dd69bb split --gold off from --bot
There are bots (*SAN) that won't ever be uploading to Gold,
so *bot != "" doesn't really describe the right condition.

We could do this logic inside fm_driver.go based on *bot,
but I kind of want the flexibility to do things like upload
local ad-hoc runs or sanitizer runs if we want using --gold.

Change-Id: Id972d8b0097616c5b2802bc99c2718fdd1568fe3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366139
Reviewed-by: Mike Klein <mtklein@google.com>
2021-02-04 12:31:45 +00:00
Mike Klein
3c8444e18e NativeFonts, the fm_driver way
Why have other bots when we can do it all here?

Change-Id: I6a3f3c2ed5d19a3b8ecf59f44cc0d2f6076bba7f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366138
Reviewed-by: Mike Klein <mtklein@google.com>
2021-02-04 11:02:26 +00:00
Mike Klein
6738e2b9c7 rearrange wg use
There's no need to tick wg up and down when running reruns, and as
written it's possible for the overall fm_driver program to exit before
one last call to endStep() has happened.  Simply calling wg.Done() once
per item dequeued outside worker() fixes both.

Change-Id: I0fb0acc5a3f2c624dfc14f875fa094db6dd40838
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366137
Reviewed-by: Mike Klein <mtklein@google.com>
2021-02-04 10:45:52 +00:00
Mike Klein
fa962f583a rerun only what makes unknown hashes
If a batch fails, we've got to rerun everything (or at least from the
failure on), but when it's merely unknown hashes, no need to rerun
what's produced hashes we know already.

Small tweak to FM to keep all the printed source names exactly what's
passed in, keeping the whole path for skp/svg/image files.  This means
zero bookkeeping needed to know what to rerun when parsing that output.

Change-Id: I1e7ed3ee51158b68a6bdd3152560f3a282109576
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365818
Reviewed-by: Mike Klein <mtklein@google.com>
2021-02-04 10:22:52 +00:00
Mike Klein
574a453b15 introduce steps
Now with ctx scoping fixed,
and steps nested just how I like them.

Change-Id: Ifa43a432faddbafaae118ab0b16f710b695b5377
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365504
Reviewed-by: Eric Boren <borenet@google.com>
2021-02-04 10:22:10 +00:00
Mike Klein
9e189aab1e don't shuffle sources destructively
Change-Id: Ib9bcb811068bfaff518c97db59cfd13e237d7f74
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366136
Reviewed-by: Mike Klein <mtklein@google.com>
2021-02-04 10:16:57 +00:00
skia-autoroll
8043b78755 Roll SwiftShader from 51045556acd0 to 14dcbed947ce (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/51045556acd0..14dcbed947ce

2021-02-03 liyl@google.com Fix macOS arm64 cross compiling.

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 robertphillips@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: robertphillips@google.com
Change-Id: Ic0e24f9a8c0213a9ed1f68c31b49ce50e8201250
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366018
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-02-04 06:13:57 +00:00
skia-autoroll
c66754bd4d Roll Dawn from fd5fd05db039 to d5a0728b67c8 (14 revisions)
https://dawn.googlesource.com/dawn.git/+log/fd5fd05db039..d5a0728b67c8

2021-02-04 hao.x.li@intel.com Add end2end tests for noop direct and indirect dispatches
2021-02-04 hao.x.li@intel.com Skip noop dispatch in front-end
2021-02-04 ehmaldonado@google.com Move metadata in OWNERS files to DIR_METADATA files
2021-02-03 enga@chromium.org Add a Reserved state for dawn_wire ObjectId allocations
2021-02-03 rharrison@chromium.org Re-enable Mac ShaderTests
2021-02-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from c694d43c75f4 to b17aea159c32 (3 revisions)
2021-02-03 rharrison@chromium.org Update ComputeLog2 to be more valid
2021-02-03 enga@chromium.org Always output the wire trace with the injected error format
2021-02-03 senorblanco@chromium.org Roll third_party/glfw/ d973acc12..947731113 (157 commits)
2021-02-03 senorblanco@chromium.org Fix SwANGLE DeviceType and OpenGL ES DeviceType checking.
2021-02-03 rharrison@chromium.org Add ComputeLog2 test
2021-02-03 yunchao.he@intel.com Implement 3D textures and views creation on Vulkan/Metal/GL
2021-02-03 senorblanco@chromium.org Revert "Fix SwANGLE DeviceType and OpenGL ES DeviceType checking."
2021-02-03 senorblanco@chromium.org Fix SwANGLE DeviceType and OpenGL ES DeviceType checking.

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from c694d43c75f4 to b17aea159c32

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC cwallez@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: cwallez@google.com
Change-Id: I865233882ad7b9e5691e1a3cceb2eda34f1d8095
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366017
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-02-04 05:57:47 +00:00
skia-autoroll
b7f6b7493f Roll ANGLE from 6cc845bb0a60 to 63e7ab8d636d (11 revisions)
6cc845bb0a..63e7ab8d63

2021-02-04 cnorthrop@google.com Tests: Add One Punch Man trace
2021-02-04 timvp@google.com Capture/Replay: Support glCopyImageSubData with compressed formats
2021-02-04 cnorthrop@google.com Tests: Add 8 Ball Pool trace
2021-02-03 jmadill@chromium.org Fix the perf test runner calibration.
2021-02-03 m.maiya@samsung.com Vulkan: Add ExtendedDirtyBitType bitset
2021-02-03 jmadill@chromium.org Test Runner: Pick single/multi-process mode automatically.
2021-02-03 cnorthrop@google.com Tests: Add Temple Run 2 trace
2021-02-03 cnorthrop@google.com Tests: Add Minecraft trace
2021-02-03 cnorthrop@google.com Tests: Add RAID: Shadow Legends trace
2021-02-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 51045556acd0 to 14dcbed947ce (1 revision)
2021-02-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 3535b64d3f52 to 6b006f95bb79 (528 revisions)

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 robertphillips@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-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
Tbr: robertphillips@google.com
Test: Test: angle_perftests --gtest_filter="*eight_ball_pool*"Test: Test: angle_perftests --gtest_filter="*minecraft*"Test: Test: angle_perftests --gtest_filter="*one_punch_man*"Test: Test: angle_perftests --gtest_filter="*raid_shadow_legends*"Test: Test: angle_perftests --gtest_filter="*temple_run_2*"
Change-Id: I53f8956b30ecdf3e415ec5fcd45ca3460f71b610
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366036
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-02-04 05:54:47 +00:00
skia-autoroll
2d8a595433 Roll Chromium from 4e5b4f3a094d to 782ff20a9dc1 (498 revisions)
4e5b4f3a09..782ff20a9d

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 robertphillips@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/+doc/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
Tbr: robertphillips@google.com
Change-Id: I893c8c7300035d69612f2d380bd8ca4df5223927
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366016
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-02-04 05:49:29 +00:00
Nathaniel Nifong
1d35777a4f Run mskp skpbench on galaxy s20s
Change-Id: Ic56030abf1296d2a6c5763478ec0f85b1a772f99
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365517
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2021-02-04 04:44:07 +00:00
Brian Osman
d76d1863f9 Remove 'f' prefix on SkRuntimeEffect::Uniform struct
Change-Id: Ibb48d30b9c0d80db3bf7b92d8c4a60bd9ce6839d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365696
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2021-02-04 01:57:53 +00:00
John Stiles
38df4c8470 Revert "Improve support for arrays in Metal."
This reverts commit dd904af566.

Reason for revert: breaks ANGLE

Original change's description:
> Improve support for arrays in Metal.
>
> Arrays in Metal now use the `array<T, N>` type instead of the C-style
> `T[N]` type. This gives them semantics much more in line with GLSL,
> so they can be initialized and assigned like GLSL arrays.
>
> This allows the ArrayTypes and Assignment tests to pass, so they have
> been added to our dm SkSL tests. (ArrayConstructors also passes, but
> is not ES2-compliant so it is not enabled.)
>
> Change-Id: Id1028311963084befd0e044e11e223af6a064dda
> Bug: skia:10761, skia:10760, skia:11022, skia:10939
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365699
> Commit-Queue: John Stiles <johnstiles@google.com>
> Auto-Submit: John Stiles <johnstiles@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=brianosman@google.com,ethannicholas@google.com,johnstiles@google.com

Change-Id: If6a18dea7d6a45fa7836e9129bf81c2e536f07e3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10761
Bug: skia:10760
Bug: skia:11022
Bug: skia:10939
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365976
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-02-04 00:50:34 +00:00
Brian Salomon
d48f9daeb5 fix for preabadoncontext after SkImage_Base::asView
asView may fail in makeTextureImage.

Bug: skia:11208
Change-Id: I31090f8e05aad5cf0d530b31cfac328d3b9ed292
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/365700
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-02-04 00:13:22 +00:00