spv.ext.meshShaderTaskMem.mesh // Module Version 10400 // Generated by (magic number): 8000b // Id's are bound by 58 Capability MeshShadingEXT Extension "SPV_EXT_mesh_shader" 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint MeshEXT 4 "main" 11 22 30 38 ExecutionMode 4 LocalSize 32 1 1 ExecutionMode 4 OutputVertices 81 ExecutionMode 4 OutputPrimitivesNV 32 ExecutionMode 4 OutputTrianglesNV Source GLSL 450 SourceExtension "GL_EXT_mesh_shader" Name 4 "main" Name 8 "iid" Name 11 "gl_LocalInvocationID" Name 18 "outBlock" MemberName 18(outBlock) 0 "gid5" MemberName 18(outBlock) 1 "gid6" Name 22 "myblk" Name 28 "taskBlock" MemberName 28(taskBlock) 0 "gid1" MemberName 28(taskBlock) 1 "gid2" Name 30 "mytask" Name 36 "bufferBlock" MemberName 36(bufferBlock) 0 "gid3" MemberName 36(bufferBlock) 1 "gid4" Name 38 "mybuf" Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId Decorate 18(outBlock) Block Decorate 22(myblk) Location 0 Decorate 35 ArrayStride 4 MemberDecorate 36(bufferBlock) 0 Offset 0 MemberDecorate 36(bufferBlock) 1 Offset 16 Decorate 36(bufferBlock) Block Decorate 38(mybuf) DescriptorSet 0 Decorate 38(mybuf) Binding 0 Decorate 57 BuiltIn WorkgroupSize 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 0 7: TypePointer Function 6(int) 9: TypeVector 6(int) 3 10: TypePointer Input 9(ivec3) 11(gl_LocalInvocationID): 10(ptr) Variable Input 12: 6(int) Constant 0 13: TypePointer Input 6(int) 16: TypeFloat 32 17: TypeVector 16(float) 4 18(outBlock): TypeStruct 16(float) 17(fvec4) 19: 6(int) Constant 81 20: TypeArray 18(outBlock) 19 21: TypePointer Output 20 22(myblk): 21(ptr) Variable Output 24: TypeInt 32 1 25: 24(int) Constant 0 26: 6(int) Constant 2 27: TypeArray 16(float) 26 28(taskBlock): TypeStruct 27 17(fvec4) 29: TypePointer TaskPayloadWorkgroupEXT 28(taskBlock) 30(mytask): 29(ptr) Variable TaskPayloadWorkgroupEXT 31: 24(int) Constant 1 32: TypePointer TaskPayloadWorkgroupEXT 16(float) 35: TypeArray 16(float) 26 36(bufferBlock): TypeStruct 35 17(fvec4) 37: TypePointer StorageBuffer 36(bufferBlock) 38(mybuf): 37(ptr) Variable StorageBuffer 39: TypePointer StorageBuffer 16(float) 43: TypePointer Output 16(float) 46: TypePointer TaskPayloadWorkgroupEXT 17(fvec4) 49: TypePointer StorageBuffer 17(fvec4) 53: TypePointer Output 17(fvec4) 55: 6(int) Constant 32 56: 6(int) Constant 1 57: 9(ivec3) ConstantComposite 55 56 56 4(main): 2 Function None 3 5: Label 8(iid): 7(ptr) Variable Function 14: 13(ptr) AccessChain 11(gl_LocalInvocationID) 12 15: 6(int) Load 14 Store 8(iid) 15 23: 6(int) Load 8(iid) 33: 32(ptr) AccessChain 30(mytask) 25 31 34: 16(float) Load 33 40: 39(ptr) AccessChain 38(mybuf) 25 31 41: 16(float) Load 40 42: 16(float) FAdd 34 41 44: 43(ptr) AccessChain 22(myblk) 23 25 Store 44 42 45: 6(int) Load 8(iid) 47: 46(ptr) AccessChain 30(mytask) 31 48: 17(fvec4) Load 47 50: 49(ptr) AccessChain 38(mybuf) 31 51: 17(fvec4) Load 50 52: 17(fvec4) FAdd 48 51 54: 53(ptr) AccessChain 22(myblk) 45 31 Store 54 52 Return FunctionEnd