spv.nonuniform.frag // Module Version 10000 // Generated by (magic number): 8000a // Id's are bound by 289 Capability Shader Capability InputAttachment Capability SampledBuffer Capability ImageBuffer Capability ShaderNonUniformEXT Capability RuntimeDescriptorArrayEXT Capability InputAttachmentArrayDynamicIndexingEXT Capability UniformTexelBufferArrayDynamicIndexingEXT Capability StorageTexelBufferArrayDynamicIndexingEXT Capability UniformBufferArrayNonUniformIndexingEXT Capability SampledImageArrayNonUniformIndexingEXT Capability StorageBufferArrayNonUniformIndexingEXT Capability StorageImageArrayNonUniformIndexingEXT Capability InputAttachmentArrayNonUniformIndexingEXT Capability UniformTexelBufferArrayNonUniformIndexingEXT Capability StorageTexelBufferArrayNonUniformIndexingEXT Extension "SPV_EXT_descriptor_indexing" 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 41 98 188 ExecutionMode 4 OriginUpperLeft Source GLSL 450 SourceExtension "GL_EXT_nonuniform_qualifier" Name 4 "main" Name 11 "foo(i1;i1;" Name 9 "nupi" Name 10 "f" Name 16 "a" Name 17 "nu_li" Name 18 "param" Name 20 "param" Name 30 "nu_li2" Name 38 "b" Name 41 "nu_inv4" Name 47 "nu_gf" Name 53 "inputAttachmentDyn" Name 54 "dyn_i" Name 70 "uniformTexelBufferDyn" Name 84 "storageTexelBufferDyn" Name 93 "uname" MemberName 93(uname) 0 "a" Name 96 "uniformBuffer" Name 98 "nu_ii" Name 105 "bname" MemberName 105(bname) 0 "b" Name 108 "storageBuffer" Name 118 "sampledImage" Name 133 "storageImage" Name 145 "inputAttachment" Name 155 "uniformTexelBuffer" Name 166 "storageTexelBuffer" Name 177 "uniformTexArr" Name 184 "uniformSampler" Name 188 "inTexcoord" Name 207 "v" Name 222 "uv" Name 232 "m" Name 240 "S" MemberName 240(S) 0 "a" Name 242 "s" Name 252 "arr" Name 259 "um" Name 268 "US" MemberName 268(US) 0 "a" Name 270 "us" Name 278 "uarr" Decorate 13 DecorationNonUniformEXT Decorate 19 DecorationNonUniformEXT Decorate 21 DecorationNonUniformEXT Decorate 22 DecorationNonUniformEXT Decorate 24 DecorationNonUniformEXT Decorate 28 DecorationNonUniformEXT Decorate 29 DecorationNonUniformEXT Decorate 34 DecorationNonUniformEXT Decorate 35 DecorationNonUniformEXT Decorate 41(nu_inv4) Location 0 Decorate 46 DecorationNonUniformEXT Decorate 48 DecorationNonUniformEXT Decorate 49 DecorationNonUniformEXT Decorate 53(inputAttachmentDyn) DescriptorSet 0 Decorate 53(inputAttachmentDyn) Binding 0 Decorate 53(inputAttachmentDyn) InputAttachmentIndex 0 Decorate 70(uniformTexelBufferDyn) DescriptorSet 0 Decorate 70(uniformTexelBufferDyn) Binding 1 Decorate 84(storageTexelBufferDyn) DescriptorSet 0 Decorate 84(storageTexelBufferDyn) Binding 2 MemberDecorate 93(uname) 0 Offset 0 Decorate 93(uname) Block Decorate 96(uniformBuffer) DescriptorSet 0 Decorate 96(uniformBuffer) Binding 3 Decorate 98(nu_ii) Flat Decorate 98(nu_ii) Location 1 Decorate 99 DecorationNonUniformEXT Decorate 101 DecorationNonUniformEXT Decorate 102 DecorationNonUniformEXT Decorate 104 DecorationNonUniformEXT MemberDecorate 105(bname) 0 Offset 0 Decorate 105(bname) BufferBlock Decorate 108(storageBuffer) DescriptorSet 0 Decorate 108(storageBuffer) Binding 4 Decorate 109 DecorationNonUniformEXT Decorate 110 DecorationNonUniformEXT Decorate 111 DecorationNonUniformEXT Decorate 113 DecorationNonUniformEXT Decorate 118(sampledImage) DescriptorSet 0 Decorate 118(sampledImage) Binding 5 Decorate 119 DecorationNonUniformEXT Decorate 121 DecorationNonUniformEXT Decorate 122 DecorationNonUniformEXT Decorate 133(storageImage) DescriptorSet 0 Decorate 133(storageImage) Binding 6 Decorate 134 DecorationNonUniformEXT Decorate 136 DecorationNonUniformEXT Decorate 137 DecorationNonUniformEXT Decorate 145(inputAttachment) DescriptorSet 0 Decorate 145(inputAttachment) Binding 7 Decorate 145(inputAttachment) InputAttachmentIndex 1 Decorate 146 DecorationNonUniformEXT Decorate 147 DecorationNonUniformEXT Decorate 148 DecorationNonUniformEXT Decorate 155(uniformTexelBuffer) DescriptorSet 0 Decorate 155(uniformTexelBuffer) Binding 8 Decorate 156 DecorationNonUniformEXT Decorate 157 DecorationNonUniformEXT Decorate 158 DecorationNonUniformEXT Decorate 159 DecorationNonUniformEXT Decorate 166(storageTexelBuffer) DescriptorSet 0 Decorate 166(storageTexelBuffer) Binding 9 Decorate 167 DecorationNonUniformEXT Decorate 168 DecorationNonUniformEXT Decorate 169 DecorationNonUniformEXT Decorate 177(uniformTexArr) DescriptorSet 0 Decorate 177(uniformTexArr) Binding 10 Decorate 178 DecorationNonUniformEXT Decorate 180 DecorationNonUniformEXT Decorate 181 DecorationNonUniformEXT Decorate 184(uniformSampler) DescriptorSet 0 Decorate 184(uniformSampler) Binding 11 Decorate 188(inTexcoord) Location 2 Decorate 194 DecorationNonUniformEXT Decorate 195 DecorationNonUniformEXT Decorate 196 DecorationNonUniformEXT Decorate 199 DecorationNonUniformEXT Decorate 210 DecorationNonUniformEXT Decorate 211 DecorationNonUniformEXT Decorate 212 DecorationNonUniformEXT Decorate 214 DecorationNonUniformEXT Decorate 217 DecorationNonUniformEXT Decorate 218 DecorationNonUniformEXT Decorate 219 DecorationNonUniformEXT Decorate 221 DecorationNonUniformEXT Decorate 223 DecorationNonUniformEXT Decorate 224 DecorationNonUniformEXT Decorate 225 DecorationNonUniformEXT Decorate 226 DecorationNonUniformEXT Decorate 227 DecorationNonUniformEXT Decorate 229 DecorationNonUniformEXT Decorate 234 DecorationNonUniformEXT Decorate 244 DecorationNonUniformEXT Decorate 245 DecorationNonUniformEXT Decorate 246 DecorationNonUniformEXT Decorate 248 DecorationNonUniformEXT Decorate 254 DecorationNonUniformEXT Decorate 255 DecorationNonUniformEXT Decorate 256 DecorationNonUniformEXT Decorate 258 DecorationNonUniformEXT Decorate 260 DecorationNonUniformEXT Decorate 261 DecorationNonUniformEXT Decorate 262 DecorationNonUniformEXT Decorate 271 DecorationNonUniformEXT Decorate 272 DecorationNonUniformEXT Decorate 273 DecorationNonUniformEXT Decorate 274 DecorationNonUniformEXT Decorate 275 DecorationNonUniformEXT Decorate 277 DecorationNonUniformEXT Decorate 279 DecorationNonUniformEXT Decorate 280 DecorationNonUniformEXT Decorate 281 DecorationNonUniformEXT Decorate 282 DecorationNonUniformEXT Decorate 283 DecorationNonUniformEXT Decorate 285 DecorationNonUniformEXT Decorate 286 DecorationNonUniformEXT Decorate 288 DecorationNonUniformEXT 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 1 7: TypePointer Function 6(int) 8: TypeFunction 6(int) 7(ptr) 7(ptr) 26: 6(int) Constant 2 36: TypeFloat 32 37: TypePointer Function 36(float) 39: TypeVector 36(float) 4 40: TypePointer Input 39(fvec4) 41(nu_inv4): 40(ptr) Variable Input 42: TypeInt 32 0 43: 42(int) Constant 0 44: TypePointer Input 36(float) 50: TypeImage 36(float) SubpassData nonsampled format:Unknown 51: TypeRuntimeArray 50 52: TypePointer UniformConstant 51 53(inputAttachmentDyn): 52(ptr) Variable UniformConstant 56: TypePointer UniformConstant 50 59: 6(int) Constant 0 60: TypeVector 6(int) 2 61: 60(ivec2) ConstantComposite 59 59 66: TypeImage 36(float) Buffer sampled format:Unknown 67: TypeSampledImage 66 68: TypeRuntimeArray 67 69: TypePointer UniformConstant 68 70(uniformTexelBufferDyn): 69(ptr) Variable UniformConstant 72: TypePointer UniformConstant 67 75: 6(int) Constant 1 81: TypeImage 36(float) Buffer nonsampled format:R32f 82: TypeRuntimeArray 81 83: TypePointer UniformConstant 82 84(storageTexelBufferDyn): 83(ptr) Variable UniformConstant 86: TypePointer UniformConstant 81 93(uname): TypeStruct 36(float) 94: TypeRuntimeArray 93(uname) 95: TypePointer Uniform 94 96(uniformBuffer): 95(ptr) Variable Uniform 97: TypePointer Input 6(int) 98(nu_ii): 97(ptr) Variable Input 100: TypePointer Uniform 36(float) 105(bname): TypeStruct 36(float) 106: TypeRuntimeArray 105(bname) 107: TypePointer Uniform 106 108(storageBuffer): 107(ptr) Variable Uniform 114: TypeImage 36(float) 2D sampled format:Unknown 115: TypeSampledImage 114 116: TypeRuntimeArray 115 117: TypePointer UniformConstant 116 118(sampledImage): 117(ptr) Variable UniformConstant 120: TypePointer UniformConstant 115 123: TypeVector 36(float) 2 124: 36(float) Constant 1056964608 125: 123(fvec2) ConstantComposite 124 124 130: TypeImage 36(float) 2D nonsampled format:R32f 131: TypeRuntimeArray 130 132: TypePointer UniformConstant 131 133(storageImage): 132(ptr) Variable UniformConstant 135: TypePointer UniformConstant 130 138: 60(ivec2) ConstantComposite 75 75 143: TypeRuntimeArray 50 144: TypePointer UniformConstant 143 145(inputAttachment): 144(ptr) Variable UniformConstant 153: TypeRuntimeArray 67 154: TypePointer UniformConstant 153 155(uniformTexelBuffer): 154(ptr) Variable UniformConstant 164: TypeRuntimeArray 81 165: TypePointer UniformConstant 164 166(storageTexelBuffer): 165(ptr) Variable UniformConstant 174: 42(int) Constant 8 175: TypeArray 114 174 176: TypePointer UniformConstant 175 177(uniformTexArr): 176(ptr) Variable UniformConstant 179: TypePointer UniformConstant 114 182: TypeSampler 183: TypePointer UniformConstant 182 184(uniformSampler): 183(ptr) Variable UniformConstant 187: TypePointer Input 123(fvec2) 188(inTexcoord): 187(ptr) Variable Input 205: TypeVector 6(int) 4 206: TypePointer Function 205(ivec4) 208: 42(int) Constant 1 215: 42(int) Constant 2 230: TypeMatrix 39(fvec4) 4 231: TypePointer Function 230 240(S): TypeStruct 6(int) 241: TypePointer Function 240(S) 249: 42(int) Constant 10 250: TypeArray 6(int) 249 251: TypePointer Function 250 268(US): TypeStruct 250 269: TypePointer Function 268(US) 4(main): 2 Function None 3 5: Label 16(a): 7(ptr) Variable Function 17(nu_li): 7(ptr) Variable Function 18(param): 7(ptr) Variable Function 20(param): 7(ptr) Variable Function 30(nu_li2): 7(ptr) Variable Function 38(b): 37(ptr) Variable Function 47(nu_gf): 37(ptr) Variable Function 54(dyn_i): 7(ptr) Variable Function 207(v): 206(ptr) Variable Function 222(uv): 206(ptr) Variable Function 232(m): 231(ptr) Variable Function 242(s): 241(ptr) Variable Function 252(arr): 251(ptr) Variable Function 259(um): 231(ptr) Variable Function 270(us): 269(ptr) Variable Function 278(uarr): 251(ptr) Variable Function 19: 6(int) Load 17(nu_li) Store 18(param) 19 21: 6(int) FunctionCall 11(foo(i1;i1;) 18(param) 20(param) 22: 6(int) Load 20(param) Store 17(nu_li) 22 Store 16(a) 21 23: 6(int) Load 16(a) 24: 6(int) CopyObject 23 25: 6(int) Load 16(a) 27: 6(int) IMul 25 26 28: 6(int) CopyObject 27 29: 6(int) IAdd 24 28 Store 17(nu_li) 29 31: 6(int) Load 16(a) 32: 6(int) Load 16(a) 33: 6(int) IMul 32 26 34: 6(int) CopyObject 33 35: 6(int) IAdd 31 34 Store 30(nu_li2) 35 45: 44(ptr) AccessChain 41(nu_inv4) 43 46: 36(float) Load 45 48: 36(float) Load 47(nu_gf) 49: 36(float) FMul 46 48 Store 38(b) 49 55: 6(int) Load 54(dyn_i) 57: 56(ptr) AccessChain 53(inputAttachmentDyn) 55 58: 50 Load 57 62: 39(fvec4) ImageRead 58 61 63: 36(float) CompositeExtract 62 0 64: 36(float) Load 38(b) 65: 36(float) FAdd 64 63 Store 38(b) 65 71: 6(int) Load 54(dyn_i) 73: 72(ptr) AccessChain 70(uniformTexelBufferDyn) 71 74: 67 Load 73 76: 66 Image 74 77: 39(fvec4) ImageFetch 76 75 78: 36(float) CompositeExtract 77 0 79: 36(float) Load 38(b) 80: 36(float) FAdd 79 78 Store 38(b) 80 85: 6(int) Load 54(dyn_i) 87: 86(ptr) AccessChain 84(storageTexelBufferDyn) 85 88: 81 Load 87 89: 39(fvec4) ImageRead 88 75 90: 36(float) CompositeExtract 89 0 91: 36(float) Load 38(b) 92: 36(float) FAdd 91 90 Store 38(b) 92 99: 6(int) Load 98(nu_ii) 101: 100(ptr) AccessChain 96(uniformBuffer) 99 59 102: 36(float) Load 101 103: 36(float) Load 38(b) 104: 36(float) FAdd 103 102 Store 38(b) 104 109: 6(int) Load 98(nu_ii) 110: 100(ptr) AccessChain 108(storageBuffer) 109 59 111: 36(float) Load 110 112: 36(float) Load 38(b) 113: 36(float) FAdd 112 111 Store 38(b) 113 119: 6(int) Load 98(nu_ii) 121: 120(ptr) AccessChain 118(sampledImage) 119 122: 115 Load 121 126: 39(fvec4) ImageSampleImplicitLod 122 125 127: 36(float) CompositeExtract 126 0 128: 36(float) Load 38(b) 129: 36(float) FAdd 128 127 Store 38(b) 129 134: 6(int) Load 98(nu_ii) 136: 135(ptr) AccessChain 133(storageImage) 134 137: 130 Load 136 139: 39(fvec4) ImageRead 137 138 140: 36(float) CompositeExtract 139 0 141: 36(float) Load 38(b) 142: 36(float) FAdd 141 140 Store 38(b) 142 146: 6(int) Load 98(nu_ii) 147: 56(ptr) AccessChain 145(inputAttachment) 146 148: 50 Load 147 149: 39(fvec4) ImageRead 148 61 150: 36(float) CompositeExtract 149 0 151: 36(float) Load 38(b) 152: 36(float) FAdd 151 150 Store 38(b) 152 156: 6(int) Load 98(nu_ii) 157: 72(ptr) AccessChain 155(uniformTexelBuffer) 156 158: 67 Load 157 159: 66 Image 158 160: 39(fvec4) ImageFetch 159 75 161: 36(float) CompositeExtract 160 0 162: 36(float) Load 38(b) 163: 36(float) FAdd 162 161 Store 38(b) 163 167: 6(int) Load 98(nu_ii) 168: 86(ptr) AccessChain 166(storageTexelBuffer) 167 169: 81 Load 168 170: 39(fvec4) ImageRead 169 75 171: 36(float) CompositeExtract 170 0 172: 36(float) Load 38(b) 173: 36(float) FAdd 172 171 Store 38(b) 173 178: 6(int) Load 98(nu_ii) 180: 179(ptr) AccessChain 177(uniformTexArr) 178 181: 114 Load 180 185: 182 Load 184(uniformSampler) 186: 115 SampledImage 181 185 189: 123(fvec2) Load 188(inTexcoord) 190: 39(fvec4) ImageSampleImplicitLod 186 189 191: 36(float) CompositeExtract 190 0 192: 36(float) Load 38(b) 193: 36(float) FAdd 192 191 Store 38(b) 193 194: 6(int) Load 98(nu_ii) 195: 179(ptr) AccessChain 177(uniformTexArr) 194 196: 114 Load 195 197: 182 Load 184(uniformSampler) 198: 115 SampledImage 196 197 199: 115 CopyObject 198 200: 123(fvec2) Load 188(inTexcoord) 201: 39(fvec4) ImageSampleImplicitLod 199 200 202: 36(float) CompositeExtract 201 0 203: 36(float) Load 38(b) 204: 36(float) FAdd 203 202 Store 38(b) 204 209: 7(ptr) AccessChain 207(v) 208 210: 6(int) Load 209 211: 100(ptr) AccessChain 96(uniformBuffer) 210 59 212: 36(float) Load 211 213: 36(float) Load 38(b) 214: 36(float) FAdd 213 212 Store 38(b) 214 216: 7(ptr) AccessChain 207(v) 215 217: 6(int) Load 216 218: 100(ptr) AccessChain 96(uniformBuffer) 217 59 219: 36(float) Load 218 220: 36(float) Load 38(b) 221: 36(float) FAdd 220 219 Store 38(b) 221 223: 6(int) Load 98(nu_ii) 224: 7(ptr) AccessChain 222(uv) 223 225: 6(int) Load 224 226: 100(ptr) AccessChain 96(uniformBuffer) 225 59 227: 36(float) Load 226 228: 36(float) Load 38(b) 229: 36(float) FAdd 228 227 Store 38(b) 229 233: 37(ptr) AccessChain 232(m) 26 215 234: 36(float) Load 233 235: 6(int) ConvertFToS 234 236: 100(ptr) AccessChain 96(uniformBuffer) 235 59 237: 36(float) Load 236 238: 36(float) Load 38(b) 239: 36(float) FAdd 238 237 Store 38(b) 239 243: 7(ptr) AccessChain 242(s) 59 244: 6(int) Load 243 245: 100(ptr) AccessChain 96(uniformBuffer) 244 59 246: 36(float) Load 245 247: 36(float) Load 38(b) 248: 36(float) FAdd 247 246 Store 38(b) 248 253: 7(ptr) AccessChain 252(arr) 26 254: 6(int) Load 253 255: 100(ptr) AccessChain 96(uniformBuffer) 254 59 256: 36(float) Load 255 257: 36(float) Load 38(b) 258: 36(float) FAdd 257 256 Store 38(b) 258 260: 6(int) Load 98(nu_ii) 261: 37(ptr) AccessChain 259(um) 260 215 262: 36(float) Load 261 263: 6(int) ConvertFToS 262 264: 100(ptr) AccessChain 96(uniformBuffer) 263 59 265: 36(float) Load 264 266: 36(float) Load 38(b) 267: 36(float) FAdd 266 265 Store 38(b) 267 271: 6(int) Load 98(nu_ii) 272: 7(ptr) AccessChain 270(us) 59 271 273: 6(int) Load 272 274: 100(ptr) AccessChain 96(uniformBuffer) 273 59 275: 36(float) Load 274 276: 36(float) Load 38(b) 277: 36(float) FAdd 276 275 Store 38(b) 277 279: 6(int) Load 98(nu_ii) 280: 7(ptr) AccessChain 278(uarr) 279 281: 6(int) Load 280 282: 100(ptr) AccessChain 96(uniformBuffer) 281 59 283: 36(float) Load 282 284: 36(float) Load 38(b) 285: 36(float) FAdd 284 283 Store 38(b) 285 286: 6(int) Load 98(nu_ii) 287: 36(float) Load 38(b) 288: 100(ptr) AccessChain 108(storageBuffer) 286 59 Store 288 287 Return FunctionEnd 11(foo(i1;i1;): 6(int) Function None 8 9(nupi): 7(ptr) FunctionParameter 10(f): 7(ptr) FunctionParameter 12: Label 13: 6(int) Load 9(nupi) ReturnValue 13 FunctionEnd