| spv.subgroupBallot.comp |
| // Module Version 10300 |
| // Generated by (magic number): 80006 |
| // Id's are bound by 417 |
| |
| Capability Shader |
| Capability Float64 |
| Capability GroupNonUniform |
| Capability GroupNonUniformBallot |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint GLCompute 4 "main" 10 12 21 23 26 29 32 |
| ExecutionMode 4 LocalSize 8 8 1 |
| Source GLSL 450 |
| SourceExtension "GL_KHR_shader_subgroup_ballot" |
| SourceExtension "GL_KHR_shader_subgroup_basic" |
| Name 4 "main" |
| Name 8 "invocation" |
| Name 10 "gl_SubgroupInvocationID" |
| Name 12 "gl_SubgroupSize" |
| Name 19 "relMask" |
| Name 21 "gl_SubgroupEqMask" |
| Name 23 "gl_SubgroupGeMask" |
| Name 26 "gl_SubgroupGtMask" |
| Name 29 "gl_SubgroupLeMask" |
| Name 32 "gl_SubgroupLtMask" |
| Name 35 "result" |
| Name 46 "Buffers" |
| MemberName 46(Buffers) 0 "f4" |
| MemberName 46(Buffers) 1 "i4" |
| MemberName 46(Buffers) 2 "u4" |
| MemberName 46(Buffers) 3 "d4" |
| Name 49 "data" |
| Decorate 10(gl_SubgroupInvocationID) RelaxedPrecision |
| Decorate 10(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId |
| Decorate 11 RelaxedPrecision |
| Decorate 12(gl_SubgroupSize) RelaxedPrecision |
| Decorate 12(gl_SubgroupSize) BuiltIn SubgroupSize |
| Decorate 13 RelaxedPrecision |
| Decorate 14 RelaxedPrecision |
| Decorate 16 RelaxedPrecision |
| Decorate 21(gl_SubgroupEqMask) BuiltIn SubgroupEqMaskKHR |
| Decorate 23(gl_SubgroupGeMask) BuiltIn SubgroupGeMaskKHR |
| Decorate 26(gl_SubgroupGtMask) BuiltIn SubgroupGtMaskKHR |
| Decorate 29(gl_SubgroupLeMask) BuiltIn SubgroupLeMaskKHR |
| Decorate 32(gl_SubgroupLtMask) BuiltIn SubgroupLtMaskKHR |
| MemberDecorate 46(Buffers) 0 Offset 0 |
| MemberDecorate 46(Buffers) 1 Offset 16 |
| MemberDecorate 46(Buffers) 2 Offset 32 |
| MemberDecorate 46(Buffers) 3 Offset 64 |
| Decorate 46(Buffers) BufferBlock |
| Decorate 49(data) DescriptorSet 0 |
| Decorate 49(data) Binding 0 |
| Decorate 416 BuiltIn WorkgroupSize |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeInt 32 0 |
| 7: TypePointer Function 6(int) |
| 9: TypePointer Input 6(int) |
| 10(gl_SubgroupInvocationID): 9(ptr) Variable Input |
| 12(gl_SubgroupSize): 9(ptr) Variable Input |
| 15: 6(int) Constant 4 |
| 17: TypeVector 6(int) 4 |
| 18: TypePointer Function 17(ivec4) |
| 20: TypePointer Input 17(ivec4) |
| 21(gl_SubgroupEqMask): 20(ptr) Variable Input |
| 23(gl_SubgroupGeMask): 20(ptr) Variable Input |
| 26(gl_SubgroupGtMask): 20(ptr) Variable Input |
| 29(gl_SubgroupLeMask): 20(ptr) Variable Input |
| 32(gl_SubgroupLtMask): 20(ptr) Variable Input |
| 36: TypeBool |
| 37: 36(bool) ConstantTrue |
| 38: 6(int) Constant 3 |
| 40: TypeFloat 32 |
| 41: TypeVector 40(float) 4 |
| 42: TypeInt 32 1 |
| 43: TypeVector 42(int) 4 |
| 44: TypeFloat 64 |
| 45: TypeVector 44(float64_t) 4 |
| 46(Buffers): TypeStruct 41(fvec4) 43(ivec4) 17(ivec4) 45(f64vec4) |
| 47: TypeArray 46(Buffers) 15 |
| 48: TypePointer Uniform 47 |
| 49(data): 48(ptr) Variable Uniform |
| 51: 42(int) Constant 2 |
| 54: 6(int) Constant 0 |
| 55: TypePointer Uniform 6(int) |
| 60: 42(int) Constant 1 |
| 61: 42(int) Constant 0 |
| 64: 6(int) Constant 1 |
| 72: 6(int) Constant 2 |
| 83: TypeVector 36(bool) 4 |
| 88: TypePointer Uniform 17(ivec4) |
| 96: TypePointer Uniform 40(float) |
| 103: TypeVector 40(float) 2 |
| 104: TypePointer Uniform 41(fvec4) |
| 114: TypeVector 40(float) 3 |
| 124: 42(int) Constant 3 |
| 131: TypePointer Uniform 42(int) |
| 138: TypeVector 42(int) 2 |
| 139: TypePointer Uniform 43(ivec4) |
| 149: TypeVector 42(int) 3 |
| 171: TypeVector 6(int) 2 |
| 181: TypeVector 6(int) 3 |
| 197: TypePointer Uniform 44(float64_t) |
| 204: TypeVector 44(float64_t) 2 |
| 205: TypePointer Uniform 45(f64vec4) |
| 215: TypeVector 44(float64_t) 3 |
| 242: 138(ivec2) ConstantComposite 61 61 |
| 243: TypeVector 36(bool) 2 |
| 247: 138(ivec2) ConstantComposite 60 60 |
| 256: 149(ivec3) ConstantComposite 61 61 61 |
| 257: TypeVector 36(bool) 3 |
| 261: 149(ivec3) ConstantComposite 60 60 60 |
| 269: 43(ivec4) ConstantComposite 61 61 61 61 |
| 273: 43(ivec4) ConstantComposite 60 60 60 60 |
| 415: 6(int) Constant 8 |
| 416: 181(ivec3) ConstantComposite 415 415 64 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 8(invocation): 7(ptr) Variable Function |
| 19(relMask): 18(ptr) Variable Function |
| 35(result): 18(ptr) Variable Function |
| 11: 6(int) Load 10(gl_SubgroupInvocationID) |
| 13: 6(int) Load 12(gl_SubgroupSize) |
| 14: 6(int) IAdd 11 13 |
| 16: 6(int) UMod 14 15 |
| Store 8(invocation) 16 |
| 22: 17(ivec4) Load 21(gl_SubgroupEqMask) |
| 24: 17(ivec4) Load 23(gl_SubgroupGeMask) |
| 25: 17(ivec4) IAdd 22 24 |
| 27: 17(ivec4) Load 26(gl_SubgroupGtMask) |
| 28: 17(ivec4) IAdd 25 27 |
| 30: 17(ivec4) Load 29(gl_SubgroupLeMask) |
| 31: 17(ivec4) IAdd 28 30 |
| 33: 17(ivec4) Load 32(gl_SubgroupLtMask) |
| 34: 17(ivec4) IAdd 31 33 |
| Store 19(relMask) 34 |
| 39: 17(ivec4) GroupNonUniformBallot 38 37 |
| Store 35(result) 39 |
| 50: 6(int) Load 8(invocation) |
| 52: 17(ivec4) Load 35(result) |
| 53: 6(int) GroupNonUniformBallotBitCount 38 Reduce 52 |
| 56: 55(ptr) AccessChain 49(data) 50 51 54 |
| Store 56 53 |
| 57: 6(int) Load 8(invocation) |
| 58: 17(ivec4) Load 35(result) |
| 59: 36(bool) GroupNonUniformBallotBitExtract 38 58 54 |
| 62: 42(int) Select 59 60 61 |
| 63: 6(int) Bitcast 62 |
| 65: 55(ptr) AccessChain 49(data) 57 51 64 |
| Store 65 63 |
| 66: 6(int) Load 8(invocation) |
| 67: 17(ivec4) Load 35(result) |
| 68: 6(int) GroupNonUniformBallotBitCount 38 InclusiveScan 67 |
| 69: 17(ivec4) Load 35(result) |
| 70: 6(int) GroupNonUniformBallotBitCount 38 ExclusiveScan 69 |
| 71: 6(int) IAdd 68 70 |
| 73: 55(ptr) AccessChain 49(data) 66 51 72 |
| Store 73 71 |
| 74: 6(int) Load 8(invocation) |
| 75: 17(ivec4) Load 35(result) |
| 76: 6(int) GroupNonUniformBallotFindLSB 38 75 |
| 77: 17(ivec4) Load 35(result) |
| 78: 6(int) GroupNonUniformBallotFindMSB 38 77 |
| 79: 6(int) IAdd 76 78 |
| 80: 55(ptr) AccessChain 49(data) 74 51 38 |
| Store 80 79 |
| 81: 17(ivec4) Load 19(relMask) |
| 82: 17(ivec4) Load 35(result) |
| 84: 83(bvec4) IEqual 81 82 |
| 85: 36(bool) All 84 |
| SelectionMerge 87 None |
| BranchConditional 85 86 87 |
| 86: Label |
| 89: 88(ptr) AccessChain 49(data) 61 51 |
| 90: 17(ivec4) Load 89 |
| 91: 36(bool) GroupNonUniformInverseBallot 38 90 |
| Branch 87 |
| 87: Label |
| 92: 36(bool) Phi 85 5 91 86 |
| SelectionMerge 94 None |
| BranchConditional 92 93 276 |
| 93: Label |
| 95: 6(int) Load 8(invocation) |
| 97: 96(ptr) AccessChain 49(data) 61 61 54 |
| 98: 40(float) Load 97 |
| 99: 6(int) Load 8(invocation) |
| 100: 40(float) GroupNonUniformBroadcast 38 98 99 |
| 101: 96(ptr) AccessChain 49(data) 95 61 54 |
| Store 101 100 |
| 102: 6(int) Load 8(invocation) |
| 105: 104(ptr) AccessChain 49(data) 60 61 |
| 106: 41(fvec4) Load 105 |
| 107: 103(fvec2) VectorShuffle 106 106 0 1 |
| 108: 6(int) Load 8(invocation) |
| 109: 103(fvec2) GroupNonUniformBroadcast 38 107 108 |
| 110: 104(ptr) AccessChain 49(data) 102 61 |
| 111: 41(fvec4) Load 110 |
| 112: 41(fvec4) VectorShuffle 111 109 4 5 2 3 |
| Store 110 112 |
| 113: 6(int) Load 8(invocation) |
| 115: 104(ptr) AccessChain 49(data) 51 61 |
| 116: 41(fvec4) Load 115 |
| 117: 114(fvec3) VectorShuffle 116 116 0 1 2 |
| 118: 6(int) Load 8(invocation) |
| 119: 114(fvec3) GroupNonUniformBroadcast 38 117 118 |
| 120: 104(ptr) AccessChain 49(data) 113 61 |
| 121: 41(fvec4) Load 120 |
| 122: 41(fvec4) VectorShuffle 121 119 4 5 6 3 |
| Store 120 122 |
| 123: 6(int) Load 8(invocation) |
| 125: 104(ptr) AccessChain 49(data) 124 61 |
| 126: 41(fvec4) Load 125 |
| 127: 6(int) Load 8(invocation) |
| 128: 41(fvec4) GroupNonUniformBroadcast 38 126 127 |
| 129: 104(ptr) AccessChain 49(data) 123 61 |
| Store 129 128 |
| 130: 6(int) Load 8(invocation) |
| 132: 131(ptr) AccessChain 49(data) 61 60 54 |
| 133: 42(int) Load 132 |
| 134: 6(int) Load 8(invocation) |
| 135: 42(int) GroupNonUniformBroadcast 38 133 134 |
| 136: 131(ptr) AccessChain 49(data) 130 60 54 |
| Store 136 135 |
| 137: 6(int) Load 8(invocation) |
| 140: 139(ptr) AccessChain 49(data) 60 60 |
| 141: 43(ivec4) Load 140 |
| 142: 138(ivec2) VectorShuffle 141 141 0 1 |
| 143: 6(int) Load 8(invocation) |
| 144: 138(ivec2) GroupNonUniformBroadcast 38 142 143 |
| 145: 139(ptr) AccessChain 49(data) 137 60 |
| 146: 43(ivec4) Load 145 |
| 147: 43(ivec4) VectorShuffle 146 144 4 5 2 3 |
| Store 145 147 |
| 148: 6(int) Load 8(invocation) |
| 150: 139(ptr) AccessChain 49(data) 51 60 |
| 151: 43(ivec4) Load 150 |
| 152: 149(ivec3) VectorShuffle 151 151 0 1 2 |
| 153: 6(int) Load 8(invocation) |
| 154: 149(ivec3) GroupNonUniformBroadcast 38 152 153 |
| 155: 139(ptr) AccessChain 49(data) 148 60 |
| 156: 43(ivec4) Load 155 |
| 157: 43(ivec4) VectorShuffle 156 154 4 5 6 3 |
| Store 155 157 |
| 158: 6(int) Load 8(invocation) |
| 159: 139(ptr) AccessChain 49(data) 124 60 |
| 160: 43(ivec4) Load 159 |
| 161: 6(int) Load 8(invocation) |
| 162: 43(ivec4) GroupNonUniformBroadcast 38 160 161 |
| 163: 139(ptr) AccessChain 49(data) 158 60 |
| Store 163 162 |
| 164: 6(int) Load 8(invocation) |
| 165: 55(ptr) AccessChain 49(data) 61 51 54 |
| 166: 6(int) Load 165 |
| 167: 6(int) Load 8(invocation) |
| 168: 6(int) GroupNonUniformBroadcast 38 166 167 |
| 169: 55(ptr) AccessChain 49(data) 164 51 54 |
| Store 169 168 |
| 170: 6(int) Load 8(invocation) |
| 172: 88(ptr) AccessChain 49(data) 60 51 |
| 173: 17(ivec4) Load 172 |
| 174: 171(ivec2) VectorShuffle 173 173 0 1 |
| 175: 6(int) Load 8(invocation) |
| 176: 171(ivec2) GroupNonUniformBroadcast 38 174 175 |
| 177: 88(ptr) AccessChain 49(data) 170 51 |
| 178: 17(ivec4) Load 177 |
| 179: 17(ivec4) VectorShuffle 178 176 4 5 2 3 |
| Store 177 179 |
| 180: 6(int) Load 8(invocation) |
| 182: 88(ptr) AccessChain 49(data) 51 51 |
| 183: 17(ivec4) Load 182 |
| 184: 181(ivec3) VectorShuffle 183 183 0 1 2 |
| 185: 6(int) Load 8(invocation) |
| 186: 181(ivec3) GroupNonUniformBroadcast 38 184 185 |
| 187: 88(ptr) AccessChain 49(data) 180 51 |
| 188: 17(ivec4) Load 187 |
| 189: 17(ivec4) VectorShuffle 188 186 4 5 6 3 |
| Store 187 189 |
| 190: 6(int) Load 8(invocation) |
| 191: 88(ptr) AccessChain 49(data) 124 51 |
| 192: 17(ivec4) Load 191 |
| 193: 6(int) Load 8(invocation) |
| 194: 17(ivec4) GroupNonUniformBroadcast 38 192 193 |
| 195: 88(ptr) AccessChain 49(data) 190 51 |
| Store 195 194 |
| 196: 6(int) Load 8(invocation) |
| 198: 197(ptr) AccessChain 49(data) 61 124 54 |
| 199:44(float64_t) Load 198 |
| 200: 6(int) Load 8(invocation) |
| 201:44(float64_t) GroupNonUniformBroadcast 38 199 200 |
| 202: 197(ptr) AccessChain 49(data) 196 124 54 |
| Store 202 201 |
| 203: 6(int) Load 8(invocation) |
| 206: 205(ptr) AccessChain 49(data) 60 124 |
| 207: 45(f64vec4) Load 206 |
| 208:204(f64vec2) VectorShuffle 207 207 0 1 |
| 209: 6(int) Load 8(invocation) |
| 210:204(f64vec2) GroupNonUniformBroadcast 38 208 209 |
| 211: 205(ptr) AccessChain 49(data) 203 124 |
| 212: 45(f64vec4) Load 211 |
| 213: 45(f64vec4) VectorShuffle 212 210 4 5 2 3 |
| Store 211 213 |
| 214: 6(int) Load 8(invocation) |
| 216: 205(ptr) AccessChain 49(data) 51 124 |
| 217: 45(f64vec4) Load 216 |
| 218:215(f64vec3) VectorShuffle 217 217 0 1 2 |
| 219: 6(int) Load 8(invocation) |
| 220:215(f64vec3) GroupNonUniformBroadcast 38 218 219 |
| 221: 205(ptr) AccessChain 49(data) 214 124 |
| 222: 45(f64vec4) Load 221 |
| 223: 45(f64vec4) VectorShuffle 222 220 4 5 6 3 |
| Store 221 223 |
| 224: 6(int) Load 8(invocation) |
| 225: 205(ptr) AccessChain 49(data) 124 124 |
| 226: 45(f64vec4) Load 225 |
| 227: 6(int) Load 8(invocation) |
| 228: 45(f64vec4) GroupNonUniformBroadcast 38 226 227 |
| 229: 205(ptr) AccessChain 49(data) 224 124 |
| Store 229 228 |
| 230: 6(int) Load 8(invocation) |
| 231: 131(ptr) AccessChain 49(data) 61 60 54 |
| 232: 42(int) Load 231 |
| 233: 36(bool) SLessThan 232 61 |
| 234: 6(int) Load 8(invocation) |
| 235: 36(bool) GroupNonUniformBroadcast 38 233 234 |
| 236: 42(int) Select 235 60 61 |
| 237: 131(ptr) AccessChain 49(data) 230 60 54 |
| Store 237 236 |
| 238: 6(int) Load 8(invocation) |
| 239: 139(ptr) AccessChain 49(data) 60 60 |
| 240: 43(ivec4) Load 239 |
| 241: 138(ivec2) VectorShuffle 240 240 0 1 |
| 244: 243(bvec2) SLessThan 241 242 |
| 245: 6(int) Load 8(invocation) |
| 246: 243(bvec2) GroupNonUniformBroadcast 38 244 245 |
| 248: 138(ivec2) Select 246 247 242 |
| 249: 139(ptr) AccessChain 49(data) 238 60 |
| 250: 43(ivec4) Load 249 |
| 251: 43(ivec4) VectorShuffle 250 248 4 5 2 3 |
| Store 249 251 |
| 252: 6(int) Load 8(invocation) |
| 253: 139(ptr) AccessChain 49(data) 60 60 |
| 254: 43(ivec4) Load 253 |
| 255: 149(ivec3) VectorShuffle 254 254 0 1 2 |
| 258: 257(bvec3) SLessThan 255 256 |
| 259: 6(int) Load 8(invocation) |
| 260: 257(bvec3) GroupNonUniformBroadcast 38 258 259 |
| 262: 149(ivec3) Select 260 261 256 |
| 263: 139(ptr) AccessChain 49(data) 252 60 |
| 264: 43(ivec4) Load 263 |
| 265: 43(ivec4) VectorShuffle 264 262 4 5 6 3 |
| Store 263 265 |
| 266: 6(int) Load 8(invocation) |
| 267: 139(ptr) AccessChain 49(data) 60 60 |
| 268: 43(ivec4) Load 267 |
| 270: 83(bvec4) SLessThan 268 269 |
| 271: 6(int) Load 8(invocation) |
| 272: 83(bvec4) GroupNonUniformBroadcast 38 270 271 |
| 274: 43(ivec4) Select 272 273 269 |
| 275: 139(ptr) AccessChain 49(data) 266 60 |
| Store 275 274 |
| Branch 94 |
| 276: Label |
| 277: 6(int) Load 8(invocation) |
| 278: 96(ptr) AccessChain 49(data) 61 61 54 |
| 279: 40(float) Load 278 |
| 280: 40(float) GroupNonUniformBroadcastFirst 38 279 |
| 281: 96(ptr) AccessChain 49(data) 277 61 54 |
| Store 281 280 |
| 282: 6(int) Load 8(invocation) |
| 283: 104(ptr) AccessChain 49(data) 60 61 |
| 284: 41(fvec4) Load 283 |
| 285: 103(fvec2) VectorShuffle 284 284 0 1 |
| 286: 103(fvec2) GroupNonUniformBroadcastFirst 38 285 |
| 287: 104(ptr) AccessChain 49(data) 282 61 |
| 288: 41(fvec4) Load 287 |
| 289: 41(fvec4) VectorShuffle 288 286 4 5 2 3 |
| Store 287 289 |
| 290: 6(int) Load 8(invocation) |
| 291: 104(ptr) AccessChain 49(data) 51 61 |
| 292: 41(fvec4) Load 291 |
| 293: 114(fvec3) VectorShuffle 292 292 0 1 2 |
| 294: 114(fvec3) GroupNonUniformBroadcastFirst 38 293 |
| 295: 104(ptr) AccessChain 49(data) 290 61 |
| 296: 41(fvec4) Load 295 |
| 297: 41(fvec4) VectorShuffle 296 294 4 5 6 3 |
| Store 295 297 |
| 298: 6(int) Load 8(invocation) |
| 299: 104(ptr) AccessChain 49(data) 124 61 |
| 300: 41(fvec4) Load 299 |
| 301: 41(fvec4) GroupNonUniformBroadcastFirst 38 300 |
| 302: 104(ptr) AccessChain 49(data) 298 61 |
| Store 302 301 |
| 303: 6(int) Load 8(invocation) |
| 304: 131(ptr) AccessChain 49(data) 61 60 54 |
| 305: 42(int) Load 304 |
| 306: 42(int) GroupNonUniformBroadcastFirst 38 305 |
| 307: 131(ptr) AccessChain 49(data) 303 60 54 |
| Store 307 306 |
| 308: 6(int) Load 8(invocation) |
| 309: 139(ptr) AccessChain 49(data) 60 60 |
| 310: 43(ivec4) Load 309 |
| 311: 138(ivec2) VectorShuffle 310 310 0 1 |
| 312: 138(ivec2) GroupNonUniformBroadcastFirst 38 311 |
| 313: 139(ptr) AccessChain 49(data) 308 60 |
| 314: 43(ivec4) Load 313 |
| 315: 43(ivec4) VectorShuffle 314 312 4 5 2 3 |
| Store 313 315 |
| 316: 6(int) Load 8(invocation) |
| 317: 139(ptr) AccessChain 49(data) 51 60 |
| 318: 43(ivec4) Load 317 |
| 319: 149(ivec3) VectorShuffle 318 318 0 1 2 |
| 320: 149(ivec3) GroupNonUniformBroadcastFirst 38 319 |
| 321: 139(ptr) AccessChain 49(data) 316 60 |
| 322: 43(ivec4) Load 321 |
| 323: 43(ivec4) VectorShuffle 322 320 4 5 6 3 |
| Store 321 323 |
| 324: 6(int) Load 8(invocation) |
| 325: 139(ptr) AccessChain 49(data) 124 60 |
| 326: 43(ivec4) Load 325 |
| 327: 43(ivec4) GroupNonUniformBroadcastFirst 38 326 |
| 328: 139(ptr) AccessChain 49(data) 324 60 |
| Store 328 327 |
| 329: 6(int) Load 8(invocation) |
| 330: 55(ptr) AccessChain 49(data) 61 51 54 |
| 331: 6(int) Load 330 |
| 332: 6(int) GroupNonUniformBroadcastFirst 38 331 |
| 333: 55(ptr) AccessChain 49(data) 329 51 54 |
| Store 333 332 |
| 334: 6(int) Load 8(invocation) |
| 335: 88(ptr) AccessChain 49(data) 60 51 |
| 336: 17(ivec4) Load 335 |
| 337: 171(ivec2) VectorShuffle 336 336 0 1 |
| 338: 171(ivec2) GroupNonUniformBroadcastFirst 38 337 |
| 339: 88(ptr) AccessChain 49(data) 334 51 |
| 340: 17(ivec4) Load 339 |
| 341: 17(ivec4) VectorShuffle 340 338 4 5 2 3 |
| Store 339 341 |
| 342: 6(int) Load 8(invocation) |
| 343: 88(ptr) AccessChain 49(data) 51 51 |
| 344: 17(ivec4) Load 343 |
| 345: 181(ivec3) VectorShuffle 344 344 0 1 2 |
| 346: 181(ivec3) GroupNonUniformBroadcastFirst 38 345 |
| 347: 88(ptr) AccessChain 49(data) 342 51 |
| 348: 17(ivec4) Load 347 |
| 349: 17(ivec4) VectorShuffle 348 346 4 5 6 3 |
| Store 347 349 |
| 350: 6(int) Load 8(invocation) |
| 351: 88(ptr) AccessChain 49(data) 124 51 |
| 352: 17(ivec4) Load 351 |
| 353: 17(ivec4) GroupNonUniformBroadcastFirst 38 352 |
| 354: 88(ptr) AccessChain 49(data) 350 51 |
| Store 354 353 |
| 355: 6(int) Load 8(invocation) |
| 356: 197(ptr) AccessChain 49(data) 61 124 54 |
| 357:44(float64_t) Load 356 |
| 358:44(float64_t) GroupNonUniformBroadcastFirst 38 357 |
| 359: 197(ptr) AccessChain 49(data) 355 124 54 |
| Store 359 358 |
| 360: 6(int) Load 8(invocation) |
| 361: 205(ptr) AccessChain 49(data) 60 124 |
| 362: 45(f64vec4) Load 361 |
| 363:204(f64vec2) VectorShuffle 362 362 0 1 |
| 364:204(f64vec2) GroupNonUniformBroadcastFirst 38 363 |
| 365: 205(ptr) AccessChain 49(data) 360 124 |
| 366: 45(f64vec4) Load 365 |
| 367: 45(f64vec4) VectorShuffle 366 364 4 5 2 3 |
| Store 365 367 |
| 368: 6(int) Load 8(invocation) |
| 369: 205(ptr) AccessChain 49(data) 51 124 |
| 370: 45(f64vec4) Load 369 |
| 371:215(f64vec3) VectorShuffle 370 370 0 1 2 |
| 372:215(f64vec3) GroupNonUniformBroadcastFirst 38 371 |
| 373: 205(ptr) AccessChain 49(data) 368 124 |
| 374: 45(f64vec4) Load 373 |
| 375: 45(f64vec4) VectorShuffle 374 372 4 5 6 3 |
| Store 373 375 |
| 376: 6(int) Load 8(invocation) |
| 377: 205(ptr) AccessChain 49(data) 124 124 |
| 378: 45(f64vec4) Load 377 |
| 379: 45(f64vec4) GroupNonUniformBroadcastFirst 38 378 |
| 380: 205(ptr) AccessChain 49(data) 376 124 |
| Store 380 379 |
| 381: 6(int) Load 8(invocation) |
| 382: 131(ptr) AccessChain 49(data) 61 60 54 |
| 383: 42(int) Load 382 |
| 384: 36(bool) SLessThan 383 61 |
| 385: 36(bool) GroupNonUniformBroadcastFirst 38 384 |
| 386: 42(int) Select 385 60 61 |
| 387: 131(ptr) AccessChain 49(data) 381 60 54 |
| Store 387 386 |
| 388: 6(int) Load 8(invocation) |
| 389: 139(ptr) AccessChain 49(data) 60 60 |
| 390: 43(ivec4) Load 389 |
| 391: 138(ivec2) VectorShuffle 390 390 0 1 |
| 392: 243(bvec2) SLessThan 391 242 |
| 393: 243(bvec2) GroupNonUniformBroadcastFirst 38 392 |
| 394: 138(ivec2) Select 393 247 242 |
| 395: 139(ptr) AccessChain 49(data) 388 60 |
| 396: 43(ivec4) Load 395 |
| 397: 43(ivec4) VectorShuffle 396 394 4 5 2 3 |
| Store 395 397 |
| 398: 6(int) Load 8(invocation) |
| 399: 139(ptr) AccessChain 49(data) 60 60 |
| 400: 43(ivec4) Load 399 |
| 401: 149(ivec3) VectorShuffle 400 400 0 1 2 |
| 402: 257(bvec3) SLessThan 401 256 |
| 403: 257(bvec3) GroupNonUniformBroadcastFirst 38 402 |
| 404: 149(ivec3) Select 403 261 256 |
| 405: 139(ptr) AccessChain 49(data) 398 60 |
| 406: 43(ivec4) Load 405 |
| 407: 43(ivec4) VectorShuffle 406 404 4 5 6 3 |
| Store 405 407 |
| 408: 6(int) Load 8(invocation) |
| 409: 139(ptr) AccessChain 49(data) 60 60 |
| 410: 43(ivec4) Load 409 |
| 411: 83(bvec4) SLessThan 410 269 |
| 412: 83(bvec4) GroupNonUniformBroadcastFirst 38 411 |
| 413: 43(ivec4) Select 412 273 269 |
| 414: 139(ptr) AccessChain 49(data) 408 60 |
| Store 414 413 |
| Branch 94 |
| 94: Label |
| Return |
| FunctionEnd |