Hans-Kristian Arntzen
719cf9d42f
Run format_all.sh.
2018-03-13 14:05:33 +01:00
Hans-Kristian Arntzen
8e90382675
Properly flatten MRT outputs in MSL.
2018-03-13 14:03:35 +01:00
Hans-Kristian Arntzen
b46910e9f5
Access chain into packed vectors as arrays.
...
Cleaner and should be more compatible with storing to packed vector
elements.
Fix CompositeExtract bug with packed vectors on MSL.
2018-03-13 12:13:33 +01:00
Hans-Kristian Arntzen
4979d10b54
Implement packHalf2x16/unpackHalf2x16 on MSL.
2018-03-12 17:51:14 +01:00
Hans-Kristian Arntzen
ae2680c898
Make sure ballotARB inherits expression dependencies.
2018-03-12 17:42:48 +01:00
Hans-Kristian Arntzen
938c7debed
Handle control-dependent temporaries.
...
Derivatives, subgroup and implicit-lod instructions all need to happen
in the block they were created.
2018-03-12 17:34:54 +01:00
Hans-Kristian Arntzen
012377f811
Refactor block IO emission to use bitset.
2018-03-12 15:59:34 +01:00
Hans-Kristian Arntzen
9fbd8b789e
Update tests for latest SPIRV-Tools and glslang.
2018-03-12 15:11:55 +01:00
Hans-Kristian Arntzen
e8e58844d4
Rewrite everything to use Bitset rather than uint64_t.
2018-03-12 13:24:14 +01:00
Sidney Just
e66fd6c2a0
Added generation of the textureXYZGrad() legacy GLSL instruction
2018-03-12 00:59:06 +10:00
Hans-Kristian Arntzen
9a52713d77
Run format_all.sh.
2018-03-09 15:26:36 +01:00
Hans-Kristian Arntzen
1de74fdabd
Explicitly emit break/continues in selection branches.
2018-03-09 13:59:39 +01:00
Hans-Kristian Arntzen
e0efa737ca
Expand the implementation of inherit_expression_dependencies.
2018-03-09 13:21:38 +01:00
Hans-Kristian Arntzen
28cccc3dbb
Emit complex continue blocks "properly".
2018-03-08 17:59:21 +01:00
Hans-Kristian Arntzen
8d557d4103
Handle cases where merge selects as also loop merge or continue blocks.
2018-03-08 14:01:10 +01:00
Hans-Kristian Arntzen
922420e346
Disallow arrays and structs from becoming loop variables.
...
Fixes awkward code-gen issue.
2018-03-07 14:54:11 +01:00
Hans-Kristian Arntzen
2e5d06d1ce
Merge pull request #485 from KhronosGroup/fix-484
...
Add true FP16 support.
2018-03-07 11:59:12 +01:00
Hans-Kristian Arntzen
47d94ff8d9
Add FP16 to HLSL.
...
Cannot be used in buffer types, similar to mediump in GLSL.
half is useless, because it's 32-bit in FXC.
2018-03-07 10:21:25 +01:00
Hans-Kristian Arntzen
15a941cd3d
Add builtin GLSL functions to blacklist.
2018-03-06 17:37:47 +01:00
Hans-Kristian Arntzen
d9da2db442
Some compat fixes for MSL and Half.
2018-03-06 17:09:18 +01:00
Hans-Kristian Arntzen
24dfe496c2
Run format_all.sh.
2018-03-06 17:09:18 +01:00
Hans-Kristian Arntzen
05348a66ca
Add test shader for FP16 support.
2018-03-06 17:09:18 +01:00
Hans-Kristian Arntzen
bc0f698df3
Fix packing alignments for float16.
2018-03-06 17:09:18 +01:00
Hans-Kristian Arntzen
91f85d3412
Begin adding float16_t support to GLSL.
2018-03-06 17:09:18 +01:00
Hans-Kristian Arntzen
294259e2f1
Fix type aliasing on MSL.
...
Be careful about who gets to be the alias master, and don't alias types
when we have packed types in play.
2018-03-05 16:27:04 +01:00
Hans-Kristian Arntzen
3c1b147272
Support Invariant for BuiltInPosition.
2018-03-01 12:31:39 +01:00
Hans-Kristian Arntzen
e69b1aeed8
Fix implicit conversion bug.
2018-02-26 09:29:18 +01:00
Hans-Kristian Arntzen
fda36f832b
Fix function overload when SPIR-V overloads on pointer type.
2018-02-25 10:58:22 +01:00
Hans-Kristian Arntzen
dd603eab58
Support spec constant array size in blocks.
...
Won't really be correct if the spec constant is changed outside
SPIRV-Cross, but nothing we can do about that, really.
2018-02-23 15:11:45 +01:00
Hans-Kristian Arntzen
a04bdcc7f7
Handle overloaded functions which share the same OpName.
...
Awkward, but legal SPIR-V.
2018-02-23 14:15:51 +01:00
Hans-Kristian Arntzen
047ad7df0f
Support special float constants (NaN/Inf).
2018-02-23 13:06:20 +01:00
Hans-Kristian Arntzen
fb3f92a3ff
Overhaul clip/cull distance support in GLSL.
2018-02-22 14:36:50 +01:00
Hans-Kristian Arntzen
47b37423a2
Run format_all.sh.
2018-02-21 13:46:16 +01:00
Hans-Kristian Arntzen
1a2e4de7a5
Add test for texelFetch without sampler.
2018-02-21 13:45:59 +01:00
Hans-Kristian Arntzen
54a065bb5f
Run format_all.sh.
2018-02-15 13:32:49 +01:00
Hans-Kristian Arntzen
3fa6cc8f2c
Implement FRem.
2018-02-15 13:31:29 +01:00
Hans-Kristian Arntzen
636cc30088
Fix case where hoisted temporaries were used before being declared.
2018-02-15 10:52:56 +01:00
Bill Hollings
2964e328e6
CompilerMSL support gl_SampleMask and convert it to scalar uint from array.
2018-02-13 14:44:40 -05:00
Bill Hollings
b453348370
Merge branch 'master' of https://github.com/billhollings/SPIRV-Cross
2018-02-11 16:54:25 -05:00
Bill Hollings
607b0d6d42
CompilerMSL support smaller offsets for 3-row row-major matrices.
...
Support MSL typedefs to declare 3-row row-major matrices as 3-column matrices.
Allow those matrices to be decorated as packed.
Support transposing those matrices when used.
Modify how member alignments are calculated.
2018-02-11 16:52:57 -05:00
Hans-Kristian Arntzen
a3ae861844
Fix depth image usage in MSL for separate image/samplers.
2018-02-10 10:55:10 +01:00
Hans-Kristian Arntzen
18a594a76b
Implement subpass input support in HLSL.
2018-02-10 10:54:42 +01:00
Hans-Kristian Arntzen
00ccd590ee
Return arrays in HLSL/MSL by writing to an output variable instead.
2018-02-08 12:22:08 +01:00
Hans-Kristian Arntzen
9fa91f7e1c
Support returning arrays from functions in GLSL/MSL.
...
Not possible in HLSL apparently, need workaround ...
2018-02-08 12:22:08 +01:00
msiglreith
d096f5cafe
hlsl: Support custom root constant layout
2018-02-07 15:21:52 +01:00
Hans-Kristian Arntzen
4b58f65af7
Merge pull request #438 from zeux/msvc-warning-fix
...
Fix MSVC 2017 warning
2018-02-07 13:01:25 +01:00
Arseny Kapoulkine
24cf3080cd
Fix MSVC 2015 warning
...
Fixes the following warning:
> C4146: unary minus operator applied to unsigned type, result still unsigned
2018-02-06 21:43:24 -08:00
twinaphex
59a12c7e71
Uniquely name these static functions
2018-02-03 23:23:30 +01:00
aliaspider
5fc48b61fa
add matrix
to the list of illegal names.
2018-02-02 12:56:15 +01:00
Hans-Kristian Arntzen
5d9df6a31c
Do not declare constant composites inline in HLSL.
...
Move arrays and structs out to their own global static constants.
Also, replace illegal names in HLSL as well.
2018-02-02 10:12:26 +01:00