• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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