SPIR-V: Move from Version .99 Rev 31 to Version 1.0, Rev 2.
[platform/upstream/glslang.git] / Test / baseResults / spv.switch.frag.out
1 spv.switch.frag\r
2 Warning, version 310 is not yet complete; most version-specific features are present, but some are missing.\r
3 WARNING: 0:121: 'switch' : last case/default label not followed by statements \r
4 WARNING: 0:134: 'switch' : last case/default label not followed by statements \r
5 WARNING: 0:139: 'switch' : last case/default label not followed by statements \r
6 \r
7 \r
8 Linked fragment stage:\r
9 \r
10 \r
11 // Module Version 10000\r
12 // Generated by (magic number): 80001\r
13 // Id's are bound by 263\r
14 \r
15                               Capability Shader\r
16                1:             ExtInstImport  "GLSL.std.450"\r
17                               MemoryModel Logical GLSL450\r
18                               EntryPoint Fragment 4  "main" 73 221\r
19                               ExecutionMode 4 OriginLowerLeft\r
20                               Source ESSL 310\r
21                               Name 4  "main"\r
22                               Name 15  "foo1(vf4;vf4;i1;"\r
23                               Name 12  "v1"\r
24                               Name 13  "v2"\r
25                               Name 14  "i1"\r
26                               Name 20  "foo2(vf4;vf4;i1;"\r
27                               Name 17  "v1"\r
28                               Name 18  "v2"\r
29                               Name 19  "i1"\r
30                               Name 58  "local"\r
31                               Name 60  "c"\r
32                               Name 71  "f"\r
33                               Name 73  "x"\r
34                               Name 127  "d"\r
35                               Name 153  "i"\r
36                               Name 171  "j"\r
37                               Name 221  "color"\r
38                               Name 227  "v"\r
39                               Name 228  "param"\r
40                               Name 230  "param"\r
41                               Name 232  "param"\r
42                               Name 240  "param"\r
43                               Name 242  "param"\r
44                               Name 244  "param"\r
45                               Decorate 58(local) RelaxedPrecision\r
46                               Decorate 60(c) RelaxedPrecision\r
47                               Decorate 71(f) RelaxedPrecision\r
48                               Decorate 73(x) RelaxedPrecision\r
49                               Decorate 127(d) RelaxedPrecision\r
50                               Decorate 153(i) RelaxedPrecision\r
51                               Decorate 171(j) RelaxedPrecision\r
52                               Decorate 221(color) RelaxedPrecision\r
53                               Decorate 227(v) RelaxedPrecision\r
54                2:             TypeVoid\r
55                3:             TypeFunction 2\r
56                6:             TypeFloat 32\r
57                7:             TypeVector 6(float) 4\r
58                8:             TypePointer Function 7(fvec4)\r
59                9:             TypeInt 32 1\r
60               10:             TypePointer Function 9(int)\r
61               11:             TypeFunction 7(fvec4) 8(ptr) 8(ptr) 10(ptr)\r
62               36:    6(float) Constant 0\r
63               37:    7(fvec4) ConstantComposite 36 36 36 36\r
64               47:    6(float) Constant 1065353216\r
65               48:    7(fvec4) ConstantComposite 47 47 47 47\r
66               59:             TypePointer UniformConstant 9(int)\r
67            60(c):     59(ptr) Variable UniformConstant\r
68               63:      9(int) Constant 1\r
69               70:             TypePointer Function 6(float)\r
70               72:             TypePointer Input 6(float)\r
71            73(x):     72(ptr) Variable Input\r
72           127(d):     59(ptr) Variable UniformConstant\r
73              154:      9(int) Constant 0\r
74              159:      9(int) Constant 10\r
75              160:             TypeBool\r
76              172:      9(int) Constant 20\r
77              177:      9(int) Constant 30\r
78              182:    6(float) Constant 1120429670\r
79              202:    6(float) Constant 1079739679\r
80              220:             TypePointer Output 6(float)\r
81       221(color):    220(ptr) Variable Output\r
82              226:             TypePointer UniformConstant 7(fvec4)\r
83           227(v):    226(ptr) Variable UniformConstant\r
84              235:             TypeInt 32 0\r
85              236:    235(int) Constant 1\r
86              247:    235(int) Constant 2\r
87          4(main):           2 Function None 3\r
88                5:             Label\r
89        58(local):     10(ptr) Variable Function\r
90            71(f):     70(ptr) Variable Function\r
91           153(i):     10(ptr) Variable Function\r
92           171(j):     10(ptr) Variable Function\r
93       228(param):      8(ptr) Variable Function\r
94       230(param):      8(ptr) Variable Function\r
95       232(param):     10(ptr) Variable Function\r
96       240(param):      8(ptr) Variable Function\r
97       242(param):      8(ptr) Variable Function\r
98       244(param):     10(ptr) Variable Function\r
99               61:      9(int) Load 60(c)\r
100                               Store 58(local) 61\r
101               62:      9(int) Load 58(local)\r
102               64:      9(int) IAdd 62 63\r
103                               Store 58(local) 64\r
104               65:      9(int) Load 60(c)\r
105                               SelectionMerge 69 None\r
106                               Switch 65 68 \r
107                                      case 1: 66\r
108                                      case 2: 67\r
109               66:               Label\r
110               74:    6(float)   Load 73(x)\r
111               75:    6(float)   ExtInst 1(GLSL.std.450) 13(Sin) 74\r
112                                 Store 71(f) 75\r
113                                 Branch 69\r
114               67:               Label\r
115               77:    6(float)   Load 73(x)\r
116               78:    6(float)   ExtInst 1(GLSL.std.450) 14(Cos) 77\r
117                                 Store 71(f) 78\r
118                                 Branch 69\r
119               68:               Label\r
120               80:    6(float)   Load 73(x)\r
121               81:    6(float)   ExtInst 1(GLSL.std.450) 15(Tan) 80\r
122                                 Store 71(f) 81\r
123                                 Branch 69\r
124               69:             Label\r
125               83:      9(int) Load 60(c)\r
126                               SelectionMerge 87 None\r
127                               Switch 83 86 \r
128                                      case 1: 84\r
129                                      case 2: 85\r
130               84:               Label\r
131               88:    6(float)   Load 73(x)\r
132               89:    6(float)   ExtInst 1(GLSL.std.450) 13(Sin) 88\r
133               90:    6(float)   Load 71(f)\r
134               91:    6(float)   FAdd 90 89\r
135                                 Store 71(f) 91\r
136                                 Branch 85\r
137               85:               Label\r
138               92:    6(float)   Load 73(x)\r
139               93:    6(float)   ExtInst 1(GLSL.std.450) 14(Cos) 92\r
140               94:    6(float)   Load 71(f)\r
141               95:    6(float)   FAdd 94 93\r
142                                 Store 71(f) 95\r
143                                 Branch 87\r
144               86:               Label\r
145               97:    6(float)   Load 73(x)\r
146               98:    6(float)   ExtInst 1(GLSL.std.450) 15(Tan) 97\r
147               99:    6(float)   Load 71(f)\r
148              100:    6(float)   FAdd 99 98\r
149                                 Store 71(f) 100\r
150                                 Branch 87\r
151               87:             Label\r
152              102:      9(int) Load 60(c)\r
153                               SelectionMerge 105 None\r
154                               Switch 102 105 \r
155                                      case 1: 103\r
156                                      case 2: 104\r
157              103:               Label\r
158              106:    6(float)   Load 73(x)\r
159              107:    6(float)   ExtInst 1(GLSL.std.450) 13(Sin) 106\r
160              108:    6(float)   Load 71(f)\r
161              109:    6(float)   FAdd 108 107\r
162                                 Store 71(f) 109\r
163                                 Branch 105\r
164              104:               Label\r
165              111:    6(float)   Load 73(x)\r
166              112:    6(float)   ExtInst 1(GLSL.std.450) 14(Cos) 111\r
167              113:    6(float)   Load 71(f)\r
168              114:    6(float)   FAdd 113 112\r
169                                 Store 71(f) 114\r
170                                 Branch 105\r
171              105:             Label\r
172              117:      9(int) Load 60(c)\r
173                               SelectionMerge 121 None\r
174                               Switch 117 120 \r
175                                      case 1: 118\r
176                                      case 2: 119\r
177              118:               Label\r
178              122:    6(float)   Load 73(x)\r
179              123:    6(float)   ExtInst 1(GLSL.std.450) 13(Sin) 122\r
180              124:    6(float)   Load 71(f)\r
181              125:    6(float)   FAdd 124 123\r
182                                 Store 71(f) 125\r
183                                 Branch 121\r
184              119:               Label\r
185              128:      9(int)   Load 127(d)\r
186                                 SelectionMerge 131 None\r
187                                 Switch 128 131 \r
188                                        case 1: 129\r
189                                        case 2: 130\r
190              129:                 Label\r
191              132:    6(float)     Load 73(x)\r
192              133:    6(float)     Load 73(x)\r
193              134:    6(float)     FMul 132 133\r
194              135:    6(float)     Load 73(x)\r
195              136:    6(float)     FMul 134 135\r
196              137:    6(float)     Load 71(f)\r
197              138:    6(float)     FAdd 137 136\r
198                                   Store 71(f) 138\r
199                                   Branch 131\r
200              130:                 Label\r
201              140:    6(float)     Load 73(x)\r
202              141:    6(float)     Load 73(x)\r
203              142:    6(float)     FMul 140 141\r
204              143:    6(float)     Load 71(f)\r
205              144:    6(float)     FAdd 143 142\r
206                                   Store 71(f) 144\r
207                                   Branch 131\r
208              131:               Label\r
209                                 Branch 121\r
210              120:               Label\r
211              148:    6(float)   Load 73(x)\r
212              149:    6(float)   ExtInst 1(GLSL.std.450) 15(Tan) 148\r
213              150:    6(float)   Load 71(f)\r
214              151:    6(float)   FAdd 150 149\r
215                                 Store 71(f) 151\r
216                                 Branch 121\r
217              121:             Label\r
218                               Store 153(i) 154\r
219                               Branch 155\r
220              155:             Label\r
221              158:      9(int) Load 153(i)\r
222              161:   160(bool) SLessThan 158 159\r
223                               LoopMerge 156 155 None\r
224                               BranchConditional 161 157 156\r
225              157:               Label\r
226              162:      9(int)   Load 60(c)\r
227                                 SelectionMerge 166 None\r
228                                 Switch 162 165 \r
229                                        case 1: 163\r
230                                        case 2: 164\r
231              163:                 Label\r
232              167:    6(float)     Load 73(x)\r
233              168:    6(float)     ExtInst 1(GLSL.std.450) 13(Sin) 167\r
234              169:    6(float)     Load 71(f)\r
235              170:    6(float)     FAdd 169 168\r
236                                   Store 71(f) 170\r
237                                   Store 171(j) 172\r
238                                   Branch 173\r
239              173:                 Label\r
240              176:      9(int)     Load 171(j)\r
241              178:   160(bool)     SLessThan 176 177\r
242                                   LoopMerge 174 173 None\r
243                                   BranchConditional 178 175 174\r
244              175:                   Label\r
245              179:    6(float)       Load 71(f)\r
246              180:    6(float)       FAdd 179 47\r
247                                     Store 71(f) 180\r
248              181:    6(float)       Load 71(f)\r
249              183:   160(bool)       FOrdLessThan 181 182\r
250                                     SelectionMerge 185 None\r
251                                     BranchConditional 183 184 185\r
252              184:                     Label\r
253                                       Branch 174\r
254              185:                   Label\r
255              187:      9(int)       Load 171(j)\r
256              188:      9(int)       IAdd 187 63\r
257                                     Store 171(j) 188\r
258                                     Branch 173\r
259              174:                 Label\r
260                                   Branch 166\r
261              164:                 Label\r
262              190:    6(float)     Load 73(x)\r
263              191:    6(float)     ExtInst 1(GLSL.std.450) 14(Cos) 190\r
264              192:    6(float)     Load 71(f)\r
265              193:    6(float)     FAdd 192 191\r
266                                   Store 71(f) 193\r
267                                   Branch 166\r
268              165:                 Label\r
269              196:    6(float)     Load 73(x)\r
270              197:    6(float)     ExtInst 1(GLSL.std.450) 15(Tan) 196\r
271              198:    6(float)     Load 71(f)\r
272              199:    6(float)     FAdd 198 197\r
273                                   Store 71(f) 199\r
274                                   Branch 166\r
275              166:               Label\r
276              201:    6(float)   Load 71(f)\r
277              203:   160(bool)   FOrdLessThan 201 202\r
278                                 SelectionMerge 205 None\r
279                                 BranchConditional 203 204 205\r
280              204:                 Label\r
281                                   Branch 156\r
282              205:               Label\r
283              207:      9(int)   Load 153(i)\r
284              208:      9(int)   IAdd 207 63\r
285                                 Store 153(i) 208\r
286                                 Branch 155\r
287              156:             Label\r
288              209:      9(int) Load 60(c)\r
289                               SelectionMerge 212 None\r
290                               Switch 209 212 \r
291                                      case 1: 210\r
292                                      case 2: 211\r
293              210:               Label\r
294              213:    6(float)   Load 73(x)\r
295              214:    6(float)   ExtInst 1(GLSL.std.450) 13(Sin) 213\r
296              215:    6(float)   Load 71(f)\r
297              216:    6(float)   FAdd 215 214\r
298                                 Store 71(f) 216\r
299                                 Branch 212\r
300              211:               Label\r
301                                 Branch 212\r
302              212:             Label\r
303              222:    6(float) Load 71(f)\r
304              223:      9(int) Load 58(local)\r
305              224:    6(float) ConvertSToF 223\r
306              225:    6(float) FAdd 222 224\r
307                               Store 221(color) 225\r
308              229:    7(fvec4) Load 227(v)\r
309                               Store 228(param) 229\r
310              231:    7(fvec4) Load 227(v)\r
311                               Store 230(param) 231\r
312              233:      9(int) Load 60(c)\r
313                               Store 232(param) 233\r
314              234:    7(fvec4) FunctionCall 15(foo1(vf4;vf4;i1;) 228(param) 230(param) 232(param)\r
315              237:    6(float) CompositeExtract 234 1\r
316              238:    6(float) Load 221(color)\r
317              239:    6(float) FAdd 238 237\r
318                               Store 221(color) 239\r
319              241:    7(fvec4) Load 227(v)\r
320                               Store 240(param) 241\r
321              243:    7(fvec4) Load 227(v)\r
322                               Store 242(param) 243\r
323              245:      9(int) Load 60(c)\r
324                               Store 244(param) 245\r
325              246:    7(fvec4) FunctionCall 20(foo2(vf4;vf4;i1;) 240(param) 242(param) 244(param)\r
326              248:    6(float) CompositeExtract 246 2\r
327              249:    6(float) Load 221(color)\r
328              250:    6(float) FAdd 249 248\r
329                               Store 221(color) 250\r
330              251:      9(int) Load 60(c)\r
331                               SelectionMerge 254 None\r
332                               Switch 251 253 \r
333                                      case 0: 252\r
334              252:               Label\r
335                                 Branch 254\r
336              253:               Label\r
337                                 Branch 254\r
338              254:             Label\r
339              258:      9(int) Load 60(c)\r
340                               SelectionMerge 260 None\r
341                               Switch 258 259\r
342              259:               Label\r
343                                 Branch 260\r
344              260:             Label\r
345                               Return\r
346                               FunctionEnd\r
347 15(foo1(vf4;vf4;i1;):    7(fvec4) Function None 11\r
348           12(v1):      8(ptr) FunctionParameter\r
349           13(v2):      8(ptr) FunctionParameter\r
350           14(i1):     10(ptr) FunctionParameter\r
351               16:             Label\r
352               22:      9(int) Load 14(i1)\r
353                               SelectionMerge 26 None\r
354                               Switch 22 26 \r
355                                      case 0: 23\r
356                                      case 2: 24\r
357                                      case 1: 24\r
358                                      case 3: 25\r
359               23:               Label\r
360               27:    7(fvec4)   Load 12(v1)\r
361                                 ReturnValue 27\r
362               24:               Label\r
363               29:    7(fvec4)   Load 13(v2)\r
364                                 ReturnValue 29\r
365               25:               Label\r
366               31:    7(fvec4)   Load 12(v1)\r
367               32:    7(fvec4)   Load 13(v2)\r
368               33:    7(fvec4)   FMul 31 32\r
369                                 ReturnValue 33\r
370               26:             Label\r
371                               ReturnValue 37\r
372                               FunctionEnd\r
373 20(foo2(vf4;vf4;i1;):    7(fvec4) Function None 11\r
374           17(v1):      8(ptr) FunctionParameter\r
375           18(v2):      8(ptr) FunctionParameter\r
376           19(i1):     10(ptr) FunctionParameter\r
377               21:             Label\r
378               39:      9(int) Load 19(i1)\r
379                               SelectionMerge 44 None\r
380                               Switch 39 44 \r
381                                      case 0: 40\r
382                                      case 2: 41\r
383                                      case 1: 42\r
384                                      case 3: 43\r
385               40:               Label\r
386               45:    7(fvec4)   Load 17(v1)\r
387                                 ReturnValue 45\r
388               41:               Label\r
389                                 ReturnValue 48\r
390               42:               Label\r
391               50:    7(fvec4)   Load 18(v2)\r
392                                 ReturnValue 50\r
393               43:               Label\r
394               52:    7(fvec4)   Load 17(v1)\r
395               53:    7(fvec4)   Load 18(v2)\r
396               54:    7(fvec4)   FMul 52 53\r
397                                 ReturnValue 54\r
398               44:             Label\r
399                               ReturnValue 37\r
400                               FunctionEnd\r