spv.image.frag
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.


Linked fragment stage:


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

                              Capability Shader
                              Capability SampledRect
                              Capability Sampled1D
                              Capability SampledCubeArray
                              Capability SampledBuffer
                              Capability ImageMSArray
                              Capability StorageImageExtendedFormats
                              Capability ImageQuery
                              Capability StorageImageWriteWithoutFormat
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 132 142 152 248 362 377
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              Name 4  "main"
                              Name 9  "iv"
                              Name 15  "i1D"
                              Name 27  "i2D"
                              Name 38  "i3D"
                              Name 45  "iCube"
                              Name 55  "iCubeArray"
                              Name 62  "i2DRect"
                              Name 72  "i1DArray"
                              Name 82  "i2DArray"
                              Name 89  "iBuffer"
                              Name 98  "i2DMS"
                              Name 108  "i2DMSArray"
                              Name 127  "v"
                              Name 132  "ic1D"
                              Name 142  "ic2D"
                              Name 152  "ic3D"
                              Name 229  "ui"
                              Name 232  "ii1D"
                              Name 245  "ui2D"
                              Name 248  "value"
                              Name 357  "wo2D"
                              Name 362  "fragData"
                              Name 377  "ic4D"
                              Decorate 15(i1D) DescriptorSet 0
                              Decorate 15(i1D) Binding 0
                              Decorate 27(i2D) DescriptorSet 0
                              Decorate 27(i2D) Binding 1
                              Decorate 38(i3D) DescriptorSet 0
                              Decorate 38(i3D) Binding 2
                              Decorate 45(iCube) DescriptorSet 0
                              Decorate 45(iCube) Binding 3
                              Decorate 55(iCubeArray) DescriptorSet 0
                              Decorate 55(iCubeArray) Binding 4
                              Decorate 62(i2DRect) DescriptorSet 0
                              Decorate 62(i2DRect) Binding 5
                              Decorate 72(i1DArray) DescriptorSet 0
                              Decorate 72(i1DArray) Binding 6
                              Decorate 82(i2DArray) DescriptorSet 0
                              Decorate 82(i2DArray) Binding 7
                              Decorate 89(iBuffer) DescriptorSet 0
                              Decorate 89(iBuffer) Binding 8
                              Decorate 98(i2DMS) DescriptorSet 0
                              Decorate 98(i2DMS) Binding 9
                              Decorate 108(i2DMSArray) DescriptorSet 0
                              Decorate 108(i2DMSArray) Binding 10
                              Decorate 132(ic1D) Flat
                              Decorate 142(ic2D) Flat
                              Decorate 152(ic3D) Flat
                              Decorate 232(ii1D) DescriptorSet 0
                              Decorate 232(ii1D) Binding 11
                              Decorate 245(ui2D) DescriptorSet 0
                              Decorate 245(ui2D) Binding 12
                              Decorate 248(value) Flat
                              Decorate 357(wo2D) DescriptorSet 0
                              Decorate 357(wo2D) Binding 1
                              Decorate 357(wo2D) NonReadable
                              Decorate 377(ic4D) Flat
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypeVector 6(int) 3
               8:             TypePointer Function 7(ivec3)
              10:      6(int) Constant 0
              11:    7(ivec3) ConstantComposite 10 10 10
              12:             TypeFloat 32
              13:             TypeImage 12(float) 1D nonsampled format:Rgba32f
              14:             TypePointer UniformConstant 13
         15(i1D):     14(ptr) Variable UniformConstant
              18:             TypeInt 32 0
              19:     18(int) Constant 0
              20:             TypePointer Function 6(int)
              25:             TypeImage 12(float) 2D nonsampled format:Rgba32f
              26:             TypePointer UniformConstant 25
         27(i2D):     26(ptr) Variable UniformConstant
              29:             TypeVector 6(int) 2
              36:             TypeImage 12(float) 3D nonsampled format:Rgba32f
              37:             TypePointer UniformConstant 36
         38(i3D):     37(ptr) Variable UniformConstant
              43:             TypeImage 12(float) Cube nonsampled format:Rgba32f
              44:             TypePointer UniformConstant 43
       45(iCube):     44(ptr) Variable UniformConstant
              53:             TypeImage 12(float) Cube array nonsampled format:Rgba32f
              54:             TypePointer UniformConstant 53
  55(iCubeArray):     54(ptr) Variable UniformConstant
              60:             TypeImage 12(float) Rect nonsampled format:Rgba32f
              61:             TypePointer UniformConstant 60
     62(i2DRect):     61(ptr) Variable UniformConstant
              70:             TypeImage 12(float) 1D array nonsampled format:Rgba32f
              71:             TypePointer UniformConstant 70
    72(i1DArray):     71(ptr) Variable UniformConstant
              80:             TypeImage 12(float) 2D array nonsampled format:Rg16
              81:             TypePointer UniformConstant 80
    82(i2DArray):     81(ptr) Variable UniformConstant
              87:             TypeImage 12(float) Buffer nonsampled format:Rgba32f
              88:             TypePointer UniformConstant 87
     89(iBuffer):     88(ptr) Variable UniformConstant
              96:             TypeImage 12(float) 2D multi-sampled nonsampled format:Rgba32f
              97:             TypePointer UniformConstant 96
       98(i2DMS):     97(ptr) Variable UniformConstant
             106:             TypeImage 12(float) 2D array multi-sampled nonsampled format:Rgba32f
             107:             TypePointer UniformConstant 106
 108(i2DMSArray):    107(ptr) Variable UniformConstant
             125:             TypeVector 12(float) 4
             126:             TypePointer Function 125(fvec4)
             128:   12(float) Constant 0
             129:  125(fvec4) ConstantComposite 128 128 128 128
             131:             TypePointer Input 6(int)
       132(ic1D):    131(ptr) Variable Input
             141:             TypePointer Input 29(ivec2)
       142(ic2D):    141(ptr) Variable Input
             151:             TypePointer Input 7(ivec3)
       152(ic3D):    151(ptr) Variable Input
             210:      6(int) Constant 1
             216:      6(int) Constant 2
             220:      6(int) Constant 3
             226:      6(int) Constant 4
             228:             TypePointer Function 18(int)
             230:             TypeImage 6(int) 1D nonsampled format:R32i
             231:             TypePointer UniformConstant 230
       232(ii1D):    231(ptr) Variable UniformConstant
             234:      6(int) Constant 10
             235:             TypePointer Image 6(int)
             237:     18(int) Constant 1
             243:             TypeImage 18(int) 2D nonsampled format:R32ui
             244:             TypePointer UniformConstant 243
       245(ui2D):    244(ptr) Variable UniformConstant
             247:             TypePointer Input 18(int)
      248(value):    247(ptr) Variable Input
             250:             TypePointer Image 18(int)
             256:      6(int) Constant 11
             270:      6(int) Constant 12
             284:      6(int) Constant 13
             298:      6(int) Constant 14
             312:      6(int) Constant 15
             326:      6(int) Constant 16
             340:      6(int) Constant 18
             341:      6(int) Constant 17
             349:     18(int) Constant 19
             355:             TypeImage 12(float) 2D nonsampled format:Unknown
             356:             TypePointer UniformConstant 355
       357(wo2D):    356(ptr) Variable UniformConstant
             361:             TypePointer Output 125(fvec4)
   362(fragData):    361(ptr) Variable Output
             368:             TypeBool
             375:             TypeVector 6(int) 4
             376:             TypePointer Input 375(ivec4)
       377(ic4D):    376(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
           9(iv):      8(ptr) Variable Function
          127(v):    126(ptr) Variable Function
         229(ui):    228(ptr) Variable Function
             363:    126(ptr) Variable Function
                              Store 9(iv) 11
              16:          13 Load 15(i1D)
              17:      6(int) ImageQuerySize 16
              21:     20(ptr) AccessChain 9(iv) 19
              22:      6(int) Load 21
              23:      6(int) IAdd 22 17
              24:     20(ptr) AccessChain 9(iv) 19
                              Store 24 23
              28:          25 Load 27(i2D)
              30:   29(ivec2) ImageQuerySize 28
              31:    7(ivec3) Load 9(iv)
              32:   29(ivec2) VectorShuffle 31 31 0 1
              33:   29(ivec2) IAdd 32 30
              34:    7(ivec3) Load 9(iv)
              35:    7(ivec3) VectorShuffle 34 33 3 4 2
                              Store 9(iv) 35
              39:          36 Load 38(i3D)
              40:    7(ivec3) ImageQuerySize 39
              41:    7(ivec3) Load 9(iv)
              42:    7(ivec3) IAdd 41 40
                              Store 9(iv) 42
              46:          43 Load 45(iCube)
              47:   29(ivec2) ImageQuerySize 46
              48:    7(ivec3) Load 9(iv)
              49:   29(ivec2) VectorShuffle 48 48 0 1
              50:   29(ivec2) IAdd 49 47
              51:    7(ivec3) Load 9(iv)
              52:    7(ivec3) VectorShuffle 51 50 3 4 2
                              Store 9(iv) 52
              56:          53 Load 55(iCubeArray)
              57:    7(ivec3) ImageQuerySize 56
              58:    7(ivec3) Load 9(iv)
              59:    7(ivec3) IAdd 58 57
                              Store 9(iv) 59
              63:          60 Load 62(i2DRect)
              64:   29(ivec2) ImageQuerySize 63
              65:    7(ivec3) Load 9(iv)
              66:   29(ivec2) VectorShuffle 65 65 0 1
              67:   29(ivec2) IAdd 66 64
              68:    7(ivec3) Load 9(iv)
              69:    7(ivec3) VectorShuffle 68 67 3 4 2
                              Store 9(iv) 69
              73:          70 Load 72(i1DArray)
              74:   29(ivec2) ImageQuerySize 73
              75:    7(ivec3) Load 9(iv)
              76:   29(ivec2) VectorShuffle 75 75 0 1
              77:   29(ivec2) IAdd 76 74
              78:    7(ivec3) Load 9(iv)
              79:    7(ivec3) VectorShuffle 78 77 3 4 2
                              Store 9(iv) 79
              83:          80 Load 82(i2DArray)
              84:    7(ivec3) ImageQuerySize 83
              85:    7(ivec3) Load 9(iv)
              86:    7(ivec3) IAdd 85 84
                              Store 9(iv) 86
              90:          87 Load 89(iBuffer)
              91:      6(int) ImageQuerySize 90
              92:     20(ptr) AccessChain 9(iv) 19
              93:      6(int) Load 92
              94:      6(int) IAdd 93 91
              95:     20(ptr) AccessChain 9(iv) 19
                              Store 95 94
              99:          96 Load 98(i2DMS)
             100:   29(ivec2) ImageQuerySize 99
             101:    7(ivec3) Load 9(iv)
             102:   29(ivec2) VectorShuffle 101 101 0 1
             103:   29(ivec2) IAdd 102 100
             104:    7(ivec3) Load 9(iv)
             105:    7(ivec3) VectorShuffle 104 103 3 4 2
                              Store 9(iv) 105
             109:         106 Load 108(i2DMSArray)
             110:    7(ivec3) ImageQuerySize 109
             111:    7(ivec3) Load 9(iv)
             112:    7(ivec3) IAdd 111 110
                              Store 9(iv) 112
             113:          96 Load 98(i2DMS)
             114:      6(int) ImageQuerySamples 113
             115:     20(ptr) AccessChain 9(iv) 19
             116:      6(int) Load 115
             117:      6(int) IAdd 116 114
             118:     20(ptr) AccessChain 9(iv) 19
                              Store 118 117
             119:         106 Load 108(i2DMSArray)
             120:      6(int) ImageQuerySamples 119
             121:     20(ptr) AccessChain 9(iv) 19
             122:      6(int) Load 121
             123:      6(int) IAdd 122 120
             124:     20(ptr) AccessChain 9(iv) 19
                              Store 124 123
                              Store 127(v) 129
             130:          13 Load 15(i1D)
             133:      6(int) Load 132(ic1D)
             134:  125(fvec4) ImageRead 130 133
             135:  125(fvec4) Load 127(v)
             136:  125(fvec4) FAdd 135 134
                              Store 127(v) 136
             137:          13 Load 15(i1D)
             138:      6(int) Load 132(ic1D)
             139:  125(fvec4) Load 127(v)
                              ImageWrite 137 138 139
             140:          25 Load 27(i2D)
             143:   29(ivec2) Load 142(ic2D)
             144:  125(fvec4) ImageRead 140 143
             145:  125(fvec4) Load 127(v)
             146:  125(fvec4) FAdd 145 144
                              Store 127(v) 146
             147:          25 Load 27(i2D)
             148:   29(ivec2) Load 142(ic2D)
             149:  125(fvec4) Load 127(v)
                              ImageWrite 147 148 149
             150:          36 Load 38(i3D)
             153:    7(ivec3) Load 152(ic3D)
             154:  125(fvec4) ImageRead 150 153
             155:  125(fvec4) Load 127(v)
             156:  125(fvec4) FAdd 155 154
                              Store 127(v) 156
             157:          36 Load 38(i3D)
             158:    7(ivec3) Load 152(ic3D)
             159:  125(fvec4) Load 127(v)
                              ImageWrite 157 158 159
             160:          43 Load 45(iCube)
             161:    7(ivec3) Load 152(ic3D)
             162:  125(fvec4) ImageRead 160 161
             163:  125(fvec4) Load 127(v)
             164:  125(fvec4) FAdd 163 162
                              Store 127(v) 164
             165:          43 Load 45(iCube)
             166:    7(ivec3) Load 152(ic3D)
             167:  125(fvec4) Load 127(v)
                              ImageWrite 165 166 167
             168:          53 Load 55(iCubeArray)
             169:    7(ivec3) Load 152(ic3D)
             170:  125(fvec4) ImageRead 168 169
             171:  125(fvec4) Load 127(v)
             172:  125(fvec4) FAdd 171 170
                              Store 127(v) 172
             173:          53 Load 55(iCubeArray)
             174:    7(ivec3) Load 152(ic3D)
             175:  125(fvec4) Load 127(v)
                              ImageWrite 173 174 175
             176:          60 Load 62(i2DRect)
             177:   29(ivec2) Load 142(ic2D)
             178:  125(fvec4) ImageRead 176 177
             179:  125(fvec4) Load 127(v)
             180:  125(fvec4) FAdd 179 178
                              Store 127(v) 180
             181:          60 Load 62(i2DRect)
             182:   29(ivec2) Load 142(ic2D)
             183:  125(fvec4) Load 127(v)
                              ImageWrite 181 182 183
             184:          70 Load 72(i1DArray)
             185:   29(ivec2) Load 142(ic2D)
             186:  125(fvec4) ImageRead 184 185
             187:  125(fvec4) Load 127(v)
             188:  125(fvec4) FAdd 187 186
                              Store 127(v) 188
             189:          70 Load 72(i1DArray)
             190:   29(ivec2) Load 142(ic2D)
             191:  125(fvec4) Load 127(v)
                              ImageWrite 189 190 191
             192:          80 Load 82(i2DArray)
             193:    7(ivec3) Load 152(ic3D)
             194:  125(fvec4) ImageRead 192 193
             195:  125(fvec4) Load 127(v)
             196:  125(fvec4) FAdd 195 194
                              Store 127(v) 196
             197:          80 Load 82(i2DArray)
             198:    7(ivec3) Load 152(ic3D)
             199:  125(fvec4) Load 127(v)
                              ImageWrite 197 198 199
             200:          87 Load 89(iBuffer)
             201:      6(int) Load 132(ic1D)
             202:  125(fvec4) ImageRead 200 201
             203:  125(fvec4) Load 127(v)
             204:  125(fvec4) FAdd 203 202
                              Store 127(v) 204
             205:          87 Load 89(iBuffer)
             206:      6(int) Load 132(ic1D)
             207:  125(fvec4) Load 127(v)
                              ImageWrite 205 206 207
             208:          96 Load 98(i2DMS)
             209:   29(ivec2) Load 142(ic2D)
             211:  125(fvec4) ImageRead 208 209 Sample 210
             212:  125(fvec4) Load 127(v)
             213:  125(fvec4) FAdd 212 211
                              Store 127(v) 213
             214:          96 Load 98(i2DMS)
             215:   29(ivec2) Load 142(ic2D)
             217:  125(fvec4) Load 127(v)
                              ImageWrite 214 215 217 Sample 216
             218:         106 Load 108(i2DMSArray)
             219:    7(ivec3) Load 152(ic3D)
             221:  125(fvec4) ImageRead 218 219 Sample 220
             222:  125(fvec4) Load 127(v)
             223:  125(fvec4) FAdd 222 221
                              Store 127(v) 223
             224:         106 Load 108(i2DMSArray)
             225:    7(ivec3) Load 152(ic3D)
             227:  125(fvec4) Load 127(v)
                              ImageWrite 224 225 227 Sample 226
                              Store 229(ui) 19
             233:      6(int) Load 132(ic1D)
             236:    235(ptr) ImageTexelPointer 232(ii1D) 233 19
             238:      6(int) AtomicIAdd 236 237 19 234
             239:     20(ptr) AccessChain 9(iv) 19
             240:      6(int) Load 239
             241:      6(int) IAdd 240 238
             242:     20(ptr) AccessChain 9(iv) 19
                              Store 242 241
             246:   29(ivec2) Load 142(ic2D)
             249:     18(int) Load 248(value)
             251:    250(ptr) ImageTexelPointer 245(ui2D) 246 19
             252:     18(int) AtomicIAdd 251 237 19 249
             253:     18(int) Load 229(ui)
             254:     18(int) IAdd 253 252
                              Store 229(ui) 254
             255:      6(int) Load 132(ic1D)
             257:    235(ptr) ImageTexelPointer 232(ii1D) 255 19
             258:      6(int) AtomicSMin 257 237 19 256
             259:     20(ptr) AccessChain 9(iv) 19
             260:      6(int) Load 259
             261:      6(int) IAdd 260 258
             262:     20(ptr) AccessChain 9(iv) 19
                              Store 262 261
             263:   29(ivec2) Load 142(ic2D)
             264:     18(int) Load 248(value)
             265:    250(ptr) ImageTexelPointer 245(ui2D) 263 19
             266:     18(int) AtomicUMin 265 237 19 264
             267:     18(int) Load 229(ui)
             268:     18(int) IAdd 267 266
                              Store 229(ui) 268
             269:      6(int) Load 132(ic1D)
             271:    235(ptr) ImageTexelPointer 232(ii1D) 269 19
             272:      6(int) AtomicSMax 271 237 19 270
             273:     20(ptr) AccessChain 9(iv) 19
             274:      6(int) Load 273
             275:      6(int) IAdd 274 272
             276:     20(ptr) AccessChain 9(iv) 19
                              Store 276 275
             277:   29(ivec2) Load 142(ic2D)
             278:     18(int) Load 248(value)
             279:    250(ptr) ImageTexelPointer 245(ui2D) 277 19
             280:     18(int) AtomicUMax 279 237 19 278
             281:     18(int) Load 229(ui)
             282:     18(int) IAdd 281 280
                              Store 229(ui) 282
             283:      6(int) Load 132(ic1D)
             285:    235(ptr) ImageTexelPointer 232(ii1D) 283 19
             286:      6(int) AtomicAnd 285 237 19 284
             287:     20(ptr) AccessChain 9(iv) 19
             288:      6(int) Load 287
             289:      6(int) IAdd 288 286
             290:     20(ptr) AccessChain 9(iv) 19
                              Store 290 289
             291:   29(ivec2) Load 142(ic2D)
             292:     18(int) Load 248(value)
             293:    250(ptr) ImageTexelPointer 245(ui2D) 291 19
             294:     18(int) AtomicAnd 293 237 19 292
             295:     18(int) Load 229(ui)
             296:     18(int) IAdd 295 294
                              Store 229(ui) 296
             297:      6(int) Load 132(ic1D)
             299:    235(ptr) ImageTexelPointer 232(ii1D) 297 19
             300:      6(int) AtomicOr 299 237 19 298
             301:     20(ptr) AccessChain 9(iv) 19
             302:      6(int) Load 301
             303:      6(int) IAdd 302 300
             304:     20(ptr) AccessChain 9(iv) 19
                              Store 304 303
             305:   29(ivec2) Load 142(ic2D)
             306:     18(int) Load 248(value)
             307:    250(ptr) ImageTexelPointer 245(ui2D) 305 19
             308:     18(int) AtomicOr 307 237 19 306
             309:     18(int) Load 229(ui)
             310:     18(int) IAdd 309 308
                              Store 229(ui) 310
             311:      6(int) Load 132(ic1D)
             313:    235(ptr) ImageTexelPointer 232(ii1D) 311 19
             314:      6(int) AtomicXor 313 237 19 312
             315:     20(ptr) AccessChain 9(iv) 19
             316:      6(int) Load 315
             317:      6(int) IAdd 316 314
             318:     20(ptr) AccessChain 9(iv) 19
                              Store 318 317
             319:   29(ivec2) Load 142(ic2D)
             320:     18(int) Load 248(value)
             321:    250(ptr) ImageTexelPointer 245(ui2D) 319 19
             322:     18(int) AtomicXor 321 237 19 320
             323:     18(int) Load 229(ui)
             324:     18(int) IAdd 323 322
                              Store 229(ui) 324
             325:      6(int) Load 132(ic1D)
             327:    235(ptr) ImageTexelPointer 232(ii1D) 325 19
             328:      6(int) AtomicExchange 327 237 19 326
             329:     20(ptr) AccessChain 9(iv) 19
             330:      6(int) Load 329
             331:      6(int) IAdd 330 328
             332:     20(ptr) AccessChain 9(iv) 19
                              Store 332 331
             333:   29(ivec2) Load 142(ic2D)
             334:     18(int) Load 248(value)
             335:    250(ptr) ImageTexelPointer 245(ui2D) 333 19
             336:     18(int) AtomicExchange 335 237 19 334
             337:     18(int) Load 229(ui)
             338:     18(int) IAdd 337 336
                              Store 229(ui) 338
             339:      6(int) Load 132(ic1D)
             342:    235(ptr) ImageTexelPointer 232(ii1D) 339 19
             343:      6(int) AtomicCompareExchange 342 237 19 19 341 340
             344:     20(ptr) AccessChain 9(iv) 19
             345:      6(int) Load 344
             346:      6(int) IAdd 345 343
             347:     20(ptr) AccessChain 9(iv) 19
                              Store 347 346
             348:   29(ivec2) Load 142(ic2D)
             350:     18(int) Load 248(value)
             351:    250(ptr) ImageTexelPointer 245(ui2D) 348 19
             352:     18(int) AtomicCompareExchange 351 237 19 19 350 349
             353:     18(int) Load 229(ui)
             354:     18(int) IAdd 353 352
                              Store 229(ui) 354
             358:         355 Load 357(wo2D)
             359:   29(ivec2) Load 142(ic2D)
             360:  125(fvec4) Load 127(v)
                              ImageWrite 358 359 360
             364:     18(int) Load 229(ui)
             365:     20(ptr) AccessChain 9(iv) 237
             366:      6(int) Load 365
             367:     18(int) Bitcast 366
             369:   368(bool) INotEqual 364 367
                              SelectionMerge 371 None
                              BranchConditional 369 370 373
             370:               Label
             372:  125(fvec4)   Load 127(v)
                                Store 363 372
                                Branch 371
             373:               Label
                                Store 363 129
                                Branch 371
             371:             Label
             374:  125(fvec4) Load 363
                              Store 362(fragData) 374
                              Return
                              FunctionEnd
