spv.aggOps.frag
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.
WARNING: 0:4: '' : all default precisions are highp; use precision statements to quiet warning, e.g.:
         "precision mediump int; precision highp float;" 


Linked fragment stage:


// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 215

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 16 41 101 213
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              Name 4  "main"
                              Name 8  "s1"
                              MemberName 8(s1) 0  "i"
                              MemberName 8(s1) 1  "f"
                              Name 13  "a"
                              Name 16  "u"
                              Name 37  "b"
                              Name 41  "w"
                              Name 55  "s1"
                              MemberName 55(s1) 0  "i"
                              MemberName 55(s1) 1  "f"
                              Name 56  "s2"
                              MemberName 56(s2) 0  "i"
                              MemberName 56(s2) 1  "f"
                              MemberName 56(s2) 2  "s1_1"
                              Name 57  "ub1"
                              MemberName 57(ub1) 0  "foo2a"
                              Name 59  "uName1"
                              Name 64  "s1"
                              MemberName 64(s1) 0  "i"
                              MemberName 64(s1) 1  "f"
                              Name 65  "s2"
                              MemberName 65(s2) 0  "i"
                              MemberName 65(s2) 1  "f"
                              MemberName 65(s2) 2  "s1_1"
                              Name 66  "ub2"
                              MemberName 66(ub2) 0  "foo2b"
                              Name 68  "uName2"
                              Name 93  "v"
                              Name 97  "samp2D"
                              Name 101  "coord"
                              Name 213  "color"
                              MemberDecorate 55(s1) 0 Offset 0
                              MemberDecorate 55(s1) 1 Offset 4
                              MemberDecorate 56(s2) 0 Offset 0
                              MemberDecorate 56(s2) 1 Offset 4
                              MemberDecorate 56(s2) 2 Offset 16
                              MemberDecorate 57(ub1) 0 Offset 0
                              Decorate 57(ub1) Block
                              Decorate 59(uName1) DescriptorSet 0
                              MemberDecorate 64(s1) 0 Offset 0
                              MemberDecorate 64(s1) 1 Offset 4
                              MemberDecorate 65(s2) 0 Offset 0
                              MemberDecorate 65(s2) 1 Offset 4
                              MemberDecorate 65(s2) 2 Offset 8
                              MemberDecorate 66(ub2) 0 Offset 0
                              Decorate 66(ub2) BufferBlock
                              Decorate 68(uName2) DescriptorSet 0
                              Decorate 97(samp2D) DescriptorSet 0
                              Decorate 101(coord) RelaxedPrecision
                              Decorate 102 RelaxedPrecision
                              Decorate 107 RelaxedPrecision
                              Decorate 108 RelaxedPrecision
                              Decorate 129 RelaxedPrecision
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypeFloat 32
           8(s1):             TypeStruct 6(int) 7(float)
               9:             TypeInt 32 0
              10:      9(int) Constant 3
              11:             TypeArray 8(s1) 10
              12:             TypePointer Function 11
              14:             TypeVector 7(float) 4
              15:             TypePointer Input 14(fvec4)
           16(u):     15(ptr) Variable Input
              17:      9(int) Constant 0
              18:             TypePointer Input 7(float)
              22:      9(int) Constant 1
              26:      9(int) Constant 2
              33:      6(int) Constant 14
              34:    7(float) Constant 1096810496
              35:       8(s1) ConstantComposite 33 34
              38:      6(int) Constant 17
              39:    7(float) Constant 1099431936
              40:       8(s1) ConstantComposite 38 39
           41(w):     15(ptr) Variable Input
          55(s1):             TypeStruct 6(int) 7(float)
          56(s2):             TypeStruct 6(int) 7(float) 55(s1)
         57(ub1):             TypeStruct 56(s2)
              58:             TypePointer Uniform 57(ub1)
      59(uName1):     58(ptr) Variable Uniform
              60:      6(int) Constant 0
              61:             TypePointer Uniform 56(s2)
          64(s1):             TypeStruct 6(int) 7(float)
          65(s2):             TypeStruct 6(int) 7(float) 64(s1)
         66(ub2):             TypeStruct 65(s2)
              67:             TypePointer Uniform 66(ub2)
      68(uName2):     67(ptr) Variable Uniform
              69:             TypePointer Uniform 65(s2)
              72:             TypeBool
              92:             TypePointer Function 14(fvec4)
              94:             TypeImage 7(float) 2D sampled format:Unknown
              95:             TypeSampledImage 94
              96:             TypePointer UniformConstant 95
      97(samp2D):     96(ptr) Variable UniformConstant
              99:             TypeVector 7(float) 2
             100:             TypePointer Input 99(fvec2)
      101(coord):    100(ptr) Variable Input
             106:    7(float) Constant 1073741824
             112:             TypeVector 72(bool) 4
             117:    7(float) Constant 1077936128
             126:    7(float) Constant 1082130432
             132:             TypeVector 72(bool) 2
             137:    7(float) Constant 1084227584
             173:    7(float) Constant 1086324736
             209:    7(float) Constant 1088421888
             212:             TypePointer Output 14(fvec4)
      213(color):    212(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
           13(a):     12(ptr) Variable Function
           37(b):     12(ptr) Variable Function
           93(v):     92(ptr) Variable Function
              19:     18(ptr) AccessChain 16(u) 17
              20:    7(float) Load 19
              21:      6(int) ConvertFToS 20
              23:     18(ptr) AccessChain 16(u) 22
              24:    7(float) Load 23
              25:       8(s1) CompositeConstruct 21 24
              27:     18(ptr) AccessChain 16(u) 26
              28:    7(float) Load 27
              29:      6(int) ConvertFToS 28
              30:     18(ptr) AccessChain 16(u) 10
              31:    7(float) Load 30
              32:       8(s1) CompositeConstruct 29 31
              36:          11 CompositeConstruct 25 32 35
                              Store 13(a) 36
              42:     18(ptr) AccessChain 41(w) 17
              43:    7(float) Load 42
              44:      6(int) ConvertFToS 43
              45:     18(ptr) AccessChain 41(w) 22
              46:    7(float) Load 45
              47:       8(s1) CompositeConstruct 44 46
              48:     18(ptr) AccessChain 41(w) 26
              49:    7(float) Load 48
              50:      6(int) ConvertFToS 49
              51:     18(ptr) AccessChain 41(w) 10
              52:    7(float) Load 51
              53:       8(s1) CompositeConstruct 50 52
              54:          11 CompositeConstruct 40 47 53
                              Store 37(b) 54
              62:     61(ptr) AccessChain 59(uName1) 60
              63:      56(s2) Load 62
              70:     69(ptr) AccessChain 68(uName2) 60
              71:      65(s2) Load 70
              73:      6(int) CompositeExtract 63 0
              74:      6(int) CompositeExtract 71 0
              75:    72(bool) IEqual 73 74
              76:    7(float) CompositeExtract 63 1
              77:    7(float) CompositeExtract 71 1
              78:    72(bool) FOrdEqual 76 77
              79:    72(bool) LogicalAnd 75 78
              80:      55(s1) CompositeExtract 63 2
              81:      64(s1) CompositeExtract 71 2
              82:      6(int) CompositeExtract 80 0
              83:      6(int) CompositeExtract 81 0
              84:    72(bool) IEqual 82 83
              85:    7(float) CompositeExtract 80 1
              86:    7(float) CompositeExtract 81 1
              87:    72(bool) FOrdEqual 85 86
              88:    72(bool) LogicalAnd 84 87
              89:    72(bool) LogicalAnd 79 88
                              SelectionMerge 91 None
                              BranchConditional 89 90 104
              90:               Label
              98:          95   Load 97(samp2D)
             102:   99(fvec2)   Load 101(coord)
             103:   14(fvec4)   ImageSampleImplicitLod 98 102
                                Store 93(v) 103
                                Branch 91
             104:               Label
             105:          95   Load 97(samp2D)
             107:   99(fvec2)   Load 101(coord)
             108:   99(fvec2)   VectorTimesScalar 107 106
             109:   14(fvec4)   ImageSampleImplicitLod 105 108
                                Store 93(v) 109
                                Branch 91
              91:             Label
             110:   14(fvec4) Load 16(u)
             111:   14(fvec4) Load 93(v)
             113:  112(bvec4) FOrdEqual 110 111
             114:    72(bool) All 113
                              SelectionMerge 116 None
                              BranchConditional 114 115 116
             115:               Label
             118:   14(fvec4)   Load 93(v)
             119:   14(fvec4)   VectorTimesScalar 118 117
                                Store 93(v) 119
                                Branch 116
             116:             Label
             120:   14(fvec4) Load 16(u)
             121:   14(fvec4) Load 93(v)
             122:  112(bvec4) FOrdNotEqual 120 121
             123:    72(bool) Any 122
                              SelectionMerge 125 None
                              BranchConditional 123 124 125
             124:               Label
             127:   14(fvec4)   Load 93(v)
             128:   14(fvec4)   VectorTimesScalar 127 126
                                Store 93(v) 128
                                Branch 125
             125:             Label
             129:   99(fvec2) Load 101(coord)
             130:   14(fvec4) Load 93(v)
             131:   99(fvec2) VectorShuffle 130 130 1 3
             133:  132(bvec2) FOrdEqual 129 131
             134:    72(bool) All 133
                              SelectionMerge 136 None
                              BranchConditional 134 135 136
             135:               Label
             138:   14(fvec4)   Load 93(v)
             139:   14(fvec4)   VectorTimesScalar 138 137
                                Store 93(v) 139
                                Branch 136
             136:             Label
             140:          11 Load 13(a)
             141:          11 Load 37(b)
             142:       8(s1) CompositeExtract 140 0
             143:       8(s1) CompositeExtract 141 0
             144:      6(int) CompositeExtract 142 0
             145:      6(int) CompositeExtract 143 0
             146:    72(bool) IEqual 144 145
             147:    7(float) CompositeExtract 142 1
             148:    7(float) CompositeExtract 143 1
             149:    72(bool) FOrdEqual 147 148
             150:    72(bool) LogicalAnd 146 149
             151:       8(s1) CompositeExtract 140 1
             152:       8(s1) CompositeExtract 141 1
             153:      6(int) CompositeExtract 151 0
             154:      6(int) CompositeExtract 152 0
             155:    72(bool) IEqual 153 154
             156:    7(float) CompositeExtract 151 1
             157:    7(float) CompositeExtract 152 1
             158:    72(bool) FOrdEqual 156 157
             159:    72(bool) LogicalAnd 155 158
             160:    72(bool) LogicalAnd 150 159
             161:       8(s1) CompositeExtract 140 2
             162:       8(s1) CompositeExtract 141 2
             163:      6(int) CompositeExtract 161 0
             164:      6(int) CompositeExtract 162 0
             165:    72(bool) IEqual 163 164
             166:    7(float) CompositeExtract 161 1
             167:    7(float) CompositeExtract 162 1
             168:    72(bool) FOrdEqual 166 167
             169:    72(bool) LogicalAnd 165 168
             170:    72(bool) LogicalAnd 160 169
                              SelectionMerge 172 None
                              BranchConditional 170 171 172
             171:               Label
             174:   14(fvec4)   Load 93(v)
             175:   14(fvec4)   VectorTimesScalar 174 173
                                Store 93(v) 175
                                Branch 172
             172:             Label
             176:          11 Load 13(a)
             177:          11 Load 37(b)
             178:       8(s1) CompositeExtract 176 0
             179:       8(s1) CompositeExtract 177 0
             180:      6(int) CompositeExtract 178 0
             181:      6(int) CompositeExtract 179 0
             182:    72(bool) INotEqual 180 181
             183:    7(float) CompositeExtract 178 1
             184:    7(float) CompositeExtract 179 1
             185:    72(bool) FOrdNotEqual 183 184
             186:    72(bool) LogicalOr 182 185
             187:       8(s1) CompositeExtract 176 1
             188:       8(s1) CompositeExtract 177 1
             189:      6(int) CompositeExtract 187 0
             190:      6(int) CompositeExtract 188 0
             191:    72(bool) INotEqual 189 190
             192:    7(float) CompositeExtract 187 1
             193:    7(float) CompositeExtract 188 1
             194:    72(bool) FOrdNotEqual 192 193
             195:    72(bool) LogicalOr 191 194
             196:    72(bool) LogicalOr 186 195
             197:       8(s1) CompositeExtract 176 2
             198:       8(s1) CompositeExtract 177 2
             199:      6(int) CompositeExtract 197 0
             200:      6(int) CompositeExtract 198 0
             201:    72(bool) INotEqual 199 200
             202:    7(float) CompositeExtract 197 1
             203:    7(float) CompositeExtract 198 1
             204:    72(bool) FOrdNotEqual 202 203
             205:    72(bool) LogicalOr 201 204
             206:    72(bool) LogicalOr 196 205
                              SelectionMerge 208 None
                              BranchConditional 206 207 208
             207:               Label
             210:   14(fvec4)   Load 93(v)
             211:   14(fvec4)   VectorTimesScalar 210 209
                                Store 93(v) 211
                                Branch 208
             208:             Label
             214:   14(fvec4) Load 93(v)
                              Store 213(color) 214
                              Return
                              FunctionEnd
