Commit Graph

472 Commits

Author SHA1 Message Date
Dzmitry Malyshau
f3cab651bb [spv-out] support Switch statements 2021-02-12 10:17:27 -05:00
Dzmitry Malyshau
9b358efea1 [wgsl] support 'elseif' construct 2021-02-11 20:50:27 -05:00
Dzmitry Malyshau
86bb611905 [wgsl] support select() 2021-02-11 15:32:28 -05:00
Dzmitry Malyshau
b3d80de9e1 [spv-out] fix the clippy warning about Result type 2021-02-11 11:24:06 -05:00
Dzmitry Malyshau
38f3c4eb19 [spv-in] support dynamic vector insert/extract 2021-02-11 10:58:52 -05:00
Dzmitry Malyshau
49eb93cf7d [spv-in] support boolean constants 2021-02-11 10:58:52 -05:00
Dzmitry Malyshau
2507794bc6 [spv-in] add more capabilities we support 2021-02-11 10:58:52 -05:00
Pelle Johnsen
c04c971907 [glsl-in] Fix StorageClass for texture and sampler 2021-02-11 10:33:21 -05:00
Dzmitry Malyshau
20227e7c87 [msl] pass-through global resources in arguments 2021-02-10 23:22:14 -05:00
Dzmitry Malyshau
dad02eb0a8 [msl-out] support all binary ops 2021-02-10 23:22:14 -05:00
Dzmitry Malyshau
3b4935550d Separate validation job on macOS 2021-02-10 23:17:18 -05:00
Dzmitry Malyshau
bfbb30b375 Add CI action for validation of native shaders 2021-02-10 21:48:45 -05:00
Dzmitry Malyshau
3aa11838c7 Refactor the global usage code into a separate module, fix inheriting from the callees 2021-02-10 11:02:56 -05:00
Dzmitry Malyshau
4f19903f46 [wgsl] fix variable initializers wrt control flow 2021-02-09 00:47:41 -05:00
Dzmitry Malyshau
5b94ecd9b2 Add a snapshot for parsing spirv input 2021-02-08 15:59:47 -05:00
Dzmitry Malyshau
cf0a86afd4 [spv-in] move all the image-related logic into a sub-module 2021-02-08 15:59:47 -05:00
Dzmitry Malyshau
6b9d3eafc8 [spv-in] Rewrite the comparison image/sample handling.
Keep track of the comparison property per global variable instead of  type.
Only track images that can actually be comparison-sampled.
Instead of mutating the type, just add a new type in the end
if we detect it to be necessary, cloning the old name.
2021-02-08 15:59:47 -05:00
Dzmitry Malyshau
10867879d4 [spv-in] support projection sampling and sampling from arrays 2021-02-08 11:31:45 -05:00
Dzmitry Malyshau
680fda9e1b [spv-out] fix initial ID 0 and 1 assignments 2021-02-08 00:20:37 -05:00
Dzmitry Malyshau
76094aa553 [mtl] fix nested loop service variable 2021-02-08 00:13:12 -05:00
Joshua Groves
832e259a03 Ues updated paths in Makefile 2021-02-07 18:16:26 -05:00
Joshua Groves
31be7099f2 Move snapshot inputs and outputs around 2021-02-07 18:16:26 -05:00
Dzmitry Malyshau
6f50ca6bee Push constant support 2021-02-07 11:54:56 -05:00
Dzmitry Malyshau
960aabec20 [spv-in] Implement OpCompositeInsert 2021-02-07 11:49:52 -05:00
Dzmitry Malyshau
75427cf95c [spv-in] handle matrix decorations 2021-02-07 11:44:47 -05:00
João Capucho
993521965d Add support for unary ops to glsl 2021-02-06 22:23:09 -05:00
João Capucho
708751a805 Add support for relational functions to glsl-in 2021-02-06 16:57:30 -05:00
João Capucho
da8f9ecbb9 Add support for more math functions in glsl-in 2021-02-06 16:57:30 -05:00
João Capucho
e0005211a3 Fix the way equality is handled in glsl 2021-02-06 16:04:24 -05:00
Dzmitry Malyshau
251f800825 Remove the typifier hack for void functions 2021-02-06 10:42:54 -05:00
Dzmitry Malyshau
d0c84a5ffa [spv-in] support for void function calls 2021-02-06 10:42:54 -05:00
Dzmitry Malyshau
11a3ed9837 WGSL support for void function calls 2021-02-06 10:42:54 -05:00
Dzmitry Malyshau
d949d58f7b Statement for void function call 2021-02-06 10:42:54 -05:00
João Capucho
f9f41fc9bf Add support for more math functions in glsl 2021-02-06 00:41:00 -05:00
João Capucho
2f9c957198 Add support for pow and fix mix arguments 2021-02-06 00:41:00 -05:00
João Capucho
ae72fb0933 Add support for component wise comparison to glsl 2021-02-06 00:41:00 -05:00
João Capucho
647dd76dba Moved the ConstantSolver to the glsl frontend 2021-02-06 00:25:30 -05:00
João Capucho
88eee833d7 Add binary op support for the ConstantSolver 2021-02-06 00:25:30 -05:00
Dzmitry Malyshau
b1fa7471d2 Basic image query support in SPV and WGSL frontends 2021-02-05 15:26:45 -05:00
Dzmitry Malyshau
50f0ad6249 Image queries 2021-02-05 15:26:45 -05:00
Dzmitry Malyshau
c496c05ba4 Makefile commands for native shader validation 2021-02-05 14:04:02 -05:00
Dzmitry Malyshau
ac27a1abaa Don't break upon a void function in the typifier 2021-02-05 10:08:34 -05:00
Dzmitry Malyshau
f563b5810b [spv-in] support OpImage, OpImageFetch, OpLogicalOr, OpLogicalAnd, relational functions, and fix OpUndef 2021-02-04 09:49:40 -05:00
Dzmitry Malyshau
423ccc2074 [spv-in] parse OpConstantNull and OpUndef 2021-02-04 09:49:40 -05:00
Dzmitry Malyshau
0970ef0ea5 [spv-in] derive the block status of a structure from its members 2021-02-04 09:49:40 -05:00
tfgast
71fdaedcec FragDepth is a Write Property
FragDepth is written to in a fragment shader, not read.
2021-02-03 22:29:42 -05:00
João Capucho
bb88aac937 Add matrix access to ConstantSolver 2021-02-02 11:17:34 -05:00
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