spv.debuginfo.hlsl.frag
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 886

                              Capability Shader
                              Capability ImageQuery
                              Extension  "SPV_KHR_non_semantic_info"
               2:             ExtInstImport  "NonSemantic.Shader.DebugInfo.100"
               3:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 6  "main" 879 882
                              ExecutionMode 6 OriginUpperLeft
               1:             String  ""
               9:             String  "float"
              12:             String  "uint"
              33:             String  "textureProj"
              36:             String  "// OpModuleProcessed auto-map-locations
// OpModuleProcessed auto-map-bindings
// OpModuleProcessed entry-point main
// OpModuleProcessed client vulkan100
// OpModuleProcessed target-env vulkan1.0
// OpModuleProcessed keep-uncalled
// OpModuleProcessed hlsl-offsets
#line 1
"
              44:             String  "P"
              48:             String  "layer"
              51:             String  "offset"
              58:             String  "filterPCF"
              64:             String  "sc"
              76:             String  "shadow"
              82:             String  "fragcolor"
              85:             String  "fragPos"
              91:             String  "@main"
              97:             String  "inUV"
             111:             String  "shadowCoord"
             136:             String  "bool"
             152:             String  "dist"
             156:             String  "type.2d.image"
             157:             String  "@type.2d.image"
             162:             String  "textureShadowMap"
             167:             String  "type.sampler"
             168:             String  "@type.sampler"
             172:             String  "samplerShadowMap"
             176:             String  "type.sampled.image"
             177:             String  "@type.sampled.image"
             224:             String  "sizeQueryTemp"
             229:             String  "int"
             236:             String  "texDim"
             250:             String  "elements"
             257:             String  "levels"
             266:             String  "scale"
             273:             String  "dx"
             285:             String  "dy"
             297:             String  "shadowFactor"
             303:             String  "count"
             310:             String  "range"
             317:             String  "x"
             339:             String  "y"
             403:             String  "i"
             423:             String  "shadowClip"
             435:             String  "color"
             441:             String  "viewMatrix"
             445:             String  "Light"
             451:             String  "lights"
             454:             String  "displayDebugTarget"
             459:             String  "UBO"
             462:             String  "ubo"
             512:             String  "textureposition"
             517:             String  "samplerposition"
             529:             String  "normal"
             533:             String  "textureNormal"
             538:             String  "samplerNormal"
             548:             String  "albedo"
             552:             String  "textureAlbedo"
             557:             String  "samplerAlbedo"
             647:             String  "N"
             673:             String  "L"
             697:             String  "V"
             712:             String  "lightCosInnerAngle"
             719:             String  "lightCosOuterAngle"
             726:             String  "lightRange"
             733:             String  "dir"
             749:             String  "cosDir"
             758:             String  "spotEffect"
             768:             String  "heightAttenuation"
             777:             String  "NdotL"
             787:             String  "diff"
             795:             String  "R"
             805:             String  "NdotR"
             815:             String  "spec"
                              Name 6  "main"
                              Name 32  "textureProj(vf4;f1;vf2;"
                              Name 29  "P"
                              Name 30  "layer"
                              Name 31  "offset"
                              Name 57  "filterPCF(vf4;f1;"
                              Name 55  "sc"
                              Name 56  "layer"
                              Name 75  "shadow(vf3;vf3;"
                              Name 73  "fragcolor"
                              Name 74  "fragPos"
                              Name 90  "@main(vf2;"
                              Name 89  "inUV"
                              Name 103  "shadow"
                              Name 109  "shadowCoord"
                              Name 150  "dist"
                              Name 160  "textureShadowMap"
                              Name 170  "samplerShadowMap"
                              Name 222  "sizeQueryTemp"
                              Name 234  "texDim"
                              Name 248  "elements"
                              Name 255  "levels"
                              Name 264  "scale"
                              Name 271  "dx"
                              Name 283  "dy"
                              Name 295  "shadowFactor"
                              Name 301  "count"
                              Name 308  "range"
                              Name 315  "x"
                              Name 337  "y"
                              Name 368  "param"
                              Name 370  "param"
                              Name 372  "param"
                              Name 401  "i"
                              Name 421  "shadowClip"
                              Name 433  "Light"
                              MemberName 433(Light) 0  "position"
                              MemberName 433(Light) 1  "target"
                              MemberName 433(Light) 2  "color"
                              MemberName 433(Light) 3  "viewMatrix"
                              Name 448  "UBO"
                              MemberName 448(UBO) 0  "viewPos"
                              MemberName 448(UBO) 1  "lights"
                              MemberName 448(UBO) 2  "useShadows"
                              MemberName 448(UBO) 3  "displayDebugTarget"
                              Name 460  "ubo"
                              MemberName 460(ubo) 0  "ubo"
                              Name 467  ""
                              Name 476  "shadowFactor"
                              Name 481  "param"
                              Name 483  "param"
                              Name 504  "fragPos"
                              Name 510  "textureposition"
                              Name 515  "samplerposition"
                              Name 527  "normal"
                              Name 531  "textureNormal"
                              Name 536  "samplerNormal"
                              Name 546  "albedo"
                              Name 550  "textureAlbedo"
                              Name 555  "samplerAlbedo"
                              Name 585  "fragcolor"
                              Name 589  "param"
                              Name 590  "param"
                              Name 645  "N"
                              Name 653  "i"
                              Name 671  "L"
                              Name 684  "dist"
                              Name 695  "V"
                              Name 710  "lightCosInnerAngle"
                              Name 717  "lightCosOuterAngle"
                              Name 724  "lightRange"
                              Name 731  "dir"
                              Name 747  "cosDir"
                              Name 756  "spotEffect"
                              Name 766  "heightAttenuation"
                              Name 775  "NdotL"
                              Name 785  "diff"
                              Name 793  "R"
                              Name 803  "NdotR"
                              Name 813  "spec"
                              Name 862  "param"
                              Name 864  "param"
                              Name 877  "inUV"
                              Name 879  "inUV"
                              Name 882  "@entryPointOutput"
                              Name 883  "param"
                              Decorate 160(textureShadowMap) DescriptorSet 0
                              Decorate 160(textureShadowMap) Binding 5
                              Decorate 170(samplerShadowMap) DescriptorSet 0
                              Decorate 170(samplerShadowMap) Binding 5
                              MemberDecorate 433(Light) 0 Offset 0
                              MemberDecorate 433(Light) 1 Offset 16
                              MemberDecorate 433(Light) 2 Offset 32
                              MemberDecorate 433(Light) 3 RowMajor
                              MemberDecorate 433(Light) 3 Offset 48
                              MemberDecorate 433(Light) 3 MatrixStride 16
                              Decorate 446 ArrayStride 112
                              MemberDecorate 448(UBO) 0 Offset 0
                              MemberDecorate 448(UBO) 1 Offset 16
                              MemberDecorate 448(UBO) 2 Offset 352
                              MemberDecorate 448(UBO) 3 Offset 356
                              MemberDecorate 460(ubo) 0 Offset 0
                              Decorate 460(ubo) Block
                              Decorate 467 DescriptorSet 0
                              Decorate 467 Binding 4
                              Decorate 510(textureposition) DescriptorSet 0
                              Decorate 510(textureposition) Binding 1
                              Decorate 515(samplerposition) DescriptorSet 0
                              Decorate 515(samplerposition) Binding 1
                              Decorate 531(textureNormal) DescriptorSet 0
                              Decorate 531(textureNormal) Binding 2
                              Decorate 536(samplerNormal) DescriptorSet 0
                              Decorate 536(samplerNormal) Binding 2
                              Decorate 550(textureAlbedo) DescriptorSet 0
                              Decorate 550(textureAlbedo) Binding 3
                              Decorate 555(samplerAlbedo) DescriptorSet 0
                              Decorate 555(samplerAlbedo) Binding 3
                              Decorate 879(inUV) Location 0
                              Decorate 882(@entryPointOutput) Location 0
               4:             TypeVoid
               5:             TypeFunction 4
               8:             TypeFloat 32
              11:             TypeInt 32 0
              14:     11(int) Constant 32
              15:     11(int) Constant 6
              16:     11(int) Constant 0
              13:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 12 14 15 16
              17:     11(int) Constant 3
              10:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 9 14 17 16
              18:             TypeVector 8(float) 4
              19:     11(int) Constant 4
              20:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 19
              21:             TypePointer Function 18(fvec4)
              22:             TypePointer Function 8(float)
              23:             TypeVector 8(float) 2
              24:     11(int) Constant 2
              25:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 24
              26:             TypePointer Function 23(fvec2)
              27:             TypeFunction 8(float) 21(ptr) 22(ptr) 26(ptr)
              28:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 10 20 10 25
              35:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 1 36
              38:     11(int) Constant 1
              39:     11(int) Constant 5
              37:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 38 19 35 39
              34:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 33 28 35 16 16 37 33 17 16
              43:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 44 20 35 16 16 34 19 38
              46:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
              47:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 48 10 35 16 16 34 19 24
              50:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 51 25 35 16 16 34 19 17
              53:             TypeFunction 8(float) 21(ptr) 22(ptr)
              54:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 10 20 10
              59:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 58 54 35 16 16 37 58 17 16
              63:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 64 20 35 16 16 59 19 38
              66:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 48 10 35 16 16 59 19 24
              68:             TypeVector 8(float) 3
              69:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 17
              70:             TypePointer Function 68(fvec3)
              71:             TypeFunction 68(fvec3) 70(ptr) 70(ptr)
              72:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 69 69 69
              77:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 76 72 35 16 16 37 76 17 16
              81:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 82 69 35 16 16 77 19 38
              84:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 85 69 35 16 16 77 19 24
              87:             TypeFunction 18(fvec4) 26(ptr)
              88:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 20 25
              92:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 91 88 35 16 16 37 91 17 16
              96:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 97 25 35 16 16 92 19 38
             102:     11(int) Constant 62
             104:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 76 10 35 102 16 34 19
             106:    8(float) Constant 1065353216
             108:     11(int) Constant 63
             110:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 111 20 35 108 16 34 19
             119:     11(int) Constant 64
             122:    8(float) Constant 1056964608
             131:     11(int) Constant 66
             134:    8(float) Constant 3212836864
             135:             TypeBool
             137:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             141:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             143:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             149:     11(int) Constant 68
             151:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 152 10 35 149 16 34 19
             154:             TypeImage 8(float) 2D array sampled format:Unknown
             158:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone)
             155:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 156 16 35 149 16 37 157 158 17
             159:             TypePointer UniformConstant 154
160(textureShadowMap):    159(ptr) Variable UniformConstant
             163:     11(int) Constant 8
             161:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 162 155 35 149 16 37 162 160(textureShadowMap) 163
             165:             TypeSampler
             166:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 167 38 35 149 16 37 168 158 17
             169:             TypePointer UniformConstant 165
170(samplerShadowMap):    169(ptr) Variable UniformConstant
             171:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 172 166 35 149 16 37 172 170(samplerShadowMap) 163
             174:             TypeSampledImage 154
             175:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 176 16 35 149 16 37 177 158 17
             190:     11(int) Constant 69
             193:    8(float) Constant 0
             194:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             199:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             201:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             207:     11(int) Constant 71
             208:    8(float) Constant 1048576000
             211:     11(int) Constant 74
             218:     11(int) Constant 80
             219:             TypeVector 11(int) 3
             220:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 13 17
             221:             TypePointer Function 219(ivec3)
             223:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 224 220 35 218 16 59 19
             228:             TypeInt 32 1
             230:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 229 14 19 16
             231:             TypeVector 228(int) 2
             232:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 230 24
             233:             TypePointer Function 231(ivec2)
             235:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 236 232 35 218 16 59 19
             238:             TypePointer Function 11(int)
             242:             TypePointer Function 228(int)
             249:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 250 230 35 218 16 59 19
             256:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 257 230 35 218 16 59 19
             263:     11(int) Constant 81
             265:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 266 10 35 263 16 59 19
             268:    8(float) Constant 1069547520
             270:     11(int) Constant 82
             272:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 273 10 35 270 16 59 19
             282:     11(int) Constant 83
             284:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 285 10 35 282 16 59 19
             294:     11(int) Constant 85
             296:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 297 10 35 294 16 59 19
             300:     11(int) Constant 86
             302:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 303 230 35 300 16 59 19
             305:    228(int) Constant 0
             307:     11(int) Constant 87
             309:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 310 230 35 307 16 59 19
             312:    228(int) Constant 1
             314:     11(int) Constant 89
             316:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 317 230 35 314 16 59 19
             332:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             336:     11(int) Constant 91
             338:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 339 230 35 336 16 59 19
             354:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             358:     11(int) Constant 93
             377:     11(int) Constant 94
             390:     11(int) Constant 98
             400:     11(int) Constant 102
             402:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 403 230 35 400 16 77 19
             415:    228(int) Constant 3
             416:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             420:     11(int) Constant 104
             422:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 423 20 35 420 16 77 19
             430:             TypeMatrix 18(fvec4) 4
             432:   135(bool) ConstantTrue
             431:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 432
      433(Light):             TypeStruct 18(fvec4) 18(fvec4) 18(fvec4) 430
             436:     11(int) Constant 46
             437:     11(int) Constant 14
             434:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 435 20 35 436 437 16 16 17
             438:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 435 20 35 436 437 16 16 17
             439:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 435 20 35 436 437 16 16 17
             442:     11(int) Constant 47
             443:     11(int) Constant 21
             440:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 441 431 35 442 443 16 16 17
             444:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 445 38 35 420 16 37 445 16 17 434 438 439 440
             446:             TypeArray 433(Light) 17
             447:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 444 17
        448(UBO):             TypeStruct 18(fvec4) 446 228(int) 228(int)
             449:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 435 20 35 436 437 16 16 17
             452:     11(int) Constant 53
             450:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 451 447 35 452 437 16 16 17
             455:     11(int) Constant 55
             456:     11(int) Constant 24
             453:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 454 230 35 455 456 16 16 17
             457:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 454 230 35 455 456 16 16 17
             458:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 459 38 35 420 16 37 459 16 17 449 450 453 457
        460(ubo):             TypeStruct 448(UBO)
             463:     11(int) Constant 58
             464:     11(int) Constant 37
             461:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 458 35 463 464 16 16 17
             465:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 462 38 35 420 16 37 462 16 17 461
             466:             TypePointer Uniform 460(ubo)
             467:    466(ptr) Variable Uniform
             468:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 1 465 35 420 16 37 1 467 163
             470:             TypePointer Uniform 430
             475:     11(int) Constant 108
             477:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 297 10 35 475 16 77 19
             486:     11(int) Constant 113
             496:     11(int) Constant 115
             503:     11(int) Constant 121
             505:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 85 69 35 503 16 92 19
             507:             TypeImage 8(float) 2D sampled format:Unknown
             508:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 156 16 35 503 16 37 157 158 17
             509:             TypePointer UniformConstant 507
510(textureposition):    509(ptr) Variable UniformConstant
             511:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 512 508 35 503 16 37 512 510(textureposition) 163
             514:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 167 38 35 503 16 37 168 158 17
515(samplerposition):    169(ptr) Variable UniformConstant
             516:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 517 514 35 503 16 37 517 515(samplerposition) 163
             519:             TypeSampledImage 507
             520:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 176 16 35 503 16 37 177 158 17
             526:     11(int) Constant 122
             528:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 529 69 35 526 16 92 19
531(textureNormal):    509(ptr) Variable UniformConstant
             532:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 533 508 35 526 16 37 533 531(textureNormal) 163
             535:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 167 38 35 526 16 37 168 158 17
536(samplerNormal):    169(ptr) Variable UniformConstant
             537:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 538 535 35 526 16 37 538 536(samplerNormal) 163
             545:     11(int) Constant 123
             547:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 548 20 35 545 16 92 19
550(textureAlbedo):    509(ptr) Variable UniformConstant
             551:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 552 508 35 545 16 37 552 550(textureAlbedo) 163
             554:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 167 38 35 545 16 37 168 158 17
555(samplerAlbedo):    169(ptr) Variable UniformConstant
             556:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 557 554 35 545 16 37 557 555(samplerAlbedo) 163
             563:     11(int) Constant 128
             564:             TypePointer Uniform 228(int)
             567:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             573:     11(int) Constant 129
             584:     11(int) Constant 131
             586:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 82 69 35 584 16 92 19
             588:   68(fvec3) ConstantComposite 106 106 106
             594:     11(int) Constant 132
             598:     11(int) Constant 134
             601:     11(int) Constant 135
             605:     11(int) Constant 137
             608:     11(int) Constant 138
             612:     11(int) Constant 140
             616:     11(int) Constant 141
             620:     11(int) Constant 143
             624:     11(int) Constant 144
             629:     11(int) Constant 146
             638:     11(int) Constant 150
             641:    8(float) Constant 1036831949
             644:     11(int) Constant 152
             646:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 647 69 35 644 16 92 19
             652:     11(int) Constant 154
             654:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 403 230 35 652 16 92 19
             666:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             670:     11(int) Constant 157
             672:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 673 69 35 670 16 92 19
             676:             TypePointer Uniform 18(fvec4)
             683:     11(int) Constant 159
             685:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 152 10 35 683 16 92 19
             690:     11(int) Constant 160
             694:     11(int) Constant 163
             696:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 697 69 35 694 16 92 19
             705:     11(int) Constant 164
             709:     11(int) Constant 166
             711:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 712 10 35 709 16 92 19
             714:    8(float) Constant 1064781546
             716:     11(int) Constant 167
             718:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 719 10 35 716 16 92 19
             721:    8(float) Constant 1063781322
             723:     11(int) Constant 168
             725:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 726 10 35 723 16 92 19
             728:    8(float) Constant 1120403456
             730:     11(int) Constant 171
             732:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 733 69 35 730 16 92 19
             746:     11(int) Constant 174
             748:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 749 10 35 746 16 92 19
             755:     11(int) Constant 175
             757:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 758 10 35 755 16 92 19
             765:     11(int) Constant 176
             767:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 768 10 35 765 16 92 19
             774:     11(int) Constant 179
             776:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 777 10 35 774 16 92 19
             784:     11(int) Constant 180
             786:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 787 69 35 784 16 92 19
             792:     11(int) Constant 183
             794:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 795 69 35 792 16 92 19
             802:     11(int) Constant 184
             804:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 805 10 35 802 16 92 19
             812:     11(int) Constant 185
             814:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 815 69 35 812 16 92 19
             818:    8(float) Constant 1098907648
             823:    8(float) Constant 1075838976
             827:     11(int) Constant 187
             836:    228(int) Constant 2
             852:     11(int) Constant 191
             855:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 136 14 24 16
             861:     11(int) Constant 193
             869:     11(int) Constant 196
             878:             TypePointer Input 23(fvec2)
       879(inUV):    878(ptr) Variable Input
             881:             TypePointer Output 18(fvec4)
882(@entryPointOutput):    881(ptr) Variable Output
                              Line 1 119 1
         6(main):           4 Function None 5
               7:             Label
       877(inUV):     26(ptr) Variable Function
      883(param):     26(ptr) Variable Function
                              Line 1 119 0
             880:   23(fvec2) Load 879(inUV)
                              Store 877(inUV) 880
             884:   23(fvec2) Load 877(inUV)
                              Store 883(param) 884
             885:   18(fvec4) FunctionCall 90(@main(vf2;) 883(param)
                              Store 882(@entryPointOutput) 885
                              Return
                              FunctionEnd
                              Line 1 61 1
32(textureProj(vf4;f1;vf2;):    8(float) Function None 27
           29(P):     21(ptr) FunctionParameter
       30(layer):     22(ptr) FunctionParameter
      31(offset):     26(ptr) FunctionParameter
              40:             Label
     103(shadow):     22(ptr) Variable Function
109(shadowCoord):     21(ptr) Variable Function
       150(dist):     22(ptr) Variable Function
              41:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34
              42:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 16 16 16 16
              45:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 43 29(P) 46
              49:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 47 30(layer) 46
              52:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 50 31(offset) 46
              99:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 34 32(textureProj(vf4;f1;vf2;)
             100:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34
             101:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 102 102 16 16
             105:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 104 103(shadow) 46
                              Store 103(shadow) 106
             107:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 108 108 16 16
             112:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 110 109(shadowCoord) 46
             113:   18(fvec4) Load 29(P)
             114:     22(ptr) AccessChain 29(P) 17
             115:    8(float) Load 114
             116:   18(fvec4) CompositeConstruct 115 115 115 115
             117:   18(fvec4) FDiv 113 116
                              Store 109(shadowCoord) 117
             118:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 119 119 16 16
             120:   18(fvec4) Load 109(shadowCoord)
             121:   23(fvec2) VectorShuffle 120 120 0 1
             123:   23(fvec2) VectorTimesScalar 121 122
             124:   23(fvec2) CompositeConstruct 122 122
             125:   23(fvec2) FAdd 123 124
             126:     22(ptr) AccessChain 109(shadowCoord) 16
             127:    8(float) CompositeExtract 125 0
                              Store 126 127
             128:     22(ptr) AccessChain 109(shadowCoord) 38
             129:    8(float) CompositeExtract 125 1
                              Store 128 129
             130:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 131 131 16 16
             132:     22(ptr) AccessChain 109(shadowCoord) 24
             133:    8(float) Load 132
             138:   135(bool) FOrdGreaterThan 133 134
             139:     22(ptr) AccessChain 109(shadowCoord) 24
             140:    8(float) Load 139
             142:   135(bool) FOrdLessThan 140 106
             144:   135(bool) LogicalAnd 138 142
                              SelectionMerge 146 None
                              BranchConditional 144 145 146
             145:               Label
             147:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34
             148:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 149 149 16 16
             153:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 151 150(dist) 46
             164:         154   Load 160(textureShadowMap)
             173:         165   Load 170(samplerShadowMap)
             178:         174   SampledImage 164 173
             179:   18(fvec4)   Load 109(shadowCoord)
             180:   23(fvec2)   VectorShuffle 179 179 0 1
             181:   23(fvec2)   Load 31(offset)
             182:   23(fvec2)   FAdd 180 181
             183:    8(float)   Load 30(layer)
             184:    8(float)   CompositeExtract 182 0
             185:    8(float)   CompositeExtract 182 1
             186:   68(fvec3)   CompositeConstruct 184 185 183
             187:   18(fvec4)   ImageSampleImplicitLod 178 186
             188:    8(float)   CompositeExtract 187 0
                                Store 150(dist) 188
             189:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 190 190 16 16
             191:     22(ptr)   AccessChain 109(shadowCoord) 17
             192:    8(float)   Load 191
             195:   135(bool)   FOrdGreaterThan 192 193
             196:    8(float)   Load 150(dist)
             197:     22(ptr)   AccessChain 109(shadowCoord) 24
             198:    8(float)   Load 197
             200:   135(bool)   FOrdLessThan 196 198
             202:   135(bool)   LogicalAnd 195 200
                                SelectionMerge 204 None
                                BranchConditional 202 203 204
             203:                 Label
             205:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34
             206:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 207 207 16 16
                                  Store 103(shadow) 208
                                  Branch 204
             204:               Label
                                Branch 146
             146:             Label
             209:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34
             210:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 211 211 16 16
             212:    8(float) Load 103(shadow)
                              ReturnValue 212
                              FunctionEnd
                              Line 1 78 1
57(filterPCF(vf4;f1;):    8(float) Function None 53
          55(sc):     21(ptr) FunctionParameter
       56(layer):     22(ptr) FunctionParameter
              60:             Label
222(sizeQueryTemp):    221(ptr) Variable Function
     234(texDim):    233(ptr) Variable Function
   248(elements):    242(ptr) Variable Function
     255(levels):    242(ptr) Variable Function
      264(scale):     22(ptr) Variable Function
         271(dx):     22(ptr) Variable Function
         283(dy):     22(ptr) Variable Function
295(shadowFactor):     22(ptr) Variable Function
      301(count):    242(ptr) Variable Function
      308(range):    242(ptr) Variable Function
          315(x):    242(ptr) Variable Function
          337(y):    242(ptr) Variable Function
      368(param):     21(ptr) Variable Function
      370(param):     22(ptr) Variable Function
      372(param):     26(ptr) Variable Function
              61:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
              62:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 16 16 16 16
              65:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 63 55(sc) 46
              67:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 66 56(layer) 46
             215:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 59 57(filterPCF(vf4;f1;)
             216:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             217:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 218 218 16 16
             225:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 223 222(sizeQueryTemp) 46
             226:         154 Load 160(textureShadowMap)
             227:  219(ivec3) ImageQuerySizeLod 226 16
                              Store 222(sizeQueryTemp) 227
             237:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 235 234(texDim) 46
             239:    238(ptr) AccessChain 222(sizeQueryTemp) 16
             240:     11(int) Load 239
             241:    228(int) Bitcast 240
             243:    242(ptr) AccessChain 234(texDim) 16
                              Store 243 241
             244:    238(ptr) AccessChain 222(sizeQueryTemp) 38
             245:     11(int) Load 244
             246:    228(int) Bitcast 245
             247:    242(ptr) AccessChain 234(texDim) 38
                              Store 247 246
             251:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 249 248(elements) 46
             252:    238(ptr) AccessChain 222(sizeQueryTemp) 24
             253:     11(int) Load 252
             254:    228(int) Bitcast 253
                              Store 248(elements) 254
             258:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 256 255(levels) 46
             259:         154 Load 160(textureShadowMap)
             260:     11(int) ImageQueryLevels 259
             261:    228(int) Bitcast 260
                              Store 255(levels) 261
             262:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 263 263 16 16
             267:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 265 264(scale) 46
                              Store 264(scale) 268
             269:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 270 270 16 16
             274:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 272 271(dx) 46
             275:    8(float) Load 264(scale)
             276:    8(float) FMul 275 106
             277:    242(ptr) AccessChain 234(texDim) 16
             278:    228(int) Load 277
             279:    8(float) ConvertSToF 278
             280:    8(float) FDiv 276 279
                              Store 271(dx) 280
             281:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 282 282 16 16
             286:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 284 283(dy) 46
             287:    8(float) Load 264(scale)
             288:    8(float) FMul 287 106
             289:    242(ptr) AccessChain 234(texDim) 38
             290:    228(int) Load 289
             291:    8(float) ConvertSToF 290
             292:    8(float) FDiv 288 291
                              Store 283(dy) 292
             293:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 294 294 16 16
             298:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 296 295(shadowFactor) 46
                              Store 295(shadowFactor) 193
             299:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 300 300 16 16
             304:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 302 301(count) 46
                              Store 301(count) 305
             306:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 307 307 16 16
             311:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 309 308(range) 46
                              Store 308(range) 312
             313:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 314 314 16 16
             318:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 316 315(x) 46
             319:    228(int) Load 308(range)
             320:    228(int) SNegate 319
                              Store 315(x) 320
                              Branch 321
             321:             Label
             325:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             326:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 314 314 16 16
                              LoopMerge 323 324 None
                              Branch 327
             327:             Label
             328:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             329:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 314 314 16 16
             330:    228(int) Load 315(x)
             331:    228(int) Load 308(range)
             333:   135(bool) SLessThanEqual 330 331
                              BranchConditional 333 322 323
             322:               Label
             334:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             335:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 336 336 16 16
             340:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 338 337(y) 46
             341:    228(int)   Load 308(range)
             342:    228(int)   SNegate 341
                                Store 337(y) 342
                                Branch 343
             343:               Label
             347:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             348:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 336 336 16 16
                                LoopMerge 345 346 None
                                Branch 349
             349:               Label
             350:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             351:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 336 336 16 16
             352:    228(int)   Load 337(y)
             353:    228(int)   Load 308(range)
             355:   135(bool)   SLessThanEqual 352 353
                                BranchConditional 355 344 345
             344:                 Label
             356:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             357:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 358 358 16 16
             359:    8(float)     Load 271(dx)
             360:    228(int)     Load 315(x)
             361:    8(float)     ConvertSToF 360
             362:    8(float)     FMul 359 361
             363:    8(float)     Load 283(dy)
             364:    228(int)     Load 337(y)
             365:    8(float)     ConvertSToF 364
             366:    8(float)     FMul 363 365
             367:   23(fvec2)     CompositeConstruct 362 366
             369:   18(fvec4)     Load 55(sc)
                                  Store 368(param) 369
             371:    8(float)     Load 56(layer)
                                  Store 370(param) 371
                                  Store 372(param) 367
             373:    8(float)     FunctionCall 32(textureProj(vf4;f1;vf2;) 368(param) 370(param) 372(param)
             374:    8(float)     Load 295(shadowFactor)
             375:    8(float)     FAdd 374 373
                                  Store 295(shadowFactor) 375
             376:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 377 377 16 16
             378:    228(int)     Load 301(count)
             379:    228(int)     IAdd 378 312
                                  Store 301(count) 379
                                  Branch 346
             346:                 Label
             380:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             381:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 336 336 16 16
             382:    228(int)     Load 337(y)
             383:    228(int)     IAdd 382 312
                                  Store 337(y) 383
                                  Branch 343
             345:               Label
                                Branch 324
             324:               Label
             384:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             385:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 314 314 16 16
             386:    228(int)   Load 315(x)
             387:    228(int)   IAdd 386 312
                                Store 315(x) 387
                                Branch 321
             323:             Label
             388:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59
             389:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 390 390 16 16
             391:    8(float) Load 295(shadowFactor)
             392:    228(int) Load 301(count)
             393:    8(float) ConvertSToF 392
             394:    8(float) FDiv 391 393
                              ReturnValue 394
                              FunctionEnd
                              Line 1 101 49
75(shadow(vf3;vf3;):   68(fvec3) Function None 71
   73(fragcolor):     70(ptr) FunctionParameter
     74(fragPos):     70(ptr) FunctionParameter
              78:             Label
          401(i):    242(ptr) Variable Function
 421(shadowClip):     21(ptr) Variable Function
476(shadowFactor):     22(ptr) Variable Function
      481(param):     21(ptr) Variable Function
      483(param):     22(ptr) Variable Function
              79:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 77
              80:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 16 16 16 16
              83:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 81 73(fragcolor) 46
              86:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 84 74(fragPos) 46
             397:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 77 75(shadow(vf3;vf3;)
             398:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 77
             399:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 400 400 16 16
             404:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 402 401(i) 46
                              Store 401(i) 305
                              Branch 405
             405:             Label
             409:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 77
             410:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 400 400 16 16
                              LoopMerge 407 408 None
                              Branch 411
             411:             Label
             412:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 77
             413:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 400 400 16 16
             414:    228(int) Load 401(i)
             417:   135(bool) SLessThan 414 415
                              BranchConditional 417 406 407
             406:               Label
             418:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 77
             419:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 420 420 16 16
             424:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 422 421(shadowClip) 46
             425:   68(fvec3)   Load 74(fragPos)
             426:    8(float)   CompositeExtract 425 0
             427:    8(float)   CompositeExtract 425 1
             428:    8(float)   CompositeExtract 425 2
             429:   18(fvec4)   CompositeConstruct 426 427 428 106
             469:    228(int)   Load 401(i)
             471:    470(ptr)   AccessChain 467 305 312 469 415
             472:         430   Load 471
             473:   18(fvec4)   VectorTimesMatrix 429 472
                                Store 421(shadowClip) 473
             474:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 475 475 16 16
             478:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 477 476(shadowFactor) 46
             479:    228(int)   Load 401(i)
             480:    8(float)   ConvertSToF 479
             482:   18(fvec4)   Load 421(shadowClip)
                                Store 481(param) 482
                                Store 483(param) 480
             484:    8(float)   FunctionCall 57(filterPCF(vf4;f1;) 481(param) 483(param)
                                Store 476(shadowFactor) 484
             485:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 486 486 16 16
             487:    8(float)   Load 476(shadowFactor)
             488:   68(fvec3)   Load 73(fragcolor)
             489:   68(fvec3)   VectorTimesScalar 488 487
                                Store 73(fragcolor) 489
                                Branch 408
             408:               Label
             490:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 77
             491:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 400 400 16 16
             492:    228(int)   Load 401(i)
             493:    228(int)   IAdd 492 312
                                Store 401(i) 493
                                Branch 405
             407:             Label
             494:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 77
             495:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 496 496 16 16
             497:   68(fvec3) Load 73(fragcolor)
                              ReturnValue 497
                              FunctionEnd
                              Line 1 119 1
  90(@main(vf2;):   18(fvec4) Function None 87
        89(inUV):     26(ptr) FunctionParameter
              93:             Label
    504(fragPos):     70(ptr) Variable Function
     527(normal):     70(ptr) Variable Function
     546(albedo):     21(ptr) Variable Function
  585(fragcolor):     70(ptr) Variable Function
      589(param):     70(ptr) Variable Function
      590(param):     70(ptr) Variable Function
          645(N):     70(ptr) Variable Function
          653(i):    242(ptr) Variable Function
          671(L):     70(ptr) Variable Function
       684(dist):     22(ptr) Variable Function
          695(V):     70(ptr) Variable Function
710(lightCosInnerAngle):     22(ptr) Variable Function
717(lightCosOuterAngle):     22(ptr) Variable Function
 724(lightRange):     22(ptr) Variable Function
        731(dir):     70(ptr) Variable Function
     747(cosDir):     22(ptr) Variable Function
 756(spotEffect):     22(ptr) Variable Function
766(heightAttenuation):     22(ptr) Variable Function
      775(NdotL):     22(ptr) Variable Function
       785(diff):     70(ptr) Variable Function
          793(R):     70(ptr) Variable Function
      803(NdotR):     22(ptr) Variable Function
       813(spec):     70(ptr) Variable Function
      862(param):     70(ptr) Variable Function
      864(param):     70(ptr) Variable Function
              94:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
              95:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 16 16 16 16
              98:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 96 89(inUV) 46
             500:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 92 90(@main(vf2;)
             501:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             502:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 503 503 16 16
             506:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 505 504(fragPos) 46
             513:         507 Load 510(textureposition)
             518:         165 Load 515(samplerposition)
             521:         519 SampledImage 513 518
             522:   23(fvec2) Load 89(inUV)
             523:   18(fvec4) ImageSampleImplicitLod 521 522
             524:   68(fvec3) VectorShuffle 523 523 0 1 2
                              Store 504(fragPos) 524
             525:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 526 526 16 16
             530:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 528 527(normal) 46
             534:         507 Load 531(textureNormal)
             539:         165 Load 536(samplerNormal)
             540:         519 SampledImage 534 539
             541:   23(fvec2) Load 89(inUV)
             542:   18(fvec4) ImageSampleImplicitLod 540 541
             543:   68(fvec3) VectorShuffle 542 542 0 1 2
                              Store 527(normal) 543
             544:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 545 545 16 16
             549:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 547 546(albedo) 46
             553:         507 Load 550(textureAlbedo)
             558:         165 Load 555(samplerAlbedo)
             559:         519 SampledImage 553 558
             560:   23(fvec2) Load 89(inUV)
             561:   18(fvec4) ImageSampleImplicitLod 559 560
                              Store 546(albedo) 561
             562:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 563 563 16 16
             565:    564(ptr) AccessChain 467 305 415
             566:    228(int) Load 565
             568:   135(bool) SGreaterThan 566 305
                              SelectionMerge 570 None
                              BranchConditional 568 569 570
             569:               Label
             571:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             572:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 573 573 16 16
             574:    564(ptr)   AccessChain 467 305 415
             575:    228(int)   Load 574
                                SelectionMerge 581 None
                                Switch 575 581 
                                       case 1: 576
                                       case 2: 577
                                       case 3: 578
                                       case 4: 579
                                       case 5: 580
             576:                 Label
             582:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             583:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 584 584 16 16
             587:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 586 585(fragcolor) 46
                                  Store 589(param) 588
             591:   68(fvec3)     Load 504(fragPos)
                                  Store 590(param) 591
             592:   68(fvec3)     FunctionCall 75(shadow(vf3;vf3;) 589(param) 590(param)
                                  Store 585(fragcolor) 592
             593:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 594 594 16 16
                                  Branch 581
             577:                 Label
             596:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             597:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 598 598 16 16
             599:   68(fvec3)     Load 504(fragPos)
                                  Store 585(fragcolor) 599
             600:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 601 601 16 16
                                  Branch 581
             578:                 Label
             603:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             604:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 605 605 16 16
             606:   68(fvec3)     Load 527(normal)
                                  Store 585(fragcolor) 606
             607:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 608 608 16 16
                                  Branch 581
             579:                 Label
             610:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             611:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 612 612 16 16
             613:   18(fvec4)     Load 546(albedo)
             614:   68(fvec3)     VectorShuffle 613 613 0 1 2
                                  Store 585(fragcolor) 614
             615:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 616 616 16 16
                                  Branch 581
             580:                 Label
             618:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             619:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 620 620 16 16
             621:   18(fvec4)     Load 546(albedo)
             622:   68(fvec3)     VectorShuffle 621 621 3 3 3
                                  Store 585(fragcolor) 622
             623:           4     ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 624 624 16 16
                                  Branch 581
             581:               Label
             627:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             628:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 629 629 16 16
             630:   68(fvec3)   Load 585(fragcolor)
             631:    8(float)   CompositeExtract 630 0
             632:    8(float)   CompositeExtract 630 1
             633:    8(float)   CompositeExtract 630 2
             634:   18(fvec4)   CompositeConstruct 631 632 633 106
                                ReturnValue 634
             570:             Label
             636:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             637:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 638 638 16 16
             639:   18(fvec4) Load 546(albedo)
             640:   68(fvec3) VectorShuffle 639 639 0 1 2
             642:   68(fvec3) VectorTimesScalar 640 641
                              Store 585(fragcolor) 642
             643:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 644 644 16 16
             648:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 646 645(N) 46
             649:   68(fvec3) Load 527(normal)
             650:   68(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 649
                              Store 645(N) 650
             651:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 652 652 16 16
             655:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 654 653(i) 46
                              Store 653(i) 305
                              Branch 656
             656:             Label
             660:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             661:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 652 652 16 16
                              LoopMerge 658 659 None
                              Branch 662
             662:             Label
             663:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             664:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 652 652 16 16
             665:    228(int) Load 653(i)
             667:   135(bool) SLessThan 665 415
                              BranchConditional 667 657 658
             657:               Label
             668:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             669:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 670 670 16 16
             674:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 672 671(L) 46
             675:    228(int)   Load 653(i)
             677:    676(ptr)   AccessChain 467 305 312 675 305
             678:   18(fvec4)   Load 677
             679:   68(fvec3)   VectorShuffle 678 678 0 1 2
             680:   68(fvec3)   Load 504(fragPos)
             681:   68(fvec3)   FSub 679 680
                                Store 671(L) 681
             682:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 683 683 16 16
             686:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 685 684(dist) 46
             687:   68(fvec3)   Load 671(L)
             688:    8(float)   ExtInst 3(GLSL.std.450) 66(Length) 687
                                Store 684(dist) 688
             689:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 690 690 16 16
             691:   68(fvec3)   Load 671(L)
             692:   68(fvec3)   ExtInst 3(GLSL.std.450) 69(Normalize) 691
                                Store 671(L) 692
             693:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 694 694 16 16
             698:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 696 695(V) 46
             699:    676(ptr)   AccessChain 467 305 305
             700:   18(fvec4)   Load 699
             701:   68(fvec3)   VectorShuffle 700 700 0 1 2
             702:   68(fvec3)   Load 504(fragPos)
             703:   68(fvec3)   FSub 701 702
                                Store 695(V) 703
             704:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 705 705 16 16
             706:   68(fvec3)   Load 695(V)
             707:   68(fvec3)   ExtInst 3(GLSL.std.450) 69(Normalize) 706
                                Store 695(V) 707
             708:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 709 709 16 16
             713:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 711 710(lightCosInnerAngle) 46
                                Store 710(lightCosInnerAngle) 714
             715:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 716 716 16 16
             720:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 718 717(lightCosOuterAngle) 46
                                Store 717(lightCosOuterAngle) 721
             722:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 723 723 16 16
             727:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 725 724(lightRange) 46
                                Store 724(lightRange) 728
             729:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 730 730 16 16
             734:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 732 731(dir) 46
             735:    228(int)   Load 653(i)
             736:    676(ptr)   AccessChain 467 305 312 735 305
             737:   18(fvec4)   Load 736
             738:   68(fvec3)   VectorShuffle 737 737 0 1 2
             739:    228(int)   Load 653(i)
             740:    676(ptr)   AccessChain 467 305 312 739 312
             741:   18(fvec4)   Load 740
             742:   68(fvec3)   VectorShuffle 741 741 0 1 2
             743:   68(fvec3)   FSub 738 742
             744:   68(fvec3)   ExtInst 3(GLSL.std.450) 69(Normalize) 743
                                Store 731(dir) 744
             745:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 746 746 16 16
             750:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 748 747(cosDir) 46
             751:   68(fvec3)   Load 671(L)
             752:   68(fvec3)   Load 731(dir)
             753:    8(float)   Dot 751 752
                                Store 747(cosDir) 753
             754:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 755 755 16 16
             759:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 757 756(spotEffect) 46
             760:    8(float)   Load 717(lightCosOuterAngle)
             761:    8(float)   Load 710(lightCosInnerAngle)
             762:    8(float)   Load 747(cosDir)
             763:    8(float)   ExtInst 3(GLSL.std.450) 49(SmoothStep) 760 761 762
                                Store 756(spotEffect) 763
             764:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 765 765 16 16
             769:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 767 766(heightAttenuation) 46
             770:    8(float)   Load 724(lightRange)
             771:    8(float)   Load 684(dist)
             772:    8(float)   ExtInst 3(GLSL.std.450) 49(SmoothStep) 770 193 771
                                Store 766(heightAttenuation) 772
             773:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 774 774 16 16
             778:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 776 775(NdotL) 46
             779:   68(fvec3)   Load 645(N)
             780:   68(fvec3)   Load 671(L)
             781:    8(float)   Dot 779 780
             782:    8(float)   ExtInst 3(GLSL.std.450) 40(FMax) 193 781
                                Store 775(NdotL) 782
             783:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 784 784 16 16
             788:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 786 785(diff) 46
             789:    8(float)   Load 775(NdotL)
             790:   68(fvec3)   CompositeConstruct 789 789 789
                                Store 785(diff) 790
             791:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 792 792 16 16
             796:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 794 793(R) 46
             797:   68(fvec3)   Load 671(L)
             798:   68(fvec3)   FNegate 797
             799:   68(fvec3)   Load 645(N)
             800:   68(fvec3)   ExtInst 3(GLSL.std.450) 71(Reflect) 798 799
                                Store 793(R) 800
             801:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 802 802 16 16
             806:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 804 803(NdotR) 46
             807:   68(fvec3)   Load 793(R)
             808:   68(fvec3)   Load 695(V)
             809:    8(float)   Dot 807 808
             810:    8(float)   ExtInst 3(GLSL.std.450) 40(FMax) 193 809
                                Store 803(NdotR) 810
             811:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 812 812 16 16
             816:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 814 813(spec) 46
             817:    8(float)   Load 803(NdotR)
             819:    8(float)   ExtInst 3(GLSL.std.450) 26(Pow) 817 818
             820:     22(ptr)   AccessChain 546(albedo) 17
             821:    8(float)   Load 820
             822:    8(float)   FMul 819 821
             824:    8(float)   FMul 822 823
             825:   68(fvec3)   CompositeConstruct 824 824 824
                                Store 813(spec) 825
             826:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 827 827 16 16
             828:   68(fvec3)   Load 785(diff)
             829:   68(fvec3)   Load 813(spec)
             830:   68(fvec3)   FAdd 828 829
             831:    8(float)   Load 756(spotEffect)
             832:   68(fvec3)   VectorTimesScalar 830 831
             833:    8(float)   Load 766(heightAttenuation)
             834:   68(fvec3)   VectorTimesScalar 832 833
             835:    228(int)   Load 653(i)
             837:    676(ptr)   AccessChain 467 305 312 835 836
             838:   18(fvec4)   Load 837
             839:   68(fvec3)   VectorShuffle 838 838 0 1 2
             840:   68(fvec3)   FMul 834 839
             841:   18(fvec4)   Load 546(albedo)
             842:   68(fvec3)   VectorShuffle 841 841 0 1 2
             843:   68(fvec3)   FMul 840 842
             844:   68(fvec3)   Load 585(fragcolor)
             845:   68(fvec3)   FAdd 844 843
                                Store 585(fragcolor) 845
                                Branch 659
             659:               Label
             846:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             847:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 652 652 16 16
             848:    228(int)   Load 653(i)
             849:    228(int)   IAdd 848 312
                                Store 653(i) 849
                                Branch 656
             658:             Label
             850:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             851:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 852 852 16 16
             853:    564(ptr) AccessChain 467 305 836
             854:    228(int) Load 853
             856:   135(bool) SGreaterThan 854 305
                              SelectionMerge 858 None
                              BranchConditional 856 857 858
             857:               Label
             859:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             860:           4   ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 861 861 16 16
             863:   68(fvec3)   Load 585(fragcolor)
                                Store 862(param) 863
             865:   68(fvec3)   Load 504(fragPos)
                                Store 864(param) 865
             866:   68(fvec3)   FunctionCall 75(shadow(vf3;vf3;) 862(param) 864(param)
                                Store 585(fragcolor) 866
                                Branch 858
             858:             Label
             867:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92
             868:           4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 869 869 16 16
             870:   68(fvec3) Load 585(fragcolor)
             871:    8(float) CompositeExtract 870 0
             872:    8(float) CompositeExtract 870 1
             873:    8(float) CompositeExtract 870 2
             874:   18(fvec4) CompositeConstruct 871 872 873 106
                              ReturnValue 874
                              FunctionEnd
