1 spv.meshShaderRedeclPerViewBuiltins.mesh
2 // Module Version 10000
3 // Generated by (magic number): 8000a
4 // Id's are bound by 120
6 Capability PerViewAttributesNV
7 Capability MeshShadingNV
8 Extension "SPV_NVX_multiview_per_view_attributes"
9 Extension "SPV_NV_mesh_shader"
10 1: ExtInstImport "GLSL.std.450"
11 MemoryModel Logical GLSL450
12 EntryPoint MeshNV 4 "main" 11 20 21 35 67
13 ExecutionMode 4 LocalSize 32 1 1
14 ExecutionMode 4 OutputVertices 81
15 ExecutionMode 4 OutputPrimitivesNV 32
16 ExecutionMode 4 OutputTrianglesNV
18 SourceExtension "GL_NV_mesh_shader"
21 Name 11 "gl_LocalInvocationID"
23 Name 20 "gl_MeshViewIndicesNV"
24 Name 21 "gl_MeshViewCountNV"
25 Name 31 "gl_MeshPerVertexNV"
26 MemberName 31(gl_MeshPerVertexNV) 0 "gl_PositionPerViewNV"
27 MemberName 31(gl_MeshPerVertexNV) 1 "gl_ClipDistancePerViewNV"
28 MemberName 31(gl_MeshPerVertexNV) 2 "gl_CullDistancePerViewNV"
29 Name 35 "gl_MeshVerticesNV"
30 Name 63 "gl_MeshPerPrimitiveNV"
31 MemberName 63(gl_MeshPerPrimitiveNV) 0 "gl_LayerPerViewNV"
32 MemberName 63(gl_MeshPerPrimitiveNV) 1 "gl_ViewportMaskPerViewNV"
33 Name 67 "gl_MeshPrimitivesNV"
34 Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId
35 Decorate 20(gl_MeshViewIndicesNV) BuiltIn MeshViewIndicesNV
36 Decorate 21(gl_MeshViewCountNV) BuiltIn MeshViewCountNV
37 MemberDecorate 31(gl_MeshPerVertexNV) 0 PerViewNV
38 MemberDecorate 31(gl_MeshPerVertexNV) 0 BuiltIn PositionPerViewNV
39 MemberDecorate 31(gl_MeshPerVertexNV) 1 PerViewNV
40 MemberDecorate 31(gl_MeshPerVertexNV) 1 BuiltIn ClipDistancePerViewNV
41 MemberDecorate 31(gl_MeshPerVertexNV) 2 PerViewNV
42 MemberDecorate 31(gl_MeshPerVertexNV) 2 BuiltIn CullDistancePerViewNV
43 Decorate 31(gl_MeshPerVertexNV) Block
44 MemberDecorate 63(gl_MeshPerPrimitiveNV) 0 PerPrimitiveNV
45 MemberDecorate 63(gl_MeshPerPrimitiveNV) 0 PerViewNV
46 MemberDecorate 63(gl_MeshPerPrimitiveNV) 0 BuiltIn LayerPerViewNV
47 MemberDecorate 63(gl_MeshPerPrimitiveNV) 1 PerPrimitiveNV
48 MemberDecorate 63(gl_MeshPerPrimitiveNV) 1 PerViewNV
49 MemberDecorate 63(gl_MeshPerPrimitiveNV) 1 BuiltIn ViewportMaskPerViewNV
50 Decorate 63(gl_MeshPerPrimitiveNV) Block
51 Decorate 119 BuiltIn WorkgroupSize
55 7: TypePointer Function 6(int)
56 9: TypeVector 6(int) 3
57 10: TypePointer Input 9(ivec3)
58 11(gl_LocalInvocationID): 10(ptr) Variable Input
60 13: TypePointer Input 6(int)
62 18: TypeArray 6(int) 17
63 19: TypePointer Input 18
64 20(gl_MeshViewIndicesNV): 19(ptr) Variable Input
65 21(gl_MeshViewCountNV): 13(ptr) Variable Input
67 27: TypeVector 26(float) 4
68 28: TypeArray 27(fvec4) 17
69 29: TypeArray 26(float) 17
71 31(gl_MeshPerVertexNV): TypeStruct 28 30 30
72 32: 6(int) Constant 81
73 33: TypeArray 31(gl_MeshPerVertexNV) 32
74 34: TypePointer Output 33
75 35(gl_MeshVerticesNV): 34(ptr) Variable Output
77 38: 37(int) Constant 0
78 40: 26(float) Constant 1065353216
79 41: 26(float) Constant 1073741824
80 42: 26(float) Constant 1077936128
81 43: 26(float) Constant 1082130432
82 44: 27(fvec4) ConstantComposite 40 41 42 43
83 45: TypePointer Output 27(fvec4)
84 48: 37(int) Constant 1
85 50: 37(int) Constant 2
86 51: 26(float) Constant 1084227584
87 52: TypePointer Output 26(float)
88 56: 37(int) Constant 3
89 57: 26(float) Constant 1086324736
90 59: TypeArray 37(int) 17
92 61: TypeArray 37(int) 60
94 63(gl_MeshPerPrimitiveNV): TypeStruct 59 62
95 64: 6(int) Constant 32
96 65: TypeArray 63(gl_MeshPerPrimitiveNV) 64
97 66: TypePointer Output 65
98 67(gl_MeshPrimitivesNV): 66(ptr) Variable Output
99 70: 37(int) Constant 7
100 71: TypePointer Output 37(int)
101 75: 37(int) Constant 8
102 77: 6(int) Constant 264
103 78: 6(int) Constant 2
104 119: 9(ivec3) ConstantComposite 64 60 60
105 4(main): 2 Function None 3
107 8(iid): 7(ptr) Variable Function
108 16(viewID): 7(ptr) Variable Function
109 14: 13(ptr) AccessChain 11(gl_LocalInvocationID) 12
112 22: 6(int) Load 21(gl_MeshViewCountNV)
113 23: 6(int) UMod 22 17
114 24: 13(ptr) AccessChain 20(gl_MeshViewIndicesNV) 23
117 36: 6(int) Load 8(iid)
118 39: 6(int) Load 16(viewID)
119 46: 45(ptr) AccessChain 35(gl_MeshVerticesNV) 36 38 39
121 47: 6(int) Load 8(iid)
122 49: 6(int) Load 16(viewID)
123 53: 52(ptr) AccessChain 35(gl_MeshVerticesNV) 47 48 49 50
125 54: 6(int) Load 8(iid)
126 55: 6(int) Load 16(viewID)
127 58: 52(ptr) AccessChain 35(gl_MeshVerticesNV) 54 50 55 56
129 68: 6(int) Load 8(iid)
130 69: 6(int) Load 16(viewID)
131 72: 71(ptr) AccessChain 67(gl_MeshPrimitivesNV) 68 38 69
133 73: 6(int) Load 8(iid)
134 74: 6(int) Load 16(viewID)
135 76: 71(ptr) AccessChain 67(gl_MeshPrimitivesNV) 73 48 74 38
138 ControlBarrier 78 78 77
139 79: 6(int) Load 8(iid)
140 80: 6(int) IAdd 79 60
141 81: 6(int) Load 16(viewID)
142 82: 6(int) Load 8(iid)
143 83: 6(int) Load 16(viewID)
144 84: 45(ptr) AccessChain 35(gl_MeshVerticesNV) 82 38 83
145 85: 27(fvec4) Load 84
146 86: 45(ptr) AccessChain 35(gl_MeshVerticesNV) 80 38 81
148 87: 6(int) Load 8(iid)
149 88: 6(int) IAdd 87 60
150 89: 6(int) Load 16(viewID)
151 90: 6(int) Load 8(iid)
152 91: 6(int) Load 16(viewID)
153 92: 52(ptr) AccessChain 35(gl_MeshVerticesNV) 90 48 91 50
154 93: 26(float) Load 92
155 94: 52(ptr) AccessChain 35(gl_MeshVerticesNV) 88 48 89 50
157 95: 6(int) Load 8(iid)
158 96: 6(int) IAdd 95 60
159 97: 6(int) Load 16(viewID)
160 98: 6(int) Load 8(iid)
161 99: 6(int) Load 16(viewID)
162 100: 52(ptr) AccessChain 35(gl_MeshVerticesNV) 98 50 99 56
163 101: 26(float) Load 100
164 102: 52(ptr) AccessChain 35(gl_MeshVerticesNV) 96 50 97 56
166 103: 6(int) Load 8(iid)
167 104: 6(int) IAdd 103 60
168 105: 6(int) Load 16(viewID)
169 106: 6(int) Load 8(iid)
170 107: 6(int) Load 16(viewID)
171 108: 71(ptr) AccessChain 67(gl_MeshPrimitivesNV) 106 38 107
172 109: 37(int) Load 108
173 110: 71(ptr) AccessChain 67(gl_MeshPrimitivesNV) 104 38 105
175 111: 6(int) Load 8(iid)
176 112: 6(int) IAdd 111 60
177 113: 6(int) Load 16(viewID)
178 114: 6(int) Load 8(iid)
179 115: 6(int) Load 16(viewID)
180 116: 71(ptr) AccessChain 67(gl_MeshPrimitivesNV) 114 48 115 38
181 117: 37(int) Load 116
182 118: 71(ptr) AccessChain 67(gl_MeshPrimitivesNV) 112 48 113 38
185 ControlBarrier 78 78 77