spv.sparseTexture.frag
Validation failed
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 438

                              Capability Shader
                              Capability ImageGatherExtended
                              Capability StorageImageMultisample
                              Capability SampledRect
                              Capability SparseResidency
                              Capability SampledCubeArray
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 33 48 89 365 393 405 423
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_ARB_sparse_texture2"
                              Name 4  "main"
                              Name 8  "resident"
                              Name 13  "texel"
                              Name 18  "itexel"
                              Name 23  "utexel"
                              Name 29  "s2D"
                              Name 33  "c2"
                              Name 35  "ResType"
                              Name 44  "s3D"
                              Name 48  "c3"
                              Name 59  "isCube"
                              Name 62  "ResType"
                              Name 71  "s2DShadow"
                              Name 77  "ResType"
                              Name 86  "sCubeArrayShadow"
                              Name 89  "c4"
                              Name 108  "usCubeArray"
                              Name 111  "ResType"
                              Name 140  "us2DRect"
                              Name 154  "s2DArrayShadow"
                              Name 188  "s2DMS"
                              Name 228  "is2DArray"
                              Name 261  "sCubeShadow"
                              Name 294  "s2DRectShadow"
                              Name 365  "offsets"
                              Name 390  "i2D"
                              Name 393  "ic2"
                              Name 402  "ii3D"
                              Name 405  "ic3"
                              Name 414  "i2DMS"
                              Name 423  "outColor"
                              Decorate 29(s2D) DescriptorSet 0
                              Decorate 29(s2D) Binding 0
                              Decorate 44(s3D) DescriptorSet 0
                              Decorate 44(s3D) Binding 0
                              Decorate 59(isCube) DescriptorSet 0
                              Decorate 59(isCube) Binding 0
                              Decorate 71(s2DShadow) DescriptorSet 0
                              Decorate 71(s2DShadow) Binding 0
                              Decorate 86(sCubeArrayShadow) DescriptorSet 0
                              Decorate 86(sCubeArrayShadow) Binding 0
                              Decorate 108(usCubeArray) DescriptorSet 0
                              Decorate 108(usCubeArray) Binding 0
                              Decorate 140(us2DRect) DescriptorSet 0
                              Decorate 140(us2DRect) Binding 0
                              Decorate 154(s2DArrayShadow) DescriptorSet 0
                              Decorate 154(s2DArrayShadow) Binding 0
                              Decorate 188(s2DMS) DescriptorSet 0
                              Decorate 188(s2DMS) Binding 0
                              Decorate 228(is2DArray) DescriptorSet 0
                              Decorate 228(is2DArray) Binding 0
                              Decorate 261(sCubeShadow) DescriptorSet 0
                              Decorate 261(sCubeShadow) Binding 0
                              Decorate 294(s2DRectShadow) DescriptorSet 0
                              Decorate 294(s2DRectShadow) Binding 0
                              Decorate 365(offsets) Flat
                              Decorate 390(i2D) DescriptorSet 0
                              Decorate 390(i2D) Binding 0
                              Decorate 393(ic2) Flat
                              Decorate 402(ii3D) DescriptorSet 0
                              Decorate 402(ii3D) Binding 0
                              Decorate 405(ic3) Flat
                              Decorate 414(i2DMS) DescriptorSet 0
                              Decorate 414(i2DMS) Binding 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypePointer Function 6(int)
               9:      6(int) Constant 0
              10:             TypeFloat 32
              11:             TypeVector 10(float) 4
              12:             TypePointer Function 11(fvec4)
              14:   10(float) Constant 0
              15:   11(fvec4) ConstantComposite 14 14 14 14
              16:             TypeVector 6(int) 4
              17:             TypePointer Function 16(ivec4)
              19:   16(ivec4) ConstantComposite 9 9 9 9
              20:             TypeInt 32 0
              21:             TypeVector 20(int) 4
              22:             TypePointer Function 21(ivec4)
              24:     20(int) Constant 0
              25:   21(ivec4) ConstantComposite 24 24 24 24
              26:             TypeImage 10(float) 2D sampled format:Unknown
              27:             TypeSampledImage 26
              28:             TypePointer UniformConstant 27
         29(s2D):     28(ptr) Variable UniformConstant
              31:             TypeVector 10(float) 2
              32:             TypePointer Input 31(fvec2)
          33(c2):     32(ptr) Variable Input
     35(ResType):             TypeStruct 6(int) 11(fvec4)
              41:             TypeImage 10(float) 3D sampled format:Unknown
              42:             TypeSampledImage 41
              43:             TypePointer UniformConstant 42
         44(s3D):     43(ptr) Variable UniformConstant
              46:             TypeVector 10(float) 3
              47:             TypePointer Input 46(fvec3)
          48(c3):     47(ptr) Variable Input
              50:   10(float) Constant 1073741824
              56:             TypeImage 6(int) Cube sampled format:Unknown
              57:             TypeSampledImage 56
              58:             TypePointer UniformConstant 57
      59(isCube):     58(ptr) Variable UniformConstant
     62(ResType):             TypeStruct 6(int) 16(ivec4)
              68:             TypeImage 10(float) 2D depth sampled format:Unknown
              69:             TypeSampledImage 68
              70:             TypePointer UniformConstant 69
   71(s2DShadow):     70(ptr) Variable UniformConstant
              74:             TypePointer Function 10(float)
     77(ResType):             TypeStruct 6(int) 10(float)
              83:             TypeImage 10(float) Cube depth array sampled format:Unknown
              84:             TypeSampledImage 83
              85:             TypePointer UniformConstant 84
86(sCubeArrayShadow):     85(ptr) Variable UniformConstant
              88:             TypePointer Input 11(fvec4)
          89(c4):     88(ptr) Variable Input
              91:   10(float) Constant 1065353216
             105:             TypeImage 20(int) Cube array sampled format:Unknown
             106:             TypeSampledImage 105
             107:             TypePointer UniformConstant 106
108(usCubeArray):    107(ptr) Variable UniformConstant
    111(ResType):             TypeStruct 6(int) 21(ivec4)
             119:     20(int) Constant 1
             129:             TypeVector 6(int) 3
             130:      6(int) Constant 2
             131:  129(ivec3) ConstantComposite 130 130 130
             137:             TypeImage 20(int) Rect sampled format:Unknown
             138:             TypeSampledImage 137
             139:             TypePointer UniformConstant 138
   140(us2DRect):    139(ptr) Variable UniformConstant
             143:             TypeVector 6(int) 2
             144:      6(int) Constant 3
             145:  143(ivec2) ConstantComposite 144 144
             151:             TypeImage 10(float) 2D depth array sampled format:Unknown
             152:             TypeSampledImage 151
             153:             TypePointer UniformConstant 152
154(s2DArrayShadow):    153(ptr) Variable UniformConstant
             157:      6(int) Constant 5
             158:  143(ivec2) ConstantComposite 157 157
             159:     20(int) Constant 2
             185:             TypeImage 10(float) 2D multi-sampled sampled format:Unknown
             186:             TypeSampledImage 185
             187:             TypePointer UniformConstant 186
      188(s2DMS):    187(ptr) Variable UniformConstant
             192:      6(int) Constant 4
             202:  129(ivec3) ConstantComposite 192 192 192
             225:             TypeImage 6(int) 2D array sampled format:Unknown
             226:             TypeSampledImage 225
             227:             TypePointer UniformConstant 226
  228(is2DArray):    227(ptr) Variable UniformConstant
             231:      6(int) Constant 6
             232:  143(ivec2) ConstantComposite 231 231
             240:      6(int) Constant 7
             241:  143(ivec2) ConstantComposite 240 240
             258:             TypeImage 10(float) Cube depth sampled format:Unknown
             259:             TypeSampledImage 258
             260:             TypePointer UniformConstant 259
261(sCubeShadow):    260(ptr) Variable UniformConstant
             291:             TypeImage 10(float) Rect depth sampled format:Unknown
             292:             TypeSampledImage 291
             293:             TypePointer UniformConstant 292
294(s2DRectShadow):    293(ptr) Variable UniformConstant
             299:     20(int) Constant 3
             311:  143(ivec2) ConstantComposite 130 130
             340:  143(ivec2) ConstantComposite 192 192
             362:     20(int) Constant 4
             363:             TypeArray 143(ivec2) 362
             364:             TypePointer Input 363
    365(offsets):    364(ptr) Variable Input
             388:             TypeImage 10(float) 2D nonsampled format:Rgba32f
             389:             TypePointer UniformConstant 388
        390(i2D):    389(ptr) Variable UniformConstant
             392:             TypePointer Input 143(ivec2)
        393(ic2):    392(ptr) Variable Input
             400:             TypeImage 6(int) 3D nonsampled format:Rgba32i
             401:             TypePointer UniformConstant 400
       402(ii3D):    401(ptr) Variable UniformConstant
             404:             TypePointer Input 129(ivec3)
        405(ic3):    404(ptr) Variable Input
             412:             TypeImage 10(float) 2D multi-sampled nonsampled format:Rgba32f
             413:             TypePointer UniformConstant 412
      414(i2DMS):    413(ptr) Variable UniformConstant
             422:             TypePointer Output 11(fvec4)
   423(outColor):    422(ptr) Variable Output
             425:             TypeBool
         4(main):           2 Function None 3
               5:             Label
     8(resident):      7(ptr) Variable Function
       13(texel):     12(ptr) Variable Function
      18(itexel):     17(ptr) Variable Function
      23(utexel):     22(ptr) Variable Function
             427:     12(ptr) Variable Function
                              Store 8(resident) 9
                              Store 13(texel) 15
                              Store 18(itexel) 19
                              Store 23(utexel) 25
              30:          27 Load 29(s2D)
              34:   31(fvec2) Load 33(c2)
              36: 35(ResType) ImageSparseSampleImplicitLod 30 34
              37:   11(fvec4) CompositeExtract 36 1
                              Store 13(texel) 37
              38:      6(int) CompositeExtract 36 0
              39:      6(int) Load 8(resident)
              40:      6(int) BitwiseOr 39 38
                              Store 8(resident) 40
              45:          42 Load 44(s3D)
              49:   46(fvec3) Load 48(c3)
              51: 35(ResType) ImageSparseSampleImplicitLod 45 49 Bias 50
              52:   11(fvec4) CompositeExtract 51 1
                              Store 13(texel) 52
              53:      6(int) CompositeExtract 51 0
              54:      6(int) Load 8(resident)
              55:      6(int) BitwiseOr 54 53
                              Store 8(resident) 55
              60:          57 Load 59(isCube)
              61:   46(fvec3) Load 48(c3)
              63: 62(ResType) ImageSparseSampleImplicitLod 60 61
              64:   16(ivec4) CompositeExtract 63 1
                              Store 18(itexel) 64
              65:      6(int) CompositeExtract 63 0
              66:      6(int) Load 8(resident)
              67:      6(int) BitwiseOr 66 65
                              Store 8(resident) 67
              72:          69 Load 71(s2DShadow)
              73:   46(fvec3) Load 48(c3)
              75:     74(ptr) AccessChain 13(texel) 24
              76:   10(float) CompositeExtract 73 2
              78: 77(ResType) ImageSparseSampleDrefImplicitLod 72 73 76
              79:   10(float) CompositeExtract 78 1
                              Store 75 79
              80:      6(int) CompositeExtract 78 0
              81:      6(int) Load 8(resident)
              82:      6(int) BitwiseOr 81 80
                              Store 8(resident) 82
              87:          84 Load 86(sCubeArrayShadow)
              90:   11(fvec4) Load 89(c4)
              92:     74(ptr) AccessChain 13(texel) 24
              93: 77(ResType) ImageSparseSampleDrefImplicitLod 87 90 91
              94:   10(float) CompositeExtract 93 1
                              Store 92 94
              95:      6(int) CompositeExtract 93 0
              96:      6(int) Load 8(resident)
              97:      6(int) BitwiseOr 96 95
                              Store 8(resident) 97
              98:          27 Load 29(s2D)
              99:   31(fvec2) Load 33(c2)
             100: 35(ResType) ImageSparseSampleExplicitLod 98 99 Lod 50
             101:   11(fvec4) CompositeExtract 100 1
                              Store 13(texel) 101
             102:      6(int) CompositeExtract 100 0
             103:      6(int) Load 8(resident)
             104:      6(int) BitwiseOr 103 102
                              Store 8(resident) 104
             109:         106 Load 108(usCubeArray)
             110:   11(fvec4) Load 89(c4)
             112:111(ResType) ImageSparseSampleExplicitLod 109 110 Lod 91
             113:   21(ivec4) CompositeExtract 112 1
                              Store 23(utexel) 113
             114:      6(int) CompositeExtract 112 0
             115:      6(int) Load 8(resident)
             116:      6(int) BitwiseOr 115 114
                              Store 8(resident) 116
             117:          69 Load 71(s2DShadow)
             118:   46(fvec3) Load 48(c3)
             120:     74(ptr) AccessChain 13(texel) 119
             121:   10(float) CompositeExtract 118 2
             122: 77(ResType) ImageSparseSampleDrefExplicitLod 117 118 121 Lod 50
             123:   10(float) CompositeExtract 122 1
                              Store 120 123
             124:      6(int) CompositeExtract 122 0
             125:      6(int) Load 8(resident)
             126:      6(int) BitwiseOr 125 124
                              Store 8(resident) 126
             127:          42 Load 44(s3D)
             128:   46(fvec3) Load 48(c3)
             132: 35(ResType) ImageSparseSampleImplicitLod 127 128 Bias ConstOffset 50 131
             133:   11(fvec4) CompositeExtract 132 1
                              Store 13(texel) 133
             134:      6(int) CompositeExtract 132 0
             135:      6(int) Load 8(resident)
             136:      6(int) BitwiseOr 135 134
                              Store 8(resident) 136
             141:         138 Load 140(us2DRect)
             142:   31(fvec2) Load 33(c2)
             146:111(ResType) ImageSparseSampleImplicitLod 141 142 ConstOffset 145
             147:   21(ivec4) CompositeExtract 146 1
                              Store 23(utexel) 147
             148:      6(int) CompositeExtract 146 0
             149:      6(int) Load 8(resident)
             150:      6(int) BitwiseOr 149 148
                              Store 8(resident) 150
             155:         152 Load 154(s2DArrayShadow)
             156:   11(fvec4) Load 89(c4)
             160:     74(ptr) AccessChain 13(texel) 159
             161:   10(float) CompositeExtract 156 3
             162: 77(ResType) ImageSparseSampleDrefImplicitLod 155 156 161 ConstOffset 158
             163:   10(float) CompositeExtract 162 1
                              Store 160 163
             164:      6(int) CompositeExtract 162 0
             165:      6(int) Load 8(resident)
             166:      6(int) BitwiseOr 165 164
                              Store 8(resident) 166
             167:          27 Load 29(s2D)
             168:   31(fvec2) Load 33(c2)
             169:  143(ivec2) ConvertFToS 168
             170:          26 Image 167
             171: 35(ResType) ImageSparseFetch 170 169 Lod 130
             172:   11(fvec4) CompositeExtract 171 1
                              Store 13(texel) 172
             173:      6(int) CompositeExtract 171 0
             174:      6(int) Load 8(resident)
             175:      6(int) BitwiseOr 174 173
                              Store 8(resident) 175
             176:         138 Load 140(us2DRect)
             177:   31(fvec2) Load 33(c2)
             178:  143(ivec2) ConvertFToS 177
             179:         137 Image 176
             180:111(ResType) ImageSparseFetch 179 178
             181:   21(ivec4) CompositeExtract 180 1
                              Store 23(utexel) 181
             182:      6(int) CompositeExtract 180 0
             183:      6(int) Load 8(resident)
             184:      6(int) BitwiseOr 183 182
                              Store 8(resident) 184
             189:         186 Load 188(s2DMS)
             190:   31(fvec2) Load 33(c2)
             191:  143(ivec2) ConvertFToS 190
             193:         185 Image 189
             194: 35(ResType) ImageSparseFetch 193 191 Sample 192
             195:   11(fvec4) CompositeExtract 194 1
                              Store 13(texel) 195
             196:      6(int) CompositeExtract 194 0
             197:      6(int) Load 8(resident)
             198:      6(int) BitwiseOr 197 196
                              Store 8(resident) 198
             199:          42 Load 44(s3D)
             200:   46(fvec3) Load 48(c3)
             201:  129(ivec3) ConvertFToS 200
             203:          41 Image 199
             204: 35(ResType) ImageSparseFetch 203 201 Lod ConstOffset 130 202
             205:   11(fvec4) CompositeExtract 204 1
                              Store 13(texel) 205
             206:      6(int) CompositeExtract 204 0
             207:      6(int) Load 8(resident)
             208:      6(int) BitwiseOr 207 206
                              Store 8(resident) 208
             209:         138 Load 140(us2DRect)
             210:   31(fvec2) Load 33(c2)
             211:  143(ivec2) ConvertFToS 210
             212:         137 Image 209
             213:111(ResType) ImageSparseFetch 212 211 ConstOffset 145
             214:   21(ivec4) CompositeExtract 213 1
                              Store 23(utexel) 214
             215:      6(int) CompositeExtract 213 0
             216:      6(int) Load 8(resident)
             217:      6(int) BitwiseOr 216 215
                              Store 8(resident) 217
             218:          27 Load 29(s2D)
             219:   31(fvec2) Load 33(c2)
             220: 35(ResType) ImageSparseSampleExplicitLod 218 219 Lod ConstOffset 50 158
             221:   11(fvec4) CompositeExtract 220 1
                              Store 13(texel) 221
             222:      6(int) CompositeExtract 220 0
             223:      6(int) Load 8(resident)
             224:      6(int) BitwiseOr 223 222
                              Store 8(resident) 224
             229:         226 Load 228(is2DArray)
             230:   46(fvec3) Load 48(c3)
             233: 62(ResType) ImageSparseSampleExplicitLod 229 230 Lod ConstOffset 50 232
             234:   16(ivec4) CompositeExtract 233 1
                              Store 18(itexel) 234
             235:      6(int) CompositeExtract 233 0
             236:      6(int) Load 8(resident)
             237:      6(int) BitwiseOr 236 235
                              Store 8(resident) 237
             238:          69 Load 71(s2DShadow)
             239:   46(fvec3) Load 48(c3)
             242:     74(ptr) AccessChain 13(texel) 159
             243:   10(float) CompositeExtract 239 2
             244: 77(ResType) ImageSparseSampleDrefExplicitLod 238 239 243 Lod ConstOffset 50 241
             245:   10(float) CompositeExtract 244 1
                              Store 242 245
             246:      6(int) CompositeExtract 244 0
             247:      6(int) Load 8(resident)
             248:      6(int) BitwiseOr 247 246
                              Store 8(resident) 248
             249:          42 Load 44(s3D)
             250:   46(fvec3) Load 48(c3)
             251:   46(fvec3) Load 48(c3)
             252:   46(fvec3) Load 48(c3)
             253: 35(ResType) ImageSparseSampleExplicitLod 249 250 Grad 251 252
             254:   11(fvec4) CompositeExtract 253 1
                              Store 13(texel) 254
             255:      6(int) CompositeExtract 253 0
             256:      6(int) Load 8(resident)
             257:      6(int) BitwiseOr 256 255
                              Store 8(resident) 257
             262:         259 Load 261(sCubeShadow)
             263:   11(fvec4) Load 89(c4)
             264:   46(fvec3) Load 48(c3)
             265:   46(fvec3) Load 48(c3)
             266:     74(ptr) AccessChain 13(texel) 119
             267:   10(float) CompositeExtract 263 3
             268: 77(ResType) ImageSparseSampleDrefExplicitLod 262 263 267 Grad 264 265
             269:   10(float) CompositeExtract 268 1
                              Store 266 269
             270:      6(int) CompositeExtract 268 0
             271:      6(int) Load 8(resident)
             272:      6(int) BitwiseOr 271 270
                              Store 8(resident) 272
             273:         106 Load 108(usCubeArray)
             274:   11(fvec4) Load 89(c4)
             275:   46(fvec3) Load 48(c3)
             276:   46(fvec3) Load 48(c3)
             277:111(ResType) ImageSparseSampleExplicitLod 273 274 Grad 275 276
             278:   21(ivec4) CompositeExtract 277 1
                              Store 23(utexel) 278
             279:      6(int) CompositeExtract 277 0
             280:      6(int) Load 8(resident)
             281:      6(int) BitwiseOr 280 279
                              Store 8(resident) 281
             282:          27 Load 29(s2D)
             283:   31(fvec2) Load 33(c2)
             284:   31(fvec2) Load 33(c2)
             285:   31(fvec2) Load 33(c2)
             286: 35(ResType) ImageSparseSampleExplicitLod 282 283 Grad ConstOffset 284 285 158
             287:   11(fvec4) CompositeExtract 286 1
                              Store 13(texel) 287
             288:      6(int) CompositeExtract 286 0
             289:      6(int) Load 8(resident)
             290:      6(int) BitwiseOr 289 288
                              Store 8(resident) 290
             295:         292 Load 294(s2DRectShadow)
             296:   46(fvec3) Load 48(c3)
             297:   31(fvec2) Load 33(c2)
             298:   31(fvec2) Load 33(c2)
             300:     74(ptr) AccessChain 13(texel) 299
             301:   10(float) CompositeExtract 296 2
             302: 77(ResType) ImageSparseSampleDrefExplicitLod 295 296 301 Grad ConstOffset 297 298 232
             303:   10(float) CompositeExtract 302 1
                              Store 300 303
             304:      6(int) CompositeExtract 302 0
             305:      6(int) Load 8(resident)
             306:      6(int) BitwiseOr 305 304
                              Store 8(resident) 306
             307:         226 Load 228(is2DArray)
             308:   46(fvec3) Load 48(c3)
             309:   31(fvec2) Load 33(c2)
             310:   31(fvec2) Load 33(c2)
             312: 62(ResType) ImageSparseSampleExplicitLod 307 308 Grad ConstOffset 309 310 311
             313:   16(ivec4) CompositeExtract 312 1
                              Store 18(itexel) 313
             314:      6(int) CompositeExtract 312 0
             315:      6(int) Load 8(resident)
             316:      6(int) BitwiseOr 315 314
                              Store 8(resident) 316
             317:          27 Load 29(s2D)
             318:   31(fvec2) Load 33(c2)
             319: 35(ResType) ImageSparseGather 317 318 9
             320:   11(fvec4) CompositeExtract 319 1
                              Store 13(texel) 320
             321:      6(int) CompositeExtract 319 0
             322:      6(int) Load 8(resident)
             323:      6(int) BitwiseOr 322 321
                              Store 8(resident) 323
             324:         226 Load 228(is2DArray)
             325:   46(fvec3) Load 48(c3)
             326: 62(ResType) ImageSparseGather 324 325 130
             327:   16(ivec4) CompositeExtract 326 1
                              Store 18(itexel) 327
             328:      6(int) CompositeExtract 326 0
             329:      6(int) Load 8(resident)
             330:      6(int) BitwiseOr 329 328
                              Store 8(resident) 330
             331:         152 Load 154(s2DArrayShadow)
             332:   46(fvec3) Load 48(c3)
             333: 35(ResType) ImageSparseDrefGather 331 332 50
             334:   11(fvec4) CompositeExtract 333 1
                              Store 13(texel) 334
             335:      6(int) CompositeExtract 333 0
             336:      6(int) Load 8(resident)
             337:      6(int) BitwiseOr 336 335
                              Store 8(resident) 337
             338:          27 Load 29(s2D)
             339:   31(fvec2) Load 33(c2)
             341: 35(ResType) ImageSparseGather 338 339 9 ConstOffset 340
             342:   11(fvec4) CompositeExtract 341 1
                              Store 13(texel) 342
             343:      6(int) CompositeExtract 341 0
             344:      6(int) Load 8(resident)
             345:      6(int) BitwiseOr 344 343
                              Store 8(resident) 345
             346:         226 Load 228(is2DArray)
             347:   46(fvec3) Load 48(c3)
             348: 62(ResType) ImageSparseGather 346 347 130 ConstOffset 158
             349:   16(ivec4) CompositeExtract 348 1
                              Store 18(itexel) 349
             350:      6(int) CompositeExtract 348 0
             351:      6(int) Load 8(resident)
             352:      6(int) BitwiseOr 351 350
                              Store 8(resident) 352
             353:         292 Load 294(s2DRectShadow)
             354:   31(fvec2) Load 33(c2)
             355: 35(ResType) ImageSparseDrefGather 353 354 50 ConstOffset 241
             356:   11(fvec4) CompositeExtract 355 1
                              Store 13(texel) 356
             357:      6(int) CompositeExtract 355 0
             358:      6(int) Load 8(resident)
             359:      6(int) BitwiseOr 358 357
                              Store 8(resident) 359
             360:          27 Load 29(s2D)
             361:   31(fvec2) Load 33(c2)
             366:         363 Load 365(offsets)
             367: 35(ResType) ImageSparseGather 360 361 9 ConstOffsets 366
             368:   11(fvec4) CompositeExtract 367 1
                              Store 13(texel) 368
             369:      6(int) CompositeExtract 367 0
             370:      6(int) Load 8(resident)
             371:      6(int) BitwiseOr 370 369
                              Store 8(resident) 371
             372:         226 Load 228(is2DArray)
             373:   46(fvec3) Load 48(c3)
             374:         363 Load 365(offsets)
             375: 62(ResType) ImageSparseGather 372 373 130 ConstOffsets 374
             376:   16(ivec4) CompositeExtract 375 1
                              Store 18(itexel) 376
             377:      6(int) CompositeExtract 375 0
             378:      6(int) Load 8(resident)
             379:      6(int) BitwiseOr 378 377
                              Store 8(resident) 379
             380:         292 Load 294(s2DRectShadow)
             381:   31(fvec2) Load 33(c2)
             382:         363 Load 365(offsets)
             383: 35(ResType) ImageSparseDrefGather 380 381 50 ConstOffsets 382
             384:   11(fvec4) CompositeExtract 383 1
                              Store 13(texel) 384
             385:      6(int) CompositeExtract 383 0
             386:      6(int) Load 8(resident)
             387:      6(int) BitwiseOr 386 385
                              Store 8(resident) 387
             391:         388 Load 390(i2D)
             394:  143(ivec2) Load 393(ic2)
             395: 35(ResType) ImageSparseRead 391 394
             396:   11(fvec4) CompositeExtract 395 1
                              Store 13(texel) 396
             397:      6(int) CompositeExtract 395 0
             398:      6(int) Load 8(resident)
             399:      6(int) BitwiseOr 398 397
                              Store 8(resident) 399
             403:         400 Load 402(ii3D)
             406:  129(ivec3) Load 405(ic3)
             407: 62(ResType) ImageSparseRead 403 406
             408:   16(ivec4) CompositeExtract 407 1
                              Store 18(itexel) 408
             409:      6(int) CompositeExtract 407 0
             410:      6(int) Load 8(resident)
             411:      6(int) BitwiseOr 410 409
                              Store 8(resident) 411
             415:         412 Load 414(i2DMS)
             416:  143(ivec2) Load 393(ic2)
             417: 35(ResType) ImageSparseRead 415 416 Sample 144
             418:   11(fvec4) CompositeExtract 417 1
                              Store 13(texel) 418
             419:      6(int) CompositeExtract 417 0
             420:      6(int) Load 8(resident)
             421:      6(int) BitwiseOr 420 419
                              Store 8(resident) 421
             424:      6(int) Load 8(resident)
             426:   425(bool) ImageSparseTexelsResident 424
                              SelectionMerge 429 None
                              BranchConditional 426 428 431
             428:               Label
             430:   11(fvec4)   Load 13(texel)
                                Store 427 430
                                Branch 429
             431:               Label
             432:   16(ivec4)   Load 18(itexel)
             433:   11(fvec4)   ConvertSToF 432
             434:   21(ivec4)   Load 23(utexel)
             435:   11(fvec4)   ConvertUToF 434
             436:   11(fvec4)   FAdd 433 435
                                Store 427 436
                                Branch 429
             429:             Label
             437:   11(fvec4) Load 427
                              Store 423(outColor) 437
                              Return
                              FunctionEnd
