HLSL: Stop including empty structures in the I/O interface. Fix #785.

This commit is contained in:
John Kessenich
2017-08-03 18:41:48 -06:00
parent 6042eb475b
commit cca42a8ea6
23 changed files with 64 additions and 244 deletions

View File

@@ -42,7 +42,6 @@ Shader version: 500
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)
@@ -93,18 +92,17 @@ Shader version: 500
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 48
// Id's are bound by 45
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 31 35 38 47
EntryPoint Vertex 4 "main" 31 35 38
Source HLSL 500
Name 4 "main"
Name 8 "VS_INPUT"
@@ -122,12 +120,9 @@ Shader version: 500
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
@@ -145,9 +140,6 @@ Shader version: 500
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