Bill Hollings
a3546ebb54
spirv_msl only add padding structure members if required by member alignment.
2017-03-06 11:00:23 -05: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
Hans-Kristian Arntzen
0e7c33ff81
Update glslang to latest on Travis.
...
Fix a lingering bug with OpSelect and boolean mix().
2017-02-11 10:52:34 +01:00
Bill Hollings
e016de860a
Update MSL reference shaders affected by upstream pull.
2017-02-09 13:16:13 -05:00
Bill Hollings
6159a61c95
CompilerMSL add support for texel buffers.
...
Compiler MSL support DimBuffer as image dimension.
CompilerMSL check texture coordinate result type dimension before adding swizzles.
Update MSL reference shaders affected by this update.
2017-02-09 12:14:30 -05:00
Hans-Kristian Arntzen
bd7c47a071
Add force no external validation path to HLSL as well.
2017-02-05 11:23:09 +01:00
Hans-Kristian Arntzen
70743b9be4
Disable xcrun validation on Travis for now.
2017-02-05 11:13:09 +01:00
Hans-Kristian Arntzen
5dd7c04195
Merge branch 'master' of git://github.com/brenwill/SPIRV-Cross into pr-109
2017-02-05 10:59:44 +01:00
Hans-Kristian Arntzen
9cb8616c31
Do not use write/read counters for "global" parameters.
...
Fixes device const & SSBO issues.
2017-02-05 10:50:14 +01:00
Hans-Kristian Arntzen
4ca769b546
Merge branch 'msl_global-invocation-id' of git://github.com/Kangz/SPIRV-Cross into pr-105
2017-02-05 10:14:38 +01:00
Hans-Kristian Arntzen
6593a79fce
Merge pull request #115 from KhronosGroup/for-loop-order-fix
...
For loop evaluation order fix.
2017-02-04 10:45:53 +01:00
Hans-Kristian Arntzen
24df8f0019
Run format_all.sh.
2017-02-04 10:26:26 +01:00
Hans-Kristian Arntzen
ad0c5c6e6c
Make test script agnostic to newline convention.
...
Improves testability on Windows.
2017-02-04 10:19:44 +01:00
Hans-Kristian Arntzen
ab21dfb25b
Fix execution order for for-loop emission.
...
In some cases, the compiler decided to emit continue block first,
which invalidated the expressions used by the condition.
Parameters to functions can be evaluated in any order which caused
"random" behavior.
2017-02-04 10:07:20 +01:00
Hans-Kristian Arntzen
4881d41b5c
Merge pull request #114 from syoyo/fix-exceptions-to-assertions-build
...
Fix build when SPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS=On.
2017-02-03 07:40:33 +01:00
Syoyo Fujita
29179f746a
Fix build when SPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS=On.
2017-02-03 13:54:35 +09:00
Hans-Kristian Arntzen
07a4915e9a
Merge pull request #113 from h3xl3r/master
...
Fixed 'inconsistent-missing-override' warnings
2017-02-02 08:04:01 +01:00
rob
01157dd6d5
Fixed 'inconsistent-missing-override' warnings
2017-02-02 15:19:27 +09:00
Bill Hollings
e791c0b9e6
Removed Travis-killing MSL test: frag/for-loop-init.frag.
2017-01-31 12:08:08 -05:00
Bill Hollings
de72b3328e
Removed Travis-killing MSL test: flatten/copy.flatten.vert.
2017-01-31 12:01:13 -05:00
Bill Hollings
d1737c65cf
Removed Travis-killing MSL test: flatten/dynamic.flatten.vert.
2017-01-31 11:53:20 -05:00
Bill Hollings
e4f0dde68f
CompilerMSL uses std::set where order matters for consistent regression testing.
2017-01-31 11:02:44 -05:00
Bill Hollings
be4cb17a14
Enhance MSL testing and add numerous MSL test cases.
...
Add to suite of MSL tests and references any existing GLSL tests
that successfully convert GLSL->SPIRV->MSL and compile as MSL.
test_shaders_helper() ignores hidden files that start with '.',
to avoid accidentally finding hidden OSX files such as .DS_Store.
Use xcrun to compile MSL shaders instead of hard-coded path to Metal compiler.
Wrap calls to xcrun in exception handling to ignore if Xcode not installed.
For MSL tests, move call to validate_shader_msl() to after call to
regression_check() to allow a converted MSL shader to be saved for
manual review even if it doesn't successfully compile as MSL.
2017-01-30 22:55:21 -05:00
Bill Hollings
81757507be
CompilerMSL support separate indexed MTLBuffers for stage_in containing matrices.
...
Add DecorationBinding to Compiler::get_member_decoration()/set_member_decoration().
2017-01-29 13:28:20 -05:00
Bill Hollings
05be822512
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2017-01-28 12:54:49 -05:00
Hans-Kristian Arntzen
18c37bcdab
Update license headers for 2017.
2017-01-28 09:00:40 +01:00
Hans-Kristian Arntzen
56df3bf5fe
Add HLSL testing to ctest.
2017-01-28 08:58:39 +01:00
Hans-Kristian Arntzen
d0cc4fe3ad
Fix Wshadow warning.
2017-01-28 08:58:25 +01:00
Hans-Kristian Arntzen
1850457b28
Merge pull request #107 from Kode/hlsl
...
HLSL Support
2017-01-28 08:53:24 +01:00
Bill Hollings
804d5313fa
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2017-01-27 16:12:37 -08:00
Robert Konrad
f7eecd7b82
Correct HLSL vector types properly
2017-01-27 17:02:59 +01:00