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
Hans-Kristian Arntzen
2cbeaac76f
Merge pull request #218 from KhronosGroup/constant-buffer-sm51
...
Add support for SM5.1 ConstantBuffer<T>.
2017-06-30 22:56:13 +02:00
Hans-Kristian Arntzen
cf09eb3773
Consider different binding space for push constants.
2017-06-30 22:16:24 +02:00
Hans-Kristian Arntzen
ecf56cff2b
Add support for SM5.1 ConstantBuffer<T>.
2017-06-30 10:34:21 +02:00
Hans-Kristian Arntzen
98a17431c2
Merge pull request #214 from dsrbecky/texture-keyword
...
Add "texture" to the keyword list.
2017-06-27 18:35:00 +02:00
Hans-Kristian Arntzen
e095ccae82
Merge pull request #213 from dsrbecky/OpString
...
Ignore debug instruction OpString
2017-06-27 18:34:29 +02:00
David Srbecky
edec5ea137
Add "texture" to the keyword list.
...
I have encountered several shaders where people use "texture" as
local variable (old shaders from times when it was not build-in).
2017-06-27 15:35:47 +01:00
David Srbecky
a08b26926c
Ignore debug instruction OpString
...
It may be used with OpLine or OpSource to specify filename.
2017-06-27 15:34:45 +01:00
Hans-Kristian Arntzen
ecf830846f
Merge pull request #212 from KhronosGroup/composite-insert-cleanup
...
Remove remnants of old OpCompositeInsert hack.
2017-06-27 08:06:19 +02:00
Hans-Kristian Arntzen
0aac31bda1
Remove remnants of old OpCompositeInsert hack.
2017-06-26 22:58:41 +02:00
Hans-Kristian Arntzen
b0540c28ca
Merge pull request #211 from dsrbecky/OpCompositeInsert
...
Always make a copy when handling OpCompositeInsert
2017-06-26 22:53:46 +02:00
David Srbecky
77b5b4446b
Always make a copy when handling OpCompositeInsert
...
The modified object might not be mutable (e.g. shader input).
Added a test for the case when this happens.
2017-06-26 18:32:53 +01:00
Hans-Kristian Arntzen
e70ba405c2
Merge pull request #210 from Jasonchan35/master
...
added --rename-interface-variable <in|out> <location> <new_variable_name>
2017-06-26 12:47:56 +02:00
Jason Chan
3281e8278f
move the spirv_glsl.cpp specific logic to main.cpp
2017-06-25 15:16:09 +02:00
Jason Chan
02a8bb6975
remove debug message
2017-06-23 23:14:06 +02:00
Jason Chan
f03d377faa
fix tab indent
2017-06-23 22:23:26 +02:00
Jason Chan
9f1eb5a20d
added --rename-interface-variable <in|out> <location> <new_variable_name>
2017-06-23 22:20:42 +02:00
Hans-Kristian Arntzen
f5fd965fa0
Merge pull request #209 from KhronosGroup/texture-lod-as-grad
...
Workaround textureLod on sampler2DArrayShadow
2017-06-23 10:03:10 +02:00
Hans-Kristian Arntzen
d38b1b086a
Fix typo.
2017-06-23 09:50:01 +02:00
Hans-Kristian Arntzen
7bb749142c
Run format_all.sh.
2017-06-23 09:46:15 +02:00
Hans-Kristian Arntzen
ad2b7c05e7
Implement workaround for textureLod on 2D array shadow.
...
This does not exist in GLSL, but it exists in HLSL if LOD == 0.0.
2017-06-23 09:45:42 +02:00
Hans-Kristian Arntzen
c6051bbbfa
Merge pull request #206 from KhronosGroup/glslang-update
...
Update glslang
2017-06-22 19:52:11 +02:00
Hans-Kristian Arntzen
a1f5453519
Assign block locations to members in MSL.
2017-06-21 09:55:46 +02:00
Hans-Kristian Arntzen
602ed34e34
Update glslang travis commit.
2017-06-21 09:40:12 +02:00
Hans-Kristian Arntzen
de33d89074
Add explicit in/out locations everywhere.
...
Needed for newer glslang. With Vulkan semantics for SPIR-V, all
locations must be explicitly defined.
2017-06-21 09:39:08 +02:00
Hans-Kristian Arntzen
81ad58be86
Merge pull request #203 from KhronosGroup/separate-shadow-sampler-refactor
...
Avoid ugly workaround for separate shadow samplers in GLSL/HLSL.
2017-06-17 11:06:52 +02:00
Hans-Kristian Arntzen
b0f7deedec
Run format_all.sh.
2017-06-17 10:56:24 +02:00