Commit Graph

59236 Commits

Author SHA1 Message Date
skia-autoroll
4075637605 Roll Dawn from a52abab38ce9 to 3b88de520185 (5 revisions)
https://dawn.googlesource.com/dawn.git/+log/a52abab38ce9..3b88de520185

2022-02-12 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 9b7a77b08d8a to 06edae72ba69 (3 revisions)
2022-02-11 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from d5df233189ca to 9b7a77b08d8a (10 revisions)
2022-02-11 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 73e79886943c to 6f9ac3524a0f (2 revisions)
2022-02-11 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 98facb28abc8 to 73e79886943c (2 revisions)
2022-02-11 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 118ce6aae027 to d5df233189ca (6 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 98facb28abc8 to 6f9ac3524a0f

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 amaiorano@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: amaiorano@google.com
Change-Id: I47af448d16be4aa68f574f32fa342365d5515c9c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508418
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-14 04:42:45 +00:00
Ben Wagner
0e48516aae Revert "Reland "Adding a trace to nanobench for RP/VM comparison""
This reverts commit 94b8dd6710.

Reason for revert: https://ci.chromium.org/p/chromium/builders/try/android-marshmallow-x86-rel appears to either not support this instruction or it is disabled.

Original change's description:
> Reland "Adding a trace to nanobench for RP/VM comparison"
>
> This reverts commit 39728eb980.
>
> Reason for revert: Need to reland after I figure out what happened
>
> Original change's description:
> > Revert "Adding a trace to nanobench for RP/VM comparison"
> >
> > This reverts commit e855b1273f.
> >
> > Reason for revert: breaking the tree
> >
> > Original change's description:
> > > Adding a trace to nanobench for RP/VM comparison
> > >
> > > Run nanobench with --compare key and collect data for comparison:
> > > ./out/Release/nanobench --csv --config 8888 --skvm --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee VM.data
> > > ./out/Release/nanobench --csv --config 8888 --forceRasterPipeline --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee RP.data
> > > awk 'BEGIN {OFS=","; fileNum = 0} ($2 ~ /MB/) && fileNum == 0 {vmvmcycles[$3] = $6; vmvmscan[$3] = $8; vmvmpixels[$3] = $10; vmvminterp[$3] = $11;  vmrpcycle[$3] = $14; vmrpscan[$3] = $16; vmrppixels[$3] = $18} ($2 ~ /MB/) && fileNum == 1  {print $3, vmvmcycles[$3], vmvmscan[$3], vmvmpixels[$3], vmvminterp[$3], $6, $8, $10, $11, $14, $16, $18} ENDFILE {fileNum += 1}' VM.data RP.data > compare.csv
> > >
> > > You can see an example of comparison table here:
> > > https://docs.google.com/spreadsheets/d/1Q57oz6Jn8JPQkPzUbtO0fcZh2VhwPhxwsLaHnSb9uR0/edit#gid=406063636
> > >
> > > Change-Id: I8fa35e3fb087bce00ab19355a3bc021334aa7a80
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501337
> > > Reviewed-by: Herb Derby <herb@google.com>
> > > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> >
> > Change-Id: I6799b90ffd8bc05c65d1185bfc07a06af05e2038
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507182
> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
>
> Change-Id: I3668b5a40f310598e23c922b1eb6f93db4dac13c
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507183
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Julia Lavrova <jlavrova@google.com>

Change-Id: I5d0174fca1aeaa0f3e75a8e1f643265701068f42
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508396
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-02-13 19:03:40 +00:00
dependabot[bot]
3f2effdbdc Bump karma from 5.2.3 to 6.3.14 in /modules/pathkit
Bumps [karma](https://github.com/karma-runner/karma) from 5.2.3 to 6.3.14.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/karma-runner/karma/releases">karma's releases</a>.</em></p>
<blockquote>
<h2>v6.3.14</h2>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.13...v6.3.14">6.3.14</a> (2022-02-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>remove string template from client code (<a href="91d5acda63">91d5acd</a>)</li>
<li>warn when <code>singleRun</code> and <code>autoWatch</code> are <code>false</code> (<a href="69cfc763c8">69cfc76</a>)</li>
<li><strong>security:</strong> remove XSS vulnerability in <code>returnUrl</code> query param (<a href="839578c45a">839578c</a>)</li>
</ul>
<h2>v6.3.13</h2>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.12...v6.3.13">6.3.13</a> (2022-01-31)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> bump log4js to resolve security issue (<a href="5bf2df3044">5bf2df3</a>), closes <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/3751">#3751</a></li>
</ul>
<h2>v6.3.12</h2>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.11...v6.3.12">6.3.12</a> (2022-01-24)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>remove depreciation warning from log4js (<a href="41bed33bf4">41bed33</a>)</li>
</ul>
<h2>v6.3.11</h2>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.10...v6.3.11">6.3.11</a> (2022-01-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> pin colors package to 1.4.0 due to security vulnerability (<a href="a5219c52e2">a5219c5</a>)</li>
</ul>
<h2>v6.3.10</h2>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.9...v6.3.10">6.3.10</a> (2022-01-08)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>logger:</strong> create parent folders if they are missing (<a href="0d24bd937f">0d24bd9</a>), closes <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/3734">#3734</a></li>
</ul>
<h2>v6.3.9</h2>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.8...v6.3.9">6.3.9</a> (2021-11-16)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>restartOnFileChange option not restarting the test run (<a href="92ffe60184">92ffe60</a>), closes <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/27">#27</a> <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/3724">#3724</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/karma-runner/karma/blob/master/CHANGELOG.md">karma's changelog</a>.</em></p>
<blockquote>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.13...v6.3.14">6.3.14</a> (2022-02-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>remove string template from client code (<a href="91d5acda63">91d5acd</a>)</li>
<li>warn when <code>singleRun</code> and <code>autoWatch</code> are <code>false</code> (<a href="69cfc763c8">69cfc76</a>)</li>
<li><strong>security:</strong> remove XSS vulnerability in <code>returnUrl</code> query param (<a href="839578c45a">839578c</a>)</li>
</ul>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.12...v6.3.13">6.3.13</a> (2022-01-31)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> bump log4js to resolve security issue (<a href="5bf2df3044">5bf2df3</a>), closes <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/3751">#3751</a></li>
</ul>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.11...v6.3.12">6.3.12</a> (2022-01-24)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>remove depreciation warning from log4js (<a href="41bed33bf4">41bed33</a>)</li>
</ul>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.10...v6.3.11">6.3.11</a> (2022-01-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> pin colors package to 1.4.0 due to security vulnerability (<a href="a5219c52e2">a5219c5</a>)</li>
</ul>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.9...v6.3.10">6.3.10</a> (2022-01-08)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>logger:</strong> create parent folders if they are missing (<a href="0d24bd937f">0d24bd9</a>), closes <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/3734">#3734</a></li>
</ul>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.8...v6.3.9">6.3.9</a> (2021-11-16)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>restartOnFileChange option not restarting the test run (<a href="92ffe60184">92ffe60</a>), closes <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/27">#27</a> <a href="https://github-redirect.dependabot.com/karma-runner/karma/issues/3724">#3724</a></li>
</ul>
<h2><a href="https://github.com/karma-runner/karma/compare/v6.3.7...v6.3.8">6.3.8</a> (2021-11-07)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>reporter:</strong> warning if stack trace contains generated code invocation (<a href="4f23b14d3e">4f23b14</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="c97e562319"><code>c97e562</code></a> chore(release): 6.3.14 [skip ci]</li>
<li><a href="91d5acda63"><code>91d5acd</code></a> fix: remove string template from client code</li>
<li><a href="69cfc763c8"><code>69cfc76</code></a> fix: warn when <code>singleRun</code> and <code>autoWatch</code> are <code>false</code></li>
<li><a href="839578c45a"><code>839578c</code></a> fix(security): remove XSS vulnerability in <code>returnUrl</code> query param</li>
<li><a href="db53785b3e"><code>db53785</code></a> chore(release): 6.3.13 [skip ci]</li>
<li><a href="5bf2df3044"><code>5bf2df3</code></a> fix(deps): bump log4js to resolve security issue</li>
<li><a href="36ad678320"><code>36ad678</code></a> chore(release): 6.3.12 [skip ci]</li>
<li><a href="41bed33bf4"><code>41bed33</code></a> fix: remove depreciation warning from log4js</li>
<li><a href="c985155a4e"><code>c985155</code></a> docs: create security.md</li>
<li><a href="c96f0c5529"><code>c96f0c5</code></a> chore(release): 6.3.11 [skip ci]</li>
<li>Additional commits viewable in <a href="https://github.com/karma-runner/karma/compare/v5.2.3...v6.3.14">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=karma&package-manager=npm_and_yarn&previous-version=5.2.3&new-version=6.3.14)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/google/skia/network/alerts).

</details>

This is an imported pull request from
https://github.com/google/skia/pull/92

GitOrigin-RevId: 3ea60ab04fd34441badcf9d6aaa4961cffacdf56
Change-Id: I6f6174fe27ae93d4774a299ca8769a4105395780
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507618
Reviewed-by: Ravi Mistry <rmistry@google.com>
2022-02-13 15:18:03 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
a63d89740c Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: I6bab3d99bab48eff5a1124be67556a14be038d37
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508256
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Bot-Commit: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2022-02-13 08:26:41 +00:00
skia-autoroll
139ffa19d9 Roll SK Tool from 696f0e56a26c to 9c1bd5650017
https://skia.googlesource.com/buildbot.git/+log/696f0e56a26c..9c1bd5650017

2022-02-13 skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com Update CIPD Packages

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

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Tbr: rmistry@google.com
Change-Id: I37fc61632f7d46fc667dba9e349f1b9f2210d658
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508217
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-13 06:07:10 +00:00
Christopher Dalton
80f272b62c Revert "Implement DashLinePathRenderer with a simple FP"
This reverts commit bbc4ee5e07.

Reason for revert: Not quite ready -- pref and gold regressions

Original change's description:
> Implement DashLinePathRenderer with a simple FP
>
> An SDF of the dash is implemented as a linear gradient, which is then
> converted to coverage by an inline runtime effect. Currently only
> non-perspective, non-hairline, AA butt caps are supported by the new
> FP. We can delete DashOp once the FP supports more types of strokes.
>
> Bug: skia:12872
> Change-Id: Ifb19fcc4a114aec1847de50aab7ee900f289ed33
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/505476
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Christopher Dalton <csmartdalton@google.com>

Bug: skia:12872
Change-Id: Iaec22481ecbda55b37c32f5f7e223ed43a3da071
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508097
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2022-02-12 17:58:51 +00:00
John Stiles
e4d3d3947c Synthesize uniforms/children in the SkRuntimeEffect fuzzer.
Previously, we used a fixed portion of the fuzzer input for uniform
data, and assumed zero children. Now we synthesize uniform and child
inputs based on the needs of the input shader. We no longer need to
reserve the last 256 bytes of each shader for uniform data; a followup
CL will remove the special corpus that this fuzzer used.

The contents of each uniform/child is not particularly important, since
we don't care what the final paint looks like. Each uniform is filled in
with increasing values in each slot, starting at zero (0, 1, 2, 3, ...).
Each child is a simple built-in shader/filter/blender.

(Fuzzer corpus change: https://github.com/google/oss-fuzz/pull/7266 )

Change-Id: Idc8bfcb17c10a470ef35fafc1789b915495e1d67
Bug: skia:12781
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507924
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-02-12 01:59:09 +00:00
John Stiles
1542db1a9b Add a test runtime effect for child effects.
I wasn't able to find any other test which exercised child color-filters
or child blenders. (SampleWithExplicitCoord evaluates from a shader.)

Change-Id: I58ecee3beca2d3dc11ded5de0eea031e1d7c3e1e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507922
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-02-12 01:06:57 +00:00
Brian Osman
503f2b7f71 Remove unnecessary semi-colons
Change-Id: I7a9d2b78865a4207be3ab1c1f613e9e829414f5d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507921
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-11 22:13:11 +00:00
Leandro Lovisolo
b7eaeadf3f [codesize] Add CodeSize-dm-Debian10-Clang-x86_64-Release task.
This CL adds the task driver and plumbing necessary to run CI tasks that upload build statistics to https://codesize.skia.org.

For now, a single CodeSize-dm-Debian10-Clang-x86_64-Release task is defined, which as the name suggests:

- Depends on Build-Debian10-Clang-x86_64-Release.
- Takes the "dm" binary built by the aforementioned job.
- Runs Bloaty against said binary.
- Uploads the Bloaty output, along with a JSON file with metadata, to the GCS bucket where https://codesize.skia.org gets its data from.

If one wishes to upload codesize statistics for another binary, the steps are as follows:

- Identify the target binary, for example "fm".
- Identify a compile task that builds said binary with the desired settings, for example "Build-Debian10-Clang-x86_64-Debug".
- Add a new job in //infra/bots/jobs.json named "CodeSize-<binary>-<compile task>", where <compile task> is the name of the compile task without the "Build-" prefix, for example "CodeSize-fm-Debian10-Clang-x86_64-Debug".
- Run "make train" from the //infra/bots directory.

Eventually the codesize.skia.org webserver will automatically pick up the output of any such CodeSize-* task and show it in the UI, with no additional steps needed.

One caveat is that the binary file name, and therefore the "<binary>" part of the task name, cannot contain dashes. This is due to how //infra/bots/gen_tasks_logic.go works. See comments in said Go file for ideas on how to work around this if we ever need to.

Bug: skia:12151
Change-Id: If406944ca7660c4dd15c8e6b8f34e48c65cbbe2f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502788
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Leandro Lovisolo <lovisolo@google.com>
2022-02-11 22:05:19 +00:00
Herb Derby
02b4f94536 Fix include from private to src
Change-Id: I1a7b587499749c583e5680323efceda7cf2e5e6d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507920
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-11 21:45:01 +00:00
Julia Lavrova
94b8dd6710 Reland "Adding a trace to nanobench for RP/VM comparison"
This reverts commit 39728eb980.

Reason for revert: Need to reland after I figure out what happened

Original change's description:
> Revert "Adding a trace to nanobench for RP/VM comparison"
>
> This reverts commit e855b1273f.
>
> Reason for revert: breaking the tree
>
> Original change's description:
> > Adding a trace to nanobench for RP/VM comparison
> >
> > Run nanobench with --compare key and collect data for comparison:
> > ./out/Release/nanobench --csv --config 8888 --skvm --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee VM.data
> > ./out/Release/nanobench --csv --config 8888 --forceRasterPipeline --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee RP.data
> > awk 'BEGIN {OFS=","; fileNum = 0} ($2 ~ /MB/) && fileNum == 0 {vmvmcycles[$3] = $6; vmvmscan[$3] = $8; vmvmpixels[$3] = $10; vmvminterp[$3] = $11;  vmrpcycle[$3] = $14; vmrpscan[$3] = $16; vmrppixels[$3] = $18} ($2 ~ /MB/) && fileNum == 1  {print $3, vmvmcycles[$3], vmvmscan[$3], vmvmpixels[$3], vmvminterp[$3], $6, $8, $10, $11, $14, $16, $18} ENDFILE {fileNum += 1}' VM.data RP.data > compare.csv
> >
> > You can see an example of comparison table here:
> > https://docs.google.com/spreadsheets/d/1Q57oz6Jn8JPQkPzUbtO0fcZh2VhwPhxwsLaHnSb9uR0/edit#gid=406063636
> >
> > Change-Id: I8fa35e3fb087bce00ab19355a3bc021334aa7a80
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501337
> > Reviewed-by: Herb Derby <herb@google.com>
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
>
> Change-Id: I6799b90ffd8bc05c65d1185bfc07a06af05e2038
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507182
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Julia Lavrova <jlavrova@google.com>

Change-Id: I3668b5a40f310598e23c922b1eb6f93db4dac13c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507183
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2022-02-11 21:25:46 +00:00
Derek Sollenberger
007fd156a0 Fix SkQP errors when built in the Android framework.
Bug: skia:12890
Change-Id: I81ab3c883fc085d02ff6984c799f2e7d840f7a1d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507916
Auto-Submit: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2022-02-11 20:48:50 +00:00
Ben Wagner
8fd41401f1 FreeType to draw COLR glyphs with drawables.
Bug: skia:12121
Change-Id: I616e1357e9209642b6e323e631f475e83e5c4b79
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507337
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-02-11 20:38:43 +00:00
Herb Derby
b4f87c81e0 expose typefaceID Translation for descriptors
An important part of serialization for slugs is maintaining the
translation of typefaceIDs from the renderer side to the GPU side.
Expose the translation code so that the slugs can use it.

Change-Id: I78ded1967759619a95fb13a1577cee3569927471
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507836
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-11 19:45:58 +00:00
Nathaniel Nifong
0d36473ebc Add android build files for skqp cts testing
Bug: skia:12890
Change-Id: I44dde188b7b7daf1c6e5c718b6b2874bbc28510d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506459
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2022-02-11 18:52:27 +00:00
Brian Osman
c8a35e5cfb Use SkNx to transform ALL points in SkMatrix::Scale_ptr
Avoids inconsistency with SkMatrix::mapRect.

Change-Id: I5c361e447d4011b2f91881cdbd8b79388f92ef09
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507839
Reviewed-by: John Stiles <johnstiles@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-11 18:52:09 +00:00
Jim Van Verth
e03b9d14a1 [graphite] Store isFBOnly flag in samplesKey
Change-Id: I409dbac3d8548551722e74e86e67bc7b3620f506
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507838
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2022-02-11 18:28:45 +00:00
Chris Dalton
bbc4ee5e07 Implement DashLinePathRenderer with a simple FP
An SDF of the dash is implemented as a linear gradient, which is then
converted to coverage by an inline runtime effect. Currently only
non-perspective, non-hairline, AA butt caps are supported by the new
FP. We can delete DashOp once the FP supports more types of strokes.

Bug: skia:12872
Change-Id: Ifb19fcc4a114aec1847de50aab7ee900f289ed33
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/505476
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Christopher Dalton <csmartdalton@google.com>
2022-02-11 17:54:12 +00:00
Herb Derby
1c0f1abd53 harden GrGlyphVector::MakeFromBuffer
Harden MakeFromBuffer with respect to the array length value.
* Check that the array count is not too large.

Change-Id: I5b398be1690fafce5be5b90ba8aa7af0f12be317
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507637
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-11 16:58:59 +00:00
Jim Van Verth
9af3a919ce [graphite] Hook up Surface::writePixels
Bug: skia:12845
Change-Id: I8013b0068ab758e9a5e580344c62e4680f4fa48e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506176
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2022-02-11 16:37:41 +00:00
Brian Osman
40d7426345 Remove isOpaque from SkRuntimeEffect::makeShader signature
Bug: skia:12643
Change-Id: Id5eecb3445082e747def8c87f99a16552857af3f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506462
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-11 16:05:01 +00:00
Greg Daniel
7caeb1bdb1 [graphite] Add calcuating of graphtie resource key for Textures in Caps
Bug: skia:12754
Change-Id: Ib4f1a9ac4ef16805cf8ca4e4c0eea0b3922ca28a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506465
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-02-11 16:03:46 +00:00
skia-autoroll
fac61d55f3 Roll ANGLE from d5df233189ca to 0a320d16fe80 (2 revisions)
d5df233189..0a320d16fe

2022-02-11 lubosz.sarnecki@collabora.com GetImageTest: Enable on Vulkan SwiftShader.
2022-02-11 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from bf99b2cc0f6b to c0b2804cbd93 (526 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 herb@google.com,robertphillips@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/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: herb@google.com,robertphillips@google.com
Change-Id: I1082a4dbdbe3c8d53b1d15e1a847b87b08731684
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507656
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-11 15:20:48 +00:00
John Stiles
9c111af64b Add more fuzzer-discovered programs to error tests.
These all stemmed from the same root cause, but are interesting and
distinct enough to include in our error tests.

Bug: oss-fuzz:44555, oss-fuzz:44557, oss-fuzz:44559, oss-fuzz:44561, oss-fuzz:44565
Change-Id: I22c1798809754b4b38c77ffbe369a97c64a2f60e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507636
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-02-11 14:42:43 +00:00
John Stiles
683ae40560 Fix for fuzzer-discovered error with deeply-nested expressions.
The fuzzer constructs a long, valid nonsense expression
(x+x+x-x+x-x, etc.) which exceeds parse depth. At that point, the token
stream points to a `+` token. The parser attempts to consume a new
statement but stops in `unaryExpression`; this fails again, due to the
max parse-depth, but doesn't consume a token. The parser continues
trying to parse the statement, but stopping in `unaryExpression`, making
no forward progress in an infinite loop.

I've made a couple of changes as a result.
- Exceeding the max parse depth now sets `fEncounteredFatalError`.
- Encountering a fatal error causes block() to immediately halt. This
  actually undoes a few of the arbitrary changes from
  http://review.skia.org/506463 but not in a bad way.
- `unaryExpression()` now consumes a token before checking parse-depth.
- `structDeclaration()` had a similar issue where it could potentially
  fail without consuming any tokens; this is fixed as well.
- Some unnecessarily-nested logic in ternaryExpression() was flattened
  while I tried to ensure that it always consumes a token.

Change-Id: I52c2161965ffbcef1185761ca6897ec1cba5df89
Bug: oss-fuzz:44551
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507436
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2022-02-11 14:25:34 +00:00
Herb Derby
a9ac0ce55d add flatten and MakeFromBuffer for GrGlyphVector
Serialize all the glyphID information for the different
sub runs.

Bug: chromium:1278340

Change-Id: I04387ffadcf5cb20fbaca17a02d7ca1faf883806
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507318
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-11 13:57:15 +00:00
Kevin Lubick
a59af6e4f2 Revert "Build CanvasKit using GN/Ninja"
This reverts commit ecac712bec.

Reason for revert: possibly breaking flutter, definitely breaking docker wasm builds

Original change's description:
> Build CanvasKit using GN/Ninja
>
> Build with
>
> ./bin/gn gen out/wasm_debug '--args=target_cpu="wasm"'
>
> or
>
> ./bin/gn gen out/wasm_release '--args=target_cpu="wasm" is_debug=false'
>
> Change-Id: Ib74586bf8397d57064a3899eaa6da76f9bce9049
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502036
> Reviewed-by: Kevin Lubick <kjlubick@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

Change-Id: I04dbb3b1cff7511064f603d7dc7c8a4168bf0d56
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507616
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-02-11 13:35:19 +00:00
Harry Terkelsen
ecac712bec Build CanvasKit using GN/Ninja
Build with

./bin/gn gen out/wasm_debug '--args=target_cpu="wasm"'

or

./bin/gn gen out/wasm_release '--args=target_cpu="wasm" is_debug=false'

Change-Id: Ib74586bf8397d57064a3899eaa6da76f9bce9049
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502036
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2022-02-11 13:05:44 +00:00
skia-autoroll
714ae3262d Roll ANGLE from 670a6e476ea4 to d5df233189ca (10 revisions)
670a6e476e..d5df233189

2022-02-11 cclao@google.com Vulkan: Disable EGLContextSharingTestNoSyncTextureUploads on Pixel6
2022-02-10 syoussefi@chromium.org Vulkan: Render the overlay in the graphics pipeline
2022-02-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from b594e2aabae9 to 071bfca11aa9 (1 revision)
2022-02-10 cclao@google.com Vulkan: Use Vulkan API directly for BufferPool's buffer allocation
2022-02-10 m.maiya@samsung.com Update GL_MAX_CLIP_DISTANCES_EXT validation
2022-02-10 steven@valvesoftware.com Vulkan: improve command buffer reset performance
2022-02-10 sweeper1203@gmail.com Support to open d3d12 shared handles
2022-02-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 0915ab4bddf7 to cbd31d271e4c (3 revisions)
2022-02-10 ynovikov@chromium.org Revert "Don't build dEQP tests on MSVC temporarily"
2022-02-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 60719c9cd084 to bf99b2cc0f6b (543 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 herb@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/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: herb@google.com
Change-Id: Ic71fec76984ca5f7b4ea57fea5d57ba849cd961c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507418
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-11 05:45:11 +00:00
skia-autoroll
f3ec7d63a0 Roll Chromium from 4c42b6a53bab to de0330e7e3fa (535 revisions)
4c42b6a53b..de0330e7e3

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 herb@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/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: herb@google.com
Change-Id: I19606c27bddfc064548edcca0c77e7c8759a1e2a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507416
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-11 05:22:15 +00:00
skia-autoroll
02bab9d2c7 Roll SwiftShader from cbd31d271e4c to 0863290dc7f6 (7 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/cbd31d271e4c..0863290dc7f6

2022-02-10 sugoi@google.com Add partial support of VK_EXT_extended_dynamic_state2
2022-02-10 sugoi@google.com Support VK_EXT_texel_buffer_alignment promoted features
2022-02-10 capn@google.com Fix shuffling of vectors with a different size mask
2022-02-10 sugoi@google.com VK_EXT_extended_dynamic_state support
2022-02-10 capn@google.com Remove unused sin/cos approximations
2022-02-10 capn@google.com Optimize SPIR-V sin and cos operations
2022-02-10 swiftshader.regress@gmail.com Regres: Update test lists @ cbd31d27

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 herb@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: herb@google.com
Change-Id: Idddfaa71ebd649bb937033cc9bd6bc6ed0e30efd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507417
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-11 04:58:05 +00:00
skia-autoroll
f683ab643f Roll Dawn from 47f051984b88 to a52abab38ce9 (12 revisions)
https://dawn.googlesource.com/dawn.git/+log/47f051984b88..a52abab38ce9

2022-02-11 senorblanco@chromium.org Nuke SPIRV-Cross.
2022-02-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 0b3dfef4698f to 98facb28abc8 (3 revisions)
2022-02-10 senorblanco@chromium.org OpenGL: use Tint for GLSL generation.
2022-02-10 brandon1.jones@intel.com Remove accidental unused Transform Manager
2022-02-10 enga@chromium.org Remove old src/tests/BUILD.gn
2022-02-10 brandon1.jones@intel.com Integrate Multiplanar External Texture Transform
2022-02-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 670a6e476ea4 to 118ce6aae027 (4 revisions)
2022-02-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 8bbdda7e89dd to 0b3dfef4698f (1 revision)
2022-02-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from cbd31d271e4c to a7f412ebb116 (1 revision)
2022-02-10 vadimsh@google.com Generate shorter bucket names in luci-scheduler.cfg.
2022-02-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 597fc4cdbe07 to 8bbdda7e89dd (3 revisions)
2022-02-10 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 9cfd872447fd to 670a6e476ea4 (7 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 597fc4cdbe07 to 98facb28abc8

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 amaiorano@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: amaiorano@google.com
Change-Id: Ie964aacfb9b9ca245f337e25f53bd51521325ee3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507419
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-11 04:58:01 +00:00
Michael Ludwig
d6d853d765 Integrate Wang's formula calculation into patch creation
Adds wangs_formula::quadratic_pow4, cubic_pow4, conic_pow2 overloads
that operate on float2 directly instead of having to load data from
SkPoints. This means that the fixed count tessellators now only load
their control points into float2s once (when creating a patch geometry)
and then evaluate Wang's formula on those points, vs. both patch
geometry and Wang's formula evaluation requiring reading from the
SkPoint[] data. Not sure how likely a compiler is to have automatically
reduced that work.

Change-Id: I18eeb3e81a7e4b38f3fdfe4cc652a468415857a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/502058
Reviewed-by: Christopher Dalton <csmartdalton@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-02-11 01:51:04 +00:00
Florin Malita
82d65d0487 Revert "Migrate compat v4 classes to androidx"
This reverts commit dec95f24e1.

Reason for revert: broke viewer build

The original CL was landed to keep upstream Skia the source of
truth when the changes were proposed directly in G3 in cl/414839941.

Original change's description:
> Migrate compat v4 classes to androidx
>
> Change-Id: I9dd1d4cbaaf0dc5c4dc8a7bd9155ae6334ab24af
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/480396
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>

Change-Id: I660ba61a3a777e18154c52e8eda63937be4d7b4a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507184
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
2022-02-11 00:51:39 +00:00
Jim Van Verth
74ce095463 [graphite] Rename skgpu::Surface_Graphite to skgpu::Surface
This to match the naming convention for skgpu::Device and the future
skgpu::Image.

Change-Id: Ide0448633f14cfcba583a24eaaceb24da8a58e90
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507317
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2022-02-10 21:50:41 +00:00
Herb Derby
7dcf3d0599 const uses of SkGlyph* -- const all the things!
Change-Id: I9c985a8c68efea0b24a51e87fa09569d927ae0c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506897
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-02-10 21:35:45 +00:00
Ethan Nicholas
e1e2a85820 Removed SkSL binary SystemType command
This command is redundant now that we have kBuiltin_Symbol.

Change-Id: Ia41d80b6601bd47e9ec9a14777adf7e1c71fb610
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507316
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2022-02-10 21:13:41 +00:00
Herb Derby
dd6596250d extract GlyphVector into GrGlyphVector
Extricate GlyphVector to test serialization which will be added to
it in the future.

Change-Id: I2baa01d92394b3f9af6fe4c3e14341ed453d572f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506885
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-10 19:44:39 +00:00
Julia Lavrova
39728eb980 Revert "Adding a trace to nanobench for RP/VM comparison"
This reverts commit e855b1273f.

Reason for revert: breaking the tree

Original change's description:
> Adding a trace to nanobench for RP/VM comparison
>
> Run nanobench with --compare key and collect data for comparison:
> ./out/Release/nanobench --csv --config 8888 --skvm --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee VM.data
> ./out/Release/nanobench --csv --config 8888 --forceRasterPipeline --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee RP.data
> awk 'BEGIN {OFS=","; fileNum = 0} ($2 ~ /MB/) && fileNum == 0 {vmvmcycles[$3] = $6; vmvmscan[$3] = $8; vmvmpixels[$3] = $10; vmvminterp[$3] = $11;  vmrpcycle[$3] = $14; vmrpscan[$3] = $16; vmrppixels[$3] = $18} ($2 ~ /MB/) && fileNum == 1  {print $3, vmvmcycles[$3], vmvmscan[$3], vmvmpixels[$3], vmvminterp[$3], $6, $8, $10, $11, $14, $16, $18} ENDFILE {fileNum += 1}' VM.data RP.data > compare.csv
>
> You can see an example of comparison table here:
> https://docs.google.com/spreadsheets/d/1Q57oz6Jn8JPQkPzUbtO0fcZh2VhwPhxwsLaHnSb9uR0/edit#gid=406063636
>
> Change-Id: I8fa35e3fb087bce00ab19355a3bc021334aa7a80
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501337
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Julia Lavrova <jlavrova@google.com>

Change-Id: I6799b90ffd8bc05c65d1185bfc07a06af05e2038
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507182
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2022-02-10 19:34:36 +00:00
Herb Derby
b6dfd97c52 const SkDescriptor::flatten
Change-Id: I4a37da74f9fc351cf62e9c028c38ac1f3f8c963a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506883
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-02-10 19:12:13 +00:00
Ben Wagner
db4a543e45 Implement SkRecordedDrawable::onApproximateBytesUsed
This allows recorded pictures finished as drawables to be used for glyph
drawing.

Change-Id: I717626eda2bf4e1659c8941c3217cb61c1a16cf4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506882
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-02-10 18:53:09 +00:00
Julia Lavrova
e855b1273f Adding a trace to nanobench for RP/VM comparison
Run nanobench with --compare key and collect data for comparison:
./out/Release/nanobench --csv --config 8888 --skvm --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee VM.data
./out/Release/nanobench --csv --config 8888 --forceRasterPipeline --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee RP.data
awk 'BEGIN {OFS=","; fileNum = 0} ($2 ~ /MB/) && fileNum == 0 {vmvmcycles[$3] = $6; vmvmscan[$3] = $8; vmvmpixels[$3] = $10; vmvminterp[$3] = $11;  vmrpcycle[$3] = $14; vmrpscan[$3] = $16; vmrppixels[$3] = $18} ($2 ~ /MB/) && fileNum == 1  {print $3, vmvmcycles[$3], vmvmscan[$3], vmvmpixels[$3], vmvminterp[$3], $6, $8, $10, $11, $14, $16, $18} ENDFILE {fileNum += 1}' VM.data RP.data > compare.csv

You can see an example of comparison table here:
https://docs.google.com/spreadsheets/d/1Q57oz6Jn8JPQkPzUbtO0fcZh2VhwPhxwsLaHnSb9uR0/edit#gid=406063636

Change-Id: I8fa35e3fb087bce00ab19355a3bc021334aa7a80
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501337
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2022-02-10 18:24:56 +00:00
Brian Osman
a7a2324f14 Reland "Add kR8_unorm_SkColorType"
This is a reland of 3225c8cc46

Original change's description:
> Add kR8_unorm_SkColorType
>
> Change-Id: I97b5bc7f90715664f233ca7b7c41c0ecbfc29ac4
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/505679
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

Change-Id: I73fa17625d57e0e58da1b70e2e59ba200383cfe7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506460
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-10 18:00:19 +00:00
Erik Rose
21cd6ff6a9 [infra] Make jobs for new Intel MacBook Pros
...based on conversation with jvanverth@ on 2022-02-04 in Skia GChat.
Change-Id: I463737e33e87f2052326f6231781a801ad5c320c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506877
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Erik Rose <erikrose@google.com>
2022-02-10 17:26:47 +00:00
Kevin Lubick
7b5c0de7ce [canvaskit] Improve error when non-matrix argument passed in
Follow-up to https://skia-review.googlesource.com/c/skia/+/506458

This will also make closure not rename the DOMmatrix arguments
(it wasn't happening, but it could have).

Change-Id: Id2e141ce777579d12c5c45a3bfe9661602fed3e6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506976
Reviewed-by: Brian Osman <brianosman@google.com>
2022-02-10 17:15:55 +00:00
Brian Osman
77326adc07 Remove isOpaque parameter from CanvasKit SkRuntimeEffect APIs
Bug: skia:12643
Change-Id: I285d42c908c75532b78c9b80da7b6145e1b47fe7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506458
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-10 17:15:13 +00:00
John Stiles
2332138185 Limit infinity support to GLSL 3.3 and above.
isinf() exists in GLSL 1.3 and above, but hardware without proper IEEE
support is allowed to always return false, so it's potentially
meaningless. In GLSL 3.3 and GLSL ES3+, isinf() is required to actually
identify infinite values. (GPUs are not required to _produce_ infinite
values via operations like `num / 0.0` until GLSL 4.1.)

Change-Id: I6d8cd70f47f653402d9eb2a0aed0773e54cfa61b
Bug: skia:12716
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506878
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Christopher Dalton <csmartdalton@google.com>
Commit-Queue: Christopher Dalton <csmartdalton@google.com>
2022-02-10 17:09:41 +00:00
John Stiles
1df7393e44 Enable warning -Wformat-nonliteral.
Change-Id: I5147bea5b113d41e1d47fabca51dfbbc961fa70f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506836
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-02-10 16:37:05 +00:00
John Stiles
2122f40c4b Update REPORTER_ASSERT/ERRORF to check format strings.
Previously, REPORTER_ASSERT/ERRORF relied on a helper function named
`reporter_string` which papered over zero-argument and one-argument
messages (where one-argument messages are assumed to ignore printf
formatting rules entirely, and just forward the message as-is).

Replacing this helper with a direct call to `SkStringPrintf` allows
the compiler to check format arguments for correctness, but sacrifices
the one-argument special case. In practice the one-argument special
case was very rarely used, so it's not a significant sacrifice,
and this did uncover several real errors in assertion format strings
(including some cases where the wrong number of arguments was passed).

Change-Id: I4378c43b16fd8fdbf4c78d849a9f2f0a254f7abc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506617
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2022-02-10 16:37:05 +00:00