WIP: HLSL: preserve empty structures after splitting

This commit is contained in:
steve-lunarg
2017-03-09 19:10:57 -07:00
parent 6e1d50a7a2
commit 4198b8bfc4
8 changed files with 72 additions and 20 deletions

View File

@@ -42,6 +42,7 @@ Shader version: 450
0:16 Constant:
0:16 0 (const int)
0:? Linker Objects
0:? '@entryPointOutput' (layout(location=0 ) out structure{})
0:? 'Pos_in' (layout(location=0 ) in 4-component vector of float)
0:? 'Pos_loose' (layout(location=1 ) in 4-component vector of float)
@@ -92,17 +93,18 @@ Shader version: 450
0:16 Constant:
0:16 0 (const int)
0:? Linker Objects
0:? '@entryPointOutput' (layout(location=0 ) out structure{})
0:? 'Pos_in' (layout(location=0 ) in 4-component vector of float)
0:? 'Pos_loose' (layout(location=1 ) in 4-component vector of float)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 45
// Id's are bound by 48
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 31 35 38
EntryPoint Vertex 4 "main" 31 35 38 47
Name 4 "main"
Name 8 "VS_INPUT"
MemberName 8(VS_INPUT) 0 "Pos_in"
@@ -119,9 +121,12 @@ Shader version: 450
Name 38 "@entryPointOutput_Pos"
Name 39 "param"
Name 41 "param"
Name 45 "VS_OUTPUT"
Name 47 "@entryPointOutput"
Decorate 31(Pos_in) Location 0
Decorate 35(Pos_loose) Location 1
Decorate 38(@entryPointOutput_Pos) BuiltIn Position
Decorate 47(@entryPointOutput) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@@ -139,6 +144,9 @@ Shader version: 450
35(Pos_loose): 30(ptr) Variable Input
37: TypePointer Output 7(fvec4)
38(@entryPointOutput_Pos): 37(ptr) Variable Output
45(VS_OUTPUT): TypeStruct
46: TypePointer Output 45(VS_OUTPUT)
47(@entryPointOutput): 46(ptr) Variable Output
4(main): 2 Function None 3
5: Label
29(vsin): 9(ptr) Variable Function