glslang/Test/baseResults/hlsl.conditional.frag.out
John Kessenich 02467d8d94 HLSL: Wrap the entry-point; need to write 'in' args, and support 'inout' args.
This needs some render testing, but is destined to be part of master.

This also leads to a variety of other simplifications.
 - IO are global symbols, so only need one list of linkage nodes (deferred)
 - no longer need parse-context-wide 'inEntryPoint' state, entry-point is localized
 - several parts of splitting/flattening are now localized
2017-02-06 22:58:32 -07:00

403 lines
17 KiB
Plaintext
Executable File

hlsl.conditional.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:2 Function Definition: @PixelShaderFunction(vf4; (temp 4-component vector of float)
0:2 Function Parameters:
0:2 'input' (in 4-component vector of float)
0:? Sequence
0:3 Sequence
0:3 move second child to first child (temp int)
0:3 'a' (temp int)
0:3 Constant:
0:3 5 (const int)
0:4 Sequence
0:4 move second child to first child (temp int)
0:4 'b' (temp int)
0:4 Constant:
0:4 6 (const int)
0:5 Sequence
0:5 move second child to first child (temp int)
0:5 'c' (temp int)
0:5 Constant:
0:5 7 (const int)
0:6 Sequence
0:6 move second child to first child (temp int)
0:6 'd' (temp int)
0:6 Constant:
0:6 7 (const int)
0:7 Sequence
0:7 move second child to first child (temp 4-component vector of float)
0:7 'ret' (temp 4-component vector of float)
0:9 add (temp 4-component vector of float)
0:8 add (temp 4-component vector of float)
0:7 add (temp 4-component vector of float)
0:7 vector-scale (temp 4-component vector of float)
0:7 Convert int to float (temp float)
0:7 'a' (temp int)
0:7 'input' (in 4-component vector of float)
0:8 vector-scale (temp 4-component vector of float)
0:8 Convert int to float (temp float)
0:8 'b' (temp int)
0:8 'input' (in 4-component vector of float)
0:9 vector-scale (temp 4-component vector of float)
0:9 Convert int to float (temp float)
0:9 'c' (temp int)
0:9 'input' (in 4-component vector of float)
0:10 vector-scale (temp 4-component vector of float)
0:10 Convert int to float (temp float)
0:10 'd' (temp int)
0:10 'input' (in 4-component vector of float)
0:12 Comma (temp int)
0:12 move second child to first child (temp int)
0:12 'e' (temp int)
0:12 move second child to first child (temp int)
0:12 'a' (temp int)
0:12 Test condition and select (temp int)
0:12 Condition
0:12 'b' (temp int)
0:12 true case
0:12 move second child to first child (temp int)
0:12 'c' (temp int)
0:12 'd' (temp int)
0:12 false case
0:12 Constant:
0:12 10 (const int)
0:12 move second child to first child (temp int)
0:12 'b' (temp int)
0:12 Test condition and select (temp int)
0:12 Condition
0:12 'a' (temp int)
0:12 true case
0:12 move second child to first child (temp int)
0:12 'd' (temp int)
0:12 'c' (temp int)
0:12 false case
0:12 Constant:
0:12 11 (const int)
0:14 move second child to first child (temp 4-component vector of float)
0:14 'f' (temp 4-component vector of float)
0:14 Test condition and select (temp 4-component vector of float)
0:14 Condition
0:14 Compare Less Than (temp bool)
0:14 direct index (temp float)
0:14 'ret' (temp 4-component vector of float)
0:14 Constant:
0:14 0 (const int)
0:14 direct index (temp float)
0:14 'input' (in 4-component vector of float)
0:14 Constant:
0:14 1 (const int)
0:14 true case
0:14 vector-scale (temp 4-component vector of float)
0:14 Convert int to float (temp float)
0:14 'c' (temp int)
0:14 'input' (in 4-component vector of float)
0:14 false case
0:14 vector-scale (temp 4-component vector of float)
0:14 Convert int to float (temp float)
0:14 'd' (temp int)
0:14 'input' (in 4-component vector of float)
0:15 Branch: Return with expression
0:15 add (temp 4-component vector of float)
0:15 vector-scale (temp 4-component vector of float)
0:15 Convert int to float (temp float)
0:15 'e' (temp int)
0:15 'ret' (temp 4-component vector of float)
0:15 'f' (temp 4-component vector of float)
0:2 Function Definition: PixelShaderFunction( (temp void)
0:2 Function Parameters:
0:? Sequence
0:2 move second child to first child (temp 4-component vector of float)
0:? 'input' (temp 4-component vector of float)
0:? 'input' (layout(location=0 ) in 4-component vector of float)
0:2 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:2 Function Call: @PixelShaderFunction(vf4; (temp 4-component vector of float)
0:? 'input' (temp 4-component vector of float)
0:? Linker Objects
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:? 'input' (layout(location=0 ) in 4-component vector of float)
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:2 Function Definition: @PixelShaderFunction(vf4; (temp 4-component vector of float)
0:2 Function Parameters:
0:2 'input' (in 4-component vector of float)
0:? Sequence
0:3 Sequence
0:3 move second child to first child (temp int)
0:3 'a' (temp int)
0:3 Constant:
0:3 5 (const int)
0:4 Sequence
0:4 move second child to first child (temp int)
0:4 'b' (temp int)
0:4 Constant:
0:4 6 (const int)
0:5 Sequence
0:5 move second child to first child (temp int)
0:5 'c' (temp int)
0:5 Constant:
0:5 7 (const int)
0:6 Sequence
0:6 move second child to first child (temp int)
0:6 'd' (temp int)
0:6 Constant:
0:6 7 (const int)
0:7 Sequence
0:7 move second child to first child (temp 4-component vector of float)
0:7 'ret' (temp 4-component vector of float)
0:9 add (temp 4-component vector of float)
0:8 add (temp 4-component vector of float)
0:7 add (temp 4-component vector of float)
0:7 vector-scale (temp 4-component vector of float)
0:7 Convert int to float (temp float)
0:7 'a' (temp int)
0:7 'input' (in 4-component vector of float)
0:8 vector-scale (temp 4-component vector of float)
0:8 Convert int to float (temp float)
0:8 'b' (temp int)
0:8 'input' (in 4-component vector of float)
0:9 vector-scale (temp 4-component vector of float)
0:9 Convert int to float (temp float)
0:9 'c' (temp int)
0:9 'input' (in 4-component vector of float)
0:10 vector-scale (temp 4-component vector of float)
0:10 Convert int to float (temp float)
0:10 'd' (temp int)
0:10 'input' (in 4-component vector of float)
0:12 Comma (temp int)
0:12 move second child to first child (temp int)
0:12 'e' (temp int)
0:12 move second child to first child (temp int)
0:12 'a' (temp int)
0:12 Test condition and select (temp int)
0:12 Condition
0:12 'b' (temp int)
0:12 true case
0:12 move second child to first child (temp int)
0:12 'c' (temp int)
0:12 'd' (temp int)
0:12 false case
0:12 Constant:
0:12 10 (const int)
0:12 move second child to first child (temp int)
0:12 'b' (temp int)
0:12 Test condition and select (temp int)
0:12 Condition
0:12 'a' (temp int)
0:12 true case
0:12 move second child to first child (temp int)
0:12 'd' (temp int)
0:12 'c' (temp int)
0:12 false case
0:12 Constant:
0:12 11 (const int)
0:14 move second child to first child (temp 4-component vector of float)
0:14 'f' (temp 4-component vector of float)
0:14 Test condition and select (temp 4-component vector of float)
0:14 Condition
0:14 Compare Less Than (temp bool)
0:14 direct index (temp float)
0:14 'ret' (temp 4-component vector of float)
0:14 Constant:
0:14 0 (const int)
0:14 direct index (temp float)
0:14 'input' (in 4-component vector of float)
0:14 Constant:
0:14 1 (const int)
0:14 true case
0:14 vector-scale (temp 4-component vector of float)
0:14 Convert int to float (temp float)
0:14 'c' (temp int)
0:14 'input' (in 4-component vector of float)
0:14 false case
0:14 vector-scale (temp 4-component vector of float)
0:14 Convert int to float (temp float)
0:14 'd' (temp int)
0:14 'input' (in 4-component vector of float)
0:15 Branch: Return with expression
0:15 add (temp 4-component vector of float)
0:15 vector-scale (temp 4-component vector of float)
0:15 Convert int to float (temp float)
0:15 'e' (temp int)
0:15 'ret' (temp 4-component vector of float)
0:15 'f' (temp 4-component vector of float)
0:2 Function Definition: PixelShaderFunction( (temp void)
0:2 Function Parameters:
0:? Sequence
0:2 move second child to first child (temp 4-component vector of float)
0:? 'input' (temp 4-component vector of float)
0:? 'input' (layout(location=0 ) in 4-component vector of float)
0:2 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:2 Function Call: @PixelShaderFunction(vf4; (temp 4-component vector of float)
0:? 'input' (temp 4-component vector of float)
0:? Linker Objects
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:? 'input' (layout(location=0 ) in 4-component vector of float)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 100
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "PixelShaderFunction" 93 96
ExecutionMode 4 OriginUpperLeft
Name 4 "PixelShaderFunction"
Name 11 "@PixelShaderFunction(vf4;"
Name 10 "input"
Name 15 "a"
Name 17 "b"
Name 19 "c"
Name 21 "d"
Name 22 "ret"
Name 42 "e"
Name 59 "f"
Name 91 "input"
Name 93 "input"
Name 96 "@entryPointOutput"
Name 97 "param"
Decorate 93(input) Location 0
Decorate 96(@entryPointOutput) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
9: TypeFunction 7(fvec4) 8(ptr)
13: TypeInt 32 1
14: TypePointer Function 13(int)
16: 13(int) Constant 5
18: 13(int) Constant 6
20: 13(int) Constant 7
49: 13(int) Constant 10
57: 13(int) Constant 11
61: TypeInt 32 0
62: 61(int) Constant 0
63: TypePointer Function 6(float)
66: 61(int) Constant 1
69: TypeBool
92: TypePointer Input 7(fvec4)
93(input): 92(ptr) Variable Input
95: TypePointer Output 7(fvec4)
96(@entryPointOutput): 95(ptr) Variable Output
4(PixelShaderFunction): 2 Function None 3
5: Label
91(input): 8(ptr) Variable Function
97(param): 8(ptr) Variable Function
94: 7(fvec4) Load 93(input)
Store 91(input) 94
98: 7(fvec4) Load 91(input)
Store 97(param) 98
99: 7(fvec4) FunctionCall 11(@PixelShaderFunction(vf4;) 97(param)
Store 96(@entryPointOutput) 99
Return
FunctionEnd
11(@PixelShaderFunction(vf4;): 7(fvec4) Function None 9
10(input): 8(ptr) FunctionParameter
12: Label
15(a): 14(ptr) Variable Function
17(b): 14(ptr) Variable Function
19(c): 14(ptr) Variable Function
21(d): 14(ptr) Variable Function
22(ret): 8(ptr) Variable Function
42(e): 14(ptr) Variable Function
43: 14(ptr) Variable Function
51: 14(ptr) Variable Function
59(f): 8(ptr) Variable Function
60: 8(ptr) Variable Function
Store 15(a) 16
Store 17(b) 18
Store 19(c) 20
Store 21(d) 20
23: 13(int) Load 15(a)
24: 6(float) ConvertSToF 23
25: 7(fvec4) Load 10(input)
26: 7(fvec4) VectorTimesScalar 25 24
27: 13(int) Load 17(b)
28: 6(float) ConvertSToF 27
29: 7(fvec4) Load 10(input)
30: 7(fvec4) VectorTimesScalar 29 28
31: 7(fvec4) FAdd 26 30
32: 13(int) Load 19(c)
33: 6(float) ConvertSToF 32
34: 7(fvec4) Load 10(input)
35: 7(fvec4) VectorTimesScalar 34 33
36: 7(fvec4) FAdd 31 35
37: 13(int) Load 21(d)
38: 6(float) ConvertSToF 37
39: 7(fvec4) Load 10(input)
40: 7(fvec4) VectorTimesScalar 39 38
41: 7(fvec4) FAdd 36 40
Store 22(ret) 41
44: 13(int) Load 17(b)
SelectionMerge 46 None
BranchConditional 44 45 48
45: Label
47: 13(int) Load 21(d)
Store 19(c) 47
Store 43 47
Branch 46
48: Label
Store 43 49
Branch 46
46: Label
50: 13(int) Load 43
Store 15(a) 50
Store 42(e) 50
52: 13(int) Load 15(a)
SelectionMerge 54 None
BranchConditional 52 53 56
53: Label
55: 13(int) Load 19(c)
Store 21(d) 55
Store 51 55
Branch 54
56: Label
Store 51 57
Branch 54
54: Label
58: 13(int) Load 51
Store 17(b) 58
64: 63(ptr) AccessChain 22(ret) 62
65: 6(float) Load 64
67: 63(ptr) AccessChain 10(input) 66
68: 6(float) Load 67
70: 69(bool) FOrdLessThan 65 68
SelectionMerge 72 None
BranchConditional 70 71 77
71: Label
73: 13(int) Load 19(c)
74: 6(float) ConvertSToF 73
75: 7(fvec4) Load 10(input)
76: 7(fvec4) VectorTimesScalar 75 74
Store 60 76
Branch 72
77: Label
78: 13(int) Load 21(d)
79: 6(float) ConvertSToF 78
80: 7(fvec4) Load 10(input)
81: 7(fvec4) VectorTimesScalar 80 79
Store 60 81
Branch 72
72: Label
82: 7(fvec4) Load 60
Store 59(f) 82
83: 13(int) Load 42(e)
84: 6(float) ConvertSToF 83
85: 7(fvec4) Load 22(ret)
86: 7(fvec4) VectorTimesScalar 85 84
87: 7(fvec4) Load 59(f)
88: 7(fvec4) FAdd 86 87
ReturnValue 88
FunctionEnd