Commit Graph

1140 Commits

Author SHA1 Message Date
Hans-Kristian Arntzen
9a52713d77 Run format_all.sh. 2018-03-09 15:26:36 +01:00
Hans-Kristian Arntzen
a803e5ae38 Deprecate set_options()/get_options() interface, replace it.
Replace with common/hlsl/msl instead. The old interface had some bad
interaction with overloading which meant you had to up-cast to base
class to be able to use set_options, which was awkward.
2018-03-09 15:25:25 +01:00
Hans-Kristian Arntzen
236b2fa47c
Merge pull request #496 from KhronosGroup/fix-494
Handle Phi expressions being invalidated at end of a block.
2018-03-09 15:00:22 +01:00
Hans-Kristian Arntzen
e3b8e9455c Add test shader where a phi variable invalidates a temporary.
The temporary in question is used to flush a phi variable.
2018-03-09 14:42:26 +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
01fbb3a342
Merge pull request #495 from KhronosGroup/fix-493
Fix cases where loops and branches merge into continue blocks.
2018-03-09 09:04:16 +01:00
Hans-Kristian Arntzen
28cccc3dbb Emit complex continue blocks "properly". 2018-03-08 17:59:21 +01:00
Hans-Kristian Arntzen
54549a624f Add some test shaders for special merge methods. 2018-03-08 16:48:50 +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
8c8a93f745
Merge pull request #492 from KhronosGroup/fix-488
Disallow arrays and structs from becoming loop variables.
2018-03-07 15:04:57 +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
bdabd0c73a Disable double test in MSL FP16 tests. 2018-03-07 11:36:26 +01:00
Hans-Kristian Arntzen
723bec5d33 frexp/ldexp fails in debug builds, workaround temporarily. 2018-03-07 11:20:53 +01:00
Hans-Kristian Arntzen
0780820a7b Skip interpolateAt tests with FP16. 2018-03-07 10:58:38 +01:00
Hans-Kristian Arntzen
ac0e93f392 Run format_all.sh. 2018-03-07 10:29:20 +01:00
Hans-Kristian Arntzen
18ad1be3c3 Add FP16 test for MSL as well. 2018-03-07 10:29:11 +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
770ed25f29
Merge pull request #487 from KhronosGroup/fix-486
Add builtin GLSL functions to blacklist.
2018-03-06 18:21:39 +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
547278da12 Test denormal fp16 constants. 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
b0a2de5b63
Merge pull request #483 from KhronosGroup/fix-466
Overhaul type_alias for MSL.
2018-03-06 16:41:04 +01:00
Hans-Kristian Arntzen
38d9d8af68 Add some more MSL test shaders. 2018-03-05 16:42:38 +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
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
c9516fa917 Fix OSX Travis. 2018-03-02 09:47:37 +01:00
grovesNL
94cd77799f Move rename_interface_variable to util 2018-03-01 23:47:08 -07:00
Hans-Kristian Arntzen
467c95679e
Merge pull request #480 from KhronosGroup/fix-476
Take execution model into account for entry point methods.
2018-03-01 14:42:16 +01:00
Hans-Kristian Arntzen
1e4db56a65 Run format_all.sh. 2018-03-01 14:03:59 +01:00
Hans-Kristian Arntzen
eecbeaa33d Take execution model into account for entry point methods.
SPIR-V allows names to alias if they implement different stages.
Deprecate the old interface and replace it with a new one which takes
execution modes into account.
2018-03-01 14:00:55 +01:00
Hans-Kristian Arntzen
337150f12d
Merge pull request #479 from KhronosGroup/fix-477
Support Invariant for BuiltInPosition.
2018-03-01 12:53:26 +01:00
Hans-Kristian Arntzen
3c1b147272 Support Invariant for BuiltInPosition. 2018-03-01 12:31:39 +01:00
Hans-Kristian Arntzen
cae17224a0
Merge pull request #475 from KhronosGroup/fix-convert-cast
Fix implicit conversion bug.
2018-02-26 09:36:43 +01:00
Hans-Kristian Arntzen
e69b1aeed8 Fix implicit conversion bug. 2018-02-26 09:29:18 +01:00
Hans-Kristian Arntzen
b39c0630f3
Merge pull request #474 from KhronosGroup/fix-pointer-overload
Fix function overload when SPIR-V overloads on pointer type.
2018-02-25 11:16:41 +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
a61e728418
Merge pull request #472 from KhronosGroup/fix-446
Implement MatrixInverse on HLSL.
2018-02-23 17:04:09 +01:00
Hans-Kristian Arntzen
6a12ff7fb7 Fix multiple declaration of spvDet2x2 on MSL. 2018-02-23 16:52:11 +01:00
Hans-Kristian Arntzen
b380a2113a Implement MatrixInverse on HLSL.
Copy-paste implementation from MSL. I assume it's correct.
2018-02-23 16:42:40 +01:00
Hans-Kristian Arntzen
6066fe486e
Merge pull request #471 from KhronosGroup/fix-462
Add workaround for PointCoord builtin on HLSL.
2018-02-23 16:07:28 +01:00
Hans-Kristian Arntzen
f6d08e6113 Add workaround for PointCoord builtin on HLSL. 2018-02-23 15:58:35 +01:00
Hans-Kristian Arntzen
fb196c2565
Merge pull request #470 from KhronosGroup/fix-459
Support spec constant array size in blocks.
2018-02-23 15:35:34 +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
32b1c7d88b
Merge pull request #469 from KhronosGroup/fix-454
Handle overloaded functions which share the same OpName.
2018-02-23 14:34:01 +01:00