1spv.meshShaderUserDefined.mesh
2// Module Version 10000
3// Generated by (magic number): 80007
4// Id's are bound by 138
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 17 34 101
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 16  "gid"
21                              Name 17  "gl_WorkGroupID"
22                              Name 30  "myblock"
23                              MemberName 30(myblock) 0  "f"
24                              MemberName 30(myblock) 1  "fArr"
25                              MemberName 30(myblock) 2  "pos"
26                              MemberName 30(myblock) 3  "posArr"
27                              MemberName 30(myblock) 4  "m"
28                              MemberName 30(myblock) 5  "mArr"
29                              Name 34  "blk"
30                              Name 97  "myblock2"
31                              MemberName 97(myblock2) 0  "f"
32                              MemberName 97(myblock2) 1  "pos"
33                              MemberName 97(myblock2) 2  "m"
34                              Name 101  "blk2"
35                              Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId
36                              Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId
37                              MemberDecorate 30(myblock) 0 PerPrimitiveNV
38                              MemberDecorate 30(myblock) 1 PerPrimitiveNV
39                              MemberDecorate 30(myblock) 2 PerPrimitiveNV
40                              MemberDecorate 30(myblock) 3 PerPrimitiveNV
41                              MemberDecorate 30(myblock) 4 PerPrimitiveNV
42                              MemberDecorate 30(myblock) 5 PerPrimitiveNV
43                              Decorate 30(myblock) Block
44                              Decorate 34(blk) Location 0
45                              Decorate 97(myblock2) Block
46                              Decorate 101(blk2) Location 20
47                              Decorate 137 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)
5717(gl_WorkGroupID):     10(ptr) Variable Input
58              20:             TypeFloat 32
59              21:      6(int) Constant 4
60              22:             TypeArray 20(float) 21
61              23:             TypeVector 20(float) 3
62              24:             TypeVector 20(float) 4
63              25:             TypeArray 24(fvec4) 21
64              26:             TypeMatrix 24(fvec4) 4
65              27:             TypeMatrix 23(fvec3) 3
66              28:      6(int) Constant 2
67              29:             TypeArray 27 28
68     30(myblock):             TypeStruct 20(float) 22 23(fvec3) 25 26 29
69              31:      6(int) Constant 32
70              32:             TypeArray 30(myblock) 31
71              33:             TypePointer Output 32
72         34(blk):     33(ptr) Variable Output
73              36:             TypeInt 32 1
74              37:     36(int) Constant 0
75              38:   20(float) Constant 1093664768
76              39:             TypePointer Output 20(float)
77              42:      6(int) Constant 1
78              44:     36(int) Constant 1
79              52:     36(int) Constant 2
80              53:   20(float) Constant 1096810496
81              54:   20(float) Constant 1097859072
82              55:   20(float) Constant 1095761920
83              56:   23(fvec3) ConstantComposite 53 54 55
84              57:             TypePointer Output 23(fvec3)
85              63:     36(int) Constant 3
86              68:             TypePointer Output 24(fvec4)
87              74:     36(int) Constant 4
88              75:   20(float) Constant 1098907648
89              76:   24(fvec4) ConstantComposite 55 53 54 75
90              81:     36(int) Constant 5
91              84:      6(int) Constant 3
92              91:   20(float) Constant 1099431936
93              92:   20(float) Constant 1099956224
94              93:   20(float) Constant 1100480512
95              94:   23(fvec3) ConstantComposite 91 92 93
96              96:      6(int) Constant 264
97    97(myblock2):             TypeStruct 20(float) 24(fvec4) 26
98              98:      6(int) Constant 81
99              99:             TypeArray 97(myblock2) 98
100             100:             TypePointer Output 99
101       101(blk2):    100(ptr) Variable Output
102             107:   20(float) Constant 1101004800
103             111:   20(float) Constant 1101529088
104             112:   20(float) Constant 1102053376
105             113:   20(float) Constant 1102577664
106             114:   20(float) Constant 1103101952
107             115:   24(fvec4) ConstantComposite 111 112 113 114
108             127:   20(float) Constant 1105723392
109             137:    9(ivec3) ConstantComposite 31 42 42
110         4(main):           2 Function None 3
111               5:             Label
112          8(iid):      7(ptr) Variable Function
113         16(gid):      7(ptr) Variable Function
114              14:     13(ptr) AccessChain 11(gl_LocalInvocationID) 12
115              15:      6(int) Load 14
116                              Store 8(iid) 15
117              18:     13(ptr) AccessChain 17(gl_WorkGroupID) 12
118              19:      6(int) Load 18
119                              Store 16(gid) 19
120              35:      6(int) Load 8(iid)
121              40:     39(ptr) AccessChain 34(blk) 35 37
122                              Store 40 38
123              41:      6(int) Load 8(iid)
124              43:      6(int) IAdd 41 42
125              45:      6(int) Load 16(gid)
126              46:      6(int) Load 8(iid)
127              47:     39(ptr) AccessChain 34(blk) 46 37
128              48:   20(float) Load 47
129              49:     39(ptr) AccessChain 34(blk) 43 44 45
130                              Store 49 48
131              50:      6(int) Load 8(iid)
132              51:      6(int) UDiv 50 28
133              58:     57(ptr) AccessChain 34(blk) 51 52
134              59:   23(fvec3) Load 58
135              60:   23(fvec3) VectorShuffle 59 56 5 3 4
136                              Store 58 60
137              61:      6(int) Load 8(iid)
138              62:      6(int) IMul 61 28
139              64:      6(int) Load 8(iid)
140              65:      6(int) UDiv 64 28
141              66:     57(ptr) AccessChain 34(blk) 65 52
142              67:   23(fvec3) Load 66
143              69:     68(ptr) AccessChain 34(blk) 62 63 44
144              70:   24(fvec4) Load 69
145              71:   24(fvec4) VectorShuffle 70 67 0 4 5 6
146                              Store 69 71
147              72:      6(int) Load 8(iid)
148              73:      6(int) UDiv 72 21
149              77:     68(ptr) AccessChain 34(blk) 73 74 52
150              78:   24(fvec4) Load 77
151              79:   24(fvec4) VectorShuffle 78 76 7 6 5 4
152                              Store 77 79
153              80:      6(int) Load 8(iid)
154              82:      6(int) Load 8(iid)
155              83:      6(int) UDiv 82 21
156              85:     39(ptr) AccessChain 34(blk) 83 74 52 84
157              86:   20(float) Load 85
158              87:     39(ptr) AccessChain 34(blk) 80 81 37 44 42
159                              Store 87 86
160              88:      6(int) Load 8(iid)
161              89:      6(int) IMul 88 21
162              90:      6(int) Load 16(gid)
163              95:     57(ptr) AccessChain 34(blk) 89 81 44 90
164                              Store 95 94
165                              MemoryBarrier 42 96
166                              ControlBarrier 28 28 96
167             102:      6(int) Load 8(iid)
168             103:      6(int) Load 8(iid)
169             104:      6(int) ISub 103 42
170             105:     39(ptr) AccessChain 101(blk2) 104 37
171             106:   20(float) Load 105
172             108:   20(float) FAdd 106 107
173             109:     39(ptr) AccessChain 101(blk2) 102 37
174                              Store 109 108
175             110:      6(int) Load 8(iid)
176             116:     68(ptr) AccessChain 101(blk2) 110 44
177                              Store 116 115
178             117:      6(int) Load 8(iid)
179             118:      6(int) IAdd 117 42
180             119:      6(int) Load 16(gid)
181             120:      6(int) Load 8(iid)
182             121:     68(ptr) AccessChain 101(blk2) 120 44
183             122:   24(fvec4) Load 121
184             123:     68(ptr) AccessChain 101(blk2) 118 52 119
185                              Store 123 122
186             124:      6(int) Load 8(iid)
187             125:      6(int) IAdd 124 42
188             126:      6(int) Load 16(gid)
189             128:     39(ptr) AccessChain 101(blk2) 125 52 126 28
190                              Store 128 127
191             129:      6(int) Load 8(iid)
192             130:      6(int) IAdd 129 28
193             131:      6(int) Load 8(iid)
194             132:      6(int) IAdd 131 42
195             133:      6(int) Load 16(gid)
196             134:     68(ptr) AccessChain 101(blk2) 132 52 133
197             135:   24(fvec4) Load 134
198             136:     68(ptr) AccessChain 101(blk2) 130 52 63
199                              Store 136 135
200                              MemoryBarrier 42 96
201                              ControlBarrier 28 28 96
202                              Return
203                              FunctionEnd
204