Commit Graph

12316 Commits

Author SHA1 Message Date
Yunchao He 2d41a015d7 Report error immediately if pass ends twice
The previous code reports error till command encoder finish.

This change also updates webgpu-cts expectations.txt accordingly.

Bug: dawn:1578

Change-Id: I1fe758a02d9cfdb1440e3cabf10aea0bd60b9c59
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/116842
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Yunchao He <yunchao.he@intel.com>
2023-02-08 22:04:10 +00:00
Brendon Tiszka d0b284b00b Add Dawn Wire Server LPM Fuzzer [1/N]
Add scaffolding for structured Dawn wire fuzzer.

This CL contains a basic fuzzer for Dawn wire server
that shows some simple design ideas:

1) A basic protobuf spec that is generated using dawn.json
2) conversion from protobuf message to a dawn wire server
command.

This is not the complete implementation and serves as a
foundation for the fuzzer so that subsequent CLs will be
easier to review.

Bug: chromium:1374747
Change-Id: Ife1642dda13d01d3308bdd5fe56cf85978399fd3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/109406
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Brendon Tiszka <tiszka@chromium.org>
2023-02-08 20:43:18 +00:00
Corentin Wallez e4b4c4737e dawn.json: split pipeline async status error
GPUPipelineError differentiates between validation and internal errors,
so update the async pipeline creation status accordingly. The "error"
enum value is kept temporarily while Chromium is updated.

Bug: chromium:1404422
Change-Id: Iac8174a9a3d15068caa5dcf815123c5b2b99fe5f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119240
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
2023-02-08 19:36:53 +00:00
Dawn Autoroller 132be47737 Roll ANGLE from a4c7abcbc1eb to b6cc575478e2 (1 revision)
a4c7abcbc1..b6cc575478

2023-02-08 i.nazarov@samsung.com Vulkan: Fixed Wait Semaphores problems.

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 angle-team+autoroll@google.com,rharrison@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: rharrison@google.com
Change-Id: I3d851e1638f1117fb130f27764aa89b1a0b55f13
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119180
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-08 16:08:26 +00:00
Ben Clayton cf0e9301b2 tint: Improve the output of DependencyGraph
Add ResolvedIdentifier to hold the resolved AST node, sem::BuiltinType
or type::Builtin.

Reduces duplicate builtin symbol lookups in Resolver.

Bug: tint:1810
Change-Id: Idde2b5f6fa22804b5019adc14c717bebd8342475
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119041
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
2023-02-08 15:18:43 +00:00
Ben Clayton 9e36723497 tint: Rework TypesBuilder::array() to take attribute list
Instead of having the stride be yet another integer argument, make the
stride explicit by adding an attribute list parameter. This is more
consistent with other nodes.

Bug: tint:1810
Change-Id: I916d810f29afd172b878ded48b6701e8b299b13f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119040
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
2023-02-08 14:17:37 +00:00
Ben Clayton 5b50790d70 tint/reader: Use ProgramBuilder helpers
Eases the migration to unkeywording types.

Bug: tint:1810
Change-Id: If9ccdbf963550774b85b8cd15df8e37c271cde93
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118987
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
2023-02-08 12:35:19 +00:00
Dawn Autoroller 136ec1e3b4 Roll ANGLE from a54f91d01bfc to a4c7abcbc1eb (21 revisions)
a54f91d01b..a4c7abcbc1

2023-02-08 yuxinhu@google.com Advertise GL_OES_geometry_shader and GL_EXT_tessellation_shader
2023-02-08 kkinnunen@apple.com Reland "Metal: Avoid leaking buffers for GPU access for non-discrete"
2023-02-07 kaiyili@google.com Add finer memory allocation type
2023-02-07 kaiyili@google.com Use WARN to log the allocation info on allocation failure
2023-02-07 syoussefi@chromium.org Vulkan: Feature to make async queue slow for testing
2023-02-07 syoussefi@chromium.org Vulkan: Avoid swapchain recreation on present mode change
2023-02-07 cclao@google.com Vulkan: Switch CommandQueue::mInflightCommands to FixedQueue
2023-02-07 cclao@google.com Vulkan: Add FixedQueue class for CommandProcessor::mTask
2023-02-07 syoussefi@chromium.org Vulkan: Remove redundant ImageState::sourceType
2023-02-07 romanl@google.com Limit logging when invalid calls are not captured.
2023-02-07 i.nazarov@samsung.com Vulkan: Fix bug with ContextVk::mWaitSemaphores processing.
2023-02-07 cclao@google.com Vulkan: Make CommandProcessor only wait for required work
2023-02-07 i.nazarov@samsung.com Vulkan: Refactoring in RenderPassCommandBufferHelper.
2023-02-07 i.nazarov@samsung.com Vulkan: Fixed assert in DedicatedCommandBlockPool onNewCommand()
2023-02-07 ynovikov@chromium.org Remove valid_param_values.h exception from export_targets
2023-02-07 kbr@chromium.org Metal: Implement EXT_disjoint_timer_query.
2023-02-07 caraitto@chromium.org Fix broken links
2023-02-07 bsheedy@chromium.org Enable Skia Gold inexact matching
2023-02-07 romanl@google.com Improve logging when crashing due to locked screen.
2023-02-07 syoussefi@chromium.org Vulkan: Generalize AHB optimization prohibitions
2023-02-07 i.nazarov@samsung.com Vulkan: Use SubmitPolicy::AllowDeferred whenever possible.

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 angle-team+autoroll@google.com,rharrison@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: rharrison@google.com
Change-Id: Icfd160bfaf5ed674cf164f203c033c80c349f98c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119021
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-08 02:49:24 +00:00
Ben Clayton 35089ee437 tint: Use ProgramBuilder::Bitcast()
Change-Id: I3187027c8d24cfc0a18ed317a6586037346c97a3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118986
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-08 01:11:27 +00:00
shrekshao 9e03212925 Fix perf_test_runner.py to run with python3
perf_test_runner.py doesn't run properly after recent python migration.
Fix by decoding output (bytes) to string using utf-8 and then re.serach
the string.

Bug: None
Change-Id: Id988d0f5161d0c9edc827a48a3a30f8e60f8f814
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119080
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Shrek Shao <shrekshao@google.com>
2023-02-08 00:48:37 +00:00
Loko Kung 831ff0e39d Deprecates clearColor, clearDepth, and clearStencil values.
- Removes remaining usages of the values in Dawn and removes tests.
- Note that the values will be removed from the JSON entirely in
  follow up CL after Chromium side changes.

Change-Id: I30ccb3c412cd97047065ad515f6a5ff4de642420
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/117593
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
2023-02-07 23:51:11 +00:00
dawn-autoroll 8fd1de00e0 Roll vulkan-deps from 223515618c53 to 500224a602d5 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/223515618c53..500224a602d5

Changed dependencies:
* spirv-tools: 0ce2bc4ce0..c965624e34
* vulkan-validation-layers: 96f49d713e..59aa803960

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 rharrison@google.com,webgpu-developers@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: rharrison@google.com
Change-Id: Icee0c1f62abca1c10ad9e9bcad8004c2cb09c1c8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119060
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-07 21:29:31 +00:00
Ben Clayton d775a26d82 tint: Use ProgramBuilder::CallStmt()
Change-Id: I963d1c859b5bbb8d86f67194e7c0963dfc0e5b29
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118985
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
2023-02-07 21:28:09 +00:00
Ben Clayton 1ebada0dad tint: Use ProgramBuilder::Return()
Change-Id: I2de08d2d9274b0a849e44a5dafbeaf2a731318ce
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118984
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-07 21:28:09 +00:00
Ben Clayton 6adb65c488 tint: Use ProgramBuilder::Discard()
Change-Id: If71a771a65510ec7daa003f02958002d3fa83e3b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118983
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-07 21:28:09 +00:00
Ben Clayton 17aa653fa9 tint: Remove body_attributes param from ProgramBuilder::Func()
This belongs on Block(), not Func().

Also make Func() smarter about the `body` argument, allowing the caller
to pass an ast::BlockStatement*, ast::Statement* or nullptr.

Change-Id: I8ac6c1598b37f2a94615b452c5eb37671b4305fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118982
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-07 21:28:09 +00:00
Ben Clayton 1906857a50 tint: Remove ast::Void
WGSL does not have a void type. Functions that do not return a value
simply omit the return type from the function signature.

Change-Id: Id45adc008dce46115552e7dc401a2e27ae10eeb4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118981
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Ben Clayton <bclayton@google.com>
2023-02-07 21:28:09 +00:00
Kai Ninomiya 08fd42f08a Mark f32_arithmetic tests as slow for code-coverage builders
Bug: chromium:1399354
No-Try: True
Change-Id: I2641ab4dce8579a05dd873d6d37b1f5caece4cf0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119002
Reviewed-by: Austin Eng <enga@chromium.org>
Auto-Submit: Kai Ninomiya <kainino@chromium.org>
Kokoro: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
2023-02-07 21:19:46 +00:00
James Price d9c0f2178d tint/resolver: Make pointer aliasing a hard error
Fixed: tint:1675
Change-Id: I620ac9854395b35acd8d42090f854e37360983db
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119001
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-07 19:40:01 +00:00
Ben Clayton 01ac21cc9a tint: Rename ProgramBuilder::Construct() to Call()
Once all ast::Type derived classes are removed, there will be no
distinction between a type initializer / conversion and a function call.

Bug: tint:1810
Change-Id: Ic10fd1a0364a564d24dbe2499af0f1424641596c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118980
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
2023-02-07 16:14:25 +00:00
Jiawei Shao c272282e97 D3D12: Allocate renderable 2D textures as committed resources on Intel GPUs
This patch adds a workaround on Intel Gen9.5 and Gen11 GPUs to always
allocate renderable 2D textures as committed resources instead of
placed resources to mitigate a driver bug about CreatePlacedResource().

Bug: dawn:1628
Change-Id: I38062115d94933bd58e571c812ff6888e9781df6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100640
Commit-Queue: Austin Eng <enga@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2023-02-07 15:09:58 +00:00
Ben Clayton ad73301856 tint/type: Rename ShortName to type::Builtin
These will include the builtin language types.

Bug: tint:1810
Change-Id: I695a9ee833e1035eb1d17913d709038ae4c561d8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118502
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-02-07 13:35:58 +00:00
Dawn Autoroller a5ea0a1450 Roll ANGLE from 3e5b36e4e04f to a54f91d01bfc (5 revisions)
3e5b36e4e0..a54f91d01b

2023-02-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from bcb8f46b86b7 to 938d3a1fac4d (2 revisions)
2023-02-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 57f61361acfb to 223515618c53 (5 revisions)
2023-02-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 20c3dc51aba5 to 22b1fa2b9cc1 (546 revisions)
2023-02-07 i.nazarov@samsung.com Vulkan: Per Context Serial cleanup.
2023-02-06 lexa.knyazev@gmail.com Adjust TextureState::isStencilMode

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 angle-team+autoroll@google.com,rharrison@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: rharrison@google.com
Change-Id: Ia0cec82d38dd15e04c2a02192349346496b29589
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/119020
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-07 13:35:10 +00:00
dawn-autoroll 9b77640b93 Roll vulkan-deps from ca4b11bbbd2b to 223515618c53 (4 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/ca4b11bbbd2b..223515618c53

Changed dependencies:
* vulkan-validation-layers: 23d8187e72..96f49d713e

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 rharrison@google.com,webgpu-developers@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: rharrison@google.com
Change-Id: I81ebc999c3b1b8eefc1620a51d5d54b1579a7a7f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118960
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-07 07:31:41 +00:00
Dawn Autoroller 456de072fa Roll SwiftShader from 8b17fedd7b1c to 938d3a1fac4d (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/8b17fedd7b1c..938d3a1fac4d

2023-02-06 bclayton@google.com Merge changes Icd615355,I590a161a

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 rharrison@google.com,webgpu-developers@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: rharrison@google.com
Change-Id: Iac2c3692dfffc2216e61571fb8b0e5217b18649e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118940
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-07 07:31:25 +00:00
Dawn Autoroller e59fea574f Roll ANGLE from db8396fad855 to 3e5b36e4e04f (6 revisions)
db8396fad8..3e5b36e4e0

2023-02-06 cclao@google.com Vulkan: ContextVk::finishImpl only wait for context's serial
2023-02-06 i.nazarov@samsung.com Vulkan: Cleanup shared ring buffer cmd alloc feature.
2023-02-06 cclao@google.com Vulkan: Make Context::mLastSubmittedSerial to QueueSerial
2023-02-06 yuxinhu@google.com Add temp gn_response_file to $(genDir) directory in Android build
2023-02-06 m.maiya@samsung.com Vulkan: Bug fix in flushDescriptorSetUpdates(...)
2023-02-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 525984c7fd54 to 57f61361acfb (2 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 angle-team+autoroll@google.com,rharrison@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: rharrison@google.com
Change-Id: Iecdec2027bfc8ef7712d225dd70942546fd601e7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118921
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>
2023-02-07 00:27:02 +00:00
Peng Huang fd1e8a44f2 [GL] track buffer usage
With this CL, GL backend and other backends will use the similar way
to track buffer usage, so the GL MapAsync(Write) will not synchronize
GL commands anymore.

Change-Id: I9f8dfeb58faaed09ed62550371a30a680cd607d5
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118140
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Peng Huang <penghuang@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
2023-02-06 23:29:11 +00:00
James Price fc2083a616 tint: Make CreateScalar and ZeroValue members
This avoids the need to pass the `use_runtime_semantics_` flag at each
callsite.

Change-Id: I2cce3f147226e1295b5dfa0239beeacd519d5bb4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118641
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-06 22:01:48 +00:00
James Price 288969f735 tint/test: Remove SPIR-V test that is now invalid
SPIR-V tools has been updated with additional validation that rejects
this test.

Change-Id: Ifef29f718acc244d43452dde815e1d7c66128ebb
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118900
Reviewed-by: dan sinclair <dsinclair@google.com>
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-06 21:50:58 +00:00
James Price 40ffda4b5e tint/const-eval: Add flag to use runtime semantics
Add a flag to resolver::ConstEval to turn all overflow and range
errors into warnings, and return a valid (usually zero) value instead
of utils::Failure as defined by the WGSL spec for expressions
evaluated at runtime.

Change-Id: Icdce512306aabe717591134a1b4ba2d9c668f29c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118640
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2023-02-06 18:52:13 +00:00
Antonio Maiorano b3d5fb19bb Fix dump_shaders for Vulkan backend in CMake build
Change-Id: I6670abe2fbc77418a5923643db0d377d38212288
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118620
Reviewed-by: Austin Eng <enga@chromium.org>
Kokoro: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
2023-02-06 18:30:09 +00:00
dawn-autoroll 26286c67a9 Roll vulkan-deps from 57f61361acfb to ca4b11bbbd2b (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/57f61361acfb..ca4b11bbbd2b

Changed dependencies:
* spirv-tools: e9dc2c8ce1..0ce2bc4ce0

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 alanbaker@google.com,webgpu-developers@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: alanbaker@google.com
Change-Id: I4c310121f28d1dead29556f89e075b066156b292
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118860
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-06 17:57:47 +00:00
Dawn Autoroller 833697eb1e Roll SwiftShader from bcb8f46b86b7 to 8b17fedd7b1c (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/bcb8f46b86b7..8b17fedd7b1c

2023-02-06 syoussefi@google.com Support switching present modes with swapchain maintenance1

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 rharrison@google.com,webgpu-developers@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: rharrison@google.com
Change-Id: I0c3e285ae0afac25fb5d4363f4d043f22be8e686
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118880
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-06 17:55:07 +00:00
dan sinclair c1799cc75a Add a `tint_info` command.
This CL adds a second command `tint_info`. The `tint_info` command can
be used to dump information about a WGSL program to the console. This
includes things like the inputs and outputs to an entrypoint along
with structure information like offsets and alignments.

Bug: 1825
Change-Id: Ia2fb4be08b39c1a592f78a388d34edf9af8b6a0e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118643
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2023-02-06 16:28:37 +00:00
Dawn Autoroller c1a181c947 Roll ANGLE from c58d7079681b to db8396fad855 (1 revision)
c58d707968..db8396fad8

2023-02-06 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from c2710ae68385 to 20c3dc51aba5 (334 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 alanbaker@google.com,angle-team+autoroll@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: alanbaker@google.com
Change-Id: I788fb7d83c5985e9885bc7dc040025969de67ccf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118820
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-06 10:07:32 +00:00
Ben Clayton 0b4a2f1f50 tint: Add sem::Expression
A new base class for sem::ValueExpression, which other types of
expression can derive from.

Example: sem::TypeExpression - an expression that resolves to a type.

Bug: tint:1810
Change-Id: I90dfb66b265b67d9fdf0c04eb3dce2442c7e18ea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118404
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-02-05 22:59:40 +00:00
Ben Clayton ef1811a18b tint: static_assert that Sem.Get() template arg is needed
Change-Id: I91a73c22bd417fd9f32d45a1c91ffcb8f8d83d82
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118405
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-05 14:33:08 +00:00
dawn-autoroll 80e78e5a15 Roll vulkan-deps from 8dc08a77478e to 57f61361acfb (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/8dc08a77478e..57f61361acfb

Changed dependencies:
* spirv-tools: 7823b8ff4a..e9dc2c8ce1

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 alanbaker@google.com,webgpu-developers@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: alanbaker@google.com
Change-Id: I784c213a58e7114038cdbfc9c713ea1a164ee4bf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118780
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-05 13:37:19 +00:00
Ben Clayton 1591a16003 tools/format: Format .gn files too
Change-Id: I2ff7e099e4b8a4a71e1900fdd3f904630cb87a4d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118501
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-05 12:38:23 +00:00
Ben Clayton ad3156551c tint/ast: Add AccessorExpression
New base class to IndexAccessorExpression and MemberAccessorExpression.

Simplfies code that operates on both of these.

Change-Id: I02ce2e8180d7c1836f0b4d8e629e707e19e3539e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118403
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
2023-02-05 12:36:50 +00:00
Ben Clayton 8aaa2797c1 .gitignore: Rm src/dawn/node/tools/bin/
This is another old cache directory that shouldn't exist any more.

Change-Id: I3725108c49825a41a786e15e30e29ebb920c367e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118721
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-05 11:03:44 +00:00
Ben Clayton 97b8348086 Kokoro: Fix windows builds
The change to use `go run` over `go build` has upset the windows kokoro builds.

Use absolute paths.

Change-Id: Id9700529b3460a5ab579f82f616a95c3498c152c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118722
Kokoro: Kokoro <noreply+kokoro@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: James Price <jrprice@google.com>
2023-02-05 10:52:57 +00:00
dawn-autoroll 587a4cb278 Roll vulkan-deps from 525984c7fd54 to 8dc08a77478e (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/525984c7fd54..8dc08a77478e

Changed dependencies:
* vulkan-validation-layers: e7b63ce7ba..23d8187e72

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 alanbaker@google.com,webgpu-developers@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: alanbaker@google.com
Change-Id: Id523081110c86a71b308c845f835490681f4f04e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118740
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-05 00:22:23 +00:00
Ben Clayton 3fb9a3fba1 tint/sem: Rename Expression to ValueExpression
ast::IdentifierExpression may also resolve to a type or core enumerator

Bug: tint:1810
Change-Id: I85e3bea67e1146215079ec47430784f2fb39043d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118402
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-02-04 21:20:26 +00:00
Dawn Autoroller 3f5ae2bc54 Roll ANGLE from 6bdd90a7ca65 to c58d7079681b (1 revision)
6bdd90a7ca..c58d707968

2023-02-04 angle-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from 7ab598f59574 to 525984c7fd54 (14 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 alanbaker@google.com,angle-team+autoroll@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: alanbaker@google.com
Change-Id: Id202e192d7da60f3d13c82fb89b4542d8d5edfea
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118700
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>
2023-02-04 16:26:28 +00:00
Ben Clayton 95e9bf2a15 tools/run: Remove 'bin' cache
People keep on running the executable from the bin cache, wondering why stuff is out of date.

`go run` has pretty decent builtin caching, so just use that.

Change-Id: I6305a222f3f6b5b0b1ce23d7a89227aea96b9ef4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118720
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2023-02-04 16:15:54 +00:00
James Price 98dc5a86cc tint/ast: Make DiagnosticControl a plain struct
Introduce DiagnosticDirective, which contains a DiagnosticControl
struct (as does DiagnosticAttribute).

Bug: tint:1809
Change-Id: I204001266ee472d2ee2827614a306acad53f12ba
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118060
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2023-02-04 12:20:55 +00:00
James Price ededebbcf3 tint/test: Remove skips for tint:1818
The INT_MIN literal issue was fixed in the SPIR-V reader, so we now
generate valid WGSL for these tests.

Bug: tint:1818
Change-Id: Ib5ae62d08bbf24b2fc0b775dd7ad62bcac1340fe
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118642
Commit-Queue: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2023-02-04 12:18:40 +00:00
dawn-autoroll 02c927fb5f Roll vulkan-deps from 9bbdb1bd6767 to 525984c7fd54 (10 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/9bbdb1bd6767..525984c7fd54

Changed dependencies:
* glslang: d62ef8a20a..4386679bcd
* spirv-cross: 459fa67937..4e2fdb2567
* spirv-tools: 5890763734..7823b8ff4a
* vulkan-validation-layers: b44e1b1d07..e7b63ce7ba

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 alanbaker@google.com,webgpu-developers@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: alanbaker@google.com
Change-Id: I89ec607345c3887308e098352071d020ff5ac212
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118680
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>
2023-02-04 03:33:30 +00:00
Dawn Autoroller 8ee1c9a626 Roll ANGLE from 4391d807422a to 6bdd90a7ca65 (9 revisions)
4391d80742..6bdd90a7ca

2023-02-04 angle-autoroll@skia-public.iam.gserviceaccount.com Manual roll vulkan-deps from c7184adab227 to 7ab598f59574 (12 revisions)
2023-02-03 angle-autoroll@skia-public.iam.gserviceaccount.com Manual roll Chromium from 821732c56366 to c2710ae68385 (252 revisions)
2023-02-03 ynovikov@chromium.org Bypass commit message presubmit checks on manual rolls
2023-02-03 ynovikov@chromium.org Revert "Vulkan: Remove platform restriction of EGL_ANDROID_native_fence_sync"
2023-02-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 435efeefbc72 to a13cbc855993 (6 revisions)
2023-02-03 ynovikov@chromium.org Skip flaky crashing test on TSAN
2023-02-03 mark@lunarg.com Tests: Add Lilys Garden trace
2023-02-03 sywow.choi@samsung.com Vulkan: Remove platform restriction of EGL_ANDROID_native_fence_sync
2023-02-03 i.nazarov@samsung.com Vulkan: Minor CommandQueue implementation refactoring.

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 alanbaker@google.com,angle-team+autoroll@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: alanbaker@google.com
Change-Id: I906378a997bf603213550deb6d7804fa134459e2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118660
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2023-02-04 02:44:16 +00:00