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:
@@ -34,6 +34,15 @@ gl_FragCoord origin is upper left
|
||||
0:9 0.000000
|
||||
0:9 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput' (out float)
|
||||
0:? 'inDV1a' (layout(location=0 ) in double)
|
||||
0:? 'inDV1b' (layout(location=1 ) in double)
|
||||
0:? 'inDV1c' (layout(location=2 ) in double)
|
||||
0:? 'inDV2' (layout(location=3 ) in 2-component vector of double)
|
||||
0:? 'inDV3' (layout(location=4 ) in 3-component vector of double)
|
||||
0:? 'inDV4' (layout(location=6 ) in 4-component vector of double)
|
||||
0:? 'inU1a' (layout(location=8 ) in uint)
|
||||
0:? 'inU1b' (layout(location=9 ) in uint)
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
@@ -74,16 +83,25 @@ gl_FragCoord origin is upper left
|
||||
0:9 0.000000
|
||||
0:9 Branch: Return
|
||||
0:? Linker Objects
|
||||
0:? '@entryPointOutput' (out float)
|
||||
0:? 'inDV1a' (layout(location=0 ) in double)
|
||||
0:? 'inDV1b' (layout(location=1 ) in double)
|
||||
0:? 'inDV1c' (layout(location=2 ) in double)
|
||||
0:? 'inDV2' (layout(location=3 ) in 2-component vector of double)
|
||||
0:? 'inDV3' (layout(location=4 ) in 3-component vector of double)
|
||||
0:? 'inDV4' (layout(location=6 ) in 4-component vector of double)
|
||||
0:? 'inU1a' (layout(location=8 ) in uint)
|
||||
0:? 'inU1b' (layout(location=9 ) in uint)
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
// Id's are bound by 32
|
||||
// Id's are bound by 41
|
||||
|
||||
Capability Shader
|
||||
Capability Float64
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "PixelShaderFunction" 10 12 14 20 22 29
|
||||
EntryPoint Fragment 4 "PixelShaderFunction" 10 12 14 20 22 29 34 37 40
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Name 4 "PixelShaderFunction"
|
||||
Name 8 "r00"
|
||||
@@ -94,12 +112,18 @@ gl_FragCoord origin is upper left
|
||||
Name 20 "inU1a"
|
||||
Name 22 "inU1b"
|
||||
Name 29 "@entryPointOutput"
|
||||
Name 34 "inDV2"
|
||||
Name 37 "inDV3"
|
||||
Name 40 "inDV4"
|
||||
Decorate 10(inDV1a) Location 0
|
||||
Decorate 12(inDV1b) Location 1
|
||||
Decorate 14(inDV1c) Location 2
|
||||
Decorate 20(inU1a) Location 8
|
||||
Decorate 22(inU1b) Location 9
|
||||
Decorate 29(@entryPointOutput) Location 0
|
||||
Decorate 34(inDV2) Location 3
|
||||
Decorate 37(inDV3) Location 4
|
||||
Decorate 40(inDV4) Location 6
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 64
|
||||
@@ -117,6 +141,15 @@ gl_FragCoord origin is upper left
|
||||
28: TypePointer Output 27(float)
|
||||
29(@entryPointOutput): 28(ptr) Variable Output
|
||||
30: 27(float) Constant 0
|
||||
32: TypeVector 6(float) 2
|
||||
33: TypePointer Input 32(fvec2)
|
||||
34(inDV2): 33(ptr) Variable Input
|
||||
35: TypeVector 6(float) 3
|
||||
36: TypePointer Input 35(fvec3)
|
||||
37(inDV3): 36(ptr) Variable Input
|
||||
38: TypeVector 6(float) 4
|
||||
39: TypePointer Input 38(fvec4)
|
||||
40(inDV4): 39(ptr) Variable Input
|
||||
4(PixelShaderFunction): 2 Function None 3
|
||||
5: Label
|
||||
8(r00): 7(ptr) Variable Function
|
||||
|
||||
Reference in New Issue
Block a user