9714 Commits

Author SHA1 Message Date
EriKWDev
3efd640178 naga: Correct spelling in wgsl parsing rg11b10float -> rg11b10ufloat (#8219) 2025-09-21 10:41:17 +00:00
Andie Bradley
f6005a16c8 Include FreeBSD in conditional compile attributes (#8246) 2025-09-20 22:46:46 -04:00
Teodor Tanasoaia
0b38e96379 [msl] vertex pulling: fix unpacking snorm16x2 & snorm16x4 (#8249) 2025-09-19 18:11:31 -04:00
Andy Leiserson
68199042ed Remove unused stale copy of webgpu.idl (#8242) 2025-09-18 23:48:58 -04:00
Andy Leiserson
c7fd582f05 docs(README): Update statement on naga spec conformance (#8233) 2025-09-16 10:45:48 -04:00
Matthias Reitinger
b55c24cf27 [naga wgsl-in] Allow trailing comma in switch cases (#8165) 2025-09-16 07:58:23 -04:00
renovate[bot]
023f124fa5 chore(deps): update cts digest to 7a9fcc3 (#8227)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-16 07:56:22 -04:00
Andy Leiserson
aee8cd1650 Lazy-load the dcomp library (#8216) 2025-09-15 11:48:28 -07:00
Andy Leiserson
04a3401638 Extract command encoding to free functions (#8210) 2025-09-11 15:15:33 -04:00
Andy Leiserson
67bdd80a38 Add cbindgen:ignore directives (#8212) 2025-09-11 19:10:05 +00:00
Andy Leiserson
6815bd364d chore(deps): Update bitflags version (#8209)
I think what happened here is that another reference to 2.9.3 was added
to Cargo.lock in parallel with the renovate change that bumped the
version to 2.9.4.
2025-09-11 15:09:13 -04:00
Benoît du Garreau
33a45e16e0 wgpu: Remove Arc in WebGPU backend 2025-09-11 15:08:38 -04:00
Benoît du Garreau
1bef4ff193 wgpu: Make CommandBuffer not shared/clonable 2025-09-11 15:08:38 -04:00
Andy Leiserson
aaf52e93d9 Move some *Copy*Info types out of wgpu_core::command::transfer
In the future `transfer` will want to use the `Arc` versions of these
types. I have exported them from `wgpu_core::command::ffi`, to document
that these are used for FFI purposes, and from `wgpu_core::command`, for
backwards compatibility, although I also change the in-tree uses to
use them from `wgpu_types` instead of from `wgpu_core::command`.
2025-09-11 10:20:03 -07:00
Andy Leiserson
d79a49a060 Rename commands to trace_commands 2025-09-11 10:20:03 -07:00
Andy Leiserson
718497356c Move enum Command from device::trace to command::encoder_command. 2025-09-11 10:20:03 -07:00
Andy Leiserson
c0c16078e9 Rename and relocate ID resolution helpers 2025-09-11 10:20:03 -07:00
Andy Leiserson
885845087f Extract the parts of PassState that apply to the base encoder
And rename a few things.
2025-09-11 10:20:03 -07:00
Andy Leiserson
f4ea8642a5 docs(CHANGELOG): Update pull request reference (#8208) 2025-09-11 00:52:02 -04:00
Magnus
54ce9f7f98 Update shader bencher to share some logic with snapshots (#8108)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2025-09-11 00:55:42 +00:00
Andy Leiserson
d31d944ed5 Clarify the effect of the SUBGROUP features and capabilities (#8203) 2025-09-10 20:53:56 -04:00
Andy Leiserson
3758b08be9 Update cts to 20d2805 (#8201) 2025-09-10 20:50:25 -04:00
Night_Hunter
3902b0c11c Add support for builtin DComp swapchains (#7550)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
Co-authored-by: Marijn Suijten <marijns95@gmail.com>
2025-09-11 00:19:42 +00:00
Andy Leiserson
1791064a30 Update comments on IdentityValues (#8183) 2025-09-09 11:14:41 -07:00
Andy Leiserson
a9638c8e3a Remove pending_query_resets from CommandBufferMutable (#8187)
It is emptied by `reset_queries` at the end of every render pass, so
it's just keeping an allocation alive, not holding any state. It seems
unlikely that there is sufficient performance gain from reusing the
memory allocation to justify the complexity of additional state at
higher layers.
2025-09-09 13:03:12 -04:00
renovate[bot]
f7e81f26fd chore(deps): update crate-ci/typos action to v1.36.2 (#8193)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-09-09 08:31:46 -04:00
renovate[bot]
6bab36d1fd chore(deps): update cargo.lock (#8197)
* chore(deps): update cargo.lock

* Update to png 0.18

* Waive cargo-deny advisory check for `adler` crate

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Andy Leiserson <aleiserson@mozilla.com>
2025-09-08 18:14:34 -04:00
Connor Fitzgerald
fb28da16c1 [wgpu] add convience functions for deferring mapping/callbacks
Co-authored-by: Kevin Reid <kpreid@switchb.org>
2025-09-07 09:42:57 +02:00
Connor Fitzgerald
832609959d Convert QueueWriteBufferView to be lifetime-less (#8161) 2025-09-07 07:34:06 +00:00
Andy Leiserson
4853133eaa Fix buffer initialization tracking for some buffer-texture copies (#8099)
Fixes #7947
Fixes #8021
Fixes #8097
2025-09-04 14:15:31 -07:00
Andy Leiserson
989d48ccb6 Tweak the bytes_per_row alignment check
Previously, the check was skipped if the copy was a single row, which is
not correct. The check should be made whenever bytes_per_row is
specified. It is permissible not to specify bytes_per_row if the copy is
a single row, but if it is specified, it must be aligned.

Also removes a redundant check of the `offset` alignment.

Since the offset and bytesPerRow alignment checks are not part of
"validating linear texture data", I chose to remove that instance of
them. These checks are now in `validate_texture_buffer_copy`, which
does not correspond 1:1 with the spec, but has a comment explaining how
it does correspond.
2025-09-04 14:15:31 -07:00
Andy Leiserson
fcde047ae8 Fix cargo deny problems (#8182) 2025-09-04 14:58:31 -04:00
Connor Fitzgerald
c488bbe604 [wgpu] Improve buffer mapping errors and allow multiple immutable borrows (#8150)
Co-authored-by: Andreas Reich <r_andreas2@web.de>
2025-09-02 12:21:16 -04:00
Jamie Nicol
12c8b378a1 [naga wgsl-in] add "texture_external" to reserved keyword list (#8178) 2025-09-01 08:37:42 -04:00
David Duarte
188a8cb3b4 ci: Make the install-{mesa,vulkan-sdk} action multiplatform (#8167)
This also allow to remove the MESA_VERSION and VULKAN_SDK_VERSION
duplication between the ci workflow and the install action.

To pass down the version in each steps, I added action inputs
because there is no way as of today to define environments
variables that are shared between steps in composite actions
(no top level `env:` like for workflows).
2025-08-29 18:53:43 -04:00
Connor Fitzgerald
8d1f4bb5f2 Require token for experimental features (#8163) 2025-08-29 15:43:27 -04:00
Lucas Abel
e58223bedf [metal] allow access to command buffer (#8166) 2025-08-29 12:32:34 -04:00
Alphyr
5a24e2474d wgpu-types: Do not depend on "bitflags/serde" if feature "serde" is not enabled (#8170) 2025-08-29 12:31:31 -04:00
Lucas Abel
5d4cf56689 [api] expose invalid submission index to PollError (#8169) 2025-08-29 12:30:55 -04:00
Matthias Reitinger
80a742094c [wgpu-core] Improve errors for forbidden texture copy formats (#8156)
TransferError now has separate variants for texture copy formats that
are only forbidden in combination with specific aspects
(CopyFrom/ToForbiddenTextureFormatAspect), and texture copy formats that
are always forbidden, irrespective of the aspect
(CopyFrom/ToForbiddenTextureFormat).

This produces a less confusing error message by not mentioning the
aspect it is not relevant.
2025-08-29 10:03:35 +00:00
Lucas Abel
cd14b194a4 [egl] get rid of unwrap where possible (#8024)
Co-authored-by: Andreas Reich <r_andreas2@web.de>
2025-08-28 21:59:54 +00:00
Andy Leiserson
0aacfeadff fix(hal): adjust the conditions when F16_IN_F32 is available 2025-08-28 13:58:36 -07:00
Andy Leiserson
03513e8f90 chore(tests): add issue links for TODOs 2025-08-28 13:58:36 -07:00
Andy Leiserson
7933dd78aa docs(types): note intent to move EXTERNAL_TEXTURE to a downlevel flag 2025-08-28 13:58:36 -07:00
Andy Leiserson
4a7b6abb19 Add F16_IN_F32 downlevel flag for pack/unpack/quantize f16 (#8130)
Although the operation of these functions is defined in terms of f16
semantics, the input/output types are not f16, and they are generally
available even when native `f16` support is not. But in at least one
case, they are only available with `f16` support, so add a new downlevel
flag that is cleared when these functions are not available.

Add some infrastructure to simplify testing of missing
capabilities/extensions, and add tests for a few more kinds of f16
usage.

Co-authored-by: Erich Gubler <erichdongubler@gmail.com>
2025-08-28 13:58:36 -07:00
Andy Leiserson
1689c56ee3 refactor(naga): use explicit \x20 in error output instead of trailing spaces 2025-08-28 13:58:36 -07:00
Andy Leiserson
e939bf273a feat(naga): expose {,Implemented}EnableExtension 2025-08-28 13:58:36 -07:00
Andy Leiserson
2e78c5b061 typo: s/investiagate/investigate 2025-08-28 13:58:36 -07:00
David Duarte
967cd4b7ff ci: Extract linux vulkan installation into its own action (#8164) 2025-08-28 12:01:15 -04:00
Connor Fitzgerald
2ff46cd7cd Remove MULTI_DRAW_INDIRECT feature (#8162) 2025-08-28 12:00:14 -04:00