Jian Yang
df6574d764
fix typo in CMakeLists.txt
2018-08-04 14:40:06 +08:00
Bill Hollings
162eee6325
Merge pull request #648 from billhollings/master
...
CompilerMSL disable rasterization on buffer writes in vertex shader.
2018-07-29 15:22:14 -04:00
Bill Hollings
c3d74e1e14
CompilerMSL disable rasterization on buffer writes in vertex shader.
2018-07-27 16:53:36 -04:00
Hans-Kristian Arntzen
439da40b1f
Merge pull request #646 from billhollings/master
...
Add CompilerMSL::get_is_rasterization_disabled() to manage rasterization status.
2018-07-27 11:34:56 +02:00
Bill Hollings
0d6202e770
Add CompilerMSL::get_is_rasterization_disabled() to manage rasterization status.
2018-07-26 16:40:32 -04:00
Hans-Kristian Arntzen
5be1d911cc
Merge pull request #644 from billhollings/master
...
CompilerMSL vertex entry point return void when rasterization disabled.
2018-07-26 16:36:53 +02:00
Bill Hollings
ac238b858b
CompilerMSL vertex entry point return void when rasterization disabled.
...
Add CompilerMSL::Options::disable_rasterization input/output API flag.
Disable rasterization via API flag or when writing to textures.
Disable rasterization when shader declares no output.
Add test shaders for vertex no output and write texture forcing void output.
2018-07-26 00:50:33 -04:00
Hans-Kristian Arntzen
cc7679ee45
Workaround NOMINMAX issues on Windows.
...
::max() can be overridden if you forget NOMINMAX on Windows.
Hardcode literals instead. UINT32_MAX also requires weird macros in C++.
2018-07-17 00:10:12 +02:00
Hans-Kristian Arntzen
be7425ef70
Merge pull request #639 from KhronosGroup/fix-638
...
Properly track read dependencies for UAV access chain.
2018-07-09 14:30:16 +02:00
Hans-Kristian Arntzen
18b82caf83
Properly track read dependencies for UAV access chain.
2018-07-09 14:02:50 +02:00
Hans-Kristian Arntzen
9409247666
Merge pull request #637 from KhronosGroup/flattened-composites-fix
...
Fix a lot of redundant code when loading flattened composites.
2018-07-06 11:19:39 +02:00
Hans-Kristian Arntzen
e1367e609a
Fix a lot of redundant code when loading flattened composites.
2018-07-06 10:57:23 +02:00
Hans-Kristian Arntzen
0f59016635
Merge pull request #636 from KhronosGroup/cfg-refactor
...
Refactor CFG analysis to handle static const LUTs
2018-07-05 16:23:39 +02:00
Hans-Kristian Arntzen
2bf57d6dff
Deal with composite constants in variable initializer.
2018-07-05 15:29:49 +02:00
Hans-Kristian Arntzen
dcddd5326e
Add LUT test cases for OpVariable with initializer.
2018-07-05 14:51:07 +02:00
Hans-Kristian Arntzen
af290ede87
Remove some redundant spvArrayCopy declarations.
2018-07-05 14:43:12 +02:00
Hans-Kristian Arntzen
8c314112b4
Run format_all.sh.
2018-07-05 14:18:34 +02:00
Hans-Kristian Arntzen
5582523d9a
Add some tests for LUT promotion.
...
Also, update other tests.
2018-07-05 14:14:18 +02:00
Hans-Kristian Arntzen
5143695080
Don't need to enclose expression for arrays.
2018-07-05 14:09:25 +02:00
Hans-Kristian Arntzen
d29f48ef06
Deduce constant LUTs from read-write variables.
2018-07-05 13:25:57 +02:00
Hans-Kristian Arntzen
b5ed706860
Hoist out variable scope analysis.
2018-07-05 10:42:05 +02:00
Hans-Kristian Arntzen
c26c41b26b
Make the CFGs for all active functions available.
...
Will make writing other CFG-depended stuff easier.
2018-07-04 17:26:53 +02:00
Hans-Kristian Arntzen
6fdadb9218
Track partial writes as well.
...
We will need this for LUT promotion.
2018-07-04 16:46:25 +02:00
Hans-Kristian Arntzen
7216129377
Hoist out the inline VariableAccessHandler class.
...
Will need this refactor to make it more widely useful for more advanced
workarounds.
2018-07-04 16:20:38 +02:00
Hans-Kristian Arntzen
f96c9f9fb4
Merge pull request #635 from KhronosGroup/fix-631
...
Support OpTypeImage with depth == 2 (unknown) properly.
2018-07-04 14:45:01 +02:00
Hans-Kristian Arntzen
e044732896
Support OpTypeImage with depth == 2 (unknown) properly.
...
Track which OpSampledImages are ever used with Dref opcodes.
2018-07-04 14:26:23 +02:00
Hans-Kristian Arntzen
a6814a405a
Merge pull request #630 from KhronosGroup/fix-628
...
Fail more gracefully with some unsupported opcodes.
2018-07-02 14:03:29 +02:00
Hans-Kristian Arntzen
af2d3abd03
Fail more gracefully with some unsupported opcodes.
2018-07-02 13:22:21 +02:00
Hans-Kristian Arntzen
26107ba200
Fix os.errno issues on Travis.
2018-07-02 13:12:58 +02:00
cedega
ee44f6027b
Changed OpTypeImage to only flag depth if the op is 1
...
Based on the SPIR-V spec, `Depth` is only guaranteed if the op is 1. An op of 2 may or may not be depth, which is what DXC outputs for all texture types.
https://www.khronos.org/registry/spir-v/specs/1.0/SPIRV.html#OpTypeImage
https://github.com/Microsoft/DirectXShaderCompiler/blob/master/docs/SPIR-V.rst#textures
2018-06-30 04:38:19 -07:00
Hans-Kristian Arntzen
c863f53cac
Merge pull request #627 from KhronosGroup/macro-namespace-fix
...
Add basic namespace to internal macros
2018-06-28 23:55:58 +02:00
Hans-Kristian Arntzen
9ddbd5aff6
Run format_all.sh.
2018-06-28 23:00:26 +02:00
Hans-Kristian Arntzen
f1752e58e1
Add basic namespace to internal macros.
...
Some projects build SPIRV-Cross as a single translation unit
and this causes a lot of warnings because the same macro is redeclared
multiple times in the different backends. This make sure that each
backend has its own namespace for internal macros.
2018-06-28 22:57:52 +02:00
Hans-Kristian Arntzen
d67e586b2e
Merge pull request #626 from billhollings/master
...
CompilerMSL support larger texel buffers by using 2D Metal textures.
2018-06-27 18:03:45 +02:00
Bill Hollings
9bf226cb05
Fixes for code review of PR 626.
2018-06-27 10:34:15 -04:00
Bill Hollings
4c5142b9d3
CompilerMSL support larger texel buffers by using 2D Metal textures.
...
Add CompilerMSL::Options::texture_width_max.
Emit and use spvTexelBufferCoord() function to convert 1D
texel buffer coordinates to 2D Metal texture coordinates.
2018-06-26 17:30:21 -04:00
Hans-Kristian Arntzen
314f39a7c4
Merge pull request #621 from billhollings/master
...
CompilerMSL pass builtin struct members into functions.
2018-06-25 20:29:18 +02:00
Bill Hollings
4beefe756c
Fixes from PR 621 code review.
2018-06-25 11:40:20 -04:00
Bill Hollings
f66507a701
Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Cross
2018-06-25 10:52:15 -04:00
Hans-Kristian Arntzen
0ea5e0549e
Merge pull request #615 from JustSid/master
...
Added support for shadowXY() sample instructions in legacy GLSL
2018-06-25 11:52:45 +02:00
Sidney Just
5ac55ee735
Fixed emission of some legacy texture ops without requiring the appropriate extensions
2018-06-25 02:11:46 -07:00
Sidney Just
ceec708b89
Added better fallbacks for legacy textureProjLod() and textureProjLodOffset() generation
2018-06-25 02:06:45 -07:00
Hans-Kristian Arntzen
994f789465
Merge pull request #624 from KhronosGroup/fix-619
...
Support branch/loop hints in HLSL.
2018-06-25 10:53:52 +02:00
Hans-Kristian Arntzen
33c61d2abe
Support branch/loop hints in HLSL.
2018-06-25 10:33:13 +02:00
Hans-Kristian Arntzen
327fb03677
Merge pull request #623 from KhronosGroup/fix-618
...
Support globallycoherent in HLSL.
2018-06-25 10:31:28 +02:00
Hans-Kristian Arntzen
2077478651
Merge pull request #622 from KhronosGroup/fix-620
...
Support ternary expressions in OpSpecConstantOp.
2018-06-25 10:31:15 +02:00
Hans-Kristian Arntzen
10dfaf79d5
Support globallycoherent in HLSL.
2018-06-25 10:04:25 +02:00
Hans-Kristian Arntzen
ffa9133d77
Support ternary expressions in OpSpecConstantOp.
2018-06-25 09:49:13 +02:00
Bill Hollings
e091031613
CompilerMSL pass builtin struct members into functions.
...
Add and use Compiler::get_non_pointer_type() convenience functions.
2018-06-24 15:06:12 -04:00
Hans-Kristian Arntzen
7607eb6923
Merge pull request #617 from KhronosGroup/fix-612
...
Deal with some builtins being declared with wrong signedness.
2018-06-22 12:21:14 +02:00