Dzmitry Malyshau
0945889dd7
[msl] filter out entry points based on the bindings
2021-03-15 10:31:45 -04:00
Dzmitry Malyshau
7d47a1b585
[spv-in] re-order the functions for the IR
2021-03-15 09:35:13 -04:00
Dzmitry Malyshau
20979b4800
[wgsl] type inference for constants
2021-03-15 01:31:57 -04:00
Lain-dono
4fb82bd955
[spv-out] implement derivatives
2021-03-14 20:34:59 -04:00
Dzmitry Malyshau
32a11752af
Rename FragCoord builtin into Position
2021-03-13 23:26:19 -05:00
Dzmitry Malyshau
ebcd815250
Update IR to have entry points with inputs/outputs
2021-03-13 23:26:19 -05:00
Dzmitry Malyshau
58a4e330dc
[glsl-out] fix cached expressions
2021-03-13 11:52:23 -05:00
Dzmitry Malyshau
7ebd96b597
Fix uniformity requirements of emitted expressions
2021-03-12 16:21:08 -05:00
Dzmitry Malyshau
9e5cc4c9e4
Prevent matching on a reference once and for all
2021-03-12 11:35:09 -05:00
Dzmitry Malyshau
dd273e254a
Distinguish between expression uniformity and function uniformity
2021-03-11 10:14:47 -05:00
Gordon-F
74d1fdbf2a
[glsl-out] Return reflection info to users
2021-03-10 17:10:58 -05:00
Igor Shaposhnik
25fe522423
[glsl-out] Properly write array type
2021-03-10 15:17:07 -05:00
Dzmitry Malyshau
f5ee791912
More error information for uniformity analysis
2021-03-09 22:54:03 -05:00
Igor Shaposhnik
f586d3e240
[glsl-out] Workaround lod array shadow as textureGrad
2021-03-09 15:08:08 -05:00
Dzmitry Malyshau
e7c1415ca4
[spv-in] really consider variables as pointers
2021-03-09 10:10:10 -05:00
Dzmitry Malyshau
7c26320cce
[spv-in] defer function call patching to the end of the module
2021-03-09 10:10:10 -05:00
Dzmitry Malyshau
d433ee81e6
Relax array and block structure validation
2021-03-09 09:55:17 -05:00
Dzmitry Malyshau
13d7a353e0
Switch entry points from map to a vec
2021-03-07 12:11:49 -05:00
Dzmitry Malyshau
6afd72b8dd
Relax interpolation validation for vertex outputs
2021-03-06 23:41:53 -05:00
Dzmitry Malyshau
e92b35725c
[spv-in] work around integer built-ins for compute
2021-03-06 23:11:14 -05:00
Dzmitry Malyshau
2045a4a7be
Use BOOL_WIDTH everywhere
2021-03-06 11:01:14 -05:00
Dzmitry Malyshau
dd823a4b84
Enforce pointer semantics at the type level.
2021-03-06 11:01:14 -05:00
Igor Shaposhnik
7bc7288828
[glsl-out] Properly write structure type in statement
2021-03-05 23:10:16 -05:00
Igor Shaposhnik
d1c47d1705
[glsl-out] Set precision for image type
2021-03-05 23:10:16 -05:00
Igor Shaposhnik
50e5904add
[glsl-out] Fix statement indentation
2021-03-04 10:03:39 -05:00
Dzmitry Malyshau
52b34eb51b
Fix warning in the convert example
2021-03-04 10:03:22 -05:00
Dzmitry Malyshau
fd34e0abb5
Install graphviz on CI
2021-03-04 10:03:22 -05:00
Joshua Groves
667f01ce17
[wgsl-in] Add descriptions for more errors
2021-03-04 00:10:58 -05:00
Dzmitry Malyshau
3fcc0759ed
GraphViz backend
2021-03-03 21:20:12 -05:00
Joshua Groves
764bec5322
[wgsl-in] Expose location of parser errors
2021-03-03 10:26:47 -05:00
Dzmitry Malyshau
2c67d1873f
Remove the Interface processor
2021-03-02 21:50:06 -05:00
Dzmitry Malyshau
89e37d6e90
Explicitly emit expressions by Statement::Emit
2021-03-02 21:50:06 -05:00
Igor Shaposhnik
230ec601ed
[glsl-out] Fix array writing
2021-03-02 21:48:23 -05:00
Igor Shaposhnik
6e37f336bd
[glsl-out] Set workgroup_size for compute shaders
2021-03-02 14:26:01 -05:00
Igor Shaposhnik
04b1f44396
[glsl-out] Fix atan2 math function
2021-03-01 10:42:09 -05:00
Dzmitry Malyshau
69bf7f5f17
Miscellaneous fixes
2021-03-01 09:35:29 -05:00
Dzmitry Malyshau
96527290f3
[wgsl-in] encapsulate logic into parse_statement_restricted
2021-03-01 09:35:29 -05:00
Matúš Talčík
34c549d49d
spv-in flow: fix loop
2021-03-01 09:27:44 -05:00
Joshua Groves
bb7105387d
[wgsl-in] Use codespan to report errors
2021-02-28 00:07:37 -05:00
Matúš Talčík
53f7f9de92
spv-in: fix if branches in CFG
...
format
2021-02-26 09:18:10 -05:00
Dzmitry Malyshau
7c2f4eac2e
[spv] fix unsigned selector and bitcast
2021-02-26 09:17:32 -05:00
Dzmitry Malyshau
afbcf05006
Move the convert from an example to a binary target
2021-02-25 10:05:21 -05:00
Dzmitry Malyshau
cb45cd9011
[spv-in] dump the flow graph before it's serialized
2021-02-25 10:05:21 -05:00
Dzmitry Malyshau
1dc955551b
[spv-out] use image_fetch where appropriate ( #522 )
2021-02-25 09:57:35 -05:00
Anthony Cowley
822be23f35
Validate signed integer array size constants ( #517 )
...
Until we have some amount of type inference, an integer literal used as a constant array size must have a `u` suffix. This is inconsistent with the surface syntax presented in the spec, and is a minor inconvenience.
For now, allow a signed integer array size to pass validation so that user code need not change when type inference deduces values of the correct type.
2021-02-24 12:47:02 -05:00
Pelle Johnsen
51cbd4c112
[glsl-in] Add initial support for glslpp-rs ( #513 )
...
* [glsl-in] Add initial support for glslpp-rs
* [glsl-in] Add remaining Punct mappings
Fix some tests.
* [glsl-in] Add basic error handling for glslpp-rs
* [glsl-in] Fix clippy issues
* [glsl.in] Add pp-rs floats
* [glsl-in] Remove old lex and preprocessor
* [glsl-in] Improve lexer token code
* [glsl-in] Rename lex_pp > lex
Also LexerPP > Lexer
* [glsl-in] glslpp-rs review feedback
* [glsl-in] Use rev for pp-rs dep
* [glsl-in] Parse on lexer err
2021-02-24 12:07:09 -05:00
Dzmitry Malyshau
df14c4b7ca
[spv-in] fix OpString and OpLine parsing
2021-02-24 09:10:26 -05:00
Joshua Groves
9c47a5fe17
[wgsl] Track token span for unexpected errors
2021-02-23 21:08:46 -05:00
Dzmitry Malyshau
0cefc1c46c
Remove mutation from the Call expression
2021-02-22 23:37:26 -05:00
Dzmitry Malyshau
d3062a2f3b
Statement validation
2021-02-22 15:36:25 -05:00