HLSL: remove pervertex output blocks

This removes pervertex output blocks, in favor of using only
loose variables.  The pervertex blocks are not required and were
only partly implemented, and were adding some complication.

This change goes with wrap-entry-point.
This commit is contained in:
steve-lunarg
2017-02-03 13:37:54 -07:00
committed by John Kessenich
parent fbb58a4e0b
commit 2c5ab9c8fc
11 changed files with 20 additions and 182 deletions

View File

@@ -98,7 +98,6 @@ Shader version: 450
0:? 'Pos_in' (in 4-component vector of float Position)
0:? 'x1_in' (layout(location=1 ) in int)
0:? 'Pos_loose' (in 4-component vector of float Position)
0:? 'PerVertex_out' (out block{out 4-component vector of float Position @entryPointOutput_Pos_out})
Linked vertex stage:
@@ -203,16 +202,15 @@ Shader version: 450
0:? 'Pos_in' (in 4-component vector of float Position)
0:? 'x1_in' (layout(location=1 ) in int)
0:? 'Pos_loose' (in 4-component vector of float Position)
0:? 'PerVertex_out' (out block{out 4-component vector of float Position @entryPointOutput_Pos_out})
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 76
// Id's are bound by 73
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 40 44 47 51 61 67 75
EntryPoint Vertex 4 "main" 40 44 47 51 61 67
Name 4 "main"
Name 9 "VS_INPUT"
MemberName 9(VS_INPUT) 0 "x0_in"
@@ -240,17 +238,12 @@ Shader version: 450
MemberName 59(VS_OUTPUT) 1 "x1_out"
Name 61 "@entryPointOutput"
Name 67 "@entryPointOutput_Pos_out"
Name 73 "PerVertex_out"
MemberName 73(PerVertex_out) 0 "@entryPointOutput_Pos_out"
Name 75 "PerVertex_out"
Decorate 40(x0_in) Location 0
Decorate 44(Pos_in) BuiltIn Position
Decorate 47(x1_in) Location 1
Decorate 51(Pos_loose) BuiltIn Position
Decorate 61(@entryPointOutput) Location 0
Decorate 67(@entryPointOutput_Pos_out) BuiltIn Position
MemberDecorate 73(PerVertex_out) 0 BuiltIn Position
Decorate 73(PerVertex_out) Block
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 1
@@ -278,9 +271,6 @@ Shader version: 450
64: TypePointer Output 6(int)
66: TypePointer Output 8(fvec4)
67(@entryPointOutput_Pos_out): 66(ptr) Variable Output
73(PerVertex_out): TypeStruct 8(fvec4)
74: TypePointer Output 73(PerVertex_out)
75(PerVertex_out): 74(ptr) Variable Output
4(main): 2 Function None 3
5: Label
38(vsin): 10(ptr) Variable Function