spv.meshShaderSharedMem.mesh // Module Version 10000 // Generated by (magic number): 8000b // Id's are bound by 77 Capability StorageImageWriteWithoutFormat Capability MeshShadingNV Extension "SPV_NV_mesh_shader" 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint MeshNV 4 "main" 11 17 ExecutionMode 4 LocalSize 32 1 1 ExecutionMode 4 OutputVertices 81 ExecutionMode 4 OutputPrimitivesNV 32 ExecutionMode 4 OutputTrianglesNV Source GLSL 450 SourceExtension "GL_NV_mesh_shader" Name 4 "main" Name 8 "iid" Name 11 "gl_LocalInvocationID" Name 16 "gid" Name 17 "gl_WorkGroupID" Name 20 "i" Name 34 "mem" Name 37 "block0" MemberName 37(block0) 0 "uni_value" Name 39 "" Name 55 "uni_image" Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId MemberDecorate 37(block0) 0 Offset 0 Decorate 37(block0) Block Decorate 39 DescriptorSet 0 Decorate 39 Binding 1 Decorate 55(uni_image) DescriptorSet 0 Decorate 55(uni_image) Binding 0 Decorate 55(uni_image) NonReadable Decorate 76 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) 17(gl_WorkGroupID): 10(ptr) Variable Input 27: 6(int) Constant 10 28: TypeBool 30: TypeFloat 32 31: TypeVector 30(float) 4 32: TypeArray 31(fvec4) 27 33: TypePointer Workgroup 32 34(mem): 33(ptr) Variable Workgroup 37(block0): TypeStruct 6(int) 38: TypePointer Uniform 37(block0) 39: 38(ptr) Variable Uniform 40: TypeInt 32 1 41: 40(int) Constant 0 42: TypePointer Uniform 6(int) 48: TypePointer Workgroup 31(fvec4) 51: 40(int) Constant 1 53: TypeImage 30(float) 2D nonsampled format:Unknown 54: TypePointer UniformConstant 53 55(uni_image): 54(ptr) Variable UniformConstant 59: TypeVector 40(int) 2 69: 6(int) Constant 1 73: 6(int) Constant 264 74: 6(int) Constant 2 75: 6(int) Constant 32 76: 9(ivec3) ConstantComposite 75 69 69 4(main): 2 Function None 3 5: Label 8(iid): 7(ptr) Variable Function 16(gid): 7(ptr) Variable Function 20(i): 7(ptr) Variable Function 14: 13(ptr) AccessChain 11(gl_LocalInvocationID) 12 15: 6(int) Load 14 Store 8(iid) 15 18: 13(ptr) AccessChain 17(gl_WorkGroupID) 12 19: 6(int) Load 18 Store 16(gid) 19 Store 20(i) 12 Branch 21 21: Label LoopMerge 23 24 None Branch 25 25: Label 26: 6(int) Load 20(i) 29: 28(bool) ULessThan 26 27 BranchConditional 29 22 23 22: Label 35: 6(int) Load 20(i) 36: 6(int) Load 20(i) 43: 42(ptr) AccessChain 39 41 44: 6(int) Load 43 45: 6(int) IAdd 36 44 46: 30(float) ConvertUToF 45 47: 31(fvec4) CompositeConstruct 46 46 46 46 49: 48(ptr) AccessChain 34(mem) 35 Store 49 47 Branch 24 24: Label 50: 6(int) Load 20(i) 52: 6(int) IAdd 50 51 Store 20(i) 52 Branch 21 23: Label 56: 53 Load 55(uni_image) 57: 6(int) Load 8(iid) 58: 40(int) Bitcast 57 60: 59(ivec2) CompositeConstruct 58 58 61: 6(int) Load 16(gid) 62: 48(ptr) AccessChain 34(mem) 61 63: 31(fvec4) Load 62 ImageWrite 56 60 63 64: 53 Load 55(uni_image) 65: 6(int) Load 8(iid) 66: 40(int) Bitcast 65 67: 59(ivec2) CompositeConstruct 66 66 68: 6(int) Load 16(gid) 70: 6(int) IAdd 68 69 71: 48(ptr) AccessChain 34(mem) 70 72: 31(fvec4) Load 71 ImageWrite 64 67 72 MemoryBarrier 69 73 ControlBarrier 74 74 73 Return FunctionEnd