1617a3babSopenharmony_cispv.subgroupVote.comp 2617a3babSopenharmony_ci// Module Version 10300 3617a3babSopenharmony_ci// Generated by (magic number): 8000b 4617a3babSopenharmony_ci// Id's are bound by 216 5617a3babSopenharmony_ci 6617a3babSopenharmony_ci Capability Shader 7617a3babSopenharmony_ci Capability Float64 8617a3babSopenharmony_ci Capability GroupNonUniform 9617a3babSopenharmony_ci Capability GroupNonUniformVote 10617a3babSopenharmony_ci 1: ExtInstImport "GLSL.std.450" 11617a3babSopenharmony_ci MemoryModel Logical GLSL450 12617a3babSopenharmony_ci EntryPoint GLCompute 4 "main" 10 12 13617a3babSopenharmony_ci ExecutionMode 4 LocalSize 8 8 1 14617a3babSopenharmony_ci Source GLSL 450 15617a3babSopenharmony_ci SourceExtension "GL_KHR_shader_subgroup_basic" 16617a3babSopenharmony_ci SourceExtension "GL_KHR_shader_subgroup_vote" 17617a3babSopenharmony_ci Name 4 "main" 18617a3babSopenharmony_ci Name 8 "invocation" 19617a3babSopenharmony_ci Name 10 "gl_SubgroupInvocationID" 20617a3babSopenharmony_ci Name 12 "gl_SubgroupSize" 21617a3babSopenharmony_ci Name 24 "Buffers" 22617a3babSopenharmony_ci MemberName 24(Buffers) 0 "f4" 23617a3babSopenharmony_ci MemberName 24(Buffers) 1 "i4" 24617a3babSopenharmony_ci MemberName 24(Buffers) 2 "u4" 25617a3babSopenharmony_ci MemberName 24(Buffers) 3 "d4" 26617a3babSopenharmony_ci MemberName 24(Buffers) 4 "r" 27617a3babSopenharmony_ci Name 27 "data" 28617a3babSopenharmony_ci Decorate 10(gl_SubgroupInvocationID) RelaxedPrecision 29617a3babSopenharmony_ci Decorate 10(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId 30617a3babSopenharmony_ci Decorate 11 RelaxedPrecision 31617a3babSopenharmony_ci Decorate 12(gl_SubgroupSize) RelaxedPrecision 32617a3babSopenharmony_ci Decorate 12(gl_SubgroupSize) BuiltIn SubgroupSize 33617a3babSopenharmony_ci Decorate 13 RelaxedPrecision 34617a3babSopenharmony_ci Decorate 14 RelaxedPrecision 35617a3babSopenharmony_ci Decorate 16 RelaxedPrecision 36617a3babSopenharmony_ci MemberDecorate 24(Buffers) 0 Offset 0 37617a3babSopenharmony_ci MemberDecorate 24(Buffers) 1 Offset 16 38617a3babSopenharmony_ci MemberDecorate 24(Buffers) 2 Offset 32 39617a3babSopenharmony_ci MemberDecorate 24(Buffers) 3 Offset 64 40617a3babSopenharmony_ci MemberDecorate 24(Buffers) 4 Offset 96 41617a3babSopenharmony_ci Decorate 24(Buffers) Block 42617a3babSopenharmony_ci Decorate 27(data) DescriptorSet 0 43617a3babSopenharmony_ci Decorate 27(data) Binding 0 44617a3babSopenharmony_ci Decorate 215 BuiltIn WorkgroupSize 45617a3babSopenharmony_ci 2: TypeVoid 46617a3babSopenharmony_ci 3: TypeFunction 2 47617a3babSopenharmony_ci 6: TypeInt 32 0 48617a3babSopenharmony_ci 7: TypePointer Function 6(int) 49617a3babSopenharmony_ci 9: TypePointer Input 6(int) 50617a3babSopenharmony_ci10(gl_SubgroupInvocationID): 9(ptr) Variable Input 51617a3babSopenharmony_ci12(gl_SubgroupSize): 9(ptr) Variable Input 52617a3babSopenharmony_ci 15: 6(int) Constant 4 53617a3babSopenharmony_ci 17: TypeFloat 32 54617a3babSopenharmony_ci 18: TypeVector 17(float) 4 55617a3babSopenharmony_ci 19: TypeInt 32 1 56617a3babSopenharmony_ci 20: TypeVector 19(int) 4 57617a3babSopenharmony_ci 21: TypeVector 6(int) 4 58617a3babSopenharmony_ci 22: TypeFloat 64 59617a3babSopenharmony_ci 23: TypeVector 22(float64_t) 4 60617a3babSopenharmony_ci 24(Buffers): TypeStruct 18(fvec4) 20(ivec4) 21(ivec4) 23(f64vec4) 19(int) 61617a3babSopenharmony_ci 25: TypeArray 24(Buffers) 15 62617a3babSopenharmony_ci 26: TypePointer StorageBuffer 25 63617a3babSopenharmony_ci 27(data): 26(ptr) Variable StorageBuffer 64617a3babSopenharmony_ci 29: 19(int) Constant 4 65617a3babSopenharmony_ci 30: TypePointer StorageBuffer 19(int) 66617a3babSopenharmony_ci 33: 19(int) Constant 0 67617a3babSopenharmony_ci 34: TypeBool 68617a3babSopenharmony_ci 36: 6(int) Constant 3 69617a3babSopenharmony_ci 41: 6(int) Constant 0 70617a3babSopenharmony_ci 42: TypePointer StorageBuffer 17(float) 71617a3babSopenharmony_ci 46: 19(int) Constant 1 72617a3babSopenharmony_ci 50: TypeVector 17(float) 2 73617a3babSopenharmony_ci 51: TypePointer StorageBuffer 18(fvec4) 74617a3babSopenharmony_ci 59: 19(int) Constant 2 75617a3babSopenharmony_ci 60: TypeVector 17(float) 3 76617a3babSopenharmony_ci 68: 19(int) Constant 3 77617a3babSopenharmony_ci 81: TypeVector 19(int) 2 78617a3babSopenharmony_ci 82: TypePointer StorageBuffer 20(ivec4) 79617a3babSopenharmony_ci 90: TypeVector 19(int) 3 80617a3babSopenharmony_ci 104: TypePointer StorageBuffer 6(int) 81617a3babSopenharmony_ci 111: TypeVector 6(int) 2 82617a3babSopenharmony_ci 112: TypePointer StorageBuffer 21(ivec4) 83617a3babSopenharmony_ci 120: TypeVector 6(int) 3 84617a3babSopenharmony_ci 142: TypePointer StorageBuffer 22(float64_t) 85617a3babSopenharmony_ci 149: TypeVector 22(float64_t) 2 86617a3babSopenharmony_ci 150: TypePointer StorageBuffer 23(f64vec4) 87617a3babSopenharmony_ci 158: TypeVector 22(float64_t) 3 88617a3babSopenharmony_ci 182: 81(ivec2) ConstantComposite 33 33 89617a3babSopenharmony_ci 183: TypeVector 34(bool) 2 90617a3babSopenharmony_ci 194: 90(ivec3) ConstantComposite 33 33 33 91617a3babSopenharmony_ci 195: TypeVector 34(bool) 3 92617a3babSopenharmony_ci 205: 20(ivec4) ConstantComposite 33 33 33 33 93617a3babSopenharmony_ci 206: TypeVector 34(bool) 4 94617a3babSopenharmony_ci 213: 6(int) Constant 8 95617a3babSopenharmony_ci 214: 6(int) Constant 1 96617a3babSopenharmony_ci 215: 120(ivec3) ConstantComposite 213 213 214 97617a3babSopenharmony_ci 4(main): 2 Function None 3 98617a3babSopenharmony_ci 5: Label 99617a3babSopenharmony_ci 8(invocation): 7(ptr) Variable Function 100617a3babSopenharmony_ci 11: 6(int) Load 10(gl_SubgroupInvocationID) 101617a3babSopenharmony_ci 13: 6(int) Load 12(gl_SubgroupSize) 102617a3babSopenharmony_ci 14: 6(int) IAdd 11 13 103617a3babSopenharmony_ci 16: 6(int) UMod 14 15 104617a3babSopenharmony_ci Store 8(invocation) 16 105617a3babSopenharmony_ci 28: 6(int) Load 8(invocation) 106617a3babSopenharmony_ci 31: 30(ptr) AccessChain 27(data) 28 29 107617a3babSopenharmony_ci 32: 19(int) Load 31 108617a3babSopenharmony_ci 35: 34(bool) SLessThan 32 33 109617a3babSopenharmony_ci 37: 34(bool) GroupNonUniformAll 36 35 110617a3babSopenharmony_ci SelectionMerge 39 None 111617a3babSopenharmony_ci BranchConditional 37 38 133 112617a3babSopenharmony_ci 38: Label 113617a3babSopenharmony_ci 40: 6(int) Load 8(invocation) 114617a3babSopenharmony_ci 43: 42(ptr) AccessChain 27(data) 33 33 41 115617a3babSopenharmony_ci 44: 17(float) Load 43 116617a3babSopenharmony_ci 45: 34(bool) GroupNonUniformAllEqual 36 44 117617a3babSopenharmony_ci 47: 19(int) Select 45 46 33 118617a3babSopenharmony_ci 48: 30(ptr) AccessChain 27(data) 40 29 119617a3babSopenharmony_ci Store 48 47 120617a3babSopenharmony_ci 49: 6(int) Load 8(invocation) 121617a3babSopenharmony_ci 52: 51(ptr) AccessChain 27(data) 46 33 122617a3babSopenharmony_ci 53: 18(fvec4) Load 52 123617a3babSopenharmony_ci 54: 50(fvec2) VectorShuffle 53 53 0 1 124617a3babSopenharmony_ci 55: 34(bool) GroupNonUniformAllEqual 36 54 125617a3babSopenharmony_ci 56: 19(int) Select 55 46 33 126617a3babSopenharmony_ci 57: 30(ptr) AccessChain 27(data) 49 29 127617a3babSopenharmony_ci Store 57 56 128617a3babSopenharmony_ci 58: 6(int) Load 8(invocation) 129617a3babSopenharmony_ci 61: 51(ptr) AccessChain 27(data) 59 33 130617a3babSopenharmony_ci 62: 18(fvec4) Load 61 131617a3babSopenharmony_ci 63: 60(fvec3) VectorShuffle 62 62 0 1 2 132617a3babSopenharmony_ci 64: 34(bool) GroupNonUniformAllEqual 36 63 133617a3babSopenharmony_ci 65: 19(int) Select 64 46 33 134617a3babSopenharmony_ci 66: 30(ptr) AccessChain 27(data) 58 29 135617a3babSopenharmony_ci Store 66 65 136617a3babSopenharmony_ci 67: 6(int) Load 8(invocation) 137617a3babSopenharmony_ci 69: 51(ptr) AccessChain 27(data) 68 33 138617a3babSopenharmony_ci 70: 18(fvec4) Load 69 139617a3babSopenharmony_ci 71: 34(bool) GroupNonUniformAllEqual 36 70 140617a3babSopenharmony_ci 72: 19(int) Select 71 46 33 141617a3babSopenharmony_ci 73: 30(ptr) AccessChain 27(data) 67 29 142617a3babSopenharmony_ci Store 73 72 143617a3babSopenharmony_ci 74: 6(int) Load 8(invocation) 144617a3babSopenharmony_ci 75: 30(ptr) AccessChain 27(data) 33 46 41 145617a3babSopenharmony_ci 76: 19(int) Load 75 146617a3babSopenharmony_ci 77: 34(bool) GroupNonUniformAllEqual 36 76 147617a3babSopenharmony_ci 78: 19(int) Select 77 46 33 148617a3babSopenharmony_ci 79: 30(ptr) AccessChain 27(data) 74 29 149617a3babSopenharmony_ci Store 79 78 150617a3babSopenharmony_ci 80: 6(int) Load 8(invocation) 151617a3babSopenharmony_ci 83: 82(ptr) AccessChain 27(data) 46 46 152617a3babSopenharmony_ci 84: 20(ivec4) Load 83 153617a3babSopenharmony_ci 85: 81(ivec2) VectorShuffle 84 84 0 1 154617a3babSopenharmony_ci 86: 34(bool) GroupNonUniformAllEqual 36 85 155617a3babSopenharmony_ci 87: 19(int) Select 86 46 33 156617a3babSopenharmony_ci 88: 30(ptr) AccessChain 27(data) 80 29 157617a3babSopenharmony_ci Store 88 87 158617a3babSopenharmony_ci 89: 6(int) Load 8(invocation) 159617a3babSopenharmony_ci 91: 82(ptr) AccessChain 27(data) 59 46 160617a3babSopenharmony_ci 92: 20(ivec4) Load 91 161617a3babSopenharmony_ci 93: 90(ivec3) VectorShuffle 92 92 0 1 2 162617a3babSopenharmony_ci 94: 34(bool) GroupNonUniformAllEqual 36 93 163617a3babSopenharmony_ci 95: 19(int) Select 94 46 33 164617a3babSopenharmony_ci 96: 30(ptr) AccessChain 27(data) 89 29 165617a3babSopenharmony_ci Store 96 95 166617a3babSopenharmony_ci 97: 6(int) Load 8(invocation) 167617a3babSopenharmony_ci 98: 82(ptr) AccessChain 27(data) 68 46 168617a3babSopenharmony_ci 99: 20(ivec4) Load 98 169617a3babSopenharmony_ci 100: 34(bool) GroupNonUniformAllEqual 36 99 170617a3babSopenharmony_ci 101: 19(int) Select 100 46 33 171617a3babSopenharmony_ci 102: 30(ptr) AccessChain 27(data) 97 29 172617a3babSopenharmony_ci Store 102 101 173617a3babSopenharmony_ci 103: 6(int) Load 8(invocation) 174617a3babSopenharmony_ci 105: 104(ptr) AccessChain 27(data) 33 59 41 175617a3babSopenharmony_ci 106: 6(int) Load 105 176617a3babSopenharmony_ci 107: 34(bool) GroupNonUniformAllEqual 36 106 177617a3babSopenharmony_ci 108: 19(int) Select 107 46 33 178617a3babSopenharmony_ci 109: 30(ptr) AccessChain 27(data) 103 29 179617a3babSopenharmony_ci Store 109 108 180617a3babSopenharmony_ci 110: 6(int) Load 8(invocation) 181617a3babSopenharmony_ci 113: 112(ptr) AccessChain 27(data) 46 59 182617a3babSopenharmony_ci 114: 21(ivec4) Load 113 183617a3babSopenharmony_ci 115: 111(ivec2) VectorShuffle 114 114 0 1 184617a3babSopenharmony_ci 116: 34(bool) GroupNonUniformAllEqual 36 115 185617a3babSopenharmony_ci 117: 19(int) Select 116 46 33 186617a3babSopenharmony_ci 118: 30(ptr) AccessChain 27(data) 110 29 187617a3babSopenharmony_ci Store 118 117 188617a3babSopenharmony_ci 119: 6(int) Load 8(invocation) 189617a3babSopenharmony_ci 121: 112(ptr) AccessChain 27(data) 59 59 190617a3babSopenharmony_ci 122: 21(ivec4) Load 121 191617a3babSopenharmony_ci 123: 120(ivec3) VectorShuffle 122 122 0 1 2 192617a3babSopenharmony_ci 124: 34(bool) GroupNonUniformAllEqual 36 123 193617a3babSopenharmony_ci 125: 19(int) Select 124 46 33 194617a3babSopenharmony_ci 126: 30(ptr) AccessChain 27(data) 119 29 195617a3babSopenharmony_ci Store 126 125 196617a3babSopenharmony_ci 127: 6(int) Load 8(invocation) 197617a3babSopenharmony_ci 128: 112(ptr) AccessChain 27(data) 68 59 198617a3babSopenharmony_ci 129: 21(ivec4) Load 128 199617a3babSopenharmony_ci 130: 34(bool) GroupNonUniformAllEqual 36 129 200617a3babSopenharmony_ci 131: 19(int) Select 130 46 33 201617a3babSopenharmony_ci 132: 30(ptr) AccessChain 27(data) 127 29 202617a3babSopenharmony_ci Store 132 131 203617a3babSopenharmony_ci Branch 39 204617a3babSopenharmony_ci 133: Label 205617a3babSopenharmony_ci 134: 6(int) Load 8(invocation) 206617a3babSopenharmony_ci 135: 30(ptr) AccessChain 27(data) 134 29 207617a3babSopenharmony_ci 136: 19(int) Load 135 208617a3babSopenharmony_ci 137: 34(bool) SLessThan 136 33 209617a3babSopenharmony_ci 138: 34(bool) GroupNonUniformAny 36 137 210617a3babSopenharmony_ci SelectionMerge 140 None 211617a3babSopenharmony_ci BranchConditional 138 139 140 212617a3babSopenharmony_ci 139: Label 213617a3babSopenharmony_ci 141: 6(int) Load 8(invocation) 214617a3babSopenharmony_ci 143: 142(ptr) AccessChain 27(data) 33 68 41 215617a3babSopenharmony_ci 144:22(float64_t) Load 143 216617a3babSopenharmony_ci 145: 34(bool) GroupNonUniformAllEqual 36 144 217617a3babSopenharmony_ci 146: 19(int) Select 145 46 33 218617a3babSopenharmony_ci 147: 30(ptr) AccessChain 27(data) 141 29 219617a3babSopenharmony_ci Store 147 146 220617a3babSopenharmony_ci 148: 6(int) Load 8(invocation) 221617a3babSopenharmony_ci 151: 150(ptr) AccessChain 27(data) 46 68 222617a3babSopenharmony_ci 152: 23(f64vec4) Load 151 223617a3babSopenharmony_ci 153:149(f64vec2) VectorShuffle 152 152 0 1 224617a3babSopenharmony_ci 154: 34(bool) GroupNonUniformAllEqual 36 153 225617a3babSopenharmony_ci 155: 19(int) Select 154 46 33 226617a3babSopenharmony_ci 156: 30(ptr) AccessChain 27(data) 148 29 227617a3babSopenharmony_ci Store 156 155 228617a3babSopenharmony_ci 157: 6(int) Load 8(invocation) 229617a3babSopenharmony_ci 159: 150(ptr) AccessChain 27(data) 59 68 230617a3babSopenharmony_ci 160: 23(f64vec4) Load 159 231617a3babSopenharmony_ci 161:158(f64vec3) VectorShuffle 160 160 0 1 2 232617a3babSopenharmony_ci 162: 34(bool) GroupNonUniformAllEqual 36 161 233617a3babSopenharmony_ci 163: 19(int) Select 162 46 33 234617a3babSopenharmony_ci 164: 30(ptr) AccessChain 27(data) 157 29 235617a3babSopenharmony_ci Store 164 163 236617a3babSopenharmony_ci 165: 6(int) Load 8(invocation) 237617a3babSopenharmony_ci 166: 150(ptr) AccessChain 27(data) 68 68 238617a3babSopenharmony_ci 167: 23(f64vec4) Load 166 239617a3babSopenharmony_ci 168: 34(bool) GroupNonUniformAllEqual 36 167 240617a3babSopenharmony_ci 169: 19(int) Select 168 46 33 241617a3babSopenharmony_ci 170: 30(ptr) AccessChain 27(data) 165 29 242617a3babSopenharmony_ci Store 170 169 243617a3babSopenharmony_ci 171: 6(int) Load 8(invocation) 244617a3babSopenharmony_ci 172: 30(ptr) AccessChain 27(data) 33 46 41 245617a3babSopenharmony_ci 173: 19(int) Load 172 246617a3babSopenharmony_ci 174: 34(bool) SLessThan 173 33 247617a3babSopenharmony_ci 175: 34(bool) GroupNonUniformAllEqual 36 174 248617a3babSopenharmony_ci 176: 19(int) Select 175 46 33 249617a3babSopenharmony_ci 177: 30(ptr) AccessChain 27(data) 171 29 250617a3babSopenharmony_ci Store 177 176 251617a3babSopenharmony_ci 178: 6(int) Load 8(invocation) 252617a3babSopenharmony_ci 179: 82(ptr) AccessChain 27(data) 46 46 253617a3babSopenharmony_ci 180: 20(ivec4) Load 179 254617a3babSopenharmony_ci 181: 81(ivec2) VectorShuffle 180 180 0 1 255617a3babSopenharmony_ci 184: 183(bvec2) SLessThan 181 182 256617a3babSopenharmony_ci 185: 34(bool) GroupNonUniformAllEqual 36 184 257617a3babSopenharmony_ci 186: 19(int) Select 185 46 33 258617a3babSopenharmony_ci 187: 81(ivec2) CompositeConstruct 186 186 259617a3babSopenharmony_ci 188: 19(int) CompositeExtract 187 0 260617a3babSopenharmony_ci 189: 30(ptr) AccessChain 27(data) 178 29 261617a3babSopenharmony_ci Store 189 188 262617a3babSopenharmony_ci 190: 6(int) Load 8(invocation) 263617a3babSopenharmony_ci 191: 82(ptr) AccessChain 27(data) 46 46 264617a3babSopenharmony_ci 192: 20(ivec4) Load 191 265617a3babSopenharmony_ci 193: 90(ivec3) VectorShuffle 192 192 0 1 2 266617a3babSopenharmony_ci 196: 195(bvec3) SLessThan 193 194 267617a3babSopenharmony_ci 197: 34(bool) GroupNonUniformAllEqual 36 196 268617a3babSopenharmony_ci 198: 19(int) Select 197 46 33 269617a3babSopenharmony_ci 199: 90(ivec3) CompositeConstruct 198 198 198 270617a3babSopenharmony_ci 200: 19(int) CompositeExtract 199 0 271617a3babSopenharmony_ci 201: 30(ptr) AccessChain 27(data) 190 29 272617a3babSopenharmony_ci Store 201 200 273617a3babSopenharmony_ci 202: 6(int) Load 8(invocation) 274617a3babSopenharmony_ci 203: 82(ptr) AccessChain 27(data) 46 46 275617a3babSopenharmony_ci 204: 20(ivec4) Load 203 276617a3babSopenharmony_ci 207: 206(bvec4) SLessThan 204 205 277617a3babSopenharmony_ci 208: 34(bool) GroupNonUniformAllEqual 36 207 278617a3babSopenharmony_ci 209: 19(int) Select 208 46 33 279617a3babSopenharmony_ci 210: 20(ivec4) CompositeConstruct 209 209 209 209 280617a3babSopenharmony_ci 211: 19(int) CompositeExtract 210 0 281617a3babSopenharmony_ci 212: 30(ptr) AccessChain 27(data) 202 29 282617a3babSopenharmony_ci Store 212 211 283617a3babSopenharmony_ci Branch 140 284617a3babSopenharmony_ci 140: Label 285617a3babSopenharmony_ci Branch 39 286617a3babSopenharmony_ci 39: Label 287617a3babSopenharmony_ci Return 288617a3babSopenharmony_ci FunctionEnd 289