-
Notifications
You must be signed in to change notification settings - Fork 920
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
Conversation
Point in favor of this PR: It seems like the front and back ends already support an If we do feel that adding experimental |
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. |
I'm also in favor of supporting |
f0d92aa
to
daf7dee
Compare
Okay, here's full front and back end support with an |
d3bb991
to
98b0b71
Compare
In the WGSL front and back ends, support an `lf` suffix on floating-point literals to yield 64-bit integer literals.
98b0b71
to
e8e57d4
Compare
…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
…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
…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
…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
…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
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 anf64
WGSL type), but it's hardly urgent. Who knows whether the spec will ever actually havef64
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:
f32(5)
) are handled by generatingAs
expressions and letting the constant evaluator convert abstract values to concrete values. Sof32(5)
constant-evaluates the AbstractInt5
to thef32
5.0
.tests/out/wgsl/double-math-functions.frag.wgsl
contains expressions likef64(1.0)
. It's translated from GLSL, which does have adouble
type.f64(1.0)
or reject it.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.f64
constructor built-in function to an AbstractFloat gives you anf64
.ConstantEvaluator::cast
doesn't happen to support casting tof64
. 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.ConstantEvaluator::cast
to support casting tof64
allows theout/wgsl
file to validate.Literal::F64
values start making it to the WGSL backend, which errors out because WGSL has nof64
literal syntax. Hence the present PR.So it seems to me we have two options:
tests/out/wgsl/double-math-functions.frag.wgsl
and then read and validate them.tests/in/glsl/double-math-functions.frag
and forget all this.Checklist
cargo fmt
.cargo clippy
. If applicable, add:cargo xtask test
to run tests.CHANGELOG.md
. See simple instructions inside file.