glslang/Test/baseResults/hlsl.switch.frag.out
John Kessenich ac3707921e Revert the commits that change OpArrayLength type and bumped the version number.
Now, version 5.* is all connected to making the uint type, which doesn't quite work.
Generator versions 4 and 6 do not do this.
2018-03-07 11:48:25 -07:00

470 lines
18 KiB
Plaintext
Executable File

hlsl.switch.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:2 Function Definition: @PixelShaderFunction(vf4;i1;i1; ( temp 4-component vector of float)
0:2 Function Parameters:
0:2 'input' ( in 4-component vector of float)
0:2 'c' ( in int)
0:2 'd' ( in int)
0:? Sequence
0:3 'c' ( in int)
0:7 switch
0:7 condition
0:7 'c' ( in int)
0:7 body
0:7 Sequence
0:9 default:
0:7 Sequence
0:7 Branch: Break
0:12 switch
0:12 condition
0:12 'c' ( in int)
0:12 body
0:12 Sequence
0:13 case: with expression
0:13 Constant:
0:13 1 (const int)
0:? Sequence
0:14 Pre-Increment ( temp 4-component vector of float)
0:14 'input' ( in 4-component vector of float)
0:15 Branch: Break
0:16 case: with expression
0:16 Constant:
0:16 2 (const int)
0:? Sequence
0:17 Pre-Decrement ( temp 4-component vector of float)
0:17 'input' ( in 4-component vector of float)
0:18 Branch: Break
0:21 switch: DontFlatten
0:21 condition
0:21 'c' ( in int)
0:21 body
0:21 Sequence
0:22 case: with expression
0:22 Constant:
0:22 1 (const int)
0:? Sequence
0:23 Pre-Increment ( temp 4-component vector of float)
0:23 'input' ( in 4-component vector of float)
0:24 Branch: Break
0:25 case: with expression
0:25 Constant:
0:25 2 (const int)
0:? Sequence
0:26 switch
0:26 condition
0:26 'd' ( in int)
0:26 body
0:26 Sequence
0:27 case: with expression
0:27 Constant:
0:27 2 (const int)
0:? Sequence
0:28 add second child into first child ( temp 4-component vector of float)
0:28 'input' ( in 4-component vector of float)
0:28 Constant:
0:28 2.000000
0:29 Branch: Break
0:30 case: with expression
0:30 Constant:
0:30 3 (const int)
0:? Sequence
0:31 add second child into first child ( temp 4-component vector of float)
0:31 'input' ( in 4-component vector of float)
0:31 Constant:
0:31 3.000000
0:32 Branch: Break
0:34 Branch: Break
0:35 default:
0:? Sequence
0:36 add second child into first child ( temp 4-component vector of float)
0:36 'input' ( in 4-component vector of float)
0:36 Constant:
0:36 4.000000
0:39 switch
0:39 condition
0:39 'c' ( in int)
0:39 body
0:39 Sequence
0:40 case: with expression
0:40 Constant:
0:40 1 (const int)
0:39 Sequence
0:39 Branch: Break
0:43 switch
0:43 condition
0:43 'c' ( in int)
0:43 body
0:43 Sequence
0:44 case: with expression
0:44 Constant:
0:44 1 (const int)
0:45 case: with expression
0:45 Constant:
0:45 2 (const int)
0:46 case: with expression
0:46 Constant:
0:46 3 (const int)
0:? Sequence
0:47 Pre-Increment ( temp 4-component vector of float)
0:47 'input' ( in 4-component vector of float)
0:48 Branch: Break
0:49 case: with expression
0:49 Constant:
0:49 4 (const int)
0:50 case: with expression
0:50 Constant:
0:50 5 (const int)
0:? Sequence
0:51 Pre-Decrement ( temp 4-component vector of float)
0:51 'input' ( in 4-component vector of float)
0:54 Branch: Return with expression
0:54 'input' ( in 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 int)
0:? 'c' ( temp int)
0:? 'c' (layout( location=1) flat in int)
0:2 move second child to first child ( temp int)
0:? 'd' ( temp int)
0:? 'd' (layout( location=2) flat in int)
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;i1;i1; ( temp 4-component vector of float)
0:? 'input' ( temp 4-component vector of float)
0:? 'c' ( temp int)
0:? 'd' ( temp int)
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)
0:? 'c' (layout( location=1) flat in int)
0:? 'd' (layout( location=2) flat in int)
Linked fragment stage:
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:2 Function Definition: @PixelShaderFunction(vf4;i1;i1; ( temp 4-component vector of float)
0:2 Function Parameters:
0:2 'input' ( in 4-component vector of float)
0:2 'c' ( in int)
0:2 'd' ( in int)
0:? Sequence
0:3 'c' ( in int)
0:7 switch
0:7 condition
0:7 'c' ( in int)
0:7 body
0:7 Sequence
0:9 default:
0:7 Sequence
0:7 Branch: Break
0:12 switch
0:12 condition
0:12 'c' ( in int)
0:12 body
0:12 Sequence
0:13 case: with expression
0:13 Constant:
0:13 1 (const int)
0:? Sequence
0:14 Pre-Increment ( temp 4-component vector of float)
0:14 'input' ( in 4-component vector of float)
0:15 Branch: Break
0:16 case: with expression
0:16 Constant:
0:16 2 (const int)
0:? Sequence
0:17 Pre-Decrement ( temp 4-component vector of float)
0:17 'input' ( in 4-component vector of float)
0:18 Branch: Break
0:21 switch: DontFlatten
0:21 condition
0:21 'c' ( in int)
0:21 body
0:21 Sequence
0:22 case: with expression
0:22 Constant:
0:22 1 (const int)
0:? Sequence
0:23 Pre-Increment ( temp 4-component vector of float)
0:23 'input' ( in 4-component vector of float)
0:24 Branch: Break
0:25 case: with expression
0:25 Constant:
0:25 2 (const int)
0:? Sequence
0:26 switch
0:26 condition
0:26 'd' ( in int)
0:26 body
0:26 Sequence
0:27 case: with expression
0:27 Constant:
0:27 2 (const int)
0:? Sequence
0:28 add second child into first child ( temp 4-component vector of float)
0:28 'input' ( in 4-component vector of float)
0:28 Constant:
0:28 2.000000
0:29 Branch: Break
0:30 case: with expression
0:30 Constant:
0:30 3 (const int)
0:? Sequence
0:31 add second child into first child ( temp 4-component vector of float)
0:31 'input' ( in 4-component vector of float)
0:31 Constant:
0:31 3.000000
0:32 Branch: Break
0:34 Branch: Break
0:35 default:
0:? Sequence
0:36 add second child into first child ( temp 4-component vector of float)
0:36 'input' ( in 4-component vector of float)
0:36 Constant:
0:36 4.000000
0:39 switch
0:39 condition
0:39 'c' ( in int)
0:39 body
0:39 Sequence
0:40 case: with expression
0:40 Constant:
0:40 1 (const int)
0:39 Sequence
0:39 Branch: Break
0:43 switch
0:43 condition
0:43 'c' ( in int)
0:43 body
0:43 Sequence
0:44 case: with expression
0:44 Constant:
0:44 1 (const int)
0:45 case: with expression
0:45 Constant:
0:45 2 (const int)
0:46 case: with expression
0:46 Constant:
0:46 3 (const int)
0:? Sequence
0:47 Pre-Increment ( temp 4-component vector of float)
0:47 'input' ( in 4-component vector of float)
0:48 Branch: Break
0:49 case: with expression
0:49 Constant:
0:49 4 (const int)
0:50 case: with expression
0:50 Constant:
0:50 5 (const int)
0:? Sequence
0:51 Pre-Decrement ( temp 4-component vector of float)
0:51 'input' ( in 4-component vector of float)
0:54 Branch: Return with expression
0:54 'input' ( in 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 int)
0:? 'c' ( temp int)
0:? 'c' (layout( location=1) flat in int)
0:2 move second child to first child ( temp int)
0:? 'd' ( temp int)
0:? 'd' (layout( location=2) flat in int)
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;i1;i1; ( temp 4-component vector of float)
0:? 'input' ( temp 4-component vector of float)
0:? 'c' ( temp int)
0:? 'd' ( temp int)
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)
0:? 'c' (layout( location=1) flat in int)
0:? 'd' (layout( location=2) flat in int)
// Module Version 10000
// Generated by (magic number): 80006
// Id's are bound by 106
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "PixelShaderFunction" 88 92 95 98
ExecutionMode 4 OriginUpperLeft
Source HLSL 500
Name 4 "PixelShaderFunction"
Name 15 "@PixelShaderFunction(vf4;i1;i1;"
Name 12 "input"
Name 13 "c"
Name 14 "d"
Name 86 "input"
Name 88 "input"
Name 90 "c"
Name 92 "c"
Name 94 "d"
Name 95 "d"
Name 98 "@entryPointOutput"
Name 99 "param"
Name 101 "param"
Name 103 "param"
Decorate 88(input) Location 0
Decorate 92(c) Flat
Decorate 92(c) Location 1
Decorate 95(d) Flat
Decorate 95(d) Location 2
Decorate 98(@entryPointOutput) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
9: TypeInt 32 1
10: TypePointer Function 9(int)
11: TypeFunction 7(fvec4) 8(ptr) 10(ptr) 10(ptr)
27: 6(float) Constant 1065353216
49: 6(float) Constant 1073741824
54: 6(float) Constant 1077936128
61: 6(float) Constant 1082130432
87: TypePointer Input 7(fvec4)
88(input): 87(ptr) Variable Input
91: TypePointer Input 9(int)
92(c): 91(ptr) Variable Input
95(d): 91(ptr) Variable Input
97: TypePointer Output 7(fvec4)
98(@entryPointOutput): 97(ptr) Variable Output
4(PixelShaderFunction): 2 Function None 3
5: Label
86(input): 8(ptr) Variable Function
90(c): 10(ptr) Variable Function
94(d): 10(ptr) Variable Function
99(param): 8(ptr) Variable Function
101(param): 10(ptr) Variable Function
103(param): 10(ptr) Variable Function
89: 7(fvec4) Load 88(input)
Store 86(input) 89
93: 9(int) Load 92(c)
Store 90(c) 93
96: 9(int) Load 95(d)
Store 94(d) 96
100: 7(fvec4) Load 86(input)
Store 99(param) 100
102: 9(int) Load 90(c)
Store 101(param) 102
104: 9(int) Load 94(d)
Store 103(param) 104
105: 7(fvec4) FunctionCall 15(@PixelShaderFunction(vf4;i1;i1;) 99(param) 101(param) 103(param)
Store 98(@entryPointOutput) 105
Return
FunctionEnd
15(@PixelShaderFunction(vf4;i1;i1;): 7(fvec4) Function None 11
12(input): 8(ptr) FunctionParameter
13(c): 10(ptr) FunctionParameter
14(d): 10(ptr) FunctionParameter
16: Label
17: 9(int) Load 13(c)
SelectionMerge 19 None
Switch 17 18
18: Label
Branch 19
19: Label
22: 9(int) Load 13(c)
SelectionMerge 25 None
Switch 22 25
case 1: 23
case 2: 24
23: Label
26: 7(fvec4) Load 12(input)
28: 7(fvec4) CompositeConstruct 27 27 27 27
29: 7(fvec4) FAdd 26 28
Store 12(input) 29
Branch 25
24: Label
31: 7(fvec4) Load 12(input)
32: 7(fvec4) CompositeConstruct 27 27 27 27
33: 7(fvec4) FSub 31 32
Store 12(input) 33
Branch 25
25: Label
36: 9(int) Load 13(c)
SelectionMerge 40 DontFlatten
Switch 36 39
case 1: 37
case 2: 38
39: Label
62: 7(fvec4) Load 12(input)
63: 7(fvec4) CompositeConstruct 61 61 61 61
64: 7(fvec4) FAdd 62 63
Store 12(input) 64
Branch 40
37: Label
41: 7(fvec4) Load 12(input)
42: 7(fvec4) CompositeConstruct 27 27 27 27
43: 7(fvec4) FAdd 41 42
Store 12(input) 43
Branch 40
38: Label
45: 9(int) Load 14(d)
SelectionMerge 48 None
Switch 45 48
case 2: 46
case 3: 47
46: Label
50: 7(fvec4) Load 12(input)
51: 7(fvec4) CompositeConstruct 49 49 49 49
52: 7(fvec4) FAdd 50 51
Store 12(input) 52
Branch 48
47: Label
55: 7(fvec4) Load 12(input)
56: 7(fvec4) CompositeConstruct 54 54 54 54
57: 7(fvec4) FAdd 55 56
Store 12(input) 57
Branch 48
48: Label
Branch 40
40: Label
66: 9(int) Load 13(c)
SelectionMerge 68 None
Switch 66 68
case 1: 67
67: Label
Branch 68
68: Label
71: 9(int) Load 13(c)
SelectionMerge 74 None
Switch 71 74
case 1: 72
case 2: 72
case 3: 72
case 4: 73
case 5: 73
72: Label
75: 7(fvec4) Load 12(input)
76: 7(fvec4) CompositeConstruct 27 27 27 27
77: 7(fvec4) FAdd 75 76
Store 12(input) 77
Branch 74
73: Label
79: 7(fvec4) Load 12(input)
80: 7(fvec4) CompositeConstruct 27 27 27 27
81: 7(fvec4) FSub 79 80
Store 12(input) 81
Branch 74
74: Label
83: 7(fvec4) Load 12(input)
ReturnValue 83
FunctionEnd