Commit Graph

613 Commits

Author SHA1 Message Date
Dzmitry Malyshau
7a246f6a14 Validate image queries and valid shader stages for derivatives 2021-03-24 12:32:32 -04:00
Gordon-F
ee43776c08 [glsl-out] Add samplers to reflection info 2021-03-23 22:14:22 -04:00
Dzmitry Malyshau
374f12b6ab ID generator for SPIR-V 2021-03-23 10:11:50 -04:00
Dzmitry Malyshau
8712020115 Move Layouter into ModuleInfo 2021-03-23 10:11:50 -04:00
Dzmitry Malyshau
15a1941d6a [msl-out] adjust error/stack size expectations 2021-03-22 15:17:00 -04:00
Dzmitry Malyshau
6086f13bf0 Move the growable typifier into frontend helpers 2021-03-22 15:17:00 -04:00
Dzmitry Malyshau
d4bc463d50 Stop using the old Typifier in the backends 2021-03-22 15:17:00 -04:00
Dzmitry Malyshau
970b77abaf Make type a part of ExpressionInfo 2021-03-22 15:17:00 -04:00
Dzmitry Malyshau
1d3f2bbdb1 Merge FunctionAnalysisError into FunctionError 2021-03-22 15:17:00 -04:00
Dzmitry Malyshau
1b3e7294fd Move type validation into a sub-module 2021-03-21 22:27:32 -04:00
Dzmitry Malyshau
1ddea0fdbb Validate layouts 2021-03-21 22:27:32 -04:00
Dzmitry Malyshau
e3ae5904ba Move AnalysisFlags into ValidationFlags, add bits for expressions and blocks 2021-03-20 22:25:49 -04:00
Dzmitry Malyshau
efcfa37634 Implement Index for Layouter 2021-03-20 22:25:49 -04:00
Dzmitry Malyshau
c992e638fe Move all the validation into a separate meta-module 2021-03-20 22:25:49 -04:00
Dzmitry Malyshau
caee860b70 Make uniformity analysis optional 2021-03-20 22:25:49 -04:00
Dzmitry Malyshau
d5fbb193c3 Validate Select and Relational expressions 2021-03-19 10:39:54 -04:00
Dzmitry Malyshau
c2f70aaf80 Validate binary expressions 2021-03-19 10:39:54 -04:00
Dzmitry Malyshau
daab319dc0 Validate Expression::Compose 2021-03-19 10:39:54 -04:00
Dzmitry Malyshau
d58f9bdfde Merge sample mask in/out builtins 2021-03-18 21:57:48 -04:00
Dzmitry Malyshau
67ca0e7e7f First bits of expression validation 2021-03-18 11:43:00 -04:00
Dzmitry Malyshau
72ede02888 Reduce the typifier error sizes 2021-03-18 10:26:26 -04:00
Dzmitry Malyshau
8c4598a141 [msl-out] test put_expession stack footprint in debug
Also change io::Error to fmt::Error
2021-03-18 10:26:26 -04:00
Dzmitry Malyshau
6e71366bd3 Test typifier error sizes 2021-03-18 10:26:26 -04:00
Dzmitry Malyshau
dd2cd92331 [msl-out] fix varying input structures 2021-03-17 16:59:23 -04:00
Dzmitry Malyshau
f18728ed92 Enable more SPIR-V capabilities in the frontend 2021-03-17 16:33:21 -04:00
Dzmitry Malyshau
9390aa472d [glsl-out] make varying names to match 2021-03-17 10:37:10 -04:00
Gordon-F
6736bcefa6 [glsl-out] Explicitly set location bindings 2021-03-17 09:40:06 -04:00
Dzmitry Malyshau
a17ae022c6 Make analysis errors carry the function handle 2021-03-17 01:03:00 -04:00
Dzmitry Malyshau
665ac49a01 Show expression uniformity in the Dot backend 2021-03-17 01:03:00 -04:00
Dzmitry Malyshau
e3818bb236 [spv-in] fix treating OpPhi variables as pointers 2021-03-17 01:03:00 -04:00
Dzmitry Malyshau
e715bda507 [msl-out] implement composing arrays and structs 2021-03-17 01:03:00 -04:00
Dzmitry Malyshau
9846a85174 [spv-in] patch calls from the entry points 2021-03-16 22:08:06 -04:00
Dzmitry Malyshau
c5fe1d53c7 [dot] function calls 2021-03-16 22:08:06 -04:00
Dzmitry Malyshau
259a56761f Consider dynamic arrays to have at least 1 element for the layout 2021-03-16 22:08:06 -04:00
Dzmitry Malyshau
2b888e4c09 Detect the forward function calls 2021-03-16 22:08:06 -04:00
Dzmitry Malyshau
196523de78 Add v0.4 changelog 2021-03-15 22:34:56 -04:00
Dzmitry Malyshau
7de42d6f68 Don't panic too fast on failed analysis 2021-03-15 22:34:56 -04:00
Dzmitry Malyshau
08eaad89db Implement default layout in the IR and WGSL 2021-03-15 22:27:35 -04:00
Matúš Talčík
889e487b62 spv-in: fix classification of back edges
fix clippy

another fix
2021-03-15 11:09:53 -04:00
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