glslang/Test/baseResults/spv.float16.frag.out
Ronny Chan 3454c3618b
Emit OpModfStruct for GLSL EOpModf instead of OpModf
* Update tests to account for `OpModfStruct`
2024-10-25 11:58:12 -04:00

859 lines
43 KiB
Plaintext

spv.float16.frag
Validation failed
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 541
Capability Shader
Capability Float16
Capability Float64
Capability Int64
Capability DerivativeControl
Capability InterpolationFunction
Capability StorageUniformBufferBlock16
Capability StorageUniform16
Capability StorageInputOutput16
Extension "SPV_AMD_gpu_shader_half_float"
Extension "SPV_KHR_16bit_storage"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 464
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_AMD_gpu_shader_half_float"
SourceExtension "GL_ARB_gpu_shader_int64"
Name 4 "main"
Name 6 "literal("
Name 8 "operators("
Name 10 "typeCast("
Name 12 "builtinAngleTrigFuncs("
Name 14 "builtinExpFuncs("
Name 16 "builtinCommonFuncs("
Name 18 "builtinPackUnpackFuncs("
Name 20 "builtinGeometryFuncs("
Name 22 "builtinMatrixFuncs("
Name 24 "builtinVecRelFuncs("
Name 26 "builtinFragProcFuncs("
Name 31 "f16v"
Name 42 "f16v"
Name 64 "f16m"
Name 87 "f16"
Name 111 "b"
Name 153 "f16v"
Name 156 "bv"
Name 167 "fv"
Name 175 "dv"
Name 182 "iv"
Name 189 "uv"
Name 197 "i64v"
Name 205 "u64v"
Name 212 "f16v2"
Name 213 "f16v1"
Name 245 "f16v2"
Name 246 "f16v1"
Name 262 "f16v2"
Name 263 "f16v1"
Name 284 "f16"
Name 288 "f16v3"
Name 290 "ResType"
Name 331 "bv"
Name 352 "b"
Name 362 "iv"
Name 363 "ResType"
Name 371 "u"
Name 372 "f16v"
Name 377 "f16"
Name 378 "f16v1"
Name 382 "f16v2"
Name 388 "f16v3"
Name 407 "f16m3"
Name 408 "f16m1"
Name 410 "f16m2"
Name 419 "f16v1"
Name 421 "f16v2"
Name 426 "f16m4"
Name 429 "f16"
Name 432 "f16m5"
Name 437 "f16m6"
Name 438 "f16m7"
Name 441 "bv"
Name 442 "f16v1"
Name 444 "f16v2"
Name 462 "f16v"
Name 464 "if16v"
Name 521 "S"
MemberName 521(S) 0 "x"
MemberName 521(S) 1 "y"
MemberName 521(S) 2 "z"
Name 523 "B1"
MemberName 523(B1) 0 "a"
MemberName 523(B1) 1 "b"
MemberName 523(B1) 2 "c"
MemberName 523(B1) 3 "d"
MemberName 523(B1) 4 "e"
MemberName 523(B1) 5 "f"
MemberName 523(B1) 6 "g"
MemberName 523(B1) 7 "h"
Name 525 ""
Name 528 "S"
MemberName 528(S) 0 "x"
MemberName 528(S) 1 "y"
MemberName 528(S) 2 "z"
Name 530 "B2"
MemberName 530(B2) 0 "o"
MemberName 530(B2) 1 "p"
MemberName 530(B2) 2 "q"
MemberName 530(B2) 3 "r"
MemberName 530(B2) 4 "s"
MemberName 530(B2) 5 "t"
MemberName 530(B2) 6 "u"
MemberName 530(B2) 7 "v"
Name 532 ""
Name 533 "sf16"
Name 534 "sf"
Name 535 "sd"
Name 536 "f16_to_f"
Name 538 "f16_to_d"
Name 539 "f_to_f16"
Name 540 "d_to_f16"
Decorate 464(if16v) Location 0
Decorate 519 ArrayStride 16
Decorate 520 ArrayStride 32
MemberDecorate 521(S) 0 Offset 0
MemberDecorate 521(S) 1 Offset 4
MemberDecorate 521(S) 2 Offset 8
Decorate 522 ArrayStride 16
Decorate 523(B1) Block
MemberDecorate 523(B1) 0 Offset 0
MemberDecorate 523(B1) 1 Offset 4
MemberDecorate 523(B1) 2 Offset 8
MemberDecorate 523(B1) 3 Offset 16
MemberDecorate 523(B1) 4 ColMajor
MemberDecorate 523(B1) 4 MatrixStride 16
MemberDecorate 523(B1) 4 Offset 48
MemberDecorate 523(B1) 5 ColMajor
MemberDecorate 523(B1) 5 MatrixStride 16
MemberDecorate 523(B1) 5 Offset 80
MemberDecorate 523(B1) 6 Offset 144
MemberDecorate 523(B1) 7 Offset 160
Decorate 525 Binding 0
Decorate 525 DescriptorSet 0
Decorate 526 ArrayStride 2
Decorate 527 ArrayStride 12
MemberDecorate 528(S) 0 Offset 0
MemberDecorate 528(S) 1 Offset 4
MemberDecorate 528(S) 2 Offset 8
Decorate 529 ArrayStride 16
Decorate 530(B2) BufferBlock
MemberDecorate 530(B2) 0 Offset 0
MemberDecorate 530(B2) 1 Offset 4
MemberDecorate 530(B2) 2 Offset 8
MemberDecorate 530(B2) 3 Offset 14
MemberDecorate 530(B2) 4 RowMajor
MemberDecorate 530(B2) 4 MatrixStride 4
MemberDecorate 530(B2) 4 Offset 20
MemberDecorate 530(B2) 5 RowMajor
MemberDecorate 530(B2) 5 MatrixStride 4
MemberDecorate 530(B2) 5 Offset 32
MemberDecorate 530(B2) 6 Offset 56
MemberDecorate 530(B2) 7 Offset 72
Decorate 532 Binding 0
Decorate 532 DescriptorSet 0
Decorate 533(sf16) SpecId 100
Decorate 534(sf) SpecId 101
Decorate 535(sd) SpecId 102
2: TypeVoid
3: TypeFunction 2
28: TypeFloat 16
29: TypeVector 28(float16_t) 2
30: TypePointer Function 29(f16vec2)
32:28(float16_t) Constant 16
33: TypeInt 32 0
34: 33(int) Constant 0
35: TypePointer Function 28(float16_t)
37:28(float16_t) Constant 46080
38:28(float16_t) Constant 10158
39: 29(f16vec2) ConstantComposite 37 38
56:28(float16_t) Constant 15360
62: TypeMatrix 29(f16vec2) 2
63: TypePointer Function 62
90: 33(int) Constant 1
109: TypeBool
110: TypePointer Function 109(bool)
151: TypeVector 28(float16_t) 3
152: TypePointer Function 151(f16vec3)
154: TypeVector 109(bool) 3
155: TypePointer Function 154(bvec3)
158:28(float16_t) Constant 0
159:151(f16vec3) ConstantComposite 158 158 158
160:151(f16vec3) ConstantComposite 56 56 56
164: TypeFloat 32
165: TypeVector 164(float) 3
166: TypePointer Function 165(fvec3)
172: TypeFloat 64
173: TypeVector 172(float64_t) 3
174: TypePointer Function 173(f64vec3)
179: TypeInt 32 1
180: TypeVector 179(int) 3
181: TypePointer Function 180(ivec3)
187: TypeVector 33(int) 3
188: TypePointer Function 187(ivec3)
194: TypeInt 64 1
195: TypeVector 194(int64_t) 3
196: TypePointer Function 195(i64vec3)
202: TypeInt 64 0
203: TypeVector 202(int64_t) 3
204: TypePointer Function 203(i64vec3)
210: TypeVector 28(float16_t) 4
211: TypePointer Function 210(f16vec4)
290(ResType): TypeStruct 151(f16vec3) 151(f16vec3)
363(ResType): TypeStruct 151(f16vec3) 180(ivec3)
370: TypePointer Function 33(int)
405: TypeMatrix 151(f16vec3) 2
406: TypePointer Function 405
424: TypeMatrix 29(f16vec2) 3
425: TypePointer Function 424
430: TypeMatrix 151(f16vec3) 3
431: TypePointer Function 430
435: TypeMatrix 210(f16vec4) 4
436: TypePointer Function 435
463: TypePointer Input 151(f16vec3)
464(if16v): 463(ptr) Variable Input
465: TypePointer Input 28(float16_t)
508: 179(int) Constant 1
515:28(float16_t) Constant 14336
516: 29(f16vec2) ConstantComposite 515 515
518: 33(int) Constant 2
519: TypeArray 28(float16_t) 518
520: TypeArray 405 518
521(S): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3)
522: TypeArray 521(S) 518
523(B1): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 519 405 520 521(S) 522
524: TypePointer Uniform 523(B1)
525: 524(ptr) Variable Uniform
526: TypeArray 28(float16_t) 518
527: TypeArray 405 518
528(S): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3)
529: TypeArray 528(S) 518
530(B2): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 526 405 527 528(S) 529
531: TypePointer Uniform 530(B2)
532: 531(ptr) Variable Uniform
533(sf16):28(float16_t) SpecConstant 12288
534(sf): 164(float) SpecConstant 1048576000
535(sd):172(float64_t) SpecConstant 0 1071644672
536(f16_to_f): 164(float) SpecConstantOp 115 533(sf16)
537: 164(float) SpecConstantOp 115 533(sf16)
538(f16_to_d):172(float64_t) SpecConstantOp 115 537
539(f_to_f16):28(float16_t) SpecConstantOp 115 534(sf)
540(d_to_f16):28(float16_t) SpecConstantOp 115 535(sd)
4(main): 2 Function None 3
5: Label
Return
FunctionEnd
6(literal(): 2 Function None 3
7: Label
31(f16v): 30(ptr) Variable Function
36: 35(ptr) AccessChain 31(f16v) 34
Store 36 32
40: 29(f16vec2) Load 31(f16v)
41: 29(f16vec2) FAdd 40 39
Store 31(f16v) 41
Return
FunctionEnd
8(operators(): 2 Function None 3
9: Label
42(f16v): 30(ptr) Variable Function
64(f16m): 63(ptr) Variable Function
87(f16): 35(ptr) Variable Function
111(b): 110(ptr) Variable Function
43: 29(f16vec2) Load 42(f16v)
44: 29(f16vec2) Load 42(f16v)
45: 29(f16vec2) FAdd 44 43
Store 42(f16v) 45
46: 29(f16vec2) Load 42(f16v)
47: 29(f16vec2) Load 42(f16v)
48: 29(f16vec2) FSub 47 46
Store 42(f16v) 48
49: 29(f16vec2) Load 42(f16v)
50: 29(f16vec2) Load 42(f16v)
51: 29(f16vec2) FMul 50 49
Store 42(f16v) 51
52: 29(f16vec2) Load 42(f16v)
53: 29(f16vec2) Load 42(f16v)
54: 29(f16vec2) FDiv 53 52
Store 42(f16v) 54
55: 29(f16vec2) Load 42(f16v)
57: 29(f16vec2) CompositeConstruct 56 56
58: 29(f16vec2) FAdd 55 57
Store 42(f16v) 58
59: 29(f16vec2) Load 42(f16v)
60: 29(f16vec2) CompositeConstruct 56 56
61: 29(f16vec2) FSub 59 60
Store 42(f16v) 61
65: 62 Load 64(f16m)
66: 29(f16vec2) CompositeConstruct 56 56
67: 29(f16vec2) CompositeExtract 65 0
68: 29(f16vec2) FAdd 67 66
69: 29(f16vec2) CompositeExtract 65 1
70: 29(f16vec2) FAdd 69 66
71: 62 CompositeConstruct 68 70
Store 64(f16m) 71
72: 62 Load 64(f16m)
73: 29(f16vec2) CompositeConstruct 56 56
74: 29(f16vec2) CompositeExtract 72 0
75: 29(f16vec2) FSub 74 73
76: 29(f16vec2) CompositeExtract 72 1
77: 29(f16vec2) FSub 76 73
78: 62 CompositeConstruct 75 77
Store 64(f16m) 78
79: 29(f16vec2) Load 42(f16v)
80: 29(f16vec2) FNegate 79
Store 42(f16v) 80
81: 62 Load 64(f16m)
82: 29(f16vec2) CompositeExtract 81 0
83: 29(f16vec2) FNegate 82
84: 29(f16vec2) CompositeExtract 81 1
85: 29(f16vec2) FNegate 84
86: 62 CompositeConstruct 83 85
Store 64(f16m) 86
88: 35(ptr) AccessChain 42(f16v) 34
89:28(float16_t) Load 88
91: 35(ptr) AccessChain 42(f16v) 90
92:28(float16_t) Load 91
93:28(float16_t) FAdd 89 92
Store 87(f16) 93
94: 35(ptr) AccessChain 42(f16v) 34
95:28(float16_t) Load 94
96: 35(ptr) AccessChain 42(f16v) 90
97:28(float16_t) Load 96
98:28(float16_t) FSub 95 97
Store 87(f16) 98
99: 35(ptr) AccessChain 42(f16v) 34
100:28(float16_t) Load 99
101: 35(ptr) AccessChain 42(f16v) 90
102:28(float16_t) Load 101
103:28(float16_t) FMul 100 102
Store 87(f16) 103
104: 35(ptr) AccessChain 42(f16v) 34
105:28(float16_t) Load 104
106: 35(ptr) AccessChain 42(f16v) 90
107:28(float16_t) Load 106
108:28(float16_t) FDiv 105 107
Store 87(f16) 108
112: 35(ptr) AccessChain 42(f16v) 34
113:28(float16_t) Load 112
114:28(float16_t) Load 87(f16)
115: 109(bool) FUnordNotEqual 113 114
Store 111(b) 115
116: 35(ptr) AccessChain 42(f16v) 90
117:28(float16_t) Load 116
118:28(float16_t) Load 87(f16)
119: 109(bool) FOrdEqual 117 118
Store 111(b) 119
120: 35(ptr) AccessChain 42(f16v) 34
121:28(float16_t) Load 120
122:28(float16_t) Load 87(f16)
123: 109(bool) FOrdGreaterThan 121 122
Store 111(b) 123
124: 35(ptr) AccessChain 42(f16v) 90
125:28(float16_t) Load 124
126:28(float16_t) Load 87(f16)
127: 109(bool) FOrdLessThan 125 126
Store 111(b) 127
128: 35(ptr) AccessChain 42(f16v) 34
129:28(float16_t) Load 128
130:28(float16_t) Load 87(f16)
131: 109(bool) FOrdGreaterThanEqual 129 130
Store 111(b) 131
132: 35(ptr) AccessChain 42(f16v) 90
133:28(float16_t) Load 132
134:28(float16_t) Load 87(f16)
135: 109(bool) FOrdLessThanEqual 133 134
Store 111(b) 135
136: 29(f16vec2) Load 42(f16v)
137:28(float16_t) Load 87(f16)
138: 29(f16vec2) VectorTimesScalar 136 137
Store 42(f16v) 138
139: 62 Load 64(f16m)
140:28(float16_t) Load 87(f16)
141: 62 MatrixTimesScalar 139 140
Store 64(f16m) 141
142: 62 Load 64(f16m)
143: 29(f16vec2) Load 42(f16v)
144: 29(f16vec2) MatrixTimesVector 142 143
Store 42(f16v) 144
145: 29(f16vec2) Load 42(f16v)
146: 62 Load 64(f16m)
147: 29(f16vec2) VectorTimesMatrix 145 146
Store 42(f16v) 147
148: 62 Load 64(f16m)
149: 62 Load 64(f16m)
150: 62 MatrixTimesMatrix 148 149
Store 64(f16m) 150
Return
FunctionEnd
10(typeCast(): 2 Function None 3
11: Label
153(f16v): 152(ptr) Variable Function
156(bv): 155(ptr) Variable Function
167(fv): 166(ptr) Variable Function
175(dv): 174(ptr) Variable Function
182(iv): 181(ptr) Variable Function
189(uv): 188(ptr) Variable Function
197(i64v): 196(ptr) Variable Function
205(u64v): 204(ptr) Variable Function
157: 154(bvec3) Load 156(bv)
161:151(f16vec3) Select 157 160 159
Store 153(f16v) 161
162:151(f16vec3) Load 153(f16v)
163: 154(bvec3) FUnordNotEqual 162 159
Store 156(bv) 163
168: 165(fvec3) Load 167(fv)
169:151(f16vec3) FConvert 168
Store 153(f16v) 169
170:151(f16vec3) Load 153(f16v)
171: 165(fvec3) FConvert 170
Store 167(fv) 171
176:173(f64vec3) Load 175(dv)
177:151(f16vec3) FConvert 176
Store 153(f16v) 177
178:173(f64vec3) Load 175(dv)
Store 175(dv) 178
183: 180(ivec3) Load 182(iv)
184:151(f16vec3) ConvertSToF 183
Store 153(f16v) 184
185:151(f16vec3) Load 153(f16v)
186: 180(ivec3) ConvertFToS 185
Store 182(iv) 186
190: 187(ivec3) Load 189(uv)
191:151(f16vec3) ConvertUToF 190
Store 153(f16v) 191
192:151(f16vec3) Load 153(f16v)
193: 187(ivec3) ConvertFToU 192
Store 189(uv) 193
198:195(i64vec3) Load 197(i64v)
199:151(f16vec3) ConvertSToF 198
Store 153(f16v) 199
200:151(f16vec3) Load 153(f16v)
201:195(i64vec3) ConvertFToS 200
Store 197(i64v) 201
206:203(i64vec3) Load 205(u64v)
207:151(f16vec3) ConvertUToF 206
Store 153(f16v) 207
208:151(f16vec3) Load 153(f16v)
209:203(i64vec3) ConvertFToU 208
Store 205(u64v) 209
Return
FunctionEnd
12(builtinAngleTrigFuncs(): 2 Function None 3
13: Label
212(f16v2): 211(ptr) Variable Function
213(f16v1): 211(ptr) Variable Function
214:210(f16vec4) Load 213(f16v1)
215:210(f16vec4) ExtInst 1(GLSL.std.450) 11(Radians) 214
Store 212(f16v2) 215
216:210(f16vec4) Load 213(f16v1)
217:210(f16vec4) ExtInst 1(GLSL.std.450) 12(Degrees) 216
Store 212(f16v2) 217
218:210(f16vec4) Load 213(f16v1)
219:210(f16vec4) ExtInst 1(GLSL.std.450) 13(Sin) 218
Store 212(f16v2) 219
220:210(f16vec4) Load 213(f16v1)
221:210(f16vec4) ExtInst 1(GLSL.std.450) 14(Cos) 220
Store 212(f16v2) 221
222:210(f16vec4) Load 213(f16v1)
223:210(f16vec4) ExtInst 1(GLSL.std.450) 15(Tan) 222
Store 212(f16v2) 223
224:210(f16vec4) Load 213(f16v1)
225:210(f16vec4) ExtInst 1(GLSL.std.450) 16(Asin) 224
Store 212(f16v2) 225
226:210(f16vec4) Load 213(f16v1)
227:210(f16vec4) ExtInst 1(GLSL.std.450) 17(Acos) 226
Store 212(f16v2) 227
228:210(f16vec4) Load 213(f16v1)
229:210(f16vec4) Load 212(f16v2)
230:210(f16vec4) ExtInst 1(GLSL.std.450) 25(Atan2) 228 229
Store 212(f16v2) 230
231:210(f16vec4) Load 213(f16v1)
232:210(f16vec4) ExtInst 1(GLSL.std.450) 18(Atan) 231
Store 212(f16v2) 232
233:210(f16vec4) Load 213(f16v1)
234:210(f16vec4) ExtInst 1(GLSL.std.450) 19(Sinh) 233
Store 212(f16v2) 234
235:210(f16vec4) Load 213(f16v1)
236:210(f16vec4) ExtInst 1(GLSL.std.450) 20(Cosh) 235
Store 212(f16v2) 236
237:210(f16vec4) Load 213(f16v1)
238:210(f16vec4) ExtInst 1(GLSL.std.450) 21(Tanh) 237
Store 212(f16v2) 238
239:210(f16vec4) Load 213(f16v1)
240:210(f16vec4) ExtInst 1(GLSL.std.450) 22(Asinh) 239
Store 212(f16v2) 240
241:210(f16vec4) Load 213(f16v1)
242:210(f16vec4) ExtInst 1(GLSL.std.450) 23(Acosh) 241
Store 212(f16v2) 242
243:210(f16vec4) Load 213(f16v1)
244:210(f16vec4) ExtInst 1(GLSL.std.450) 24(Atanh) 243
Store 212(f16v2) 244
Return
FunctionEnd
14(builtinExpFuncs(): 2 Function None 3
15: Label
245(f16v2): 30(ptr) Variable Function
246(f16v1): 30(ptr) Variable Function
247: 29(f16vec2) Load 246(f16v1)
248: 29(f16vec2) Load 245(f16v2)
249: 29(f16vec2) ExtInst 1(GLSL.std.450) 26(Pow) 247 248
Store 245(f16v2) 249
250: 29(f16vec2) Load 246(f16v1)
251: 29(f16vec2) ExtInst 1(GLSL.std.450) 27(Exp) 250
Store 245(f16v2) 251
252: 29(f16vec2) Load 246(f16v1)
253: 29(f16vec2) ExtInst 1(GLSL.std.450) 28(Log) 252
Store 245(f16v2) 253
254: 29(f16vec2) Load 246(f16v1)
255: 29(f16vec2) ExtInst 1(GLSL.std.450) 29(Exp2) 254
Store 245(f16v2) 255
256: 29(f16vec2) Load 246(f16v1)
257: 29(f16vec2) ExtInst 1(GLSL.std.450) 30(Log2) 256
Store 245(f16v2) 257
258: 29(f16vec2) Load 246(f16v1)
259: 29(f16vec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 258
Store 245(f16v2) 259
260: 29(f16vec2) Load 246(f16v1)
261: 29(f16vec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 260
Store 245(f16v2) 261
Return
FunctionEnd
16(builtinCommonFuncs(): 2 Function None 3
17: Label
262(f16v2): 152(ptr) Variable Function
263(f16v1): 152(ptr) Variable Function
284(f16): 35(ptr) Variable Function
288(f16v3): 152(ptr) Variable Function
331(bv): 155(ptr) Variable Function
352(b): 110(ptr) Variable Function
362(iv): 181(ptr) Variable Function
264:151(f16vec3) Load 263(f16v1)
265:151(f16vec3) ExtInst 1(GLSL.std.450) 4(FAbs) 264
Store 262(f16v2) 265
266:151(f16vec3) Load 263(f16v1)
267:151(f16vec3) ExtInst 1(GLSL.std.450) 6(FSign) 266
Store 262(f16v2) 267
268:151(f16vec3) Load 263(f16v1)
269:151(f16vec3) ExtInst 1(GLSL.std.450) 8(Floor) 268
Store 262(f16v2) 269
270:151(f16vec3) Load 263(f16v1)
271:151(f16vec3) ExtInst 1(GLSL.std.450) 3(Trunc) 270
Store 262(f16v2) 271
272:151(f16vec3) Load 263(f16v1)
273:151(f16vec3) ExtInst 1(GLSL.std.450) 1(Round) 272
Store 262(f16v2) 273
274:151(f16vec3) Load 263(f16v1)
275:151(f16vec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 274
Store 262(f16v2) 275
276:151(f16vec3) Load 263(f16v1)
277:151(f16vec3) ExtInst 1(GLSL.std.450) 9(Ceil) 276
Store 262(f16v2) 277
278:151(f16vec3) Load 263(f16v1)
279:151(f16vec3) ExtInst 1(GLSL.std.450) 10(Fract) 278
Store 262(f16v2) 279
280:151(f16vec3) Load 263(f16v1)
281:151(f16vec3) Load 262(f16v2)
282:151(f16vec3) FMod 280 281
Store 262(f16v2) 282
283:151(f16vec3) Load 263(f16v1)
285:28(float16_t) Load 284(f16)
286:151(f16vec3) CompositeConstruct 285 285 285
287:151(f16vec3) FMod 283 286
Store 262(f16v2) 287
289:151(f16vec3) Load 263(f16v1)
291:290(ResType) ExtInst 1(GLSL.std.450) 36(ModfStruct) 289
292:151(f16vec3) CompositeExtract 291 1
Store 262(f16v2) 292
293:151(f16vec3) CompositeExtract 291 0
Store 288(f16v3) 293
294:151(f16vec3) Load 263(f16v1)
295:151(f16vec3) Load 262(f16v2)
296:151(f16vec3) ExtInst 1(GLSL.std.450) 37(FMin) 294 295
Store 288(f16v3) 296
297:151(f16vec3) Load 263(f16v1)
298:28(float16_t) Load 284(f16)
299:151(f16vec3) CompositeConstruct 298 298 298
300:151(f16vec3) ExtInst 1(GLSL.std.450) 37(FMin) 297 299
Store 288(f16v3) 300
301:151(f16vec3) Load 263(f16v1)
302:151(f16vec3) Load 262(f16v2)
303:151(f16vec3) ExtInst 1(GLSL.std.450) 40(FMax) 301 302
Store 288(f16v3) 303
304:151(f16vec3) Load 263(f16v1)
305:28(float16_t) Load 284(f16)
306:151(f16vec3) CompositeConstruct 305 305 305
307:151(f16vec3) ExtInst 1(GLSL.std.450) 40(FMax) 304 306
Store 288(f16v3) 307
308:151(f16vec3) Load 263(f16v1)
309:28(float16_t) Load 284(f16)
310: 35(ptr) AccessChain 262(f16v2) 34
311:28(float16_t) Load 310
312:151(f16vec3) CompositeConstruct 309 309 309
313:151(f16vec3) CompositeConstruct 311 311 311
314:151(f16vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 308 312 313
Store 288(f16v3) 314
315:151(f16vec3) Load 263(f16v1)
316:151(f16vec3) Load 262(f16v2)
317:28(float16_t) Load 284(f16)
318:151(f16vec3) CompositeConstruct 317 317 317
319:151(f16vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 315 316 318
Store 288(f16v3) 319
320:151(f16vec3) Load 263(f16v1)
321:151(f16vec3) Load 262(f16v2)
322:28(float16_t) Load 284(f16)
323:151(f16vec3) CompositeConstruct 322 322 322
324:151(f16vec3) ExtInst 1(GLSL.std.450) 46(FMix) 320 321 323
Store 288(f16v3) 324
325:151(f16vec3) Load 263(f16v1)
326:151(f16vec3) Load 262(f16v2)
327:151(f16vec3) Load 288(f16v3)
328:151(f16vec3) ExtInst 1(GLSL.std.450) 46(FMix) 325 326 327
Store 288(f16v3) 328
329:151(f16vec3) Load 263(f16v1)
330:151(f16vec3) Load 262(f16v2)
332: 154(bvec3) Load 331(bv)
333:151(f16vec3) Select 332 330 329
Store 288(f16v3) 333
334:151(f16vec3) Load 263(f16v1)
335:151(f16vec3) Load 262(f16v2)
336:151(f16vec3) ExtInst 1(GLSL.std.450) 48(Step) 334 335
Store 288(f16v3) 336
337:28(float16_t) Load 284(f16)
338:151(f16vec3) Load 288(f16v3)
339:151(f16vec3) CompositeConstruct 337 337 337
340:151(f16vec3) ExtInst 1(GLSL.std.450) 48(Step) 339 338
Store 288(f16v3) 340
341:151(f16vec3) Load 263(f16v1)
342:151(f16vec3) Load 262(f16v2)
343:151(f16vec3) Load 288(f16v3)
344:151(f16vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 341 342 343
Store 288(f16v3) 344
345:28(float16_t) Load 284(f16)
346: 35(ptr) AccessChain 263(f16v1) 34
347:28(float16_t) Load 346
348:151(f16vec3) Load 262(f16v2)
349:151(f16vec3) CompositeConstruct 345 345 345
350:151(f16vec3) CompositeConstruct 347 347 347
351:151(f16vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 349 350 348
Store 288(f16v3) 351
353:28(float16_t) Load 284(f16)
354: 109(bool) IsNan 353
Store 352(b) 354
355:151(f16vec3) Load 263(f16v1)
356: 154(bvec3) IsInf 355
Store 331(bv) 356
357:151(f16vec3) Load 263(f16v1)
358:151(f16vec3) Load 262(f16v2)
359:151(f16vec3) Load 288(f16v3)
360:151(f16vec3) ExtInst 1(GLSL.std.450) 50(Fma) 357 358 359
Store 288(f16v3) 360
361:151(f16vec3) Load 263(f16v1)
364:363(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 361
365: 180(ivec3) CompositeExtract 364 1
Store 362(iv) 365
366:151(f16vec3) CompositeExtract 364 0
Store 262(f16v2) 366
367:151(f16vec3) Load 263(f16v1)
368: 180(ivec3) Load 362(iv)
369:151(f16vec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 367 368
Store 262(f16v2) 369
Return
FunctionEnd
18(builtinPackUnpackFuncs(): 2 Function None 3
19: Label
371(u): 370(ptr) Variable Function
372(f16v): 30(ptr) Variable Function
373: 29(f16vec2) Load 372(f16v)
374: 33(int) Bitcast 373
Store 371(u) 374
375: 33(int) Load 371(u)
376: 29(f16vec2) Bitcast 375
Store 372(f16v) 376
Return
FunctionEnd
20(builtinGeometryFuncs(): 2 Function None 3
21: Label
377(f16): 35(ptr) Variable Function
378(f16v1): 152(ptr) Variable Function
382(f16v2): 152(ptr) Variable Function
388(f16v3): 152(ptr) Variable Function
379:151(f16vec3) Load 378(f16v1)
380:28(float16_t) ExtInst 1(GLSL.std.450) 66(Length) 379
Store 377(f16) 380
381:151(f16vec3) Load 378(f16v1)
383:151(f16vec3) Load 382(f16v2)
384:28(float16_t) ExtInst 1(GLSL.std.450) 67(Distance) 381 383
Store 377(f16) 384
385:151(f16vec3) Load 378(f16v1)
386:151(f16vec3) Load 382(f16v2)
387:28(float16_t) Dot 385 386
Store 377(f16) 387
389:151(f16vec3) Load 378(f16v1)
390:151(f16vec3) Load 382(f16v2)
391:151(f16vec3) ExtInst 1(GLSL.std.450) 68(Cross) 389 390
Store 388(f16v3) 391
392:151(f16vec3) Load 378(f16v1)
393:151(f16vec3) ExtInst 1(GLSL.std.450) 69(Normalize) 392
Store 382(f16v2) 393
394:151(f16vec3) Load 378(f16v1)
395:151(f16vec3) Load 382(f16v2)
396:151(f16vec3) Load 388(f16v3)
397:151(f16vec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 394 395 396
Store 388(f16v3) 397
398:151(f16vec3) Load 378(f16v1)
399:151(f16vec3) Load 382(f16v2)
400:151(f16vec3) ExtInst 1(GLSL.std.450) 71(Reflect) 398 399
Store 388(f16v3) 400
401:151(f16vec3) Load 378(f16v1)
402:151(f16vec3) Load 382(f16v2)
403:28(float16_t) Load 377(f16)
404:151(f16vec3) ExtInst 1(GLSL.std.450) 72(Refract) 401 402 403
Store 388(f16v3) 404
Return
FunctionEnd
22(builtinMatrixFuncs(): 2 Function None 3
23: Label
407(f16m3): 406(ptr) Variable Function
408(f16m1): 406(ptr) Variable Function
410(f16m2): 406(ptr) Variable Function
419(f16v1): 152(ptr) Variable Function
421(f16v2): 30(ptr) Variable Function
426(f16m4): 425(ptr) Variable Function
429(f16): 35(ptr) Variable Function
432(f16m5): 431(ptr) Variable Function
437(f16m6): 436(ptr) Variable Function
438(f16m7): 436(ptr) Variable Function
409: 405 Load 408(f16m1)
411: 405 Load 410(f16m2)
412:151(f16vec3) CompositeExtract 409 0
413:151(f16vec3) CompositeExtract 411 0
414:151(f16vec3) FMul 412 413
415:151(f16vec3) CompositeExtract 409 1
416:151(f16vec3) CompositeExtract 411 1
417:151(f16vec3) FMul 415 416
418: 405 CompositeConstruct 414 417
Store 407(f16m3) 418
420:151(f16vec3) Load 419(f16v1)
422: 29(f16vec2) Load 421(f16v2)
423: 405 OuterProduct 420 422
Store 408(f16m1) 423
427: 405 Load 408(f16m1)
428: 424 Transpose 427
Store 426(f16m4) 428
433: 430 Load 432(f16m5)
434:28(float16_t) ExtInst 1(GLSL.std.450) 33(Determinant) 433
Store 429(f16) 434
439: 435 Load 438(f16m7)
440: 435 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 439
Store 437(f16m6) 440
Return
FunctionEnd
24(builtinVecRelFuncs(): 2 Function None 3
25: Label
441(bv): 155(ptr) Variable Function
442(f16v1): 152(ptr) Variable Function
444(f16v2): 152(ptr) Variable Function
443:151(f16vec3) Load 442(f16v1)
445:151(f16vec3) Load 444(f16v2)
446: 154(bvec3) FOrdLessThan 443 445
Store 441(bv) 446
447:151(f16vec3) Load 442(f16v1)
448:151(f16vec3) Load 444(f16v2)
449: 154(bvec3) FOrdLessThanEqual 447 448
Store 441(bv) 449
450:151(f16vec3) Load 442(f16v1)
451:151(f16vec3) Load 444(f16v2)
452: 154(bvec3) FOrdGreaterThan 450 451
Store 441(bv) 452
453:151(f16vec3) Load 442(f16v1)
454:151(f16vec3) Load 444(f16v2)
455: 154(bvec3) FOrdGreaterThanEqual 453 454
Store 441(bv) 455
456:151(f16vec3) Load 442(f16v1)
457:151(f16vec3) Load 444(f16v2)
458: 154(bvec3) FOrdEqual 456 457
Store 441(bv) 458
459:151(f16vec3) Load 442(f16v1)
460:151(f16vec3) Load 444(f16v2)
461: 154(bvec3) FUnordNotEqual 459 460
Store 441(bv) 461
Return
FunctionEnd
26(builtinFragProcFuncs(): 2 Function None 3
27: Label
462(f16v): 152(ptr) Variable Function
466: 465(ptr) AccessChain 464(if16v) 34
467:28(float16_t) Load 466
468:28(float16_t) DPdx 467
469: 35(ptr) AccessChain 462(f16v) 34
Store 469 468
470: 465(ptr) AccessChain 464(if16v) 90
471:28(float16_t) Load 470
472:28(float16_t) DPdy 471
473: 35(ptr) AccessChain 462(f16v) 90
Store 473 472
474:151(f16vec3) Load 464(if16v)
475: 29(f16vec2) VectorShuffle 474 474 0 1
476: 29(f16vec2) DPdxFine 475
477: 35(ptr) AccessChain 462(f16v) 34
478:28(float16_t) CompositeExtract 476 0
Store 477 478
479: 35(ptr) AccessChain 462(f16v) 90
480:28(float16_t) CompositeExtract 476 1
Store 479 480
481:151(f16vec3) Load 464(if16v)
482: 29(f16vec2) VectorShuffle 481 481 0 1
483: 29(f16vec2) DPdyFine 482
484: 35(ptr) AccessChain 462(f16v) 34
485:28(float16_t) CompositeExtract 483 0
Store 484 485
486: 35(ptr) AccessChain 462(f16v) 90
487:28(float16_t) CompositeExtract 483 1
Store 486 487
488:151(f16vec3) Load 464(if16v)
489:151(f16vec3) DPdxCoarse 488
Store 462(f16v) 489
490:151(f16vec3) Load 464(if16v)
491:151(f16vec3) DPdxCoarse 490
Store 462(f16v) 491
492: 465(ptr) AccessChain 464(if16v) 34
493:28(float16_t) Load 492
494:28(float16_t) Fwidth 493
495: 35(ptr) AccessChain 462(f16v) 34
Store 495 494
496:151(f16vec3) Load 464(if16v)
497: 29(f16vec2) VectorShuffle 496 496 0 1
498: 29(f16vec2) FwidthFine 497
499: 35(ptr) AccessChain 462(f16v) 34
500:28(float16_t) CompositeExtract 498 0
Store 499 500
501: 35(ptr) AccessChain 462(f16v) 90
502:28(float16_t) CompositeExtract 498 1
Store 501 502
503:151(f16vec3) Load 464(if16v)
504:151(f16vec3) FwidthCoarse 503
Store 462(f16v) 504
505: 465(ptr) AccessChain 464(if16v) 34
506:28(float16_t) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 505
507: 35(ptr) AccessChain 462(f16v) 34
Store 507 506
509:151(f16vec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 464(if16v) 508
510: 29(f16vec2) VectorShuffle 509 509 0 1
511: 35(ptr) AccessChain 462(f16v) 34
512:28(float16_t) CompositeExtract 510 0
Store 511 512
513: 35(ptr) AccessChain 462(f16v) 90
514:28(float16_t) CompositeExtract 510 1
Store 513 514
517:151(f16vec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 464(if16v) 516
Store 462(f16v) 517
Return
FunctionEnd