Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[naga wgsl-in] Experimental 64-bit floating-point literals. #4747

Merged
merged 2 commits into from
Nov 23, 2023

Conversation

jimblandy
Copy link
Member

@jimblandy jimblandy commented Nov 22, 2023

In the WGSL front end, support an l suffix on floating-point literals to yield 64-bit integer literals.

Unless Capabilities::FLOAT64 is selected, these literals will always be validated out, so it doesn't affect standards compliance.

This PR is questionable. I guess it's nice to have f64 support to play with (edit: and the front and back ends already parse and emit an f64 WGSL type), but it's hardly urgent. Who knows whether the spec will ever actually have f64 support, and if it does, what the syntax will be?

But the truth is, I have ulterior motives for this patch. It's a little circuitous:

  • On the abstract type branch, all constructor built-in functions know how to consume abstract values. Calls to scalar constructor built-in functions (say, f32(5)) are handled by generating As expressions and letting the constant evaluator convert abstract values to concrete values. So f32(5) constant-evaluates the AbstractInt 5 to the f32 5.0.
  • It happens that the test case tests/out/wgsl/double-math-functions.frag.wgsl contains expressions like f64(1.0). It's translated from GLSL, which does have a double type.
  • Naga should either accept f64(1.0) or reject it.
    • If Naga rejects it, then we cannot translate tests/in/glsl/double-math-functions.frag to WGSL. The GLSL snapshots aren't really set up to generate other output languages; I don't really want to change that. Fine, maybe we back this test out, it's hardly essential. But let's assume that we want to accept it.
    • If Naga accepts it, then the only reasonable semantics for this expression should be that applying the f64 constructor built-in function to an AbstractFloat gives you an f64.
  • ConstantEvaluator::cast doesn't happen to support casting to f64. Since it returns an error, the WGSL front end assumes that the expression is not constant-evaluatable, and leaves it in the IR as anAbstractFloat literal, which the validator then rejects.
  • Expanding ConstantEvaluator::cast to support casting to f64 allows the out/wgsl file to validate.
  • However, it also means that Literal::F64 values start making it to the WGSL backend, which errors out because WGSL has no f64 literal syntax. Hence the present PR.

So it seems to me we have two options:

  • Give WGSL syntax for 64-bit literals, and have it generate them in tests/out/wgsl/double-math-functions.frag.wgsl and then read and validate them.
  • Remove tests/in/glsl/double-math-functions.frag and forget all this.

Checklist

  • Run cargo fmt.
  • Run cargo clippy. If applicable, add:
  • Run cargo xtask test to run tests.
  • Add change to CHANGELOG.md. See simple instructions inside file.

@jimblandy
Copy link
Member Author

Point in favor of this PR: It seems like the front and back ends already support an f64 WGSL type. We just don't have a syntax for literals of that type.

If we do feel that adding experimental f64 support is okay, then it would probably make sense to pair it with backend support for literals as well. There should then be snapshot tests for the literals too.

@cwfitzgerald
Copy link
Member

Speaking from community side, having support for this is one step closer to end-to-end f64 support, something that is asked for a decent amount, particularly from the scientifically minded folks.

@teoxoy
Copy link
Member

teoxoy commented Nov 22, 2023

  • Give WGSL syntax for 64-bit literals, it generate them in tests/out/wgsl/double-math-functions.frag.wgsl and then read and validate them.

I'm also in favor of supporting f64 👍

naga/src/front/wgsl/parse/number.rs Outdated Show resolved Hide resolved
@jimblandy
Copy link
Member Author

Okay, here's full front and back end support with an lf suffix.

@jimblandy jimblandy force-pushed the naga-wgsl-f64-literals branch 3 times, most recently from d3bb991 to 98b0b71 Compare November 22, 2023 18:48
In the WGSL front and back ends, support an `lf` suffix on
floating-point literals to yield 64-bit integer literals.
@teoxoy teoxoy merged commit 86562e6 into gfx-rs:trunk Nov 23, 2023
27 checks passed
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Dec 5, 2023
…7ab0a860eec. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler

# Changelog

 * #4708 Fix max_vertex_buffers validation
   By nical in gfx-rs/wgpu#4708
 * #4729 Remove expected failure on AMD/DX12 from msaa example
   By teoxoy in gfx-rs/wgpu#4729
 * #4711 [naga] Add `Literal::I64`, for signed 64-bit integer literals.
   By jimblandy in gfx-rs/wgpu#4711
 * #4736 Bump serde from 1.0.192 to 1.0.193
   By dependabot[bot] in gfx-rs/wgpu#4736
 * #4735 [naga]: Let `TypeInner::Matrix` hold a `Scalar`, not just a width.
   By jimblandy in gfx-rs/wgpu#4735
 * #4741 [naga] Fix type error in test.
   By jimblandy in gfx-rs/wgpu#4741
 * #4742 [naga]: Make snapshot tests include paths in errors.
   By jimblandy in gfx-rs/wgpu#4742
 * #4723 Test And Normalize Vertex Behavior on All Backends
   By cwfitzgerald in gfx-rs/wgpu#4723
 * #4746 Skip Flaky Test
   By cwfitzgerald in gfx-rs/wgpu#4746
 * #4744 Ensure DeviceLostClosureC callbacks have null-terminated message strings
   By bradwerth in gfx-rs/wgpu#4744
 * #4745 [naga wgsl-in] Test hex float suffix handling corner case.
   By jimblandy in gfx-rs/wgpu#4745
 * #4737 Make the command_encoder_clear_buffer's size an Option<BufferAddress>
   By nical in gfx-rs/wgpu#4737
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4733 [naga wgsl-in] Preserve type names in `alias` declarations.
   By jimblandy in gfx-rs/wgpu#4733
 * #4734 [naga] Make compaction preserve named types, even if unused.
   By jimblandy in gfx-rs/wgpu#4734
 * #4752 Logging cleanups in device/global.rs
   By nical in gfx-rs/wgpu#4752
 * #4753 Fix Mac Event Loop
   By cwfitzgerald in gfx-rs/wgpu#4753
 * #4754 wgpu-hal(vk): Add WGPU_ALLOW_NONCOMPLIANT_ADAPTER
   By i509VCB in gfx-rs/wgpu#4754
 * #4748 Allow Tests to Expect Certain Panic or Validation Messages
   By cwfitzgerald in gfx-rs/wgpu#4748
 * #4756 Move to A Single Example Executable
   By cwfitzgerald in gfx-rs/wgpu#4756
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4761 [naga] Make the `example_wgsl` test build without `wgsl-in` feature.
   By jimblandy in gfx-rs/wgpu#4761
 * #4769 Conditionally lift API logging from trace to info level
   By nical in gfx-rs/wgpu#4769
 * #4771 Downgrade some of wgpu_core's logging level from info to trace and debug
   By nical in gfx-rs/wgpu#4771
 * #4760 Rename `ALLOW_NONCOMPLIANT_ADAPTER` to `ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER`
   By teoxoy in gfx-rs/wgpu#4760
 * #4772 Downgrade resource lifetime management log level to trace.
   By nical in gfx-rs/wgpu#4772
 * #4765 Revamp Examples to Match Website
   By cwfitzgerald in gfx-rs/wgpu#4765
 * #4774 Update examples readme files
   By roffs in gfx-rs/wgpu#4774
 * #4781 remove_abandoned fix
   By gents83 in gfx-rs/wgpu#4781
 * #4777 Bump web-sys to 0.3.65
   By torokati44 in gfx-rs/wgpu#4777
 * #4780 Fixes for Skybox and All Examples
   By cwfitzgerald in gfx-rs/wgpu#4780
 * #4782 Remove resources ONLY when needed inside wgpu and not in user land
   By gents83 in gfx-rs/wgpu#4782
 * #4786 Don't keep a strong ref in storage for destroyed resources
   By gents83 in gfx-rs/wgpu#4786
 * #4795 Fix Arcanization changelog
   By a1phyr in gfx-rs/wgpu#4795
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4573 Support nv12 texture format
   By xiaopengli89 in gfx-rs/wgpu#4573
 * #4789 Bump js-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4789
 * #4784 Bump winit from 0.29.3 to 0.29.4
   By dependabot[bot] in gfx-rs/wgpu#4784
 * #4798 Bump JamesIves/github-pages-deploy-action from 4.4.3 to 4.5.0
   By dependabot[bot] in gfx-rs/wgpu#4798
 * #4800 Bump web-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4800
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4799 Bump wasm-bindgen-futures from 0.4.38 to 0.4.39
   By dependabot[bot] in gfx-rs/wgpu#4799
 * #4796 Remove surface extent validation (and thus fix the annoying `Requested size ... is outside of the supported range` warning)
   By Wumpf in gfx-rs/wgpu#4796
 * #4804 Add space to a comment inside make_spirv_raw
   By ComfyFluffy in gfx-rs/wgpu#4804
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4805 [naga] Improve ConstantEvaluatorError::InvalidCastArg message.
   By jimblandy in gfx-rs/wgpu#4805
 * #4801 update deno
   By crowlKats in gfx-rs/wgpu#4801
 * #4806 Fixes and changes to the documentation for increasing clarity
   By Blatko1 in gfx-rs/wgpu#4806
 * #4809 [naga wgsl-in] Use a better span for errors in constructors.
   By jimblandy in gfx-rs/wgpu#4809
 * #4808 [naga wgsl-in] Drop spanless labels from front-end error messages.
   By jimblandy in gfx-rs/wgpu#4808
 * #4822 Fix expected error message
   By teoxoy in gfx-rs/wgpu#4822
 * #4759 Add feature float32-filterable
   By almarklein in gfx-rs/wgpu#4759
 * #4813 Bump core-graphics-types from 0.1.2 to 0.1.3
   By dependabot[bot] in gfx-rs/wgpu#4813

Differential Revision: https://phabricator.services.mozilla.com/D195438
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Dec 5, 2023
…7ab0a860eec. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler

# Changelog

 * #4708 Fix max_vertex_buffers validation
   By nical in gfx-rs/wgpu#4708
 * #4729 Remove expected failure on AMD/DX12 from msaa example
   By teoxoy in gfx-rs/wgpu#4729
 * #4711 [naga] Add `Literal::I64`, for signed 64-bit integer literals.
   By jimblandy in gfx-rs/wgpu#4711
 * #4736 Bump serde from 1.0.192 to 1.0.193
   By dependabot[bot] in gfx-rs/wgpu#4736
 * #4735 [naga]: Let `TypeInner::Matrix` hold a `Scalar`, not just a width.
   By jimblandy in gfx-rs/wgpu#4735
 * #4741 [naga] Fix type error in test.
   By jimblandy in gfx-rs/wgpu#4741
 * #4742 [naga]: Make snapshot tests include paths in errors.
   By jimblandy in gfx-rs/wgpu#4742
 * #4723 Test And Normalize Vertex Behavior on All Backends
   By cwfitzgerald in gfx-rs/wgpu#4723
 * #4746 Skip Flaky Test
   By cwfitzgerald in gfx-rs/wgpu#4746
 * #4744 Ensure DeviceLostClosureC callbacks have null-terminated message strings
   By bradwerth in gfx-rs/wgpu#4744
 * #4745 [naga wgsl-in] Test hex float suffix handling corner case.
   By jimblandy in gfx-rs/wgpu#4745
 * #4737 Make the command_encoder_clear_buffer's size an Option<BufferAddress>
   By nical in gfx-rs/wgpu#4737
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4733 [naga wgsl-in] Preserve type names in `alias` declarations.
   By jimblandy in gfx-rs/wgpu#4733
 * #4734 [naga] Make compaction preserve named types, even if unused.
   By jimblandy in gfx-rs/wgpu#4734
 * #4752 Logging cleanups in device/global.rs
   By nical in gfx-rs/wgpu#4752
 * #4753 Fix Mac Event Loop
   By cwfitzgerald in gfx-rs/wgpu#4753
 * #4754 wgpu-hal(vk): Add WGPU_ALLOW_NONCOMPLIANT_ADAPTER
   By i509VCB in gfx-rs/wgpu#4754
 * #4748 Allow Tests to Expect Certain Panic or Validation Messages
   By cwfitzgerald in gfx-rs/wgpu#4748
 * #4756 Move to A Single Example Executable
   By cwfitzgerald in gfx-rs/wgpu#4756
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4761 [naga] Make the `example_wgsl` test build without `wgsl-in` feature.
   By jimblandy in gfx-rs/wgpu#4761
 * #4769 Conditionally lift API logging from trace to info level
   By nical in gfx-rs/wgpu#4769
 * #4771 Downgrade some of wgpu_core's logging level from info to trace and debug
   By nical in gfx-rs/wgpu#4771
 * #4760 Rename `ALLOW_NONCOMPLIANT_ADAPTER` to `ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER`
   By teoxoy in gfx-rs/wgpu#4760
 * #4772 Downgrade resource lifetime management log level to trace.
   By nical in gfx-rs/wgpu#4772
 * #4765 Revamp Examples to Match Website
   By cwfitzgerald in gfx-rs/wgpu#4765
 * #4774 Update examples readme files
   By roffs in gfx-rs/wgpu#4774
 * #4781 remove_abandoned fix
   By gents83 in gfx-rs/wgpu#4781
 * #4777 Bump web-sys to 0.3.65
   By torokati44 in gfx-rs/wgpu#4777
 * #4780 Fixes for Skybox and All Examples
   By cwfitzgerald in gfx-rs/wgpu#4780
 * #4782 Remove resources ONLY when needed inside wgpu and not in user land
   By gents83 in gfx-rs/wgpu#4782
 * #4786 Don't keep a strong ref in storage for destroyed resources
   By gents83 in gfx-rs/wgpu#4786
 * #4795 Fix Arcanization changelog
   By a1phyr in gfx-rs/wgpu#4795
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4573 Support nv12 texture format
   By xiaopengli89 in gfx-rs/wgpu#4573
 * #4789 Bump js-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4789
 * #4784 Bump winit from 0.29.3 to 0.29.4
   By dependabot[bot] in gfx-rs/wgpu#4784
 * #4798 Bump JamesIves/github-pages-deploy-action from 4.4.3 to 4.5.0
   By dependabot[bot] in gfx-rs/wgpu#4798
 * #4800 Bump web-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4800
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4799 Bump wasm-bindgen-futures from 0.4.38 to 0.4.39
   By dependabot[bot] in gfx-rs/wgpu#4799
 * #4796 Remove surface extent validation (and thus fix the annoying `Requested size ... is outside of the supported range` warning)
   By Wumpf in gfx-rs/wgpu#4796
 * #4804 Add space to a comment inside make_spirv_raw
   By ComfyFluffy in gfx-rs/wgpu#4804
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4805 [naga] Improve ConstantEvaluatorError::InvalidCastArg message.
   By jimblandy in gfx-rs/wgpu#4805
 * #4801 update deno
   By crowlKats in gfx-rs/wgpu#4801
 * #4806 Fixes and changes to the documentation for increasing clarity
   By Blatko1 in gfx-rs/wgpu#4806
 * #4809 [naga wgsl-in] Use a better span for errors in constructors.
   By jimblandy in gfx-rs/wgpu#4809
 * #4808 [naga wgsl-in] Drop spanless labels from front-end error messages.
   By jimblandy in gfx-rs/wgpu#4808
 * #4822 Fix expected error message
   By teoxoy in gfx-rs/wgpu#4822
 * #4759 Add feature float32-filterable
   By almarklein in gfx-rs/wgpu#4759
 * #4813 Bump core-graphics-types from 0.1.2 to 0.1.3
   By dependabot[bot] in gfx-rs/wgpu#4813

Differential Revision: https://phabricator.services.mozilla.com/D195438
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Dec 7, 2023
…7ab0a860eec. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler

# Changelog

 * #4708 Fix max_vertex_buffers validation
   By nical in gfx-rs/wgpu#4708
 * #4729 Remove expected failure on AMD/DX12 from msaa example
   By teoxoy in gfx-rs/wgpu#4729
 * #4711 [naga] Add `Literal::I64`, for signed 64-bit integer literals.
   By jimblandy in gfx-rs/wgpu#4711
 * #4736 Bump serde from 1.0.192 to 1.0.193
   By dependabot[bot] in gfx-rs/wgpu#4736
 * #4735 [naga]: Let `TypeInner::Matrix` hold a `Scalar`, not just a width.
   By jimblandy in gfx-rs/wgpu#4735
 * #4741 [naga] Fix type error in test.
   By jimblandy in gfx-rs/wgpu#4741
 * #4742 [naga]: Make snapshot tests include paths in errors.
   By jimblandy in gfx-rs/wgpu#4742
 * #4723 Test And Normalize Vertex Behavior on All Backends
   By cwfitzgerald in gfx-rs/wgpu#4723
 * #4746 Skip Flaky Test
   By cwfitzgerald in gfx-rs/wgpu#4746
 * #4744 Ensure DeviceLostClosureC callbacks have null-terminated message strings
   By bradwerth in gfx-rs/wgpu#4744
 * #4745 [naga wgsl-in] Test hex float suffix handling corner case.
   By jimblandy in gfx-rs/wgpu#4745
 * #4737 Make the command_encoder_clear_buffer's size an Option<BufferAddress>
   By nical in gfx-rs/wgpu#4737
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4733 [naga wgsl-in] Preserve type names in `alias` declarations.
   By jimblandy in gfx-rs/wgpu#4733
 * #4734 [naga] Make compaction preserve named types, even if unused.
   By jimblandy in gfx-rs/wgpu#4734
 * #4752 Logging cleanups in device/global.rs
   By nical in gfx-rs/wgpu#4752
 * #4753 Fix Mac Event Loop
   By cwfitzgerald in gfx-rs/wgpu#4753
 * #4754 wgpu-hal(vk): Add WGPU_ALLOW_NONCOMPLIANT_ADAPTER
   By i509VCB in gfx-rs/wgpu#4754
 * #4748 Allow Tests to Expect Certain Panic or Validation Messages
   By cwfitzgerald in gfx-rs/wgpu#4748
 * #4756 Move to A Single Example Executable
   By cwfitzgerald in gfx-rs/wgpu#4756
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4761 [naga] Make the `example_wgsl` test build without `wgsl-in` feature.
   By jimblandy in gfx-rs/wgpu#4761
 * #4769 Conditionally lift API logging from trace to info level
   By nical in gfx-rs/wgpu#4769
 * #4771 Downgrade some of wgpu_core's logging level from info to trace and debug
   By nical in gfx-rs/wgpu#4771
 * #4760 Rename `ALLOW_NONCOMPLIANT_ADAPTER` to `ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER`
   By teoxoy in gfx-rs/wgpu#4760
 * #4772 Downgrade resource lifetime management log level to trace.
   By nical in gfx-rs/wgpu#4772
 * #4765 Revamp Examples to Match Website
   By cwfitzgerald in gfx-rs/wgpu#4765
 * #4774 Update examples readme files
   By roffs in gfx-rs/wgpu#4774
 * #4781 remove_abandoned fix
   By gents83 in gfx-rs/wgpu#4781
 * #4777 Bump web-sys to 0.3.65
   By torokati44 in gfx-rs/wgpu#4777
 * #4780 Fixes for Skybox and All Examples
   By cwfitzgerald in gfx-rs/wgpu#4780
 * #4782 Remove resources ONLY when needed inside wgpu and not in user land
   By gents83 in gfx-rs/wgpu#4782
 * #4786 Don't keep a strong ref in storage for destroyed resources
   By gents83 in gfx-rs/wgpu#4786
 * #4795 Fix Arcanization changelog
   By a1phyr in gfx-rs/wgpu#4795
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4573 Support nv12 texture format
   By xiaopengli89 in gfx-rs/wgpu#4573
 * #4789 Bump js-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4789
 * #4784 Bump winit from 0.29.3 to 0.29.4
   By dependabot[bot] in gfx-rs/wgpu#4784
 * #4798 Bump JamesIves/github-pages-deploy-action from 4.4.3 to 4.5.0
   By dependabot[bot] in gfx-rs/wgpu#4798
 * #4800 Bump web-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4800
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4799 Bump wasm-bindgen-futures from 0.4.38 to 0.4.39
   By dependabot[bot] in gfx-rs/wgpu#4799
 * #4796 Remove surface extent validation (and thus fix the annoying `Requested size ... is outside of the supported range` warning)
   By Wumpf in gfx-rs/wgpu#4796
 * #4804 Add space to a comment inside make_spirv_raw
   By ComfyFluffy in gfx-rs/wgpu#4804
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4805 [naga] Improve ConstantEvaluatorError::InvalidCastArg message.
   By jimblandy in gfx-rs/wgpu#4805
 * #4801 update deno
   By crowlKats in gfx-rs/wgpu#4801
 * #4806 Fixes and changes to the documentation for increasing clarity
   By Blatko1 in gfx-rs/wgpu#4806
 * #4809 [naga wgsl-in] Use a better span for errors in constructors.
   By jimblandy in gfx-rs/wgpu#4809
 * #4808 [naga wgsl-in] Drop spanless labels from front-end error messages.
   By jimblandy in gfx-rs/wgpu#4808
 * #4822 Fix expected error message
   By teoxoy in gfx-rs/wgpu#4822
 * #4759 Add feature float32-filterable
   By almarklein in gfx-rs/wgpu#4759
 * #4813 Bump core-graphics-types from 0.1.2 to 0.1.3
   By dependabot[bot] in gfx-rs/wgpu#4813

Differential Revision: https://phabricator.services.mozilla.com/D195438

UltraBlame original commit: 985aabb5bf419ffcc9248010353ff190c225ba61
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Dec 7, 2023
…7ab0a860eec. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler

# Changelog

 * #4708 Fix max_vertex_buffers validation
   By nical in gfx-rs/wgpu#4708
 * #4729 Remove expected failure on AMD/DX12 from msaa example
   By teoxoy in gfx-rs/wgpu#4729
 * #4711 [naga] Add `Literal::I64`, for signed 64-bit integer literals.
   By jimblandy in gfx-rs/wgpu#4711
 * #4736 Bump serde from 1.0.192 to 1.0.193
   By dependabot[bot] in gfx-rs/wgpu#4736
 * #4735 [naga]: Let `TypeInner::Matrix` hold a `Scalar`, not just a width.
   By jimblandy in gfx-rs/wgpu#4735
 * #4741 [naga] Fix type error in test.
   By jimblandy in gfx-rs/wgpu#4741
 * #4742 [naga]: Make snapshot tests include paths in errors.
   By jimblandy in gfx-rs/wgpu#4742
 * #4723 Test And Normalize Vertex Behavior on All Backends
   By cwfitzgerald in gfx-rs/wgpu#4723
 * #4746 Skip Flaky Test
   By cwfitzgerald in gfx-rs/wgpu#4746
 * #4744 Ensure DeviceLostClosureC callbacks have null-terminated message strings
   By bradwerth in gfx-rs/wgpu#4744
 * #4745 [naga wgsl-in] Test hex float suffix handling corner case.
   By jimblandy in gfx-rs/wgpu#4745
 * #4737 Make the command_encoder_clear_buffer's size an Option<BufferAddress>
   By nical in gfx-rs/wgpu#4737
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4733 [naga wgsl-in] Preserve type names in `alias` declarations.
   By jimblandy in gfx-rs/wgpu#4733
 * #4734 [naga] Make compaction preserve named types, even if unused.
   By jimblandy in gfx-rs/wgpu#4734
 * #4752 Logging cleanups in device/global.rs
   By nical in gfx-rs/wgpu#4752
 * #4753 Fix Mac Event Loop
   By cwfitzgerald in gfx-rs/wgpu#4753
 * #4754 wgpu-hal(vk): Add WGPU_ALLOW_NONCOMPLIANT_ADAPTER
   By i509VCB in gfx-rs/wgpu#4754
 * #4748 Allow Tests to Expect Certain Panic or Validation Messages
   By cwfitzgerald in gfx-rs/wgpu#4748
 * #4756 Move to A Single Example Executable
   By cwfitzgerald in gfx-rs/wgpu#4756
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4761 [naga] Make the `example_wgsl` test build without `wgsl-in` feature.
   By jimblandy in gfx-rs/wgpu#4761
 * #4769 Conditionally lift API logging from trace to info level
   By nical in gfx-rs/wgpu#4769
 * #4771 Downgrade some of wgpu_core's logging level from info to trace and debug
   By nical in gfx-rs/wgpu#4771
 * #4760 Rename `ALLOW_NONCOMPLIANT_ADAPTER` to `ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER`
   By teoxoy in gfx-rs/wgpu#4760
 * #4772 Downgrade resource lifetime management log level to trace.
   By nical in gfx-rs/wgpu#4772
 * #4765 Revamp Examples to Match Website
   By cwfitzgerald in gfx-rs/wgpu#4765
 * #4774 Update examples readme files
   By roffs in gfx-rs/wgpu#4774
 * #4781 remove_abandoned fix
   By gents83 in gfx-rs/wgpu#4781
 * #4777 Bump web-sys to 0.3.65
   By torokati44 in gfx-rs/wgpu#4777
 * #4780 Fixes for Skybox and All Examples
   By cwfitzgerald in gfx-rs/wgpu#4780
 * #4782 Remove resources ONLY when needed inside wgpu and not in user land
   By gents83 in gfx-rs/wgpu#4782
 * #4786 Don't keep a strong ref in storage for destroyed resources
   By gents83 in gfx-rs/wgpu#4786
 * #4795 Fix Arcanization changelog
   By a1phyr in gfx-rs/wgpu#4795
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4573 Support nv12 texture format
   By xiaopengli89 in gfx-rs/wgpu#4573
 * #4789 Bump js-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4789
 * #4784 Bump winit from 0.29.3 to 0.29.4
   By dependabot[bot] in gfx-rs/wgpu#4784
 * #4798 Bump JamesIves/github-pages-deploy-action from 4.4.3 to 4.5.0
   By dependabot[bot] in gfx-rs/wgpu#4798
 * #4800 Bump web-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4800
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4799 Bump wasm-bindgen-futures from 0.4.38 to 0.4.39
   By dependabot[bot] in gfx-rs/wgpu#4799
 * #4796 Remove surface extent validation (and thus fix the annoying `Requested size ... is outside of the supported range` warning)
   By Wumpf in gfx-rs/wgpu#4796
 * #4804 Add space to a comment inside make_spirv_raw
   By ComfyFluffy in gfx-rs/wgpu#4804
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4805 [naga] Improve ConstantEvaluatorError::InvalidCastArg message.
   By jimblandy in gfx-rs/wgpu#4805
 * #4801 update deno
   By crowlKats in gfx-rs/wgpu#4801
 * #4806 Fixes and changes to the documentation for increasing clarity
   By Blatko1 in gfx-rs/wgpu#4806
 * #4809 [naga wgsl-in] Use a better span for errors in constructors.
   By jimblandy in gfx-rs/wgpu#4809
 * #4808 [naga wgsl-in] Drop spanless labels from front-end error messages.
   By jimblandy in gfx-rs/wgpu#4808
 * #4822 Fix expected error message
   By teoxoy in gfx-rs/wgpu#4822
 * #4759 Add feature float32-filterable
   By almarklein in gfx-rs/wgpu#4759
 * #4813 Bump core-graphics-types from 0.1.2 to 0.1.3
   By dependabot[bot] in gfx-rs/wgpu#4813

Differential Revision: https://phabricator.services.mozilla.com/D195438

UltraBlame original commit: 985aabb5bf419ffcc9248010353ff190c225ba61
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Dec 7, 2023
…7ab0a860eec. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler

# Changelog

 * #4708 Fix max_vertex_buffers validation
   By nical in gfx-rs/wgpu#4708
 * #4729 Remove expected failure on AMD/DX12 from msaa example
   By teoxoy in gfx-rs/wgpu#4729
 * #4711 [naga] Add `Literal::I64`, for signed 64-bit integer literals.
   By jimblandy in gfx-rs/wgpu#4711
 * #4736 Bump serde from 1.0.192 to 1.0.193
   By dependabot[bot] in gfx-rs/wgpu#4736
 * #4735 [naga]: Let `TypeInner::Matrix` hold a `Scalar`, not just a width.
   By jimblandy in gfx-rs/wgpu#4735
 * #4741 [naga] Fix type error in test.
   By jimblandy in gfx-rs/wgpu#4741
 * #4742 [naga]: Make snapshot tests include paths in errors.
   By jimblandy in gfx-rs/wgpu#4742
 * #4723 Test And Normalize Vertex Behavior on All Backends
   By cwfitzgerald in gfx-rs/wgpu#4723
 * #4746 Skip Flaky Test
   By cwfitzgerald in gfx-rs/wgpu#4746
 * #4744 Ensure DeviceLostClosureC callbacks have null-terminated message strings
   By bradwerth in gfx-rs/wgpu#4744
 * #4745 [naga wgsl-in] Test hex float suffix handling corner case.
   By jimblandy in gfx-rs/wgpu#4745
 * #4737 Make the command_encoder_clear_buffer's size an Option<BufferAddress>
   By nical in gfx-rs/wgpu#4737
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4701 [naga msl-out] Emit and init `struct` member padding always
   By ErichDonGubler in gfx-rs/wgpu#4701
 * #4733 [naga wgsl-in] Preserve type names in `alias` declarations.
   By jimblandy in gfx-rs/wgpu#4733
 * #4734 [naga] Make compaction preserve named types, even if unused.
   By jimblandy in gfx-rs/wgpu#4734
 * #4752 Logging cleanups in device/global.rs
   By nical in gfx-rs/wgpu#4752
 * #4753 Fix Mac Event Loop
   By cwfitzgerald in gfx-rs/wgpu#4753
 * #4754 wgpu-hal(vk): Add WGPU_ALLOW_NONCOMPLIANT_ADAPTER
   By i509VCB in gfx-rs/wgpu#4754
 * #4748 Allow Tests to Expect Certain Panic or Validation Messages
   By cwfitzgerald in gfx-rs/wgpu#4748
 * #4756 Move to A Single Example Executable
   By cwfitzgerald in gfx-rs/wgpu#4756
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4747 [naga wgsl-in] Experimental 64-bit floating-point literals.
   By jimblandy in gfx-rs/wgpu#4747
 * #4761 [naga] Make the `example_wgsl` test build without `wgsl-in` feature.
   By jimblandy in gfx-rs/wgpu#4761
 * #4769 Conditionally lift API logging from trace to info level
   By nical in gfx-rs/wgpu#4769
 * #4771 Downgrade some of wgpu_core's logging level from info to trace and debug
   By nical in gfx-rs/wgpu#4771
 * #4760 Rename `ALLOW_NONCOMPLIANT_ADAPTER` to `ALLOW_UNDERLYING_NONCOMPLIANT_ADAPTER`
   By teoxoy in gfx-rs/wgpu#4760
 * #4772 Downgrade resource lifetime management log level to trace.
   By nical in gfx-rs/wgpu#4772
 * #4765 Revamp Examples to Match Website
   By cwfitzgerald in gfx-rs/wgpu#4765
 * #4774 Update examples readme files
   By roffs in gfx-rs/wgpu#4774
 * #4781 remove_abandoned fix
   By gents83 in gfx-rs/wgpu#4781
 * #4777 Bump web-sys to 0.3.65
   By torokati44 in gfx-rs/wgpu#4777
 * #4780 Fixes for Skybox and All Examples
   By cwfitzgerald in gfx-rs/wgpu#4780
 * #4782 Remove resources ONLY when needed inside wgpu and not in user land
   By gents83 in gfx-rs/wgpu#4782
 * #4786 Don't keep a strong ref in storage for destroyed resources
   By gents83 in gfx-rs/wgpu#4786
 * #4795 Fix Arcanization changelog
   By a1phyr in gfx-rs/wgpu#4795
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4794 Delete/rename now-unused gpu.rs
   By exrook in gfx-rs/wgpu#4794
 * #4573 Support nv12 texture format
   By xiaopengli89 in gfx-rs/wgpu#4573
 * #4789 Bump js-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4789
 * #4784 Bump winit from 0.29.3 to 0.29.4
   By dependabot[bot] in gfx-rs/wgpu#4784
 * #4798 Bump JamesIves/github-pages-deploy-action from 4.4.3 to 4.5.0
   By dependabot[bot] in gfx-rs/wgpu#4798
 * #4800 Bump web-sys from 0.3.65 to 0.3.66
   By dependabot[bot] in gfx-rs/wgpu#4800
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4743 Implement WGSL abstract types for global `const` declarations and constructor calls.
   By jimblandy in gfx-rs/wgpu#4743
 * #4799 Bump wasm-bindgen-futures from 0.4.38 to 0.4.39
   By dependabot[bot] in gfx-rs/wgpu#4799
 * #4796 Remove surface extent validation (and thus fix the annoying `Requested size ... is outside of the supported range` warning)
   By Wumpf in gfx-rs/wgpu#4796
 * #4804 Add space to a comment inside make_spirv_raw
   By ComfyFluffy in gfx-rs/wgpu#4804
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4803 `features`/`limits` refactors
   By teoxoy in gfx-rs/wgpu#4803
 * #4805 [naga] Improve ConstantEvaluatorError::InvalidCastArg message.
   By jimblandy in gfx-rs/wgpu#4805
 * #4801 update deno
   By crowlKats in gfx-rs/wgpu#4801
 * #4806 Fixes and changes to the documentation for increasing clarity
   By Blatko1 in gfx-rs/wgpu#4806
 * #4809 [naga wgsl-in] Use a better span for errors in constructors.
   By jimblandy in gfx-rs/wgpu#4809
 * #4808 [naga wgsl-in] Drop spanless labels from front-end error messages.
   By jimblandy in gfx-rs/wgpu#4808
 * #4822 Fix expected error message
   By teoxoy in gfx-rs/wgpu#4822
 * #4759 Add feature float32-filterable
   By almarklein in gfx-rs/wgpu#4759
 * #4813 Bump core-graphics-types from 0.1.2 to 0.1.3
   By dependabot[bot] in gfx-rs/wgpu#4813

Differential Revision: https://phabricator.services.mozilla.com/D195438

UltraBlame original commit: 985aabb5bf419ffcc9248010353ff190c225ba61
@jimblandy jimblandy deleted the naga-wgsl-f64-literals branch December 13, 2023 16:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants