spv.glsl.register.autoassign.frag
// Module Version 10000
// Generated by (magic number): 80002
// Id's are bound by 142

                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 137
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              Name 4  "main"
                              Name 9  "Func1("
                              Name 11  "Func2("
                              Name 13  "Func2_unused("
                              Name 17  "g_tTex1"
                              Name 21  "g_sSamp1"
                              Name 27  "g_tTex2"
                              Name 29  "g_sSamp2"
                              Name 39  "g_tTex3"
                              Name 46  "g_sSamp3"
                              Name 64  "g_tTex4"
                              Name 69  "g_sSamp4"
                              Name 84  "g_tTex5"
                              Name 86  "g_sSamp5"
                              Name 93  "MyStruct_t"
                              MemberName 93(MyStruct_t) 0  "a"
                              MemberName 93(MyStruct_t) 1  "b"
                              MemberName 93(MyStruct_t) 2  "c"
                              Name 95  "myblock"
                              MemberName 95(myblock) 0  "mystruct"
                              MemberName 95(myblock) 1  "myvec4_a"
                              MemberName 95(myblock) 2  "myvec4_b"
                              MemberName 95(myblock) 3  "myint4_a"
                              Name 97  ""
                              Name 119  "g_tTex_unused1"
                              Name 121  "g_sSamp_unused1"
                              Name 126  "g_tTex_unused2"
                              Name 128  "g_sSamp_unused2"
                              Name 137  "FragColor"
                              Name 141  "g_tTex_unused3"
                              Decorate 17(g_tTex1) DescriptorSet 0
                              Decorate 17(g_tTex1) Binding 11
                              Decorate 21(g_sSamp1) DescriptorSet 0
                              Decorate 21(g_sSamp1) Binding 5
                              Decorate 27(g_tTex2) DescriptorSet 0
                              Decorate 27(g_tTex2) Binding 14
                              Decorate 29(g_sSamp2) DescriptorSet 0
                              Decorate 29(g_sSamp2) Binding 6
                              Decorate 39(g_tTex3) DescriptorSet 0
                              Decorate 39(g_tTex3) Binding 13
                              Decorate 46(g_sSamp3) DescriptorSet 0
                              Decorate 46(g_sSamp3) Binding 7
                              Decorate 64(g_tTex4) DescriptorSet 0
                              Decorate 64(g_tTex4) Binding 15
                              Decorate 69(g_sSamp4) DescriptorSet 0
                              Decorate 69(g_sSamp4) Binding 8
                              Decorate 84(g_tTex5) DescriptorSet 0
                              Decorate 84(g_tTex5) Binding 16
                              Decorate 86(g_sSamp5) DescriptorSet 0
                              Decorate 86(g_sSamp5) Binding 9
                              MemberDecorate 93(MyStruct_t) 0 Offset 0
                              MemberDecorate 93(MyStruct_t) 1 Offset 4
                              MemberDecorate 93(MyStruct_t) 2 Offset 16
                              MemberDecorate 95(myblock) 0 Offset 0
                              MemberDecorate 95(myblock) 1 Offset 32
                              MemberDecorate 95(myblock) 2 Offset 48
                              MemberDecorate 95(myblock) 3 Offset 64
                              Decorate 95(myblock) Block
                              Decorate 97 DescriptorSet 0
                              Decorate 97 Binding 24
                              Decorate 119(g_tTex_unused1) DescriptorSet 0
                              Decorate 119(g_tTex_unused1) Binding 10
                              Decorate 121(g_sSamp_unused1) DescriptorSet 0
                              Decorate 126(g_tTex_unused2) DescriptorSet 0
                              Decorate 126(g_tTex_unused2) Binding 12
                              Decorate 128(g_sSamp_unused2) DescriptorSet 0
                              Decorate 137(FragColor) Location 0
                              Decorate 141(g_tTex_unused3) DescriptorSet 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypeFunction 7(fvec4)
              15:             TypeImage 6(float) 1D sampled format:Unknown
              16:             TypePointer UniformConstant 15
     17(g_tTex1):     16(ptr) Variable UniformConstant
              19:             TypeSampler
              20:             TypePointer UniformConstant 19
    21(g_sSamp1):     20(ptr) Variable UniformConstant
              23:             TypeSampledImage 15
              25:    6(float) Constant 1036831949
     27(g_tTex2):     16(ptr) Variable UniformConstant
    29(g_sSamp2):     20(ptr) Variable UniformConstant
              32:    6(float) Constant 1045220557
              35:             TypeInt 32 0
              36:     35(int) Constant 2
              37:             TypeArray 15 36
              38:             TypePointer UniformConstant 37
     39(g_tTex3):     38(ptr) Variable UniformConstant
              40:             TypeInt 32 1
              41:     40(int) Constant 0
              44:             TypeArray 19 36
              45:             TypePointer UniformConstant 44
    46(g_sSamp3):     45(ptr) Variable UniformConstant
              50:    6(float) Constant 1050253722
              53:     40(int) Constant 1
              61:     35(int) Constant 3
              62:             TypeArray 15 61
              63:             TypePointer UniformConstant 62
     64(g_tTex4):     63(ptr) Variable UniformConstant
              67:             TypeArray 19 61
              68:             TypePointer UniformConstant 67
    69(g_sSamp4):     68(ptr) Variable UniformConstant
              73:    6(float) Constant 1053609165
              76:     40(int) Constant 2
     84(g_tTex5):     16(ptr) Variable UniformConstant
    86(g_sSamp5):     20(ptr) Variable UniformConstant
              89:    6(float) Constant 1056964608
              92:             TypeVector 6(float) 3
  93(MyStruct_t):             TypeStruct 40(int) 6(float) 92(fvec3)
              94:             TypeVector 40(int) 4
     95(myblock):             TypeStruct 93(MyStruct_t) 7(fvec4) 7(fvec4) 94(ivec4)
              96:             TypePointer Uniform 95(myblock)
              97:     96(ptr) Variable Uniform
              98:     35(int) Constant 1
              99:             TypePointer Uniform 6(float)
119(g_tTex_unused1):     16(ptr) Variable UniformConstant
121(g_sSamp_unused1):     20(ptr) Variable UniformConstant
             124:    6(float) Constant 1066192077
126(g_tTex_unused2):     16(ptr) Variable UniformConstant
128(g_sSamp_unused2):     20(ptr) Variable UniformConstant
             131:    6(float) Constant 1067030938
             136:             TypePointer Output 7(fvec4)
  137(FragColor):    136(ptr) Variable Output
141(g_tTex_unused3):     16(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
             138:    7(fvec4) FunctionCall 9(Func1()
             139:    7(fvec4) FunctionCall 11(Func2()
             140:    7(fvec4) FAdd 138 139
                              Store 137(FragColor) 140
                              Return
                              FunctionEnd
       9(Func1():    7(fvec4) Function None 8
              10:             Label
              18:          15 Load 17(g_tTex1)
              22:          19 Load 21(g_sSamp1)
              24:          23 SampledImage 18 22
              26:    7(fvec4) ImageSampleImplicitLod 24 25
              28:          15 Load 27(g_tTex2)
              30:          19 Load 29(g_sSamp2)
              31:          23 SampledImage 28 30
              33:    7(fvec4) ImageSampleImplicitLod 31 32
              34:    7(fvec4) FAdd 26 33
              42:     16(ptr) AccessChain 39(g_tTex3) 41
              43:          15 Load 42
              47:     20(ptr) AccessChain 46(g_sSamp3) 41
              48:          19 Load 47
              49:          23 SampledImage 43 48
              51:    7(fvec4) ImageSampleImplicitLod 49 50
              52:    7(fvec4) FAdd 34 51
              54:     16(ptr) AccessChain 39(g_tTex3) 53
              55:          15 Load 54
              56:     20(ptr) AccessChain 46(g_sSamp3) 53
              57:          19 Load 56
              58:          23 SampledImage 55 57
              59:    7(fvec4) ImageSampleImplicitLod 58 50
              60:    7(fvec4) FAdd 52 59
              65:     16(ptr) AccessChain 64(g_tTex4) 53
              66:          15 Load 65
              70:     20(ptr) AccessChain 69(g_sSamp4) 53
              71:          19 Load 70
              72:          23 SampledImage 66 71
              74:    7(fvec4) ImageSampleImplicitLod 72 73
              75:    7(fvec4) FAdd 60 74
              77:     16(ptr) AccessChain 64(g_tTex4) 76
              78:          15 Load 77
              79:     20(ptr) AccessChain 69(g_sSamp4) 76
              80:          19 Load 79
              81:          23 SampledImage 78 80
              82:    7(fvec4) ImageSampleImplicitLod 81 73
              83:    7(fvec4) FAdd 75 82
              85:          15 Load 84(g_tTex5)
              87:          19 Load 86(g_sSamp5)
              88:          23 SampledImage 85 87
              90:    7(fvec4) ImageSampleImplicitLod 88 89
              91:    7(fvec4) FAdd 83 90
             100:     99(ptr) AccessChain 97 41 76 98
             101:    6(float) Load 100
             102:    7(fvec4) CompositeConstruct 101 101 101 101
             103:    7(fvec4) FAdd 91 102
                              ReturnValue 103
                              FunctionEnd
      11(Func2():    7(fvec4) Function None 8
              12:             Label
             106:          15 Load 17(g_tTex1)
             107:          19 Load 21(g_sSamp1)
             108:          23 SampledImage 106 107
             109:    7(fvec4) ImageSampleImplicitLod 108 25
             110:     16(ptr) AccessChain 39(g_tTex3) 53
             111:          15 Load 110
             112:     20(ptr) AccessChain 46(g_sSamp3) 53
             113:          19 Load 112
             114:          23 SampledImage 111 113
             115:    7(fvec4) ImageSampleImplicitLod 114 50
             116:    7(fvec4) FAdd 109 115
                              ReturnValue 116
                              FunctionEnd
13(Func2_unused():    7(fvec4) Function None 8
              14:             Label
             120:          15 Load 119(g_tTex_unused1)
             122:          19 Load 121(g_sSamp_unused1)
             123:          23 SampledImage 120 122
             125:    7(fvec4) ImageSampleImplicitLod 123 124
             127:          15 Load 126(g_tTex_unused2)
             129:          19 Load 128(g_sSamp_unused2)
             130:          23 SampledImage 127 129
             132:    7(fvec4) ImageSampleImplicitLod 130 131
             133:    7(fvec4) FAdd 125 132
                              ReturnValue 133
                              FunctionEnd
