AST: dump attributes along with control flow.
[platform/upstream/glslang.git] / Test / baseResults / hlsl.doLoop.frag.out
1 hlsl.doLoop.frag
2 Shader version: 500
3 gl_FragCoord origin is upper left
4 0:? Sequence
5 0:2  Function Definition: @PixelShaderFunction(f1; ( temp 4-component vector of float)
6 0:2    Function Parameters: 
7 0:2      'input' ( in float)
8 0:?     Sequence
9 0:3      Loop with condition not tested first: Unroll
10 0:3        Loop Condition
11 0:3        Constant:
12 0:3          false (const bool)
13 0:3        No loop body
14 0:4      Loop with condition not tested first: Unroll
15 0:4        Loop Condition
16 0:4        Constant:
17 0:4          false (const bool)
18 0:4        No loop body
19 0:5      Loop with condition not tested first
20 0:5        Loop Condition
21 0:5        Compare Greater Than ( temp bool)
22 0:5          'input' ( in float)
23 0:5          Constant:
24 0:5            2.000000
25 0:5        Loop Body
26 0:?         Sequence
27 0:5          Branch: Return with expression
28 0:5            Construct vec4 ( temp 4-component vector of float)
29 0:5              'input' ( in float)
30 0:6      Loop with condition not tested first
31 0:6        Loop Condition
32 0:6        Compare Less Than ( temp bool)
33 0:6          'input' ( in float)
34 0:6          Constant:
35 0:6            10.000000
36 0:6        Loop Body
37 0:6        Pre-Increment ( temp float)
38 0:6          'input' ( in float)
39 0:7      Loop with condition not tested first
40 0:7        Loop Condition
41 0:7        Compare Less Than ( temp bool)
42 0:7          Pre-Increment ( temp float)
43 0:7            'input' ( in float)
44 0:7          Constant:
45 0:7            10.000000
46 0:7        Loop Body
47 0:7        Loop with condition tested first
48 0:7          Loop Condition
49 0:7          Compare Less Than ( temp bool)
50 0:7            Pre-Increment ( temp float)
51 0:7              'input' ( in float)
52 0:7            Constant:
53 0:7              10.000000
54 0:7          No loop body
55 0:8      Branch: Return with expression
56 0:8        Construct vec4 ( temp 4-component vector of float)
57 0:8          'input' ( in float)
58 0:2  Function Definition: PixelShaderFunction( ( temp void)
59 0:2    Function Parameters: 
60 0:?     Sequence
61 0:2      move second child to first child ( temp float)
62 0:?         'input' ( temp float)
63 0:?         'input' (layout( location=0) in float)
64 0:2      move second child to first child ( temp 4-component vector of float)
65 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
66 0:2        Function Call: @PixelShaderFunction(f1; ( temp 4-component vector of float)
67 0:?           'input' ( temp float)
68 0:?   Linker Objects
69 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
70 0:?     'input' (layout( location=0) in float)
71
72
73 Linked fragment stage:
74
75
76 Shader version: 500
77 gl_FragCoord origin is upper left
78 0:? Sequence
79 0:2  Function Definition: @PixelShaderFunction(f1; ( temp 4-component vector of float)
80 0:2    Function Parameters: 
81 0:2      'input' ( in float)
82 0:?     Sequence
83 0:3      Loop with condition not tested first: Unroll
84 0:3        Loop Condition
85 0:3        Constant:
86 0:3          false (const bool)
87 0:3        No loop body
88 0:4      Loop with condition not tested first: Unroll
89 0:4        Loop Condition
90 0:4        Constant:
91 0:4          false (const bool)
92 0:4        No loop body
93 0:5      Loop with condition not tested first
94 0:5        Loop Condition
95 0:5        Compare Greater Than ( temp bool)
96 0:5          'input' ( in float)
97 0:5          Constant:
98 0:5            2.000000
99 0:5        Loop Body
100 0:?         Sequence
101 0:5          Branch: Return with expression
102 0:5            Construct vec4 ( temp 4-component vector of float)
103 0:5              'input' ( in float)
104 0:6      Loop with condition not tested first
105 0:6        Loop Condition
106 0:6        Compare Less Than ( temp bool)
107 0:6          'input' ( in float)
108 0:6          Constant:
109 0:6            10.000000
110 0:6        Loop Body
111 0:6        Pre-Increment ( temp float)
112 0:6          'input' ( in float)
113 0:7      Loop with condition not tested first
114 0:7        Loop Condition
115 0:7        Compare Less Than ( temp bool)
116 0:7          Pre-Increment ( temp float)
117 0:7            'input' ( in float)
118 0:7          Constant:
119 0:7            10.000000
120 0:7        Loop Body
121 0:7        Loop with condition tested first
122 0:7          Loop Condition
123 0:7          Compare Less Than ( temp bool)
124 0:7            Pre-Increment ( temp float)
125 0:7              'input' ( in float)
126 0:7            Constant:
127 0:7              10.000000
128 0:7          No loop body
129 0:8      Branch: Return with expression
130 0:8        Construct vec4 ( temp 4-component vector of float)
131 0:8          'input' ( in float)
132 0:2  Function Definition: PixelShaderFunction( ( temp void)
133 0:2    Function Parameters: 
134 0:?     Sequence
135 0:2      move second child to first child ( temp float)
136 0:?         'input' ( temp float)
137 0:?         'input' (layout( location=0) in float)
138 0:2      move second child to first child ( temp 4-component vector of float)
139 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
140 0:2        Function Call: @PixelShaderFunction(f1; ( temp 4-component vector of float)
141 0:?           'input' ( temp float)
142 0:?   Linker Objects
143 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
144 0:?     'input' (layout( location=0) in float)
145
146 // Module Version 10000
147 // Generated by (magic number): 80003
148 // Id's are bound by 71
149
150                               Capability Shader
151                1:             ExtInstImport  "GLSL.std.450"
152                               MemoryModel Logical GLSL450
153                               EntryPoint Fragment 4  "PixelShaderFunction" 64 67
154                               ExecutionMode 4 OriginUpperLeft
155                               Source HLSL 500
156                               Name 4  "PixelShaderFunction"
157                               Name 11  "@PixelShaderFunction(f1;"
158                               Name 10  "input"
159                               Name 62  "input"
160                               Name 64  "input"
161                               Name 67  "@entryPointOutput"
162                               Name 68  "param"
163                               Decorate 64(input) Location 0
164                               Decorate 67(@entryPointOutput) Location 0
165                2:             TypeVoid
166                3:             TypeFunction 2
167                6:             TypeFloat 32
168                7:             TypePointer Function 6(float)
169                8:             TypeVector 6(float) 4
170                9:             TypeFunction 8(fvec4) 7(ptr)
171               17:             TypeBool
172               18:    17(bool) ConstantFalse
173               31:    6(float) Constant 1073741824
174               38:    6(float) Constant 1065353216
175               41:    6(float) Constant 1092616192
176               63:             TypePointer Input 6(float)
177        64(input):     63(ptr) Variable Input
178               66:             TypePointer Output 8(fvec4)
179 67(@entryPointOutput):     66(ptr) Variable Output
180 4(PixelShaderFunction):           2 Function None 3
181                5:             Label
182        62(input):      7(ptr) Variable Function
183        68(param):      7(ptr) Variable Function
184               65:    6(float) Load 64(input)
185                               Store 62(input) 65
186               69:    6(float) Load 62(input)
187                               Store 68(param) 69
188               70:    8(fvec4) FunctionCall 11(@PixelShaderFunction(f1;) 68(param)
189                               Store 67(@entryPointOutput) 70
190                               Return
191                               FunctionEnd
192 11(@PixelShaderFunction(f1;):    8(fvec4) Function None 9
193        10(input):      7(ptr) FunctionParameter
194               12:             Label
195                               Branch 13
196               13:             Label
197                               LoopMerge 15 16 Unroll 
198                               Branch 14
199               14:             Label
200                               Branch 16
201               16:             Label
202                               BranchConditional 18 13 15
203               15:             Label
204                               Branch 19
205               19:             Label
206                               LoopMerge 21 22 Unroll 
207                               Branch 20
208               20:             Label
209                               Branch 22
210               22:             Label
211                               BranchConditional 18 19 21
212               21:             Label
213                               Branch 23
214               23:             Label
215                               LoopMerge 25 26 None
216                               Branch 24
217               24:             Label
218               27:    6(float) Load 10(input)
219               28:    8(fvec4) CompositeConstruct 27 27 27 27
220                               ReturnValue 28
221               26:             Label
222               30:    6(float) Load 10(input)
223               32:    17(bool) FOrdGreaterThan 30 31
224                               BranchConditional 32 23 25
225               25:             Label
226                               Branch 33
227               33:             Label
228                               LoopMerge 35 36 None
229                               Branch 34
230               34:             Label
231               37:    6(float) Load 10(input)
232               39:    6(float) FAdd 37 38
233                               Store 10(input) 39
234                               Branch 36
235               36:             Label
236               40:    6(float) Load 10(input)
237               42:    17(bool) FOrdLessThan 40 41
238                               BranchConditional 42 33 35
239               35:             Label
240                               Branch 43
241               43:             Label
242                               LoopMerge 45 46 None
243                               Branch 44
244               44:             Label
245                               Branch 47
246               47:             Label
247                               LoopMerge 49 50 None
248                               Branch 51
249               51:             Label
250               52:    6(float) Load 10(input)
251               53:    6(float) FAdd 52 38
252                               Store 10(input) 53
253               54:    17(bool) FOrdLessThan 53 41
254                               BranchConditional 54 48 49
255               48:               Label
256                                 Branch 50
257               50:               Label
258                                 Branch 47
259               49:             Label
260                               Branch 46
261               46:             Label
262               55:    6(float) Load 10(input)
263               56:    6(float) FAdd 55 38
264                               Store 10(input) 56
265               57:    17(bool) FOrdLessThan 56 41
266                               BranchConditional 57 43 45
267               45:             Label
268               58:    6(float) Load 10(input)
269               59:    8(fvec4) CompositeConstruct 58 58 58 58
270                               ReturnValue 59
271                               FunctionEnd