yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

dnetotests: spv.float16.frag now passes validation716f9503

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