Hans-Kristian Arntzen
8d7a909c92
Add support for querying SPIR-V Capabilities and Extensions.
2017-08-15 15:27:53 +02:00
Hans-Kristian Arntzen
b0985b6a93
Merge pull request #256 from KhronosGroup/multiview
...
Add support for SPV_KHR_multiview.
2017-08-15 13:43:07 +02:00
Hans-Kristian Arntzen
d7f38ab4bf
Add support for SPV_KHR_multiview.
2017-08-15 13:28:16 +02:00
Hans-Kristian Arntzen
d36bd4fb9c
Merge pull request #255 from KhronosGroup/fix-249
...
Basic HLSL compute shader support
2017-08-15 10:43:03 +02:00
Hans-Kristian Arntzen
945425eaa8
Add some access chain tests.
2017-08-15 10:23:04 +02:00
Hans-Kristian Arntzen
4375aa3fd2
Refactor out access chain reads.
...
Prepare for matrix, array and struct loads.
2017-08-15 10:12:08 +02:00
Hans-Kristian Arntzen
af2b233582
Add test for ByteAddressBuffer vs. RWByteAddressBuffer.
2017-08-15 09:39:45 +02:00
Hans-Kristian Arntzen
e2bb5b8959
Add test for compute shader builtins.
2017-08-15 09:35:23 +02:00
Hans-Kristian Arntzen
247ab1ce24
Declare ByteAddressBuffer/RWByteAddressBuffer.
2017-08-15 09:15:23 +02:00
Hans-Kristian Arntzen
7d7f4b3b50
Emit flattened loads and stores.
2017-08-15 09:15:23 +02:00
Hans-Kristian Arntzen
3cbdbec712
Begin implementing ByteAddressBuffer flattening for HLSL.
2017-08-15 09:15:23 +02:00
Hans-Kristian Arntzen
3589c64007
Merge pull request #254 from brenwill/master
...
Fix issues #239 & #245
2017-08-12 21:19:56 +02:00
Bill Hollings
1e84a379ff
Fix issue #245 : assignment of flattened input struct.
...
Emit input struct assignment by assigning member by member from stage_in struct.
Map qualified member name from pointer type, not base type.
Add Comiler::expression_type_id() function, similar to expression_type().
2017-08-12 00:21:13 -04:00
Bill Hollings
d461ca03cc
Merge branch 'master' of https://github.com/brenwill/SPIRV-Cross
2017-08-11 14:56:28 -04:00
Bill Hollings
77f5812c55
Fix issue #239 : compilation of shaders-msl/frag/texture-proj-shadow.frag.
...
Remove unsupported sampler1DShadow from shaders-msl/frag/texture-proj-shadow.frag.
Improve error message response from unsupported depth texture formats.
Fix several integer cast warnings in unrelated code.
Run ./format_all.sh on unrelated files.
2017-08-11 14:54:58 -04:00
Bill Hollings
62d12b1e4a
Fix compilation issue with shaders-msl/frag/texture-proj-shadow.frag.
...
Remove unsupported Depth1D texture from shaders-msl/frag/texture-proj-shadow.frag.
Improve error message response from unsupported depth texture formats.
Fix several integer cast warnings in unrelated code.
Run ./format_all.sh on unrelated files.
2017-08-11 14:52:14 -04:00
Hans-Kristian Arntzen
6cda7f120b
Merge pull request #246 from KhronosGroup/fix-241
...
Unify vertex clip-coord fixups.
2017-08-11 12:42:10 +02:00
Hans-Kristian Arntzen
dd4c5ce068
Merge pull request #252 from brenwill/master
...
CompilerMSL enhancements.
2017-08-11 12:41:24 +02:00
Bill Hollings
730257cf67
Merge upstream
2017-08-10 17:27:01 -04:00
Hans-Kristian Arntzen
9dbbe7c3d7
Merge pull request #251 from KhronosGroup/fix-250
...
Preserve arguments with inout unless complete writes are made.
2017-08-09 17:33:11 +02:00
Hans-Kristian Arntzen
744d0405b0
Preserve arguments with inout unless complete writes are made.
2017-08-09 17:06:41 +02:00
Hans-Kristian Arntzen
14cd000f3d
Merge pull request #247 from KhronosGroup/fix-244
...
Support OpConstantNull.
2017-08-03 14:55:41 +02:00
Hans-Kristian Arntzen
48ccde3779
Support OpConstantNull.
2017-08-03 14:32:29 +02:00
Hans-Kristian Arntzen
bdfa97a1cf
Unify vertex clip-coord fixups.
...
The different options were scattered around in different backends and
didn't really work right with CLI at all.
2017-08-03 13:02:59 +02:00
Hans-Kristian Arntzen
98b0c29f9d
Merge pull request #243 from KhronosGroup/fix-242
...
Declare undefined variables (OpUndef) upfront.
2017-08-02 12:13:05 +02:00
Hans-Kristian Arntzen
a4fafa0607
Fix edge-case where do/while body is a dominator.
...
Shows up quite a lot in inlined code, should get more test coverage in
this area ...
2017-08-02 11:58:24 +02:00
Hans-Kristian Arntzen
2abdc135c3
Declare undefined values up front.
...
They might potentially be used as part of OpStore in the SPIRV-Tools
inliner in some cases.
Implement these as declared variables but without any initializer.
2017-08-02 10:33:03 +02:00
Hans-Kristian Arntzen
8f4bbdeb0c
Merge pull request #237 from KhronosGroup/fix-236
...
Fix spurious struct type aliasing in stripped binaries.
2017-07-31 12:00:29 +02:00
Hans-Kristian Arntzen
f7b300d31e
Merge pull request #240 from KhronosGroup/fix-222
...
Do not emit layout(location) qualifiers for older GLSL targets.
2017-07-31 11:31:46 +02:00
Hans-Kristian Arntzen
56e71c1dad
Do not emit layout(location) qualifiers for older GLSL targets.
...
ESSL 300 and GLSL <410 do not support this along with legacy targets.
2017-07-31 11:17:02 +02:00
Hans-Kristian Arntzen
dea2ee7f29
Merge pull request #238 from KhronosGroup/fix-221
...
Fix textureProj with shadow on GLSL.
2017-07-31 10:23:19 +02:00
Hans-Kristian Arntzen
f337e50844
Remove MSL textureProj test shader. Need to sort it out later.
2017-07-31 10:16:07 +02:00
Hans-Kristian Arntzen
cbcaca5a39
Fix textureProj with shadow on GLSL.
2017-07-31 10:05:32 +02:00
Hans-Kristian Arntzen
818c1bea21
Fix spurious struct type aliasing in stripped binaries.
...
Should not consider aliasing when names are stripped.
2017-07-31 09:31:20 +02:00
Hans-Kristian Arntzen
24c35e3fb3
Merge pull request #235 from KhronosGroup/hlsl-spec-constant
...
Declare specialization constants in HLSL.
2017-07-30 06:32:20 +02:00
Hans-Kristian Arntzen
0817869797
Merge pull request #234 from KhronosGroup/member-name-fix
...
Fix default member name implementation.
2017-07-30 06:32:12 +02:00
Hans-Kristian Arntzen
98c76eed69
Declare specialization constants in HLSL.
2017-07-29 22:13:27 +02:00
Hans-Kristian Arntzen
dbaaf1b69e
Add test for default member names.
2017-07-29 21:58:37 +02:00
Hans-Kristian Arntzen
955319aa66
Update test files.
2017-07-29 21:47:28 +02:00
Hans-Kristian Arntzen
1c6df1b7b4
Use _m* for member names without OpMemberName.
...
Member names could conflict with type names in stripped modules with
very large structs.
2017-07-29 21:44:20 +02:00
Hans-Kristian Arntzen
7fd7dc9266
Merge pull request #229 from KhronosGroup/cfg-walk-optimize
...
Optimize CFG walking
2017-07-25 21:13:59 +02:00
Hans-Kristian Arntzen
0d14448b4d
Minor optimization of enclose_expression.
2017-07-25 18:25:03 +02:00
Hans-Kristian Arntzen
f0c50a618d
Fix parsing time explosion for huge shaders.
...
Need to prune already walked blocks.
2017-07-25 18:22:15 +02:00
Hans-Kristian Arntzen
2e4422d362
Merge pull request #228 from KhronosGroup/various-fixes
...
Various bug fixes
2017-07-24 10:29:09 +02:00
Hans-Kristian Arntzen
6ff9007311
Fix unary enclosures.
2017-07-24 10:17:19 +02:00
Hans-Kristian Arntzen
c8d60914c4
Add support for SampleId/SampleMask/SamplePosition builtins.
2017-07-24 10:07:31 +02:00
Hans-Kristian Arntzen
d89d0e01fc
Run format_all.sh.
2017-07-24 09:29:20 +02:00
Hans-Kristian Arntzen
df6aa0e609
Support SampleCmpLevelZero on cubes as well.
2017-07-24 09:28:24 +02:00
Bill Hollings
5f42746389
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2017-06-30 19:11:46 -04:00
Bill Hollings
f591bc0d4a
CompilerMSL enhancements.
...
Support BuiltInFragDepth.
Emit interface block for StorageClassUniformConstant.
Throw exception when output or fragment input structs contain matrix or array.
Dynamically created interface structs sorted by location number instead of alphabetically.
Add Compiler::is_array() function.
2017-06-30 19:10:46 -04:00