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.
Showing
- SPIRV/GlslangToSpv.cpp 70 additions, 24 deletionsSPIRV/GlslangToSpv.cpp
- Test/baseResults/spv.multiStruct.comp.out 192 additions, 0 deletionsTest/baseResults/spv.multiStruct.comp.out
- Test/baseResults/spv.multiStructFuncall.frag.out 120 additions, 0 deletionsTest/baseResults/spv.multiStructFuncall.frag.out
- Test/spv.multiStruct.comp 48 additions, 0 deletionsTest/spv.multiStruct.comp
- Test/spv.multiStructFuncall.frag 21 additions, 0 deletionsTest/spv.multiStructFuncall.frag
- glslang/Include/revision.h 2 additions, 2 deletionsglslang/Include/revision.h
- gtests/Spv.FromFile.cpp 2 additions, 0 deletionsgtests/Spv.FromFile.cpp
Loading
Please register or sign in to comment