HLSL: Register all entry-point in/out as part of the interface.

This makes the interface be invariant, whether or not individual
variables are used.
This commit is contained in:
John Kessenich 2016-09-12 11:55:47 -06:00
parent b3e24e4359
commit deb4940c17
98 changed files with 448 additions and 19 deletions

View file

@ -126,6 +126,11 @@ Shader version: 450
0:? 'gs_ua4' (global 4-component vector of uint)
0:? 'gs_ub4' (global 4-component vector of uint)
0:? 'gs_uc4' (global 4-component vector of uint)
0:? '@entryPointOutput' (out 4-component vector of float)
0:? 'inF0' (layout(location=0 ) in 4-component vector of float)
0:? 'inF1' (layout(location=1 ) in 4-component vector of float)
0:? 'inF2' (layout(location=2 ) in 4-component vector of float)
0:? 'inI0' (layout(location=3 ) in 4-component vector of int)
Linked vertex stage:
@ -258,15 +263,20 @@ Shader version: 450
0:? 'gs_ua4' (global 4-component vector of uint)
0:? 'gs_ub4' (global 4-component vector of uint)
0:? 'gs_uc4' (global 4-component vector of uint)
0:? '@entryPointOutput' (out 4-component vector of float)
0:? 'inF0' (layout(location=0 ) in 4-component vector of float)
0:? 'inF1' (layout(location=1 ) in 4-component vector of float)
0:? 'inF2' (layout(location=2 ) in 4-component vector of float)
0:? 'inI0' (layout(location=3 ) in 4-component vector of int)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 121
// Id's are bound by 128
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "VertexShaderFunction" 85
EntryPoint Vertex 4 "VertexShaderFunction" 85 122 123 124 127
Name 4 "VertexShaderFunction"
Name 15 "VertexShaderFunctionS(f1;f1;f1;i1;"
Name 11 "inF0"
@ -313,7 +323,15 @@ Shader version: 450
Name 118 "gs_ua4"
Name 119 "gs_ub4"
Name 120 "gs_uc4"
Name 122 "inF0"
Name 123 "inF1"
Name 124 "inF2"
Name 127 "inI0"
Decorate 85(@entryPointOutput) Location 0
Decorate 122(inF0) Location 0
Decorate 123(inF1) Location 1
Decorate 124(inF2) Location 2
Decorate 127(inI0) Location 3
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@ -377,6 +395,13 @@ Shader version: 450
118(gs_ua4): 117(ptr) Variable Private
119(gs_ub4): 117(ptr) Variable Private
120(gs_uc4): 117(ptr) Variable Private
121: TypePointer Input 61(fvec4)
122(inF0): 121(ptr) Variable Input
123(inF1): 121(ptr) Variable Input
124(inF2): 121(ptr) Variable Input
125: TypeVector 8(int) 4
126: TypePointer Input 125(ivec4)
127(inI0): 126(ptr) Variable Input
4(VertexShaderFunction): 2 Function None 3
5: Label
Store 85(@entryPointOutput) 87