[Migrated] Some shaders that compiled in 0.8 are erring in 0.9
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 3.4k
- Forks
- 125
- PR merge metrics
- No merged PRs in 30d
Description
Issue automatically imported from old repo: https://github.com/EmbarkStudios/rust-gpu/issues/1089
Old labels: t: bug
Originally creatd by schell on 2023-08-03T20:42:54Z
Expected Behaviour
Shaders should compile.
Example & Steps To Reproduce
Shaders that previously compiled in 0.8 are no longer compiling when bumping rust-gpu, spirv-std and spirv-builder to 0.9.
Specifically the shaders in question all give some form of this error:
error: error:0:0 - In Logical addressing, variables may not allocate a pointer type
%24 = OpVariable %_ptr_Private__ptr_Private_uint Private %25
|
= note: spirv-val failed
= note: module `/Users/schell/code/renderling/shaders/shader-crate/target/spirv-unknown-vulkan1.2/release/deps/shader_crate.spvs/main_fragment_scene.spv`
git clone https://github.com/schell/renderling --branch chore/bump-rust-gpu-0.9cd renderling/shaderscargo run --release
System Info
Apple M1
macOS 13.4.1 (22F82)
spirv-val
SPIRV-Tools v2023.3 v2022.4-198-ge7c6084f
Targets:
SPIR-V 1.0
SPIR-V 1.1
SPIR-V 1.2
SPIR-V 1.3
SPIR-V 1.4
SPIR-V 1.5
SPIR-V 1.6
SPIR-V 1.2 (under OpenCL 2.2 Full Profile semantics)
SPIR-V 1.0 (under Vulkan 1.0 semantics)
SPIR-V 1.3 (under Vulkan 1.1 semantics)
SPIR-V 1.4 (under Vulkan 1.1 semantics)
SPIR-V 1.5 (under Vulkan 1.2 semantics)
SPIR-V 1.6 (under Vulkan 1.3 semantics)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Clone renderling at the chore/bump-rust-gpu-0.9 branch, enter renderling/shaders, and run cargo run --release to reproduce the SPIR-V validation error. Inspect the generated shader artifact and the Rust GPU, spirv-std, and spirv-builder version changes. Done means the affected shaders compile successfully and spirv-val accepts the generated SPIR-V.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers, computer-graphics
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100