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