Commit Graph

425 Commits

Author SHA1 Message Date
João Capucho
fcbf2aa4c4 Add support for unary ops to the constant solver
Fix wrong result when casting to bool
Add tests
2021-02-02 11:17:34 -05:00
João Capucho
53bd721895 Add support for casts in constant expressions 2021-02-02 11:17:34 -05:00
João Capucho
68bbf00249 Added support for initalizers and constants 2021-02-02 11:17:34 -05:00
Dzmitry Malyshau
e05baa2889 [spv] put NonWritable on buffer variable itself (#405) 2021-02-01 20:17:50 -05:00
Dzmitry Malyshau
5def021b6e [spv] replace the internal type inferrence with the typifier (#403)
Also, fix the Typifier's handling of logical operations.
See https://github.com/gfx-rs/naga/pull/404 for v0.3 branch.
2021-02-01 09:33:28 -05:00
Lain-dono
6ff725d89a [spv-out] Add missing math functions (#401)
* [spv-out] Add missing builtins

* [spv-out] remove a non-existent integer version of mix
2021-02-01 00:28:17 -05:00
Lain-dono
208346fad6 [spv-out] implement discard 2021-01-31 23:39:45 -05:00
João Capucho
c12003f564 Populate ResolveContext with functions
Add support for more math functions
2021-01-31 21:21:51 -05:00
João Capucho
daf18642d7 Add support for hexadecimal literals 2021-01-31 21:20:59 -05:00
João Capucho
df3759ebff Fix double constant lexing and lex uint constants 2021-01-31 21:20:59 -05:00
Jay Oster
9f88c3e986 Update emoji in README 2021-01-31 21:19:18 -05:00
Dzmitry Malyshau
537a516ff5 Version bump to 0.3.1 naga-v0.3.1 2021-01-31 18:27:08 -05:00
Dzmitry Malyshau
6138e4ddd3 [spv] fix block decoration on nested structs 2021-01-31 18:27:08 -05:00
Dzmitry Malyshau
4a3ecc774f [wgsl] remove function and constant lookup maps 2021-01-31 18:27:08 -05:00
Dzmitry Malyshau
cb36c642ea [wgsl] refactor constants processing, add support for array sizes 2021-01-31 18:27:08 -05:00
Dzmitry Malyshau
7c6835bdbc [spv] fix support for fixed-size array, refactor constant writes 2021-01-31 18:27:08 -05:00
Dzmitry Malyshau
1ec4c2b0d0 [spv] implement NonReadable/NonWritable decorations 2021-01-31 18:27:08 -05:00
Dzmitry Malyshau
15b629b750 [spv] put ColMajor on the struct member 2021-01-31 18:27:08 -05:00
João Capucho
b55aa51f65 Add support for function declarations with arguments
Change ParseError to be public
Change globals to default to private instead of throwing error
2021-01-30 13:44:39 -05:00
Dzmitry Malyshau
be86f5b7cf Update README table 2021-01-30 11:54:15 -05:00
Dzmitry Malyshau
40974d503c Bump version to 0.3 and update changelog naga-v0.3.0 2021-01-30 11:48:37 -05:00
Dzmitry Malyshau
b8e9c209b0 [mtl] fix unsigned constants, comparison level option 2021-01-30 15:14:38 +01:00
Dzmitry Malyshau
0bbeec7d55 Add shadow snapshot shader 2021-01-30 15:14:38 +01:00
Dzmitry Malyshau
3b9f517446 [mtl] implement continuing, fix Greater op and scoping 2021-01-30 15:14:38 +01:00
Baptiste Manson
0c725c0837 added function pow from spirv backend 2021-01-29 17:38:41 -05:00
Dzmitry Malyshau
ea64ab0431 Check host shared decorations in the validator 2021-01-29 21:22:04 +01:00
Dzmitry Malyshau
0c5db60d69 [spv] fix depth sampler type 2021-01-29 21:05:15 +01:00
Dzmitry Malyshau
4a13ce022b [spv] debug labels for types, local variables, and struct members 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
089a5597c6 [spv] implement the rest of binary operators 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
20b9aa6835 Address clippy issues 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
162079c160 Enable collatz and boids testing for spv-out 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
194a67edda [spv] separate block ID creation from contents writing 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
7d3342f2c9 [spv] Implement math comparison functions 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
b9cc890ca6 [spv] implement loops 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
16521a94d0 [spv] implement trigonometry math functions 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
3177df2188 [spv] refactor the return statement handling 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
e3328773d0 [spv] Refactor struct Block, implement Statement::Block 2021-01-28 17:28:48 +01:00
Timo de Kort
88f118a07d Working prototype 2021-01-28 17:28:48 +01:00
Dzmitry Malyshau
dc98305bb8 Print out detailed WGSL errors 2021-01-28 01:22:10 -05:00
Dzmitry Malyshau
4f517f4af3 [wgsl] include the expected string into the error 2021-01-28 01:22:10 -05:00
Dzmitry Malyshau
3e4cb21b90 [wgsl] support simple block statements 2021-01-27 21:31:04 +01:00
Dzmitry Malyshau
61fd868a22 [spv] implement full image sampling 2021-01-27 11:24:27 -05:00
Dzmitry Malyshau
ab2cf8b842 [wgsl] support vector type casts 2021-01-26 23:33:08 -05:00
Dzmitry Malyshau
9c74468f81 [wgsl] enable access via rgba 2021-01-26 17:04:11 -05:00
Dzmitry Malyshau
292304b66f [wgsl] fix postfix expression parsing 2021-01-26 16:44:19 -05:00
Dzmitry Malyshau
986550aff8 [wgsl] fix and update storage load 2021-01-26 15:57:48 -05:00
Dzmitry Malyshau
ce15aa62fc [spv] indexing values 2021-01-26 15:36:30 -05:00
Joshua Groves
d7225b4eb6 [glsl-out] Improve formatting of whitespace 2021-01-25 23:57:54 -05:00
Joshua Groves
58f38ba61d [msl-out] Improve formatting of whitespace 2021-01-25 23:57:54 -05:00
Dzmitry Malyshau
a5184fba49 Check for the block decorator in the validator 2021-01-25 09:06:32 -05:00