SPV: Flatten structs for copy when they are GLSL type aliases.
authorJohn Kessenich <cepheus@frii.com>
Fri, 2 Sep 2016 17:20:21 +0000 (11:20 -0600)
committerJohn Kessenich <cepheus@frii.com>
Fri, 2 Sep 2016 22:35:01 +0000 (16:35 -0600)
commit4bf71550519121504c171a8c5b569d048e78d597
treed1fbcab5dddb49dbfd842718b73f4c203050624c
parent31207bc20a0d8430552e5c5aba537d015ab2e689
SPV: Flatten structs for copy when they are GLSL type aliases.

Addresses issue #304 and issue #307 by replacing unmatched type OpStores with
per-member copies. Covers assignment statements and most argument passing, but
does not yet cover r-value-based argument passing.
SPIRV/GlslangToSpv.cpp
Test/baseResults/spv.multiStruct.comp.out [new file with mode: 0755]
Test/baseResults/spv.multiStructFuncall.frag.out [new file with mode: 0755]
Test/spv.multiStruct.comp [new file with mode: 0644]
Test/spv.multiStructFuncall.frag [new file with mode: 0755]
glslang/Include/revision.h
gtests/Spv.FromFile.cpp