diff --git a/Test/baseResults/hlsl.array.frag.out b/Test/baseResults/hlsl.array.frag.out index 113f1521..6f29aa20 100755 --- a/Test/baseResults/hlsl.array.frag.out +++ b/Test/baseResults/hlsl.array.frag.out @@ -2,7 +2,7 @@ hlsl.array.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:11 Function Definition: PixelShaderFunction(i1;vf4[3]; (temp 4-component vector of float) +0:11 Function Definition: PixelShaderFunction(i1;vf4[3]; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'i' (in int) 0:8 'input' (in 3-element array of 4-component vector of float) @@ -12,11 +12,11 @@ gl_FragCoord origin is upper left 0:10 add (temp 4-component vector of float) 0:10 add (temp 4-component vector of float) 0:10 direct index (temp 4-component vector of float) -0:10 'a' (temp 4-element array of 4-component vector of float) +0:10 'a' (global 4-element array of 4-component vector of float) 0:10 Constant: 0:10 1 (const int) 0:10 indirect index (temp 4-component vector of float) -0:10 'a' (temp 4-element array of 4-component vector of float) +0:10 'a' (global 4-element array of 4-component vector of float) 0:10 'i' (in int) 0:10 add (temp 4-component vector of float) 0:10 direct index (temp 4-component vector of float) @@ -38,14 +38,14 @@ gl_FragCoord origin is upper left 0:10 indirect index (temp 4-component vector of float) 0:10 m: direct index for structure (temp 7-element array of 4-component vector of float) 0:10 indirect index (temp structure{temp 7-element array of 4-component vector of float m}) -0:10 's' (temp 11-element array of structure{temp 7-element array of 4-component vector of float m}) +0:10 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m}) 0:10 'i' (in int) 0:10 Constant: 0:10 0 (const int) 0:10 'i' (in int) 0:? Linker Objects -0:? 'a' (temp 4-element array of 4-component vector of float) -0:? 's' (temp 11-element array of structure{temp 7-element array of 4-component vector of float m}) +0:? 'a' (global 4-element array of 4-component vector of float) +0:? 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m}) Linked fragment stage: @@ -54,7 +54,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:11 Function Definition: PixelShaderFunction(i1;vf4[3]; (temp 4-component vector of float) +0:11 Function Definition: PixelShaderFunction(i1;vf4[3]; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'i' (in int) 0:8 'input' (in 3-element array of 4-component vector of float) @@ -64,11 +64,11 @@ gl_FragCoord origin is upper left 0:10 add (temp 4-component vector of float) 0:10 add (temp 4-component vector of float) 0:10 direct index (temp 4-component vector of float) -0:10 'a' (temp 4-element array of 4-component vector of float) +0:10 'a' (global 4-element array of 4-component vector of float) 0:10 Constant: 0:10 1 (const int) 0:10 indirect index (temp 4-component vector of float) -0:10 'a' (temp 4-element array of 4-component vector of float) +0:10 'a' (global 4-element array of 4-component vector of float) 0:10 'i' (in int) 0:10 add (temp 4-component vector of float) 0:10 direct index (temp 4-component vector of float) @@ -90,18 +90,18 @@ gl_FragCoord origin is upper left 0:10 indirect index (temp 4-component vector of float) 0:10 m: direct index for structure (temp 7-element array of 4-component vector of float) 0:10 indirect index (temp structure{temp 7-element array of 4-component vector of float m}) -0:10 's' (temp 11-element array of structure{temp 7-element array of 4-component vector of float m}) +0:10 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m}) 0:10 'i' (in int) 0:10 Constant: 0:10 0 (const int) 0:10 'i' (in int) 0:? Linker Objects -0:? 'a' (temp 4-element array of 4-component vector of float) -0:? 's' (temp 11-element array of structure{temp 7-element array of 4-component vector of float m}) +0:? 'a' (global 4-element array of 4-component vector of float) +0:? 's' (global 11-element array of structure{temp 7-element array of 4-component vector of float m}) // Module Version 10000 // Generated by (magic number): 80001 -// Id's are bound by 63 +// Id's are bound by 64 Capability Shader 1: ExtInstImport "GLSL.std.450" @@ -114,9 +114,9 @@ gl_FragCoord origin is upper left Name 19 "i" Name 27 "input" Name 40 "b" - Name 50 "" - MemberName 50 0 "m" - Name 54 "s" + Name 51 "" + MemberName 51 0 "m" + Name 55 "s" 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 @@ -124,10 +124,11 @@ gl_FragCoord origin is upper left 8: TypeInt 32 0 9: 8(int) Constant 4 10: TypeArray 7(fvec4) 9 - 11: TypePointer Function 10 + 11: TypePointer Private 10 + 12(a): 11(ptr) Variable Private 13: TypeInt 32 1 14: 13(int) Constant 1 - 15: TypePointer Function 7(fvec4) + 15: TypePointer Private 7(fvec4) 18: TypePointer Input 13(int) 19(i): 18(ptr) Variable Input 24: 8(int) Constant 3 @@ -140,18 +141,18 @@ gl_FragCoord origin is upper left 38: TypeArray 7(fvec4) 37 39: TypePointer Function 38 41: 13(int) Constant 5 - 48: 8(int) Constant 7 - 49: TypeArray 7(fvec4) 48 - 50: TypeStruct 49 - 51: 8(int) Constant 11 - 52: TypeArray 50(struct) 51 - 53: TypePointer Function 52 - 56: 13(int) Constant 0 + 42: TypePointer Function 7(fvec4) + 49: 8(int) Constant 7 + 50: TypeArray 7(fvec4) 49 + 51: TypeStruct 50 + 52: 8(int) Constant 11 + 53: TypeArray 51(struct) 52 + 54: TypePointer Private 53 + 55(s): 54(ptr) Variable Private + 57: 13(int) Constant 0 4(PixelShaderFunction): 2 Function None 3 5: Label - 12(a): 11(ptr) Variable Function 40(b): 39(ptr) Variable Function - 54(s): 53(ptr) Variable Function 16: 15(ptr) AccessChain 12(a) 14 17: 7(fvec4) Load 16 20: 13(int) Load 19(i) @@ -165,17 +166,17 @@ gl_FragCoord origin is upper left 34: 7(fvec4) Load 33 35: 7(fvec4) FAdd 31 34 36: 7(fvec4) FAdd 23 35 - 42: 15(ptr) AccessChain 40(b) 41 - 43: 7(fvec4) Load 42 - 44: 13(int) Load 19(i) - 45: 15(ptr) AccessChain 40(b) 44 - 46: 7(fvec4) Load 45 - 47: 7(fvec4) FAdd 43 46 - 55: 13(int) Load 19(i) - 57: 13(int) Load 19(i) - 58: 15(ptr) AccessChain 54(s) 55 56 57 - 59: 7(fvec4) Load 58 - 60: 7(fvec4) FAdd 47 59 - 61: 7(fvec4) FAdd 36 60 - ReturnValue 61 + 43: 42(ptr) AccessChain 40(b) 41 + 44: 7(fvec4) Load 43 + 45: 13(int) Load 19(i) + 46: 42(ptr) AccessChain 40(b) 45 + 47: 7(fvec4) Load 46 + 48: 7(fvec4) FAdd 44 47 + 56: 13(int) Load 19(i) + 58: 13(int) Load 19(i) + 59: 15(ptr) AccessChain 55(s) 56 57 58 + 60: 7(fvec4) Load 59 + 61: 7(fvec4) FAdd 48 60 + 62: 7(fvec4) FAdd 36 61 + ReturnValue 62 FunctionEnd diff --git a/Test/baseResults/hlsl.assoc.frag.out b/Test/baseResults/hlsl.assoc.frag.out index bc06bd0c..251c7bec 100755 --- a/Test/baseResults/hlsl.assoc.frag.out +++ b/Test/baseResults/hlsl.assoc.frag.out @@ -2,7 +2,7 @@ hlsl.assoc.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:12 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (temp 4-component vector of float) +0:12 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'a1' (in 4-component vector of float) 0:8 'a2' (in 4-component vector of float) @@ -38,7 +38,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:12 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (temp 4-component vector of float) +0:12 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4;vf4; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'a1' (in 4-component vector of float) 0:8 'a2' (in 4-component vector of float) diff --git a/Test/baseResults/hlsl.attribute.frag.out b/Test/baseResults/hlsl.attribute.frag.out index 3bfbea71..77e34fe6 100755 --- a/Test/baseResults/hlsl.attribute.frag.out +++ b/Test/baseResults/hlsl.attribute.frag.out @@ -2,7 +2,7 @@ hlsl.attribute.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:14 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:14 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -20,7 +20,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:14 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:14 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.cast.frag.out b/Test/baseResults/hlsl.cast.frag.out index 61ca29f5..24b18cda 100755 --- a/Test/baseResults/hlsl.cast.frag.out +++ b/Test/baseResults/hlsl.cast.frag.out @@ -2,7 +2,7 @@ hlsl.cast.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:5 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -28,7 +28,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:5 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.discard.frag.out b/Test/baseResults/hlsl.discard.frag.out index 7e549e19..324029ad 100755 --- a/Test/baseResults/hlsl.discard.frag.out +++ b/Test/baseResults/hlsl.discard.frag.out @@ -2,7 +2,7 @@ hlsl.discard.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:7 Function Definition: foo(f1; (temp void) +0:7 Function Definition: foo(f1; (global void) 0:2 Function Parameters: 0:2 'f' (in float) 0:? Sequence @@ -14,11 +14,11 @@ gl_FragCoord origin is upper left 0:3 1.000000 0:3 true case 0:4 Branch: Kill -0:15 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:15 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'input' (in 4-component vector of float) 0:? Sequence -0:9 Function Call: foo(f1; (temp void) +0:9 Function Call: foo(f1; (global void) 0:9 direct index (temp float) 0:9 'input' (in 4-component vector of float) 0:9 Constant: @@ -48,7 +48,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:7 Function Definition: foo(f1; (temp void) +0:7 Function Definition: foo(f1; (global void) 0:2 Function Parameters: 0:2 'f' (in float) 0:? Sequence @@ -60,11 +60,11 @@ gl_FragCoord origin is upper left 0:3 1.000000 0:3 true case 0:4 Branch: Kill -0:15 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:15 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'input' (in 4-component vector of float) 0:? Sequence -0:9 Function Call: foo(f1; (temp void) +0:9 Function Call: foo(f1; (global void) 0:9 direct index (temp float) 0:9 'input' (in 4-component vector of float) 0:9 Constant: diff --git a/Test/baseResults/hlsl.doLoop.frag.out b/Test/baseResults/hlsl.doLoop.frag.out index 1ac86d80..c14a3a57 100755 --- a/Test/baseResults/hlsl.doLoop.frag.out +++ b/Test/baseResults/hlsl.doLoop.frag.out @@ -2,7 +2,7 @@ hlsl.doLoop.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:7 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:7 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -33,7 +33,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:7 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:7 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.float1.frag.out b/Test/baseResults/hlsl.float1.frag.out index 6effb9ad..07de03ee 100755 --- a/Test/baseResults/hlsl.float1.frag.out +++ b/Test/baseResults/hlsl.float1.frag.out @@ -4,15 +4,15 @@ gl_FragCoord origin is upper left 0:? Sequence 0:1 Sequence 0:1 move second child to first child (temp 1-component vector of float) -0:1 'f1' (temp 1-component vector of float) +0:1 'f1' (global 1-component vector of float) 0:1 Constant: 0:1 1.000000 0:2 Sequence 0:2 move second child to first child (temp float) -0:2 'scalar' (temp float) +0:2 'scalar' (global float) 0:2 Constant: 0:2 2.000000 -0:8 Function Definition: ShaderFunction(vf1;f1; (temp 1-component vector of float) +0:8 Function Definition: ShaderFunction(vf1;f1; (global 1-component vector of float) 0:5 Function Parameters: 0:5 'inFloat1' (in 1-component vector of float) 0:5 'inScalar' (in float) @@ -20,14 +20,14 @@ gl_FragCoord origin is upper left 0:6 Branch: Return with expression 0:6 add (temp 1-component vector of float) 0:6 vector-scale (temp 1-component vector of float) -0:6 'f1' (temp 1-component vector of float) -0:6 'scalar' (temp float) +0:6 'f1' (global 1-component vector of float) +0:6 'scalar' (global float) 0:6 vector-scale (temp 1-component vector of float) 0:6 'inFloat1' (in 1-component vector of float) 0:6 'inScalar' (in float) 0:? Linker Objects -0:? 'f1' (temp 1-component vector of float) -0:? 'scalar' (temp float) +0:? 'f1' (global 1-component vector of float) +0:? 'scalar' (global float) Linked fragment stage: @@ -38,15 +38,15 @@ gl_FragCoord origin is upper left 0:? Sequence 0:1 Sequence 0:1 move second child to first child (temp 1-component vector of float) -0:1 'f1' (temp 1-component vector of float) +0:1 'f1' (global 1-component vector of float) 0:1 Constant: 0:1 1.000000 0:2 Sequence 0:2 move second child to first child (temp float) -0:2 'scalar' (temp float) +0:2 'scalar' (global float) 0:2 Constant: 0:2 2.000000 -0:8 Function Definition: ShaderFunction(vf1;f1; (temp 1-component vector of float) +0:8 Function Definition: ShaderFunction(vf1;f1; (global 1-component vector of float) 0:5 Function Parameters: 0:5 'inFloat1' (in 1-component vector of float) 0:5 'inScalar' (in float) @@ -54,18 +54,18 @@ gl_FragCoord origin is upper left 0:6 Branch: Return with expression 0:6 add (temp 1-component vector of float) 0:6 vector-scale (temp 1-component vector of float) -0:6 'f1' (temp 1-component vector of float) -0:6 'scalar' (temp float) +0:6 'f1' (global 1-component vector of float) +0:6 'scalar' (global float) 0:6 vector-scale (temp 1-component vector of float) 0:6 'inFloat1' (in 1-component vector of float) 0:6 'inScalar' (in float) 0:? Linker Objects -0:? 'f1' (temp 1-component vector of float) -0:? 'scalar' (temp float) +0:? 'f1' (global 1-component vector of float) +0:? 'scalar' (global float) // Module Version 10000 // Generated by (magic number): 80001 -// Id's are bound by 26 +// Id's are bound by 27 Capability Shader 1: ExtInstImport "GLSL.std.450" @@ -77,32 +77,33 @@ gl_FragCoord origin is upper left Name 11 "ShaderFunction(vf1;f1;" Name 9 "inFloat1" Name 10 "inScalar" - Name 13 "f1" - Name 15 "scalar" + Name 14 "f1" + Name 16 "scalar" 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypePointer Function 6(float) 8: TypeFunction 6(float) 7(ptr) 7(ptr) - 14: 6(float) Constant 1065353216 - 16: 6(float) Constant 1073741824 + 13: TypePointer Private 6(float) + 14(f1): 13(ptr) Variable Private + 15: 6(float) Constant 1065353216 + 16(scalar): 13(ptr) Variable Private + 17: 6(float) Constant 1073741824 4(PixelShaderFunction): 2 Function None 3 5: Label - 13(f1): 7(ptr) Variable Function - 15(scalar): 7(ptr) Variable Function - Store 13(f1) 14 - Store 15(scalar) 16 + Store 14(f1) 15 + Store 16(scalar) 17 FunctionEnd 11(ShaderFunction(vf1;f1;): 6(float) Function None 8 9(inFloat1): 7(ptr) FunctionParameter 10(inScalar): 7(ptr) FunctionParameter 12: Label - 17: 6(float) Load 13(f1) - 18: 6(float) Load 15(scalar) - 19: 6(float) IMul 17 18 - 20: 6(float) Load 9(inFloat1) - 21: 6(float) Load 10(inScalar) - 22: 6(float) IMul 20 21 - 23: 6(float) FAdd 19 22 - ReturnValue 23 + 18: 6(float) Load 14(f1) + 19: 6(float) Load 16(scalar) + 20: 6(float) IMul 18 19 + 21: 6(float) Load 9(inFloat1) + 22: 6(float) Load 10(inScalar) + 23: 6(float) IMul 21 22 + 24: 6(float) FAdd 20 23 + ReturnValue 24 FunctionEnd diff --git a/Test/baseResults/hlsl.float4.frag.out b/Test/baseResults/hlsl.float4.frag.out index cad50060..a086d95e 100755 --- a/Test/baseResults/hlsl.float4.frag.out +++ b/Test/baseResults/hlsl.float4.frag.out @@ -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 diff --git a/Test/baseResults/hlsl.forLoop.frag.out b/Test/baseResults/hlsl.forLoop.frag.out index b073cbd6..9764e267 100755 --- a/Test/baseResults/hlsl.forLoop.frag.out +++ b/Test/baseResults/hlsl.forLoop.frag.out @@ -2,7 +2,7 @@ hlsl.forLoop.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:14 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:14 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -116,7 +116,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:14 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:14 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.if.frag.out b/Test/baseResults/hlsl.if.frag.out index ad9f2bac..4554ec6a 100755 --- a/Test/baseResults/hlsl.if.frag.out +++ b/Test/baseResults/hlsl.if.frag.out @@ -2,7 +2,7 @@ hlsl.if.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:34 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:34 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -83,7 +83,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:34 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:34 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.init.frag.out b/Test/baseResults/hlsl.init.frag.out index 06fbe421..a3176cea 100755 --- a/Test/baseResults/hlsl.init.frag.out +++ b/Test/baseResults/hlsl.init.frag.out @@ -4,14 +4,14 @@ 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 'a1' (temp 4-component vector of float) +0:1 'a1' (global 4-component vector of float) 0:? Constant: 0:? 1.000000 0:? 0.500000 0:? 0.000000 0:? 1.000000 0:1 move second child to first child (temp 4-component vector of float) -0:1 'b1' (temp 4-component vector of float) +0:1 'b1' (global 4-component vector of float) 0:? Constant: 0:? 2.000000 0:? 2.500000 @@ -19,29 +19,29 @@ gl_FragCoord origin is upper left 0:? 2.200000 0:2 Sequence 0:2 move second child to first child (temp float) -0:2 'a2' (temp float) +0:2 'a2' (global float) 0:2 Constant: 0:2 0.200000 0:? Sequence 0:3 move second child to first child (temp float) -0:3 'b3' (temp float) +0:3 'b3' (global float) 0:3 Constant: 0:3 0.300000 0:? Sequence 0:4 move second child to first child (temp float) -0:4 'b4' (temp float) +0:4 'b4' (global float) 0:4 Constant: 0:4 0.400000 0:5 Sequence 0:5 move second child to first child (temp float) -0:5 'a5' (temp float) +0:5 'a5' (global float) 0:5 Constant: 0:5 0.500000 0:5 move second child to first child (temp float) -0:5 'c5' (temp float) +0:5 'c5' (global float) 0:5 Constant: 0:5 1.500000 -0:13 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float) +0:13 Function Definition: ShaderFunction(vf4; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'input' (in 4-component vector of float) 0:? Sequence @@ -56,20 +56,20 @@ gl_FragCoord origin is upper left 0:11 Branch: Return with expression 0:11 component-wise multiply (temp 4-component vector of float) 0:11 'input' (in 4-component vector of float) -0:11 'a1' (temp 4-component vector of float) +0:11 'a1' (global 4-component vector of float) 0:? Linker Objects -0:? 'a1' (temp 4-component vector of float) -0:? 'b1' (temp 4-component vector of float) -0:? 'a2' (temp float) -0:? 'b2' (temp float) -0:? 'a3' (temp float) -0:? 'b3' (temp float) -0:? 'a4' (temp float) -0:? 'b4' (temp float) -0:? 'c4' (temp float) -0:? 'a5' (temp float) -0:? 'b5' (temp float) -0:? 'c5' (temp float) +0:? 'a1' (global 4-component vector of float) +0:? 'b1' (global 4-component vector of float) +0:? 'a2' (global float) +0:? 'b2' (global float) +0:? 'a3' (global float) +0:? 'b3' (global float) +0:? 'a4' (global float) +0:? 'b4' (global float) +0:? 'c4' (global float) +0:? 'a5' (global float) +0:? 'b5' (global float) +0:? 'c5' (global float) Linked fragment stage: @@ -80,14 +80,14 @@ 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 'a1' (temp 4-component vector of float) +0:1 'a1' (global 4-component vector of float) 0:? Constant: 0:? 1.000000 0:? 0.500000 0:? 0.000000 0:? 1.000000 0:1 move second child to first child (temp 4-component vector of float) -0:1 'b1' (temp 4-component vector of float) +0:1 'b1' (global 4-component vector of float) 0:? Constant: 0:? 2.000000 0:? 2.500000 @@ -95,29 +95,29 @@ gl_FragCoord origin is upper left 0:? 2.200000 0:2 Sequence 0:2 move second child to first child (temp float) -0:2 'a2' (temp float) +0:2 'a2' (global float) 0:2 Constant: 0:2 0.200000 0:? Sequence 0:3 move second child to first child (temp float) -0:3 'b3' (temp float) +0:3 'b3' (global float) 0:3 Constant: 0:3 0.300000 0:? Sequence 0:4 move second child to first child (temp float) -0:4 'b4' (temp float) +0:4 'b4' (global float) 0:4 Constant: 0:4 0.400000 0:5 Sequence 0:5 move second child to first child (temp float) -0:5 'a5' (temp float) +0:5 'a5' (global float) 0:5 Constant: 0:5 0.500000 0:5 move second child to first child (temp float) -0:5 'c5' (temp float) +0:5 'c5' (global float) 0:5 Constant: 0:5 1.500000 -0:13 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float) +0:13 Function Definition: ShaderFunction(vf4; (global 4-component vector of float) 0:8 Function Parameters: 0:8 'input' (in 4-component vector of float) 0:? Sequence @@ -132,29 +132,29 @@ gl_FragCoord origin is upper left 0:11 Branch: Return with expression 0:11 component-wise multiply (temp 4-component vector of float) 0:11 'input' (in 4-component vector of float) -0:11 'a1' (temp 4-component vector of float) +0:11 'a1' (global 4-component vector of float) 0:? Linker Objects -0:? 'a1' (temp 4-component vector of float) -0:? 'b1' (temp 4-component vector of float) -0:? 'a2' (temp float) -0:? 'b2' (temp float) -0:? 'a3' (temp float) -0:? 'b3' (temp float) -0:? 'a4' (temp float) -0:? 'b4' (temp float) -0:? 'c4' (temp float) -0:? 'a5' (temp float) -0:? 'b5' (temp float) -0:? 'c5' (temp float) +0:? 'a1' (global 4-component vector of float) +0:? 'b1' (global 4-component vector of float) +0:? 'a2' (global float) +0:? 'b2' (global float) +0:? 'a3' (global float) +0:? 'b3' (global float) +0:? 'a4' (global float) +0:? 'b4' (global float) +0:? 'c4' (global float) +0:? 'a5' (global float) +0:? 'b5' (global float) +0:? 'c5' (global float) // Module Version 10000 // Generated by (magic number): 80001 -// Id's are bound by 43 +// Id's are bound by 44 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint Fragment 4 "ShaderFunction" 33 + EntryPoint Fragment 4 "ShaderFunction" 34 ExecutionMode 4 OriginUpperLeft Source HLSL 450 Name 4 "ShaderFunction" @@ -165,50 +165,51 @@ gl_FragCoord origin is upper left Name 25 "b4" Name 27 "a5" Name 28 "c5" - Name 30 "a2" - Name 33 "input" - Name 38 "b2" - Name 39 "a3" - Name 40 "a4" - Name 41 "c4" - Name 42 "b5" + Name 31 "a2" + Name 34 "input" + Name 39 "b2" + Name 40 "a3" + Name 41 "a4" + Name 42 "c4" + Name 43 "b5" 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 - 8: TypePointer Function 7(fvec4) + 8: TypePointer Private 7(fvec4) + 9(a1): 8(ptr) Variable Private 10: 6(float) Constant 1065353216 11: 6(float) Constant 1056964608 12: 6(float) Constant 0 13: 7(fvec4) ConstantComposite 10 11 12 10 + 14(b1): 8(ptr) Variable Private 15: 6(float) Constant 1073741824 16: 6(float) Constant 1075838976 17: 6(float) Constant 1074161254 18: 6(float) Constant 1074580685 19: 7(fvec4) ConstantComposite 15 16 17 18 - 20: TypePointer Function 6(float) + 20: TypePointer Private 6(float) + 21(a2): 20(ptr) Variable Private 22: 6(float) Constant 1045220557 + 23(b3): 20(ptr) Variable Private 24: 6(float) Constant 1050253722 + 25(b4): 20(ptr) Variable Private 26: 6(float) Constant 1053609165 + 27(a5): 20(ptr) Variable Private + 28(c5): 20(ptr) Variable Private 29: 6(float) Constant 1069547520 - 31: 7(fvec4) ConstantComposite 22 24 26 11 - 32: TypePointer Input 7(fvec4) - 33(input): 32(ptr) Variable Input + 30: TypePointer Function 7(fvec4) + 32: 7(fvec4) ConstantComposite 22 24 26 11 + 33: TypePointer Input 7(fvec4) + 34(input): 33(ptr) Variable Input + 39(b2): 20(ptr) Variable Private + 40(a3): 20(ptr) Variable Private + 41(a4): 20(ptr) Variable Private + 42(c4): 20(ptr) Variable Private + 43(b5): 20(ptr) Variable Private 4(ShaderFunction): 2 Function None 3 5: Label - 9(a1): 8(ptr) Variable Function - 14(b1): 8(ptr) Variable Function - 21(a2): 20(ptr) Variable Function - 23(b3): 20(ptr) Variable Function - 25(b4): 20(ptr) Variable Function - 27(a5): 20(ptr) Variable Function - 28(c5): 20(ptr) Variable Function - 30(a2): 8(ptr) Variable Function - 38(b2): 20(ptr) Variable Function - 39(a3): 20(ptr) Variable Function - 40(a4): 20(ptr) Variable Function - 41(c4): 20(ptr) Variable Function - 42(b5): 20(ptr) Variable Function + 31(a2): 30(ptr) Variable Function Store 9(a1) 13 Store 14(b1) 19 Store 21(a2) 22 @@ -216,9 +217,9 @@ gl_FragCoord origin is upper left Store 25(b4) 26 Store 27(a5) 11 Store 28(c5) 29 - Store 30(a2) 31 - 34: 7(fvec4) Load 33(input) - 35: 7(fvec4) Load 9(a1) - 36: 7(fvec4) FMul 34 35 - ReturnValue 36 + Store 31(a2) 32 + 35: 7(fvec4) Load 34(input) + 36: 7(fvec4) Load 9(a1) + 37: 7(fvec4) FMul 35 36 + ReturnValue 37 FunctionEnd diff --git a/Test/baseResults/hlsl.intrinsics.barriers.comp.out b/Test/baseResults/hlsl.intrinsics.barriers.comp.out index ba8a04b6..c400fea3 100644 --- a/Test/baseResults/hlsl.intrinsics.barriers.comp.out +++ b/Test/baseResults/hlsl.intrinsics.barriers.comp.out @@ -2,7 +2,7 @@ hlsl.intrinsics.barriers.comp Shader version: 450 local_size = (1, 1, 1) 0:? Sequence -0:14 Function Definition: ComputeShaderFunction( (temp float) +0:14 Function Definition: ComputeShaderFunction( (global float) 0:3 Function Parameters: 0:? Sequence 0:4 MemoryBarrier (global void) @@ -23,7 +23,7 @@ Linked compute stage: Shader version: 450 local_size = (1, 1, 1) 0:? Sequence -0:14 Function Definition: ComputeShaderFunction( (temp float) +0:14 Function Definition: ComputeShaderFunction( (global float) 0:3 Function Parameters: 0:? Sequence 0:4 MemoryBarrier (global void) diff --git a/Test/baseResults/hlsl.intrinsics.comp.out b/Test/baseResults/hlsl.intrinsics.comp.out index 820d2d5b..4c7eabbc 100644 --- a/Test/baseResults/hlsl.intrinsics.comp.out +++ b/Test/baseResults/hlsl.intrinsics.comp.out @@ -2,7 +2,7 @@ hlsl.intrinsics.comp Shader version: 450 local_size = (1, 1, 1) 0:? Sequence -0:44 Function Definition: ComputeShaderFunctionS(f1;f1;f1;u1;u1; (temp float) +0:44 Function Definition: ComputeShaderFunctionS(f1;f1;f1;u1;u1; (global float) 0:17 Function Parameters: 0:17 'inF0' (in float) 0:17 'inF1' (in float) @@ -13,68 +13,68 @@ local_size = (1, 1, 1) 0:21 all (global bool) 0:21 'inF0' (in float) 0:24 AtomicAdd (global void) -0:24 'gs_ua' (temp uint) -0:24 'gs_ub' (temp uint) +0:24 'gs_ua' (global uint) +0:24 'gs_ub' (global uint) 0:25 move second child to first child (temp uint) 0:25 'out_u1' (temp uint) 0:25 AtomicAdd (temp uint) -0:25 'gs_ua' (temp uint) -0:25 'gs_ub' (temp uint) +0:25 'gs_ua' (global uint) +0:25 'gs_ub' (global uint) 0:26 AtomicAnd (global void) -0:26 'gs_ua' (temp uint) -0:26 'gs_ub' (temp uint) +0:26 'gs_ua' (global uint) +0:26 'gs_ub' (global uint) 0:27 move second child to first child (temp uint) 0:27 'out_u1' (temp uint) 0:27 AtomicAnd (temp uint) -0:27 'gs_ua' (temp uint) -0:27 'gs_ub' (temp uint) +0:27 'gs_ua' (global uint) +0:27 'gs_ub' (global uint) 0:28 move second child to first child (temp uint) 0:28 'out_u1' (temp uint) 0:28 AtomicCompSwap (temp uint) -0:28 'gs_ua' (temp uint) -0:28 'gs_ub' (temp uint) -0:28 'gs_uc' (temp uint) +0:28 'gs_ua' (global uint) +0:28 'gs_ub' (global uint) +0:28 'gs_uc' (global uint) 0:29 move second child to first child (temp uint) 0:29 'out_u1' (temp uint) 0:29 AtomicExchange (temp uint) -0:29 'gs_ua' (temp uint) -0:29 'gs_ub' (temp uint) +0:29 'gs_ua' (global uint) +0:29 'gs_ub' (global uint) 0:30 AtomicMax (global void) -0:30 'gs_ua' (temp uint) -0:30 'gs_ub' (temp uint) +0:30 'gs_ua' (global uint) +0:30 'gs_ub' (global uint) 0:31 move second child to first child (temp uint) 0:31 'out_u1' (temp uint) 0:31 AtomicMax (temp uint) -0:31 'gs_ua' (temp uint) -0:31 'gs_ub' (temp uint) +0:31 'gs_ua' (global uint) +0:31 'gs_ub' (global uint) 0:32 AtomicMin (global void) -0:32 'gs_ua' (temp uint) -0:32 'gs_ub' (temp uint) +0:32 'gs_ua' (global uint) +0:32 'gs_ub' (global uint) 0:33 move second child to first child (temp uint) 0:33 'out_u1' (temp uint) 0:33 AtomicMin (temp uint) -0:33 'gs_ua' (temp uint) -0:33 'gs_ub' (temp uint) +0:33 'gs_ua' (global uint) +0:33 'gs_ub' (global uint) 0:34 AtomicOr (global void) -0:34 'gs_ua' (temp uint) -0:34 'gs_ub' (temp uint) +0:34 'gs_ua' (global uint) +0:34 'gs_ub' (global uint) 0:35 move second child to first child (temp uint) 0:35 'out_u1' (temp uint) 0:35 AtomicOr (temp uint) -0:35 'gs_ua' (temp uint) -0:35 'gs_ub' (temp uint) +0:35 'gs_ua' (global uint) +0:35 'gs_ub' (global uint) 0:36 AtomicXor (global void) -0:36 'gs_ua' (temp uint) -0:36 'gs_ub' (temp uint) +0:36 'gs_ua' (global uint) +0:36 'gs_ub' (global uint) 0:37 move second child to first child (temp uint) 0:37 'out_u1' (temp uint) 0:37 AtomicXor (temp uint) -0:37 'gs_ua' (temp uint) -0:37 'gs_ub' (temp uint) +0:37 'gs_ua' (global uint) +0:37 'gs_ub' (global uint) 0:41 Branch: Return with expression 0:41 Constant: 0:41 0.000000 -0:50 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1; (temp 1-component vector of float) +0:50 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1; (global 1-component vector of float) 0:45 Function Parameters: 0:45 'inF0' (in 1-component vector of float) 0:45 'inF1' (in 1-component vector of float) @@ -83,7 +83,7 @@ local_size = (1, 1, 1) 0:47 Branch: Return with expression 0:47 Constant: 0:47 0.000000 -0:77 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2; (temp 2-component vector of float) +0:77 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2; (global 2-component vector of float) 0:51 Function Parameters: 0:51 'inF0' (in 2-component vector of float) 0:51 'inF1' (in 2-component vector of float) @@ -94,69 +94,69 @@ local_size = (1, 1, 1) 0:55 all (global bool) 0:55 'inF0' (in 2-component vector of float) 0:58 AtomicAdd (global void) -0:58 'gs_ua2' (temp 2-component vector of uint) -0:58 'gs_ub2' (temp 2-component vector of uint) +0:58 'gs_ua2' (global 2-component vector of uint) +0:58 'gs_ub2' (global 2-component vector of uint) 0:59 move second child to first child (temp 2-component vector of uint) 0:59 'out_u2' (temp 2-component vector of uint) 0:59 AtomicAdd (temp 2-component vector of uint) -0:59 'gs_ua2' (temp 2-component vector of uint) -0:59 'gs_ub2' (temp 2-component vector of uint) +0:59 'gs_ua2' (global 2-component vector of uint) +0:59 'gs_ub2' (global 2-component vector of uint) 0:60 AtomicAnd (global void) -0:60 'gs_ua2' (temp 2-component vector of uint) -0:60 'gs_ub2' (temp 2-component vector of uint) +0:60 'gs_ua2' (global 2-component vector of uint) +0:60 'gs_ub2' (global 2-component vector of uint) 0:61 move second child to first child (temp 2-component vector of uint) 0:61 'out_u2' (temp 2-component vector of uint) 0:61 AtomicAnd (temp 2-component vector of uint) -0:61 'gs_ua2' (temp 2-component vector of uint) -0:61 'gs_ub2' (temp 2-component vector of uint) +0:61 'gs_ua2' (global 2-component vector of uint) +0:61 'gs_ub2' (global 2-component vector of uint) 0:62 move second child to first child (temp 2-component vector of uint) 0:62 'out_u2' (temp 2-component vector of uint) 0:62 AtomicCompSwap (temp 2-component vector of uint) -0:62 'gs_ua2' (temp 2-component vector of uint) -0:62 'gs_ub2' (temp 2-component vector of uint) -0:62 'gs_uc2' (temp 2-component vector of uint) +0:62 'gs_ua2' (global 2-component vector of uint) +0:62 'gs_ub2' (global 2-component vector of uint) +0:62 'gs_uc2' (global 2-component vector of uint) 0:63 move second child to first child (temp 2-component vector of uint) 0:63 'out_u2' (temp 2-component vector of uint) 0:63 AtomicExchange (temp 2-component vector of uint) -0:63 'gs_ua2' (temp 2-component vector of uint) -0:63 'gs_ub2' (temp 2-component vector of uint) +0:63 'gs_ua2' (global 2-component vector of uint) +0:63 'gs_ub2' (global 2-component vector of uint) 0:64 AtomicMax (global void) -0:64 'gs_ua2' (temp 2-component vector of uint) -0:64 'gs_ub2' (temp 2-component vector of uint) +0:64 'gs_ua2' (global 2-component vector of uint) +0:64 'gs_ub2' (global 2-component vector of uint) 0:65 move second child to first child (temp 2-component vector of uint) 0:65 'out_u2' (temp 2-component vector of uint) 0:65 AtomicMax (temp 2-component vector of uint) -0:65 'gs_ua2' (temp 2-component vector of uint) -0:65 'gs_ub2' (temp 2-component vector of uint) +0:65 'gs_ua2' (global 2-component vector of uint) +0:65 'gs_ub2' (global 2-component vector of uint) 0:66 AtomicMin (global void) -0:66 'gs_ua2' (temp 2-component vector of uint) -0:66 'gs_ub2' (temp 2-component vector of uint) +0:66 'gs_ua2' (global 2-component vector of uint) +0:66 'gs_ub2' (global 2-component vector of uint) 0:67 move second child to first child (temp 2-component vector of uint) 0:67 'out_u2' (temp 2-component vector of uint) 0:67 AtomicMin (temp 2-component vector of uint) -0:67 'gs_ua2' (temp 2-component vector of uint) -0:67 'gs_ub2' (temp 2-component vector of uint) +0:67 'gs_ua2' (global 2-component vector of uint) +0:67 'gs_ub2' (global 2-component vector of uint) 0:68 AtomicOr (global void) -0:68 'gs_ua2' (temp 2-component vector of uint) -0:68 'gs_ub2' (temp 2-component vector of uint) +0:68 'gs_ua2' (global 2-component vector of uint) +0:68 'gs_ub2' (global 2-component vector of uint) 0:69 move second child to first child (temp 2-component vector of uint) 0:69 'out_u2' (temp 2-component vector of uint) 0:69 AtomicOr (temp 2-component vector of uint) -0:69 'gs_ua2' (temp 2-component vector of uint) -0:69 'gs_ub2' (temp 2-component vector of uint) +0:69 'gs_ua2' (global 2-component vector of uint) +0:69 'gs_ub2' (global 2-component vector of uint) 0:70 AtomicXor (global void) -0:70 'gs_ua2' (temp 2-component vector of uint) -0:70 'gs_ub2' (temp 2-component vector of uint) +0:70 'gs_ua2' (global 2-component vector of uint) +0:70 'gs_ub2' (global 2-component vector of uint) 0:71 move second child to first child (temp 2-component vector of uint) 0:71 'out_u2' (temp 2-component vector of uint) 0:71 AtomicXor (temp 2-component vector of uint) -0:71 'gs_ua2' (temp 2-component vector of uint) -0:71 'gs_ub2' (temp 2-component vector of uint) +0:71 'gs_ua2' (global 2-component vector of uint) +0:71 'gs_ub2' (global 2-component vector of uint) 0:74 Branch: Return with expression 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:104 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3; (temp 3-component vector of float) +0:104 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3; (global 3-component vector of float) 0:78 Function Parameters: 0:78 'inF0' (in 3-component vector of float) 0:78 'inF1' (in 3-component vector of float) @@ -167,70 +167,70 @@ local_size = (1, 1, 1) 0:82 all (global bool) 0:82 'inF0' (in 3-component vector of float) 0:85 AtomicAdd (global void) -0:85 'gs_ua3' (temp 3-component vector of uint) -0:85 'gs_ub3' (temp 3-component vector of uint) +0:85 'gs_ua3' (global 3-component vector of uint) +0:85 'gs_ub3' (global 3-component vector of uint) 0:86 move second child to first child (temp 3-component vector of uint) 0:86 'out_u3' (temp 3-component vector of uint) 0:86 AtomicAdd (temp 3-component vector of uint) -0:86 'gs_ua3' (temp 3-component vector of uint) -0:86 'gs_ub3' (temp 3-component vector of uint) +0:86 'gs_ua3' (global 3-component vector of uint) +0:86 'gs_ub3' (global 3-component vector of uint) 0:87 AtomicAnd (global void) -0:87 'gs_ua3' (temp 3-component vector of uint) -0:87 'gs_ub3' (temp 3-component vector of uint) +0:87 'gs_ua3' (global 3-component vector of uint) +0:87 'gs_ub3' (global 3-component vector of uint) 0:88 move second child to first child (temp 3-component vector of uint) 0:88 'out_u3' (temp 3-component vector of uint) 0:88 AtomicAnd (temp 3-component vector of uint) -0:88 'gs_ua3' (temp 3-component vector of uint) -0:88 'gs_ub3' (temp 3-component vector of uint) +0:88 'gs_ua3' (global 3-component vector of uint) +0:88 'gs_ub3' (global 3-component vector of uint) 0:89 move second child to first child (temp 3-component vector of uint) 0:89 'out_u3' (temp 3-component vector of uint) 0:89 AtomicCompSwap (temp 3-component vector of uint) -0:89 'gs_ua3' (temp 3-component vector of uint) -0:89 'gs_ub3' (temp 3-component vector of uint) -0:89 'gs_uc3' (temp 3-component vector of uint) +0:89 'gs_ua3' (global 3-component vector of uint) +0:89 'gs_ub3' (global 3-component vector of uint) +0:89 'gs_uc3' (global 3-component vector of uint) 0:90 move second child to first child (temp 3-component vector of uint) 0:90 'out_u3' (temp 3-component vector of uint) 0:90 AtomicExchange (temp 3-component vector of uint) -0:90 'gs_ua3' (temp 3-component vector of uint) -0:90 'gs_ub3' (temp 3-component vector of uint) +0:90 'gs_ua3' (global 3-component vector of uint) +0:90 'gs_ub3' (global 3-component vector of uint) 0:91 AtomicMax (global void) -0:91 'gs_ua3' (temp 3-component vector of uint) -0:91 'gs_ub3' (temp 3-component vector of uint) +0:91 'gs_ua3' (global 3-component vector of uint) +0:91 'gs_ub3' (global 3-component vector of uint) 0:92 move second child to first child (temp 3-component vector of uint) 0:92 'out_u3' (temp 3-component vector of uint) 0:92 AtomicMax (temp 3-component vector of uint) -0:92 'gs_ua3' (temp 3-component vector of uint) -0:92 'gs_ub3' (temp 3-component vector of uint) +0:92 'gs_ua3' (global 3-component vector of uint) +0:92 'gs_ub3' (global 3-component vector of uint) 0:93 AtomicMin (global void) -0:93 'gs_ua3' (temp 3-component vector of uint) -0:93 'gs_ub3' (temp 3-component vector of uint) +0:93 'gs_ua3' (global 3-component vector of uint) +0:93 'gs_ub3' (global 3-component vector of uint) 0:94 move second child to first child (temp 3-component vector of uint) 0:94 'out_u3' (temp 3-component vector of uint) 0:94 AtomicMin (temp 3-component vector of uint) -0:94 'gs_ua3' (temp 3-component vector of uint) -0:94 'gs_ub3' (temp 3-component vector of uint) +0:94 'gs_ua3' (global 3-component vector of uint) +0:94 'gs_ub3' (global 3-component vector of uint) 0:95 AtomicOr (global void) -0:95 'gs_ua3' (temp 3-component vector of uint) -0:95 'gs_ub3' (temp 3-component vector of uint) +0:95 'gs_ua3' (global 3-component vector of uint) +0:95 'gs_ub3' (global 3-component vector of uint) 0:96 move second child to first child (temp 3-component vector of uint) 0:96 'out_u3' (temp 3-component vector of uint) 0:96 AtomicOr (temp 3-component vector of uint) -0:96 'gs_ua3' (temp 3-component vector of uint) -0:96 'gs_ub3' (temp 3-component vector of uint) +0:96 'gs_ua3' (global 3-component vector of uint) +0:96 'gs_ub3' (global 3-component vector of uint) 0:97 AtomicXor (global void) -0:97 'gs_ua3' (temp 3-component vector of uint) -0:97 'gs_ub3' (temp 3-component vector of uint) +0:97 'gs_ua3' (global 3-component vector of uint) +0:97 'gs_ub3' (global 3-component vector of uint) 0:98 move second child to first child (temp 3-component vector of uint) 0:98 'out_u3' (temp 3-component vector of uint) 0:98 AtomicXor (temp 3-component vector of uint) -0:98 'gs_ua3' (temp 3-component vector of uint) -0:98 'gs_ub3' (temp 3-component vector of uint) +0:98 'gs_ua3' (global 3-component vector of uint) +0:98 'gs_ub3' (global 3-component vector of uint) 0:101 Branch: Return with expression 0:? Constant: 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:130 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; (temp 4-component vector of float) +0:130 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; (global 4-component vector of float) 0:105 Function Parameters: 0:105 'inF0' (in 4-component vector of float) 0:105 'inF1' (in 4-component vector of float) @@ -241,64 +241,64 @@ local_size = (1, 1, 1) 0:109 all (global bool) 0:109 'inF0' (in 4-component vector of float) 0:112 AtomicAdd (global void) -0:112 'gs_ua4' (temp 4-component vector of uint) -0:112 'gs_ub4' (temp 4-component vector of uint) +0:112 'gs_ua4' (global 4-component vector of uint) +0:112 'gs_ub4' (global 4-component vector of uint) 0:113 move second child to first child (temp 4-component vector of uint) 0:113 'out_u4' (temp 4-component vector of uint) 0:113 AtomicAdd (temp 4-component vector of uint) -0:113 'gs_ua4' (temp 4-component vector of uint) -0:113 'gs_ub4' (temp 4-component vector of uint) +0:113 'gs_ua4' (global 4-component vector of uint) +0:113 'gs_ub4' (global 4-component vector of uint) 0:114 AtomicAnd (global void) -0:114 'gs_ua4' (temp 4-component vector of uint) -0:114 'gs_ub4' (temp 4-component vector of uint) +0:114 'gs_ua4' (global 4-component vector of uint) +0:114 'gs_ub4' (global 4-component vector of uint) 0:115 move second child to first child (temp 4-component vector of uint) 0:115 'out_u4' (temp 4-component vector of uint) 0:115 AtomicAnd (temp 4-component vector of uint) -0:115 'gs_ua4' (temp 4-component vector of uint) -0:115 'gs_ub4' (temp 4-component vector of uint) +0:115 'gs_ua4' (global 4-component vector of uint) +0:115 'gs_ub4' (global 4-component vector of uint) 0:116 move second child to first child (temp 4-component vector of uint) 0:116 'out_u4' (temp 4-component vector of uint) 0:116 AtomicCompSwap (temp 4-component vector of uint) -0:116 'gs_ua4' (temp 4-component vector of uint) -0:116 'gs_ub4' (temp 4-component vector of uint) -0:116 'gs_uc4' (temp 4-component vector of uint) +0:116 'gs_ua4' (global 4-component vector of uint) +0:116 'gs_ub4' (global 4-component vector of uint) +0:116 'gs_uc4' (global 4-component vector of uint) 0:117 move second child to first child (temp 4-component vector of uint) 0:117 'out_u4' (temp 4-component vector of uint) 0:117 AtomicExchange (temp 4-component vector of uint) -0:117 'gs_ua4' (temp 4-component vector of uint) -0:117 'gs_ub4' (temp 4-component vector of uint) +0:117 'gs_ua4' (global 4-component vector of uint) +0:117 'gs_ub4' (global 4-component vector of uint) 0:118 AtomicMax (global void) -0:118 'gs_ua4' (temp 4-component vector of uint) -0:118 'gs_ub4' (temp 4-component vector of uint) +0:118 'gs_ua4' (global 4-component vector of uint) +0:118 'gs_ub4' (global 4-component vector of uint) 0:119 move second child to first child (temp 4-component vector of uint) 0:119 'out_u4' (temp 4-component vector of uint) 0:119 AtomicMax (temp 4-component vector of uint) -0:119 'gs_ua4' (temp 4-component vector of uint) -0:119 'gs_ub4' (temp 4-component vector of uint) +0:119 'gs_ua4' (global 4-component vector of uint) +0:119 'gs_ub4' (global 4-component vector of uint) 0:120 AtomicMin (global void) -0:120 'gs_ua4' (temp 4-component vector of uint) -0:120 'gs_ub4' (temp 4-component vector of uint) +0:120 'gs_ua4' (global 4-component vector of uint) +0:120 'gs_ub4' (global 4-component vector of uint) 0:121 move second child to first child (temp 4-component vector of uint) 0:121 'out_u4' (temp 4-component vector of uint) 0:121 AtomicMin (temp 4-component vector of uint) -0:121 'gs_ua4' (temp 4-component vector of uint) -0:121 'gs_ub4' (temp 4-component vector of uint) +0:121 'gs_ua4' (global 4-component vector of uint) +0:121 'gs_ub4' (global 4-component vector of uint) 0:122 AtomicOr (global void) -0:122 'gs_ua4' (temp 4-component vector of uint) -0:122 'gs_ub4' (temp 4-component vector of uint) +0:122 'gs_ua4' (global 4-component vector of uint) +0:122 'gs_ub4' (global 4-component vector of uint) 0:123 move second child to first child (temp 4-component vector of uint) 0:123 'out_u4' (temp 4-component vector of uint) 0:123 AtomicOr (temp 4-component vector of uint) -0:123 'gs_ua4' (temp 4-component vector of uint) -0:123 'gs_ub4' (temp 4-component vector of uint) +0:123 'gs_ua4' (global 4-component vector of uint) +0:123 'gs_ub4' (global 4-component vector of uint) 0:124 AtomicXor (global void) -0:124 'gs_ua4' (temp 4-component vector of uint) -0:124 'gs_ub4' (temp 4-component vector of uint) +0:124 'gs_ua4' (global 4-component vector of uint) +0:124 'gs_ub4' (global 4-component vector of uint) 0:125 move second child to first child (temp 4-component vector of uint) 0:125 'out_u4' (temp 4-component vector of uint) 0:125 AtomicXor (temp 4-component vector of uint) -0:125 'gs_ua4' (temp 4-component vector of uint) -0:125 'gs_ub4' (temp 4-component vector of uint) +0:125 'gs_ua4' (global 4-component vector of uint) +0:125 'gs_ub4' (global 4-component vector of uint) 0:128 Branch: Return with expression 0:? Constant: 0:? 1.000000 @@ -306,18 +306,18 @@ local_size = (1, 1, 1) 0:? 3.000000 0:? 4.000000 0:? Linker Objects -0:? 'gs_ua' (temp uint) -0:? 'gs_ub' (temp uint) -0:? 'gs_uc' (temp uint) -0:? 'gs_ua2' (temp 2-component vector of uint) -0:? 'gs_ub2' (temp 2-component vector of uint) -0:? 'gs_uc2' (temp 2-component vector of uint) -0:? 'gs_ua3' (temp 3-component vector of uint) -0:? 'gs_ub3' (temp 3-component vector of uint) -0:? 'gs_uc3' (temp 3-component vector of uint) -0:? 'gs_ua4' (temp 4-component vector of uint) -0:? 'gs_ub4' (temp 4-component vector of uint) -0:? 'gs_uc4' (temp 4-component vector of uint) +0:? 'gs_ua' (global uint) +0:? 'gs_ub' (global uint) +0:? 'gs_uc' (global uint) +0:? 'gs_ua2' (global 2-component vector of uint) +0:? 'gs_ub2' (global 2-component vector of uint) +0:? 'gs_uc2' (global 2-component vector of uint) +0:? 'gs_ua3' (global 3-component vector of uint) +0:? 'gs_ub3' (global 3-component vector of uint) +0:? 'gs_uc3' (global 3-component vector of uint) +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) Linked compute stage: @@ -326,7 +326,7 @@ Linked compute stage: Shader version: 450 local_size = (1, 1, 1) 0:? Sequence -0:44 Function Definition: ComputeShaderFunctionS(f1;f1;f1;u1;u1; (temp float) +0:44 Function Definition: ComputeShaderFunctionS(f1;f1;f1;u1;u1; (global float) 0:17 Function Parameters: 0:17 'inF0' (in float) 0:17 'inF1' (in float) @@ -337,68 +337,68 @@ local_size = (1, 1, 1) 0:21 all (global bool) 0:21 'inF0' (in float) 0:24 AtomicAdd (global void) -0:24 'gs_ua' (temp uint) -0:24 'gs_ub' (temp uint) +0:24 'gs_ua' (global uint) +0:24 'gs_ub' (global uint) 0:25 move second child to first child (temp uint) 0:25 'out_u1' (temp uint) 0:25 AtomicAdd (temp uint) -0:25 'gs_ua' (temp uint) -0:25 'gs_ub' (temp uint) +0:25 'gs_ua' (global uint) +0:25 'gs_ub' (global uint) 0:26 AtomicAnd (global void) -0:26 'gs_ua' (temp uint) -0:26 'gs_ub' (temp uint) +0:26 'gs_ua' (global uint) +0:26 'gs_ub' (global uint) 0:27 move second child to first child (temp uint) 0:27 'out_u1' (temp uint) 0:27 AtomicAnd (temp uint) -0:27 'gs_ua' (temp uint) -0:27 'gs_ub' (temp uint) +0:27 'gs_ua' (global uint) +0:27 'gs_ub' (global uint) 0:28 move second child to first child (temp uint) 0:28 'out_u1' (temp uint) 0:28 AtomicCompSwap (temp uint) -0:28 'gs_ua' (temp uint) -0:28 'gs_ub' (temp uint) -0:28 'gs_uc' (temp uint) +0:28 'gs_ua' (global uint) +0:28 'gs_ub' (global uint) +0:28 'gs_uc' (global uint) 0:29 move second child to first child (temp uint) 0:29 'out_u1' (temp uint) 0:29 AtomicExchange (temp uint) -0:29 'gs_ua' (temp uint) -0:29 'gs_ub' (temp uint) +0:29 'gs_ua' (global uint) +0:29 'gs_ub' (global uint) 0:30 AtomicMax (global void) -0:30 'gs_ua' (temp uint) -0:30 'gs_ub' (temp uint) +0:30 'gs_ua' (global uint) +0:30 'gs_ub' (global uint) 0:31 move second child to first child (temp uint) 0:31 'out_u1' (temp uint) 0:31 AtomicMax (temp uint) -0:31 'gs_ua' (temp uint) -0:31 'gs_ub' (temp uint) +0:31 'gs_ua' (global uint) +0:31 'gs_ub' (global uint) 0:32 AtomicMin (global void) -0:32 'gs_ua' (temp uint) -0:32 'gs_ub' (temp uint) +0:32 'gs_ua' (global uint) +0:32 'gs_ub' (global uint) 0:33 move second child to first child (temp uint) 0:33 'out_u1' (temp uint) 0:33 AtomicMin (temp uint) -0:33 'gs_ua' (temp uint) -0:33 'gs_ub' (temp uint) +0:33 'gs_ua' (global uint) +0:33 'gs_ub' (global uint) 0:34 AtomicOr (global void) -0:34 'gs_ua' (temp uint) -0:34 'gs_ub' (temp uint) +0:34 'gs_ua' (global uint) +0:34 'gs_ub' (global uint) 0:35 move second child to first child (temp uint) 0:35 'out_u1' (temp uint) 0:35 AtomicOr (temp uint) -0:35 'gs_ua' (temp uint) -0:35 'gs_ub' (temp uint) +0:35 'gs_ua' (global uint) +0:35 'gs_ub' (global uint) 0:36 AtomicXor (global void) -0:36 'gs_ua' (temp uint) -0:36 'gs_ub' (temp uint) +0:36 'gs_ua' (global uint) +0:36 'gs_ub' (global uint) 0:37 move second child to first child (temp uint) 0:37 'out_u1' (temp uint) 0:37 AtomicXor (temp uint) -0:37 'gs_ua' (temp uint) -0:37 'gs_ub' (temp uint) +0:37 'gs_ua' (global uint) +0:37 'gs_ub' (global uint) 0:41 Branch: Return with expression 0:41 Constant: 0:41 0.000000 -0:50 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1; (temp 1-component vector of float) +0:50 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1; (global 1-component vector of float) 0:45 Function Parameters: 0:45 'inF0' (in 1-component vector of float) 0:45 'inF1' (in 1-component vector of float) @@ -407,7 +407,7 @@ local_size = (1, 1, 1) 0:47 Branch: Return with expression 0:47 Constant: 0:47 0.000000 -0:77 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2; (temp 2-component vector of float) +0:77 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2; (global 2-component vector of float) 0:51 Function Parameters: 0:51 'inF0' (in 2-component vector of float) 0:51 'inF1' (in 2-component vector of float) @@ -418,69 +418,69 @@ local_size = (1, 1, 1) 0:55 all (global bool) 0:55 'inF0' (in 2-component vector of float) 0:58 AtomicAdd (global void) -0:58 'gs_ua2' (temp 2-component vector of uint) -0:58 'gs_ub2' (temp 2-component vector of uint) +0:58 'gs_ua2' (global 2-component vector of uint) +0:58 'gs_ub2' (global 2-component vector of uint) 0:59 move second child to first child (temp 2-component vector of uint) 0:59 'out_u2' (temp 2-component vector of uint) 0:59 AtomicAdd (temp 2-component vector of uint) -0:59 'gs_ua2' (temp 2-component vector of uint) -0:59 'gs_ub2' (temp 2-component vector of uint) +0:59 'gs_ua2' (global 2-component vector of uint) +0:59 'gs_ub2' (global 2-component vector of uint) 0:60 AtomicAnd (global void) -0:60 'gs_ua2' (temp 2-component vector of uint) -0:60 'gs_ub2' (temp 2-component vector of uint) +0:60 'gs_ua2' (global 2-component vector of uint) +0:60 'gs_ub2' (global 2-component vector of uint) 0:61 move second child to first child (temp 2-component vector of uint) 0:61 'out_u2' (temp 2-component vector of uint) 0:61 AtomicAnd (temp 2-component vector of uint) -0:61 'gs_ua2' (temp 2-component vector of uint) -0:61 'gs_ub2' (temp 2-component vector of uint) +0:61 'gs_ua2' (global 2-component vector of uint) +0:61 'gs_ub2' (global 2-component vector of uint) 0:62 move second child to first child (temp 2-component vector of uint) 0:62 'out_u2' (temp 2-component vector of uint) 0:62 AtomicCompSwap (temp 2-component vector of uint) -0:62 'gs_ua2' (temp 2-component vector of uint) -0:62 'gs_ub2' (temp 2-component vector of uint) -0:62 'gs_uc2' (temp 2-component vector of uint) +0:62 'gs_ua2' (global 2-component vector of uint) +0:62 'gs_ub2' (global 2-component vector of uint) +0:62 'gs_uc2' (global 2-component vector of uint) 0:63 move second child to first child (temp 2-component vector of uint) 0:63 'out_u2' (temp 2-component vector of uint) 0:63 AtomicExchange (temp 2-component vector of uint) -0:63 'gs_ua2' (temp 2-component vector of uint) -0:63 'gs_ub2' (temp 2-component vector of uint) +0:63 'gs_ua2' (global 2-component vector of uint) +0:63 'gs_ub2' (global 2-component vector of uint) 0:64 AtomicMax (global void) -0:64 'gs_ua2' (temp 2-component vector of uint) -0:64 'gs_ub2' (temp 2-component vector of uint) +0:64 'gs_ua2' (global 2-component vector of uint) +0:64 'gs_ub2' (global 2-component vector of uint) 0:65 move second child to first child (temp 2-component vector of uint) 0:65 'out_u2' (temp 2-component vector of uint) 0:65 AtomicMax (temp 2-component vector of uint) -0:65 'gs_ua2' (temp 2-component vector of uint) -0:65 'gs_ub2' (temp 2-component vector of uint) +0:65 'gs_ua2' (global 2-component vector of uint) +0:65 'gs_ub2' (global 2-component vector of uint) 0:66 AtomicMin (global void) -0:66 'gs_ua2' (temp 2-component vector of uint) -0:66 'gs_ub2' (temp 2-component vector of uint) +0:66 'gs_ua2' (global 2-component vector of uint) +0:66 'gs_ub2' (global 2-component vector of uint) 0:67 move second child to first child (temp 2-component vector of uint) 0:67 'out_u2' (temp 2-component vector of uint) 0:67 AtomicMin (temp 2-component vector of uint) -0:67 'gs_ua2' (temp 2-component vector of uint) -0:67 'gs_ub2' (temp 2-component vector of uint) +0:67 'gs_ua2' (global 2-component vector of uint) +0:67 'gs_ub2' (global 2-component vector of uint) 0:68 AtomicOr (global void) -0:68 'gs_ua2' (temp 2-component vector of uint) -0:68 'gs_ub2' (temp 2-component vector of uint) +0:68 'gs_ua2' (global 2-component vector of uint) +0:68 'gs_ub2' (global 2-component vector of uint) 0:69 move second child to first child (temp 2-component vector of uint) 0:69 'out_u2' (temp 2-component vector of uint) 0:69 AtomicOr (temp 2-component vector of uint) -0:69 'gs_ua2' (temp 2-component vector of uint) -0:69 'gs_ub2' (temp 2-component vector of uint) +0:69 'gs_ua2' (global 2-component vector of uint) +0:69 'gs_ub2' (global 2-component vector of uint) 0:70 AtomicXor (global void) -0:70 'gs_ua2' (temp 2-component vector of uint) -0:70 'gs_ub2' (temp 2-component vector of uint) +0:70 'gs_ua2' (global 2-component vector of uint) +0:70 'gs_ub2' (global 2-component vector of uint) 0:71 move second child to first child (temp 2-component vector of uint) 0:71 'out_u2' (temp 2-component vector of uint) 0:71 AtomicXor (temp 2-component vector of uint) -0:71 'gs_ua2' (temp 2-component vector of uint) -0:71 'gs_ub2' (temp 2-component vector of uint) +0:71 'gs_ua2' (global 2-component vector of uint) +0:71 'gs_ub2' (global 2-component vector of uint) 0:74 Branch: Return with expression 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:104 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3; (temp 3-component vector of float) +0:104 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3; (global 3-component vector of float) 0:78 Function Parameters: 0:78 'inF0' (in 3-component vector of float) 0:78 'inF1' (in 3-component vector of float) @@ -491,70 +491,70 @@ local_size = (1, 1, 1) 0:82 all (global bool) 0:82 'inF0' (in 3-component vector of float) 0:85 AtomicAdd (global void) -0:85 'gs_ua3' (temp 3-component vector of uint) -0:85 'gs_ub3' (temp 3-component vector of uint) +0:85 'gs_ua3' (global 3-component vector of uint) +0:85 'gs_ub3' (global 3-component vector of uint) 0:86 move second child to first child (temp 3-component vector of uint) 0:86 'out_u3' (temp 3-component vector of uint) 0:86 AtomicAdd (temp 3-component vector of uint) -0:86 'gs_ua3' (temp 3-component vector of uint) -0:86 'gs_ub3' (temp 3-component vector of uint) +0:86 'gs_ua3' (global 3-component vector of uint) +0:86 'gs_ub3' (global 3-component vector of uint) 0:87 AtomicAnd (global void) -0:87 'gs_ua3' (temp 3-component vector of uint) -0:87 'gs_ub3' (temp 3-component vector of uint) +0:87 'gs_ua3' (global 3-component vector of uint) +0:87 'gs_ub3' (global 3-component vector of uint) 0:88 move second child to first child (temp 3-component vector of uint) 0:88 'out_u3' (temp 3-component vector of uint) 0:88 AtomicAnd (temp 3-component vector of uint) -0:88 'gs_ua3' (temp 3-component vector of uint) -0:88 'gs_ub3' (temp 3-component vector of uint) +0:88 'gs_ua3' (global 3-component vector of uint) +0:88 'gs_ub3' (global 3-component vector of uint) 0:89 move second child to first child (temp 3-component vector of uint) 0:89 'out_u3' (temp 3-component vector of uint) 0:89 AtomicCompSwap (temp 3-component vector of uint) -0:89 'gs_ua3' (temp 3-component vector of uint) -0:89 'gs_ub3' (temp 3-component vector of uint) -0:89 'gs_uc3' (temp 3-component vector of uint) +0:89 'gs_ua3' (global 3-component vector of uint) +0:89 'gs_ub3' (global 3-component vector of uint) +0:89 'gs_uc3' (global 3-component vector of uint) 0:90 move second child to first child (temp 3-component vector of uint) 0:90 'out_u3' (temp 3-component vector of uint) 0:90 AtomicExchange (temp 3-component vector of uint) -0:90 'gs_ua3' (temp 3-component vector of uint) -0:90 'gs_ub3' (temp 3-component vector of uint) +0:90 'gs_ua3' (global 3-component vector of uint) +0:90 'gs_ub3' (global 3-component vector of uint) 0:91 AtomicMax (global void) -0:91 'gs_ua3' (temp 3-component vector of uint) -0:91 'gs_ub3' (temp 3-component vector of uint) +0:91 'gs_ua3' (global 3-component vector of uint) +0:91 'gs_ub3' (global 3-component vector of uint) 0:92 move second child to first child (temp 3-component vector of uint) 0:92 'out_u3' (temp 3-component vector of uint) 0:92 AtomicMax (temp 3-component vector of uint) -0:92 'gs_ua3' (temp 3-component vector of uint) -0:92 'gs_ub3' (temp 3-component vector of uint) +0:92 'gs_ua3' (global 3-component vector of uint) +0:92 'gs_ub3' (global 3-component vector of uint) 0:93 AtomicMin (global void) -0:93 'gs_ua3' (temp 3-component vector of uint) -0:93 'gs_ub3' (temp 3-component vector of uint) +0:93 'gs_ua3' (global 3-component vector of uint) +0:93 'gs_ub3' (global 3-component vector of uint) 0:94 move second child to first child (temp 3-component vector of uint) 0:94 'out_u3' (temp 3-component vector of uint) 0:94 AtomicMin (temp 3-component vector of uint) -0:94 'gs_ua3' (temp 3-component vector of uint) -0:94 'gs_ub3' (temp 3-component vector of uint) +0:94 'gs_ua3' (global 3-component vector of uint) +0:94 'gs_ub3' (global 3-component vector of uint) 0:95 AtomicOr (global void) -0:95 'gs_ua3' (temp 3-component vector of uint) -0:95 'gs_ub3' (temp 3-component vector of uint) +0:95 'gs_ua3' (global 3-component vector of uint) +0:95 'gs_ub3' (global 3-component vector of uint) 0:96 move second child to first child (temp 3-component vector of uint) 0:96 'out_u3' (temp 3-component vector of uint) 0:96 AtomicOr (temp 3-component vector of uint) -0:96 'gs_ua3' (temp 3-component vector of uint) -0:96 'gs_ub3' (temp 3-component vector of uint) +0:96 'gs_ua3' (global 3-component vector of uint) +0:96 'gs_ub3' (global 3-component vector of uint) 0:97 AtomicXor (global void) -0:97 'gs_ua3' (temp 3-component vector of uint) -0:97 'gs_ub3' (temp 3-component vector of uint) +0:97 'gs_ua3' (global 3-component vector of uint) +0:97 'gs_ub3' (global 3-component vector of uint) 0:98 move second child to first child (temp 3-component vector of uint) 0:98 'out_u3' (temp 3-component vector of uint) 0:98 AtomicXor (temp 3-component vector of uint) -0:98 'gs_ua3' (temp 3-component vector of uint) -0:98 'gs_ub3' (temp 3-component vector of uint) +0:98 'gs_ua3' (global 3-component vector of uint) +0:98 'gs_ub3' (global 3-component vector of uint) 0:101 Branch: Return with expression 0:? Constant: 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:130 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; (temp 4-component vector of float) +0:130 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; (global 4-component vector of float) 0:105 Function Parameters: 0:105 'inF0' (in 4-component vector of float) 0:105 'inF1' (in 4-component vector of float) @@ -565,64 +565,64 @@ local_size = (1, 1, 1) 0:109 all (global bool) 0:109 'inF0' (in 4-component vector of float) 0:112 AtomicAdd (global void) -0:112 'gs_ua4' (temp 4-component vector of uint) -0:112 'gs_ub4' (temp 4-component vector of uint) +0:112 'gs_ua4' (global 4-component vector of uint) +0:112 'gs_ub4' (global 4-component vector of uint) 0:113 move second child to first child (temp 4-component vector of uint) 0:113 'out_u4' (temp 4-component vector of uint) 0:113 AtomicAdd (temp 4-component vector of uint) -0:113 'gs_ua4' (temp 4-component vector of uint) -0:113 'gs_ub4' (temp 4-component vector of uint) +0:113 'gs_ua4' (global 4-component vector of uint) +0:113 'gs_ub4' (global 4-component vector of uint) 0:114 AtomicAnd (global void) -0:114 'gs_ua4' (temp 4-component vector of uint) -0:114 'gs_ub4' (temp 4-component vector of uint) +0:114 'gs_ua4' (global 4-component vector of uint) +0:114 'gs_ub4' (global 4-component vector of uint) 0:115 move second child to first child (temp 4-component vector of uint) 0:115 'out_u4' (temp 4-component vector of uint) 0:115 AtomicAnd (temp 4-component vector of uint) -0:115 'gs_ua4' (temp 4-component vector of uint) -0:115 'gs_ub4' (temp 4-component vector of uint) +0:115 'gs_ua4' (global 4-component vector of uint) +0:115 'gs_ub4' (global 4-component vector of uint) 0:116 move second child to first child (temp 4-component vector of uint) 0:116 'out_u4' (temp 4-component vector of uint) 0:116 AtomicCompSwap (temp 4-component vector of uint) -0:116 'gs_ua4' (temp 4-component vector of uint) -0:116 'gs_ub4' (temp 4-component vector of uint) -0:116 'gs_uc4' (temp 4-component vector of uint) +0:116 'gs_ua4' (global 4-component vector of uint) +0:116 'gs_ub4' (global 4-component vector of uint) +0:116 'gs_uc4' (global 4-component vector of uint) 0:117 move second child to first child (temp 4-component vector of uint) 0:117 'out_u4' (temp 4-component vector of uint) 0:117 AtomicExchange (temp 4-component vector of uint) -0:117 'gs_ua4' (temp 4-component vector of uint) -0:117 'gs_ub4' (temp 4-component vector of uint) +0:117 'gs_ua4' (global 4-component vector of uint) +0:117 'gs_ub4' (global 4-component vector of uint) 0:118 AtomicMax (global void) -0:118 'gs_ua4' (temp 4-component vector of uint) -0:118 'gs_ub4' (temp 4-component vector of uint) +0:118 'gs_ua4' (global 4-component vector of uint) +0:118 'gs_ub4' (global 4-component vector of uint) 0:119 move second child to first child (temp 4-component vector of uint) 0:119 'out_u4' (temp 4-component vector of uint) 0:119 AtomicMax (temp 4-component vector of uint) -0:119 'gs_ua4' (temp 4-component vector of uint) -0:119 'gs_ub4' (temp 4-component vector of uint) +0:119 'gs_ua4' (global 4-component vector of uint) +0:119 'gs_ub4' (global 4-component vector of uint) 0:120 AtomicMin (global void) -0:120 'gs_ua4' (temp 4-component vector of uint) -0:120 'gs_ub4' (temp 4-component vector of uint) +0:120 'gs_ua4' (global 4-component vector of uint) +0:120 'gs_ub4' (global 4-component vector of uint) 0:121 move second child to first child (temp 4-component vector of uint) 0:121 'out_u4' (temp 4-component vector of uint) 0:121 AtomicMin (temp 4-component vector of uint) -0:121 'gs_ua4' (temp 4-component vector of uint) -0:121 'gs_ub4' (temp 4-component vector of uint) +0:121 'gs_ua4' (global 4-component vector of uint) +0:121 'gs_ub4' (global 4-component vector of uint) 0:122 AtomicOr (global void) -0:122 'gs_ua4' (temp 4-component vector of uint) -0:122 'gs_ub4' (temp 4-component vector of uint) +0:122 'gs_ua4' (global 4-component vector of uint) +0:122 'gs_ub4' (global 4-component vector of uint) 0:123 move second child to first child (temp 4-component vector of uint) 0:123 'out_u4' (temp 4-component vector of uint) 0:123 AtomicOr (temp 4-component vector of uint) -0:123 'gs_ua4' (temp 4-component vector of uint) -0:123 'gs_ub4' (temp 4-component vector of uint) +0:123 'gs_ua4' (global 4-component vector of uint) +0:123 'gs_ub4' (global 4-component vector of uint) 0:124 AtomicXor (global void) -0:124 'gs_ua4' (temp 4-component vector of uint) -0:124 'gs_ub4' (temp 4-component vector of uint) +0:124 'gs_ua4' (global 4-component vector of uint) +0:124 'gs_ub4' (global 4-component vector of uint) 0:125 move second child to first child (temp 4-component vector of uint) 0:125 'out_u4' (temp 4-component vector of uint) 0:125 AtomicXor (temp 4-component vector of uint) -0:125 'gs_ua4' (temp 4-component vector of uint) -0:125 'gs_ub4' (temp 4-component vector of uint) +0:125 'gs_ua4' (global 4-component vector of uint) +0:125 'gs_ub4' (global 4-component vector of uint) 0:128 Branch: Return with expression 0:? Constant: 0:? 1.000000 @@ -630,27 +630,27 @@ local_size = (1, 1, 1) 0:? 3.000000 0:? 4.000000 0:? Linker Objects -0:? 'gs_ua' (temp uint) -0:? 'gs_ub' (temp uint) -0:? 'gs_uc' (temp uint) -0:? 'gs_ua2' (temp 2-component vector of uint) -0:? 'gs_ub2' (temp 2-component vector of uint) -0:? 'gs_uc2' (temp 2-component vector of uint) -0:? 'gs_ua3' (temp 3-component vector of uint) -0:? 'gs_ub3' (temp 3-component vector of uint) -0:? 'gs_uc3' (temp 3-component vector of uint) -0:? 'gs_ua4' (temp 4-component vector of uint) -0:? 'gs_ub4' (temp 4-component vector of uint) -0:? 'gs_uc4' (temp 4-component vector of uint) +0:? 'gs_ua' (global uint) +0:? 'gs_ub' (global uint) +0:? 'gs_uc' (global uint) +0:? 'gs_ua2' (global 2-component vector of uint) +0:? 'gs_ub2' (global 2-component vector of uint) +0:? 'gs_uc2' (global 2-component vector of uint) +0:? 'gs_ua3' (global 3-component vector of uint) +0:? 'gs_ub3' (global 3-component vector of uint) +0:? 'gs_uc3' (global 3-component vector of uint) +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) // Module Version 10000 // Generated by (magic number): 80001 -// Id's are bound by 213 +// Id's are bound by 217 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint GLCompute 4 "ComputeShaderFunction" 172 + EntryPoint GLCompute 4 "ComputeShaderFunction" 175 ExecutionMode 4 LocalSize 1 1 1 Source HLSL 450 Name 4 "ComputeShaderFunction" @@ -676,23 +676,23 @@ local_size = (1, 1, 1) Name 43 "inF2" Name 44 "inU0" Name 45 "inU1" - Name 51 "gs_ua" - Name 52 "gs_ub" - Name 57 "out_u1" - Name 65 "gs_uc" - Name 93 "gs_ua2" - Name 94 "gs_ub2" - Name 97 "out_u2" - Name 105 "gs_uc2" - Name 133 "gs_ua3" - Name 134 "gs_ub3" - Name 137 "out_u3" - Name 145 "gs_uc3" - Name 172 "inF0" - Name 177 "gs_ua4" - Name 178 "gs_ub4" - Name 181 "out_u4" - Name 189 "gs_uc4" + Name 52 "gs_ua" + Name 53 "gs_ub" + Name 58 "out_u1" + Name 66 "gs_uc" + Name 95 "gs_ua2" + Name 96 "gs_ub2" + Name 99 "out_u2" + Name 107 "gs_uc2" + Name 136 "gs_ua3" + Name 137 "gs_ub3" + Name 140 "out_u3" + Name 148 "gs_uc3" + Name 175 "inF0" + Name 180 "gs_ua4" + Name 181 "gs_ub4" + Name 185 "out_u4" + Name 193 "gs_uc4" 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 @@ -712,67 +712,80 @@ local_size = (1, 1, 1) 39: TypePointer Function 38(ivec3) 40: TypeFunction 36(fvec3) 37(ptr) 37(ptr) 37(ptr) 39(ptr) 39(ptr) 49: TypeBool - 54: 8(int) Constant 1 - 55: 8(int) Constant 0 - 86: 6(float) Constant 0 - 126: 6(float) Constant 1065353216 - 127: 6(float) Constant 1073741824 - 128: 24(fvec2) ConstantComposite 126 127 - 166: 6(float) Constant 1077936128 - 167: 36(fvec3) ConstantComposite 126 127 166 - 170: TypeVector 6(float) 4 - 171: TypePointer Input 170(fvec4) - 172(inF0): 171(ptr) Variable Input - 175: TypeVector 8(int) 4 - 176: TypePointer Function 175(ivec4) - 210: 6(float) Constant 1082130432 - 211: 170(fvec4) ConstantComposite 126 127 166 210 + 51: TypePointer Private 8(int) + 52(gs_ua): 51(ptr) Variable Private + 53(gs_ub): 51(ptr) Variable Private + 55: 8(int) Constant 1 + 56: 8(int) Constant 0 + 66(gs_uc): 51(ptr) Variable Private + 87: 6(float) Constant 0 + 94: TypePointer Private 26(ivec2) + 95(gs_ua2): 94(ptr) Variable Private + 96(gs_ub2): 94(ptr) Variable Private + 107(gs_uc2): 94(ptr) Variable Private + 128: 6(float) Constant 1065353216 + 129: 6(float) Constant 1073741824 + 130: 24(fvec2) ConstantComposite 128 129 + 135: TypePointer Private 38(ivec3) + 136(gs_ua3): 135(ptr) Variable Private + 137(gs_ub3): 135(ptr) Variable Private + 148(gs_uc3): 135(ptr) Variable Private + 169: 6(float) Constant 1077936128 + 170: 36(fvec3) ConstantComposite 128 129 169 + 173: TypeVector 6(float) 4 + 174: TypePointer Input 173(fvec4) + 175(inF0): 174(ptr) Variable Input + 178: TypeVector 8(int) 4 + 179: TypePointer Private 178(ivec4) + 180(gs_ua4): 179(ptr) Variable Private + 181(gs_ub4): 179(ptr) Variable Private + 184: TypePointer Function 178(ivec4) + 193(gs_uc4): 179(ptr) Variable Private + 214: 6(float) Constant 1082130432 + 215: 173(fvec4) ConstantComposite 128 129 169 214 4(ComputeShaderFunction): 2 Function None 3 5: Label - 177(gs_ua4): 176(ptr) Variable Function - 178(gs_ub4): 176(ptr) Variable Function - 181(out_u4): 176(ptr) Variable Function - 189(gs_uc4): 176(ptr) Variable Function - 173: 170(fvec4) Load 172(inF0) - 174: 49(bool) All 173 - 179: 175(ivec4) Load 178(gs_ub4) - 180: 2 AtomicIAdd 177(gs_ua4) 54 55 179 - 182: 175(ivec4) Load 178(gs_ub4) - 183: 175(ivec4) AtomicIAdd 177(gs_ua4) 54 55 182 - Store 181(out_u4) 183 - 184: 175(ivec4) Load 178(gs_ub4) - 185: 2 AtomicAnd 177(gs_ua4) 54 55 184 - 186: 175(ivec4) Load 178(gs_ub4) - 187: 175(ivec4) AtomicAnd 177(gs_ua4) 54 55 186 - Store 181(out_u4) 187 - 188: 175(ivec4) Load 178(gs_ub4) - 190: 175(ivec4) Load 189(gs_uc4) - 191: 175(ivec4) AtomicCompareExchange 177(gs_ua4) 54 55 55 190 188 - Store 181(out_u4) 191 - 192: 175(ivec4) Load 178(gs_ub4) - 193: 175(ivec4) AtomicExchange 177(gs_ua4) 54 55 192 - Store 181(out_u4) 193 - 194: 175(ivec4) Load 178(gs_ub4) - 195: 2 AtomicSMax 177(gs_ua4) 54 55 194 - 196: 175(ivec4) Load 178(gs_ub4) - 197: 175(ivec4) AtomicUMax 177(gs_ua4) 54 55 196 - Store 181(out_u4) 197 - 198: 175(ivec4) Load 178(gs_ub4) - 199: 2 AtomicSMin 177(gs_ua4) 54 55 198 - 200: 175(ivec4) Load 178(gs_ub4) - 201: 175(ivec4) AtomicUMin 177(gs_ua4) 54 55 200 - Store 181(out_u4) 201 - 202: 175(ivec4) Load 178(gs_ub4) - 203: 2 AtomicOr 177(gs_ua4) 54 55 202 - 204: 175(ivec4) Load 178(gs_ub4) - 205: 175(ivec4) AtomicOr 177(gs_ua4) 54 55 204 - Store 181(out_u4) 205 - 206: 175(ivec4) Load 178(gs_ub4) - 207: 2 AtomicXor 177(gs_ua4) 54 55 206 - 208: 175(ivec4) Load 178(gs_ub4) - 209: 175(ivec4) AtomicXor 177(gs_ua4) 54 55 208 - Store 181(out_u4) 209 - ReturnValue 211 + 185(out_u4): 184(ptr) Variable Function + 176: 173(fvec4) Load 175(inF0) + 177: 49(bool) All 176 + 182: 178(ivec4) Load 181(gs_ub4) + 183: 2 AtomicIAdd 180(gs_ua4) 55 56 182 + 186: 178(ivec4) Load 181(gs_ub4) + 187: 178(ivec4) AtomicIAdd 180(gs_ua4) 55 56 186 + Store 185(out_u4) 187 + 188: 178(ivec4) Load 181(gs_ub4) + 189: 2 AtomicAnd 180(gs_ua4) 55 56 188 + 190: 178(ivec4) Load 181(gs_ub4) + 191: 178(ivec4) AtomicAnd 180(gs_ua4) 55 56 190 + Store 185(out_u4) 191 + 192: 178(ivec4) Load 181(gs_ub4) + 194: 178(ivec4) Load 193(gs_uc4) + 195: 178(ivec4) AtomicCompareExchange 180(gs_ua4) 55 56 56 194 192 + Store 185(out_u4) 195 + 196: 178(ivec4) Load 181(gs_ub4) + 197: 178(ivec4) AtomicExchange 180(gs_ua4) 55 56 196 + Store 185(out_u4) 197 + 198: 178(ivec4) Load 181(gs_ub4) + 199: 2 AtomicSMax 180(gs_ua4) 55 56 198 + 200: 178(ivec4) Load 181(gs_ub4) + 201: 178(ivec4) AtomicUMax 180(gs_ua4) 55 56 200 + Store 185(out_u4) 201 + 202: 178(ivec4) Load 181(gs_ub4) + 203: 2 AtomicSMin 180(gs_ua4) 55 56 202 + 204: 178(ivec4) Load 181(gs_ub4) + 205: 178(ivec4) AtomicUMin 180(gs_ua4) 55 56 204 + Store 185(out_u4) 205 + 206: 178(ivec4) Load 181(gs_ub4) + 207: 2 AtomicOr 180(gs_ua4) 55 56 206 + 208: 178(ivec4) Load 181(gs_ub4) + 209: 178(ivec4) AtomicOr 180(gs_ua4) 55 56 208 + Store 185(out_u4) 209 + 210: 178(ivec4) Load 181(gs_ub4) + 211: 2 AtomicXor 180(gs_ua4) 55 56 210 + 212: 178(ivec4) Load 181(gs_ub4) + 213: 178(ivec4) AtomicXor 180(gs_ua4) 55 56 212 + Store 185(out_u4) 213 + ReturnValue 215 FunctionEnd 16(ComputeShaderFunctionS(f1;f1;f1;u1;u1;): 6(float) Function None 10 11(inF0): 7(ptr) FunctionParameter @@ -781,57 +794,54 @@ local_size = (1, 1, 1) 14(inU0): 9(ptr) FunctionParameter 15(inU1): 9(ptr) FunctionParameter 17: Label - 51(gs_ua): 9(ptr) Variable Function - 52(gs_ub): 9(ptr) Variable Function - 57(out_u1): 9(ptr) Variable Function - 65(gs_uc): 9(ptr) Variable Function + 58(out_u1): 9(ptr) Variable Function 48: 6(float) Load 11(inF0) 50: 49(bool) All 48 - 53: 8(int) Load 52(gs_ub) - 56: 2 AtomicIAdd 51(gs_ua) 54 55 53 - 58: 8(int) Load 52(gs_ub) - 59: 8(int) AtomicIAdd 51(gs_ua) 54 55 58 - Store 57(out_u1) 59 - 60: 8(int) Load 52(gs_ub) - 61: 2 AtomicAnd 51(gs_ua) 54 55 60 - 62: 8(int) Load 52(gs_ub) - 63: 8(int) AtomicAnd 51(gs_ua) 54 55 62 - Store 57(out_u1) 63 - 64: 8(int) Load 52(gs_ub) - 66: 8(int) Load 65(gs_uc) - 67: 8(int) AtomicCompareExchange 51(gs_ua) 54 55 55 66 64 - Store 57(out_u1) 67 - 68: 8(int) Load 52(gs_ub) - 69: 8(int) AtomicExchange 51(gs_ua) 54 55 68 - Store 57(out_u1) 69 - 70: 8(int) Load 52(gs_ub) - 71: 2 AtomicSMax 51(gs_ua) 54 55 70 - 72: 8(int) Load 52(gs_ub) - 73: 8(int) AtomicUMax 51(gs_ua) 54 55 72 - Store 57(out_u1) 73 - 74: 8(int) Load 52(gs_ub) - 75: 2 AtomicSMin 51(gs_ua) 54 55 74 - 76: 8(int) Load 52(gs_ub) - 77: 8(int) AtomicUMin 51(gs_ua) 54 55 76 - Store 57(out_u1) 77 - 78: 8(int) Load 52(gs_ub) - 79: 2 AtomicOr 51(gs_ua) 54 55 78 - 80: 8(int) Load 52(gs_ub) - 81: 8(int) AtomicOr 51(gs_ua) 54 55 80 - Store 57(out_u1) 81 - 82: 8(int) Load 52(gs_ub) - 83: 2 AtomicXor 51(gs_ua) 54 55 82 - 84: 8(int) Load 52(gs_ub) - 85: 8(int) AtomicXor 51(gs_ua) 54 55 84 - Store 57(out_u1) 85 - ReturnValue 86 + 54: 8(int) Load 53(gs_ub) + 57: 2 AtomicIAdd 52(gs_ua) 55 56 54 + 59: 8(int) Load 53(gs_ub) + 60: 8(int) AtomicIAdd 52(gs_ua) 55 56 59 + Store 58(out_u1) 60 + 61: 8(int) Load 53(gs_ub) + 62: 2 AtomicAnd 52(gs_ua) 55 56 61 + 63: 8(int) Load 53(gs_ub) + 64: 8(int) AtomicAnd 52(gs_ua) 55 56 63 + Store 58(out_u1) 64 + 65: 8(int) Load 53(gs_ub) + 67: 8(int) Load 66(gs_uc) + 68: 8(int) AtomicCompareExchange 52(gs_ua) 55 56 56 67 65 + Store 58(out_u1) 68 + 69: 8(int) Load 53(gs_ub) + 70: 8(int) AtomicExchange 52(gs_ua) 55 56 69 + Store 58(out_u1) 70 + 71: 8(int) Load 53(gs_ub) + 72: 2 AtomicSMax 52(gs_ua) 55 56 71 + 73: 8(int) Load 53(gs_ub) + 74: 8(int) AtomicUMax 52(gs_ua) 55 56 73 + Store 58(out_u1) 74 + 75: 8(int) Load 53(gs_ub) + 76: 2 AtomicSMin 52(gs_ua) 55 56 75 + 77: 8(int) Load 53(gs_ub) + 78: 8(int) AtomicUMin 52(gs_ua) 55 56 77 + Store 58(out_u1) 78 + 79: 8(int) Load 53(gs_ub) + 80: 2 AtomicOr 52(gs_ua) 55 56 79 + 81: 8(int) Load 53(gs_ub) + 82: 8(int) AtomicOr 52(gs_ua) 55 56 81 + Store 58(out_u1) 82 + 83: 8(int) Load 53(gs_ub) + 84: 2 AtomicXor 52(gs_ua) 55 56 83 + 85: 8(int) Load 53(gs_ub) + 86: 8(int) AtomicXor 52(gs_ua) 55 56 85 + Store 58(out_u1) 86 + ReturnValue 87 FunctionEnd 22(ComputeShaderFunction1(vf1;vf1;vf1;): 6(float) Function None 18 19(inF0): 7(ptr) FunctionParameter 20(inF1): 7(ptr) FunctionParameter 21(inF2): 7(ptr) FunctionParameter 23: Label - ReturnValue 86 + ReturnValue 87 FunctionEnd 34(ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2;): 24(fvec2) Function None 28 29(inF0): 25(ptr) FunctionParameter @@ -840,50 +850,47 @@ local_size = (1, 1, 1) 32(inU0): 27(ptr) FunctionParameter 33(inU1): 27(ptr) FunctionParameter 35: Label - 93(gs_ua2): 27(ptr) Variable Function - 94(gs_ub2): 27(ptr) Variable Function - 97(out_u2): 27(ptr) Variable Function - 105(gs_uc2): 27(ptr) Variable Function - 91: 24(fvec2) Load 29(inF0) - 92: 49(bool) All 91 - 95: 26(ivec2) Load 94(gs_ub2) - 96: 2 AtomicIAdd 93(gs_ua2) 54 55 95 - 98: 26(ivec2) Load 94(gs_ub2) - 99: 26(ivec2) AtomicIAdd 93(gs_ua2) 54 55 98 - Store 97(out_u2) 99 - 100: 26(ivec2) Load 94(gs_ub2) - 101: 2 AtomicAnd 93(gs_ua2) 54 55 100 - 102: 26(ivec2) Load 94(gs_ub2) - 103: 26(ivec2) AtomicAnd 93(gs_ua2) 54 55 102 - Store 97(out_u2) 103 - 104: 26(ivec2) Load 94(gs_ub2) - 106: 26(ivec2) Load 105(gs_uc2) - 107: 26(ivec2) AtomicCompareExchange 93(gs_ua2) 54 55 55 106 104 - Store 97(out_u2) 107 - 108: 26(ivec2) Load 94(gs_ub2) - 109: 26(ivec2) AtomicExchange 93(gs_ua2) 54 55 108 - Store 97(out_u2) 109 - 110: 26(ivec2) Load 94(gs_ub2) - 111: 2 AtomicSMax 93(gs_ua2) 54 55 110 - 112: 26(ivec2) Load 94(gs_ub2) - 113: 26(ivec2) AtomicUMax 93(gs_ua2) 54 55 112 - Store 97(out_u2) 113 - 114: 26(ivec2) Load 94(gs_ub2) - 115: 2 AtomicSMin 93(gs_ua2) 54 55 114 - 116: 26(ivec2) Load 94(gs_ub2) - 117: 26(ivec2) AtomicUMin 93(gs_ua2) 54 55 116 - Store 97(out_u2) 117 - 118: 26(ivec2) Load 94(gs_ub2) - 119: 2 AtomicOr 93(gs_ua2) 54 55 118 - 120: 26(ivec2) Load 94(gs_ub2) - 121: 26(ivec2) AtomicOr 93(gs_ua2) 54 55 120 - Store 97(out_u2) 121 - 122: 26(ivec2) Load 94(gs_ub2) - 123: 2 AtomicXor 93(gs_ua2) 54 55 122 - 124: 26(ivec2) Load 94(gs_ub2) - 125: 26(ivec2) AtomicXor 93(gs_ua2) 54 55 124 - Store 97(out_u2) 125 - ReturnValue 128 + 99(out_u2): 27(ptr) Variable Function + 92: 24(fvec2) Load 29(inF0) + 93: 49(bool) All 92 + 97: 26(ivec2) Load 96(gs_ub2) + 98: 2 AtomicIAdd 95(gs_ua2) 55 56 97 + 100: 26(ivec2) Load 96(gs_ub2) + 101: 26(ivec2) AtomicIAdd 95(gs_ua2) 55 56 100 + Store 99(out_u2) 101 + 102: 26(ivec2) Load 96(gs_ub2) + 103: 2 AtomicAnd 95(gs_ua2) 55 56 102 + 104: 26(ivec2) Load 96(gs_ub2) + 105: 26(ivec2) AtomicAnd 95(gs_ua2) 55 56 104 + Store 99(out_u2) 105 + 106: 26(ivec2) Load 96(gs_ub2) + 108: 26(ivec2) Load 107(gs_uc2) + 109: 26(ivec2) AtomicCompareExchange 95(gs_ua2) 55 56 56 108 106 + Store 99(out_u2) 109 + 110: 26(ivec2) Load 96(gs_ub2) + 111: 26(ivec2) AtomicExchange 95(gs_ua2) 55 56 110 + Store 99(out_u2) 111 + 112: 26(ivec2) Load 96(gs_ub2) + 113: 2 AtomicSMax 95(gs_ua2) 55 56 112 + 114: 26(ivec2) Load 96(gs_ub2) + 115: 26(ivec2) AtomicUMax 95(gs_ua2) 55 56 114 + Store 99(out_u2) 115 + 116: 26(ivec2) Load 96(gs_ub2) + 117: 2 AtomicSMin 95(gs_ua2) 55 56 116 + 118: 26(ivec2) Load 96(gs_ub2) + 119: 26(ivec2) AtomicUMin 95(gs_ua2) 55 56 118 + Store 99(out_u2) 119 + 120: 26(ivec2) Load 96(gs_ub2) + 121: 2 AtomicOr 95(gs_ua2) 55 56 120 + 122: 26(ivec2) Load 96(gs_ub2) + 123: 26(ivec2) AtomicOr 95(gs_ua2) 55 56 122 + Store 99(out_u2) 123 + 124: 26(ivec2) Load 96(gs_ub2) + 125: 2 AtomicXor 95(gs_ua2) 55 56 124 + 126: 26(ivec2) Load 96(gs_ub2) + 127: 26(ivec2) AtomicXor 95(gs_ua2) 55 56 126 + Store 99(out_u2) 127 + ReturnValue 130 FunctionEnd 46(ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3;): 36(fvec3) Function None 40 41(inF0): 37(ptr) FunctionParameter @@ -892,48 +899,45 @@ local_size = (1, 1, 1) 44(inU0): 39(ptr) FunctionParameter 45(inU1): 39(ptr) FunctionParameter 47: Label - 133(gs_ua3): 39(ptr) Variable Function - 134(gs_ub3): 39(ptr) Variable Function - 137(out_u3): 39(ptr) Variable Function - 145(gs_uc3): 39(ptr) Variable Function - 131: 36(fvec3) Load 41(inF0) - 132: 49(bool) All 131 - 135: 38(ivec3) Load 134(gs_ub3) - 136: 2 AtomicIAdd 133(gs_ua3) 54 55 135 - 138: 38(ivec3) Load 134(gs_ub3) - 139: 38(ivec3) AtomicIAdd 133(gs_ua3) 54 55 138 - Store 137(out_u3) 139 - 140: 38(ivec3) Load 134(gs_ub3) - 141: 2 AtomicAnd 133(gs_ua3) 54 55 140 - 142: 38(ivec3) Load 134(gs_ub3) - 143: 38(ivec3) AtomicAnd 133(gs_ua3) 54 55 142 - Store 137(out_u3) 143 - 144: 38(ivec3) Load 134(gs_ub3) - 146: 38(ivec3) Load 145(gs_uc3) - 147: 38(ivec3) AtomicCompareExchange 133(gs_ua3) 54 55 55 146 144 - Store 137(out_u3) 147 - 148: 38(ivec3) Load 134(gs_ub3) - 149: 38(ivec3) AtomicExchange 133(gs_ua3) 54 55 148 - Store 137(out_u3) 149 - 150: 38(ivec3) Load 134(gs_ub3) - 151: 2 AtomicSMax 133(gs_ua3) 54 55 150 - 152: 38(ivec3) Load 134(gs_ub3) - 153: 38(ivec3) AtomicUMax 133(gs_ua3) 54 55 152 - Store 137(out_u3) 153 - 154: 38(ivec3) Load 134(gs_ub3) - 155: 2 AtomicSMin 133(gs_ua3) 54 55 154 - 156: 38(ivec3) Load 134(gs_ub3) - 157: 38(ivec3) AtomicUMin 133(gs_ua3) 54 55 156 - Store 137(out_u3) 157 - 158: 38(ivec3) Load 134(gs_ub3) - 159: 2 AtomicOr 133(gs_ua3) 54 55 158 - 160: 38(ivec3) Load 134(gs_ub3) - 161: 38(ivec3) AtomicOr 133(gs_ua3) 54 55 160 - Store 137(out_u3) 161 - 162: 38(ivec3) Load 134(gs_ub3) - 163: 2 AtomicXor 133(gs_ua3) 54 55 162 - 164: 38(ivec3) Load 134(gs_ub3) - 165: 38(ivec3) AtomicXor 133(gs_ua3) 54 55 164 - Store 137(out_u3) 165 - ReturnValue 167 + 140(out_u3): 39(ptr) Variable Function + 133: 36(fvec3) Load 41(inF0) + 134: 49(bool) All 133 + 138: 38(ivec3) Load 137(gs_ub3) + 139: 2 AtomicIAdd 136(gs_ua3) 55 56 138 + 141: 38(ivec3) Load 137(gs_ub3) + 142: 38(ivec3) AtomicIAdd 136(gs_ua3) 55 56 141 + Store 140(out_u3) 142 + 143: 38(ivec3) Load 137(gs_ub3) + 144: 2 AtomicAnd 136(gs_ua3) 55 56 143 + 145: 38(ivec3) Load 137(gs_ub3) + 146: 38(ivec3) AtomicAnd 136(gs_ua3) 55 56 145 + Store 140(out_u3) 146 + 147: 38(ivec3) Load 137(gs_ub3) + 149: 38(ivec3) Load 148(gs_uc3) + 150: 38(ivec3) AtomicCompareExchange 136(gs_ua3) 55 56 56 149 147 + Store 140(out_u3) 150 + 151: 38(ivec3) Load 137(gs_ub3) + 152: 38(ivec3) AtomicExchange 136(gs_ua3) 55 56 151 + Store 140(out_u3) 152 + 153: 38(ivec3) Load 137(gs_ub3) + 154: 2 AtomicSMax 136(gs_ua3) 55 56 153 + 155: 38(ivec3) Load 137(gs_ub3) + 156: 38(ivec3) AtomicUMax 136(gs_ua3) 55 56 155 + Store 140(out_u3) 156 + 157: 38(ivec3) Load 137(gs_ub3) + 158: 2 AtomicSMin 136(gs_ua3) 55 56 157 + 159: 38(ivec3) Load 137(gs_ub3) + 160: 38(ivec3) AtomicUMin 136(gs_ua3) 55 56 159 + Store 140(out_u3) 160 + 161: 38(ivec3) Load 137(gs_ub3) + 162: 2 AtomicOr 136(gs_ua3) 55 56 161 + 163: 38(ivec3) Load 137(gs_ub3) + 164: 38(ivec3) AtomicOr 136(gs_ua3) 55 56 163 + Store 140(out_u3) 164 + 165: 38(ivec3) Load 137(gs_ub3) + 166: 2 AtomicXor 136(gs_ua3) 55 56 165 + 167: 38(ivec3) Load 137(gs_ub3) + 168: 38(ivec3) AtomicXor 136(gs_ua3) 55 56 167 + Store 140(out_u3) 168 + ReturnValue 170 FunctionEnd diff --git a/Test/baseResults/hlsl.intrinsics.double.frag.out b/Test/baseResults/hlsl.intrinsics.double.frag.out index 494cc0f2..8bfc072f 100644 --- a/Test/baseResults/hlsl.intrinsics.double.frag.out +++ b/Test/baseResults/hlsl.intrinsics.double.frag.out @@ -2,7 +2,7 @@ hlsl.intrinsics.double.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:12 Function Definition: PixelShaderFunction(d1;d1;d1;vd2;vd3;vd4;u1;u1; (temp float) +0:12 Function Definition: PixelShaderFunction(d1;d1;d1;vd2;vd3;vd4;u1;u1; (global float) 0:5 Function Parameters: 0:5 'inDV1a' (in double) 0:5 'inDV1b' (in double) @@ -39,7 +39,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:12 Function Definition: PixelShaderFunction(d1;d1;d1;vd2;vd3;vd4;u1;u1; (temp float) +0:12 Function Definition: PixelShaderFunction(d1;d1;d1;vd2;vd3;vd4;u1;u1; (global float) 0:5 Function Parameters: 0:5 'inDV1a' (in double) 0:5 'inDV1b' (in double) diff --git a/Test/baseResults/hlsl.intrinsics.evalfns.frag.out b/Test/baseResults/hlsl.intrinsics.evalfns.frag.out index 1c22b25a..f1b64114 100644 --- a/Test/baseResults/hlsl.intrinsics.evalfns.frag.out +++ b/Test/baseResults/hlsl.intrinsics.evalfns.frag.out @@ -2,7 +2,7 @@ hlsl.intrinsics.evalfns.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:11 Function Definition: main(f1;vf2;vf3;vf4;vi2; (temp void) +0:11 Function Definition: main(f1;vf2;vf3;vf4;vi2; (global void) 0:3 Function Parameters: 0:3 'inF1' (in float) 0:3 'inF2' (in 2-component vector of float) @@ -52,7 +52,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:11 Function Definition: main(f1;vf2;vf3;vf4;vi2; (temp void) +0:11 Function Definition: main(f1;vf2;vf3;vf4;vi2; (global void) 0:3 Function Parameters: 0:3 'inF1' (in float) 0:3 'inF2' (in 2-component vector of float) diff --git a/Test/baseResults/hlsl.intrinsics.f1632.frag.out b/Test/baseResults/hlsl.intrinsics.f1632.frag.out index ce519293..7340531b 100644 --- a/Test/baseResults/hlsl.intrinsics.f1632.frag.out +++ b/Test/baseResults/hlsl.intrinsics.f1632.frag.out @@ -9,7 +9,7 @@ ERROR: 4 compilation errors. No code generated. Shader version: 450 gl_FragCoord origin is upper left ERROR: node is still EOpNull! -0:8 Function Definition: PixelShaderFunctionS(f1; (temp float) +0:8 Function Definition: PixelShaderFunctionS(f1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:? Sequence @@ -19,14 +19,14 @@ ERROR: node is still EOpNull! 0:5 Branch: Return with expression 0:5 Constant: 0:5 0.000000 -0:14 Function Definition: PixelShaderFunction1(vf1; (temp 1-component vector of float) +0:14 Function Definition: PixelShaderFunction1(vf1; (global 1-component vector of float) 0:9 Function Parameters: 0:9 'inF0' (in 1-component vector of float) 0:? Sequence 0:11 Branch: Return with expression 0:11 Constant: 0:11 0.000000 -0:21 Function Definition: PixelShaderFunction2(vf2; (temp 2-component vector of float) +0:21 Function Definition: PixelShaderFunction2(vf2; (global 2-component vector of float) 0:15 Function Parameters: 0:15 'inF0' (in 2-component vector of float) 0:? Sequence @@ -37,7 +37,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:28 Function Definition: PixelShaderFunction3(vf3; (temp 3-component vector of float) +0:28 Function Definition: PixelShaderFunction3(vf3; (global 3-component vector of float) 0:22 Function Parameters: 0:22 'inF0' (in 3-component vector of float) 0:? Sequence @@ -49,7 +49,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:35 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:35 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:29 Function Parameters: 0:29 'inF0' (in 4-component vector of float) 0:? Sequence @@ -71,7 +71,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left ERROR: node is still EOpNull! -0:8 Function Definition: PixelShaderFunctionS(f1; (temp float) +0:8 Function Definition: PixelShaderFunctionS(f1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:? Sequence @@ -81,14 +81,14 @@ ERROR: node is still EOpNull! 0:5 Branch: Return with expression 0:5 Constant: 0:5 0.000000 -0:14 Function Definition: PixelShaderFunction1(vf1; (temp 1-component vector of float) +0:14 Function Definition: PixelShaderFunction1(vf1; (global 1-component vector of float) 0:9 Function Parameters: 0:9 'inF0' (in 1-component vector of float) 0:? Sequence 0:11 Branch: Return with expression 0:11 Constant: 0:11 0.000000 -0:21 Function Definition: PixelShaderFunction2(vf2; (temp 2-component vector of float) +0:21 Function Definition: PixelShaderFunction2(vf2; (global 2-component vector of float) 0:15 Function Parameters: 0:15 'inF0' (in 2-component vector of float) 0:? Sequence @@ -99,7 +99,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:28 Function Definition: PixelShaderFunction3(vf3; (temp 3-component vector of float) +0:28 Function Definition: PixelShaderFunction3(vf3; (global 3-component vector of float) 0:22 Function Parameters: 0:22 'inF0' (in 3-component vector of float) 0:? Sequence @@ -111,7 +111,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:35 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:35 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:29 Function Parameters: 0:29 'inF0' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.intrinsics.frag.out b/Test/baseResults/hlsl.intrinsics.frag.out index aec36024..f6c41475 100644 --- a/Test/baseResults/hlsl.intrinsics.frag.out +++ b/Test/baseResults/hlsl.intrinsics.frag.out @@ -2,7 +2,7 @@ hlsl.intrinsics.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:88 Function Definition: PixelShaderFunctionS(f1;f1;f1;u1;u1; (temp float) +0:88 Function Definition: PixelShaderFunctionS(f1;f1;f1;u1;u1; (global float) 0:17 Function Parameters: 0:17 'inF0' (in float) 0:17 'inF1' (in float) @@ -339,7 +339,7 @@ gl_FragCoord origin is upper left 0:85 Branch: Return with expression 0:85 Constant: 0:85 0.000000 -0:94 Function Definition: PixelShaderFunction1(vf1;vf1;vf1; (temp 1-component vector of float) +0:94 Function Definition: PixelShaderFunction1(vf1;vf1;vf1; (global 1-component vector of float) 0:89 Function Parameters: 0:89 'inF0' (in 1-component vector of float) 0:89 'inF1' (in 1-component vector of float) @@ -348,7 +348,7 @@ gl_FragCoord origin is upper left 0:91 Branch: Return with expression 0:91 Constant: 0:91 0.000000 -0:177 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vu2;vu2; (temp 2-component vector of float) +0:177 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vu2;vu2; (global 2-component vector of float) 0:95 Function Parameters: 0:95 'inF0' (in 2-component vector of float) 0:95 'inF1' (in 2-component vector of float) @@ -733,7 +733,7 @@ gl_FragCoord origin is upper left 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:258 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vu3;vu3; (temp 3-component vector of float) +0:258 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vu3;vu3; (global 3-component vector of float) 0:178 Function Parameters: 0:178 'inF0' (in 3-component vector of float) 0:178 'inF1' (in 3-component vector of float) @@ -1130,7 +1130,7 @@ gl_FragCoord origin is upper left 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:399 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vu4;vu4; (temp 4-component vector of float) +0:399 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vu4;vu4; (global 4-component vector of float) 0:259 Function Parameters: 0:259 'inF0' (in 4-component vector of float) 0:259 'inF1' (in 4-component vector of float) @@ -1550,7 +1550,7 @@ gl_FragCoord origin is upper left 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:408 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:408 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:400 Function Parameters: 0:400 'inF0' (in 2X2 matrix of float) 0:400 'inF1' (in 2X2 matrix of float) @@ -1838,7 +1838,7 @@ gl_FragCoord origin is upper left 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:417 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:417 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:409 Function Parameters: 0:409 'inF0' (in 3X3 matrix of float) 0:409 'inF1' (in 3X3 matrix of float) @@ -2136,7 +2136,7 @@ gl_FragCoord origin is upper left 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:438 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:438 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:418 Function Parameters: 0:418 'inF0' (in 4X4 matrix of float) 0:418 'inF1' (in 4X4 matrix of float) @@ -2448,7 +2448,7 @@ gl_FragCoord origin is upper left 0:? 4.000000 0:? 4.000000 0:? 4.000000 -0:445 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (temp void) +0:445 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (global void) 0:441 Function Parameters: 0:441 'inF0' (in float) 0:441 'inF1' (in float) @@ -2511,7 +2511,7 @@ gl_FragCoord origin is upper left 0:442 matrix-multiply (temp 2X2 matrix of float) 0:442 'inFM0' (in 2X2 matrix of float) 0:442 'inFM1' (in 2X2 matrix of float) -0:452 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (temp void) +0:452 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (global void) 0:448 Function Parameters: 0:448 'inF0' (in float) 0:448 'inF1' (in float) @@ -2574,7 +2574,7 @@ gl_FragCoord origin is upper left 0:449 matrix-multiply (temp 3X3 matrix of float) 0:449 'inFM0' (in 3X3 matrix of float) 0:449 'inFM1' (in 3X3 matrix of float) -0:460 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (temp void) +0:460 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (global void) 0:455 Function Parameters: 0:455 'inF0' (in float) 0:455 'inF1' (in float) @@ -2637,7 +2637,7 @@ gl_FragCoord origin is upper left 0:456 matrix-multiply (temp 4X4 matrix of float) 0:456 'inFM0' (in 4X4 matrix of float) 0:456 'inFM1' (in 4X4 matrix of float) -0:484 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (temp void) +0:484 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (global void) 0:465 Function Parameters: 0:465 'inF0' (in float) 0:465 'inF1' (in float) @@ -2752,18 +2752,18 @@ gl_FragCoord origin is upper left 0:482 'inFM3x2' (in 2X3 matrix of float) 0:482 'inFM2x4' (in 4X2 matrix of float) 0:? Linker Objects -0:? 'gs_ua' (temp uint) -0:? 'gs_ub' (temp uint) -0:? 'gs_uc' (temp uint) -0:? 'gs_ua2' (temp 2-component vector of uint) -0:? 'gs_ub2' (temp 2-component vector of uint) -0:? 'gs_uc2' (temp 2-component vector of uint) -0:? 'gs_ua3' (temp 3-component vector of uint) -0:? 'gs_ub3' (temp 3-component vector of uint) -0:? 'gs_uc3' (temp 3-component vector of uint) -0:? 'gs_ua4' (temp 4-component vector of uint) -0:? 'gs_ub4' (temp 4-component vector of uint) -0:? 'gs_uc4' (temp 4-component vector of uint) +0:? 'gs_ua' (global uint) +0:? 'gs_ub' (global uint) +0:? 'gs_uc' (global uint) +0:? 'gs_ua2' (global 2-component vector of uint) +0:? 'gs_ub2' (global 2-component vector of uint) +0:? 'gs_uc2' (global 2-component vector of uint) +0:? 'gs_ua3' (global 3-component vector of uint) +0:? 'gs_ub3' (global 3-component vector of uint) +0:? 'gs_uc3' (global 3-component vector of uint) +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) Linked fragment stage: @@ -2772,7 +2772,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:88 Function Definition: PixelShaderFunctionS(f1;f1;f1;u1;u1; (temp float) +0:88 Function Definition: PixelShaderFunctionS(f1;f1;f1;u1;u1; (global float) 0:17 Function Parameters: 0:17 'inF0' (in float) 0:17 'inF1' (in float) @@ -3109,7 +3109,7 @@ gl_FragCoord origin is upper left 0:85 Branch: Return with expression 0:85 Constant: 0:85 0.000000 -0:94 Function Definition: PixelShaderFunction1(vf1;vf1;vf1; (temp 1-component vector of float) +0:94 Function Definition: PixelShaderFunction1(vf1;vf1;vf1; (global 1-component vector of float) 0:89 Function Parameters: 0:89 'inF0' (in 1-component vector of float) 0:89 'inF1' (in 1-component vector of float) @@ -3118,7 +3118,7 @@ gl_FragCoord origin is upper left 0:91 Branch: Return with expression 0:91 Constant: 0:91 0.000000 -0:177 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vu2;vu2; (temp 2-component vector of float) +0:177 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vu2;vu2; (global 2-component vector of float) 0:95 Function Parameters: 0:95 'inF0' (in 2-component vector of float) 0:95 'inF1' (in 2-component vector of float) @@ -3503,7 +3503,7 @@ gl_FragCoord origin is upper left 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:258 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vu3;vu3; (temp 3-component vector of float) +0:258 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vu3;vu3; (global 3-component vector of float) 0:178 Function Parameters: 0:178 'inF0' (in 3-component vector of float) 0:178 'inF1' (in 3-component vector of float) @@ -3900,7 +3900,7 @@ gl_FragCoord origin is upper left 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:399 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vu4;vu4; (temp 4-component vector of float) +0:399 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vu4;vu4; (global 4-component vector of float) 0:259 Function Parameters: 0:259 'inF0' (in 4-component vector of float) 0:259 'inF1' (in 4-component vector of float) @@ -4320,7 +4320,7 @@ gl_FragCoord origin is upper left 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:408 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:408 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:400 Function Parameters: 0:400 'inF0' (in 2X2 matrix of float) 0:400 'inF1' (in 2X2 matrix of float) @@ -4608,7 +4608,7 @@ gl_FragCoord origin is upper left 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:417 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:417 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:409 Function Parameters: 0:409 'inF0' (in 3X3 matrix of float) 0:409 'inF1' (in 3X3 matrix of float) @@ -4906,7 +4906,7 @@ gl_FragCoord origin is upper left 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:438 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:438 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:418 Function Parameters: 0:418 'inF0' (in 4X4 matrix of float) 0:418 'inF1' (in 4X4 matrix of float) @@ -5218,7 +5218,7 @@ gl_FragCoord origin is upper left 0:? 4.000000 0:? 4.000000 0:? 4.000000 -0:445 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (temp void) +0:445 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (global void) 0:441 Function Parameters: 0:441 'inF0' (in float) 0:441 'inF1' (in float) @@ -5281,7 +5281,7 @@ gl_FragCoord origin is upper left 0:442 matrix-multiply (temp 2X2 matrix of float) 0:442 'inFM0' (in 2X2 matrix of float) 0:442 'inFM1' (in 2X2 matrix of float) -0:452 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (temp void) +0:452 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (global void) 0:448 Function Parameters: 0:448 'inF0' (in float) 0:448 'inF1' (in float) @@ -5344,7 +5344,7 @@ gl_FragCoord origin is upper left 0:449 matrix-multiply (temp 3X3 matrix of float) 0:449 'inFM0' (in 3X3 matrix of float) 0:449 'inFM1' (in 3X3 matrix of float) -0:460 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (temp void) +0:460 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (global void) 0:455 Function Parameters: 0:455 'inF0' (in float) 0:455 'inF1' (in float) @@ -5407,7 +5407,7 @@ gl_FragCoord origin is upper left 0:456 matrix-multiply (temp 4X4 matrix of float) 0:456 'inFM0' (in 4X4 matrix of float) 0:456 'inFM1' (in 4X4 matrix of float) -0:484 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (temp void) +0:484 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (global void) 0:465 Function Parameters: 0:465 'inF0' (in float) 0:465 'inF1' (in float) @@ -5522,22 +5522,22 @@ gl_FragCoord origin is upper left 0:482 'inFM3x2' (in 2X3 matrix of float) 0:482 'inFM2x4' (in 4X2 matrix of float) 0:? Linker Objects -0:? 'gs_ua' (temp uint) -0:? 'gs_ub' (temp uint) -0:? 'gs_uc' (temp uint) -0:? 'gs_ua2' (temp 2-component vector of uint) -0:? 'gs_ub2' (temp 2-component vector of uint) -0:? 'gs_uc2' (temp 2-component vector of uint) -0:? 'gs_ua3' (temp 3-component vector of uint) -0:? 'gs_ub3' (temp 3-component vector of uint) -0:? 'gs_uc3' (temp 3-component vector of uint) -0:? 'gs_ua4' (temp 4-component vector of uint) -0:? 'gs_ub4' (temp 4-component vector of uint) -0:? 'gs_uc4' (temp 4-component vector of uint) +0:? 'gs_ua' (global uint) +0:? 'gs_ub' (global uint) +0:? 'gs_uc' (global uint) +0:? 'gs_ua2' (global 2-component vector of uint) +0:? 'gs_ub2' (global 2-component vector of uint) +0:? 'gs_uc2' (global 2-component vector of uint) +0:? 'gs_ua3' (global 3-component vector of uint) +0:? 'gs_ub3' (global 3-component vector of uint) +0:? 'gs_uc3' (global 3-component vector of uint) +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) // Module Version 10000 // Generated by (magic number): 80001 -// Id's are bound by 1802 +// Id's are bound by 1806 Capability Shader Capability DerivativeControl @@ -6052,18 +6052,18 @@ gl_FragCoord origin is upper left Name 1778 "r14" Name 1782 "r15" Name 1786 "r16" - Name 1790 "gs_ua" - Name 1791 "gs_ub" - Name 1792 "gs_uc" - Name 1793 "gs_ua2" - Name 1794 "gs_ub2" - Name 1795 "gs_uc2" - Name 1796 "gs_ua3" - Name 1797 "gs_ub3" - Name 1798 "gs_uc3" - Name 1799 "gs_ua4" - Name 1800 "gs_ub4" - Name 1801 "gs_uc4" + Name 1791 "gs_ua" + Name 1792 "gs_ub" + Name 1793 "gs_uc" + Name 1795 "gs_ua2" + Name 1796 "gs_ub2" + Name 1797 "gs_uc2" + Name 1799 "gs_ua3" + Name 1800 "gs_ub3" + Name 1801 "gs_uc3" + Name 1803 "gs_ua4" + Name 1804 "gs_ub4" + Name 1805 "gs_uc4" 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 @@ -6180,6 +6180,22 @@ gl_FragCoord origin is upper left 1522(ResType): TypeStruct 65 819(ivec4) 1610: 64(fvec4) ConstantComposite 1053 1053 1053 1053 1611: 65 ConstantComposite 1610 1610 1610 1610 + 1790: TypePointer Private 8(int) + 1791(gs_ua): 1790(ptr) Variable Private + 1792(gs_ub): 1790(ptr) Variable Private + 1793(gs_uc): 1790(ptr) Variable Private + 1794: TypePointer Private 26(ivec2) + 1795(gs_ua2): 1794(ptr) Variable Private + 1796(gs_ub2): 1794(ptr) Variable Private + 1797(gs_uc2): 1794(ptr) Variable Private + 1798: TypePointer Private 38(ivec3) + 1799(gs_ua3): 1798(ptr) Variable Private + 1800(gs_ub3): 1798(ptr) Variable Private + 1801(gs_uc3): 1798(ptr) Variable Private + 1802: TypePointer Private 824(ivec4) + 1803(gs_ua4): 1802(ptr) Variable Private + 1804(gs_ub4): 1802(ptr) Variable Private + 1805(gs_uc4): 1802(ptr) Variable Private 4(PixelShaderFunction): 2 Function None 3 5: Label 802(r000): 122(ptr) Variable Function @@ -8255,18 +8271,6 @@ gl_FragCoord origin is upper left 1778(r14): 102(ptr) Variable Function 1782(r15): 108(ptr) Variable Function 1786(r16): 106(ptr) Variable Function - 1790(gs_ua): 9(ptr) Variable Function - 1791(gs_ub): 9(ptr) Variable Function - 1792(gs_uc): 9(ptr) Variable Function - 1793(gs_ua2): 27(ptr) Variable Function - 1794(gs_ub2): 27(ptr) Variable Function - 1795(gs_uc2): 27(ptr) Variable Function - 1796(gs_ua3): 39(ptr) Variable Function - 1797(gs_ub3): 39(ptr) Variable Function - 1798(gs_uc3): 39(ptr) Variable Function - 1799(gs_ua4): 825(ptr) Variable Function - 1800(gs_ub4): 825(ptr) Variable Function - 1801(gs_uc4): 825(ptr) Variable Function 1723: 6(float) Load 110(inF0) 1724: 6(float) Load 111(inF1) 1725: 6(float) FMul 1723 1724 diff --git a/Test/baseResults/hlsl.intrinsics.lit.frag.out b/Test/baseResults/hlsl.intrinsics.lit.frag.out index 1bb37df9..fe6f93c9 100644 --- a/Test/baseResults/hlsl.intrinsics.lit.frag.out +++ b/Test/baseResults/hlsl.intrinsics.lit.frag.out @@ -2,7 +2,7 @@ hlsl.intrinsics.lit.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(f1;f1;f1; (temp void) +0:5 Function Definition: PixelShaderFunction(f1;f1;f1; (global void) 0:2 Function Parameters: 0:2 'n_dot_l' (in float) 0:2 'n_dot_h' (in float) @@ -44,7 +44,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(f1;f1;f1; (temp void) +0:5 Function Definition: PixelShaderFunction(f1;f1;f1; (global void) 0:2 Function Parameters: 0:2 'n_dot_l' (in float) 0:2 'n_dot_h' (in float) diff --git a/Test/baseResults/hlsl.intrinsics.negative.comp.out b/Test/baseResults/hlsl.intrinsics.negative.comp.out index e27ab5b8..043fa82e 100644 --- a/Test/baseResults/hlsl.intrinsics.negative.comp.out +++ b/Test/baseResults/hlsl.intrinsics.negative.comp.out @@ -152,7 +152,7 @@ ERROR: 147 compilation errors. No code generated. Shader version: 450 local_size = (1, 1, 1) ERROR: node is still EOpNull! -0:56 Function Definition: ComputeShaderFunctionS(f1;f1;f1;i1; (temp float) +0:56 Function Definition: ComputeShaderFunctionS(f1;f1;f1;i1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:2 'inF1' (in float) @@ -246,7 +246,7 @@ ERROR: node is still EOpNull! 0:53 Branch: Return with expression 0:53 Constant: 0:53 0.000000 -0:65 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1;vi1; (temp 1-component vector of float) +0:65 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1;vi1; (global 1-component vector of float) 0:57 Function Parameters: 0:57 'inF0' (in 1-component vector of float) 0:57 'inF1' (in 1-component vector of float) @@ -258,7 +258,7 @@ ERROR: node is still EOpNull! 0:62 Branch: Return with expression 0:62 Constant: 0:62 0.000000 -0:112 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vi2; (temp 2-component vector of float) +0:112 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vi2; (global 2-component vector of float) 0:66 Function Parameters: 0:66 'inF0' (in 2-component vector of float) 0:66 'inF1' (in 2-component vector of float) @@ -341,7 +341,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:157 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vi3; (temp 3-component vector of float) +0:157 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vi3; (global 3-component vector of float) 0:113 Function Parameters: 0:113 'inF0' (in 3-component vector of float) 0:113 'inF1' (in 3-component vector of float) @@ -421,7 +421,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:202 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float) +0:202 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vi4; (global 4-component vector of float) 0:158 Function Parameters: 0:158 'inF0' (in 4-component vector of float) 0:158 'inF1' (in 4-component vector of float) @@ -511,7 +511,7 @@ Linked compute stage: Shader version: 450 local_size = (1, 1, 1) ERROR: node is still EOpNull! -0:56 Function Definition: ComputeShaderFunctionS(f1;f1;f1;i1; (temp float) +0:56 Function Definition: ComputeShaderFunctionS(f1;f1;f1;i1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:2 'inF1' (in float) @@ -605,7 +605,7 @@ ERROR: node is still EOpNull! 0:53 Branch: Return with expression 0:53 Constant: 0:53 0.000000 -0:65 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1;vi1; (temp 1-component vector of float) +0:65 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1;vi1; (global 1-component vector of float) 0:57 Function Parameters: 0:57 'inF0' (in 1-component vector of float) 0:57 'inF1' (in 1-component vector of float) @@ -617,7 +617,7 @@ ERROR: node is still EOpNull! 0:62 Branch: Return with expression 0:62 Constant: 0:62 0.000000 -0:112 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vi2; (temp 2-component vector of float) +0:112 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vi2; (global 2-component vector of float) 0:66 Function Parameters: 0:66 'inF0' (in 2-component vector of float) 0:66 'inF1' (in 2-component vector of float) @@ -700,7 +700,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:157 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vi3; (temp 3-component vector of float) +0:157 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vi3; (global 3-component vector of float) 0:113 Function Parameters: 0:113 'inF0' (in 3-component vector of float) 0:113 'inF1' (in 3-component vector of float) @@ -780,7 +780,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:202 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float) +0:202 Function Definition: ComputeShaderFunction(vf4;vf4;vf4;vi4; (global 4-component vector of float) 0:158 Function Parameters: 0:158 'inF0' (in 4-component vector of float) 0:158 'inF1' (in 4-component vector of float) diff --git a/Test/baseResults/hlsl.intrinsics.negative.frag.out b/Test/baseResults/hlsl.intrinsics.negative.frag.out index d065e073..829b6998 100644 --- a/Test/baseResults/hlsl.intrinsics.negative.frag.out +++ b/Test/baseResults/hlsl.intrinsics.negative.frag.out @@ -91,7 +91,7 @@ ERROR: 86 compilation errors. No code generated. Shader version: 450 gl_FragCoord origin is upper left ERROR: node is still EOpNull! -0:35 Function Definition: PixelShaderFunctionS(f1;f1;f1;i1; (temp float) +0:35 Function Definition: PixelShaderFunctionS(f1;f1;f1;i1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:2 'inF1' (in float) @@ -135,7 +135,7 @@ ERROR: node is still EOpNull! 0:32 Branch: Return with expression 0:32 Constant: 0:32 0.000000 -0:44 Function Definition: PixelShaderFunction1(vf1;vf1;vf1;vi1; (temp 1-component vector of float) +0:44 Function Definition: PixelShaderFunction1(vf1;vf1;vf1;vi1; (global 1-component vector of float) 0:36 Function Parameters: 0:36 'inF0' (in 1-component vector of float) 0:36 'inF1' (in 1-component vector of float) @@ -147,7 +147,7 @@ ERROR: node is still EOpNull! 0:41 Branch: Return with expression 0:41 Constant: 0:41 0.000000 -0:62 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vi2; (temp 2-component vector of float) +0:62 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vi2; (global 2-component vector of float) 0:45 Function Parameters: 0:45 'inF0' (in 2-component vector of float) 0:45 'inF1' (in 2-component vector of float) @@ -180,7 +180,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:79 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vi3; (temp 3-component vector of float) +0:79 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vi3; (global 3-component vector of float) 0:63 Function Parameters: 0:63 'inF0' (in 3-component vector of float) 0:63 'inF1' (in 3-component vector of float) @@ -210,7 +210,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:114 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float) +0:114 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (global 4-component vector of float) 0:80 Function Parameters: 0:80 'inF0' (in 4-component vector of float) 0:80 'inF1' (in 4-component vector of float) @@ -241,7 +241,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:122 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:122 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:115 Function Parameters: 0:115 'inF0' (in 2X2 matrix of float) 0:115 'inF1' (in 2X2 matrix of float) @@ -279,7 +279,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:130 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:130 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:123 Function Parameters: 0:123 'inF0' (in 3X3 matrix of float) 0:123 'inF1' (in 3X3 matrix of float) @@ -322,7 +322,7 @@ ERROR: node is still EOpNull! 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:137 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:137 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:131 Function Parameters: 0:131 'inF0' (in 4X4 matrix of float) 0:131 'inF1' (in 4X4 matrix of float) @@ -381,7 +381,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left ERROR: node is still EOpNull! -0:35 Function Definition: PixelShaderFunctionS(f1;f1;f1;i1; (temp float) +0:35 Function Definition: PixelShaderFunctionS(f1;f1;f1;i1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:2 'inF1' (in float) @@ -425,7 +425,7 @@ ERROR: node is still EOpNull! 0:32 Branch: Return with expression 0:32 Constant: 0:32 0.000000 -0:44 Function Definition: PixelShaderFunction1(vf1;vf1;vf1;vi1; (temp 1-component vector of float) +0:44 Function Definition: PixelShaderFunction1(vf1;vf1;vf1;vi1; (global 1-component vector of float) 0:36 Function Parameters: 0:36 'inF0' (in 1-component vector of float) 0:36 'inF1' (in 1-component vector of float) @@ -437,7 +437,7 @@ ERROR: node is still EOpNull! 0:41 Branch: Return with expression 0:41 Constant: 0:41 0.000000 -0:62 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vi2; (temp 2-component vector of float) +0:62 Function Definition: PixelShaderFunction2(vf2;vf2;vf2;vi2; (global 2-component vector of float) 0:45 Function Parameters: 0:45 'inF0' (in 2-component vector of float) 0:45 'inF1' (in 2-component vector of float) @@ -470,7 +470,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:79 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vi3; (temp 3-component vector of float) +0:79 Function Definition: PixelShaderFunction3(vf3;vf3;vf3;vi3; (global 3-component vector of float) 0:63 Function Parameters: 0:63 'inF0' (in 3-component vector of float) 0:63 'inF1' (in 3-component vector of float) @@ -500,7 +500,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:114 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float) +0:114 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vi4; (global 4-component vector of float) 0:80 Function Parameters: 0:80 'inF0' (in 4-component vector of float) 0:80 'inF1' (in 4-component vector of float) @@ -531,7 +531,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:122 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:122 Function Definition: PixelShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:115 Function Parameters: 0:115 'inF0' (in 2X2 matrix of float) 0:115 'inF1' (in 2X2 matrix of float) @@ -569,7 +569,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:130 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:130 Function Definition: PixelShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:123 Function Parameters: 0:123 'inF0' (in 3X3 matrix of float) 0:123 'inF1' (in 3X3 matrix of float) @@ -612,7 +612,7 @@ ERROR: node is still EOpNull! 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:137 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:137 Function Definition: PixelShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:131 Function Parameters: 0:131 'inF0' (in 4X4 matrix of float) 0:131 'inF1' (in 4X4 matrix of float) diff --git a/Test/baseResults/hlsl.intrinsics.negative.vert.out b/Test/baseResults/hlsl.intrinsics.negative.vert.out index 11123cb8..0e974a1f 100644 --- a/Test/baseResults/hlsl.intrinsics.negative.vert.out +++ b/Test/baseResults/hlsl.intrinsics.negative.vert.out @@ -230,7 +230,7 @@ ERROR: 226 compilation errors. No code generated. Shader version: 450 ERROR: node is still EOpNull! -0:74 Function Definition: VertexShaderFunctionS(f1;f1;f1;i1; (temp float) +0:74 Function Definition: VertexShaderFunctionS(f1;f1;f1;i1; (global float) 0:15 Function Parameters: 0:15 'inF0' (in float) 0:15 'inF1' (in float) @@ -338,7 +338,7 @@ ERROR: node is still EOpNull! 0:71 Branch: Return with expression 0:71 Constant: 0:71 0.000000 -0:83 Function Definition: VertexShaderFunction1(vf1;vf1;vf1;vi1; (temp 1-component vector of float) +0:83 Function Definition: VertexShaderFunction1(vf1;vf1;vf1;vi1; (global 1-component vector of float) 0:75 Function Parameters: 0:75 'inF0' (in 1-component vector of float) 0:75 'inF1' (in 1-component vector of float) @@ -350,7 +350,7 @@ ERROR: node is still EOpNull! 0:80 Branch: Return with expression 0:80 Constant: 0:80 0.000000 -0:130 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vi2; (temp 2-component vector of float) +0:130 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vi2; (global 2-component vector of float) 0:84 Function Parameters: 0:84 'inF0' (in 2-component vector of float) 0:84 'inF1' (in 2-component vector of float) @@ -433,7 +433,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:175 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vi3; (temp 3-component vector of float) +0:175 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vi3; (global 3-component vector of float) 0:131 Function Parameters: 0:131 'inF0' (in 3-component vector of float) 0:131 'inF1' (in 3-component vector of float) @@ -513,7 +513,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:250 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float) +0:250 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (global 4-component vector of float) 0:176 Function Parameters: 0:176 'inF0' (in 4-component vector of float) 0:176 'inF1' (in 4-component vector of float) @@ -594,7 +594,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:258 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:258 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:251 Function Parameters: 0:251 'inF0' (in 2X2 matrix of float) 0:251 'inF1' (in 2X2 matrix of float) @@ -654,7 +654,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:266 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:266 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:259 Function Parameters: 0:259 'inF0' (in 3X3 matrix of float) 0:259 'inF1' (in 3X3 matrix of float) @@ -719,7 +719,7 @@ ERROR: node is still EOpNull! 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:273 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:273 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:267 Function Parameters: 0:267 'inF0' (in 4X4 matrix of float) 0:267 'inF1' (in 4X4 matrix of float) @@ -792,18 +792,18 @@ ERROR: node is still EOpNull! 0:? 4.000000 0:? 4.000000 0:? Linker Objects -0:? 'gs_ua' (temp uint) -0:? 'gs_ub' (temp uint) -0:? 'gs_uc' (temp uint) -0:? 'gs_ua2' (temp 2-component vector of uint) -0:? 'gs_ub2' (temp 2-component vector of uint) -0:? 'gs_uc2' (temp 2-component vector of uint) -0:? 'gs_ua3' (temp 3-component vector of uint) -0:? 'gs_ub3' (temp 3-component vector of uint) -0:? 'gs_uc3' (temp 3-component vector of uint) -0:? 'gs_ua4' (temp 4-component vector of uint) -0:? 'gs_ub4' (temp 4-component vector of uint) -0:? 'gs_uc4' (temp 4-component vector of uint) +0:? 'gs_ua' (global uint) +0:? 'gs_ub' (global uint) +0:? 'gs_uc' (global uint) +0:? 'gs_ua2' (global 2-component vector of uint) +0:? 'gs_ub2' (global 2-component vector of uint) +0:? 'gs_uc2' (global 2-component vector of uint) +0:? 'gs_ua3' (global 3-component vector of uint) +0:? 'gs_ub3' (global 3-component vector of uint) +0:? 'gs_uc3' (global 3-component vector of uint) +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) Linked vertex stage: @@ -811,7 +811,7 @@ Linked vertex stage: Shader version: 450 ERROR: node is still EOpNull! -0:74 Function Definition: VertexShaderFunctionS(f1;f1;f1;i1; (temp float) +0:74 Function Definition: VertexShaderFunctionS(f1;f1;f1;i1; (global float) 0:15 Function Parameters: 0:15 'inF0' (in float) 0:15 'inF1' (in float) @@ -919,7 +919,7 @@ ERROR: node is still EOpNull! 0:71 Branch: Return with expression 0:71 Constant: 0:71 0.000000 -0:83 Function Definition: VertexShaderFunction1(vf1;vf1;vf1;vi1; (temp 1-component vector of float) +0:83 Function Definition: VertexShaderFunction1(vf1;vf1;vf1;vi1; (global 1-component vector of float) 0:75 Function Parameters: 0:75 'inF0' (in 1-component vector of float) 0:75 'inF1' (in 1-component vector of float) @@ -931,7 +931,7 @@ ERROR: node is still EOpNull! 0:80 Branch: Return with expression 0:80 Constant: 0:80 0.000000 -0:130 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vi2; (temp 2-component vector of float) +0:130 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vi2; (global 2-component vector of float) 0:84 Function Parameters: 0:84 'inF0' (in 2-component vector of float) 0:84 'inF1' (in 2-component vector of float) @@ -1014,7 +1014,7 @@ ERROR: node is still EOpNull! 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:175 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vi3; (temp 3-component vector of float) +0:175 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vi3; (global 3-component vector of float) 0:131 Function Parameters: 0:131 'inF0' (in 3-component vector of float) 0:131 'inF1' (in 3-component vector of float) @@ -1094,7 +1094,7 @@ ERROR: node is still EOpNull! 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:250 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (temp 4-component vector of float) +0:250 Function Definition: VertexShaderFunction(vf4;vf4;vf4;vi4; (global 4-component vector of float) 0:176 Function Parameters: 0:176 'inF0' (in 4-component vector of float) 0:176 'inF1' (in 4-component vector of float) @@ -1175,7 +1175,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:258 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:258 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:251 Function Parameters: 0:251 'inF0' (in 2X2 matrix of float) 0:251 'inF1' (in 2X2 matrix of float) @@ -1235,7 +1235,7 @@ ERROR: node is still EOpNull! 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:266 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:266 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:259 Function Parameters: 0:259 'inF0' (in 3X3 matrix of float) 0:259 'inF1' (in 3X3 matrix of float) @@ -1300,7 +1300,7 @@ ERROR: node is still EOpNull! 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:273 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:273 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:267 Function Parameters: 0:267 'inF0' (in 4X4 matrix of float) 0:267 'inF1' (in 4X4 matrix of float) @@ -1373,17 +1373,17 @@ ERROR: node is still EOpNull! 0:? 4.000000 0:? 4.000000 0:? Linker Objects -0:? 'gs_ua' (temp uint) -0:? 'gs_ub' (temp uint) -0:? 'gs_uc' (temp uint) -0:? 'gs_ua2' (temp 2-component vector of uint) -0:? 'gs_ub2' (temp 2-component vector of uint) -0:? 'gs_uc2' (temp 2-component vector of uint) -0:? 'gs_ua3' (temp 3-component vector of uint) -0:? 'gs_ub3' (temp 3-component vector of uint) -0:? 'gs_uc3' (temp 3-component vector of uint) -0:? 'gs_ua4' (temp 4-component vector of uint) -0:? 'gs_ub4' (temp 4-component vector of uint) -0:? 'gs_uc4' (temp 4-component vector of uint) +0:? 'gs_ua' (global uint) +0:? 'gs_ub' (global uint) +0:? 'gs_uc' (global uint) +0:? 'gs_ua2' (global 2-component vector of uint) +0:? 'gs_ub2' (global 2-component vector of uint) +0:? 'gs_uc2' (global 2-component vector of uint) +0:? 'gs_ua3' (global 3-component vector of uint) +0:? 'gs_ub3' (global 3-component vector of uint) +0:? 'gs_uc3' (global 3-component vector of uint) +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) SPIR-V is not generated for failed compile or link diff --git a/Test/baseResults/hlsl.intrinsics.vert.out b/Test/baseResults/hlsl.intrinsics.vert.out index 7c8a1c4c..926501e0 100644 --- a/Test/baseResults/hlsl.intrinsics.vert.out +++ b/Test/baseResults/hlsl.intrinsics.vert.out @@ -1,7 +1,7 @@ hlsl.intrinsics.vert Shader version: 450 0:? Sequence -0:63 Function Definition: VertexShaderFunctionS(f1;f1;f1;u1;u1; (temp float) +0:63 Function Definition: VertexShaderFunctionS(f1;f1;f1;u1;u1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:2 'inF1' (in float) @@ -142,7 +142,7 @@ Shader version: 450 0:60 Branch: Return with expression 0:60 Constant: 0:60 0.000000 -0:69 Function Definition: VertexShaderFunction1(vf1;vf1;vf1; (temp 1-component vector of float) +0:69 Function Definition: VertexShaderFunction1(vf1;vf1;vf1; (global 1-component vector of float) 0:64 Function Parameters: 0:64 'inF0' (in 1-component vector of float) 0:64 'inF1' (in 1-component vector of float) @@ -151,7 +151,7 @@ Shader version: 450 0:66 Branch: Return with expression 0:66 Constant: 0:66 0.000000 -0:139 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2; (temp 2-component vector of float) +0:139 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2; (global 2-component vector of float) 0:70 Function Parameters: 0:70 'inF0' (in 2-component vector of float) 0:70 'inF1' (in 2-component vector of float) @@ -317,7 +317,7 @@ Shader version: 450 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:210 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3; (temp 3-component vector of float) +0:210 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3; (global 3-component vector of float) 0:140 Function Parameters: 0:140 'inF0' (in 3-component vector of float) 0:140 'inF1' (in 3-component vector of float) @@ -489,7 +489,7 @@ Shader version: 450 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:335 Function Definition: VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4; (temp 4-component vector of float) +0:335 Function Definition: VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4; (global 4-component vector of float) 0:211 Function Parameters: 0:211 'inF0' (in 4-component vector of float) 0:211 'inF1' (in 4-component vector of float) @@ -681,7 +681,7 @@ Shader version: 450 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:344 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:344 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:336 Function Parameters: 0:336 'inF0' (in 2X2 matrix of float) 0:336 'inF1' (in 2X2 matrix of float) @@ -811,7 +811,7 @@ Shader version: 450 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:353 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:353 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:345 Function Parameters: 0:345 'inF0' (in 3X3 matrix of float) 0:345 'inF1' (in 3X3 matrix of float) @@ -946,7 +946,7 @@ Shader version: 450 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:374 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:374 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:354 Function Parameters: 0:354 'inF0' (in 4X4 matrix of float) 0:354 'inF1' (in 4X4 matrix of float) @@ -1088,7 +1088,7 @@ Shader version: 450 0:? 4.000000 0:? 4.000000 0:? 4.000000 -0:381 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (temp void) +0:381 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (global void) 0:377 Function Parameters: 0:377 'inF0' (in float) 0:377 'inF1' (in float) @@ -1151,7 +1151,7 @@ Shader version: 450 0:378 matrix-multiply (temp 2X2 matrix of float) 0:378 'inFM0' (in 2X2 matrix of float) 0:378 'inFM1' (in 2X2 matrix of float) -0:388 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (temp void) +0:388 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (global void) 0:384 Function Parameters: 0:384 'inF0' (in float) 0:384 'inF1' (in float) @@ -1214,7 +1214,7 @@ Shader version: 450 0:385 matrix-multiply (temp 3X3 matrix of float) 0:385 'inFM0' (in 3X3 matrix of float) 0:385 'inFM1' (in 3X3 matrix of float) -0:396 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (temp void) +0:396 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (global void) 0:391 Function Parameters: 0:391 'inF0' (in float) 0:391 'inF1' (in float) @@ -1277,7 +1277,7 @@ Shader version: 450 0:392 matrix-multiply (temp 4X4 matrix of float) 0:392 'inFM0' (in 4X4 matrix of float) 0:392 'inFM1' (in 4X4 matrix of float) -0:420 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (temp void) +0:420 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (global void) 0:401 Function Parameters: 0:401 'inF0' (in float) 0:401 'inF1' (in float) @@ -1399,7 +1399,7 @@ Linked vertex stage: Shader version: 450 0:? Sequence -0:63 Function Definition: VertexShaderFunctionS(f1;f1;f1;u1;u1; (temp float) +0:63 Function Definition: VertexShaderFunctionS(f1;f1;f1;u1;u1; (global float) 0:2 Function Parameters: 0:2 'inF0' (in float) 0:2 'inF1' (in float) @@ -1540,7 +1540,7 @@ Shader version: 450 0:60 Branch: Return with expression 0:60 Constant: 0:60 0.000000 -0:69 Function Definition: VertexShaderFunction1(vf1;vf1;vf1; (temp 1-component vector of float) +0:69 Function Definition: VertexShaderFunction1(vf1;vf1;vf1; (global 1-component vector of float) 0:64 Function Parameters: 0:64 'inF0' (in 1-component vector of float) 0:64 'inF1' (in 1-component vector of float) @@ -1549,7 +1549,7 @@ Shader version: 450 0:66 Branch: Return with expression 0:66 Constant: 0:66 0.000000 -0:139 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2; (temp 2-component vector of float) +0:139 Function Definition: VertexShaderFunction2(vf2;vf2;vf2;vu2;vu2; (global 2-component vector of float) 0:70 Function Parameters: 0:70 'inF0' (in 2-component vector of float) 0:70 'inF1' (in 2-component vector of float) @@ -1715,7 +1715,7 @@ Shader version: 450 0:? Constant: 0:? 1.000000 0:? 2.000000 -0:210 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3; (temp 3-component vector of float) +0:210 Function Definition: VertexShaderFunction3(vf3;vf3;vf3;vu3;vu3; (global 3-component vector of float) 0:140 Function Parameters: 0:140 'inF0' (in 3-component vector of float) 0:140 'inF1' (in 3-component vector of float) @@ -1887,7 +1887,7 @@ Shader version: 450 0:? 1.000000 0:? 2.000000 0:? 3.000000 -0:335 Function Definition: VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4; (temp 4-component vector of float) +0:335 Function Definition: VertexShaderFunction4(vf4;vf4;vf4;vu4;vu4; (global 4-component vector of float) 0:211 Function Parameters: 0:211 'inF0' (in 4-component vector of float) 0:211 'inF1' (in 4-component vector of float) @@ -2079,7 +2079,7 @@ Shader version: 450 0:? 2.000000 0:? 3.000000 0:? 4.000000 -0:344 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (temp 2X2 matrix of float) +0:344 Function Definition: VertexShaderFunction2x2(mf22;mf22;mf22; (global 2X2 matrix of float) 0:336 Function Parameters: 0:336 'inF0' (in 2X2 matrix of float) 0:336 'inF1' (in 2X2 matrix of float) @@ -2209,7 +2209,7 @@ Shader version: 450 0:? 2.000000 0:? 2.000000 0:? 2.000000 -0:353 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (temp 3X3 matrix of float) +0:353 Function Definition: VertexShaderFunction3x3(mf33;mf33;mf33; (global 3X3 matrix of float) 0:345 Function Parameters: 0:345 'inF0' (in 3X3 matrix of float) 0:345 'inF1' (in 3X3 matrix of float) @@ -2344,7 +2344,7 @@ Shader version: 450 0:? 3.000000 0:? 3.000000 0:? 3.000000 -0:374 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (temp 4X4 matrix of float) +0:374 Function Definition: VertexShaderFunction4x4(mf44;mf44;mf44; (global 4X4 matrix of float) 0:354 Function Parameters: 0:354 'inF0' (in 4X4 matrix of float) 0:354 'inF1' (in 4X4 matrix of float) @@ -2486,7 +2486,7 @@ Shader version: 450 0:? 4.000000 0:? 4.000000 0:? 4.000000 -0:381 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (temp void) +0:381 Function Definition: TestGenMul2(f1;f1;vf2;vf2;mf22;mf22; (global void) 0:377 Function Parameters: 0:377 'inF0' (in float) 0:377 'inF1' (in float) @@ -2549,7 +2549,7 @@ Shader version: 450 0:378 matrix-multiply (temp 2X2 matrix of float) 0:378 'inFM0' (in 2X2 matrix of float) 0:378 'inFM1' (in 2X2 matrix of float) -0:388 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (temp void) +0:388 Function Definition: TestGenMul3(f1;f1;vf3;vf3;mf33;mf33; (global void) 0:384 Function Parameters: 0:384 'inF0' (in float) 0:384 'inF1' (in float) @@ -2612,7 +2612,7 @@ Shader version: 450 0:385 matrix-multiply (temp 3X3 matrix of float) 0:385 'inFM0' (in 3X3 matrix of float) 0:385 'inFM1' (in 3X3 matrix of float) -0:396 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (temp void) +0:396 Function Definition: TestGenMul4(f1;f1;vf4;vf4;mf44;mf44; (global void) 0:391 Function Parameters: 0:391 'inF0' (in float) 0:391 'inF1' (in float) @@ -2675,7 +2675,7 @@ Shader version: 450 0:392 matrix-multiply (temp 4X4 matrix of float) 0:392 'inFM0' (in 4X4 matrix of float) 0:392 'inFM1' (in 4X4 matrix of float) -0:420 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (temp void) +0:420 Function Definition: TestGenMulNxM(f1;f1;vf2;vf3;mf32;mf23;mf33;mf43;mf42; (global void) 0:401 Function Parameters: 0:401 'inF0' (in float) 0:401 'inF1' (in float) diff --git a/Test/baseResults/hlsl.matType.frag.out b/Test/baseResults/hlsl.matType.frag.out index 8742e3f6..b081a4af 100755 --- a/Test/baseResults/hlsl.matType.frag.out +++ b/Test/baseResults/hlsl.matType.frag.out @@ -4,20 +4,20 @@ gl_FragCoord origin is upper left 0:? Sequence 0:1 Sequence 0:1 move second child to first child (temp 1-component vector of float) -0:1 'f1' (temp 1-component vector of float) +0:1 'f1' (global 1-component vector of float) 0:1 Constant: 0:1 1.000000 -0:11 Function Definition: ShaderFunction(vf1;f1; (temp 1-component vector of float) +0:11 Function Definition: ShaderFunction(vf1;f1; (global 1-component vector of float) 0:9 Function Parameters: 0:9 'inFloat1' (in 1-component vector of float) 0:9 'inScalar' (in float) 0:? Linker Objects -0:? 'f1' (temp 1-component vector of float) -0:? 'fmat11' (temp 1X1 matrix of float) -0:? 'fmat41' (temp 1X4 matrix of float) -0:? 'fmat12' (temp 2X1 matrix of float) -0:? 'dmat23' (temp 3X2 matrix of double) -0:? 'int44' (temp 4X4 matrix of int) +0:? 'f1' (global 1-component vector of float) +0:? 'fmat11' (global 1X1 matrix of float) +0:? 'fmat41' (global 1X4 matrix of float) +0:? 'fmat12' (global 2X1 matrix of float) +0:? 'dmat23' (global 3X2 matrix of double) +0:? 'int44' (global 4X4 matrix of int) Linked fragment stage: @@ -28,24 +28,24 @@ gl_FragCoord origin is upper left 0:? Sequence 0:1 Sequence 0:1 move second child to first child (temp 1-component vector of float) -0:1 'f1' (temp 1-component vector of float) +0:1 'f1' (global 1-component vector of float) 0:1 Constant: 0:1 1.000000 -0:11 Function Definition: ShaderFunction(vf1;f1; (temp 1-component vector of float) +0:11 Function Definition: ShaderFunction(vf1;f1; (global 1-component vector of float) 0:9 Function Parameters: 0:9 'inFloat1' (in 1-component vector of float) 0:9 'inScalar' (in float) 0:? Linker Objects -0:? 'f1' (temp 1-component vector of float) -0:? 'fmat11' (temp 1X1 matrix of float) -0:? 'fmat41' (temp 1X4 matrix of float) -0:? 'fmat12' (temp 2X1 matrix of float) -0:? 'dmat23' (temp 3X2 matrix of double) -0:? 'int44' (temp 4X4 matrix of int) +0:? 'f1' (global 1-component vector of float) +0:? 'fmat11' (global 1X1 matrix of float) +0:? 'fmat41' (global 1X4 matrix of float) +0:? 'fmat12' (global 2X1 matrix of float) +0:? 'dmat23' (global 3X2 matrix of double) +0:? 'int44' (global 4X4 matrix of int) // Module Version 10000 // Generated by (magic number): 80001 -// Id's are bound by 37 +// Id's are bound by 38 Capability Shader Capability Float64 @@ -58,48 +58,49 @@ gl_FragCoord origin is upper left Name 11 "ShaderFunction(vf1;f1;" Name 9 "inFloat1" Name 10 "inScalar" - Name 13 "f1" - Name 19 "fmat11" - Name 23 "fmat41" - Name 26 "fmat12" - Name 31 "dmat23" - Name 36 "int44" + Name 14 "f1" + Name 20 "fmat11" + Name 24 "fmat41" + Name 27 "fmat12" + Name 32 "dmat23" + Name 37 "int44" 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypePointer Function 6(float) 8: TypeFunction 6(float) 7(ptr) 7(ptr) - 14: 6(float) Constant 1065353216 - 16: TypeVector 6(float) 1 - 17: TypeMatrix 16(fvec) 1 - 18: TypePointer Function 17 - 20: TypeVector 6(float) 4 - 21: TypeMatrix 20(fvec4) 1 - 22: TypePointer Function 21 - 24: TypeMatrix 16(fvec) 2 - 25: TypePointer Function 24 - 27: TypeFloat 64 - 28: TypeVector 27(float) 2 - 29: TypeMatrix 28(fvec2) 3 - 30: TypePointer Function 29 - 32: TypeInt 32 1 - 33: TypeVector 32(int) 4 - 34: TypeMatrix 33(ivec4) 4 - 35: TypePointer Function 34 + 13: TypePointer Private 6(float) + 14(f1): 13(ptr) Variable Private + 15: 6(float) Constant 1065353216 + 17: TypeVector 6(float) 1 + 18: TypeMatrix 17(fvec) 1 + 19: TypePointer Private 18 + 20(fmat11): 19(ptr) Variable Private + 21: TypeVector 6(float) 4 + 22: TypeMatrix 21(fvec4) 1 + 23: TypePointer Private 22 + 24(fmat41): 23(ptr) Variable Private + 25: TypeMatrix 17(fvec) 2 + 26: TypePointer Private 25 + 27(fmat12): 26(ptr) Variable Private + 28: TypeFloat 64 + 29: TypeVector 28(float) 2 + 30: TypeMatrix 29(fvec2) 3 + 31: TypePointer Private 30 + 32(dmat23): 31(ptr) Variable Private + 33: TypeInt 32 1 + 34: TypeVector 33(int) 4 + 35: TypeMatrix 34(ivec4) 4 + 36: TypePointer Private 35 + 37(int44): 36(ptr) Variable Private 4(PixelShaderFunction): 2 Function None 3 5: Label - 13(f1): 7(ptr) Variable Function - Store 13(f1) 14 + Store 14(f1) 15 FunctionEnd 11(ShaderFunction(vf1;f1;): 6(float) Function None 8 9(inFloat1): 7(ptr) FunctionParameter 10(inScalar): 7(ptr) FunctionParameter 12: Label - 19(fmat11): 18(ptr) Variable Function - 23(fmat41): 22(ptr) Variable Function - 26(fmat12): 25(ptr) Variable Function - 31(dmat23): 30(ptr) Variable Function - 36(int44): 35(ptr) Variable Function - 15: 6(float) Undef - ReturnValue 15 + 16: 6(float) Undef + ReturnValue 16 FunctionEnd diff --git a/Test/baseResults/hlsl.max.frag.out b/Test/baseResults/hlsl.max.frag.out index 02f82bfe..aad47997 100755 --- a/Test/baseResults/hlsl.max.frag.out +++ b/Test/baseResults/hlsl.max.frag.out @@ -2,7 +2,7 @@ hlsl.max.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(vf4;vf4; (temp 4-component vector of float) +0:5 Function Definition: PixelShaderFunction(vf4;vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input1' (in 4-component vector of float) 0:2 'input2' (in 4-component vector of float) @@ -20,7 +20,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(vf4;vf4; (temp 4-component vector of float) +0:5 Function Definition: PixelShaderFunction(vf4;vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input1' (in 4-component vector of float) 0:2 'input2' (in 4-component vector of float) diff --git a/Test/baseResults/hlsl.precedence.frag.out b/Test/baseResults/hlsl.precedence.frag.out index 40e17894..d3513538 100755 --- a/Test/baseResults/hlsl.precedence.frag.out +++ b/Test/baseResults/hlsl.precedence.frag.out @@ -2,7 +2,7 @@ hlsl.precedence.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:10 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4; (temp 4-component vector of float) +0:10 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4; (global 4-component vector of float) 0:7 Function Parameters: 0:7 'a1' (in 4-component vector of float) 0:7 'a2' (in 4-component vector of float) @@ -26,7 +26,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:10 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4; (temp 4-component vector of float) +0:10 Function Definition: PixelShaderFunction(vf4;vf4;vf4;vf4; (global 4-component vector of float) 0:7 Function Parameters: 0:7 'a1' (in 4-component vector of float) 0:7 'a2' (in 4-component vector of float) diff --git a/Test/baseResults/hlsl.precedence2.frag.out b/Test/baseResults/hlsl.precedence2.frag.out index 02b89951..bfe2643c 100755 --- a/Test/baseResults/hlsl.precedence2.frag.out +++ b/Test/baseResults/hlsl.precedence2.frag.out @@ -2,7 +2,7 @@ hlsl.precedence2.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:10 Function Definition: PixelShaderFunction(i1;i1;i1;i1; (temp int) +0:10 Function Definition: PixelShaderFunction(i1;i1;i1;i1; (global int) 0:7 Function Parameters: 0:7 'a1' (in int) 0:7 'a2' (in int) @@ -34,7 +34,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:10 Function Definition: PixelShaderFunction(i1;i1;i1;i1; (temp int) +0:10 Function Definition: PixelShaderFunction(i1;i1;i1;i1; (global int) 0:7 Function Parameters: 0:7 'a1' (in int) 0:7 'a2' (in int) diff --git a/Test/baseResults/hlsl.scope.frag.out b/Test/baseResults/hlsl.scope.frag.out index 97ac03e9..082e1427 100755 --- a/Test/baseResults/hlsl.scope.frag.out +++ b/Test/baseResults/hlsl.scope.frag.out @@ -2,7 +2,7 @@ hlsl.scope.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:31 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:31 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -46,7 +46,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:31 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:31 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.sin.frag.out b/Test/baseResults/hlsl.sin.frag.out index c4875d52..e145ab18 100755 --- a/Test/baseResults/hlsl.sin.frag.out +++ b/Test/baseResults/hlsl.sin.frag.out @@ -2,7 +2,7 @@ hlsl.sin.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:5 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -18,7 +18,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:5 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:5 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/Test/baseResults/hlsl.struct.frag.out b/Test/baseResults/hlsl.struct.frag.out index 43b1ecb3..a70bba60 100755 --- a/Test/baseResults/hlsl.struct.frag.out +++ b/Test/baseResults/hlsl.struct.frag.out @@ -2,7 +2,7 @@ hlsl.struct.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:40 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:40 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:31 Function Parameters: 0:31 'input' (in 4-component vector of float) 0:? Sequence @@ -11,19 +11,19 @@ gl_FragCoord origin is upper left 0:36 's3' (temp structure{temp 3-component vector of bool b3}) 0:37 move second child to first child (temp 4-component vector of float) 0:37 i: direct index for structure (temp 4-component vector of float) -0:37 's2' (temp structure{temp 4-component vector of float i}) +0:37 's2' (global structure{temp 4-component vector of float i}) 0:37 Constant: 0:37 0 (const int) 0:37 ff4: direct index for structure (temp 4-component vector of float FragCoord) -0:37 's4' (temp structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) +0:37 's4' (global structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) 0:37 Constant: 0:37 7 (const int) 0:39 Branch: Return with expression 0:39 'input' (in 4-component vector of float) 0:? Linker Objects -0:? 's1' (temp structure{temp bool b, temp bool c, temp 4-component vector of float a, temp 4-component vector of float d}) -0:? 's2' (temp structure{temp 4-component vector of float i}) -0:? 's4' (temp structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) +0:? 's1' (global structure{temp bool b, temp bool c, temp 4-component vector of float a, temp 4-component vector of float d}) +0:? 's2' (global structure{temp 4-component vector of float i}) +0:? 's4' (global structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) Linked fragment stage: @@ -32,7 +32,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:40 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:40 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:31 Function Parameters: 0:31 'input' (in 4-component vector of float) 0:? Sequence @@ -41,19 +41,19 @@ gl_FragCoord origin is upper left 0:36 's3' (temp structure{temp 3-component vector of bool b3}) 0:37 move second child to first child (temp 4-component vector of float) 0:37 i: direct index for structure (temp 4-component vector of float) -0:37 's2' (temp structure{temp 4-component vector of float i}) +0:37 's2' (global structure{temp 4-component vector of float i}) 0:37 Constant: 0:37 0 (const int) 0:37 ff4: direct index for structure (temp 4-component vector of float FragCoord) -0:37 's4' (temp structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) +0:37 's4' (global structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) 0:37 Constant: 0:37 7 (const int) 0:39 Branch: Return with expression 0:39 'input' (in 4-component vector of float) 0:? Linker Objects -0:? 's1' (temp structure{temp bool b, temp bool c, temp 4-component vector of float a, temp 4-component vector of float d}) -0:? 's2' (temp structure{temp 4-component vector of float i}) -0:? 's4' (temp structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) +0:? 's1' (global structure{temp bool b, temp bool c, temp 4-component vector of float a, temp 4-component vector of float d}) +0:? 's2' (global structure{temp 4-component vector of float i}) +0:? 's4' (global structure{smooth in 4-component vector of float a, flat temp bool b, centroid noperspective temp 1-component vector of float c, centroid sample temp 2-component vector of float d, temp bool Face ff1, temp bool ff2, temp bool ff3, temp 4-component vector of float FragCoord ff4}) // Module Version 10000 // Generated by (magic number): 80001 @@ -100,24 +100,24 @@ gl_FragCoord origin is upper left 17: TypeFloat 32 18: TypeVector 17(float) 4 19: TypeStruct 18(fvec4) - 20: TypePointer Function 19(struct) + 20: TypePointer Private 19(struct) + 21(s2): 20(ptr) Variable Private 22: TypeInt 32 1 23: 22(int) Constant 0 24: TypeVector 17(float) 2 25: TypeStruct 18(fvec4) 6(bool) 17(float) 24(fvec2) 6(bool) 6(bool) 6(bool) 18(fvec4) - 26: TypePointer Function 25(struct) + 26: TypePointer Private 25(struct) + 27(s4): 26(ptr) Variable Private 28: 22(int) Constant 7 - 29: TypePointer Function 18(fvec4) + 29: TypePointer Private 18(fvec4) 33: TypePointer Input 18(fvec4) 34(input): 33(ptr) Variable Input 37(myS): TypeStruct 6(bool) 6(bool) 18(fvec4) 18(fvec4) - 38: TypePointer Function 37(myS) + 38: TypePointer Private 37(myS) + 39(s1): 38(ptr) Variable Private 4(PixelShaderFunction): 2 Function None 3 5: Label 10(s3): 9(ptr) Variable Function - 21(s2): 20(ptr) Variable Function - 27(s4): 26(ptr) Variable Function - 39(s1): 38(ptr) Variable Function 11: 8(FS) Load 10(s3) 12: 8(FS) Load 10(s3) 13: 7(bvec3) CompositeExtract 11 0 diff --git a/Test/baseResults/hlsl.switch.frag.out b/Test/baseResults/hlsl.switch.frag.out index 7163bc05..c4af33f1 100755 --- a/Test/baseResults/hlsl.switch.frag.out +++ b/Test/baseResults/hlsl.switch.frag.out @@ -2,7 +2,7 @@ hlsl.switch.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:56 Function Definition: PixelShaderFunction(vf4;i1;i1; (temp 4-component vector of float) +0:56 Function Definition: PixelShaderFunction(vf4;i1;i1; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:2 'c' (in int) @@ -130,7 +130,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:56 Function Definition: PixelShaderFunction(vf4;i1;i1; (temp 4-component vector of float) +0:56 Function Definition: PixelShaderFunction(vf4;i1;i1; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:2 'c' (in int) diff --git a/Test/baseResults/hlsl.swizzle.frag.out b/Test/baseResults/hlsl.swizzle.frag.out index 36298e29..7bb28180 100755 --- a/Test/baseResults/hlsl.swizzle.frag.out +++ b/Test/baseResults/hlsl.swizzle.frag.out @@ -4,13 +4,13 @@ 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:7 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float) +0:7 Function Definition: ShaderFunction(vf4; (global 4-component vector of float) 0:4 Function Parameters: 0:4 'input' (in 4-component vector of float) 0:? Sequence @@ -29,11 +29,11 @@ gl_FragCoord origin is upper left 0:5 0 (const int) 0:5 Construct vec4 (temp 4-component vector of float) 0:5 direct index (temp float) -0:5 'AmbientColor' (temp 4-component vector of float) +0:5 'AmbientColor' (global 4-component vector of float) 0:5 Constant: 0:5 2 (const int) 0:? Linker Objects -0:? 'AmbientColor' (temp 4-component vector of float) +0:? 'AmbientColor' (global 4-component vector of float) Linked fragment stage: @@ -44,13 +44,13 @@ 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:7 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float) +0:7 Function Definition: ShaderFunction(vf4; (global 4-component vector of float) 0:4 Function Parameters: 0:4 'input' (in 4-component vector of float) 0:? Sequence @@ -69,15 +69,15 @@ gl_FragCoord origin is upper left 0:5 0 (const int) 0:5 Construct vec4 (temp 4-component vector of float) 0:5 direct index (temp float) -0:5 'AmbientColor' (temp 4-component vector of float) +0:5 'AmbientColor' (global 4-component vector of float) 0:5 Constant: 0:5 2 (const int) 0:? Linker Objects -0:? 'AmbientColor' (temp 4-component vector of float) +0:? 'AmbientColor' (global 4-component vector of float) // 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" @@ -88,33 +88,34 @@ gl_FragCoord origin is upper left Name 4 "PixelShaderFunction" Name 11 "ShaderFunction(vf4;" Name 10 "input" - Name 13 "AmbientColor" + Name 14 "AmbientColor" 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 - 20: TypeInt 32 0 - 21: 20(int) Constant 2 - 22: TypePointer Function 6(float) + 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 + 21: TypeInt 32 0 + 22: 21(int) Constant 2 + 23: TypePointer Private 6(float) 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 - 18: 7(fvec4) Load 10(input) - 19: 7(fvec4) VectorShuffle 18 18 3 3 1 0 - 23: 22(ptr) AccessChain 13(AmbientColor) 21 - 24: 6(float) Load 23 - 25: 7(fvec4) CompositeConstruct 24 24 24 24 - 26: 7(fvec4) FMul 19 25 - ReturnValue 26 + 19: 7(fvec4) Load 10(input) + 20: 7(fvec4) VectorShuffle 19 19 3 3 1 0 + 24: 23(ptr) AccessChain 14(AmbientColor) 22 + 25: 6(float) Load 24 + 26: 7(fvec4) CompositeConstruct 25 25 25 25 + 27: 7(fvec4) FMul 20 26 + ReturnValue 27 FunctionEnd diff --git a/Test/baseResults/hlsl.templatetypes.frag.out b/Test/baseResults/hlsl.templatetypes.frag.out index 048b12a6..5acb877a 100644 --- a/Test/baseResults/hlsl.templatetypes.frag.out +++ b/Test/baseResults/hlsl.templatetypes.frag.out @@ -2,7 +2,7 @@ hlsl.templatetypes.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:48 Function Definition: PixelShaderFunction( (temp float) +0:48 Function Definition: PixelShaderFunction( (global float) 0:3 Function Parameters: 0:? Sequence 0:4 Sequence @@ -251,7 +251,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:48 Function Definition: PixelShaderFunction( (temp float) +0:48 Function Definition: PixelShaderFunction( (global float) 0:3 Function Parameters: 0:? Sequence 0:4 Sequence diff --git a/Test/baseResults/hlsl.void.frag.out b/Test/baseResults/hlsl.void.frag.out index 0ddc3310..c3fc10c6 100755 --- a/Test/baseResults/hlsl.void.frag.out +++ b/Test/baseResults/hlsl.void.frag.out @@ -2,16 +2,16 @@ hlsl.void.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:2 Function Definition: foo1( (temp void) +0:2 Function Definition: foo1( (global void) 0:1 Function Parameters: -0:4 Function Definition: foo2( (temp void) +0:4 Function Definition: foo2( (global void) 0:2 Function Parameters: -0:8 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:8 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:5 Function Parameters: 0:5 'input' (in 4-component vector of float) 0:? Sequence -0:6 Function Call: foo1( (temp void) -0:7 Function Call: foo2( (temp void) +0:6 Function Call: foo1( (global void) +0:7 Function Call: foo2( (global void) 0:? Linker Objects @@ -21,16 +21,16 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:2 Function Definition: foo1( (temp void) +0:2 Function Definition: foo1( (global void) 0:1 Function Parameters: -0:4 Function Definition: foo2( (temp void) +0:4 Function Definition: foo2( (global void) 0:2 Function Parameters: -0:8 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:8 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:5 Function Parameters: 0:5 'input' (in 4-component vector of float) 0:? Sequence -0:6 Function Call: foo1( (temp void) -0:7 Function Call: foo2( (temp void) +0:6 Function Call: foo1( (global void) +0:7 Function Call: foo2( (global void) 0:? Linker Objects // Module Version 10000 diff --git a/Test/baseResults/hlsl.whileLoop.frag.out b/Test/baseResults/hlsl.whileLoop.frag.out index f4be34af..aece52a4 100755 --- a/Test/baseResults/hlsl.whileLoop.frag.out +++ b/Test/baseResults/hlsl.whileLoop.frag.out @@ -2,7 +2,7 @@ hlsl.whileLoop.frag Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:8 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:8 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence @@ -39,7 +39,7 @@ Linked fragment stage: Shader version: 450 gl_FragCoord origin is upper left 0:? Sequence -0:8 Function Definition: PixelShaderFunction(vf4; (temp 4-component vector of float) +0:8 Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float) 0:2 Function Parameters: 0:2 'input' (in 4-component vector of float) 0:? Sequence diff --git a/hlsl/hlslGrammar.cpp b/hlsl/hlslGrammar.cpp index ee65d170..6a74891b 100755 --- a/hlsl/hlslGrammar.cpp +++ b/hlsl/hlslGrammar.cpp @@ -134,6 +134,8 @@ bool HlslGrammar::acceptDeclaration(TIntermNode*& node) TType type; if (! acceptFullySpecifiedType(type)) return false; + if (type.getQualifier().storage == EvqTemporary && parseContext.symbolTable.atGlobalLevel()) + type.getQualifier().storage = EvqGlobal; // identifier HlslToken idToken;