blob: 68e8f1c7db7d3905b7ee6301081dcc18e7b49ecb [file] [log] [blame]
spv.float64.frag
Validation failed
// Module Version 10300
// Generated by (magic number): 8000b
// Id's are bound by 485
Capability Shader
Capability Float16
Capability Float64
Capability Int64
Capability Int16
Capability Int8
Capability DerivativeControl
Capability InterpolationFunction
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 414
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_EXT_shader_explicit_arithmetic_types"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float16"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float32"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float64"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int16"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int32"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int64"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int8"
Name 4 "main"
Name 6 "literal("
Name 8 "operators("
Name 10 "typeCast("
Name 12 "builtinTranscendentalFuncs("
Name 14 "builtinCommonFuncs("
Name 16 "builtinGeometryFuncs("
Name 18 "builtinMatrixFuncs("
Name 20 "builtinVecRelFuncs("
Name 22 "builtinFragProcFuncs("
Name 27 "f64v"
Name 38 "f64v"
Name 60 "f64m"
Name 83 "f64"
Name 107 "b"
Name 149 "f64v"
Name 152 "bv"
Name 163 "f16v"
Name 171 "i8v"
Name 177 "i16v"
Name 183 "i32v"
Name 189 "i64v"
Name 195 "u8v"
Name 201 "u16v"
Name 206 "u32v"
Name 212 "u64v"
Name 215 "f64v2"
Name 216 "f64v1"
Name 221 "f64v2"
Name 222 "f64v1"
Name 243 "f64"
Name 247 "f64v3"
Name 287 "bv"
Name 308 "b"
Name 318 "iv"
Name 319 "ResType"
Name 326 "f64"
Name 327 "f64v1"
Name 331 "f64v2"
Name 337 "f64v3"
Name 356 "f64m3"
Name 357 "f64m1"
Name 359 "f64m2"
Name 368 "f64v1"
Name 370 "f64v2"
Name 375 "f64m4"
Name 378 "f64"
Name 381 "f64m5"
Name 387 "f64m6"
Name 388 "f64m7"
Name 391 "bv"
Name 392 "f64v1"
Name 394 "f64v2"
Name 412 "f64v"
Name 414 "if64v"
Name 471 "S"
MemberName 471(S) 0 "x"
MemberName 471(S) 1 "y"
MemberName 471(S) 2 "z"
Name 473 "B1"
MemberName 473(B1) 0 "a"
MemberName 473(B1) 1 "b"
MemberName 473(B1) 2 "c"
MemberName 473(B1) 3 "d"
MemberName 473(B1) 4 "e"
MemberName 473(B1) 5 "f"
MemberName 473(B1) 6 "g"
MemberName 473(B1) 7 "h"
Name 475 ""
Name 476 "sf16"
Name 478 "sf"
Name 479 "sd"
Name 480 "f16_to_f"
Name 482 "f16_to_d"
Name 483 "f_to_f16"
Name 484 "d_to_f16"
Decorate 414(if64v) Flat
Decorate 414(if64v) Location 0
Decorate 469 ArrayStride 16
Decorate 470 ArrayStride 64
MemberDecorate 471(S) 0 Offset 0
MemberDecorate 471(S) 1 Offset 16
MemberDecorate 471(S) 2 Offset 32
Decorate 472 ArrayStride 64
MemberDecorate 473(B1) 0 Offset 0
MemberDecorate 473(B1) 1 Offset 16
MemberDecorate 473(B1) 2 Offset 32
MemberDecorate 473(B1) 3 Offset 64
MemberDecorate 473(B1) 4 ColMajor
MemberDecorate 473(B1) 4 Offset 96
MemberDecorate 473(B1) 4 MatrixStride 32
MemberDecorate 473(B1) 5 ColMajor
MemberDecorate 473(B1) 5 Offset 160
MemberDecorate 473(B1) 5 MatrixStride 32
MemberDecorate 473(B1) 6 Offset 288
MemberDecorate 473(B1) 7 Offset 352
Decorate 473(B1) Block
Decorate 475 DescriptorSet 0
Decorate 475 Binding 0
Decorate 476(sf16) SpecId 100
Decorate 478(sf) SpecId 101
Decorate 479(sd) SpecId 102
2: TypeVoid
3: TypeFunction 2
24: TypeFloat 64
25: TypeVector 24(float64_t) 2
26: TypePointer Function 25(f64vec2)
28:24(float64_t) Constant 2696277389 1051772663
29: TypeInt 32 0
30: 29(int) Constant 0
31: TypePointer Function 24(float64_t)
33:24(float64_t) Constant 0 3218079744
34:24(float64_t) Constant 3951369912 1067366481
35: 25(f64vec2) ConstantComposite 33 34
52:24(float64_t) Constant 0 1072693248
58: TypeMatrix 25(f64vec2) 2
59: TypePointer Function 58
86: 29(int) Constant 1
105: TypeBool
106: TypePointer Function 105(bool)
147: TypeVector 24(float64_t) 3
148: TypePointer Function 147(f64vec3)
150: TypeVector 105(bool) 3
151: TypePointer Function 150(bvec3)
154:24(float64_t) Constant 0 0
155:147(f64vec3) ConstantComposite 154 154 154
156:147(f64vec3) ConstantComposite 52 52 52
160: TypeFloat 16
161: TypeVector 160(float16_t) 3
162: TypePointer Function 161(f16vec3)
168: TypeInt 8 1
169: TypeVector 168(int8_t) 3
170: TypePointer Function 169(i8vec3)
174: TypeInt 16 1
175: TypeVector 174(int16_t) 3
176: TypePointer Function 175(i16vec3)
180: TypeInt 32 1
181: TypeVector 180(int) 3
182: TypePointer Function 181(ivec3)
186: TypeInt 64 1
187: TypeVector 186(int64_t) 3
188: TypePointer Function 187(i64vec3)
192: TypeInt 8 0
193: TypeVector 192(int8_t) 3
194: TypePointer Function 193(i8vec3)
198: TypeInt 16 0
199: TypeVector 198(int16_t) 3
200: TypePointer Function 199(i16vec3)
204: TypeVector 29(int) 3
205: TypePointer Function 204(ivec3)
209: TypeInt 64 0
210: TypeVector 209(int64_t) 3
211: TypePointer Function 210(i64vec3)
319(ResType): TypeStruct 147(f64vec3) 181(ivec3)
354: TypeMatrix 147(f64vec3) 2
355: TypePointer Function 354
373: TypeMatrix 25(f64vec2) 3
374: TypePointer Function 373
379: TypeMatrix 147(f64vec3) 3
380: TypePointer Function 379
384: TypeVector 24(float64_t) 4
385: TypeMatrix 384(f64vec4) 4
386: TypePointer Function 385
413: TypePointer Input 147(f64vec3)
414(if64v): 413(ptr) Variable Input
415: TypePointer Input 24(float64_t)
458: 180(int) Constant 1
465:24(float64_t) Constant 0 1071644672
466: 25(f64vec2) ConstantComposite 465 465
468: 29(int) Constant 2
469: TypeArray 24(float64_t) 468
470: TypeArray 354 468
471(S): TypeStruct 24(float64_t) 25(f64vec2) 147(f64vec3)
472: TypeArray 471(S) 468
473(B1): TypeStruct 24(float64_t) 25(f64vec2) 147(f64vec3) 469 354 470 471(S) 472
474: TypePointer Uniform 473(B1)
475: 474(ptr) Variable Uniform
476(sf16):160(float16_t) SpecConstant 12288
477: TypeFloat 32
478(sf): 477(float) SpecConstant 1048576000
479(sd):24(float64_t) SpecConstant 0 1071644672
480(f16_to_f): 477(float) SpecConstantOp 115 476(sf16)
481: 477(float) SpecConstantOp 115 476(sf16)
482(f16_to_d):24(float64_t) SpecConstantOp 115 481
483(f_to_f16):160(float16_t) SpecConstantOp 115 478(sf)
484(d_to_f16):160(float16_t) SpecConstantOp 115 479(sd)
4(main): 2 Function None 3
5: Label
Return
FunctionEnd
6(literal(): 2 Function None 3
7: Label
27(f64v): 26(ptr) Variable Function
32: 31(ptr) AccessChain 27(f64v) 30
Store 32 28
36: 25(f64vec2) Load 27(f64v)
37: 25(f64vec2) FAdd 36 35
Store 27(f64v) 37
Return
FunctionEnd
8(operators(): 2 Function None 3
9: Label
38(f64v): 26(ptr) Variable Function
60(f64m): 59(ptr) Variable Function
83(f64): 31(ptr) Variable Function
107(b): 106(ptr) Variable Function
39: 25(f64vec2) Load 38(f64v)
40: 25(f64vec2) Load 38(f64v)
41: 25(f64vec2) FAdd 40 39
Store 38(f64v) 41
42: 25(f64vec2) Load 38(f64v)
43: 25(f64vec2) Load 38(f64v)
44: 25(f64vec2) FSub 43 42
Store 38(f64v) 44
45: 25(f64vec2) Load 38(f64v)
46: 25(f64vec2) Load 38(f64v)
47: 25(f64vec2) FMul 46 45
Store 38(f64v) 47
48: 25(f64vec2) Load 38(f64v)
49: 25(f64vec2) Load 38(f64v)
50: 25(f64vec2) FDiv 49 48
Store 38(f64v) 50
51: 25(f64vec2) Load 38(f64v)
53: 25(f64vec2) CompositeConstruct 52 52
54: 25(f64vec2) FAdd 51 53
Store 38(f64v) 54
55: 25(f64vec2) Load 38(f64v)
56: 25(f64vec2) CompositeConstruct 52 52
57: 25(f64vec2) FSub 55 56
Store 38(f64v) 57
61: 58 Load 60(f64m)
62: 25(f64vec2) CompositeConstruct 52 52
63: 25(f64vec2) CompositeExtract 61 0
64: 25(f64vec2) FAdd 63 62
65: 25(f64vec2) CompositeExtract 61 1
66: 25(f64vec2) FAdd 65 62
67: 58 CompositeConstruct 64 66
Store 60(f64m) 67
68: 58 Load 60(f64m)
69: 25(f64vec2) CompositeConstruct 52 52
70: 25(f64vec2) CompositeExtract 68 0
71: 25(f64vec2) FSub 70 69
72: 25(f64vec2) CompositeExtract 68 1
73: 25(f64vec2) FSub 72 69
74: 58 CompositeConstruct 71 73
Store 60(f64m) 74
75: 25(f64vec2) Load 38(f64v)
76: 25(f64vec2) FNegate 75
Store 38(f64v) 76
77: 58 Load 60(f64m)
78: 25(f64vec2) CompositeExtract 77 0
79: 25(f64vec2) FNegate 78
80: 25(f64vec2) CompositeExtract 77 1
81: 25(f64vec2) FNegate 80
82: 58 CompositeConstruct 79 81
Store 60(f64m) 82
84: 31(ptr) AccessChain 38(f64v) 30
85:24(float64_t) Load 84
87: 31(ptr) AccessChain 38(f64v) 86
88:24(float64_t) Load 87
89:24(float64_t) FAdd 85 88
Store 83(f64) 89
90: 31(ptr) AccessChain 38(f64v) 30
91:24(float64_t) Load 90
92: 31(ptr) AccessChain 38(f64v) 86
93:24(float64_t) Load 92
94:24(float64_t) FSub 91 93
Store 83(f64) 94
95: 31(ptr) AccessChain 38(f64v) 30
96:24(float64_t) Load 95
97: 31(ptr) AccessChain 38(f64v) 86
98:24(float64_t) Load 97
99:24(float64_t) FMul 96 98
Store 83(f64) 99
100: 31(ptr) AccessChain 38(f64v) 30
101:24(float64_t) Load 100
102: 31(ptr) AccessChain 38(f64v) 86
103:24(float64_t) Load 102
104:24(float64_t) FDiv 101 103
Store 83(f64) 104
108: 31(ptr) AccessChain 38(f64v) 30
109:24(float64_t) Load 108
110:24(float64_t) Load 83(f64)
111: 105(bool) FUnordNotEqual 109 110
Store 107(b) 111
112: 31(ptr) AccessChain 38(f64v) 86
113:24(float64_t) Load 112
114:24(float64_t) Load 83(f64)
115: 105(bool) FOrdEqual 113 114
Store 107(b) 115
116: 31(ptr) AccessChain 38(f64v) 30
117:24(float64_t) Load 116
118:24(float64_t) Load 83(f64)
119: 105(bool) FOrdGreaterThan 117 118
Store 107(b) 119
120: 31(ptr) AccessChain 38(f64v) 86
121:24(float64_t) Load 120
122:24(float64_t) Load 83(f64)
123: 105(bool) FOrdLessThan 121 122
Store 107(b) 123
124: 31(ptr) AccessChain 38(f64v) 30
125:24(float64_t) Load 124
126:24(float64_t) Load 83(f64)
127: 105(bool) FOrdGreaterThanEqual 125 126
Store 107(b) 127
128: 31(ptr) AccessChain 38(f64v) 86
129:24(float64_t) Load 128
130:24(float64_t) Load 83(f64)
131: 105(bool) FOrdLessThanEqual 129 130
Store 107(b) 131
132: 25(f64vec2) Load 38(f64v)
133:24(float64_t) Load 83(f64)
134: 25(f64vec2) VectorTimesScalar 132 133
Store 38(f64v) 134
135: 58 Load 60(f64m)
136:24(float64_t) Load 83(f64)
137: 58 MatrixTimesScalar 135 136
Store 60(f64m) 137
138: 58 Load 60(f64m)
139: 25(f64vec2) Load 38(f64v)
140: 25(f64vec2) MatrixTimesVector 138 139
Store 38(f64v) 140
141: 25(f64vec2) Load 38(f64v)
142: 58 Load 60(f64m)
143: 25(f64vec2) VectorTimesMatrix 141 142
Store 38(f64v) 143
144: 58 Load 60(f64m)
145: 58 Load 60(f64m)
146: 58 MatrixTimesMatrix 144 145
Store 60(f64m) 146
Return
FunctionEnd
10(typeCast(): 2 Function None 3
11: Label
149(f64v): 148(ptr) Variable Function
152(bv): 151(ptr) Variable Function
163(f16v): 162(ptr) Variable Function
171(i8v): 170(ptr) Variable Function
177(i16v): 176(ptr) Variable Function
183(i32v): 182(ptr) Variable Function
189(i64v): 188(ptr) Variable Function
195(u8v): 194(ptr) Variable Function
201(u16v): 200(ptr) Variable Function
206(u32v): 205(ptr) Variable Function
212(u64v): 211(ptr) Variable Function
153: 150(bvec3) Load 152(bv)
157:147(f64vec3) Select 153 156 155
Store 149(f64v) 157
158:147(f64vec3) Load 149(f64v)
159: 150(bvec3) FUnordNotEqual 158 155
Store 152(bv) 159
164:161(f16vec3) Load 163(f16v)
165:147(f64vec3) FConvert 164
Store 149(f64v) 165
166:147(f64vec3) Load 149(f64v)
167:161(f16vec3) FConvert 166
Store 163(f16v) 167
172:147(f64vec3) Load 149(f64v)
173: 169(i8vec3) ConvertFToS 172
Store 171(i8v) 173
178:147(f64vec3) Load 149(f64v)
179:175(i16vec3) ConvertFToS 178
Store 177(i16v) 179
184:147(f64vec3) Load 149(f64v)
185: 181(ivec3) ConvertFToS 184
Store 183(i32v) 185
190:147(f64vec3) Load 149(f64v)
191:187(i64vec3) ConvertFToS 190
Store 189(i64v) 191
196:147(f64vec3) Load 149(f64v)
197: 193(i8vec3) ConvertFToU 196
Store 195(u8v) 197
202:147(f64vec3) Load 149(f64v)
203:199(i16vec3) ConvertFToU 202
Store 201(u16v) 203
207:147(f64vec3) Load 149(f64v)
208: 204(ivec3) ConvertFToU 207
Store 206(u32v) 208
213:147(f64vec3) Load 149(f64v)
214:210(i64vec3) ConvertFToU 213
Store 212(u64v) 214
Return
FunctionEnd
12(builtinTranscendentalFuncs(): 2 Function None 3
13: Label
215(f64v2): 26(ptr) Variable Function
216(f64v1): 26(ptr) Variable Function
217: 25(f64vec2) Load 216(f64v1)
218: 25(f64vec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 217
Store 215(f64v2) 218
219: 25(f64vec2) Load 216(f64v1)
220: 25(f64vec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 219
Store 215(f64v2) 220
Return
FunctionEnd
14(builtinCommonFuncs(): 2 Function None 3
15: Label
221(f64v2): 148(ptr) Variable Function
222(f64v1): 148(ptr) Variable Function
243(f64): 31(ptr) Variable Function
247(f64v3): 148(ptr) Variable Function
287(bv): 151(ptr) Variable Function
308(b): 106(ptr) Variable Function
318(iv): 182(ptr) Variable Function
223:147(f64vec3) Load 222(f64v1)
224:147(f64vec3) ExtInst 1(GLSL.std.450) 4(FAbs) 223
Store 221(f64v2) 224
225:147(f64vec3) Load 222(f64v1)
226:147(f64vec3) ExtInst 1(GLSL.std.450) 6(FSign) 225
Store 221(f64v2) 226
227:147(f64vec3) Load 222(f64v1)
228:147(f64vec3) ExtInst 1(GLSL.std.450) 8(Floor) 227
Store 221(f64v2) 228
229:147(f64vec3) Load 222(f64v1)
230:147(f64vec3) ExtInst 1(GLSL.std.450) 3(Trunc) 229
Store 221(f64v2) 230
231:147(f64vec3) Load 222(f64v1)
232:147(f64vec3) ExtInst 1(GLSL.std.450) 1(Round) 231
Store 221(f64v2) 232
233:147(f64vec3) Load 222(f64v1)
234:147(f64vec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 233
Store 221(f64v2) 234
235:147(f64vec3) Load 222(f64v1)
236:147(f64vec3) ExtInst 1(GLSL.std.450) 9(Ceil) 235
Store 221(f64v2) 236
237:147(f64vec3) Load 222(f64v1)
238:147(f64vec3) ExtInst 1(GLSL.std.450) 10(Fract) 237
Store 221(f64v2) 238
239:147(f64vec3) Load 222(f64v1)
240:147(f64vec3) Load 221(f64v2)
241:147(f64vec3) FMod 239 240
Store 221(f64v2) 241
242:147(f64vec3) Load 222(f64v1)
244:24(float64_t) Load 243(f64)
245:147(f64vec3) CompositeConstruct 244 244 244
246:147(f64vec3) FMod 242 245
Store 221(f64v2) 246
248:147(f64vec3) Load 222(f64v1)
249:147(f64vec3) ExtInst 1(GLSL.std.450) 35(Modf) 248 221(f64v2)
Store 247(f64v3) 249
250:147(f64vec3) Load 222(f64v1)
251:147(f64vec3) Load 221(f64v2)
252:147(f64vec3) ExtInst 1(GLSL.std.450) 37(FMin) 250 251
Store 247(f64v3) 252
253:147(f64vec3) Load 222(f64v1)
254:24(float64_t) Load 243(f64)
255:147(f64vec3) CompositeConstruct 254 254 254
256:147(f64vec3) ExtInst 1(GLSL.std.450) 37(FMin) 253 255
Store 247(f64v3) 256
257:147(f64vec3) Load 222(f64v1)
258:147(f64vec3) Load 221(f64v2)
259:147(f64vec3) ExtInst 1(GLSL.std.450) 40(FMax) 257 258
Store 247(f64v3) 259
260:147(f64vec3) Load 222(f64v1)
261:24(float64_t) Load 243(f64)
262:147(f64vec3) CompositeConstruct 261 261 261
263:147(f64vec3) ExtInst 1(GLSL.std.450) 40(FMax) 260 262
Store 247(f64v3) 263
264:147(f64vec3) Load 222(f64v1)
265:24(float64_t) Load 243(f64)
266: 31(ptr) AccessChain 221(f64v2) 30
267:24(float64_t) Load 266
268:147(f64vec3) CompositeConstruct 265 265 265
269:147(f64vec3) CompositeConstruct 267 267 267
270:147(f64vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 264 268 269
Store 247(f64v3) 270
271:147(f64vec3) Load 222(f64v1)
272:147(f64vec3) Load 221(f64v2)
273:24(float64_t) Load 243(f64)
274:147(f64vec3) CompositeConstruct 273 273 273
275:147(f64vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 271 272 274
Store 247(f64v3) 275
276:147(f64vec3) Load 222(f64v1)
277:147(f64vec3) Load 221(f64v2)
278:24(float64_t) Load 243(f64)
279:147(f64vec3) CompositeConstruct 278 278 278
280:147(f64vec3) ExtInst 1(GLSL.std.450) 46(FMix) 276 277 279
Store 247(f64v3) 280
281:147(f64vec3) Load 222(f64v1)
282:147(f64vec3) Load 221(f64v2)
283:147(f64vec3) Load 247(f64v3)
284:147(f64vec3) ExtInst 1(GLSL.std.450) 46(FMix) 281 282 283
Store 247(f64v3) 284
285:147(f64vec3) Load 222(f64v1)
286:147(f64vec3) Load 221(f64v2)
288: 150(bvec3) Load 287(bv)
289:147(f64vec3) Select 288 286 285
Store 247(f64v3) 289
290:147(f64vec3) Load 222(f64v1)
291:147(f64vec3) Load 221(f64v2)
292:147(f64vec3) ExtInst 1(GLSL.std.450) 48(Step) 290 291
Store 247(f64v3) 292
293:24(float64_t) Load 243(f64)
294:147(f64vec3) Load 247(f64v3)
295:147(f64vec3) CompositeConstruct 293 293 293
296:147(f64vec3) ExtInst 1(GLSL.std.450) 48(Step) 295 294
Store 247(f64v3) 296
297:147(f64vec3) Load 222(f64v1)
298:147(f64vec3) Load 221(f64v2)
299:147(f64vec3) Load 247(f64v3)
300:147(f64vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 297 298 299
Store 247(f64v3) 300
301:24(float64_t) Load 243(f64)
302: 31(ptr) AccessChain 222(f64v1) 30
303:24(float64_t) Load 302
304:147(f64vec3) Load 221(f64v2)
305:147(f64vec3) CompositeConstruct 301 301 301
306:147(f64vec3) CompositeConstruct 303 303 303
307:147(f64vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 305 306 304
Store 247(f64v3) 307
309:24(float64_t) Load 243(f64)
310: 105(bool) IsNan 309
Store 308(b) 310
311:147(f64vec3) Load 222(f64v1)
312: 150(bvec3) IsInf 311
Store 287(bv) 312
313:147(f64vec3) Load 222(f64v1)
314:147(f64vec3) Load 221(f64v2)
315:147(f64vec3) Load 247(f64v3)
316:147(f64vec3) ExtInst 1(GLSL.std.450) 50(Fma) 313 314 315
Store 247(f64v3) 316
317:147(f64vec3) Load 222(f64v1)
320:319(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 317
321: 181(ivec3) CompositeExtract 320 1
Store 318(iv) 321
322:147(f64vec3) CompositeExtract 320 0
Store 221(f64v2) 322
323:147(f64vec3) Load 222(f64v1)
324: 181(ivec3) Load 318(iv)
325:147(f64vec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 323 324
Store 221(f64v2) 325
Return
FunctionEnd
16(builtinGeometryFuncs(): 2 Function None 3
17: Label
326(f64): 31(ptr) Variable Function
327(f64v1): 148(ptr) Variable Function
331(f64v2): 148(ptr) Variable Function
337(f64v3): 148(ptr) Variable Function
328:147(f64vec3) Load 327(f64v1)
329:24(float64_t) ExtInst 1(GLSL.std.450) 66(Length) 328
Store 326(f64) 329
330:147(f64vec3) Load 327(f64v1)
332:147(f64vec3) Load 331(f64v2)
333:24(float64_t) ExtInst 1(GLSL.std.450) 67(Distance) 330 332
Store 326(f64) 333
334:147(f64vec3) Load 327(f64v1)
335:147(f64vec3) Load 331(f64v2)
336:24(float64_t) Dot 334 335
Store 326(f64) 336
338:147(f64vec3) Load 327(f64v1)
339:147(f64vec3) Load 331(f64v2)
340:147(f64vec3) ExtInst 1(GLSL.std.450) 68(Cross) 338 339
Store 337(f64v3) 340
341:147(f64vec3) Load 327(f64v1)
342:147(f64vec3) ExtInst 1(GLSL.std.450) 69(Normalize) 341
Store 331(f64v2) 342
343:147(f64vec3) Load 327(f64v1)
344:147(f64vec3) Load 331(f64v2)
345:147(f64vec3) Load 337(f64v3)
346:147(f64vec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 343 344 345
Store 337(f64v3) 346
347:147(f64vec3) Load 327(f64v1)
348:147(f64vec3) Load 331(f64v2)
349:147(f64vec3) ExtInst 1(GLSL.std.450) 71(Reflect) 347 348
Store 337(f64v3) 349
350:147(f64vec3) Load 327(f64v1)
351:147(f64vec3) Load 331(f64v2)
352:24(float64_t) Load 326(f64)
353:147(f64vec3) ExtInst 1(GLSL.std.450) 72(Refract) 350 351 352
Store 337(f64v3) 353
Return
FunctionEnd
18(builtinMatrixFuncs(): 2 Function None 3
19: Label
356(f64m3): 355(ptr) Variable Function
357(f64m1): 355(ptr) Variable Function
359(f64m2): 355(ptr) Variable Function
368(f64v1): 148(ptr) Variable Function
370(f64v2): 26(ptr) Variable Function
375(f64m4): 374(ptr) Variable Function
378(f64): 31(ptr) Variable Function
381(f64m5): 380(ptr) Variable Function
387(f64m6): 386(ptr) Variable Function
388(f64m7): 386(ptr) Variable Function
358: 354 Load 357(f64m1)
360: 354 Load 359(f64m2)
361:147(f64vec3) CompositeExtract 358 0
362:147(f64vec3) CompositeExtract 360 0
363:147(f64vec3) FMul 361 362
364:147(f64vec3) CompositeExtract 358 1
365:147(f64vec3) CompositeExtract 360 1
366:147(f64vec3) FMul 364 365
367: 354 CompositeConstruct 363 366
Store 356(f64m3) 367
369:147(f64vec3) Load 368(f64v1)
371: 25(f64vec2) Load 370(f64v2)
372: 354 OuterProduct 369 371
Store 357(f64m1) 372
376: 354 Load 357(f64m1)
377: 373 Transpose 376
Store 375(f64m4) 377
382: 379 Load 381(f64m5)
383:24(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 382
Store 378(f64) 383
389: 385 Load 388(f64m7)
390: 385 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 389
Store 387(f64m6) 390
Return
FunctionEnd
20(builtinVecRelFuncs(): 2 Function None 3
21: Label
391(bv): 151(ptr) Variable Function
392(f64v1): 148(ptr) Variable Function
394(f64v2): 148(ptr) Variable Function
393:147(f64vec3) Load 392(f64v1)
395:147(f64vec3) Load 394(f64v2)
396: 150(bvec3) FOrdLessThan 393 395
Store 391(bv) 396
397:147(f64vec3) Load 392(f64v1)
398:147(f64vec3) Load 394(f64v2)
399: 150(bvec3) FOrdLessThanEqual 397 398
Store 391(bv) 399
400:147(f64vec3) Load 392(f64v1)
401:147(f64vec3) Load 394(f64v2)
402: 150(bvec3) FOrdGreaterThan 400 401
Store 391(bv) 402
403:147(f64vec3) Load 392(f64v1)
404:147(f64vec3) Load 394(f64v2)
405: 150(bvec3) FOrdGreaterThanEqual 403 404
Store 391(bv) 405
406:147(f64vec3) Load 392(f64v1)
407:147(f64vec3) Load 394(f64v2)
408: 150(bvec3) FOrdEqual 406 407
Store 391(bv) 408
409:147(f64vec3) Load 392(f64v1)
410:147(f64vec3) Load 394(f64v2)
411: 150(bvec3) FUnordNotEqual 409 410
Store 391(bv) 411
Return
FunctionEnd
22(builtinFragProcFuncs(): 2 Function None 3
23: Label
412(f64v): 148(ptr) Variable Function
416: 415(ptr) AccessChain 414(if64v) 30
417:24(float64_t) Load 416
418:24(float64_t) DPdx 417
419: 31(ptr) AccessChain 412(f64v) 30
Store 419 418
420: 415(ptr) AccessChain 414(if64v) 86
421:24(float64_t) Load 420
422:24(float64_t) DPdy 421
423: 31(ptr) AccessChain 412(f64v) 86
Store 423 422
424:147(f64vec3) Load 414(if64v)
425: 25(f64vec2) VectorShuffle 424 424 0 1
426: 25(f64vec2) DPdxFine 425
427: 31(ptr) AccessChain 412(f64v) 30
428:24(float64_t) CompositeExtract 426 0
Store 427 428
429: 31(ptr) AccessChain 412(f64v) 86
430:24(float64_t) CompositeExtract 426 1
Store 429 430
431:147(f64vec3) Load 414(if64v)
432: 25(f64vec2) VectorShuffle 431 431 0 1
433: 25(f64vec2) DPdyFine 432
434: 31(ptr) AccessChain 412(f64v) 30
435:24(float64_t) CompositeExtract 433 0
Store 434 435
436: 31(ptr) AccessChain 412(f64v) 86
437:24(float64_t) CompositeExtract 433 1
Store 436 437
438:147(f64vec3) Load 414(if64v)
439:147(f64vec3) DPdxCoarse 438
Store 412(f64v) 439
440:147(f64vec3) Load 414(if64v)
441:147(f64vec3) DPdxCoarse 440
Store 412(f64v) 441
442: 415(ptr) AccessChain 414(if64v) 30
443:24(float64_t) Load 442
444:24(float64_t) Fwidth 443
445: 31(ptr) AccessChain 412(f64v) 30
Store 445 444
446:147(f64vec3) Load 414(if64v)
447: 25(f64vec2) VectorShuffle 446 446 0 1
448: 25(f64vec2) FwidthFine 447
449: 31(ptr) AccessChain 412(f64v) 30
450:24(float64_t) CompositeExtract 448 0
Store 449 450
451: 31(ptr) AccessChain 412(f64v) 86
452:24(float64_t) CompositeExtract 448 1
Store 451 452
453:147(f64vec3) Load 414(if64v)
454:147(f64vec3) FwidthCoarse 453
Store 412(f64v) 454
455: 415(ptr) AccessChain 414(if64v) 30
456:24(float64_t) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 455
457: 31(ptr) AccessChain 412(f64v) 30
Store 457 456
459:147(f64vec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 414(if64v) 458
460: 25(f64vec2) VectorShuffle 459 459 0 1
461: 31(ptr) AccessChain 412(f64v) 30
462:24(float64_t) CompositeExtract 460 0
Store 461 462
463: 31(ptr) AccessChain 412(f64v) 86
464:24(float64_t) CompositeExtract 460 1
Store 463 464
467:147(f64vec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 414(if64v) 466
Store 412(f64v) 467
Return
FunctionEnd