Commit Graph

8759 Commits

Author SHA1 Message Date
Brandon Jones 857175e59b Add External Texture Gamma/Gamut Correction
Adds configurable gamma and gamut correction in Tint's external texture
transform. Adds constants in Dawn to perform correct conversion from
BT.709 to sRGB.

Bug: dawn:1082
Change-Id: Id5eecc37f0224541bf36e2f9757e7e2047e4b66b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87666
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Brandon1 Jones <brandon1.jones@intel.com>
2022-04-25 22:22:51 +00:00
Ben Clayton 67af208758 GN: Move dawn import into build_with_chromium cond
The import target does not exist in the tint repo.
This import is only used inside the `build_with_chromium` condition, so move the import into the condition.

Bug: crbug.com/1314527
Change-Id: I20051d63df9134e2dc5773f26cf2f8ee4df2354e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87860
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-25 22:01:48 +00:00
Ben Clayton 368b3eaae4 tools/src/cmd/perfmon: Fixes / improvements
• Fix up various references of 'tint' to 'dawn' post-migration.
• Round the CPU speed to 100MHz. This appears to fluctuate on reboots
  for some machines.
• Fix git.Log() - the Count was trimming from the wrong end, leading
  to perfmon spamming the github repo with repeat results.
• Instead of using google-benchmark's `--benchmark_repetitions` flag
  for repeating benchmarks, calculate averages by re-running the
  benchmark executable. Use '--benchmark_enable_random_interleaving'
  to randomize the order in which benchmarks are run, which greatly
  helps reduce noise in the averaged results.
• If the host machine supports CPU temperature sensors, wait for
  thermals to stabilise before running the benchmarks. Further helps
  reduce result noise.
• Breakout of the historic benchmarking loop every 15 minutes to check
  for new Gerrit changes to benchmark.
• When idle, attempt to re-benchmark historic results that are 'spiky'
  to reduce noise in the graphs.
• Specify more CMake flags to avoid building non-benchmark executables.
• Update the default base change for historic results. Attempting to
  use the old hash, which was prior to the tint -> dawn  merge makes,
  the git log go back to T0 on the dawn branch. We don't want to
  benchmark nearly 3k changes.

Change-Id: I8e59c7838720eb8bd11f217e9bd3104ba1eb51c3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87642
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-25 21:06:21 +00:00
dan sinclair 617583e30b Use the CTS --quiet flag.
This PR adds the --quite flag into the CTS runner command line. This
will suppress the summary information and the duplicate failure
information as it's already output by the run-cts test runner.

Change-Id: I4e885d416c7ab679551e76f3fc702aa7b5a3535f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87900
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Auto-Submit: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-25 20:24:41 +00:00
Antonio Maiorano 25775308a9 Implement support for Unicode Pattern_White_Space
Bug: tint:1505
Bug: tint:1513
Change-Id: I40fa29c766dc35213e0846071322523e7fc81b79
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86402
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-04-25 19:49:01 +00:00
Ryan Harrison d97ff53261 Update Starlark config to use 'main' branch
BUG=chromium:1318665

Change-Id: Ia312df037efef68bef038941719d649643c5c9a6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87880
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-25 16:39:44 +00:00
Dawn Autoroller a13dd2d6d1 Roll ANGLE from 2db718edf233 to c95bd5e7e882 (1 revision)
2db718edf2..c95bd5e7e8

2022-04-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 01fd48aca427 to f685346e2e51 (6 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-dawn-autoroll
Please CC bclayton@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: bclayton@google.com
Change-Id: I546e97842a4271d385e9daf7f89f7d17f3c75897
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87840
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-25 12:19:44 +00:00
dan sinclair cc74dc3dda run-cts split output to only colour titles.
Currently the entire block of output gets coloured in the CTS output.
This can lead to giant blocks of red and green on the screen which is
hard to read. This PR changes the output to only colour the title and
leave the message the default colour.

The skip colour of blue was changed to cyan as the blue was showing as
red on my terminal which makes it appear as an error instead of a skip.

Change-Id: Idb4fc053bb83c710871f75b997e1fc3e3fdea695
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87679
Auto-Submit: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-25 12:15:44 +00:00
Ben Clayton 90f4939948 Roll third_party/webgpu-cts/ f6b6dd548..501cb3643 (2 commits)
Update expectations and ts_sources

f6b6dd5487..501cb36438
 - 501cb3 Add api,validation,resource_usages,buffer,in_pass_encoder:* - Part II (#1197)
 - c334e4 Extend WGSL interpolate tests. (#1189)

Created with './tools/run cts roll'

Change-Id: I89cdad6d33b753942156d7312dea93da8ac71945
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87820
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-25 11:55:14 +00:00
Jiawei Shao bd0f0a279c Don't expose internal buffer usages in error messages
Previously the error messages about buffer usages would also include
the internal ones that are not set by the base WebGPU API (e.g.
kInternalStorageBuffer is showed when the buffer usage includes Indirect
or QueryResolve), which may confuse the developers.

This patch fixes this issue by implementing Buffer::GetUsageExternalOnly()
for front-end validations which only return the usages with which the
buffer was created using the base WebGPU API.

BUG=dawn:1382

Change-Id: Ie13135efaf2c3dab729d75a80eff486efa525c7e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87382
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-25 08:38:17 +00:00
dawn-autoroll 534a353c7c Roll vulkan-deps from 032c36ec6963 to f685346e2e51 (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/032c36ec6963..f685346e2e51

Changed dependencies:
* vulkan-validation-layers: 616ab50b44..af9e2e43a0

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

Bug: None
Tbr: shrekshao@google.com
Change-Id: Iaf941cd669140a19ce927abc7ccc86768f220ef6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87800
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-25 00:43:46 +00:00
Dawn Autoroller f410a9b7ff Roll ANGLE from 158951600b6e to 2db718edf233 (3 revisions)
158951600b..2db718edf2

2022-04-23 syoussefi@chromium.org Vulkan: Skip empty submissions
2022-04-23 abdolrashidi@google.com Split Context ResourceUseList to RP Commandbuffers
2022-04-23 abdolrashidi@google.com Split Context ResourceUseList to RP Commandbuffers

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC shrekshao@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: shrekshao@google.com
Change-Id: If83b2f14d2582678f14b24b9d572499a8289464b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87780
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-23 13:31:52 +00:00
dawn-autoroll 5e2206f8e2 Roll vulkan-deps from 53cf7fe2f4c4 to 032c36ec6963 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/53cf7fe2f4c4..032c36ec6963

Changed dependencies:
* glslang: 06ac141412..e3bca2add6
* vulkan-validation-layers: bfdb4dfafa..616ab50b44

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

Bug: None
Tbr: shrekshao@google.com
Change-Id: Ibf3a5b56c6180115d60a4a6f03c2122ad1148568
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87760
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-23 09:31:32 +00:00
Ben Clayton 00e845cfdf Roll third_party/webgpu-cts/ 45d2ccd25..88c034819 (4 commits)
Update expectations and ts_sources

45d2ccd250..88c0348191
 - 88c034 ShaderValidationTest: remove string overload (#1184)
 - 93932e Split WGSL test files (#1183)
 - 40b847 Minor comment fixes
 - 6f46b8 Cleanup old WGSL test files. (#1181)

Created with './tools/run cts roll'

Change-Id: I35ea8385af6ddc09c43833d40395c80f7d060002
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87703
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-23 01:11:22 +00:00
Dawn Autoroller 1ad22d5de1 Roll ANGLE from 8f56edfdd361 to 158951600b6e (10 revisions)
8f56edfdd3..158951600b

2022-04-22 kkinnunen@apple.com Avoid leaking gl::Framebuffers in gl::Context
2022-04-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 158676f39f3b to 01fd48aca427 (13 revisions)
2022-04-22 ianelliott@google.com Further expand Vulkan end2end_test skip
2022-04-22 romanl@google.com Use _FindAdb (cached) directly instead of Adb wrapper.
2022-04-22 romanl@google.com Switch py_utils import to pathlib.
2022-04-22 ianelliott@google.com Suppress VVL UNASSIGNED-BestPractices-SemaphoreCount
2022-04-22 jmadill@chromium.org Revert "Vulkan: Cache ImageView serials on texture changes."
2022-04-22 cclao@google.com Vulkan: Add feature avoid HOST_VISIBLE and DEVICE_LOCAL combination
2022-04-22 romanl@google.com Fall back to adb on PATH if platform-tools not present.
2022-04-22 jmadill@chromium.org Track Surface color & depth/stencil init separately.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC shrekshao@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: shrekshao@google.com
Change-Id: Ia3a203170184cdb7e6bad8dba55ba44edec7e2ca
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87740
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-23 00:31:37 +00:00
Stephen White 790e4c2d60 GLSL writer: emit gl_PointSize = 1 in all vertex shaders for OpenGL.
The OpenGL ES 3.1 spec says:

"The point size is taken from the shader built-in gl_PointSize written by the vertex shader, and clamped to the implementation-dependent point size range. If the value written to gl_PointSize is less than or equal to zero, or if no value is written, the point size is undefined."

ANGLE/D3D11 will emit a warning on this and abort processing, causing dawn_end2end tests to fail.

Bug: dawn:1390
Change-Id: I6a56467842ba80d8a070af7240ee07bb111089dd
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87720
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-04-22 21:25:02 +00:00
dawn-autoroll c0fe68907b Roll vulkan-deps from df3a617e7556 to 53cf7fe2f4c4 (9 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/df3a617e7556..53cf7fe2f4c4

Changed dependencies:
* vulkan-headers: 76f00ef6cb..8ba8294c86
* vulkan-loader: 71bd6240af..155ca6b868
* vulkan-tools: ef20059aea..a9d2badae2
* vulkan-validation-layers: d3be3175c2..bfdb4dfafa

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

Bug: None
Tbr: shrekshao@google.com
Change-Id: Ice6496a9bc641f8b928bc8e50837c67a3eddb171
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87678
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-22 20:09:33 +00:00
James Price e6d7ea708a tint: Use resolved source var in the Inspector
This replaces the manual AST traversal code that was used to determine
the originating resources for textures and samplers.

Change-Id: I463e9dac836ab5d42d9b5559cda5cd35b154e588
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87608
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-04-22 17:40:33 +00:00
James Price a9d8da4434 tint: Use resolved source var in LocalizeStructArrayAssignment
Fixed: tint:1341
Change-Id: Ic88623bd5891d3d7d32400825e02122c36102803
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87607
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
2022-04-22 17:40:33 +00:00
James Price 98eb169692 tint: Track originating variables in the resolver
Attach the source variable to the sem::Expression nodes.

Bug: tint:1341
Change-Id: I71d8fcf5920c4daab9035c7a5615b34378889dac
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87606
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-22 17:40:33 +00:00
Dawn Autoroller 0690b9623e Roll SwiftShader from 71f3089b729c to f13461dbb23c (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/71f3089b729c..f13461dbb23c

2022-04-22 capn@google.com Mark Reactor routine parameters 'noundef'

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-dawn-autoroll
Please CC shrekshao@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: shrekshao@google.com
Change-Id: Iebce535a69b0410a741d5de28b8be615cc1d15b6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87677
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-22 16:23:42 +00:00
Antonio Maiorano eba0e85c33 tint: make Lexer use line breaks from Source::File
Before this change, we duplicated line break parsing in both
Source::File and Lexer. This change makes it so that the Lexer no longer
looks for line breaks, instead relying on Source::File for this info.
This de-duplication will also help in implementing the latest spec
changes with respect to line breaks (CRLF vs CR, etc).

Bug: tint:1505
Bug: tint:1513
Change-Id: Ifa820f75ede7e82822525282127e05d2fea047e1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87604
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2022-04-22 15:34:21 +00:00
Corentin Wallez d51b47ac67 remove_files.py: Print warnings on removals
This will make it easier to debug build issues happening because if this
script in the future.

Bug: chromium:1314527
Change-Id: I5bbb4082ac816f98860e621917bc35b26ba7cb29
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87700
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-04-22 12:13:41 +00:00
Dawn Autoroller 5c284f456c Roll ANGLE from 0439d9cd25b4 to 8f56edfdd361 (2 revisions)
0439d9cd25..8f56edfdd3

2022-04-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 408793418c48 to 192db13f8509 (548 revisions)
2022-04-21 ianelliott@google.com Revert "CGL, MTL: pbuffer for IOSurface fails for some formats"

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC shrekshao@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: shrekshao@google.com
Change-Id: I35e72539a30ab72a10548c60e694e7f4a563c159
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87676
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-22 11:23:11 +00:00
Fumitoshi Ukai a238e7bf9d tint_generator_wgsl_corpus should wait for remove_stale_autogen_files
remove_stale_autogen_files will remove files in
gen/third_party/daw/src/tint/fuzzers, so build
failed flakey with no such file under this directory
if remove_stale_autogen_files run after tint_generator_wsg_corpus
action.

add deps to remove_stale_autogen_files to make sure
tint_generator_wgsl_corpus runs after remove_stale_autogen_files run.

Bug: crbug.com/1314527
Change-Id: Ic072d1c80719cd1c1cf29b1ad4463792018ebb94
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87680
Auto-Submit: Fumitoshi Ukai <ukai@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2022-04-22 10:08:52 +00:00
Austin Eng 390b5a2176 Generalize expectation for recently added suppression.
intel-0x3e92 was not added, but intel-0x5912 was - leading
to flaky CQ rejection depending on what bot happened to run
the task.

Generalize this expectation since it fails on all platforms
anyway.

Bug: dawn:1387
Change-Id: Iccd4806de456a817edf538041445ee2ac93099e7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87675
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Austin Eng <enga@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-22 08:10:51 +00:00
Stephen Gutekanst c2f9fea56b dawn/native: Fix undefined behaviour in BindGroupTracker when passing no dynamic offsets
In [Mach engine](https://machengine.org), we compile Dawn's C++ sources using Zig as the C/C++
compiler and Zig's build system (we don't use Dawn's regular build system.) Zig uses clang
with UBSan enabled by default: this caught this instance of undefined behavior, where passing
no dynamic offsets would result in memcpy being called with size 0.

We've encountered at least [one other instance of undefined behavior](https://github.com/hexops/mach/issues/239)
via UBSan in addition to this one, which I will send another CL to fix soon. I'll also verify
we don't see any other instances of UB.

Bug: dawn:1371

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
Change-Id: Ifc3b938e990b6a0a3b203796ea99ee5abb9a4a09
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87380
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2022-04-22 04:53:21 +00:00
Austin Eng 81a3c7cbdf Add back fail expectation on CTS Windows x86
Cq-Include-Trybots: luci.chromium.try:dawn-try-win10-x86-rel
Change-Id: I229846e8a9a4e8b047f23fc5b9134691022c96a9
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87611
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-22 02:39:51 +00:00
Austin Eng 0c12837348 Make the dawn-try-win10-x86-rel trybot includable
So manual builds can be triggered against it.

Change-Id: Ib47bf7bf4a74cef4aebf57e95f3b1c23694a5509
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87669
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-21 23:37:19 +00:00
Ben Clayton 66b70ec1a0 Roll third_party/webgpu-cts/ a06666e00..45d2ccd25 (3 commits)
Update expectations and ts_sources

a06666e000..45d2ccd250
 - 45d2cc Fixed TS errors
 - 5eacfb Take new createView() dimension default logic into account
 - cbdcbd Explicitly destroy devices created by requestDevice_limits

Created with './tools/run cts roll'

Change-Id: I701bc9e6fa6b1996b1ed40b08766cc9dedaf20d8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87621
Reviewed-by: Brandon Jones <bajones@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-21 23:18:10 +00:00
Dawn Autoroller 63f44b8b30 Roll ANGLE from b2a1f0d28a62 to 0439d9cd25b4 (25 revisions)
b2a1f0d28a..0439d9cd25

2022-04-21 jmadill@chromium.org Vulkan: Update glslang wrapper TODO.
2022-04-21 jmadill@chromium.org Revert "Re-land: "Vulkan: Support Wayland""
2022-04-21 jmadill@chromium.org Expand Vulkan end2end_test skip.
2022-04-21 sugoi@google.com Disable MSAN in the Vulkan loader
2022-04-21 jmadill@chromium.org Android: Add //build to blueprint.
2022-04-21 Guoxing.Wu@arm.com Vulkan: use "undefined" for layerProvokingVertex
2022-04-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from ea5f37f39193 to 71f3089b729c (5 revisions)
2022-04-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from a434f1de2483 to 408793418c48 (456 revisions)
2022-04-21 lexa.knyazev@gmail.com Avoid IOError in capture_replay_tests.py
2022-04-21 steven@valvesoftware.com EGL: allow eglQueryString(EGL_NO_DISPLAY, EGL_VERSION)
2022-04-21 syoussefi@chromium.org Add a test for backwards mip generation with draw
2022-04-20 cclao@google.com Vulkan: Remove BufferVk::mHasBeenReferencedByGPU
2022-04-20 senorblanco@chromium.org D3D: unsuppress some now-passing tests.
2022-04-20 abdolrashidi@google.com Vulkan: Add perf test for MSAA swapchain resolve
2022-04-20 syoussefi@chromium.org Vulkan: Fix surface invalidate w.r.t shared present mode
2022-04-20 cnorthrop@google.com Tests: Add Free Fire Max trace
2022-04-20 jmadill@chromium.org Vulkan: Cache ImageView serials on texture changes.
2022-04-20 romanl@google.com Use adb directly (instead of catapult) in gold tests.
2022-04-20 jmadill@chromium.org Fix validate state cache after XFB buffer deleted.
2022-04-20 gman@chromium.org Metal:Clear Backbuffer when Robust Resource Init enabled
2022-04-20 kkinnunen@apple.com CGL, MTL: pbuffer for IOSurface fails for some formats
2022-04-20 jmadill@chromium.org Vulkan: Renaming "ShaderBuffers" to "ShaderResources".
2022-04-20 antonio.caggiano@collabora.com Re-land: "Vulkan: Support Wayland"
2022-04-20 syoussefi@chromium.org Fix ANGLEGetDisplayPlatform after method deprecation
2022-04-20 wnwen@chromium.org Switch to using //build/android:build_java

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC shrekshao@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: shrekshao@google.com
Change-Id: I4120222ee498e0fb82dd935ee4e62f03202328ce
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87668
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-21 22:37:16 +00:00
Aleksi Sapon 4e1c65d030 Fix dawn_version_generator.py on Windows when not using depot_tools
Find git using shutil.which() so extensions are resolved according to PATHEXT.

Remove the "print(e)" that is breaking the expected output.

Bug: dawn:1383
Change-Id: If299b744add0797036598129e08ba7d8c64002e1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87481
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Loko Kung <lokokung@google.com>
2022-04-21 21:35:26 +00:00
James Price aacad7c65e tint: Update FirstIndexOffsetTest expected results
The change in https://dawn-review.googlesource.com/c/dawn/+/84240
modified the code generated by this transform, but didn't update the
Tint unit tests (which are not yet being run on Dawn's CQ).

Change-Id: I32d097d052f01628c3f8f5520c900b83422707e3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87605
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-21 20:52:36 +00:00
dan sinclair a2e94a5ac3 Fix readability/todo issues.
This CL adds names to the TODOs which did not have them and enables
the readability/todo lint. The names are based on the git blame for
the TODO lines.

Bug: dawn:1339
Change-Id: I25a2920bc8fa9606f5dda67a629fdef1c10f8948
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87600
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-04-21 20:48:11 +00:00
dan sinclair b0acbd436d Fix build/namespaces issues
This CL fixes up various build/namespaces lint errors and enables
the lint check.

Bug: dawn:1339
Change-Id: Ib2edd0019cb010e2c6226abce6cfee50a0b4b763
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87482
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-04-21 16:46:56 +00:00
Brandon Jones 6cb57a9847 Change External Texture YUV-to-RGB Conversion to Use Matrix
Changes Dawn and Tint to use a 3x3 matrix for external texture
YUV-to-RGB conversions. This will allow us to use standard matrices
as they exist in SkYuvMath.

Bugs: dawn::1082
Change-Id: I8e0c7c3dc1c085d8f336da956aea9496913b70fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86847
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Brandon1 Jones <brandon1.jones@intel.com>
2022-04-21 16:02:36 +00:00
Ben Clayton 931a4ddb1c Update WebGPU CTS expectations
• Remove a number of expectations that are no longer needed.
• Change a number of expectation tags to be more specific.
• Sort the expectations per chunk.
• Add a few more wide-wildcard 'Failure' rules for tests that commonly flake.

Bug: dawn:1342
Change-Id: I0e23cd546f7ab54a5720e24c52e3782b5df6b99f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87520
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-21 14:58:23 +00:00
dan sinclair f05575bb21 [tint] Move validation code into a Validator class.
This CL moves the Validate methods from the Resolver into a specific
Validator class used by the Resolver.

Bug: tint:1313
Change-Id: Ida21a0cc65f2679739c8499de7065ff8b58c4efc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87150
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-04-21 13:40:16 +00:00
Loko Kung 4091e0fa9c Factor out common cache testing code.
- To be used for pipeline cache testing.
- Plumbs overriding the platform to the adapters for testing.
- Restructures build a little bit so that the test infrastructure can have full access to dawn native internals. Also differentiates end2end and white_box a bit more to make it clear that end2end should not have access to dawn native internals.

Bug: dawn:549, dawn:1374
Change-Id: Ibcc6c44a116c7967ee2317c74409f613e896eb0a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86841
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
2022-04-21 03:14:37 +00:00
Yunchao He 12d45e2068 Update webgpu-cts/expectations.txt
Fixed: dawn:1289
Change-Id: I5229653973990550d6c867e17100bf83de16a6e2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87500
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-21 02:55:55 +00:00
Enrico Galli 45ec7c3528 D3D12: Duplicate first/baseVertex on Draw[Indexed]Indirect
Adds support for non-zero first/baseVertex on Draw[Indexed]Indirect by
duplicating the first/baseVertex indirect parameter onto a root
constant in the indirect buffer.

Change-Id: I280149065179806d3e57b07f1a396f9e2e4e8fcb
Bug: dawn:548
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84240
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Enrico Galli <enrico.galli@intel.com>
Auto-Submit: Enrico Galli <enrico.galli@intel.com>
2022-04-21 02:25:35 +00:00
Loko Kung cf078766c2 Adds typing to cache keys to avoid clashes.
Bug: dawn:549
Change-Id: Ic3c737e62ae3bfcd1b20d923373a66f380d96149
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86401
Reviewed-by: Shrek Shao <shrekshao@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-21 02:04:57 +00:00
dawn-autoroll 65426d9325 Roll vulkan-deps from 158676f39f3b to df3a617e7556 (6 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/158676f39f3b..df3a617e7556

Changed dependencies:
* spirv-headers: 82becc8a8a..46b7918218
* spirv-tools: 2b2b0282af..671f6e633f
* vulkan-validation-layers: 5896a701e1..d3be3175c2

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

Bug: None
Tbr: shrekshao@google.com
Change-Id: I685c925f2ce284f00864f3a83d789c3d7207635b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87462
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-21 01:38:23 +00:00
Dawn Autoroller c4b03ed854 Roll SwiftShader from ea5f37f39193 to 71f3089b729c (5 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/ea5f37f39193..71f3089b729c

2022-04-20 capn@google.com Revert "Temporarily ignore unsupported feature struct"
2022-04-20 swiftshader.regress@gmail.com Regres: Update test lists @ 88fe9ce0
2022-04-20 capn@google.com Automate downloading .git/hooks/commit-msg
2022-04-20 capn@google.com Run all LLVM passes in LLVMJIT.cpp
2022-04-20 swiftshader.regress@gmail.com Regres: Update test lists @ ea5f37f3

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-dawn-autoroll
Please CC shrekshao@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: shrekshao@google.com
Change-Id: I38baad166c75e19f0534dc519bea947505111012
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87401
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-21 00:08:25 +00:00
Loko Kung 6d9b322958 Adds new BlobCache "re-declaration" of PersistentCache.
- Note: goal is to merge the two into the same class, but to avoid breaking/fixing the current D3D12 shader caching, introducing a new one, and will merge the old one later on.
- Adds instance of BlobCache to the Instance, and passthrough for the Device to get to it. (We want the cache to be at the Instance so that eventually different devices can still use the cache (assuming same isolation key)).

Bug: dawn:549
Change-Id: Ib7c82a439f32b306f0cccd3db424fb0e427a90a1
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86400
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Loko Kung <lokokung@google.com>
2022-04-20 23:56:25 +00:00
Austin Eng 775fee6b6a Check GLFW window creation before discovering GL adapters
GLFW window creation can fail. If so, we should not attempt to
make the context current and create adapters on it.

Bug: dawn:1375
Change-Id: Ie1a94a42d1f56514b41a715add7a2b4eebb763f0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87460
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-04-20 20:56:15 +00:00
Ben Clayton 2363ad16ea tools/src/cts/result: Add more helpers
Add result.List.StatusTree() for building a query.Tree[Status].
Add helpers for serializing results.
Add helpers for merging and de-duplicating results.

Change the interface of result.List.ReplaceDuplicates() so that the
merging function takes a status set instead of a list of results.

Bug: dawn:1342
Change-Id: I77580ec5fd4c8f12109fb6e9e83afea8b740260c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87240
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-04-20 19:10:42 +00:00
Ben Clayton 1a10b73552 tools/src/cts/query: Add Tree
A tree of query to data. Has utilities for reducing the tree based on a
custom merger function.

Bug: dawn:1342
Change-Id: If1c0503be05ee04bcf55dd5bdc9aa3caf6fb56ee
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87222
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-04-20 19:10:42 +00:00
dan sinclair 4c9b72b4fa Fixup readability/casting lint issues
This CL fixes a few readability/casting issues and enables the lint
check.

Bug: dawn:1339
Change-Id: Ib0d127c3e01fad9b5ac074d8ca09f3a1956ad4fc
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/87020
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-04-20 19:02:29 +00:00
dan sinclair 3e0547df6c Ignore remaining explicit warnings.
This CL ignores the remaining explicit warnings and enables the lint
flag.

Bug: dawn:1339
Change-Id: Idabc062c3d1a7ec563115dbfd600e80a908c856d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/86873
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-04-20 18:24:15 +00:00