1spv.meshShaderTaskMem.mesh 2// Module Version 10000 3// Generated by (magic number): 80007 4// Id's are bound by 58 5 6 Capability MeshShadingNV 7 Extension "SPV_NV_mesh_shader" 8 1: ExtInstImport "GLSL.std.450" 9 MemoryModel Logical GLSL450 10 EntryPoint MeshNV 4 "main" 11 22 30 11 ExecutionMode 4 LocalSize 32 1 1 12 ExecutionMode 4 OutputVertices 81 13 ExecutionMode 4 OutputPrimitivesNV 32 14 ExecutionMode 4 OutputTrianglesNV 15 Source GLSL 450 16 SourceExtension "GL_NV_mesh_shader" 17 Name 4 "main" 18 Name 8 "iid" 19 Name 11 "gl_LocalInvocationID" 20 Name 18 "outBlock" 21 MemberName 18(outBlock) 0 "gid5" 22 MemberName 18(outBlock) 1 "gid6" 23 Name 22 "myblk" 24 Name 28 "taskBlock" 25 MemberName 28(taskBlock) 0 "gid1" 26 MemberName 28(taskBlock) 1 "gid2" 27 Name 30 "mytask" 28 Name 36 "bufferBlock" 29 MemberName 36(bufferBlock) 0 "gid3" 30 MemberName 36(bufferBlock) 1 "gid4" 31 Name 38 "mybuf" 32 Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId 33 Decorate 18(outBlock) Block 34 Decorate 22(myblk) Location 0 35 Decorate 27 ArrayStride 4 36 MemberDecorate 28(taskBlock) 0 PerTaskNV 37 MemberDecorate 28(taskBlock) 0 Offset 0 38 MemberDecorate 28(taskBlock) 1 PerTaskNV 39 MemberDecorate 28(taskBlock) 1 Offset 16 40 Decorate 28(taskBlock) Block 41 Decorate 35 ArrayStride 4 42 MemberDecorate 36(bufferBlock) 0 Offset 0 43 MemberDecorate 36(bufferBlock) 1 Offset 16 44 Decorate 36(bufferBlock) BufferBlock 45 Decorate 38(mybuf) DescriptorSet 0 46 Decorate 38(mybuf) Binding 0 47 Decorate 57 BuiltIn WorkgroupSize 48 2: TypeVoid 49 3: TypeFunction 2 50 6: TypeInt 32 0 51 7: TypePointer Function 6(int) 52 9: TypeVector 6(int) 3 53 10: TypePointer Input 9(ivec3) 5411(gl_LocalInvocationID): 10(ptr) Variable Input 55 12: 6(int) Constant 0 56 13: TypePointer Input 6(int) 57 16: TypeFloat 32 58 17: TypeVector 16(float) 4 59 18(outBlock): TypeStruct 16(float) 17(fvec4) 60 19: 6(int) Constant 81 61 20: TypeArray 18(outBlock) 19 62 21: TypePointer Output 20 63 22(myblk): 21(ptr) Variable Output 64 24: TypeInt 32 1 65 25: 24(int) Constant 0 66 26: 6(int) Constant 2 67 27: TypeArray 16(float) 26 68 28(taskBlock): TypeStruct 27 17(fvec4) 69 29: TypePointer Input 28(taskBlock) 70 30(mytask): 29(ptr) Variable Input 71 31: 24(int) Constant 1 72 32: TypePointer Input 16(float) 73 35: TypeArray 16(float) 26 74 36(bufferBlock): TypeStruct 35 17(fvec4) 75 37: TypePointer Uniform 36(bufferBlock) 76 38(mybuf): 37(ptr) Variable Uniform 77 39: TypePointer Uniform 16(float) 78 43: TypePointer Output 16(float) 79 46: TypePointer Input 17(fvec4) 80 49: TypePointer Uniform 17(fvec4) 81 53: TypePointer Output 17(fvec4) 82 55: 6(int) Constant 32 83 56: 6(int) Constant 1 84 57: 9(ivec3) ConstantComposite 55 56 56 85 4(main): 2 Function None 3 86 5: Label 87 8(iid): 7(ptr) Variable Function 88 14: 13(ptr) AccessChain 11(gl_LocalInvocationID) 12 89 15: 6(int) Load 14 90 Store 8(iid) 15 91 23: 6(int) Load 8(iid) 92 33: 32(ptr) AccessChain 30(mytask) 25 31 93 34: 16(float) Load 33 94 40: 39(ptr) AccessChain 38(mybuf) 25 31 95 41: 16(float) Load 40 96 42: 16(float) FAdd 34 41 97 44: 43(ptr) AccessChain 22(myblk) 23 25 98 Store 44 42 99 45: 6(int) Load 8(iid) 100 47: 46(ptr) AccessChain 30(mytask) 31 101 48: 17(fvec4) Load 47 102 50: 49(ptr) AccessChain 38(mybuf) 31 103 51: 17(fvec4) Load 50 104 52: 17(fvec4) FAdd 48 51 105 54: 53(ptr) AccessChain 22(myblk) 45 31 106 Store 54 52 107 Return 108 FunctionEnd 109