Bill Hollings
472f9d4f6d
Add tests for OpSpecConstantOp ops OpQuantizeToF16 and OpSRem.
...
Tests provided by @cdavis5e.
2021-09-05 16:51:04 -04:00
Le Hoang Quyen
9ddfe6db6d
Fix #1359 : MSL: If the packed type is scalar, don't emit "pack_" prefix.
...
Scalar type is already packed in metal.
2020-05-06 00:43:34 +08:00
Hans-Kristian Arntzen
ebf463674d
MSL: Allow removing clip distance user varyings.
...
Only safe if user knows that subsequent shader stage will not read clip
distance.
2020-04-20 09:58:40 +02:00
Hans-Kristian Arntzen
a3fe9756d2
MSL: Support ClipDistance as an input stage variable.
...
MSL does not support this, so we have to emulate it by passing it around
as a varying between stages. We use a special "user(clipN)" attribute
for this rather than locN which is used for user varyings.
2019-12-02 13:19:42 +01:00
Hans-Kristian Arntzen
a7b2ba28a0
MSL: Support Invariant qualifier on position.
2019-06-12 09:39:12 +02:00
Hans-Kristian Arntzen
314efdcc42
MSL: Fix declaration of unused input variables.
...
In multiple-entry-point modules, we declared builtin inputs which were
not supposed to be used for that entry point.
Fix this, by being more strict when checking which builtins to emit.
2019-05-31 13:23:34 +02:00
Chip Davis
01c491648b
Fix a copy-pasto.
2019-04-26 17:16:21 -05:00
Hans-Kristian Arntzen
056a0ba27e
Fix case where a struct is loaded which contains a row-major matrix.
2019-02-20 12:19:00 +01:00
Hans-Kristian Arntzen
d94d20f4f3
Deal with some builtins being declared with wrong signedness.
2018-06-22 11:30:56 +02:00
Hans-Kristian Arntzen
991b655c72
Declare OpSpecConstantOp up-front on relevant targets.
...
Required, since spec constants can include results from constant ops.
2018-05-15 14:20:16 +02:00
Hans-Kristian Arntzen
e7bf8d2f48
Refactor out noopt shaders to their own folders.
...
Makes maintenance easier with less clutter.
2018-03-13 10:39:49 +01:00
Hans-Kristian Arntzen
5fe79eb59c
Update tests.
...
Adds an earlier reported shader packing failure into regression suite.
2018-03-05 16:34:42 +01:00
Hans-Kristian Arntzen
8538b4c9c0
Handle empty struct declarations with best effort.
...
This "feature" is a bit icky as we have no useful representation of it,
so never emit code which has anything to do with empty structs.
2017-10-06 13:05:14 +02:00