spv.textureGatherBiasLod.frag
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 298

                              Capability Shader
                              Capability ImageGatherExtended
                              Capability SparseResidency
                              Capability SampledCubeArray
                              Capability ImageGatherBiasLodAMD
                              Extension  "SPV_AMD_texture_gather_bias_lod"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 20 25 37 61 176 296
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_AMD_texture_gather_bias_lod"
                              SourceExtension  "GL_ARB_sparse_texture2"
                              Name 4  "main"
                              Name 9  "texel"
                              Name 12  "result"
                              Name 16  "s2D"
                              Name 20  "c2"
                              Name 25  "bias"
                              Name 33  "s2DArray"
                              Name 37  "c3"
                              Name 47  "sCube"
                              Name 58  "sCubeArray"
                              Name 61  "c4"
                              Name 104  "ResType"
                              Name 176  "lod"
                              Name 296  "fragColor"
                              Decorate 16(s2D) DescriptorSet 0
                              Decorate 33(s2DArray) DescriptorSet 0
                              Decorate 47(sCube) DescriptorSet 0
                              Decorate 58(sCubeArray) DescriptorSet 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Function 7(fvec4)
              10:    6(float) Constant 0
              11:    7(fvec4) ConstantComposite 10 10 10 10
              13:             TypeImage 6(float) 2D sampled format:Unknown
              14:             TypeSampledImage 13
              15:             TypePointer UniformConstant 14
         16(s2D):     15(ptr) Variable UniformConstant
              18:             TypeVector 6(float) 2
              19:             TypePointer Input 18(fvec2)
          20(c2):     19(ptr) Variable Input
              22:             TypeInt 32 1
              23:     22(int) Constant 0
              24:             TypePointer Input 6(float)
        25(bias):     24(ptr) Variable Input
              30:             TypeImage 6(float) 2D array sampled format:Unknown
              31:             TypeSampledImage 30
              32:             TypePointer UniformConstant 31
    33(s2DArray):     32(ptr) Variable UniformConstant
              35:             TypeVector 6(float) 3
              36:             TypePointer Input 35(fvec3)
          37(c3):     36(ptr) Variable Input
              39:     22(int) Constant 1
              44:             TypeImage 6(float) Cube sampled format:Unknown
              45:             TypeSampledImage 44
              46:             TypePointer UniformConstant 45
       47(sCube):     46(ptr) Variable UniformConstant
              50:     22(int) Constant 2
              55:             TypeImage 6(float) Cube array sampled format:Unknown
              56:             TypeSampledImage 55
              57:             TypePointer UniformConstant 56
  58(sCubeArray):     57(ptr) Variable UniformConstant
              60:             TypePointer Input 7(fvec4)
          61(c4):     60(ptr) Variable Input
              63:     22(int) Constant 3
              70:             TypeVector 22(int) 2
              71:   70(ivec2) ConstantComposite 23 23
              78:   70(ivec2) ConstantComposite 23 39
              85:             TypeInt 32 0
              86:     85(int) Constant 4
              87:             TypeArray 70(ivec2) 86
              88:   70(ivec2) ConstantComposite 39 23
              89:   70(ivec2) ConstantComposite 39 39
              90:          87 ConstantComposite 71 78 88 89
    104(ResType):             TypeStruct 22(int) 7(fvec4)
        176(lod):     24(ptr) Variable Input
             295:             TypePointer Output 7(fvec4)
  296(fragColor):    295(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
        9(texel):      8(ptr) Variable Function
      12(result):      8(ptr) Variable Function
                              Store 9(texel) 11
                              Store 12(result) 11
              17:          14 Load 16(s2D)
              21:   18(fvec2) Load 20(c2)
              26:    6(float) Load 25(bias)
              27:    7(fvec4) ImageGather 17 21 23 Bias 26
              28:    7(fvec4) Load 9(texel)
              29:    7(fvec4) FAdd 28 27
                              Store 9(texel) 29
              34:          31 Load 33(s2DArray)
              38:   35(fvec3) Load 37(c3)
              40:    6(float) Load 25(bias)
              41:    7(fvec4) ImageGather 34 38 39 Bias 40
              42:    7(fvec4) Load 9(texel)
              43:    7(fvec4) FAdd 42 41
                              Store 9(texel) 43
              48:          45 Load 47(sCube)
              49:   35(fvec3) Load 37(c3)
              51:    6(float) Load 25(bias)
              52:    7(fvec4) ImageGather 48 49 50 Bias 51
              53:    7(fvec4) Load 9(texel)
              54:    7(fvec4) FAdd 53 52
                              Store 9(texel) 54
              59:          56 Load 58(sCubeArray)
              62:    7(fvec4) Load 61(c4)
              64:    6(float) Load 25(bias)
              65:    7(fvec4) ImageGather 59 62 63 Bias 64
              66:    7(fvec4) Load 9(texel)
              67:    7(fvec4) FAdd 66 65
                              Store 9(texel) 67
              68:          14 Load 16(s2D)
              69:   18(fvec2) Load 20(c2)
              72:    6(float) Load 25(bias)
              73:    7(fvec4) ImageGather 68 69 23 Bias ConstOffset 72 71
              74:    7(fvec4) Load 9(texel)
              75:    7(fvec4) FAdd 74 73
                              Store 9(texel) 75
              76:          31 Load 33(s2DArray)
              77:   35(fvec3) Load 37(c3)
              79:    6(float) Load 25(bias)
              80:    7(fvec4) ImageGather 76 77 39 Bias ConstOffset 79 78
              81:    7(fvec4) Load 9(texel)
              82:    7(fvec4) FAdd 81 80
                              Store 9(texel) 82
              83:          14 Load 16(s2D)
              84:   18(fvec2) Load 20(c2)
              91:    6(float) Load 25(bias)
              92:    7(fvec4) ImageGather 83 84 23 Bias ConstOffsets 91 90
              93:    7(fvec4) Load 9(texel)
              94:    7(fvec4) FAdd 93 92
                              Store 9(texel) 94
              95:          31 Load 33(s2DArray)
              96:   35(fvec3) Load 37(c3)
              97:    6(float) Load 25(bias)
              98:    7(fvec4) ImageGather 95 96 39 Bias ConstOffsets 97 90
              99:    7(fvec4) Load 9(texel)
             100:    7(fvec4) FAdd 99 98
                              Store 9(texel) 100
             101:          14 Load 16(s2D)
             102:   18(fvec2) Load 20(c2)
             103:    6(float) Load 25(bias)
             105:104(ResType) ImageSparseGather 101 102 23 Bias 103
             106:    7(fvec4) CompositeExtract 105 1
                              Store 12(result) 106
             107:     22(int) CompositeExtract 105 0
             108:    7(fvec4) Load 12(result)
             109:    7(fvec4) Load 9(texel)
             110:    7(fvec4) FAdd 109 108
                              Store 9(texel) 110
             111:          31 Load 33(s2DArray)
             112:   35(fvec3) Load 37(c3)
             113:    6(float) Load 25(bias)
             114:104(ResType) ImageSparseGather 111 112 39 Bias 113
             115:    7(fvec4) CompositeExtract 114 1
                              Store 12(result) 115
             116:     22(int) CompositeExtract 114 0
             117:    7(fvec4) Load 12(result)
             118:    7(fvec4) Load 9(texel)
             119:    7(fvec4) FAdd 118 117
                              Store 9(texel) 119
             120:          45 Load 47(sCube)
             121:   35(fvec3) Load 37(c3)
             122:    6(float) Load 25(bias)
             123:104(ResType) ImageSparseGather 120 121 50 Bias 122
             124:    7(fvec4) CompositeExtract 123 1
                              Store 12(result) 124
             125:     22(int) CompositeExtract 123 0
             126:    7(fvec4) Load 12(result)
             127:    7(fvec4) Load 9(texel)
             128:    7(fvec4) FAdd 127 126
                              Store 9(texel) 128
             129:          56 Load 58(sCubeArray)
             130:    7(fvec4) Load 61(c4)
             131:    6(float) Load 25(bias)
             132:104(ResType) ImageSparseGather 129 130 50 Bias 131
             133:    7(fvec4) CompositeExtract 132 1
                              Store 12(result) 133
             134:     22(int) CompositeExtract 132 0
             135:    7(fvec4) Load 12(result)
             136:    7(fvec4) Load 9(texel)
             137:    7(fvec4) FAdd 136 135
                              Store 9(texel) 137
             138:          14 Load 16(s2D)
             139:   18(fvec2) Load 20(c2)
             140:    6(float) Load 25(bias)
             141:104(ResType) ImageSparseGather 138 139 23 Bias ConstOffset 140 71
             142:    7(fvec4) CompositeExtract 141 1
                              Store 12(result) 142
             143:     22(int) CompositeExtract 141 0
             144:    7(fvec4) Load 12(result)
             145:    7(fvec4) Load 9(texel)
             146:    7(fvec4) FAdd 145 144
                              Store 9(texel) 146
             147:          31 Load 33(s2DArray)
             148:   35(fvec3) Load 37(c3)
             149:    6(float) Load 25(bias)
             150:104(ResType) ImageSparseGather 147 148 39 Bias ConstOffset 149 78
             151:    7(fvec4) CompositeExtract 150 1
                              Store 12(result) 151
             152:     22(int) CompositeExtract 150 0
             153:    7(fvec4) Load 12(result)
             154:    7(fvec4) Load 9(texel)
             155:    7(fvec4) FAdd 154 153
                              Store 9(texel) 155
             156:          14 Load 16(s2D)
             157:   18(fvec2) Load 20(c2)
             158:    6(float) Load 25(bias)
             159:104(ResType) ImageSparseGather 156 157 23 Bias ConstOffsets 158 90
             160:    7(fvec4) CompositeExtract 159 1
                              Store 12(result) 160
             161:     22(int) CompositeExtract 159 0
             162:    7(fvec4) Load 12(result)
             163:    7(fvec4) Load 9(texel)
             164:    7(fvec4) FAdd 163 162
                              Store 9(texel) 164
             165:          31 Load 33(s2DArray)
             166:   35(fvec3) Load 37(c3)
             167:    6(float) Load 25(bias)
             168:104(ResType) ImageSparseGather 165 166 39 Bias ConstOffsets 167 90
             169:    7(fvec4) CompositeExtract 168 1
                              Store 12(result) 169
             170:     22(int) CompositeExtract 168 0
             171:    7(fvec4) Load 12(result)
             172:    7(fvec4) Load 9(texel)
             173:    7(fvec4) FAdd 172 171
                              Store 9(texel) 173
             174:          14 Load 16(s2D)
             175:   18(fvec2) Load 20(c2)
             177:    6(float) Load 176(lod)
             178:    7(fvec4) ImageGather 174 175 23 Lod 177
             179:    7(fvec4) Load 9(texel)
             180:    7(fvec4) FAdd 179 178
                              Store 9(texel) 180
             181:          31 Load 33(s2DArray)
             182:   35(fvec3) Load 37(c3)
             183:    6(float) Load 176(lod)
             184:    7(fvec4) ImageGather 181 182 39 Lod 183
             185:    7(fvec4) Load 9(texel)
             186:    7(fvec4) FAdd 185 184
                              Store 9(texel) 186
             187:          45 Load 47(sCube)
             188:   35(fvec3) Load 37(c3)
             189:    6(float) Load 176(lod)
             190:    7(fvec4) ImageGather 187 188 50 Lod 189
             191:    7(fvec4) Load 9(texel)
             192:    7(fvec4) FAdd 191 190
                              Store 9(texel) 192
             193:          56 Load 58(sCubeArray)
             194:    7(fvec4) Load 61(c4)
             195:    6(float) Load 176(lod)
             196:    7(fvec4) ImageGather 193 194 63 Lod 195
             197:    7(fvec4) Load 9(texel)
             198:    7(fvec4) FAdd 197 196
                              Store 9(texel) 198
             199:          14 Load 16(s2D)
             200:   18(fvec2) Load 20(c2)
             201:    6(float) Load 176(lod)
             202:    7(fvec4) ImageGather 199 200 23 Lod ConstOffset 201 71
             203:    7(fvec4) Load 9(texel)
             204:    7(fvec4) FAdd 203 202
                              Store 9(texel) 204
             205:          31 Load 33(s2DArray)
             206:   35(fvec3) Load 37(c3)
             207:    6(float) Load 176(lod)
             208:    7(fvec4) ImageGather 205 206 39 Lod ConstOffset 207 78
             209:    7(fvec4) Load 9(texel)
             210:    7(fvec4) FAdd 209 208
                              Store 9(texel) 210
             211:          14 Load 16(s2D)
             212:   18(fvec2) Load 20(c2)
             213:    6(float) Load 176(lod)
             214:    7(fvec4) ImageGather 211 212 23 Lod ConstOffsets 213 90
             215:    7(fvec4) Load 9(texel)
             216:    7(fvec4) FAdd 215 214
                              Store 9(texel) 216
             217:          31 Load 33(s2DArray)
             218:   35(fvec3) Load 37(c3)
             219:    6(float) Load 176(lod)
             220:    7(fvec4) ImageGather 217 218 39 Lod ConstOffsets 219 90
             221:    7(fvec4) Load 9(texel)
             222:    7(fvec4) FAdd 221 220
                              Store 9(texel) 222
             223:          14 Load 16(s2D)
             224:   18(fvec2) Load 20(c2)
             225:    6(float) Load 176(lod)
             226:104(ResType) ImageSparseGather 223 224 23 Lod 225
             227:    7(fvec4) CompositeExtract 226 1
                              Store 12(result) 227
             228:     22(int) CompositeExtract 226 0
             229:    7(fvec4) Load 12(result)
             230:    7(fvec4) Load 9(texel)
             231:    7(fvec4) FAdd 230 229
                              Store 9(texel) 231
             232:          31 Load 33(s2DArray)
             233:   35(fvec3) Load 37(c3)
             234:    6(float) Load 176(lod)
             235:104(ResType) ImageSparseGather 232 233 39 Lod 234
             236:    7(fvec4) CompositeExtract 235 1
                              Store 12(result) 236
             237:     22(int) CompositeExtract 235 0
             238:    7(fvec4) Load 12(result)
             239:    7(fvec4) Load 9(texel)
             240:    7(fvec4) FAdd 239 238
                              Store 9(texel) 240
             241:          45 Load 47(sCube)
             242:   35(fvec3) Load 37(c3)
             243:    6(float) Load 176(lod)
             244:104(ResType) ImageSparseGather 241 242 50 Lod 243
             245:    7(fvec4) CompositeExtract 244 1
                              Store 12(result) 245
             246:     22(int) CompositeExtract 244 0
             247:    7(fvec4) Load 12(result)
             248:    7(fvec4) Load 9(texel)
             249:    7(fvec4) FAdd 248 247
                              Store 9(texel) 249
             250:          56 Load 58(sCubeArray)
             251:    7(fvec4) Load 61(c4)
             252:    6(float) Load 176(lod)
             253:104(ResType) ImageSparseGather 250 251 50 Lod 252
             254:    7(fvec4) CompositeExtract 253 1
                              Store 12(result) 254
             255:     22(int) CompositeExtract 253 0
             256:    7(fvec4) Load 12(result)
             257:    7(fvec4) Load 9(texel)
             258:    7(fvec4) FAdd 257 256
                              Store 9(texel) 258
             259:          14 Load 16(s2D)
             260:   18(fvec2) Load 20(c2)
             261:    6(float) Load 176(lod)
             262:104(ResType) ImageSparseGather 259 260 23 Lod ConstOffset 261 71
             263:    7(fvec4) CompositeExtract 262 1
                              Store 12(result) 263
             264:     22(int) CompositeExtract 262 0
             265:    7(fvec4) Load 12(result)
             266:    7(fvec4) Load 9(texel)
             267:    7(fvec4) FAdd 266 265
                              Store 9(texel) 267
             268:          31 Load 33(s2DArray)
             269:   35(fvec3) Load 37(c3)
             270:    6(float) Load 176(lod)
             271:104(ResType) ImageSparseGather 268 269 39 Lod ConstOffset 270 78
             272:    7(fvec4) CompositeExtract 271 1
                              Store 12(result) 272
             273:     22(int) CompositeExtract 271 0
             274:    7(fvec4) Load 12(result)
             275:    7(fvec4) Load 9(texel)
             276:    7(fvec4) FAdd 275 274
                              Store 9(texel) 276
             277:          14 Load 16(s2D)
             278:   18(fvec2) Load 20(c2)
             279:    6(float) Load 176(lod)
             280:104(ResType) ImageSparseGather 277 278 23 Lod ConstOffsets 279 90
             281:    7(fvec4) CompositeExtract 280 1
                              Store 12(result) 281
             282:     22(int) CompositeExtract 280 0
             283:    7(fvec4) Load 12(result)
             284:    7(fvec4) Load 9(texel)
             285:    7(fvec4) FAdd 284 283
                              Store 9(texel) 285
             286:          31 Load 33(s2DArray)
             287:   35(fvec3) Load 37(c3)
             288:    6(float) Load 176(lod)
             289:104(ResType) ImageSparseGather 286 287 39 Lod ConstOffsets 288 90
             290:    7(fvec4) CompositeExtract 289 1
                              Store 12(result) 290
             291:     22(int) CompositeExtract 289 0
             292:    7(fvec4) Load 12(result)
             293:    7(fvec4) Load 9(texel)
             294:    7(fvec4) FAdd 293 292
                              Store 9(texel) 294
             297:    7(fvec4) Load 9(texel)
                              Store 296(fragColor) 297
                              Return
                              FunctionEnd
