Commit Graph

993 Commits

Author SHA1 Message Date
Dzmitry Malyshau
8376bab562 Bump version to 0.5 naga-v0.5.0 2021-06-18 20:18:52 -04:00
Dzmitry Malyshau
f0f8a5f3ba Fix GLSL frontend clippy error 2021-06-18 20:18:52 -04:00
Dzmitry Malyshau
bfeab40c8d Changelog for v0.5 release 2021-06-18 20:18:52 -04:00
João Capucho
a1bd4a8053 [glsl-in] Allow structs as local type 2021-06-18 16:54:45 -04:00
Gordon-F
46be75fb37 [hlsl-out] Implement all parts required by quad-spv snaphost test 2021-06-18 15:23:09 -04:00
Frizi
5242d4f5a9 avoid hashmap allocation when entering namer namespace 2021-06-18 13:57:44 -04:00
Frizi
b89da31cc7 reorder namer assignment order to preserve names for reflection 2021-06-18 13:57:44 -04:00
Jakob Hellermann
9d7e5cf0b5 [cli] add codespan_reporting to glsl error 2021-06-18 16:23:13 +01:00
Jakob Hellermann
8f410d5ca8 [glsl-in] add source metadata to VariableAlreadyDeclared error 2021-06-18 16:23:13 +01:00
Jakob Hellermann
c2cfcbf84b [glsl-in] include information on what was expected in InvalidToken 2021-06-18 16:23:13 +01:00
Dzmitry Malyshau
e3827f8e08 Improve the MemberOutOfBounds error 2021-06-18 00:10:39 -04:00
Frizi
efd416d964 [glsl-in] parse all math functions 2021-06-17 16:08:34 -04:00
João Capucho
a07310536f [glsl-in] Build wgsl shaders for glsl test shaders 2021-06-17 20:57:32 +01:00
João Capucho
8a4e7b0c93 [glsl-in] Generate AccessIndex for constant access 2021-06-17 20:57:32 +01:00
João Capucho
b490902112 [glsl-in] Add loads as needed 2021-06-17 20:57:32 +01:00
Frizi
b439868c00 move SwizzleComponent impl into proc module 2021-06-17 15:21:47 -04:00
Frizi
20c6fd1862 add license headers to the bevy pbr shaders 2021-06-17 15:21:47 -04:00
Frizi
1d39a92c8b [glsl-in] parse structs inside parse_type 2021-06-17 15:21:47 -04:00
Frizi
3d5e6d51a0 [glsl-in] make sure swizzles never operate on a pointer value 2021-06-17 15:21:47 -04:00
Frizi
96980727cb [glsl-in] support nested swizzles and prevent l-value repeated components 2021-06-17 15:21:47 -04:00
Frizi
60c44b0611 [glsl-in] create temp var for swizzles used as out parameters 2021-06-17 15:21:47 -04:00
Frizi
25c0dd22cc [glsl-in] simplify parse_type identifier case 2021-06-17 15:21:47 -04:00
Frizi
f85c896ddf [glsl-in] require at least one item inside struct_declaration_list 2021-06-17 15:21:47 -04:00
Frizi
b261dde77f [glsl-in] revert test case change 2021-06-17 15:21:47 -04:00
Frizi
378ea9d396 add more glsl snapshot tests 2021-06-17 15:21:47 -04:00
Frizi
ad260062a0 [glsl-in] parse structs and resolve user-defined types 2021-06-17 15:21:47 -04:00
Frizi
c7580f2743 [glsl-in] preserve entrypoint arg names for reflection 2021-06-17 15:21:47 -04:00
Frizi
e6d142f28f [glsl-in] treat const globals as constants allow them in array size exprs 2021-06-17 15:21:47 -04:00
Frizi
7c8fbb4377 [glsl-in] support more math functions and builitns 2021-06-17 15:21:47 -04:00
Frizi
bff8b18a01 [glsl-in] lower swizzle store to per-component stores 2021-06-17 15:21:47 -04:00
Frizi
a7d3b604dc [wgsl-in] fix clippy warnings on to_wgsl methods 2021-06-17 11:50:03 -04:00
Frizi
337014786c [wgsl-in] use AccessIndex for accesses using constant index 2021-06-17 11:34:58 -04:00
Igor Shaposhnik
b29e853a86 Update wgsl-out status in README 2021-06-17 11:11:36 -04:00
Jim Blandy
b79d4c5d85 Validator::validate: Remove bogus comment.
This comment claims that the following work is being done after global
validation, but it actually appears before global validation.
2021-06-17 11:05:27 -04:00
Gordon-F
96b37aff1f [hlsl-out] Reduce heap allocation 2021-06-16 14:03:50 -04:00
Gordon-F
1b468edaa4 Makefile. Move dxc params into a variable 2021-06-16 14:03:50 -04:00
Igor Shaposhnik
b1ce49a217 Remove features from lazy CI task 2021-06-16 13:59:23 -04:00
Jim Blandy
fd83816945 Add . to the workspace's default members. Test with no features.
Naga is now a workspace with `naga` and `cli` as its two members. The default
package for cargo commands is `cli`, so that `cargo run` will just run the CLI.

However, this has a few unexpected consequences:

- Now `cargo test` will just try to run `cli`'s tests, of which there are none.
  Adding `"."` to the `default-members` list in the workspace's `Cargo.toml`
  seems to fix this, without breaking `cargo run`.

- Even with `"."` added to `default-members`, `cargo test` will build `naga` by
  default with the features requested for it in `cli/Cargo.toml`: all the front
  and back ends, but no `serialize` or `deserialize`. This means that our CI job
  meant to verify no-feature builds isn't doing that job any more. We need to
  pass `--package naga` to `cargo test` to make it test naga directly.
2021-06-16 13:53:00 -04:00
Gordon-F
822c68067c Remove all features from README 2021-06-15 21:08:05 -04:00
Gordon-F
92a11d0978 [hlsl-out] More improvements. Enable quad snapshot testing 2021-06-15 21:08:05 -04:00
Gordon-F
7430a43c36 [wgsl-out] Write constant names with namer 2021-06-15 21:08:05 -04:00
Gordon-F
d1f9575ed1 [glsl-out] Write space after if keyword 2021-06-15 21:08:05 -04:00
Jim Blandy
976ae3a9ff Makefile: Make validate-wgsl target use new 'cli' sub-package. 2021-06-14 13:15:55 -04:00
Igor Shaposhnik
343f786492 Fix testing infrastructure 2021-06-13 11:25:23 -04:00
Gordon-F
54d7d7d2a3 Improve hlsl-out 2021-06-13 11:15:42 -04:00
Evgeny Proydakov
753e9608d3 Fixed compile-time error in spv fuzzer test. (#967)
* Fixed compile-time error in spv fuzzer test.

error[E0061]: this function takes 2 arguments but 1 argument was supplied
   --> fuzz_targets/spv_parser.rs:7:19
    |
7   |     let _result = Parser::new(data.into_iter()).parse();
    |                   ^^^^^^^^^^^ ---------------- supplied 1 argument
    |                   |
    |                   expected 2 arguments
    |
note: associated function defined here
   --> /Users/evgeny.proydakov/repository/naga/src/front/spv/mod.rs:411:12
    |
411 |     pub fn new(data: I, options: &Options) -> Self {
    |            ^^^

error: aborting due to previous error

* Code review. Group imports
2021-06-12 19:46:33 -04:00
Jakob Hellermann
4224d14a08 move bin/naga.rs to a separate crate in workspace (#938)
* move bin/naga.rs to a separate crate

* enable all shader languages for naga binary

* [naga-cli] add env logger

* [naga-cli] remove unneccessary code

* [naga-cli]enable glsl-validate feature

* move naga-cli to cli, add trailing newline

* remove commented env_logger dependency
2021-06-12 19:24:01 -04:00
Dzmitry Malyshau
af022ed21e Add Hash to ResourceBinding 2021-06-10 14:19:41 -04:00
João Capucho
10422c6b4a Regenerate quad-glsl shader 2021-06-09 13:06:36 -04:00
João Capucho
06c8588fcd [glsl-in] Add collatz shader and test quad shader 2021-06-09 12:54:58 -04:00