Commit Graph

49957 Commits

Author SHA1 Message Date
Herb Derby
53453f76b5 split transformed mask from SDFT
* transformed masks -> GrTransformedMaskSubRun
* GrMaskSubRun is SDFT -> GrSDFTSubRun

There is much duplicate code, which will be cleaned up shortly.

Change-Id: If54e388e89f7db15ddfd4b4354f0a1b4d6f5e36b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305686
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-07-26 16:59:44 +00:00
skia-recreate-skps
392da6ba30 Update SKP version
Automatic commit by the RecreateSKPs bot.

TBR=rmistry@google.com
NO_MERGE_BUILDS

Change-Id: Ib3316c12beb4ae3013b85b79ac0b3b5d1e0425ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305919
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-07-26 08:51:33 +00:00
Mike Reed
15292955fe test for valid mips before setting on image
We seed the builder with the imageinfo of an image, but after it is
built we then have to "attach" it to an image (or more than one).

Check that the mip chain is compatible with the parent image we are
attaching to.


Change-Id: Iead6aee54861fdd4910f38f89a0364ed80c341d8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305680
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-07-25 17:27:03 +00:00
Florin Malita
d1ae99438e [skottie] Add support for inline/data-uri fonts
BM can now export inline fonts, encoded as data-uris.

Extend our DataURIResourceProviderProxy helper to also intercept and
decode inline typefaces.

Change-Id: Iaf1be9db2fd32383af78bc351b1228fe6b3b64bf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305685
Commit-Queue: Florin Malita <fmalita@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Florin Malita <fmalita@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-07-25 13:46:52 +00:00
skia-recreate-skps
1d66d3f9d4 Update Go Deps
Change-Id: Ifc6772b117ad879ad9065b9d51be3e29ac77848c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305842
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-07-25 05:33:32 +00:00
John Stiles
7c7a7e5da9 Report the effect type when TestCreate returns null.
This is a quality-of-life improvement when debugging processor
unit tests.

Change-Id: I6eba2ea17710e224852e4688c5cc491ed09461ce
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305690
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>
2020-07-24 21:40:00 +00:00
Michael Ludwig
1bf2b4f587 Undo drawRRect+clipRRect merging outside of Android framework
See linked bugs, but there were mixed results on whether this was a
performance win. My guess is that for simple, easy-to-analyze clips
that satisfied a round rect clipped to itself it was a win, but when
the clip stack was large or not actually a round rect, it slowed down
the analysis.

This undoes that optimization that was turned on as part of
https://skia.googlesource.com/skia/+show/4e3cab7919258df8d6fd884298e28b20e4288060
to see if that's the cause.

Bug: skia:10462
Bug: chromium:1101513
Change-Id: I11e75a7a643337850766ed51956608b76a4a0501
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305681
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Chris Dalton <csmartdalton@google.com>
2020-07-24 21:30:00 +00:00
Greg Daniel
69267913ef Remove resource from GrD3DBuffer.
We will rely on the tracking of GrBuffers on the command list to manage
lifetime of d3d buffers. This also means we won't destroy the underlying
d3d buffer resource until the destructor.

Change-Id: I26084b8fffc65038891a0e48662d6a864c5dd8c1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305719
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-07-24 20:30:00 +00:00
Herb Derby
b42706cda6 properly account for GrTextBlob arena size
The code was not accounting for the GrGlyphVector data properly. Add
that back in. Make a type AllSubRuns that accounts for the max size
of all the SubRuns.

Change-Id: I9ce702d24bc4f9efbfcdb4a0f14494f53d1b701c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305568
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-07-24 20:15:00 +00:00
Mike Reed
bd2b2c1cb0 demo CubicResampler
Change-Id: I1f779c60f1513e5ed28ce7e7d067b69ef4937ea4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305683
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2020-07-24 20:13:34 +00:00
Jim Van Verth
711b0397d7 Reland "Make GrRingBuffer more generic so it can be used over all backends"
This is a reland of b6d4ad92ad

Original change's description:
> Make GrRingBuffer more generic so it can be used over all backends
> 
> * Removes the spinlock (should no longer be necessary)
> * Uses GrGpuBuffer and creation through GrResourceProvider
>   instead of internal native creation
> * Changes the SubmitData to pass up all buffers used over a given submit
> so the backend can track that better
> 
> Bug: skia:10530
> Change-Id: I0d3a686b950dd5cb5f720f827b573238386b9524
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305567
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

Bug: skia:10530
Change-Id: If75ef583fbed65617cd5be56ee40c937e7325b21
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305722
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-07-24 20:05:40 +00:00
Robert Phillips
143646297e Revert "Attach whitespaces to the neighbor unresolved blocks"
This reverts commit 131c5ad6f1.

Reason for revert: Blocking the G3 roll

Original change's description:
> Attach whitespaces to the neighbor unresolved blocks
> 
> Fix the situation when an unresolved {arabic} text is broken into
> many small runs by resolved english spaces.
> 
> Bug: skia:10487
> Change-Id: I3a739501c0fb7e0fc845e68392e1d214df9302db
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/304000
> Commit-Queue: Julia Lavrova <jlavrova@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

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

Change-Id: Iaa338dd5fb5c9962df2ee32bafbc089da0e2b8a1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10487
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305797
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-07-24 19:48:22 +00:00
Brian Osman
b5f0f52831 SkSL: Salt inline identifiers in PipelineStage and FragmentProcessor passes
Fixes a bug with name conflicts in the final SkSL.

Bug: skia:10526
Change-Id: Ic238f89dd778c186e775ecbaabfbaed9e426274f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305563
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-07-24 19:23:20 +00:00
Greg Daniel
6b050f6bef Using staging buffers for uploads of d3d static buffers.
Change-Id: I0da997bd373860ed5e729159abf1b9a0878d2ba4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305570
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-07-24 18:56:40 +00:00
Brian Osman
b107a11f88 Add several more values to SkYUVColorSpace
Includes full-range Rec709 and BT2020, as well as more precise
matrices for 10 and 12 bit BT2020.

Bug: chromium:1108626
Change-Id: I28cbce982a00c082c8b510dbb7b144bdc1ce02e0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305596
Reviewed-by: Dale Curtis <dalecurtis@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-07-24 18:49:10 +00:00
Julia Lavrova
131c5ad6f1 Attach whitespaces to the neighbor unresolved blocks
Fix the situation when an unresolved {arabic} text is broken into
many small runs by resolved english spaces.

Bug: skia:10487
Change-Id: I3a739501c0fb7e0fc845e68392e1d214df9302db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/304000
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-07-24 18:21:49 +00:00
Mike Klein
a54d380ced remove more blacklists
Switch DM to --skip, and replace a few others I found
with similar skip-related names, or remove names entirely.

This leaves things with just the unavoidable,

    $ git grep blacklist
    gn/BUILD.gn:      "-fsanitize-blacklist=$_suppressions",
    tools/lottie-web-perf/lottie-web-perf.js:
    browser_args.push('--ignore-gpu-blacklist');
    tools/perf-canvaskit-puppeteer/perf-canvaskit-with-puppeteer.js:
    browser_args.push('--ignore-gpu-blacklist');
    tools/skottie-wasm-perf/skottie-wasm-perf.js:
    browser_args.push('--ignore-gpu-blacklist');

Bug: 1101491
Change-Id: I9f60a18df4fd0304e702df4c68333f669a485c7d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305760
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-07-24 18:14:29 +00:00
Mike Klein
d26b3e2d51 rename tools/xsan.blacklist
No real way around using -fsanitize-blacklist,
but we can change the rest.

Bug: 1101491
Change-Id: I3ec84bd2911b6cf6e77eac1c9d565a398bfcde77
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305754
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-07-24 18:12:31 +00:00
John Stiles
7109434de0 Enforce trivially-copyable types on unaligned loads/stores/casts.
These correctness checks were inspired by Chromium's bit_cast:
https://chromium.googlesource.com/chromium/src/base/+/refs/heads/master/bit_cast.h

This also closes out a long-standing TODO in the code.

Change-Id: Iaf570fc564955ba90115a52bcaa743a170bdbdc4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305718
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-07-24 18:06:30 +00:00
Robert Phillips
58adb34cda Update more tests to use the GrDirectContext/GrRecordingContext pair
Change-Id: I66011fef006398a95c9f54af97c5c1092b8b7415
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305497
Reviewed-by: Adlai Holler <adlai@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-07-24 18:05:30 +00:00
John Stiles
36e0849af6 Rename bit_cast to sk_bit_cast, and migrate to SkUtils.h.
This CL will allow sk_bit_cast to be used in more places (such as .fp
generated code) without #including the entire RasterPipeline header.

Change-Id: Iba3da944d33898d4fc8bc4df97231c55de2b1d0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305710
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-07-24 17:50:29 +00:00
Chris Dalton
8513867ced Don't std::move fTriangleBuffer in tessellation
I forgot that fTriangleBufer can be bound in both the stencil step and
the cover step.

Change-Id: I53a394b37d3d551fe7e1fe25f45d26e7bda46e3a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305737
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-07-24 17:23:29 +00:00
John Stiles
cc73078905 Remove input-color modulation from GrGLLightingEffect.
This fragment processor is not accessible to the outside world; it's
only accessible via `SkLightingImageFilterInternal::drawRect`, which
creates its own GrPaint and does not set a custom paint color. The input
color is always default white, so the modulation step is wasted effort.

Change-Id: Ia6c18edab069947ec80b372c1d0728b5ed6ffc98
Bug: skia:10217
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305725
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-07-24 17:19:40 +00:00
skia-autoroll
c298e7f163 Roll dawn from 9061d5d154bc to 0d158ac68107 (3 revisions)
https://dawn.googlesource.com/dawn.git/+log/9061d5d154bc..0d158ac68107

2020-07-23 kainino@chromium.org Fix some bugs in buffer mapping in the wire client
2020-07-23 cwallez@chromium.org Implement sampleMask in D3D12 and OpenGL.
2020-07-23 tommek@google.com Enabling sampleMask usage in RenderPipelineVk

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: I4b4fcac53946f707ed0f57145971f868b9fe2863
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305657
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-24 17:14:09 +00:00
Herb Derby
43ad7915f7 make calls to SubRun and AtlasSubRun const
In theory, all sub runs should be fully const because they are shared by
multiple threads. But, they are used in a single-threaded situation
when flushed to the GPU. AtlasSubRuns are mutate during the GPU flush
to convert PackedGlyphIDs to GrGlyph pointers. Because of that I
decided to make everything const, but label the GrGlyphVector (the
structure that holds the PackedGlyphIDs/GrGlyphs) to be mutable.

Change-Id: I328175a8933b64fda7fab2b3b3d8699683451e60
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/304216
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-07-24 17:07:00 +00:00
Brian Salomon
e888fb2bc6 Remove GrYUVProvider.
This abstraction had one subclass. That subclass was used only as
an implementation detail of SkImage_Lazy. Move the functionality
into SkImage_Lazy.

Change-Id: Icd8754114dc33ae957e542b372086e8caa0408a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305724
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-07-24 17:06:29 +00:00
Jim Van Verth
3b0200b606 Revert "Metal: Hold refs for input buffers from bindBuffer calls."
This reverts commit a75dc33a67.

Reason for revert: Breaking the bots

Original change's description:
> Metal: Hold refs for input buffers from bindBuffer calls.
> 
> Mirrors what we have in Vulkan and Direct3D.
> Also adds command buffer tracking, again like Vulkan and Direct3D.
> 
> Change-Id: I2280d92274d81830aec7950afc64a0147e38c317
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305396
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

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

Change-Id: I7f3e3bde8ac0f302ecb6b3c44d7850160d2102f8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305729
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-07-24 16:47:36 +00:00
Robert Phillips
809a99819e Revert "implement working CorrectnessActivity to generate lottie keyframe PNGs"
This reverts commit 7f5e99465d.

Reason for revert: Blocking the Google3 roll

Original change's description:
> implement working CorrectnessActivity to generate lottie keyframe PNGs
> 
> 
> make correctness activity loop through all available lotties
> 
> 
> implement tests for lottie correctness through Android Activity
> 
> Change-Id: I8b5d1dfc0641e3227f23a4d4560faa756b245ede
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305216
> Reviewed-by: Stan Iliev <stani@google.com>
> Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>

TBR=stani@google.com,jmbetancourt@google.com

Change-Id: I307129723f71644186378ca364c278661f128a5c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305723
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-07-24 15:18:31 +00:00
John Stiles
d3feb6fef7 Simplify GrPipeline by removing unused functionality.
Change-Id: Ibdd662fac5b3dedd1f231a9ba32c6e35e8fdf4da
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305545
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-07-24 15:08:29 +00:00
Jim Van Verth
c8bc99ff6a Revert "Make GrRingBuffer more generic so it can be used over all backends"
This reverts commit b6d4ad92ad.

Reason for revert: Breaking the bots

Original change's description:
> Make GrRingBuffer more generic so it can be used over all backends
> 
> * Removes the spinlock (should no longer be necessary)
> * Uses GrGpuBuffer and creation through GrResourceProvider
>   instead of internal native creation
> * Changes the SubmitData to pass up all buffers used over a given submit
> so the backend can track that better
> 
> Bug: skia:10530
> Change-Id: I0d3a686b950dd5cb5f720f827b573238386b9524
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305567
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

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

Change-Id: Ief7df521f66e85d9bfb85508e5a5f8223d7d6725
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10530
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305720
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-07-24 14:49:11 +00:00
John Stiles
b38781c8b1 Remove unused RunInSeries processor.
We no longer have any use cases where we compose more than 2 processors.

Change-Id: I895d7e538386788dbea18faf3a1833a68b3d5704
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305519
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-07-24 13:39:03 +00:00
John Stiles
f743d4eb53 Rename Xfermode fragment processor to Blend.
Change-Id: Iaa0829d72d0da1469df2da23102ff0e3572b641b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305556
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-07-24 13:34:00 +00:00
Kevin Lubick
7c8659256b Inclusive language
Bug: 842296
Change-Id: I4564f96d4f179211df19893270ccc222abcdd446
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305439
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-07-24 13:33:53 +00:00
Jim Van Verth
a75dc33a67 Metal: Hold refs for input buffers from bindBuffer calls.
Mirrors what we have in Vulkan and Direct3D.
Also adds command buffer tracking, again like Vulkan and Direct3D.

Change-Id: I2280d92274d81830aec7950afc64a0147e38c317
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305396
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-07-24 13:28:53 +00:00
Julia Lavrova
90787fefef Reland #3 "ICU API: only in SkParagraph, simplified."
This is the fix for google3 failure.
This reverts commit e36a466723.

Reason for revert: Trying to fix google3 build brake

Original change's description:
> Revert "Reland "ICU API: only in SkParagraph, simplified (relanding reverted).""
>
> This reverts commit 16fbc24772.
>
> Reason for revert: Checking to see if this is blocking the G3 roll
>
> Original change's description:
> > Reland "ICU API: only in SkParagraph, simplified (relanding reverted)."
> >
> > This reverts commit a30095d17c.
> >
> > Reason for revert: Fixing the build
> >
> > Original change's description:
> > > Revert "ICU API: only in SkParagraph, simplified (relanding reverted)."
> > >
> > > This reverts commit 7479eda3b6.
> > >
> > > Reason for revert: Breaking build
> > >
> > > Original change's description:
> > > > ICU API: only in SkParagraph, simplified (relanding reverted).
> > > >
> > > > Reverted commit: https://skia-review.googlesource.com/c/skia/+/296128/
> > > >
> > > > Change-Id: Iaf793bff94a6060579c7d6176d477e598c047be6
> > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/303261
> > > > Reviewed-by: Mike Reed <reed@google.com>
> > > > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> > >
> > > TBR=reed@google.com,jlavrova@google.com
> > >
> > > Change-Id: Idd4c41e22aa59e24bdbd07f2fa5e9258c1bbb7a7
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/303358
> > > Reviewed-by: Julia Lavrova <jlavrova@google.com>
> > > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> >
> > TBR=reed@google.com,jlavrova@google.com
> >
> > Change-Id: Iea5da4535ea2e388e8e632e6c556b66c8781631a
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/303377
> > Reviewed-by: Ben Wagner <bungeman@google.com>
> > Reviewed-by: Julia Lavrova <jlavrova@google.com>
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
>
> TBR=bungeman@google.com,reed@google.com,jlavrova@google.com
>
> Change-Id: I1edfecc56add670b251adf44892265088fd32c42
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/304058
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=bungeman@google.com,robertphillips@google.com,reed@google.com,jlavrova@google.com

Change-Id: Ife73aa21539e870d69bda6b5892979646732d778
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/304060
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-07-24 13:28:52 +00:00
Brian Salomon
4cfae3bc24 Remove GrTexturePriv
This existed because GrTexture used to be public.

Change-Id: I5e507084ae12058a20481b517b9130b41c793d29
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305521
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-07-24 13:26:07 +00:00
Herb Derby
13e3faebc6 reduce mutex use and switch to spinlock
* Combine find and makeMRU.
* Switch from SkMutex to SkSpinLock

In the gm 'paragraph_$' this reduces acquiring the lock from 1.2% to 0.7%
as measured by instruments and nanobench.

Change-Id: I33e3af31825f175c9de42f001acf68ffe3623a8a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305564
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-07-24 13:26:06 +00:00
Jim Van Verth
b6d4ad92ad Make GrRingBuffer more generic so it can be used over all backends
* Removes the spinlock (should no longer be necessary)
* Uses GrGpuBuffer and creation through GrResourceProvider
  instead of internal native creation
* Changes the SubmitData to pass up all buffers used over a given submit
so the backend can track that better

Bug: skia:10530
Change-Id: I0d3a686b950dd5cb5f720f827b573238386b9524
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305567
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-07-24 13:21:02 +00:00
Jorge Betancourt
7f5e99465d implement working CorrectnessActivity to generate lottie keyframe PNGs
make correctness activity loop through all available lotties


implement tests for lottie correctness through Android Activity

Change-Id: I8b5d1dfc0641e3227f23a4d4560faa756b245ede
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305216
Reviewed-by: Stan Iliev <stani@google.com>
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
2020-07-24 13:21:01 +00:00
skia-autoroll
3341934694 Roll ANGLE from f359cb667cb9 to df5ed61ddbca (3 revisions)
f359cb667c..df5ed61ddb

2020-07-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-ValidationLayers from d92ddcef72ef to adf938680697 (9 revisions)
2020-07-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll glslang from 11fa4d0d5694 to 3ee5f2f1d331 (3 revisions)
2020-07-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from f272427bda39 to 6a8a74986c35 (3 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
Bug: None
Tbr: robertphillips@google.com
Change-Id: I180fe488bf03e5465d14dea08cd83f03b639ee16
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305658
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-24 12:13:14 +00:00
Chris Dalton
f617b4d9c2 Rename GrStrokeGeometry -> GrStrokePatchBuilder
Bug: skia:10419
Change-Id: Iffd139c2d489deb9d57fa860c20158ee398b7c11
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305561
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-07-24 04:39:57 +00:00
Chris Dalton
9eea916c05 Write GPU buffers directly from GrStrokeGeometry
Removes the intermediate stroke representation that GrStrokeGeometry
used to generate. Uses GrOpFlushState::makeVertexStateAtLeast instead
and writes patches directly to a vertex buffer as we iterate the path.
If the vertex buffer runs out of room we simply allocate a new one and
draw the stroke in chunks.

Bug: skia:10419
Bug: skia:10460
Change-Id: Ic743158366e43d4d3f5a4ff97b039d48c9c9c65b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305380
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2020-07-24 04:38:51 +00:00
Florin Malita
d140e767b8 ResourceProviderProxyBase should not drop loadFont (yet)
Although deprecated, loadFont is still in use - we should proxy it for
now.

Change-Id: Iccef76d4ba394d08fc61c7471def8dee470db695
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305516
Auto-Submit: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-07-23 18:26:50 +00:00
Robert Phillips
98e6447f8a Manually Roll ANGLE from 20eb9be55299 to f6659b3df028 (17 revisions)
20eb9be552..f6659b3df0

ANGLE has updated the structure of their gn files. This CL updates Skia to match.

Change-Id: I20a735bbb3f4f119c5315627118a82d12df3f856
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305518
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-07-23 16:06:38 +00:00
Elliot Evans
1ec3b1ab2e Fix CanvasKit SkSurface.requestAnimationFrame for web workers
Change-Id: I19d368d6f9f8a2bf4bed73a8f1843be907183096
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305539
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Elliot Evans <elliotevans@google.com>
2020-07-23 16:03:23 +00:00
John Stiles
024d745fcc Add GrFragmentProcessor::Compose for composing two processors.
This is functionally equivalent to RunInSeries, but the implementation
can be simpler, because it doesn't support an arbitrary number of
processors.

In practice, Ganesh no longer calls RunInSeries with more than two
inputs at once, so all existing calls to RunInSeries have been replaced
with Compose.

Change-Id: I719d0a11ed747775af4e99fb9de33323d43e7874
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305400
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2020-07-23 14:06:26 +00:00
Robert Phillips
b25e0650dd Convert more tests to GrDirectContext/GrRecordingContext pair
TBR=bsalomon@google.com
Change-Id: I5bb78f4e36c4037669e7907cbe818da743480ef4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305009
Reviewed-by: Adlai Holler <adlai@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-07-23 12:49:06 +00:00
Kevin Lubick
446b974be8 Remove old devices.json and code
The code in cts subfolder was unused in over a year, and the SKQP stuff
was also unused (and non-inclusive).

Bug: 1097221
Change-Id: Icf3d37fbe773125ab714a9b68b1b620f39857b5c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305438
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2020-07-23 12:24:26 +00:00
skia-recreate-skps
b8fe909335 Update Go Deps
Change-Id: I6dd86ee90e59f7bc2e9ac627cc3d14c71b275a67
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305479
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2020-07-23 05:34:26 +00:00
skia-autoroll
18953489fd Roll SwiftShader from f272427bda39 to 6a8a74986c35 (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/f272427bda39..6a8a74986c35

2020-07-22 amaiorano@google.com Fix ReactorDebugInfo off by one line issues
2020-07-22 amaiorano@google.com Fix GN debug builds of SwiftShader on LLVM 10
2020-07-22 tommek@google.com Fix copying between images and buffers with padding

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: I2ee446d27927d0fc4fb4f6c0eb9b04c3dade2097
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/305390
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-07-23 04:42:36 +00:00