glslang/Test/baseResults/spv.sparseTexture.frag.out
John Kessenich 4bee531fc1 HLSL: Fix #1249: Always execute both sides of ternary "?:".
This is semantically required by HLSL, and frequently results in using
OpSelect instead of control flow.
2018-02-20 21:32:33 -07:00

589 lines
30 KiB
Plaintext

spv.sparseTexture.frag
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 438
Capability Shader
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 44(s3D) DescriptorSet 0
Decorate 59(isCube) DescriptorSet 0
Decorate 71(s2DShadow) DescriptorSet 0
Decorate 86(sCubeArrayShadow) DescriptorSet 0
Decorate 108(usCubeArray) DescriptorSet 0
Decorate 140(us2DRect) DescriptorSet 0
Decorate 154(s2DArrayShadow) DescriptorSet 0
Decorate 188(s2DMS) DescriptorSet 0
Decorate 228(is2DArray) DescriptorSet 0
Decorate 261(sCubeShadow) DescriptorSet 0
Decorate 294(s2DRectShadow) DescriptorSet 0
Decorate 365(offsets) Flat
Decorate 390(i2D) DescriptorSet 0
Decorate 393(ic2) Flat
Decorate 402(ii3D) DescriptorSet 0
Decorate 405(ic3) Flat
Decorate 414(i2DMS) DescriptorSet 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