HLSL: Correctly identify which variables are global storage class.

This commit is contained in:
John Kessenich
2016-07-01 19:35:53 -06:00
parent 532543c1c4
commit b0a63f578a
35 changed files with 995 additions and 979 deletions

View File

@@ -4,26 +4,26 @@ gl_FragCoord origin is upper left
0:? Sequence
0:1 Sequence
0:1 move second child to first child (temp 4-component vector of float)
0:1 'AmbientColor' (temp 4-component vector of float)
0:1 'AmbientColor' (global 4-component vector of float)
0:? Constant:
0:? 1.000000
0:? 0.500000
0:? 0.000000
0:? 1.000000
0:12 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float)
0:12 Function Definition: ShaderFunction(vf4; (global 4-component vector of float)
0:9 Function Parameters:
0:9 'input' (in 4-component vector of float)
0:? Sequence
0:10 Branch: Return with expression
0:10 component-wise multiply (temp 4-component vector of float)
0:10 'input' (in 4-component vector of float)
0:10 'AmbientColor' (temp 4-component vector of float)
0:10 'AmbientColor' (global 4-component vector of float)
0:? Linker Objects
0:? 'AmbientColor' (temp 4-component vector of float)
0:? 'ff1' (temp bool Face)
0:? 'ff2' (temp 4-component vector of float)
0:? 'ff3' (temp 4-component vector of float)
0:? 'ff4' (temp 4-component vector of float FragCoord)
0:? 'AmbientColor' (global 4-component vector of float)
0:? 'ff1' (global bool Face)
0:? 'ff2' (global 4-component vector of float)
0:? 'ff3' (global 4-component vector of float)
0:? 'ff4' (global 4-component vector of float FragCoord)
Linked fragment stage:
@@ -34,30 +34,30 @@ gl_FragCoord origin is upper left
0:? Sequence
0:1 Sequence
0:1 move second child to first child (temp 4-component vector of float)
0:1 'AmbientColor' (temp 4-component vector of float)
0:1 'AmbientColor' (global 4-component vector of float)
0:? Constant:
0:? 1.000000
0:? 0.500000
0:? 0.000000
0:? 1.000000
0:12 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float)
0:12 Function Definition: ShaderFunction(vf4; (global 4-component vector of float)
0:9 Function Parameters:
0:9 'input' (in 4-component vector of float)
0:? Sequence
0:10 Branch: Return with expression
0:10 component-wise multiply (temp 4-component vector of float)
0:10 'input' (in 4-component vector of float)
0:10 'AmbientColor' (temp 4-component vector of float)
0:10 'AmbientColor' (global 4-component vector of float)
0:? Linker Objects
0:? 'AmbientColor' (temp 4-component vector of float)
0:? 'ff1' (temp bool Face)
0:? 'ff2' (temp 4-component vector of float)
0:? 'ff3' (temp 4-component vector of float)
0:? 'ff4' (temp 4-component vector of float FragCoord)
0:? 'AmbientColor' (global 4-component vector of float)
0:? 'ff1' (global bool Face)
0:? 'ff2' (global 4-component vector of float)
0:? 'ff3' (global 4-component vector of float)
0:? 'ff4' (global 4-component vector of float FragCoord)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 29
// Id's are bound by 30
Capability Shader
1: ExtInstImport "GLSL.std.450"
@@ -68,39 +68,40 @@ gl_FragCoord origin is upper left
Name 4 "PixelShaderFunction"
Name 11 "ShaderFunction(vf4;"
Name 10 "input"
Name 13 "AmbientColor"
Name 25 "ff1"
Name 26 "ff2"
Name 27 "ff3"
Name 28 "ff4"
Decorate 25(ff1) BuiltIn FrontFacing
Decorate 28(ff4) BuiltIn FragCoord
Name 14 "AmbientColor"
Name 26 "ff1"
Name 27 "ff2"
Name 28 "ff3"
Name 29 "ff4"
Decorate 26(ff1) BuiltIn FrontFacing
Decorate 29(ff4) BuiltIn FragCoord
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
9: TypeFunction 7(fvec4) 8(ptr)
14: 6(float) Constant 1065353216
15: 6(float) Constant 1056964608
16: 6(float) Constant 0
17: 7(fvec4) ConstantComposite 14 15 16 14
23: TypeBool
24: TypePointer Function 23(bool)
13: TypePointer Private 7(fvec4)
14(AmbientColor): 13(ptr) Variable Private
15: 6(float) Constant 1065353216
16: 6(float) Constant 1056964608
17: 6(float) Constant 0
18: 7(fvec4) ConstantComposite 15 16 17 15
24: TypeBool
25: TypePointer Private 24(bool)
26(ff1): 25(ptr) Variable Private
27(ff2): 13(ptr) Variable Private
28(ff3): 13(ptr) Variable Private
29(ff4): 13(ptr) Variable Private
4(PixelShaderFunction): 2 Function None 3
5: Label
13(AmbientColor): 8(ptr) Variable Function
Store 13(AmbientColor) 17
Store 14(AmbientColor) 18
FunctionEnd
11(ShaderFunction(vf4;): 7(fvec4) Function None 9
10(input): 8(ptr) FunctionParameter
12: Label
25(ff1): 24(ptr) Variable Function
26(ff2): 8(ptr) Variable Function
27(ff3): 8(ptr) Variable Function
28(ff4): 8(ptr) Variable Function
18: 7(fvec4) Load 10(input)
19: 7(fvec4) Load 13(AmbientColor)
20: 7(fvec4) FMul 18 19
ReturnValue 20
19: 7(fvec4) Load 10(input)
20: 7(fvec4) Load 14(AmbientColor)
21: 7(fvec4) FMul 19 20
ReturnValue 21
FunctionEnd