Commit Graph

6977 Commits

Author SHA1 Message Date
Jim Blandy
528bca75f7 Give front::wgsl::Error::InitializationTypeMismatch named fields. 2023-10-23 15:01:39 +02:00
Jim Blandy
946745d38f [wgsl-in] Turn Error::Other into Error::Internal, to help devs.
Provide a textual message with `front::wgsl::Error::Internal`, so that
a developer who sees one of these errors can at least search the
source tree to find out where it came from.
2023-10-23 14:57:25 +02:00
Jim Blandy
dd8f814344 [wgsl-in] Clean up swizzle/component access type.
Rename `front::wgsl::lower::Composition` to `Components`. It doesn't
represent a composition, it represents either a single component being
selected from a vector or a swizzle.

Clean up code and helper function names.
2023-10-23 14:56:14 +02:00
Jim Blandy
d038506a8c [wgsl-in] Delete {ExpressionContext,RuntimeContext}::reborrow.
Remove `front::wgsl::lower::ExpressionContext::reborrow` and
`front::wgsl::lower::RuntimeExpressionContext::reborrow` in favor of
Rust's automatic reborrowing of `&mut` references.
2023-10-23 14:52:29 +02:00
Jim Blandy
a647c64432 [wgsl-in] Delete front::wgsl::lower::StatementContext::reborrow.
Remove `StatementContext::reborrow` in favor of Rust's automatic
reborrowing of `&mut` references.
2023-10-23 14:52:29 +02:00
Jim Blandy
0285bf9388 [wgsl-in] Delete front::wgsl::lower::GlobalContext::reborrow.
Remove `GlobalContext::reborrow` in favor of Rust's automatic
reborrowing of `&mut` references.
2023-10-23 14:52:29 +02:00
Jim Blandy
6d4807fc6d [wgsl-in] Delete front::wgsl::parse::ExpressionContext::reborrow.
Remove `ExpressionContext::reborrow` in favor of Rust's automatic
reborrowing of `&mut` references.

Use lifetime elision in more places.
2023-10-23 14:52:29 +02:00
Jim Blandy
509ea4c857
[wgsl-in] Generate no code for trivial vector/matrix construction. (#2576)
Do not emit an `Expression::As` conversion for WGSL like `vec3(v)`
where `v` is already a `vec3`, or `mat2x3(m)` where `m` is already a
2x3 matrix. This doesn't fix any bugs, but it makes it clearer to the
reader of `Lowerer::construct` that no conversion can actually take
place in this case.

Some snapshots are affected because `As` expressions whose `width` is
`None` are bitcast expressions, which the constant evaluator does not
yet support. When this commit removes those `As` expressions, the
constant evaluator can reduce the expression to a `Literal` or
`ZeroValue`, which is then concealed by #2539.
2023-10-23 14:48:18 +02:00
Connor Fitzgerald
85cab49c53
Normalize GL language versions (#4283) 2023-10-23 05:17:00 +00:00
Connor Fitzgerald
bb00d594f8
Fix Issue with Caching on Windows CI (#4284) 2023-10-23 04:31:22 +00:00
dependabot[bot]
3ed37c3365
Bump glutin_wgl_sys from 0.4.0 to 0.5.0 (#4281)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-23 03:01:46 +00:00
Connor Fitzgerald
0c7acb2144
Adds some missing features from desktop GL backend (#4279) 2023-10-22 22:54:49 -04:00
exrook
17dfdb9365
fix clippy lints introduced in 1.72 and 1.73 (#2581)
fixes:
- [non_canonical_clone_impl](https://rust-lang.github.io/rust-clippy/master/index.html#non_canonical_clone_impl)
- [non_canonical_partial_ord_impl](https://rust-lang.github.io/rust-clippy/master/index.html#non_canonical_partial_ord_impl)
- [redundant_guards](https://rust-lang.github.io/rust-clippy/master/index.html#redundant_guards)
2023-10-22 12:25:29 -07:00
Connor Fitzgerald
3cc6a563ca
Re-add missing example tests (#4277) 2023-10-22 05:18:37 +00:00
Connor Fitzgerald
04ac5f2851
Update WARP and Install Mesa on Windows CI (#4270) 2023-10-22 00:34:00 -04:00
Zoxc
095b46dbdb
Fix sRGB issues with glBlitFramebuffer on WGL (#4273)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-20 21:04:09 +00:00
Zoxc
e918031201
Use the device OpenGL context for WGL surfaces (#4271) 2023-10-20 15:45:43 -04:00
dependabot[bot]
d876e0d844
Bump thiserror from 1.0.49 to 1.0.50 (#4269)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-19 23:00:12 -04:00
Teodor Tanasoaia
19209b67d2
[wgsl-in] consolidate type resolution logic in a few macros (#2571)
* [wgsl-in] consolidate type resolution logic in a few macros

* rename + docs

* reorder macros (avoids doc linking not working)
2023-10-19 13:20:02 -07:00
teoxoy
29ca53148d fix OOB typifier indexing 2023-10-19 09:15:28 -07:00
Connor Fitzgerald
543f921639
GPU Test Framework (#3873) 2023-10-19 12:06:42 -04:00
Jim Blandy
af26d77ce4 [wgsl-in] Abstract out ExpressionContext::as_const_evaluator. 2023-10-19 17:56:51 +02:00
Jim Blandy
334f745366 Make validation reject 64-bit floating-point literals.
Make expression validation and constant expression validation reject
`Literal` expressions containing `F64` literals unless the `FLOAT64`
capability is enabled.
2023-10-19 17:55:04 +02:00
Jim Blandy
1bb84aef0b rename validate_literal to check_literal_value 2023-10-19 17:55:04 +02:00
Jim Blandy
860c200469 Give Validator::check_width its own error type, WidthError.
Later changes will use `check_width` in new functions. Separating out
`WidthError` will make it easier to incorporate `check_width`'s
results into its new callers'.
2023-10-19 17:55:04 +02:00
teoxoy
5b65f11e3c [refactor] make use of resolve_type wherever possible 2023-10-18 12:25:36 -07:00
dependabot[bot]
75989192a9
Bump rustix from 0.37.19 to 0.37.25 in /xtask (#4264)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-18 15:07:33 -04:00
dependabot[bot]
1bf8bfe209
Bump rustix from 0.38.4 to 0.38.19 (#4265)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-18 15:07:15 -04:00
Zoxc
2b985e2fad
Add WGL context creation and OpenGL support (#4248)
Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com>
2023-10-18 18:40:33 +00:00
Teodor Tanasoaia
ead6348b43
Set the new naga Capabilities::CUBE_ARRAY_TEXTURES (#4263) 2023-10-18 12:13:21 -04:00
Nicolas Silva
8c03aa85e6
Make it possible to filter labels out ahead of wgpu-hal (#4246)
* Make it possible to filter labels out.

Co-authored-by: Jim Blandy <jimb@red-bean.com>
2023-10-18 17:45:59 +02:00
Teodor Tanasoaia
e25280df93
[glsl/spv-out] Cull functions that should not be available for a given stage (#2531) 2023-10-18 12:50:52 +00:00
Connor Fitzgerald
3e307a862f
Skip Integrated WARP (#4259) 2023-10-18 14:08:14 +02:00
teoxoy
cf113bdb53 [spv-in] translate ModfStruct & FrexpStruct to their IR equivalents 2023-10-17 21:53:26 -07:00
teoxoy
4b7a555e9f [glsl-in] disable modf & frexp 2023-10-17 21:53:26 -07:00
teoxoy
5a0fb630da [valid] add Capabilities::CUBE_ARRAY_TEXTURES 2023-10-17 21:51:54 -07:00
Teodor Tanasoaia
de9913f476 [spv-in] remove spirv::Capability::ImageMSArray
as we don't support multisampled storage textures at all
2023-10-17 21:50:32 -07:00
teoxoy
2f6a32f5f9 [spv-in] remove spirv::Capability::InterpolationFunction
as we don't support the `InterpolateAtCentroid`, `InterpolateAtSample`, or `InterpolateAtOffset` `GLSL.std.450` extended instructions
2023-10-17 21:50:32 -07:00
teoxoy
7ee474b4a5 [spv-in] remove duplicated capabilities 2023-10-17 21:50:32 -07:00
Jim Blandy
da0b3fe685
Let the "strict_asserts" feature enable Token::root assertions. (#4258) 2023-10-17 23:00:39 -04:00
Nicolas Silva
7461781a59 Make deduplication work in compute_pipeline_get_bind_group_layout 2023-10-17 18:04:12 -07:00
Nicolas Silva
a848648943 Fix locking order in render_pipeline_get_bind_group_layout 2023-10-17 18:04:12 -07:00
Teodor Tanasoaia
a842019b34
Vulkan API version refactors (#4252) 2023-10-17 19:20:56 -04:00
Teodor Tanasoaia
c07d889f1b
Update naga to 0.13.0@git:6854b0ab4f105131bfb87704927abec3fe366ef9 (#4254) 2023-10-17 15:49:12 +00:00
dependabot[bot]
96127c572f
Bump async-executor from 1.5.4 to 1.6.0 (#4249)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-16 23:48:06 -04:00
teoxoy
6854b0ab4f disallow ptr to workgroup fn arguments 2023-10-16 19:03:14 -07:00
teoxoy
ea83f62a94 [msl-out] add min version check for ray tracing 2023-10-16 19:02:58 -07:00
teoxoy
89ab5902b2 [msl-out] add min version check for primitive_id 2023-10-16 19:02:58 -07:00
teoxoy
46c472731f [msl-out] add min version checks for binding arrays 2023-10-16 19:02:58 -07:00
teoxoy
f4a43b1bf0 [msl-out] add min version check for read-write storage textures 2023-10-16 19:02:58 -07:00