- Apr 16, 2021
-
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Ashley authored
* Impl `Hash` for `msl::Options` * Remove ordered float * [msl] derive everything on Options manually * [msl] switch from Arena to Vec for the options * Fix the clippy error by allowing derive_hash_xor_eq * Fix skybox test Co-authored-by: Dzmitry Malyshau <kvarkus@gmail.com>
-
- Apr 15, 2021
-
-
Jim Blandy authored
-
Jim Blandy authored
Add a Option<u16> to the snapshot `Params` to let snapshots request specific Desktop GLSL versions. The default is GLSL ES 3.10. It would be more general to let the params select any GLSL version, but that would entail making glsl::Version implement Deserialize and all that, which seems like overkill.
-
Jim Blandy authored
-
Jim Blandy authored
Use `back::glsl::features::FeaturesManager` to detect which qualifiers the given module actually uses, and check them against the requested GLSL version. The `linear` and `sample` qualifiers for fragment shader inputs are not supported in all versions of GLSL that Naga can generate.
-
Jim Blandy authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
- Apr 14, 2021
-
-
Jim Blandy authored
Non-exhaustive matches on `Expression` make it harder to review changes that add new enum variants, because the compiler can't tell you that you've missed a case. Although I believe Clippy is able to do so, I don't think we should make a blanket rule of forbidding wildcard match arms against `Expression`. There are a few matches that are only concerned with a handful of variants, or a single variant. For example, variant, naga::front::spv::Parser::next_block is only concerned with whether an expression is a constant or not. In principle, these sites should also be checked when adding a new variant, but it seems too burdensome to require them to list all the `Expression` variants they don't care about. The principle should be applied only to matches that are already handling most variants. At the moment, there is only one such match on `Expression` in the code base, and it's only missing a few variants, so this is quick to fix.
-
Dzmitry Malyshau authored
-
Jim Blandy authored
The snapshot files in tests/out start with headers like this: --- source: tests/snapshots.rs expression: dis --- ; SPIR-V ; Version: 1.0 ; Generator: rspirv ... The Makefile's `validate-foo` targets trim off those lines with `tail -n +5` before submitting their test to the validators. However, some versions of the `insta` crate seem to generate headers with an extra blank line, like this: --- source: tests/snapshots.rs expression: dis --- This makes the `validate-foo` targets unhappy. This commit changes the `validate-foo` targets to use `sed` to cope with both kinds of headers.
-
- Apr 13, 2021
-
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
- Apr 12, 2021
-
-
Dzmitry Malyshau authored
-
- Apr 11, 2021
-
-
Ashley authored
-
Ashley authored
* Make constant composites non-constexpr * Update shadow test
-
Ashley authored
* Add a note about references and pointers to Expression::Load * Formatting * Remove comma * Clearer English
-
Ashley authored
* Handle length(float x) * Handle length(float) and distance(float, float) * Apply suggestions * Apply suggestions * Move stack size range up by 1000
-
Ashley authored
* Take references in function calls if thats what the funciton wants * Use references instead of pointers the function argument list
-
Ashley authored
-
Timo de Kort authored
* Add hlsl-out feature * Integrate hlsl-out with snapshots * Add snapshot
-
Ashley authored
* Handle NaN and inf * Handle negative infinity
-
Mehmet Oguz Derin authored
-
Simas Toleikis authored
-
- Apr 10, 2021
-
-
Ashley Ruglys authored
-
- Apr 09, 2021
-
-
Matúš Talčík authored
beautify beautify #2
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Dzmitry Malyshau authored
-
Jim Blandy authored
This adds `use` declarations for `spirv::Decoration` and `spirv::BuiltIn` local to functions where those are used repeatedly.
-
- Apr 08, 2021
-
-
LaughingMan authored
The initial intention was to make the code a little more elegant and match on the Vec itself instead of its length, however there's also a - probably minuscule - performance advantage: `Vec::remove` internally copies the removed element onto the stack. In this case that's a `StructMember` weighting 48 bytes. The `Binding` we are actually interested in is only 8 bytes tough. Cloning just the `Binding` saves us from copying 40 bytes for nothing.
-