• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1spv.meshShaderBuiltins.mesh
2// Module Version 10000
3// Generated by (magic number): 8000a
4// Id's are bound by 148
5
6                              Capability ClipDistance
7                              Capability CullDistance
8                              Capability DrawParameters
9                              Capability ShaderViewportMaskNV
10                              Capability MeshShadingNV
11                              Extension  "SPV_KHR_shader_draw_parameters"
12                              Extension  "SPV_NV_mesh_shader"
13                              Extension  "SPV_NV_viewport_array2"
14               1:             ExtInstImport  "GLSL.std.450"
15                              MemoryModel Logical GLSL450
16                              EntryPoint MeshNV 4  "main" 11 17 34 88 129 142 146
17                              ExecutionMode 4 LocalSize 32 1 1
18                              ExecutionMode 4 OutputVertices 81
19                              ExecutionMode 4 OutputPrimitivesNV 32
20                              ExecutionMode 4 OutputTrianglesNV
21                              Source GLSL 460
22                              SourceExtension  "GL_NV_mesh_shader"
23                              Name 4  "main"
24                              Name 8  "iid"
25                              Name 11  "gl_LocalInvocationID"
26                              Name 16  "gid"
27                              Name 17  "gl_WorkGroupID"
28                              Name 30  "gl_MeshPerVertexNV"
29                              MemberName 30(gl_MeshPerVertexNV) 0  "gl_Position"
30                              MemberName 30(gl_MeshPerVertexNV) 1  "gl_PointSize"
31                              MemberName 30(gl_MeshPerVertexNV) 2  "gl_ClipDistance"
32                              MemberName 30(gl_MeshPerVertexNV) 3  "gl_CullDistance"
33                              MemberName 30(gl_MeshPerVertexNV) 4  "gl_PositionPerViewNV"
34                              MemberName 30(gl_MeshPerVertexNV) 5  "gl_ClipDistancePerViewNV"
35                              MemberName 30(gl_MeshPerVertexNV) 6  "gl_CullDistancePerViewNV"
36                              Name 34  "gl_MeshVerticesNV"
37                              Name 84  "gl_MeshPerPrimitiveNV"
38                              MemberName 84(gl_MeshPerPrimitiveNV) 0  "gl_PrimitiveID"
39                              MemberName 84(gl_MeshPerPrimitiveNV) 1  "gl_Layer"
40                              MemberName 84(gl_MeshPerPrimitiveNV) 2  "gl_ViewportIndex"
41                              MemberName 84(gl_MeshPerPrimitiveNV) 3  "gl_ViewportMask"
42                              MemberName 84(gl_MeshPerPrimitiveNV) 4  "gl_LayerPerViewNV"
43                              MemberName 84(gl_MeshPerPrimitiveNV) 5  "gl_ViewportMaskPerViewNV"
44                              Name 88  "gl_MeshPrimitivesNV"
45                              Name 129  "gl_PrimitiveIndicesNV"
46                              Name 142  "gl_DrawID"
47                              Name 146  "gl_PrimitiveCountNV"
48                              Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId
49                              Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId
50                              MemberDecorate 30(gl_MeshPerVertexNV) 0 BuiltIn Position
51                              MemberDecorate 30(gl_MeshPerVertexNV) 1 BuiltIn PointSize
52                              MemberDecorate 30(gl_MeshPerVertexNV) 2 BuiltIn ClipDistance
53                              MemberDecorate 30(gl_MeshPerVertexNV) 3 BuiltIn CullDistance
54                              MemberDecorate 30(gl_MeshPerVertexNV) 4 PerViewNV
55                              MemberDecorate 30(gl_MeshPerVertexNV) 4 BuiltIn PositionPerViewNV
56                              MemberDecorate 30(gl_MeshPerVertexNV) 5 PerViewNV
57                              MemberDecorate 30(gl_MeshPerVertexNV) 5 BuiltIn ClipDistancePerViewNV
58                              MemberDecorate 30(gl_MeshPerVertexNV) 6 PerViewNV
59                              MemberDecorate 30(gl_MeshPerVertexNV) 6 BuiltIn CullDistancePerViewNV
60                              Decorate 30(gl_MeshPerVertexNV) Block
61                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 0 PerPrimitiveNV
62                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 0 BuiltIn PrimitiveId
63                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 1 PerPrimitiveNV
64                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 1 BuiltIn Layer
65                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 2 PerPrimitiveNV
66                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 2 BuiltIn ViewportIndex
67                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 3 PerPrimitiveNV
68                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 3 BuiltIn ViewportMaskNV
69                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 4 PerPrimitiveNV
70                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 4 PerViewNV
71                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 4 BuiltIn LayerPerViewNV
72                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 5 PerPrimitiveNV
73                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 5 PerViewNV
74                              MemberDecorate 84(gl_MeshPerPrimitiveNV) 5 BuiltIn ViewportMaskPerViewNV
75                              Decorate 84(gl_MeshPerPrimitiveNV) Block
76                              Decorate 129(gl_PrimitiveIndicesNV) BuiltIn PrimitiveIndicesNV
77                              Decorate 142(gl_DrawID) BuiltIn DrawIndex
78                              Decorate 146(gl_PrimitiveCountNV) BuiltIn PrimitiveCountNV
79                              Decorate 147 BuiltIn WorkgroupSize
80               2:             TypeVoid
81               3:             TypeFunction 2
82               6:             TypeInt 32 0
83               7:             TypePointer Function 6(int)
84               9:             TypeVector 6(int) 3
85              10:             TypePointer Input 9(ivec3)
8611(gl_LocalInvocationID):     10(ptr) Variable Input
87              12:      6(int) Constant 0
88              13:             TypePointer Input 6(int)
8917(gl_WorkGroupID):     10(ptr) Variable Input
90              20:             TypeFloat 32
91              21:             TypeVector 20(float) 4
92              22:      6(int) Constant 4
93              23:             TypeArray 20(float) 22
94              24:      6(int) Constant 3
95              25:             TypeArray 20(float) 24
96              26:             TypeArray 21(fvec4) 22
97              27:      6(int) Constant 1
98              28:             TypeArray 20(float) 27
99              29:             TypeArray 28 22
10030(gl_MeshPerVertexNV):             TypeStruct 21(fvec4) 20(float) 23 25 26 29 29
101              31:      6(int) Constant 81
102              32:             TypeArray 30(gl_MeshPerVertexNV) 31
103              33:             TypePointer Output 32
10434(gl_MeshVerticesNV):     33(ptr) Variable Output
105              36:             TypeInt 32 1
106              37:     36(int) Constant 0
107              38:   20(float) Constant 1065353216
108              39:   21(fvec4) ConstantComposite 38 38 38 38
109              40:             TypePointer Output 21(fvec4)
110              43:     36(int) Constant 1
111              44:   20(float) Constant 1073741824
112              45:             TypePointer Output 20(float)
113              48:     36(int) Constant 2
114              49:     36(int) Constant 3
115              50:   20(float) Constant 1077936128
116              53:   20(float) Constant 1082130432
117              55:      6(int) Constant 264
118              56:      6(int) Constant 2
119              81:             TypeArray 36(int) 27
120              82:             TypeArray 36(int) 22
121              83:             TypeArray 81 22
12284(gl_MeshPerPrimitiveNV):             TypeStruct 36(int) 36(int) 36(int) 81 82 83
123              85:      6(int) Constant 32
124              86:             TypeArray 84(gl_MeshPerPrimitiveNV) 85
125              87:             TypePointer Output 86
12688(gl_MeshPrimitivesNV):     87(ptr) Variable Output
127              90:     36(int) Constant 6
128              91:             TypePointer Output 36(int)
129              94:     36(int) Constant 7
130              97:     36(int) Constant 8
131             100:     36(int) Constant 9
132             126:      6(int) Constant 96
133             127:             TypeArray 6(int) 126
134             128:             TypePointer Output 127
135129(gl_PrimitiveIndicesNV):    128(ptr) Variable Output
136             130:      6(int) Constant 257
137             131:             TypePointer Output 6(int)
138             133:     36(int) Constant 95
139             141:             TypePointer Input 36(int)
140  142(gl_DrawID):    141(ptr) Variable Input
141             145:      6(int) Constant 16909060
142146(gl_PrimitiveCountNV):    131(ptr) Variable Output
143             147:    9(ivec3) ConstantComposite 85 27 27
144         4(main):           2 Function None 3
145               5:             Label
146          8(iid):      7(ptr) Variable Function
147         16(gid):      7(ptr) Variable Function
148              14:     13(ptr) AccessChain 11(gl_LocalInvocationID) 12
149              15:      6(int) Load 14
150                              Store 8(iid) 15
151              18:     13(ptr) AccessChain 17(gl_WorkGroupID) 12
152              19:      6(int) Load 18
153                              Store 16(gid) 19
154              35:      6(int) Load 8(iid)
155              41:     40(ptr) AccessChain 34(gl_MeshVerticesNV) 35 37
156                              Store 41 39
157              42:      6(int) Load 8(iid)
158              46:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 42 43
159                              Store 46 44
160              47:      6(int) Load 8(iid)
161              51:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 47 48 49
162                              Store 51 50
163              52:      6(int) Load 8(iid)
164              54:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 52 49 48
165                              Store 54 53
166                              MemoryBarrier 27 55
167                              ControlBarrier 56 56 55
168              57:      6(int) Load 8(iid)
169              58:      6(int) IAdd 57 27
170              59:      6(int) Load 8(iid)
171              60:     40(ptr) AccessChain 34(gl_MeshVerticesNV) 59 37
172              61:   21(fvec4) Load 60
173              62:     40(ptr) AccessChain 34(gl_MeshVerticesNV) 58 37
174                              Store 62 61
175              63:      6(int) Load 8(iid)
176              64:      6(int) IAdd 63 27
177              65:      6(int) Load 8(iid)
178              66:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 65 43
179              67:   20(float) Load 66
180              68:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 64 43
181                              Store 68 67
182              69:      6(int) Load 8(iid)
183              70:      6(int) IAdd 69 27
184              71:      6(int) Load 8(iid)
185              72:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 71 48 49
186              73:   20(float) Load 72
187              74:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 70 48 49
188                              Store 74 73
189              75:      6(int) Load 8(iid)
190              76:      6(int) IAdd 75 27
191              77:      6(int) Load 8(iid)
192              78:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 77 49 48
193              79:   20(float) Load 78
194              80:     45(ptr) AccessChain 34(gl_MeshVerticesNV) 76 49 48
195                              Store 80 79
196                              MemoryBarrier 27 55
197                              ControlBarrier 56 56 55
198              89:      6(int) Load 8(iid)
199              92:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 89 37
200                              Store 92 90
201              93:      6(int) Load 8(iid)
202              95:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 93 43
203                              Store 95 94
204              96:      6(int) Load 8(iid)
205              98:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 96 48
206                              Store 98 97
207              99:      6(int) Load 8(iid)
208             101:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 99 49 37
209                              Store 101 100
210                              MemoryBarrier 27 55
211                              ControlBarrier 56 56 55
212             102:      6(int) Load 8(iid)
213             103:      6(int) IAdd 102 27
214             104:      6(int) Load 8(iid)
215             105:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 104 37
216             106:     36(int) Load 105
217             107:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 103 37
218                              Store 107 106
219             108:      6(int) Load 8(iid)
220             109:      6(int) IAdd 108 27
221             110:      6(int) Load 8(iid)
222             111:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 110 43
223             112:     36(int) Load 111
224             113:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 109 43
225                              Store 113 112
226             114:      6(int) Load 8(iid)
227             115:      6(int) IAdd 114 27
228             116:      6(int) Load 8(iid)
229             117:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 116 48
230             118:     36(int) Load 117
231             119:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 115 48
232                              Store 119 118
233             120:      6(int) Load 8(iid)
234             121:      6(int) IAdd 120 27
235             122:      6(int) Load 8(iid)
236             123:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 122 49 37
237             124:     36(int) Load 123
238             125:     91(ptr) AccessChain 88(gl_MeshPrimitivesNV) 121 49 37
239                              Store 125 124
240                              MemoryBarrier 27 55
241                              ControlBarrier 56 56 55
242             132:    131(ptr) AccessChain 129(gl_PrimitiveIndicesNV) 37
243                              Store 132 130
244             134:    131(ptr) AccessChain 129(gl_PrimitiveIndicesNV) 133
245                              Store 134 56
246             135:      6(int) Load 16(gid)
247             136:      6(int) Load 16(gid)
248             137:      6(int) ISub 136 27
249             138:    131(ptr) AccessChain 129(gl_PrimitiveIndicesNV) 137
250             139:      6(int) Load 138
251             140:    131(ptr) AccessChain 129(gl_PrimitiveIndicesNV) 135
252                              Store 140 139
253             143:     36(int) Load 142(gl_DrawID)
254             144:      6(int) Bitcast 143
255             145:         144 WritePackedPrimitiveIndices4x8NV
256                              Store 146(gl_PrimitiveCountNV) 126
257                              MemoryBarrier 27 55
258                              ControlBarrier 56 56 55
259                              Return
260                              FunctionEnd
261