1spv.float64.frag
2// Module Version 10300
3// Generated by (magic number): 80007
4// Id's are bound by 521
5
6                              Capability Shader
7                              Capability Float16
8                              Capability Float64
9                              Capability Int64
10                              Capability Int16
11                              Capability Int8
12                              Capability DerivativeControl
13                              Capability InterpolationFunction
14               1:             ExtInstImport  "GLSL.std.450"
15                              MemoryModel Logical GLSL450
16                              EntryPoint Fragment 4  "main" 458
17                              ExecutionMode 4 OriginUpperLeft
18                              Source GLSL 450
19                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types"
20                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_float16"
21                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_float32"
22                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_float64"
23                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int16"
24                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int32"
25                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int64"
26                              SourceExtension  "GL_KHX_shader_explicit_arithmetic_types_int8"
27                              Name 4  "main"
28                              Name 6  "literal("
29                              Name 8  "operators("
30                              Name 10  "typeCast("
31                              Name 12  "builtinAngleTrigFuncs("
32                              Name 14  "builtinExpFuncs("
33                              Name 16  "builtinCommonFuncs("
34                              Name 18  "builtinGeometryFuncs("
35                              Name 20  "builtinMatrixFuncs("
36                              Name 22  "builtinVecRelFuncs("
37                              Name 24  "builtinFragProcFuncs("
38                              Name 29  "f64v"
39                              Name 40  "f64v"
40                              Name 62  "f64m"
41                              Name 85  "f64"
42                              Name 109  "b"
43                              Name 151  "f64v"
44                              Name 154  "bv"
45                              Name 165  "f16v"
46                              Name 173  "i8v"
47                              Name 179  "i16v"
48                              Name 185  "i32v"
49                              Name 191  "i64v"
50                              Name 194  "u8v"
51                              Name 200  "u16v"
52                              Name 205  "u32v"
53                              Name 211  "u64v"
54                              Name 216  "f64v2"
55                              Name 217  "f64v1"
56                              Name 249  "f64v2"
57                              Name 250  "f64v1"
58                              Name 266  "f64v2"
59                              Name 267  "f64v1"
60                              Name 288  "f64"
61                              Name 292  "f64v3"
62                              Name 332  "bv"
63                              Name 353  "b"
64                              Name 363  "iv"
65                              Name 364  "ResType"
66                              Name 371  "f64"
67                              Name 372  "f64v1"
68                              Name 376  "f64v2"
69                              Name 382  "f64v3"
70                              Name 401  "f64m3"
71                              Name 402  "f64m1"
72                              Name 404  "f64m2"
73                              Name 413  "f64v1"
74                              Name 415  "f64v2"
75                              Name 420  "f64m4"
76                              Name 423  "f64"
77                              Name 426  "f64m5"
78                              Name 431  "f64m6"
79                              Name 432  "f64m7"
80                              Name 435  "bv"
81                              Name 436  "f64v1"
82                              Name 438  "f64v2"
83                              Name 456  "f64v"
84                              Name 458  "if64v"
85                              Name 507  "S"
86                              MemberName 507(S) 0  "x"
87                              MemberName 507(S) 1  "y"
88                              MemberName 507(S) 2  "z"
89                              Name 509  "B1"
90                              MemberName 509(B1) 0  "a"
91                              MemberName 509(B1) 1  "b"
92                              MemberName 509(B1) 2  "c"
93                              MemberName 509(B1) 3  "d"
94                              MemberName 509(B1) 4  "e"
95                              MemberName 509(B1) 5  "f"
96                              MemberName 509(B1) 6  "g"
97                              MemberName 509(B1) 7  "h"
98                              Name 511  ""
99                              Name 512  "sf16"
100                              Name 514  "sf"
101                              Name 515  "sd"
102                              Decorate 458(if64v) Flat
103                              Decorate 505 ArrayStride 16
104                              Decorate 506 ArrayStride 64
105                              MemberDecorate 507(S) 0 Offset 0
106                              MemberDecorate 507(S) 1 Offset 16
107                              MemberDecorate 507(S) 2 Offset 32
108                              Decorate 508 ArrayStride 64
109                              MemberDecorate 509(B1) 0 Offset 0
110                              MemberDecorate 509(B1) 1 Offset 16
111                              MemberDecorate 509(B1) 2 Offset 32
112                              MemberDecorate 509(B1) 3 Offset 64
113                              MemberDecorate 509(B1) 4 ColMajor
114                              MemberDecorate 509(B1) 4 Offset 96
115                              MemberDecorate 509(B1) 4 MatrixStride 32
116                              MemberDecorate 509(B1) 5 ColMajor
117                              MemberDecorate 509(B1) 5 Offset 160
118                              MemberDecorate 509(B1) 5 MatrixStride 32
119                              MemberDecorate 509(B1) 6 Offset 288
120                              MemberDecorate 509(B1) 7 Offset 352
121                              Decorate 509(B1) Block
122                              Decorate 511 DescriptorSet 0
123                              Decorate 512(sf16) SpecId 100
124                              Decorate 514(sf) SpecId 101
125                              Decorate 515(sd) SpecId 102
126               2:             TypeVoid
127               3:             TypeFunction 2
128              26:             TypeFloat 64
129              27:             TypeVector 26(float64_t) 2
130              28:             TypePointer Function 27(f64vec2)
131              30:26(float64_t) Constant 2696277389 1051772663
132              31:             TypeInt 32 0
133              32:     31(int) Constant 0
134              33:             TypePointer Function 26(float64_t)
135              35:26(float64_t) Constant 0 3218079744
136              36:26(float64_t) Constant 3951369912 1067366481
137              37: 27(f64vec2) ConstantComposite 35 36
138              54:26(float64_t) Constant 0 1072693248
139              60:             TypeMatrix 27(f64vec2) 2
140              61:             TypePointer Function 60
141              88:     31(int) Constant 1
142             107:             TypeBool
143             108:             TypePointer Function 107(bool)
144             149:             TypeVector 26(float64_t) 3
145             150:             TypePointer Function 149(f64vec3)
146             152:             TypeVector 107(bool) 3
147             153:             TypePointer Function 152(bvec3)
148             156:26(float64_t) Constant 0 0
149             157:149(f64vec3) ConstantComposite 156 156 156
150             158:149(f64vec3) ConstantComposite 54 54 54
151             162:             TypeFloat 16
152             163:             TypeVector 162(float16_t) 3
153             164:             TypePointer Function 163(f16vec3)
154             170:             TypeInt 8 1
155             171:             TypeVector 170(int8_t) 3
156             172:             TypePointer Function 171(i8vec3)
157             176:             TypeInt 16 1
158             177:             TypeVector 176(int16_t) 3
159             178:             TypePointer Function 177(i16vec3)
160             182:             TypeInt 32 1
161             183:             TypeVector 182(int) 3
162             184:             TypePointer Function 183(ivec3)
163             188:             TypeInt 64 1
164             189:             TypeVector 188(int64_t) 3
165             190:             TypePointer Function 189(i64vec3)
166             197:             TypeInt 16 0
167             198:             TypeVector 197(int16_t) 3
168             199:             TypePointer Function 198(i16vec3)
169             203:             TypeVector 31(int) 3
170             204:             TypePointer Function 203(ivec3)
171             208:             TypeInt 64 0
172             209:             TypeVector 208(int64_t) 3
173             210:             TypePointer Function 209(i64vec3)
174             214:             TypeVector 26(float64_t) 4
175             215:             TypePointer Function 214(f64vec4)
176    364(ResType):             TypeStruct 149(f64vec3) 183(ivec3)
177             399:             TypeMatrix 149(f64vec3) 2
178             400:             TypePointer Function 399
179             418:             TypeMatrix 27(f64vec2) 3
180             419:             TypePointer Function 418
181             424:             TypeMatrix 149(f64vec3) 3
182             425:             TypePointer Function 424
183             429:             TypeMatrix 214(f64vec4) 4
184             430:             TypePointer Function 429
185             457:             TypePointer Input 149(f64vec3)
186      458(if64v):    457(ptr) Variable Input
187             459:             TypePointer Input 26(float64_t)
188             496:    182(int) Constant 1
189             501:26(float64_t) Constant 0 1071644672
190             502: 27(f64vec2) ConstantComposite 501 501
191             504:     31(int) Constant 2
192             505:             TypeArray 26(float64_t) 504
193             506:             TypeArray 399 504
194          507(S):             TypeStruct 26(float64_t) 27(f64vec2) 149(f64vec3)
195             508:             TypeArray 507(S) 504
196         509(B1):             TypeStruct 26(float64_t) 27(f64vec2) 149(f64vec3) 505 399 506 507(S) 508
197             510:             TypePointer Uniform 509(B1)
198             511:    510(ptr) Variable Uniform
199       512(sf16):162(float16_t) SpecConstant 12288
200             513:             TypeFloat 32
201         514(sf):  513(float) SpecConstant 1048576000
202         515(sd):26(float64_t) SpecConstant 0 1071644672
203             516:  513(float) SpecConstantOp 115 512(sf16)
204             517:  513(float) SpecConstantOp 115 512(sf16)
205             518:26(float64_t) SpecConstantOp 115 517
206             519:162(float16_t) SpecConstantOp 115 514(sf)
207             520:162(float16_t) SpecConstantOp 115 515(sd)
208         4(main):           2 Function None 3
209               5:             Label
210                              Return
211                              FunctionEnd
212     6(literal():           2 Function None 3
213               7:             Label
214        29(f64v):     28(ptr) Variable Function
215              34:     33(ptr) AccessChain 29(f64v) 32
216                              Store 34 30
217              38: 27(f64vec2) Load 29(f64v)
218              39: 27(f64vec2) FAdd 38 37
219                              Store 29(f64v) 39
220                              Return
221                              FunctionEnd
222   8(operators():           2 Function None 3
223               9:             Label
224        40(f64v):     28(ptr) Variable Function
225        62(f64m):     61(ptr) Variable Function
226         85(f64):     33(ptr) Variable Function
227          109(b):    108(ptr) Variable Function
228              41: 27(f64vec2) Load 40(f64v)
229              42: 27(f64vec2) Load 40(f64v)
230              43: 27(f64vec2) FAdd 42 41
231                              Store 40(f64v) 43
232              44: 27(f64vec2) Load 40(f64v)
233              45: 27(f64vec2) Load 40(f64v)
234              46: 27(f64vec2) FSub 45 44
235                              Store 40(f64v) 46
236              47: 27(f64vec2) Load 40(f64v)
237              48: 27(f64vec2) Load 40(f64v)
238              49: 27(f64vec2) FMul 48 47
239                              Store 40(f64v) 49
240              50: 27(f64vec2) Load 40(f64v)
241              51: 27(f64vec2) Load 40(f64v)
242              52: 27(f64vec2) FDiv 51 50
243                              Store 40(f64v) 52
244              53: 27(f64vec2) Load 40(f64v)
245              55: 27(f64vec2) CompositeConstruct 54 54
246              56: 27(f64vec2) FAdd 53 55
247                              Store 40(f64v) 56
248              57: 27(f64vec2) Load 40(f64v)
249              58: 27(f64vec2) CompositeConstruct 54 54
250              59: 27(f64vec2) FSub 57 58
251                              Store 40(f64v) 59
252              63:          60 Load 62(f64m)
253              64: 27(f64vec2) CompositeConstruct 54 54
254              65: 27(f64vec2) CompositeExtract 63 0
255              66: 27(f64vec2) FAdd 65 64
256              67: 27(f64vec2) CompositeExtract 63 1
257              68: 27(f64vec2) FAdd 67 64
258              69:          60 CompositeConstruct 66 68
259                              Store 62(f64m) 69
260              70:          60 Load 62(f64m)
261              71: 27(f64vec2) CompositeConstruct 54 54
262              72: 27(f64vec2) CompositeExtract 70 0
263              73: 27(f64vec2) FSub 72 71
264              74: 27(f64vec2) CompositeExtract 70 1
265              75: 27(f64vec2) FSub 74 71
266              76:          60 CompositeConstruct 73 75
267                              Store 62(f64m) 76
268              77: 27(f64vec2) Load 40(f64v)
269              78: 27(f64vec2) FNegate 77
270                              Store 40(f64v) 78
271              79:          60 Load 62(f64m)
272              80: 27(f64vec2) CompositeExtract 79 0
273              81: 27(f64vec2) FNegate 80
274              82: 27(f64vec2) CompositeExtract 79 1
275              83: 27(f64vec2) FNegate 82
276              84:          60 CompositeConstruct 81 83
277                              Store 62(f64m) 84
278              86:     33(ptr) AccessChain 40(f64v) 32
279              87:26(float64_t) Load 86
280              89:     33(ptr) AccessChain 40(f64v) 88
281              90:26(float64_t) Load 89
282              91:26(float64_t) FAdd 87 90
283                              Store 85(f64) 91
284              92:     33(ptr) AccessChain 40(f64v) 32
285              93:26(float64_t) Load 92
286              94:     33(ptr) AccessChain 40(f64v) 88
287              95:26(float64_t) Load 94
288              96:26(float64_t) FSub 93 95
289                              Store 85(f64) 96
290              97:     33(ptr) AccessChain 40(f64v) 32
291              98:26(float64_t) Load 97
292              99:     33(ptr) AccessChain 40(f64v) 88
293             100:26(float64_t) Load 99
294             101:26(float64_t) FMul 98 100
295                              Store 85(f64) 101
296             102:     33(ptr) AccessChain 40(f64v) 32
297             103:26(float64_t) Load 102
298             104:     33(ptr) AccessChain 40(f64v) 88
299             105:26(float64_t) Load 104
300             106:26(float64_t) FDiv 103 105
301                              Store 85(f64) 106
302             110:     33(ptr) AccessChain 40(f64v) 32
303             111:26(float64_t) Load 110
304             112:26(float64_t) Load 85(f64)
305             113:   107(bool) FOrdNotEqual 111 112
306                              Store 109(b) 113
307             114:     33(ptr) AccessChain 40(f64v) 88
308             115:26(float64_t) Load 114
309             116:26(float64_t) Load 85(f64)
310             117:   107(bool) FOrdEqual 115 116
311                              Store 109(b) 117
312             118:     33(ptr) AccessChain 40(f64v) 32
313             119:26(float64_t) Load 118
314             120:26(float64_t) Load 85(f64)
315             121:   107(bool) FOrdGreaterThan 119 120
316                              Store 109(b) 121
317             122:     33(ptr) AccessChain 40(f64v) 88
318             123:26(float64_t) Load 122
319             124:26(float64_t) Load 85(f64)
320             125:   107(bool) FOrdLessThan 123 124
321                              Store 109(b) 125
322             126:     33(ptr) AccessChain 40(f64v) 32
323             127:26(float64_t) Load 126
324             128:26(float64_t) Load 85(f64)
325             129:   107(bool) FOrdGreaterThanEqual 127 128
326                              Store 109(b) 129
327             130:     33(ptr) AccessChain 40(f64v) 88
328             131:26(float64_t) Load 130
329             132:26(float64_t) Load 85(f64)
330             133:   107(bool) FOrdLessThanEqual 131 132
331                              Store 109(b) 133
332             134: 27(f64vec2) Load 40(f64v)
333             135:26(float64_t) Load 85(f64)
334             136: 27(f64vec2) VectorTimesScalar 134 135
335                              Store 40(f64v) 136
336             137:          60 Load 62(f64m)
337             138:26(float64_t) Load 85(f64)
338             139:          60 MatrixTimesScalar 137 138
339                              Store 62(f64m) 139
340             140:          60 Load 62(f64m)
341             141: 27(f64vec2) Load 40(f64v)
342             142: 27(f64vec2) MatrixTimesVector 140 141
343                              Store 40(f64v) 142
344             143: 27(f64vec2) Load 40(f64v)
345             144:          60 Load 62(f64m)
346             145: 27(f64vec2) VectorTimesMatrix 143 144
347                              Store 40(f64v) 145
348             146:          60 Load 62(f64m)
349             147:          60 Load 62(f64m)
350             148:          60 MatrixTimesMatrix 146 147
351                              Store 62(f64m) 148
352                              Return
353                              FunctionEnd
354   10(typeCast():           2 Function None 3
355              11:             Label
356       151(f64v):    150(ptr) Variable Function
357         154(bv):    153(ptr) Variable Function
358       165(f16v):    164(ptr) Variable Function
359        173(i8v):    172(ptr) Variable Function
360       179(i16v):    178(ptr) Variable Function
361       185(i32v):    184(ptr) Variable Function
362       191(i64v):    190(ptr) Variable Function
363        194(u8v):    172(ptr) Variable Function
364       200(u16v):    199(ptr) Variable Function
365       205(u32v):    204(ptr) Variable Function
366       211(u64v):    210(ptr) Variable Function
367             155:  152(bvec3) Load 154(bv)
368             159:149(f64vec3) Select 155 158 157
369                              Store 151(f64v) 159
370             160:149(f64vec3) Load 151(f64v)
371             161:  152(bvec3) FOrdNotEqual 160 157
372                              Store 154(bv) 161
373             166:163(f16vec3) Load 165(f16v)
374             167:149(f64vec3) FConvert 166
375                              Store 151(f64v) 167
376             168:149(f64vec3) Load 151(f64v)
377             169:163(f16vec3) FConvert 168
378                              Store 165(f16v) 169
379             174:149(f64vec3) Load 151(f64v)
380             175: 171(i8vec3) ConvertFToS 174
381                              Store 173(i8v) 175
382             180:149(f64vec3) Load 151(f64v)
383             181:177(i16vec3) ConvertFToS 180
384                              Store 179(i16v) 181
385             186:149(f64vec3) Load 151(f64v)
386             187:  183(ivec3) ConvertFToS 186
387                              Store 185(i32v) 187
388             192:149(f64vec3) Load 151(f64v)
389             193:189(i64vec3) ConvertFToS 192
390                              Store 191(i64v) 193
391             195:149(f64vec3) Load 151(f64v)
392             196: 171(i8vec3) ConvertFToS 195
393                              Store 194(u8v) 196
394             201:149(f64vec3) Load 151(f64v)
395             202:198(i16vec3) ConvertFToU 201
396                              Store 200(u16v) 202
397             206:149(f64vec3) Load 151(f64v)
398             207:  203(ivec3) ConvertFToU 206
399                              Store 205(u32v) 207
400             212:149(f64vec3) Load 151(f64v)
401             213:209(i64vec3) ConvertFToU 212
402                              Store 211(u64v) 213
403                              Return
404                              FunctionEnd
40512(builtinAngleTrigFuncs():           2 Function None 3
406              13:             Label
407      216(f64v2):    215(ptr) Variable Function
408      217(f64v1):    215(ptr) Variable Function
409             218:214(f64vec4) Load 217(f64v1)
410             219:214(f64vec4) ExtInst 1(GLSL.std.450) 11(Radians) 218
411                              Store 216(f64v2) 219
412             220:214(f64vec4) Load 217(f64v1)
413             221:214(f64vec4) ExtInst 1(GLSL.std.450) 12(Degrees) 220
414                              Store 216(f64v2) 221
415             222:214(f64vec4) Load 217(f64v1)
416             223:214(f64vec4) ExtInst 1(GLSL.std.450) 13(Sin) 222
417                              Store 216(f64v2) 223
418             224:214(f64vec4) Load 217(f64v1)
419             225:214(f64vec4) ExtInst 1(GLSL.std.450) 14(Cos) 224
420                              Store 216(f64v2) 225
421             226:214(f64vec4) Load 217(f64v1)
422             227:214(f64vec4) ExtInst 1(GLSL.std.450) 15(Tan) 226
423                              Store 216(f64v2) 227
424             228:214(f64vec4) Load 217(f64v1)
425             229:214(f64vec4) ExtInst 1(GLSL.std.450) 16(Asin) 228
426                              Store 216(f64v2) 229
427             230:214(f64vec4) Load 217(f64v1)
428             231:214(f64vec4) ExtInst 1(GLSL.std.450) 17(Acos) 230
429                              Store 216(f64v2) 231
430             232:214(f64vec4) Load 217(f64v1)
431             233:214(f64vec4) Load 216(f64v2)
432             234:214(f64vec4) ExtInst 1(GLSL.std.450) 25(Atan2) 232 233
433                              Store 216(f64v2) 234
434             235:214(f64vec4) Load 217(f64v1)
435             236:214(f64vec4) ExtInst 1(GLSL.std.450) 18(Atan) 235
436                              Store 216(f64v2) 236
437             237:214(f64vec4) Load 217(f64v1)
438             238:214(f64vec4) ExtInst 1(GLSL.std.450) 19(Sinh) 237
439                              Store 216(f64v2) 238
440             239:214(f64vec4) Load 217(f64v1)
441             240:214(f64vec4) ExtInst 1(GLSL.std.450) 20(Cosh) 239
442                              Store 216(f64v2) 240
443             241:214(f64vec4) Load 217(f64v1)
444             242:214(f64vec4) ExtInst 1(GLSL.std.450) 21(Tanh) 241
445                              Store 216(f64v2) 242
446             243:214(f64vec4) Load 217(f64v1)
447             244:214(f64vec4) ExtInst 1(GLSL.std.450) 22(Asinh) 243
448                              Store 216(f64v2) 244
449             245:214(f64vec4) Load 217(f64v1)
450             246:214(f64vec4) ExtInst 1(GLSL.std.450) 23(Acosh) 245
451                              Store 216(f64v2) 246
452             247:214(f64vec4) Load 217(f64v1)
453             248:214(f64vec4) ExtInst 1(GLSL.std.450) 24(Atanh) 247
454                              Store 216(f64v2) 248
455                              Return
456                              FunctionEnd
45714(builtinExpFuncs():           2 Function None 3
458              15:             Label
459      249(f64v2):     28(ptr) Variable Function
460      250(f64v1):     28(ptr) Variable Function
461             251: 27(f64vec2) Load 250(f64v1)
462             252: 27(f64vec2) Load 249(f64v2)
463             253: 27(f64vec2) ExtInst 1(GLSL.std.450) 26(Pow) 251 252
464                              Store 249(f64v2) 253
465             254: 27(f64vec2) Load 250(f64v1)
466             255: 27(f64vec2) ExtInst 1(GLSL.std.450) 27(Exp) 254
467                              Store 249(f64v2) 255
468             256: 27(f64vec2) Load 250(f64v1)
469             257: 27(f64vec2) ExtInst 1(GLSL.std.450) 28(Log) 256
470                              Store 249(f64v2) 257
471             258: 27(f64vec2) Load 250(f64v1)
472             259: 27(f64vec2) ExtInst 1(GLSL.std.450) 29(Exp2) 258
473                              Store 249(f64v2) 259
474             260: 27(f64vec2) Load 250(f64v1)
475             261: 27(f64vec2) ExtInst 1(GLSL.std.450) 30(Log2) 260
476                              Store 249(f64v2) 261
477             262: 27(f64vec2) Load 250(f64v1)
478             263: 27(f64vec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 262
479                              Store 249(f64v2) 263
480             264: 27(f64vec2) Load 250(f64v1)
481             265: 27(f64vec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 264
482                              Store 249(f64v2) 265
483                              Return
484                              FunctionEnd
48516(builtinCommonFuncs():           2 Function None 3
486              17:             Label
487      266(f64v2):    150(ptr) Variable Function
488      267(f64v1):    150(ptr) Variable Function
489        288(f64):     33(ptr) Variable Function
490      292(f64v3):    150(ptr) Variable Function
491         332(bv):    153(ptr) Variable Function
492          353(b):    108(ptr) Variable Function
493         363(iv):    184(ptr) Variable Function
494             268:149(f64vec3) Load 267(f64v1)
495             269:149(f64vec3) ExtInst 1(GLSL.std.450) 4(FAbs) 268
496                              Store 266(f64v2) 269
497             270:149(f64vec3) Load 267(f64v1)
498             271:149(f64vec3) ExtInst 1(GLSL.std.450) 6(FSign) 270
499                              Store 266(f64v2) 271
500             272:149(f64vec3) Load 267(f64v1)
501             273:149(f64vec3) ExtInst 1(GLSL.std.450) 8(Floor) 272
502                              Store 266(f64v2) 273
503             274:149(f64vec3) Load 267(f64v1)
504             275:149(f64vec3) ExtInst 1(GLSL.std.450) 3(Trunc) 274
505                              Store 266(f64v2) 275
506             276:149(f64vec3) Load 267(f64v1)
507             277:149(f64vec3) ExtInst 1(GLSL.std.450) 1(Round) 276
508                              Store 266(f64v2) 277
509             278:149(f64vec3) Load 267(f64v1)
510             279:149(f64vec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 278
511                              Store 266(f64v2) 279
512             280:149(f64vec3) Load 267(f64v1)
513             281:149(f64vec3) ExtInst 1(GLSL.std.450) 9(Ceil) 280
514                              Store 266(f64v2) 281
515             282:149(f64vec3) Load 267(f64v1)
516             283:149(f64vec3) ExtInst 1(GLSL.std.450) 10(Fract) 282
517                              Store 266(f64v2) 283
518             284:149(f64vec3) Load 267(f64v1)
519             285:149(f64vec3) Load 266(f64v2)
520             286:149(f64vec3) FMod 284 285
521                              Store 266(f64v2) 286
522             287:149(f64vec3) Load 267(f64v1)
523             289:26(float64_t) Load 288(f64)
524             290:149(f64vec3) CompositeConstruct 289 289 289
525             291:149(f64vec3) FMod 287 290
526                              Store 266(f64v2) 291
527             293:149(f64vec3) Load 267(f64v1)
528             294:149(f64vec3) ExtInst 1(GLSL.std.450) 35(Modf) 293 266(f64v2)
529                              Store 292(f64v3) 294
530             295:149(f64vec3) Load 267(f64v1)
531             296:149(f64vec3) Load 266(f64v2)
532             297:149(f64vec3) ExtInst 1(GLSL.std.450) 37(FMin) 295 296
533                              Store 292(f64v3) 297
534             298:149(f64vec3) Load 267(f64v1)
535             299:26(float64_t) Load 288(f64)
536             300:149(f64vec3) CompositeConstruct 299 299 299
537             301:149(f64vec3) ExtInst 1(GLSL.std.450) 37(FMin) 298 300
538                              Store 292(f64v3) 301
539             302:149(f64vec3) Load 267(f64v1)
540             303:149(f64vec3) Load 266(f64v2)
541             304:149(f64vec3) ExtInst 1(GLSL.std.450) 40(FMax) 302 303
542                              Store 292(f64v3) 304
543             305:149(f64vec3) Load 267(f64v1)
544             306:26(float64_t) Load 288(f64)
545             307:149(f64vec3) CompositeConstruct 306 306 306
546             308:149(f64vec3) ExtInst 1(GLSL.std.450) 40(FMax) 305 307
547                              Store 292(f64v3) 308
548             309:149(f64vec3) Load 267(f64v1)
549             310:26(float64_t) Load 288(f64)
550             311:     33(ptr) AccessChain 266(f64v2) 32
551             312:26(float64_t) Load 311
552             313:149(f64vec3) CompositeConstruct 310 310 310
553             314:149(f64vec3) CompositeConstruct 312 312 312
554             315:149(f64vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 309 313 314
555                              Store 292(f64v3) 315
556             316:149(f64vec3) Load 267(f64v1)
557             317:149(f64vec3) Load 266(f64v2)
558             318:26(float64_t) Load 288(f64)
559             319:149(f64vec3) CompositeConstruct 318 318 318
560             320:149(f64vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 316 317 319
561                              Store 292(f64v3) 320
562             321:149(f64vec3) Load 267(f64v1)
563             322:149(f64vec3) Load 266(f64v2)
564             323:26(float64_t) Load 288(f64)
565             324:149(f64vec3) CompositeConstruct 323 323 323
566             325:149(f64vec3) ExtInst 1(GLSL.std.450) 46(FMix) 321 322 324
567                              Store 292(f64v3) 325
568             326:149(f64vec3) Load 267(f64v1)
569             327:149(f64vec3) Load 266(f64v2)
570             328:149(f64vec3) Load 292(f64v3)
571             329:149(f64vec3) ExtInst 1(GLSL.std.450) 46(FMix) 326 327 328
572                              Store 292(f64v3) 329
573             330:149(f64vec3) Load 267(f64v1)
574             331:149(f64vec3) Load 266(f64v2)
575             333:  152(bvec3) Load 332(bv)
576             334:149(f64vec3) Select 333 331 330
577                              Store 292(f64v3) 334
578             335:149(f64vec3) Load 267(f64v1)
579             336:149(f64vec3) Load 266(f64v2)
580             337:149(f64vec3) ExtInst 1(GLSL.std.450) 48(Step) 335 336
581                              Store 292(f64v3) 337
582             338:26(float64_t) Load 288(f64)
583             339:149(f64vec3) Load 292(f64v3)
584             340:149(f64vec3) CompositeConstruct 338 338 338
585             341:149(f64vec3) ExtInst 1(GLSL.std.450) 48(Step) 340 339
586                              Store 292(f64v3) 341
587             342:149(f64vec3) Load 267(f64v1)
588             343:149(f64vec3) Load 266(f64v2)
589             344:149(f64vec3) Load 292(f64v3)
590             345:149(f64vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 342 343 344
591                              Store 292(f64v3) 345
592             346:26(float64_t) Load 288(f64)
593             347:     33(ptr) AccessChain 267(f64v1) 32
594             348:26(float64_t) Load 347
595             349:149(f64vec3) Load 266(f64v2)
596             350:149(f64vec3) CompositeConstruct 346 346 346
597             351:149(f64vec3) CompositeConstruct 348 348 348
598             352:149(f64vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 350 351 349
599                              Store 292(f64v3) 352
600             354:26(float64_t) Load 288(f64)
601             355:   107(bool) IsNan 354
602                              Store 353(b) 355
603             356:149(f64vec3) Load 267(f64v1)
604             357:  152(bvec3) IsInf 356
605                              Store 332(bv) 357
606             358:149(f64vec3) Load 267(f64v1)
607             359:149(f64vec3) Load 266(f64v2)
608             360:149(f64vec3) Load 292(f64v3)
609             361:149(f64vec3) ExtInst 1(GLSL.std.450) 50(Fma) 358 359 360
610                              Store 292(f64v3) 361
611             362:149(f64vec3) Load 267(f64v1)
612             365:364(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 362
613             366:  183(ivec3) CompositeExtract 365 1
614                              Store 363(iv) 366
615             367:149(f64vec3) CompositeExtract 365 0
616                              Store 266(f64v2) 367
617             368:149(f64vec3) Load 267(f64v1)
618             369:  183(ivec3) Load 363(iv)
619             370:149(f64vec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 368 369
620                              Store 266(f64v2) 370
621                              Return
622                              FunctionEnd
62318(builtinGeometryFuncs():           2 Function None 3
624              19:             Label
625        371(f64):     33(ptr) Variable Function
626      372(f64v1):    150(ptr) Variable Function
627      376(f64v2):    150(ptr) Variable Function
628      382(f64v3):    150(ptr) Variable Function
629             373:149(f64vec3) Load 372(f64v1)
630             374:26(float64_t) ExtInst 1(GLSL.std.450) 66(Length) 373
631                              Store 371(f64) 374
632             375:149(f64vec3) Load 372(f64v1)
633             377:149(f64vec3) Load 376(f64v2)
634             378:26(float64_t) ExtInst 1(GLSL.std.450) 67(Distance) 375 377
635                              Store 371(f64) 378
636             379:149(f64vec3) Load 372(f64v1)
637             380:149(f64vec3) Load 376(f64v2)
638             381:26(float64_t) Dot 379 380
639                              Store 371(f64) 381
640             383:149(f64vec3) Load 372(f64v1)
641             384:149(f64vec3) Load 376(f64v2)
642             385:149(f64vec3) ExtInst 1(GLSL.std.450) 68(Cross) 383 384
643                              Store 382(f64v3) 385
644             386:149(f64vec3) Load 372(f64v1)
645             387:149(f64vec3) ExtInst 1(GLSL.std.450) 69(Normalize) 386
646                              Store 376(f64v2) 387
647             388:149(f64vec3) Load 372(f64v1)
648             389:149(f64vec3) Load 376(f64v2)
649             390:149(f64vec3) Load 382(f64v3)
650             391:149(f64vec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 388 389 390
651                              Store 382(f64v3) 391
652             392:149(f64vec3) Load 372(f64v1)
653             393:149(f64vec3) Load 376(f64v2)
654             394:149(f64vec3) ExtInst 1(GLSL.std.450) 71(Reflect) 392 393
655                              Store 382(f64v3) 394
656             395:149(f64vec3) Load 372(f64v1)
657             396:149(f64vec3) Load 376(f64v2)
658             397:26(float64_t) Load 371(f64)
659             398:149(f64vec3) ExtInst 1(GLSL.std.450) 72(Refract) 395 396 397
660                              Store 382(f64v3) 398
661                              Return
662                              FunctionEnd
66320(builtinMatrixFuncs():           2 Function None 3
664              21:             Label
665      401(f64m3):    400(ptr) Variable Function
666      402(f64m1):    400(ptr) Variable Function
667      404(f64m2):    400(ptr) Variable Function
668      413(f64v1):    150(ptr) Variable Function
669      415(f64v2):     28(ptr) Variable Function
670      420(f64m4):    419(ptr) Variable Function
671        423(f64):     33(ptr) Variable Function
672      426(f64m5):    425(ptr) Variable Function
673      431(f64m6):    430(ptr) Variable Function
674      432(f64m7):    430(ptr) Variable Function
675             403:         399 Load 402(f64m1)
676             405:         399 Load 404(f64m2)
677             406:149(f64vec3) CompositeExtract 403 0
678             407:149(f64vec3) CompositeExtract 405 0
679             408:149(f64vec3) FMul 406 407
680             409:149(f64vec3) CompositeExtract 403 1
681             410:149(f64vec3) CompositeExtract 405 1
682             411:149(f64vec3) FMul 409 410
683             412:         399 CompositeConstruct 408 411
684                              Store 401(f64m3) 412
685             414:149(f64vec3) Load 413(f64v1)
686             416: 27(f64vec2) Load 415(f64v2)
687             417:         399 OuterProduct 414 416
688                              Store 402(f64m1) 417
689             421:         399 Load 402(f64m1)
690             422:         418 Transpose 421
691                              Store 420(f64m4) 422
692             427:         424 Load 426(f64m5)
693             428:26(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 427
694                              Store 423(f64) 428
695             433:         429 Load 432(f64m7)
696             434:         429 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 433
697                              Store 431(f64m6) 434
698                              Return
699                              FunctionEnd
70022(builtinVecRelFuncs():           2 Function None 3
701              23:             Label
702         435(bv):    153(ptr) Variable Function
703      436(f64v1):    150(ptr) Variable Function
704      438(f64v2):    150(ptr) Variable Function
705             437:149(f64vec3) Load 436(f64v1)
706             439:149(f64vec3) Load 438(f64v2)
707             440:  152(bvec3) FOrdLessThan 437 439
708                              Store 435(bv) 440
709             441:149(f64vec3) Load 436(f64v1)
710             442:149(f64vec3) Load 438(f64v2)
711             443:  152(bvec3) FOrdLessThanEqual 441 442
712                              Store 435(bv) 443
713             444:149(f64vec3) Load 436(f64v1)
714             445:149(f64vec3) Load 438(f64v2)
715             446:  152(bvec3) FOrdGreaterThan 444 445
716                              Store 435(bv) 446
717             447:149(f64vec3) Load 436(f64v1)
718             448:149(f64vec3) Load 438(f64v2)
719             449:  152(bvec3) FOrdGreaterThanEqual 447 448
720                              Store 435(bv) 449
721             450:149(f64vec3) Load 436(f64v1)
722             451:149(f64vec3) Load 438(f64v2)
723             452:  152(bvec3) FOrdEqual 450 451
724                              Store 435(bv) 452
725             453:149(f64vec3) Load 436(f64v1)
726             454:149(f64vec3) Load 438(f64v2)
727             455:  152(bvec3) FOrdNotEqual 453 454
728                              Store 435(bv) 455
729                              Return
730                              FunctionEnd
73124(builtinFragProcFuncs():           2 Function None 3
732              25:             Label
733       456(f64v):    150(ptr) Variable Function
734             460:    459(ptr) AccessChain 458(if64v) 32
735             461:26(float64_t) Load 460
736             462:26(float64_t) DPdx 461
737             463:     33(ptr) AccessChain 456(f64v) 32
738                              Store 463 462
739             464:    459(ptr) AccessChain 458(if64v) 88
740             465:26(float64_t) Load 464
741             466:26(float64_t) DPdy 465
742             467:     33(ptr) AccessChain 456(f64v) 88
743                              Store 467 466
744             468:149(f64vec3) Load 458(if64v)
745             469: 27(f64vec2) VectorShuffle 468 468 0 1
746             470: 27(f64vec2) DPdxFine 469
747             471:149(f64vec3) Load 456(f64v)
748             472:149(f64vec3) VectorShuffle 471 470 3 4 2
749                              Store 456(f64v) 472
750             473:149(f64vec3) Load 458(if64v)
751             474: 27(f64vec2) VectorShuffle 473 473 0 1
752             475: 27(f64vec2) DPdyFine 474
753             476:149(f64vec3) Load 456(f64v)
754             477:149(f64vec3) VectorShuffle 476 475 3 4 2
755                              Store 456(f64v) 477
756             478:149(f64vec3) Load 458(if64v)
757             479:149(f64vec3) DPdxCoarse 478
758                              Store 456(f64v) 479
759             480:149(f64vec3) Load 458(if64v)
760             481:149(f64vec3) DPdxCoarse 480
761                              Store 456(f64v) 481
762             482:    459(ptr) AccessChain 458(if64v) 32
763             483:26(float64_t) Load 482
764             484:26(float64_t) Fwidth 483
765             485:     33(ptr) AccessChain 456(f64v) 32
766                              Store 485 484
767             486:149(f64vec3) Load 458(if64v)
768             487: 27(f64vec2) VectorShuffle 486 486 0 1
769             488: 27(f64vec2) FwidthFine 487
770             489:149(f64vec3) Load 456(f64v)
771             490:149(f64vec3) VectorShuffle 489 488 3 4 2
772                              Store 456(f64v) 490
773             491:149(f64vec3) Load 458(if64v)
774             492:149(f64vec3) FwidthCoarse 491
775                              Store 456(f64v) 492
776             493:    459(ptr) AccessChain 458(if64v) 32
777             494:26(float64_t) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 493
778             495:     33(ptr) AccessChain 456(f64v) 32
779                              Store 495 494
780             497:149(f64vec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 458(if64v) 496
781             498: 27(f64vec2) VectorShuffle 497 497 0 1
782             499:149(f64vec3) Load 456(f64v)
783             500:149(f64vec3) VectorShuffle 499 498 3 4 2
784                              Store 456(f64v) 500
785             503:149(f64vec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 458(if64v) 502
786                              Store 456(f64v) 503
787                              Return
788                              FunctionEnd
789