2 // Module Version 10400
3 // Generated by (magic number): 8000b
4 // Id's are bound by 34
6 Capability MeshShadingEXT
7 Extension "SPV_EXT_mesh_shader"
8 1: ExtInstImport "GLSL.std.450"
9 MemoryModel Logical GLSL450
10 EntryPoint TaskEXT 4 "main" 9 23 28
11 ExecutionMode 4 LocalSize 1 1 1
13 SourceExtension "GL_EXT_mesh_shader"
16 MemberName 7(Buffer) 0 "x"
19 MemberName 20(structType) 0 "y"
21 MemberName 21(t2) 0 "f"
24 MemberName 26(taskBlock) 0 "atom1"
26 MemberDecorate 7(Buffer) 0 Coherent
27 MemberDecorate 7(Buffer) 0 Offset 0
28 Decorate 7(Buffer) Block
29 Decorate 9 DescriptorSet 0
31 Decorate 19 ArrayStride 4
32 MemberDecorate 20(structType) 0 Offset 0
33 MemberDecorate 21(t2) 0 Offset 0
35 Decorate 23(t) DescriptorSet 0
36 Decorate 23(t) Binding 0
37 Decorate 33 BuiltIn WorkgroupSize
41 7(Buffer): TypeStruct 6(int)
42 8: TypePointer StorageBuffer 7(Buffer)
43 9: 8(ptr) Variable StorageBuffer
45 11: TypePointer StorageBuffer 6(int)
48 15: 14(int) Constant 1
49 16: 14(int) Constant 0
50 18: 14(int) Constant 3
51 19: TypeArray 6(int) 18
52 20(structType): TypeStruct 19
53 21(t2): TypeStruct 20(structType)
54 22: TypePointer StorageBuffer 21(t2)
55 23(t): 22(ptr) Variable StorageBuffer
56 26(taskBlock): TypeStruct 6(int)
57 27: TypePointer TaskPayloadWorkgroupEXT 26(taskBlock)
58 28(mytask): 27(ptr) Variable TaskPayloadWorkgroupEXT
59 29: TypePointer TaskPayloadWorkgroupEXT 6(int)
60 32: TypeVector 14(int) 3
61 33: 32(ivec3) ConstantComposite 15 15 15
62 4(main): 2 Function None 3
64 12: 11(ptr) AccessChain 9 10
65 17: 6(int) AtomicIAdd 12 15 16 13
66 24: 11(ptr) AccessChain 23(t) 10 10 13
67 25: 6(int) AtomicIAdd 24 15 16 13
68 30: 29(ptr) AccessChain 28(mytask) 10
69 31: 6(int) AtomicIAdd 30 15 16 13