| spv.meshShaderTaskMem.mesh |
| // Module Version 10000 |
| // Generated by (magic number): 8000a |
| // Id's are bound by 58 |
| |
| Capability MeshShadingNV |
| Extension "SPV_NV_mesh_shader" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint MeshNV 4 "main" 11 22 30 |
| 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 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 27 ArrayStride 4 |
| MemberDecorate 28(taskBlock) 0 PerTaskNV |
| MemberDecorate 28(taskBlock) 0 Offset 0 |
| MemberDecorate 28(taskBlock) 1 PerTaskNV |
| MemberDecorate 28(taskBlock) 1 Offset 16 |
| Decorate 28(taskBlock) Block |
| Decorate 30(mytask) Location 0 |
| Decorate 35 ArrayStride 4 |
| MemberDecorate 36(bufferBlock) 0 Offset 0 |
| MemberDecorate 36(bufferBlock) 1 Offset 16 |
| Decorate 36(bufferBlock) BufferBlock |
| 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 Input 28(taskBlock) |
| 30(mytask): 29(ptr) Variable Input |
| 31: 24(int) Constant 1 |
| 32: TypePointer Input 16(float) |
| 35: TypeArray 16(float) 26 |
| 36(bufferBlock): TypeStruct 35 17(fvec4) |
| 37: TypePointer Uniform 36(bufferBlock) |
| 38(mybuf): 37(ptr) Variable Uniform |
| 39: TypePointer Uniform 16(float) |
| 43: TypePointer Output 16(float) |
| 46: TypePointer Input 17(fvec4) |
| 49: TypePointer Uniform 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 |