1617a3babSopenharmony_cihlsl.structcopy.comp 2617a3babSopenharmony_ciShader version: 500 3617a3babSopenharmony_cilocal_size = (128, 1, 1) 4617a3babSopenharmony_ci0:? Sequence 5617a3babSopenharmony_ci0:20 Function Definition: @main(u1; ( temp void) 6617a3babSopenharmony_ci0:20 Function Parameters: 7617a3babSopenharmony_ci0:20 'id' ( in uint) 8617a3babSopenharmony_ci0:? Sequence 9617a3babSopenharmony_ci0:21 move second child to first child ( temp structure{ temp uint a, temp uint b, temp uint c}) 10617a3babSopenharmony_ci0:21 direct index ( temp structure{ temp uint a, temp uint b, temp uint c}) 11617a3babSopenharmony_ci0:21 's' ( shared 128-element array of structure{ temp uint a, temp uint b, temp uint c}) 12617a3babSopenharmony_ci0:21 Constant: 13617a3babSopenharmony_ci0:21 0 (const int) 14617a3babSopenharmony_ci0:21 Constant: 15617a3babSopenharmony_ci0:21 1 (const uint) 16617a3babSopenharmony_ci0:21 2 (const uint) 17617a3babSopenharmony_ci0:21 3 (const uint) 18617a3babSopenharmony_ci0:22 Sequence 19617a3babSopenharmony_ci0:22 move second child to first child ( temp uint) 20617a3babSopenharmony_ci0:22 'count' ( temp uint) 21617a3babSopenharmony_ci0:22 count: direct index for structure ( temp uint) 22617a3babSopenharmony_ci0:22 direct index (layout( row_major std430) buffer structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 23617a3babSopenharmony_ci0:22 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 24617a3babSopenharmony_ci0:22 'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data} @data}) 25617a3babSopenharmony_ci0:22 Constant: 26617a3babSopenharmony_ci0:22 0 (const uint) 27617a3babSopenharmony_ci0:22 Constant: 28617a3babSopenharmony_ci0:22 0 (const int) 29617a3babSopenharmony_ci0:22 Constant: 30617a3babSopenharmony_ci0:22 0 (const int) 31617a3babSopenharmony_ci0:23 Sequence 32617a3babSopenharmony_ci0:23 move second child to first child ( temp structure{ temp uint a, temp uint b, temp uint c}) 33617a3babSopenharmony_ci0:23 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 34617a3babSopenharmony_ci0:23 Test condition and select ( temp structure{ temp uint a, temp uint b, temp uint c}): no shortcircuit 35617a3babSopenharmony_ci0:23 Condition 36617a3babSopenharmony_ci0:23 Compare Greater Than ( temp bool) 37617a3babSopenharmony_ci0:23 'id' ( in uint) 38617a3babSopenharmony_ci0:23 'count' ( temp uint) 39617a3babSopenharmony_ci0:23 true case 40617a3babSopenharmony_ci0:23 indirect index ( temp structure{ temp uint a, temp uint b, temp uint c}) 41617a3babSopenharmony_ci0:23 's' ( shared 128-element array of structure{ temp uint a, temp uint b, temp uint c}) 42617a3babSopenharmony_ci0:23 subtract ( temp uint) 43617a3babSopenharmony_ci0:23 'id' ( in uint) 44617a3babSopenharmony_ci0:23 'count' ( temp uint) 45617a3babSopenharmony_ci0:23 false case 46617a3babSopenharmony_ci0:23 indirect index ( temp structure{ temp uint a, temp uint b, temp uint c}) 47617a3babSopenharmony_ci0:23 data: direct index for structure ( temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 48617a3babSopenharmony_ci0:23 direct index (layout( row_major std430) buffer structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 49617a3babSopenharmony_ci0:23 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 50617a3babSopenharmony_ci0:23 'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data} @data}) 51617a3babSopenharmony_ci0:23 Constant: 52617a3babSopenharmony_ci0:23 0 (const uint) 53617a3babSopenharmony_ci0:23 Constant: 54617a3babSopenharmony_ci0:23 0 (const int) 55617a3babSopenharmony_ci0:23 Constant: 56617a3babSopenharmony_ci0:23 1 (const int) 57617a3babSopenharmony_ci0:23 'id' ( in uint) 58617a3babSopenharmony_ci0:25 AtomicAdd ( temp uint) 59617a3babSopenharmony_ci0:25 a: direct index for structure ( temp uint) 60617a3babSopenharmony_ci0:25 direct index (layout( row_major std430) buffer structure{ temp uint a, temp uint b, temp uint c}) 61617a3babSopenharmony_ci0:25 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 62617a3babSopenharmony_ci0:25 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 63617a3babSopenharmony_ci0:25 Constant: 64617a3babSopenharmony_ci0:25 0 (const uint) 65617a3babSopenharmony_ci0:25 Constant: 66617a3babSopenharmony_ci0:25 0 (const int) 67617a3babSopenharmony_ci0:25 Constant: 68617a3babSopenharmony_ci0:25 0 (const int) 69617a3babSopenharmony_ci0:25 a: direct index for structure ( temp uint) 70617a3babSopenharmony_ci0:25 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 71617a3babSopenharmony_ci0:25 Constant: 72617a3babSopenharmony_ci0:25 0 (const int) 73617a3babSopenharmony_ci0:26 AtomicAdd ( temp uint) 74617a3babSopenharmony_ci0:26 b: direct index for structure ( temp uint) 75617a3babSopenharmony_ci0:26 direct index (layout( row_major std430) buffer structure{ temp uint a, temp uint b, temp uint c}) 76617a3babSopenharmony_ci0:26 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 77617a3babSopenharmony_ci0:26 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 78617a3babSopenharmony_ci0:26 Constant: 79617a3babSopenharmony_ci0:26 0 (const uint) 80617a3babSopenharmony_ci0:26 Constant: 81617a3babSopenharmony_ci0:26 0 (const int) 82617a3babSopenharmony_ci0:26 Constant: 83617a3babSopenharmony_ci0:26 1 (const int) 84617a3babSopenharmony_ci0:26 b: direct index for structure ( temp uint) 85617a3babSopenharmony_ci0:26 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 86617a3babSopenharmony_ci0:26 Constant: 87617a3babSopenharmony_ci0:26 1 (const int) 88617a3babSopenharmony_ci0:27 AtomicAdd ( temp uint) 89617a3babSopenharmony_ci0:27 c: direct index for structure ( temp uint) 90617a3babSopenharmony_ci0:27 direct index (layout( row_major std430) buffer structure{ temp uint a, temp uint b, temp uint c}) 91617a3babSopenharmony_ci0:27 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 92617a3babSopenharmony_ci0:27 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 93617a3babSopenharmony_ci0:27 Constant: 94617a3babSopenharmony_ci0:27 0 (const uint) 95617a3babSopenharmony_ci0:27 Constant: 96617a3babSopenharmony_ci0:27 0 (const int) 97617a3babSopenharmony_ci0:27 Constant: 98617a3babSopenharmony_ci0:27 2 (const int) 99617a3babSopenharmony_ci0:27 c: direct index for structure ( temp uint) 100617a3babSopenharmony_ci0:27 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 101617a3babSopenharmony_ci0:27 Constant: 102617a3babSopenharmony_ci0:27 2 (const int) 103617a3babSopenharmony_ci0:20 Function Definition: main( ( temp void) 104617a3babSopenharmony_ci0:20 Function Parameters: 105617a3babSopenharmony_ci0:? Sequence 106617a3babSopenharmony_ci0:20 move second child to first child ( temp uint) 107617a3babSopenharmony_ci0:? 'id' ( temp uint) 108617a3babSopenharmony_ci0:? 'id' ( in uint LocalInvocationIndex) 109617a3babSopenharmony_ci0:20 Function Call: @main(u1; ( temp void) 110617a3babSopenharmony_ci0:? 'id' ( temp uint) 111617a3babSopenharmony_ci0:? Linker Objects 112617a3babSopenharmony_ci0:? 'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data} @data}) 113617a3babSopenharmony_ci0:? 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 114617a3babSopenharmony_ci0:? 's' ( shared 128-element array of structure{ temp uint a, temp uint b, temp uint c}) 115617a3babSopenharmony_ci0:? 'deflt' ( const structure{ temp uint a, temp uint b, temp uint c}) 116617a3babSopenharmony_ci0:? 1 (const uint) 117617a3babSopenharmony_ci0:? 2 (const uint) 118617a3babSopenharmony_ci0:? 3 (const uint) 119617a3babSopenharmony_ci0:? 'id' ( in uint LocalInvocationIndex) 120617a3babSopenharmony_ci 121617a3babSopenharmony_ci 122617a3babSopenharmony_ciLinked compute stage: 123617a3babSopenharmony_ci 124617a3babSopenharmony_ci 125617a3babSopenharmony_ciShader version: 500 126617a3babSopenharmony_cilocal_size = (128, 1, 1) 127617a3babSopenharmony_ci0:? Sequence 128617a3babSopenharmony_ci0:20 Function Definition: @main(u1; ( temp void) 129617a3babSopenharmony_ci0:20 Function Parameters: 130617a3babSopenharmony_ci0:20 'id' ( in uint) 131617a3babSopenharmony_ci0:? Sequence 132617a3babSopenharmony_ci0:21 move second child to first child ( temp structure{ temp uint a, temp uint b, temp uint c}) 133617a3babSopenharmony_ci0:21 direct index ( temp structure{ temp uint a, temp uint b, temp uint c}) 134617a3babSopenharmony_ci0:21 's' ( shared 128-element array of structure{ temp uint a, temp uint b, temp uint c}) 135617a3babSopenharmony_ci0:21 Constant: 136617a3babSopenharmony_ci0:21 0 (const int) 137617a3babSopenharmony_ci0:21 Constant: 138617a3babSopenharmony_ci0:21 1 (const uint) 139617a3babSopenharmony_ci0:21 2 (const uint) 140617a3babSopenharmony_ci0:21 3 (const uint) 141617a3babSopenharmony_ci0:22 Sequence 142617a3babSopenharmony_ci0:22 move second child to first child ( temp uint) 143617a3babSopenharmony_ci0:22 'count' ( temp uint) 144617a3babSopenharmony_ci0:22 count: direct index for structure ( temp uint) 145617a3babSopenharmony_ci0:22 direct index (layout( row_major std430) buffer structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 146617a3babSopenharmony_ci0:22 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 147617a3babSopenharmony_ci0:22 'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data} @data}) 148617a3babSopenharmony_ci0:22 Constant: 149617a3babSopenharmony_ci0:22 0 (const uint) 150617a3babSopenharmony_ci0:22 Constant: 151617a3babSopenharmony_ci0:22 0 (const int) 152617a3babSopenharmony_ci0:22 Constant: 153617a3babSopenharmony_ci0:22 0 (const int) 154617a3babSopenharmony_ci0:23 Sequence 155617a3babSopenharmony_ci0:23 move second child to first child ( temp structure{ temp uint a, temp uint b, temp uint c}) 156617a3babSopenharmony_ci0:23 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 157617a3babSopenharmony_ci0:23 Test condition and select ( temp structure{ temp uint a, temp uint b, temp uint c}): no shortcircuit 158617a3babSopenharmony_ci0:23 Condition 159617a3babSopenharmony_ci0:23 Compare Greater Than ( temp bool) 160617a3babSopenharmony_ci0:23 'id' ( in uint) 161617a3babSopenharmony_ci0:23 'count' ( temp uint) 162617a3babSopenharmony_ci0:23 true case 163617a3babSopenharmony_ci0:23 indirect index ( temp structure{ temp uint a, temp uint b, temp uint c}) 164617a3babSopenharmony_ci0:23 's' ( shared 128-element array of structure{ temp uint a, temp uint b, temp uint c}) 165617a3babSopenharmony_ci0:23 subtract ( temp uint) 166617a3babSopenharmony_ci0:23 'id' ( in uint) 167617a3babSopenharmony_ci0:23 'count' ( temp uint) 168617a3babSopenharmony_ci0:23 false case 169617a3babSopenharmony_ci0:23 indirect index ( temp structure{ temp uint a, temp uint b, temp uint c}) 170617a3babSopenharmony_ci0:23 data: direct index for structure ( temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 171617a3babSopenharmony_ci0:23 direct index (layout( row_major std430) buffer structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 172617a3babSopenharmony_ci0:23 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data}) 173617a3babSopenharmony_ci0:23 'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data} @data}) 174617a3babSopenharmony_ci0:23 Constant: 175617a3babSopenharmony_ci0:23 0 (const uint) 176617a3babSopenharmony_ci0:23 Constant: 177617a3babSopenharmony_ci0:23 0 (const int) 178617a3babSopenharmony_ci0:23 Constant: 179617a3babSopenharmony_ci0:23 1 (const int) 180617a3babSopenharmony_ci0:23 'id' ( in uint) 181617a3babSopenharmony_ci0:25 AtomicAdd ( temp uint) 182617a3babSopenharmony_ci0:25 a: direct index for structure ( temp uint) 183617a3babSopenharmony_ci0:25 direct index (layout( row_major std430) buffer structure{ temp uint a, temp uint b, temp uint c}) 184617a3babSopenharmony_ci0:25 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 185617a3babSopenharmony_ci0:25 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 186617a3babSopenharmony_ci0:25 Constant: 187617a3babSopenharmony_ci0:25 0 (const uint) 188617a3babSopenharmony_ci0:25 Constant: 189617a3babSopenharmony_ci0:25 0 (const int) 190617a3babSopenharmony_ci0:25 Constant: 191617a3babSopenharmony_ci0:25 0 (const int) 192617a3babSopenharmony_ci0:25 a: direct index for structure ( temp uint) 193617a3babSopenharmony_ci0:25 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 194617a3babSopenharmony_ci0:25 Constant: 195617a3babSopenharmony_ci0:25 0 (const int) 196617a3babSopenharmony_ci0:26 AtomicAdd ( temp uint) 197617a3babSopenharmony_ci0:26 b: direct index for structure ( temp uint) 198617a3babSopenharmony_ci0:26 direct index (layout( row_major std430) buffer structure{ temp uint a, temp uint b, temp uint c}) 199617a3babSopenharmony_ci0:26 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 200617a3babSopenharmony_ci0:26 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 201617a3babSopenharmony_ci0:26 Constant: 202617a3babSopenharmony_ci0:26 0 (const uint) 203617a3babSopenharmony_ci0:26 Constant: 204617a3babSopenharmony_ci0:26 0 (const int) 205617a3babSopenharmony_ci0:26 Constant: 206617a3babSopenharmony_ci0:26 1 (const int) 207617a3babSopenharmony_ci0:26 b: direct index for structure ( temp uint) 208617a3babSopenharmony_ci0:26 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 209617a3babSopenharmony_ci0:26 Constant: 210617a3babSopenharmony_ci0:26 1 (const int) 211617a3babSopenharmony_ci0:27 AtomicAdd ( temp uint) 212617a3babSopenharmony_ci0:27 c: direct index for structure ( temp uint) 213617a3babSopenharmony_ci0:27 direct index (layout( row_major std430) buffer structure{ temp uint a, temp uint b, temp uint c}) 214617a3babSopenharmony_ci0:27 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c}) 215617a3babSopenharmony_ci0:27 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 216617a3babSopenharmony_ci0:27 Constant: 217617a3babSopenharmony_ci0:27 0 (const uint) 218617a3babSopenharmony_ci0:27 Constant: 219617a3babSopenharmony_ci0:27 0 (const int) 220617a3babSopenharmony_ci0:27 Constant: 221617a3babSopenharmony_ci0:27 2 (const int) 222617a3babSopenharmony_ci0:27 c: direct index for structure ( temp uint) 223617a3babSopenharmony_ci0:27 'ms' ( temp structure{ temp uint a, temp uint b, temp uint c}) 224617a3babSopenharmony_ci0:27 Constant: 225617a3babSopenharmony_ci0:27 2 (const int) 226617a3babSopenharmony_ci0:20 Function Definition: main( ( temp void) 227617a3babSopenharmony_ci0:20 Function Parameters: 228617a3babSopenharmony_ci0:? Sequence 229617a3babSopenharmony_ci0:20 move second child to first child ( temp uint) 230617a3babSopenharmony_ci0:? 'id' ( temp uint) 231617a3babSopenharmony_ci0:? 'id' ( in uint LocalInvocationIndex) 232617a3babSopenharmony_ci0:20 Function Call: @main(u1; ( temp void) 233617a3babSopenharmony_ci0:? 'id' ( temp uint) 234617a3babSopenharmony_ci0:? Linker Objects 235617a3babSopenharmony_ci0:? 'sb' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint count, temp unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} data} @data}) 236617a3babSopenharmony_ci0:? 'o' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp uint a, temp uint b, temp uint c} @data}) 237617a3babSopenharmony_ci0:? 's' ( shared 128-element array of structure{ temp uint a, temp uint b, temp uint c}) 238617a3babSopenharmony_ci0:? 'deflt' ( const structure{ temp uint a, temp uint b, temp uint c}) 239617a3babSopenharmony_ci0:? 1 (const uint) 240617a3babSopenharmony_ci0:? 2 (const uint) 241617a3babSopenharmony_ci0:? 3 (const uint) 242617a3babSopenharmony_ci0:? 'id' ( in uint LocalInvocationIndex) 243617a3babSopenharmony_ci 244617a3babSopenharmony_ci// Module Version 10000 245617a3babSopenharmony_ci// Generated by (magic number): 8000b 246617a3babSopenharmony_ci// Id's are bound by 88 247617a3babSopenharmony_ci 248617a3babSopenharmony_ci Capability Shader 249617a3babSopenharmony_ci 1: ExtInstImport "GLSL.std.450" 250617a3babSopenharmony_ci MemoryModel Logical GLSL450 251617a3babSopenharmony_ci EntryPoint GLCompute 4 "main" 83 252617a3babSopenharmony_ci ExecutionMode 4 LocalSize 128 1 1 253617a3babSopenharmony_ci Source HLSL 500 254617a3babSopenharmony_ci Name 4 "main" 255617a3babSopenharmony_ci Name 10 "@main(u1;" 256617a3babSopenharmony_ci Name 9 "id" 257617a3babSopenharmony_ci Name 12 "MyStruct" 258617a3babSopenharmony_ci MemberName 12(MyStruct) 0 "a" 259617a3babSopenharmony_ci MemberName 12(MyStruct) 1 "b" 260617a3babSopenharmony_ci MemberName 12(MyStruct) 2 "c" 261617a3babSopenharmony_ci Name 16 "s" 262617a3babSopenharmony_ci Name 25 "count" 263617a3babSopenharmony_ci Name 26 "MyStruct" 264617a3babSopenharmony_ci MemberName 26(MyStruct) 0 "a" 265617a3babSopenharmony_ci MemberName 26(MyStruct) 1 "b" 266617a3babSopenharmony_ci MemberName 26(MyStruct) 2 "c" 267617a3babSopenharmony_ci Name 28 "MyStructs" 268617a3babSopenharmony_ci MemberName 28(MyStructs) 0 "count" 269617a3babSopenharmony_ci MemberName 28(MyStructs) 1 "data" 270617a3babSopenharmony_ci Name 30 "sb" 271617a3babSopenharmony_ci MemberName 30(sb) 0 "@data" 272617a3babSopenharmony_ci Name 32 "sb" 273617a3babSopenharmony_ci Name 37 "ms" 274617a3babSopenharmony_ci Name 65 "o" 275617a3babSopenharmony_ci MemberName 65(o) 0 "@data" 276617a3babSopenharmony_ci Name 67 "o" 277617a3babSopenharmony_ci Name 81 "id" 278617a3babSopenharmony_ci Name 83 "id" 279617a3babSopenharmony_ci Name 85 "param" 280617a3babSopenharmony_ci MemberDecorate 26(MyStruct) 0 Offset 0 281617a3babSopenharmony_ci MemberDecorate 26(MyStruct) 1 Offset 4 282617a3babSopenharmony_ci MemberDecorate 26(MyStruct) 2 Offset 8 283617a3babSopenharmony_ci Decorate 27 ArrayStride 12 284617a3babSopenharmony_ci MemberDecorate 28(MyStructs) 0 Offset 0 285617a3babSopenharmony_ci MemberDecorate 28(MyStructs) 1 Offset 4 286617a3babSopenharmony_ci Decorate 28(MyStructs) BufferBlock 287617a3babSopenharmony_ci Decorate 29 ArrayStride 16 288617a3babSopenharmony_ci MemberDecorate 30(sb) 0 NonWritable 289617a3babSopenharmony_ci MemberDecorate 30(sb) 0 Offset 0 290617a3babSopenharmony_ci Decorate 30(sb) BufferBlock 291617a3babSopenharmony_ci Decorate 32(sb) DescriptorSet 0 292617a3babSopenharmony_ci Decorate 32(sb) Binding 0 293617a3babSopenharmony_ci Decorate 64 ArrayStride 12 294617a3babSopenharmony_ci MemberDecorate 65(o) 0 NonWritable 295617a3babSopenharmony_ci MemberDecorate 65(o) 0 Offset 0 296617a3babSopenharmony_ci Decorate 65(o) BufferBlock 297617a3babSopenharmony_ci Decorate 67(o) DescriptorSet 0 298617a3babSopenharmony_ci Decorate 67(o) Binding 1 299617a3babSopenharmony_ci Decorate 83(id) BuiltIn LocalInvocationIndex 300617a3babSopenharmony_ci 2: TypeVoid 301617a3babSopenharmony_ci 3: TypeFunction 2 302617a3babSopenharmony_ci 6: TypeInt 32 0 303617a3babSopenharmony_ci 7: TypePointer Function 6(int) 304617a3babSopenharmony_ci 8: TypeFunction 2 7(ptr) 305617a3babSopenharmony_ci 12(MyStruct): TypeStruct 6(int) 6(int) 6(int) 306617a3babSopenharmony_ci 13: 6(int) Constant 128 307617a3babSopenharmony_ci 14: TypeArray 12(MyStruct) 13 308617a3babSopenharmony_ci 15: TypePointer Workgroup 14 309617a3babSopenharmony_ci 16(s): 15(ptr) Variable Workgroup 310617a3babSopenharmony_ci 17: TypeInt 32 1 311617a3babSopenharmony_ci 18: 17(int) Constant 0 312617a3babSopenharmony_ci 19: 6(int) Constant 1 313617a3babSopenharmony_ci 20: 6(int) Constant 2 314617a3babSopenharmony_ci 21: 6(int) Constant 3 315617a3babSopenharmony_ci 22:12(MyStruct) ConstantComposite 19 20 21 316617a3babSopenharmony_ci 23: TypePointer Workgroup 12(MyStruct) 317617a3babSopenharmony_ci 26(MyStruct): TypeStruct 6(int) 6(int) 6(int) 318617a3babSopenharmony_ci 27: TypeRuntimeArray 26(MyStruct) 319617a3babSopenharmony_ci 28(MyStructs): TypeStruct 6(int) 27 320617a3babSopenharmony_ci 29: TypeRuntimeArray 28(MyStructs) 321617a3babSopenharmony_ci 30(sb): TypeStruct 29 322617a3babSopenharmony_ci 31: TypePointer Uniform 30(sb) 323617a3babSopenharmony_ci 32(sb): 31(ptr) Variable Uniform 324617a3babSopenharmony_ci 33: TypePointer Uniform 6(int) 325617a3babSopenharmony_ci 36: TypePointer Function 12(MyStruct) 326617a3babSopenharmony_ci 40: TypeBool 327617a3babSopenharmony_ci 47: 17(int) Constant 1 328617a3babSopenharmony_ci 49: TypePointer Uniform 26(MyStruct) 329617a3babSopenharmony_ci 61: 17(int) Constant 2 330617a3babSopenharmony_ci 64: TypeRuntimeArray 26(MyStruct) 331617a3babSopenharmony_ci 65(o): TypeStruct 64 332617a3babSopenharmony_ci 66: TypePointer Uniform 65(o) 333617a3babSopenharmony_ci 67(o): 66(ptr) Variable Uniform 334617a3babSopenharmony_ci 71: 6(int) Constant 0 335617a3babSopenharmony_ci 82: TypePointer Input 6(int) 336617a3babSopenharmony_ci 83(id): 82(ptr) Variable Input 337617a3babSopenharmony_ci 4(main): 2 Function None 3 338617a3babSopenharmony_ci 5: Label 339617a3babSopenharmony_ci 81(id): 7(ptr) Variable Function 340617a3babSopenharmony_ci 85(param): 7(ptr) Variable Function 341617a3babSopenharmony_ci 84: 6(int) Load 83(id) 342617a3babSopenharmony_ci Store 81(id) 84 343617a3babSopenharmony_ci 86: 6(int) Load 81(id) 344617a3babSopenharmony_ci Store 85(param) 86 345617a3babSopenharmony_ci 87: 2 FunctionCall 10(@main(u1;) 85(param) 346617a3babSopenharmony_ci Return 347617a3babSopenharmony_ci FunctionEnd 348617a3babSopenharmony_ci 10(@main(u1;): 2 Function None 8 349617a3babSopenharmony_ci 9(id): 7(ptr) FunctionParameter 350617a3babSopenharmony_ci 11: Label 351617a3babSopenharmony_ci 25(count): 7(ptr) Variable Function 352617a3babSopenharmony_ci 37(ms): 36(ptr) Variable Function 353617a3babSopenharmony_ci 52: 36(ptr) Variable Function 354617a3babSopenharmony_ci 24: 23(ptr) AccessChain 16(s) 18 355617a3babSopenharmony_ci Store 24 22 356617a3babSopenharmony_ci 34: 33(ptr) AccessChain 32(sb) 18 18 18 357617a3babSopenharmony_ci 35: 6(int) Load 34 358617a3babSopenharmony_ci Store 25(count) 35 359617a3babSopenharmony_ci 38: 6(int) Load 9(id) 360617a3babSopenharmony_ci 39: 6(int) Load 25(count) 361617a3babSopenharmony_ci 41: 40(bool) UGreaterThan 38 39 362617a3babSopenharmony_ci 42: 6(int) Load 9(id) 363617a3babSopenharmony_ci 43: 6(int) Load 25(count) 364617a3babSopenharmony_ci 44: 6(int) ISub 42 43 365617a3babSopenharmony_ci 45: 23(ptr) AccessChain 16(s) 44 366617a3babSopenharmony_ci 46:12(MyStruct) Load 45 367617a3babSopenharmony_ci 48: 6(int) Load 9(id) 368617a3babSopenharmony_ci 50: 49(ptr) AccessChain 32(sb) 18 18 47 48 369617a3babSopenharmony_ci 51:26(MyStruct) Load 50 370617a3babSopenharmony_ci SelectionMerge 54 None 371617a3babSopenharmony_ci BranchConditional 41 53 55 372617a3babSopenharmony_ci 53: Label 373617a3babSopenharmony_ci Store 52 46 374617a3babSopenharmony_ci Branch 54 375617a3babSopenharmony_ci 55: Label 376617a3babSopenharmony_ci 56: 6(int) CompositeExtract 51 0 377617a3babSopenharmony_ci 57: 7(ptr) AccessChain 52 18 378617a3babSopenharmony_ci Store 57 56 379617a3babSopenharmony_ci 58: 6(int) CompositeExtract 51 1 380617a3babSopenharmony_ci 59: 7(ptr) AccessChain 52 47 381617a3babSopenharmony_ci Store 59 58 382617a3babSopenharmony_ci 60: 6(int) CompositeExtract 51 2 383617a3babSopenharmony_ci 62: 7(ptr) AccessChain 52 61 384617a3babSopenharmony_ci Store 62 60 385617a3babSopenharmony_ci Branch 54 386617a3babSopenharmony_ci 54: Label 387617a3babSopenharmony_ci 63:12(MyStruct) Load 52 388617a3babSopenharmony_ci Store 37(ms) 63 389617a3babSopenharmony_ci 68: 33(ptr) AccessChain 67(o) 18 18 18 390617a3babSopenharmony_ci 69: 7(ptr) AccessChain 37(ms) 18 391617a3babSopenharmony_ci 70: 6(int) Load 69 392617a3babSopenharmony_ci 72: 6(int) AtomicIAdd 68 19 71 70 393617a3babSopenharmony_ci 73: 33(ptr) AccessChain 67(o) 18 18 47 394617a3babSopenharmony_ci 74: 7(ptr) AccessChain 37(ms) 47 395617a3babSopenharmony_ci 75: 6(int) Load 74 396617a3babSopenharmony_ci 76: 6(int) AtomicIAdd 73 19 71 75 397617a3babSopenharmony_ci 77: 33(ptr) AccessChain 67(o) 18 18 61 398617a3babSopenharmony_ci 78: 7(ptr) AccessChain 37(ms) 61 399617a3babSopenharmony_ci 79: 6(int) Load 78 400617a3babSopenharmony_ci 80: 6(int) AtomicIAdd 77 19 71 79 401617a3babSopenharmony_ci Return 402617a3babSopenharmony_ci FunctionEnd 403