Hans-Kristian Arntzen
447545311b
Add test for input I/O blocks in fragment.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
e89b789af3
Add some tests for no stage inputs or outputs in HLSL.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
62df60ea3d
Update vertex locations test to include I/O blocks.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
439fa9f4a2
Handle I/O blocks separately from regular inputs and outputs.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
784a23b92a
Add instancing test to HLSL.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
a4aa89e992
Add test for fragment builtins like gl_FragDepth/gl_FragCoord.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
61c31c6054
Make use of explicit locations in HLSL.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
2ebe1a87a1
Run format_all.sh.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
bdea1a444a
Begin rewriting how HLSL deals with inputs and outputs.
2017-03-21 13:48:50 +01:00
Hans-Kristian Arntzen
099f307123
Add traversal for active builtin variables.
...
Refactor some ugly type-copying for access chains.
2017-03-21 13:48:28 +01:00
Hans-Kristian Arntzen
829910280d
Merge pull request #142 from KhronosGroup/logical-vector-ops
...
Handle vector variants of OpLogicalAnd/Or/Not.
2017-03-20 23:04:58 +01:00
Hans-Kristian Arntzen
75391f9a68
Handle vector variants of OpLogicalAnd/Or/Not.
2017-03-20 22:45:40 +01:00
Hans-Kristian Arntzen
4941970905
Merge pull request #134 from brenwill/master
...
CompilerMSL aligns MSL struct members with SPIR-V offsets
2017-03-20 09:04:12 +01:00
Bill Hollings
6fdb534f4b
test_shaders.py support deprecated --metal CLI option.
2017-03-19 21:46:06 -04:00
Bill Hollings
5ad73f33f5
MSL fixes from review of PR 134.
...
Remove unnecessary use of std:: prefix in spirv_msl.cpp.
Use typedef instead of #define.
spirv-cross deprecate --metal CLI option and replace with --msl option.
2017-03-19 21:06:21 -04:00
Bill Hollings
52a5597161
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2017-03-17 11:16:47 -04:00
Hans-Kristian Arntzen
088b06ebda
Merge pull request #138 from KhronosGroup/deprecation-macro
...
Add deprecation macro.
2017-03-15 11:11:34 +01:00
Hans-Kristian Arntzen
8411470ab9
Add deprecation macro.
2017-03-15 10:31:19 +01:00
Bill Hollings
5550c87b1f
CompilerMSL options access and UBO alignment test case.
...
CompilerMSL accesses options using same design pattern as CompilerGLSL and CompilerHLSL.
CompilerMSL support setting VA & rez binding specs via either constructor or compile() method overload.
CompilerMSL support single UBO packing and padding in single pass.
spriv_cross app (main.cpp) supports turning off UBO packing and padding via command line option.
Add MSL UBO alignment test shader.
2017-03-12 17:42:51 -04:00
Bill Hollings
dc69427402
Updates to MSL functionality to support PR review feedback.
2017-03-11 12:17:22 -05:00
Bill Hollings
65cd7eb670
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2017-03-09 13:18:48 -05:00
Hans-Kristian Arntzen
6381b2ff9c
Merge pull request #135 from hrydgard/warning-fix
...
Just fix a few minor warnings.
2017-03-07 10:57:02 +01:00
Henrik Rydgård
bfae041e21
Fix a few minor warnings. (i was used as a uint32_t in multiple places, like type_member_for_offset, so changed its type)
2017-03-07 10:19:08 +01:00
Bill Hollings
826de0e777
Merge with upstream and resolve conflicts.
2017-03-06 12:15:42 -05:00
Bill Hollings
a3546ebb54
spirv_msl only add padding structure members if required by member alignment.
2017-03-06 11:00:23 -05:00
Hans-Kristian Arntzen
5eb447f4b6
Merge pull request #133 from KhronosGroup/flatten-io-block
...
Add support for flattening I/O blocks.
2017-03-06 14:21:55 +01:00
Hans-Kristian Arntzen
fd12124bf7
Add tests for legacy I/O flattening.
2017-03-06 14:04:01 +01:00
Hans-Kristian Arntzen
c5de1cfa90
Add support for flattening I/O blocks.
...
Fix issue where layout() qualifiers are emitted for members in legacy
targets.
2017-03-06 14:01:51 +01:00
Hans-Kristian Arntzen
33ec91724d
Merge pull request #132 from KhronosGroup/cull-distance
...
Add built-in cull distance.
2017-03-05 14:55:28 +01:00
Hans-Kristian Arntzen
7f2e17969b
Add built-in cull distance.
2017-03-05 12:47:03 +01:00
Bill Hollings
5cb3ce96a7
spirv_msl pack MSL uniform struct members only when size warrants.
2017-03-02 17:57:26 -08:00
Bill Hollings
b332bae3c3
spirv_msl unpack packed MSL uniform struct members.
...
spirv_glsl add member_is_packed_type() and unpack_expression_type() functions.
2017-03-01 13:07:40 -05:00
Bill Hollings
484931d8b2
spirv_msl auto-alignment of members of MSL uniform structs.
...
spirv_msl optionally add padding and packing to allow MSL
struct members to align with SPIR-V struct alignments.
spirv_cross add convenience methods for testing Decorations.
spirv_glsl replace member_decl() function with new emit_stuct_member().
Allow struct member types to be marked as packed via DecorationCPacked decoration.
2017-02-28 21:44:36 -05:00
Bill Hollings
92f12d1d29
CompilerMSL avoid including hidden variables as entry point function arguments.
2017-02-25 23:19:52 -05:00
Hans-Kristian Arntzen
f33220e45a
Merge pull request #127 from KhronosGroup/flatten-io
...
Flatten varying structs in legacy targets.
2017-02-24 14:30:47 +01:00
Hans-Kristian Arntzen
bcf2303ba0
Do not emit storage qualifiers for local variables.
...
Metal backend uses local variables to implement global variables.
Do not emit storage qualifiers for any variable which is declared inside
a function.
2017-02-24 11:15:34 +01:00
Hans-Kristian Arntzen
036b9b73f5
Emit storage qualifier in the correct place.
...
Need to emit qualifiers in a specific order for legacy GLSL.
<interpolation> <storage> <precision> <type>.
2017-02-24 09:56:17 +01:00
Hans-Kristian Arntzen
e941b92b11
Write up a section in README about implementation details.
2017-02-23 20:00:17 +01:00
Hans-Kristian Arntzen
eb5e09fa64
Run format_all.sh.
2017-02-23 19:33:14 +01:00
Hans-Kristian Arntzen
fc80cd8cbf
Add support for loading flattened structs.
2017-02-23 19:31:56 +01:00
Hans-Kristian Arntzen
97350d32fd
Fix cases for flattened struct write.
...
Handle writing the entire struct as well as writing the elements
individually.
2017-02-23 19:05:11 +01:00
Hans-Kristian Arntzen
3c58bbbcbe
Flatten varying structs outputs in legacy targets.
2017-02-22 20:17:58 +01:00
Hans-Kristian Arntzen
dff7d72321
Merge pull request #124 from KhronosGroup/hlsl-options
...
Add option to set HLSL shader model.
2017-02-18 09:29:01 +01:00
Hans-Kristian Arntzen
2e3c6ec6a9
Add option to set HLSL shader model.
2017-02-16 11:17:12 +01:00
Hans-Kristian Arntzen
c92b839ecb
Fix crash when passing wrong arguments.
...
THROW() did not actually throw in exception-enabled builds, silly
oversight.
2017-02-16 11:06:57 +01:00
Hans-Kristian Arntzen
b72feb557c
Merge pull request #122 from zeux/metal-validate
...
Update to Xcode 8.2 on Travis and reenable Metal validation
2017-02-15 09:00:07 +01:00
Arseny Kapoulkine
6ecdf6f7ae
Update to Xcode 8.2 on Travis and reenable Metal validation
...
We need recent Xcode to support ios-metal1.2
2017-02-15 10:04:38 +03:00
Hans-Kristian Arntzen
603673629e
Merge pull request #118 from brenwill/master
...
CompilerMSL add support for texel buffers.
2017-02-11 19:50:58 +01:00
Bill Hollings
1699e69ccd
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2017-02-11 10:58:07 -05:00
Hans-Kristian Arntzen
c6ffc16a57
Merge pull request #119 from KhronosGroup/glslang-update
...
Update glslang to latest on Travis.
2017-02-11 11:01:16 +01:00