blob: f6febc9b94550634b4119c13e055470ed2c6e927 [file] [log] [blame]
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