Commit Graph

54481 Commits

Author SHA1 Message Date
Brian Osman
601abfacc7 Move 'shader' usage tests to an SkSL golden file
Also adds tests of non-uniform shader declarations. These are currently
allowed, but will be detected as an error in the next CL.

Bug: skia:11374
Change-Id: I3fee0a0c97ae590f7bc6952cb367f7e94436b891
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393080
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-04-06 19:20:16 +00:00
John Stiles
7ec097c05f Replace getMatExpression with getConstantSubexpression.
This approach gives us similar flexibility but requires fewer lines of
code to get the same result. In a followup CL we will be able to
eliminate get[BFI]VecExpression as well. This approach will also scale
to arrays and structs if we want to support constant-folding on these.

Change-Id: Ib0034935926c7004f84ba62ddbdb3168df8ce91d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393076
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-04-06 18:36:06 +00:00
John Stiles
5abb9e1426 Represent matrix resizes as a dedicated expression type.
This shook out a long-standing bug; constant folding would treat a
matrix resize as if the cells not covered by the original matrix were
all zero. This is wrong; GLSL populates the unknown cells with an
identity matrix. We actually tested for the wrong behavior, so the tests
were updated to match the correct behavior, and an equivalent test was
added that does not constant-fold (to verify that our constant folder
matches reality).

Change-Id: I03df10ce646fbef0a36e9c1a841a7637182de122
Bug: skia:11032
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392916
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-06 18:35:06 +00:00
Herb Derby
f00d6a8efd remove fAllocators from GrOpsTask
Change-Id: I5901f005c2758a92692e5cd70ba46a2b5ad797fd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393116
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Adlai Holler <adlai@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-04-06 18:22:46 +00:00
Ravi Mistry
3e1dd8df28 Fix crashing skia_wikipedia_mobile.py
Bug: skia:11839
Change-Id: I3aa1c7d36e61a6a6c40ae10e9463f94d83f45790
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393137
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2021-04-06 18:17:39 +00:00
Ravi Mistry
826b653926 Specify wait time for new motionmark SKPs to prevent timeouts
Bug: skia:11817
Change-Id: I395a565b3df2f7745891e182b390f938df8623fb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393136
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2021-04-06 18:15:16 +00:00
Chris Dalton
b21bfc8de5 Rename glrt->textureFBOID() -> singleSampleFBOID()
Bug: skia:11396
Change-Id: I02fdb4acd368a54e585891ef3c38f6b0c79a5d17
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392718
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-04-06 18:14:35 +00:00
John Stiles
47b087eb81 Move slot_count into SkSL::Type.
I am planning to leverage this count for `getConstantSubexpression` in a
followup CL.

Change-Id: I7c2a64a9968af95ba7d5a17a085686788e22b774
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393077
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-06 17:59:06 +00:00
Chris Dalton
c8c573d455 Create two FBOs for multisampled_render_to_texture
Makes textureFBOID be a separate, single-sampled framebuffer.

Bug: skia:11396
Change-Id: Ida9af8bd3bb31bb47edc4ddf4c754b5f6f90c61c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392744
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-04-06 17:49:26 +00:00
Chris Dalton
c6a3d53188 Remove equality checks on glrt::textureFBOID() and glrt::renderFBOID()
We should be using glrt::requiresManualMSAAResolve() instead.

Bug: skia:11396
Change-Id: I6e92dea539f721d9079f2db65cf77112adc84949
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392741
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-04-06 16:01:15 +00:00
Herb Derby
5a2de5e72f put an arena on GrSurfaceDrawContext
This is part one of two CLs. In this CL, I put a
sk_sp<GrArenas> on GrSurfaceFillContext where GrArenas wraps
a SkArenaAlloc to add ref counting. Creating
a GrOpsTask shares the GrArenas with the ops task. New plumbing
was added to GR_DRAW_OP_TEST_DEFINE to allow a proper
GrSurfaceDrawContext to be passed to GrAtlasTextOp's
GR_DRAW_OP_TEST_DEFINE so the arena will have a proper lifetime.

The second CL will work on replacing GrOpsTask's fAllocators
system with the shared arena.

Change-Id: Ife3be0ab265441cbffab360f2808f5eed86db8b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392936
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2021-04-06 15:15:46 +00:00
John Stiles
9267183cf4 Fix matrix resizing in SPIR-V.
When growing a matrix, the new cells should contain the identity matrix.
`writeMatrixCopy` was populating every cell with zeros instead.
Also, `writeMatrixCopy` had some code for handling int matrices, but
we don't support this in SkSL anywhere else; replaced with an assert
that the component type is float.

Change-Id: Icb80ae711d5c4f1417b62168b203a661f52e8d7d
Bug: skia:11835
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393037
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-04-06 14:55:45 +00:00
Brian Salomon
b3479cea80 Limit texture attached to FBO workaround on Adreno 4xxx by driver ver.
Bug: skia:11834
Change-Id: I50e3a0ae87e7039376a6a8a3a6e0be24bf6f40fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/393036
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-06 14:52:45 +00:00
John Stiles
3b6ea141bd Split matrix typecasting and matrix resizing into two distinct ops.
GLSL allows a matrix to be both resized and typecast in one go, but this
isn't true for all of our backends, so internally we will split this
cast into two operations--a typecast, followed by a resize. In the vast
majority of cases, we will not actually be doing both things at the same
time, so it should be a wash for most real code.

This CL also reorders the start of MakeCompoundConstructor to reduce
the number of redundant checks. The work performed should be the same,
but the comparisons are a little more structured.

Change-Id: I443649d87704e03c0c06cc4a14d48ecaac5e596c
Bug: skia:11032
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392876
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-06 13:07:55 +00:00
skia-autoroll
b6689e5680 Roll Chromium from ee8322ecac75 to af77d977c68d (285 revisions)
ee8322ecac..af77d977c6

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 csmartdalton@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: csmartdalton@google.com
Change-Id: I030fa0b14f61992d83696cfbf6534e08751b64dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392956
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-06 05:15:28 +00:00
skia-autoroll
7bf28f5bef Roll ANGLE from 323c5f246480 to 2f22157acd0d (3 revisions)
323c5f2464..2f22157acd

2021-04-06 timvp@google.com Fix Restricted Traces README.md jq command
2021-04-05 jmadill@chromium.org Move restricted traces to CIPD.
2021-04-05 jmadill@chromium.org infra: Add builder group to CI properties.

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 csmartdalton@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: csmartdalton@google.com
Change-Id: I63e738c94768a0070d0804d56d066f96e7ce9911
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392957
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-06 04:51:58 +00:00
skia-autoroll
b4e5a9192d Roll Dawn from f759264387ae to 6f2bbe9896aa (5 revisions)
https://dawn.googlesource.com/dawn.git/+log/f759264387ae..6f2bbe9896aa

2021-04-05 bajones@chromium.org Implement GPUCompilationInfo
2021-04-05 thakis@chromium.org Better fix for DAWN_NO_DISCARD on WireResult
2021-04-05 hob@chromium.org Add depth-clamping support for Metal
2021-04-05 thakis@chromium.org Remove an attribute that has no effect
2021-04-05 shaobo.yan@intel.com CopyTextureForBrowser: Support Subrect Copy

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 jrprice@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: jrprice@google.com
Change-Id: I1e4e91f1bd5f4014aea145f654e7e5e42e1517ae
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392747
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-06 04:46:38 +00:00
Brian Salomon
974c821502 Reland "Make RGB_888x pixel operations work."
This is a reland of 8ce24b1d11

Original change's description:
> Make RGB_888x pixel operations work.
>
> Also remove vulkan-specific conversions in GrVkGpu and rely
> on higher level SurfaceContext to convert correctly.
>
> Bug: skia:8862
> Change-Id: Ib8b0541c8c5831148b7129c4bbed3f925660116e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392378
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Bug: skia:8862
Change-Id: I5d085e47398a4a2947228ee67f867552fa93123a
Cq-Include-Trybots: luci.skia.skia.primary:Test-Debian10-Clang-NUC5PPYH-GPU-IntelHD405-x86_64-Debug-All-Vulkan
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392842
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-05 21:18:46 +00:00
John Stiles
0a12b85f16 Add regression test for oss-fuzz finding.
The actual fix happened at prior CL http://review.skia.org/392197, which
reworked how vector-cast constructors function.

Change-Id: Ifb71ec913b349e65d38458dc615441e7a73efddc
Bug: oss-fuzz:32851
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392841
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-04-05 19:39:16 +00:00
Julia Lavrova
db10b0e802 Float error and positioning
(Hiding the fix from Flutter for now because we need to test it in
Google3 first)

Bug: skia:11100
Change-Id: I51fa37ee16a48de6a636dc857d5ae8650327922f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/391197
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2021-04-05 19:00:46 +00:00
Robert Phillips
8faa34089c Limit GrClipStackClip tests to only exist when relevant
As part of the new architecture I envision not compiling in stuff like
the GrClipStackClip when in NGA-mode. This ran/runs into trouble with
the unit tests.

Change-Id: I922dcf873c4bb1a3abfd2ce519f3dbf68e053770
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392839
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2021-04-05 18:46:46 +00:00
Brian Salomon
acd28fc509 Revert "Make RGB_888x pixel operations work."
This reverts commit 8ce24b1d11.

Reason for revert: https://ci.chromium.org/raw/build/logs.chromium.org/skia/52bc09f869c58a11/+/annotations

Original change's description:
> Make RGB_888x pixel operations work.
>
> Also remove vulkan-specific conversions in GrVkGpu and rely
> on higher level SurfaceContext to convert correctly.
>
> Bug: skia:8862
> Change-Id: Ib8b0541c8c5831148b7129c4bbed3f925660116e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392378
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

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

Change-Id: I5358e0ba4d0f1dc24cc5c37dd86c401a3a6b6076
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8862
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392840
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-05 18:42:57 +00:00
Kevin Lubick
a40581f86d [canvaskit] Fix type definitions
Followup to https://skia-review.googlesource.com/c/skia/+/388837

There were several errors reported by
make typecheck

Change-Id: I4beb772056fff405c1cc5c4be21ef14a6901b188
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392716
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2021-04-05 18:21:29 +00:00
John Stiles
b14a819122 Represent vector-cast constructors with ConstructorVectorCast.
Making a VectorCast from a compile-time constant will perform the cast
at compile-time instead; previously, we did not apply this optimization.
This simplified a few test outputs in subtle ways. (In particular, the
SPIR-V codegen used to occasionally decorate OpConstantComposite of
constant numbers with RelaxedPrecision, and no longer appears to do
this. This should have no effect on results either way AFAICS.)

Because we don't return VectorCast constructors containing compile-time
constant values, we do not need to implement compareConstant for this
constructor; they only wrap non-compile-time-constant expressions.

Change-Id: I28c1f337f64d6f20fb86bc0f58e225af4bd7b26c
Bug: skia:11032
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392197
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-05 16:28:06 +00:00
Joe Gregorio
e296c56735 [docs] Fix all 404s.
Change-Id: I1b89db473582f9fcc4d87436a590ee36e869fe45
No-Try: true
Docs-Preview: https://skia.org/docs/user/build?cl=392717
Docs-Preview: https://skia.org/docs/dev/contrib/?cl=392717
Docs-Preview: https://skia.org/docs/dev/gardening/?cl=392717
Docs-Preview: https://skia.org/docs/user/tips?cl=392717
Docs-Preview: https://skia.org/docs/dev/tools/debugger?cl=392717
Docs-Preview: https://skia.org/docs/user/modules/pathkit?cl=392717
Docs-Preview: https://skia.org/docs/dev/testing/fuzz?cl=392717
Docs-Preview: https://skia.org/docs/dev/testing/ios?cl=392717
Docs-Preview: https://skia.org/docs/roles?cl=392717
Docs-Preview: https://skia.org/docs/user/api/?cl=392717
Docs-Preview: https://skia.org/docs/dev/testing/swarmingbots?cl=392717
Docs-Preview: https://skia.org/docs/dev/chrome/changes?cl=392717
Docs-Preview: https://skia.org/docs/user/download?cl=392717
Docs-Preview: https://skia.org/docs/dev/flutter/?cl=392717
Docs-Preview: https://skia.org/docs/user/modules/quickstart?cl=392717
Docs-Preview: https://skia.org/docs/user/api/skcanvas_creation?cl=392717
Docs-Preview: https://skia.org/docs/user/sample/viewer?cl=392717
Docs-Preview: https://skia.org/docs/dev/design/pdftheory?cl=392717
Docs-Preview: https://skia.org/docs/user/api/SkBlendMode_Overview?cl=392717
Docs-Preview: https://skia.org/docs/user/api/skcanvas_overview?cl=392717
Docs-Preview: https://skia.org/docs/?cl=392717
Docs-Preview: https://skia.org/docs/dev/contrib/submit?cl=392717
Docs-Preview: https://skia.org/docs/user/api/SkPath_Overview?cl=392717
Docs-Preview: https://skia.org/docs/user/modules/skottie?cl=392717
Docs-Preview: https://skia.org/docs/user/modules/canvaskit?cl=392717
Fixed: skia:404
Docs-Preview: https://skia.org/docs/dev/tools/calendar?cl=392717
Docs-Preview: https://skia.org/docs/dev/gardening/android?cl=392717
Docs-Preview: https://skia.org/docs/dev/contrib/style?cl=392717
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392717
Reviewed-by: Heather Miller <hcm@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2021-04-05 16:20:10 +00:00
Brian Salomon
8ce24b1d11 Make RGB_888x pixel operations work.
Also remove vulkan-specific conversions in GrVkGpu and rely
on higher level SurfaceContext to convert correctly.

Bug: skia:8862
Change-Id: Ib8b0541c8c5831148b7129c4bbed3f925660116e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392378
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-05 16:18:26 +00:00
Herb Derby
8960100112 inline simple functions in the glyph run builder
This is a refactoring on the way to making glyph runs handle
RSXForm. This is a portion of the larger CL:
https://skia-review.googlesource.com/c/skia/+/388719

Change-Id: I6fbfe6e865fca9786fe7daf88bf8adf486a944c8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392776
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2021-04-05 15:56:46 +00:00
Brian Osman
14d0096f1d Make 'shader' and 'colorFilter' first class types in SkSL
No functional change yet, but fragmentProcessor is no longer allowed in
runtime effect SkSL (and errors about 'shader' variables will no longer
refer to 'fragmentProcessor').

Bug: skia:11813
Change-Id: I5161f9adbe79090ec31ed3faf7dcef0e290842b7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392440
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-04-05 14:55:46 +00:00
John Stiles
fd7252fa23 Represent scalar-cast constructors with ConstructorScalarCast.
Change-Id: Iff8477f3797c83059c823ca9287493b7f30db71b
Bug: skia:11032
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392438
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-05 14:16:26 +00:00
Brian Osman
1f56479d6e Add test using 'fragmentProcessor' in runtime effects
Allowed today, will soon be an error.

Bug: skia:11813
Change-Id: I5c13de7657fa85f13fa6d80e1d890225d8a3e868
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392439
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-04-05 14:02:16 +00:00
Joe Gregorio
9601185bb6 [docs] Add back in all images and fix broken image links.
Change-Id: I0ffd838880746dbfe534ea615277fc24cd26b7ec
No-Try: true
Docs-Preview: https://skia.org/docs/dev/design/conical/corollary2.3.3?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Digests?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Status?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Cluster?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Perf?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/corollary2.3.2?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/lemma4?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/IssueHighlight?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/lemma3.1?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/tracing?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/BlameView?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/corollary2.2.2?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/download?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Isolate?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Search?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/end?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/image?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Grid?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/corollary2.2.1?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/debugger?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/pdftheory?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/resources?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/playcommands?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/DotDiagram?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Ignores?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/onlinedebugger?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/crosshair?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/frameplayback?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/corollary2.3.1?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/buttons?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/ClusterConfig?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/lemma3.2?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/skiaperf?cl=392736
Docs-Preview: https://skia.org/docs/dev/contrib/SuggestedReviewers?cl=392736
Docs-Preview: https://skia.org/docs/user/modules/PathKit_effects?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/Regression?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/ByTest?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/settings?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/conical/lemma1?cl=392736
Docs-Preview: https://skia.org/docs/dev/design/PdfLogicalDocumentStructure?cl=392736
Docs-Preview: https://skia.org/docs/dev/testing/skiagold?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/expand?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/tracing_load?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/layers?cl=392736
Docs-Preview: https://skia.org/docs/dev/tools/gpuop?cl=392736
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392736
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2021-04-05 13:20:45 +00:00
skia-autoroll
5c7ab08937 Roll Chromium from f87374baeea3 to ee8322ecac75 (302 revisions)
f87374baee..ee8322ecac

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 csmartdalton@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: csmartdalton@google.com
Change-Id: I6b6687a015e17f5207ef18af497d8876b9654b07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392597
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-05 05:09:17 +00:00
skia-autoroll
301449e4d0 Roll Dawn from a0bdba1dfc52 to f759264387ae (7 revisions)
https://dawn.googlesource.com/dawn.git/+log/a0bdba1dfc52..f759264387ae

2021-04-02 bajones@chromium.org Finish conversion to RenderPipelineDescriptor2
2021-04-02 cwallez@chromium.org DEPS: Only add vulkan-deps in dawn_standalone.
2021-04-02 cwallez@chromium.org DEPS: don't recurse in buildtools.
2021-04-02 rharrison@chromium.org Split top-level reflection code into either Tint or SPIRV-Cross
2021-04-02 enga@chromium.org Remove D3D12 live object reporting
2021-04-02 cwallez@chromium.org Remove unnecessary check for null TextureDescriptor.
2021-04-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from b4275c870ec2 to 2f04dc94ce25 (6 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from b4275c870ec2 to 2f04dc94ce25

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 enga@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: enga@google.com
Change-Id: I60e5c4a7cf662e48d01b55e08431d5c9afa4f1d9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392598
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-05 04:42:46 +00:00
skia-autoroll
e9244938d2 Roll ANGLE from 67e4aff55ed2 to 323c5f246480 (3 revisions)
67e4aff55e..323c5f2464

2021-04-03 timvp@google.com Validate PPO sampler uniforms
2021-04-03 jmadill@chromium.org Add GL_ANGLE_get_serialized_context_string.
2021-04-02 cnorthrop@google.com Tests: Add Dragon Raja trace

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 mtklein@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: mtklein@google.com
Test: Test: ProgramPipelineTest31.DifferentTextureTypes
Change-Id: I3b8664e46f9cd3a060a48f6d19d48942d0ba5c57
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392516
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-03 23:22:35 +00:00
Brian Salomon
ea1d39b35c updateBackendTexture uses GrSurfaceContext to write pixmaps.
Bug: skia:11786

Change-Id: I1c70b7152a69b2bb976aec2ed1dc9d5f96cad7ab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/348185
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-04-02 22:08:25 +00:00
skia-autoroll
e4427fe9a2 Roll ANGLE from eac2397bcf94 to 67e4aff55ed2 (59 revisions)
eac2397bcf..67e4aff55e

2021-04-02 jmadill@chromium.org Fix rapidjson build error in Skia.
2021-04-02 cnorthrop@google.com Capture/Replay: Support multi-digit context
2021-04-02 cclao@google.com Vulkan: Add baseLevel and generateMipmap test for immutable texture
2021-04-02 m.maiya@samsung.com Vulkan: Add YUV G8_B8R8_2PLANE_420_UNORM support.
2021-04-02 cclao@google.com Vulkan: Add test render to immutable texture will flush
2021-04-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from a0d5b9653a91 to 61083c4a2ae0 (4 revisions)
2021-04-02 gert.wollny@collabora.com JsonSerializer: use stubs when building without rapidjson
2021-04-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from cc20ce29e7a7 to 9c9ca054e2bc (391 revisions)
2021-04-02 cnorthrop@google.com Tests: Add Aztec Ruins trace
2021-04-02 cnorthrop@google.com Tests: Add League of Legends: Wild Rift trace
2021-04-02 kainino@chromium.org Revert "Metal: Support importing external metal textures"
2021-04-02 xinghua.cao@intel.com D3D: fix uniform block alignment error
2021-04-02 ynovikov@chromium.org Fix and re-enable component build of angle_apks
2021-04-01 ynovikov@chromium.org Add Linux, Ozone and Fuchsia chromium.angle bots to CQ
2021-04-01 lehoangq@gmail.com Metal: Support importing external metal textures
2021-04-01 jonahr@google.com Don't append newline to empty InfoLog stream.
2021-04-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 0a4b29c05e71 to a0d5b9653a91 (6 revisions)
2021-04-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from e4067deef470 to cc20ce29e7a7 (104 revisions)
2021-04-01 jonahr@google.com Revert "Reland "Add support for Linux GPU info with Vulkan backend""
2021-04-01 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from c181ac047c8b to e4067deef470 (350 revisions)
2021-04-01 lehoangq@gmail.com Metal: implement ANGLE_device_metal extension.
2021-03-31 ynovikov@chromium.org Reland "Link angle_util statically into angle_system_info_test"
2021-03-31 jonahr@google.com GLX: Always call XSync on creation/destruction of WindowSurfaces
2021-03-31 syoussefi@chromium.org Add a gl-d3d-only target for the translator
2021-03-31 cclao@google.com Vulkan: Split fragment shader from ColorAttachmentAndAllShadersRead
2021-03-31 jmadill@chromium.org Enable messenger_lite trace on SwiftShader.
2021-03-31 syoussefi@chromium.org Vulkan: Remove spam output regarding pipeline cache
2021-03-31 chonggu@google.com [Fuchsia] Use manifest fragments for Cr-Fuchsia binaries
2021-03-31 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 4b3769b941e6 to 0a4b29c05e71 (2 revisions)
2021-03-31 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 8599134e632f to c181ac047c8b (466 revisions)
2021-03-31 timvp@google.com Detach separable shaders
2021-03-31 timvp@google.com Support linking PPOs without attached Shaders
2021-03-31 syoussefi@chromium.org Vulkan: Temporarily use GOOGLEX instead of EXT for MSRTSS
2021-03-30 rafael.cintron@microsoft.com Check return value of allocateResource instead of asserting
2021-03-30 timvp@google.com Update PPO's executable when attached program is re-linked
2021-03-30 ynovikov@chromium.org Replace Win x86 dEQP GPU.FYI bot with chromium.angle bot
2021-03-30 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from e0d8a486f6d5 to 4b3769b941e6 (3 revisions)
2021-03-30 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from fb53aa2bb7da to 4c0f888d7ef8 (1 revision)
2021-03-30 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 26bf9bb622f1 to 8599134e632f (396 revisions)
2021-03-30 timvp@google.com Reland "Save/Load missing members"
2021-03-29 syoussefi@chromium.org Don't link with SPIR-V repos if !vulkan && !metal
2021-03-29 gert.wollny@collabora.com Capture/Replay: serialize context to JSON
2021-03-29 gert.wollny@collabora.com Capture/Replay: Enable GetTexImage tests
2021-03-29 gert.wollny@collabora.com capture/replay: impl CaptureGetRenderbufferImageANGLE_pixels
2021-03-29 penghuang@chromium.org Only enable framebufferMultisample with framebufferBlitANGLE
2021-03-29 gert.wollny@collabora.com capture/replay: implement CaptureGetTexImageANGLE_pixels
2021-03-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 7079d8df17da to e0d8a486f6d5 (7 revisions)
2021-03-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from e0abc3035c46 to 26bf9bb622f1 (218 revisions)
2021-03-28 jmadill@chromium.org Capture/Replay: add frontend feature to force capture limits
2021-03-26 gert.wollny@collabora.com libAngle: Add Json context serializer library
2021-03-26 lubosz.sarnecki@collabora.com context: Remove endl, since INFO already adds them.
2021-03-26 lubosz.sarnecki@collabora.com capture_replay_expectations: Don't skip passing.
2021-03-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 8969f861fc24 to fb53aa2bb7da (2 revisions)
2021-03-26 lubosz.sarnecki@collabora.com capture_gles_3_2: Set read buffer for glGetPointerv.
2021-03-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 3f4383f1d450 to 7079d8df17da (2 revisions)
2021-03-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 7a30f2f0e630 to e0abc3035c46 (431 revisions)
2021-03-25 lubosz.sarnecki@collabora.com capture_gles_1_0: Implement capture functions.
2021-03-25 ynovikov@chromium.org Remove old Win x86 bots from CQ
2021-03-25 syoussefi@chromium.org Vulkan: Call glslang at compile time

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 mtklein@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: mtklein@google.com
Test: Test: FramebufferTest_ES3.RenderImmutableTextureWithSubImageWithBeyondMaxLevelTest: Test: ProgramPipelineTest31.DetachAndModifyShaderTest: Test: ProgramPipelineTest31.ModifyAndRelinkShaderTest: Test: ProgramPipelineTest31.ProgramBinaryTest: Test: Texture2DBaseMaxTestES3.GenerateMipmapAfterRebaseTest: Test: Texture2DBaseMaxTestES3.GenerateMipmapAfterRebaseImmutableTest: Test: Texture2DBaseMaxTestES3.PingPongBaseLevelImmutableTest: Test: angle_perftests --gtest_filter="*aztec_ruins*"Test: Test: angle_perftests --gtest_filter=*league_of_legends_wild_rift*
Change-Id: Ib87ee0996b2400a4514e60a932d4ebc6df4635c5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392261
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-02 21:42:46 +00:00
Herb Derby
ef094235dc clean up drawTextUTF8 and rename to textToGlyphRunList
Pull out the glyph positioning code in anticipations of removing
simplifyDrawText.

This is part of a larger CL:
https://skia-review.googlesource.com/c/skia/+/388719

Change-Id: I935fd91f70d708a7a30785b6eea8e4e7c1f9c739
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392416
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2021-04-02 21:07:25 +00:00
Brian Osman
42de99b8e5 Add MakeSpecialType to replace several one-off Type factories
An upcoming change adds more of these "special" types, this pattern
seems just as easy to follow?

Change-Id: Ib652c8f11a98d33c14300294e521a1378345bc2d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392379
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-04-02 21:00:35 +00:00
Brian Salomon
7cde6c36f4 fix parentheses warning
Bug: skia:11786
Change-Id: I2ded1f1cbd486e1710f1ebbb326844258cfeac64
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392436
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-02 20:55:45 +00:00
Jim Van Verth
ffeee9bfde Fix lost precision case in SkComputeRadialSteps.
With large offsets, we can end up with a tiny change in angle at each
radial step, so that rotSin and rotCos can get truncated to 0 and/or 1,
respectively. This means that we won't sweep the entire radial distance,
throwing future calculations off. Instead in this case we should fail.

Bug: oss-fuzz:21826
Change-Id: I24f5b1ac315a3697d2ea00ee4bd73652ec3e16dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392377
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2021-04-02 20:42:35 +00:00
Mike Klein
3144a1e698 have fm mkdir -p
This allows directories in sources, e.g.

    $ fm -b cpu -s skimage/dm/01_original.jpg -w foo
        skimage/dm/01_original.jpg  f181c4655d0f55d7000dd04a4d28d407      330ms

    $ find foo
        foo
        foo/skimage
        foo/skimage/dm
        foo/skimage/dm/01_original.jpg.png

where previously,

    $ fm -b cpu -s skimage/dm/01_original.jpg -w foo
        sk_fopen: fopen("foo/skimage/dm/01_original.jpg.png", "wb") returned nullptr
        (errno:2): No such file or directory
        libpng error: HashAndEncode::encodePNG() failed writing stream

        Signal 6:
        _sigtramp (+0x1d)

Change-Id: I6950d77cacba16363315fb8d5c6d866d207c9a25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392198
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2021-04-02 20:35:35 +00:00
Robert Phillips
2307058294 Enforce that the recordTimeArena is only available for DDLRecordingContexts
Bug: b/182959903
Change-Id: If57aaa3067cfe441fd080892e6e5aa933251380d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/391440
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-04-02 20:31:45 +00:00
Brian Salomon
d5e61572d0 Enable SurfaceContextWritePixels on iOS Metal
Bug: skia:11130
Change-Id: I3a39e32dc2e19bdfaf7799c689e6a4820b5a4cfc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/391976
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-02 20:13:15 +00:00
Brian Salomon
2c673409ef Expose writing to mip levels via GrSurfaceContext::writePixels
Bug: skia:11786
Change-Id: Id17952db0aede56fa39845d9d371cf0a141f9dd7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/391836
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-04-02 19:16:15 +00:00
Chris Dalton
f8d75c687d Don't use the recordTimeAllocator in GrOpsTask
This is a stopgap for dealing with OOM issues.

Bug: b/182959903
Change-Id: I25855b6fc1c9d8d270c1cb3fcbdc1c7f93623214
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/391956
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Adlai Holler <adlai@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-04-02 18:04:35 +00:00
John Stiles
87011df3cf Allow ConstructorSplat to accept a scalar dest type.
Since the input must be a scalar argument of equivalent type, this is
just a no-op cast in practice (`float` to `float`, `int` to `int`). It
is harmless to allow it, and allows some call sites to be simplified.

Change-Id: I5a1a213fa3cf8c4afaabbbce3b34ab504792a267
Bug: skia:11032
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392340
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-04-02 17:09:05 +00:00
Derek Sollenberger
396cd1dfab Revert "Lift atlas clip FP creation out of GrClip::apply"
This reverts commit 92b35673c5.

Reason for revert: breaking the android roll (see ag/14076257)

Original change's description:
> Lift atlas clip FP creation out of GrClip::apply
>
> Atlas clips always had a potential point of failure: If the SDC's
> opsTask ever got closed between GrClip::apply and
> GrOpsTask::addDrawOp, their mask would have gotten sent to the wrong
> opsTask. It didn't _look_ like this could happen with the current
> code, but it could have also been inadvertently changed quite easily.
>
> This CL adds a "pathsForClipAtlas" array for GrClip::apply to fill out
> instead of creating FPs. The SDC then generates the actual clip atlas
> FPs once it knows exactly which opsTask they will belong in.
>
> Bug: chromium:928984
> Change-Id: I507ab13b2b5e8c3c3c1916d97611297dbbd8a522
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/389926
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>

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

Change-Id: I9597d822a9f31b7070aee691ddf3a52f4f424a24
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:928984
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392339
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2021-04-02 15:44:47 +00:00
Ben Wagner
348ee387a9 SkScalerContext::getImage less brittle.
Properly handle edge cases like
 * the temporary glyph being a different size than expected
 * filters which reduce in size
 * filters which return false to indicate no filtering has been done

Bug: chromium:1190525
Change-Id: Ibc53eb1d7014210019e96cd6bae3e256d967be54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392156
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2021-04-02 14:52:45 +00:00
John Stiles
0cbd45421f Add enumerators for several additional constructor types.
This renumbers all the dehydrated data.

Change-Id: I8b39db576303c96e9b5b321fa2eb5fb2243920ac
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392298
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-04-02 14:15:05 +00:00
John Stiles
2938eea68c Represent splat constructors with a dedicated ConstructorSplat class.
Change-Id: Ic9c3d688b571591d057ab6a4e998f1f9712a1b58
Bug: skia:11032
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392117
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-02 13:14:05 +00:00