Force generateDebugInfo when non-semantic debug info is enabled

From the command line, the debug options "stack", with -gVS enabling all
of generateDebugInfo, emitNonSemanticShaderDebugInfo and
emitNonSemanticShaderDebugSource, however the programmatic interface
allows setting the latter options without the former. In this case, the
string corresponding to the source filename never gets emitted and some
debuginfo instructions end up with zero ID operands, resulting in
invalid SPIR-V.

Fixes #3240
This commit is contained in:
Arcady Goldmints-Orlov 2023-06-22 16:06:41 -04:00 committed by arcady-lunarg
parent 9575e33186
commit d89c0b1d13
14 changed files with 9392 additions and 8284 deletions

View file

@ -1,458 +1,499 @@
spv.debuginfo.hlsl.geom
Validation failed
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 322
// Id's are bound by 353
Capability Geometry
Capability MultiViewport
Extension "SPV_KHR_non_semantic_info"
1: ExtInstImport "NonSemantic.Shader.DebugInfo.100"
2: ExtInstImport "GLSL.std.450"
2: ExtInstImport "NonSemantic.Shader.DebugInfo.100"
3: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Geometry 5 "main" 228 235 240 246 251 256 261 271 278 283 307 310
ExecutionMode 5 Triangles
ExecutionMode 5 Invocations 2
ExecutionMode 5 OutputTriangleStrip
ExecutionMode 5 OutputVertices 3
9: String "float"
12: String "uint"
24: String "Pos"
26: String ""
30: String "Color"
35: String "VSOutput"
46: String "PrimitiveID"
51: String "LightVec"
57: String "GSOutput"
67: String "@main"
73: String "input"
77: String "outStream"
81: String "InvocationID"
87: String "int"
92: String "i"
104: String "bool"
109: String "output"
130: String "projection"
134: String "modelview"
138: String "lightPos"
142: String "UBO"
146: String "ubo"
177: String "pos"
185: String "worldPos"
195: String "lPos"
230: String "outStream.Pos"
237: String "outStream.ViewportIndex"
242: String "outStream.PrimitiveID"
248: String "outStream.Normal"
253: String "outStream.Color"
258: String "outStream.ViewVec"
263: String "outStream.LightVec"
Name 5 "main"
Name 22 "VSOutput"
MemberName 22(VSOutput) 0 "Pos"
MemberName 22(VSOutput) 1 "Normal"
MemberName 22(VSOutput) 2 "Color"
Name 42 "GSOutput"
MemberName 42(GSOutput) 0 "Pos"
MemberName 42(GSOutput) 1 "ViewportIndex"
MemberName 42(GSOutput) 2 "PrimitiveID"
MemberName 42(GSOutput) 3 "Normal"
MemberName 42(GSOutput) 4 "Color"
MemberName 42(GSOutput) 5 "ViewVec"
MemberName 42(GSOutput) 6 "LightVec"
Name 66 "@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;"
Name 62 "input"
Name 63 "outStream"
Name 64 "InvocationID"
Name 65 "PrimitiveID"
Name 90 "i"
Name 107 "output"
Name 128 "UBO"
MemberName 128(UBO) 0 "projection"
MemberName 128(UBO) 1 "modelview"
MemberName 128(UBO) 2 "lightPos"
Name 144 "ubo"
MemberName 144(ubo) 0 "ubo"
Name 150 ""
Name 175 "pos"
Name 183 "worldPos"
Name 193 "lPos"
Name 228 "outStream.Pos"
Name 235 "outStream.ViewportIndex"
Name 240 "outStream.PrimitiveID"
Name 246 "outStream.Normal"
Name 251 "outStream.Color"
Name 256 "outStream.ViewVec"
Name 261 "outStream.LightVec"
Name 268 "input"
Name 271 "input.Pos"
Name 278 "input.Normal"
Name 283 "input.Color"
Name 305 "InvocationID"
Name 307 "InvocationID"
Name 309 "PrimitiveID"
Name 310 "PrimitiveID"
Name 312 "outStream"
Name 313 "param"
Name 315 "param"
Name 316 "param"
Name 318 "param"
Decorate 124 ArrayStride 64
Decorate 126 ArrayStride 64
MemberDecorate 128(UBO) 0 RowMajor
MemberDecorate 128(UBO) 0 Offset 0
MemberDecorate 128(UBO) 0 MatrixStride 16
MemberDecorate 128(UBO) 1 RowMajor
MemberDecorate 128(UBO) 1 Offset 128
MemberDecorate 128(UBO) 1 MatrixStride 16
MemberDecorate 128(UBO) 2 Offset 256
MemberDecorate 144(ubo) 0 Offset 0
Decorate 144(ubo) Block
Decorate 150 DescriptorSet 0
Decorate 150 Binding 0
Decorate 228(outStream.Pos) BuiltIn Position
Decorate 235(outStream.ViewportIndex) BuiltIn ViewportIndex
Decorate 240(outStream.PrimitiveID) BuiltIn PrimitiveId
Decorate 246(outStream.Normal) Location 0
Decorate 251(outStream.Color) Location 1
Decorate 256(outStream.ViewVec) Location 2
Decorate 261(outStream.LightVec) Location 3
Decorate 271(input.Pos) BuiltIn Position
Decorate 278(input.Normal) Location 0
Decorate 283(input.Color) Location 1
Decorate 307(InvocationID) BuiltIn InvocationId
Decorate 310(PrimitiveID) BuiltIn PrimitiveId
3: TypeVoid
4: TypeFunction 3
7: TypeFloat 32
10: TypeInt 32 0
13: 10(int) Constant 32
14: 10(int) Constant 6
15: 10(int) Constant 0
11: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 12 13 14 15
16: 10(int) Constant 3
8: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 9 13 16 15
17: TypeVector 7(float) 4
18: 10(int) Constant 4
19: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 8 18
20: TypeVector 7(float) 3
21: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 8 16
22(VSOutput): TypeStruct 17(fvec4) 20(fvec3) 20(fvec3)
25: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 0 26
27: 10(int) Constant 37
28: 10(int) Constant 13
23: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 24 19 25 27 28 15 15 16
31: 10(int) Constant 39
32: 10(int) Constant 34
29: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 30 21 25 31 32 15 15 16
33: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 30 21 25 31 32 15 15 16
36: 10(int) Constant 1
38: 10(int) Constant 5
37: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 36 18 25 38
34: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 35 36 25 15 15 37 35 15 16 23 29 33
39: TypeArray 22(VSOutput) 16
40: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 34 16
41: TypePointer Function 39
42(GSOutput): TypeStruct 17(fvec4) 10(int) 10(int) 20(fvec3) 20(fvec3) 20(fvec3) 20(fvec3)
44: 10(int) Constant 44
43: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 24 19 25 44 28 15 15 16
47: 10(int) Constant 46
48: 10(int) Constant 19
45: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 46 11 25 47 48 15 15 16
49: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 46 11 25 47 48 15 15 16
52: 10(int) Constant 50
50: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 51 21 25 52 27 15 15 16
53: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 51 21 25 52 27 15 15 16
54: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 51 21 25 52 27 15 15 16
55: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 51 21 25 52 27 15 15 16
56: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 57 36 25 15 15 37 57 15 16 43 45 49 50 53 54 55
58: TypePointer Function 42(GSOutput)
59: TypePointer Function 10(int)
60: TypeFunction 3 41(ptr) 58(ptr) 59(ptr) 59(ptr)
61: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 16 3 40 56 11 11
68: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 67 61 25 15 15 37 67 16 15
72: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 73 40 25 15 15 68 18 36
75: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
78: 10(int) Constant 2
76: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 77 56 25 15 15 68 18 78
80: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 81 11 25 15 15 68 18 16
83: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 46 11 25 15 15 68 18 18
86: TypeInt 32 1
88: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 87 13 18 15
89: TypePointer Function 86(int)
93: 10(int) Constant 57
91: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 92 88 25 93 15 68 18
95: 86(int) Constant 0
102: 86(int) Constant 3
103: TypeBool
105: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 104 13 78 15
110: 10(int) Constant 59
108: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 109 56 25 110 15 68 18
112: 7(float) Constant 0
113: 17(fvec4) ConstantComposite 112 112 112 112
114: 20(fvec3) ConstantComposite 112 112 112
115:42(GSOutput) ConstantComposite 113 15 15 114 114 114 114
117: 86(int) Constant 1
118: TypePointer Function 20(fvec3)
121: TypeMatrix 17(fvec4) 4
123: 103(bool) ConstantTrue
122: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 19 18 123
124: TypeArray 121 78
125: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 122 78
126: TypeArray 121 78
127: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 122 78
128(UBO): TypeStruct 124 126 17(fvec4)
131: 10(int) Constant 28
132: 10(int) Constant 21
129: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 130 125 25 131 132 15 15 16
135: 10(int) Constant 29
136: 10(int) Constant 20
133: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 134 127 25 135 136 15 15 16
139: 10(int) Constant 30
140: 10(int) Constant 17
137: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 138 19 25 139 140 15 15 16
143: 10(int) Constant 60
141: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 142 36 25 143 15 37 142 15 16 129 133 137
144(ubo): TypeStruct 128(UBO)
147: 10(int) Constant 33
145: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 146 141 25 147 27 15 15 16
148: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 146 36 25 143 15 37 146 15 16 145
149: TypePointer Uniform 144(ubo)
150: 149(ptr) Variable Uniform
152: 10(int) Constant 8
151: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 26 148 25 143 15 37 26 150 152
154: TypePointer Uniform 121
157: TypeMatrix 20(fvec3) 3
158: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 21 16 123
168: 86(int) Constant 4
170: 86(int) Constant 2
174: TypePointer Function 17(fvec4)
178: 10(int) Constant 63
176: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 177 19 25 178 15 68 18
186: 10(int) Constant 64
184: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 185 19 25 186 15 68 18
196: 10(int) Constant 66
194: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 195 21 25 196 15 68 18
198: TypePointer Uniform 17(fvec4)
206: 86(int) Constant 6
212: 86(int) Constant 5
227: TypePointer Output 17(fvec4)
228(outStream.Pos): 227(ptr) Variable Output
231: 10(int) Constant 75
229: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 230 19 25 231 15 37 230 228(outStream.Pos) 152
234: TypePointer Output 10(int)
235(outStream.ViewportIndex): 234(ptr) Variable Output
236: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 237 11 25 231 15 37 237 235(outStream.ViewportIndex) 152
240(outStream.PrimitiveID): 234(ptr) Variable Output
241: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 242 11 25 231 15 37 242 240(outStream.PrimitiveID) 152
245: TypePointer Output 20(fvec3)
246(outStream.Normal): 245(ptr) Variable Output
247: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 248 21 25 231 15 37 248 246(outStream.Normal) 152
251(outStream.Color): 245(ptr) Variable Output
252: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 253 21 25 231 15 37 253 251(outStream.Color) 152
256(outStream.ViewVec): 245(ptr) Variable Output
257: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 258 21 25 231 15 37 258 256(outStream.ViewVec) 152
261(outStream.LightVec): 245(ptr) Variable Output
262: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 263 21 25 231 15 37 263 261(outStream.LightVec) 152
269: TypeArray 17(fvec4) 16
270: TypePointer Input 269
271(input.Pos): 270(ptr) Variable Input
272: TypePointer Input 17(fvec4)
276: TypeArray 20(fvec3) 16
277: TypePointer Input 276
278(input.Normal): 277(ptr) Variable Input
279: TypePointer Input 20(fvec3)
283(input.Color): 277(ptr) Variable Input
306: TypePointer Input 10(int)
307(InvocationID): 306(ptr) Variable Input
310(PrimitiveID): 306(ptr) Variable Input
5(main): 3 Function None 4
6: Label
268(input): 41(ptr) Variable Function
305(InvocationID): 59(ptr) Variable Function
309(PrimitiveID): 59(ptr) Variable Function
312(outStream): 58(ptr) Variable Function
313(param): 41(ptr) Variable Function
315(param): 58(ptr) Variable Function
316(param): 59(ptr) Variable Function
318(param): 59(ptr) Variable Function
273: 272(ptr) AccessChain 271(input.Pos) 95
274: 17(fvec4) Load 273
275: 174(ptr) AccessChain 268(input) 95 95
Store 275 274
280: 279(ptr) AccessChain 278(input.Normal) 95
281: 20(fvec3) Load 280
282: 118(ptr) AccessChain 268(input) 95 117
Store 282 281
284: 279(ptr) AccessChain 283(input.Color) 95
285: 20(fvec3) Load 284
286: 118(ptr) AccessChain 268(input) 95 170
Store 286 285
287: 272(ptr) AccessChain 271(input.Pos) 117
288: 17(fvec4) Load 287
289: 174(ptr) AccessChain 268(input) 117 95
Store 289 288
290: 279(ptr) AccessChain 278(input.Normal) 117
291: 20(fvec3) Load 290
292: 118(ptr) AccessChain 268(input) 117 117
Store 292 291
293: 279(ptr) AccessChain 283(input.Color) 117
294: 20(fvec3) Load 293
295: 118(ptr) AccessChain 268(input) 117 170
Store 295 294
296: 272(ptr) AccessChain 271(input.Pos) 170
297: 17(fvec4) Load 296
298: 174(ptr) AccessChain 268(input) 170 95
Store 298 297
299: 279(ptr) AccessChain 278(input.Normal) 170
300: 20(fvec3) Load 299
301: 118(ptr) AccessChain 268(input) 170 117
Store 301 300
302: 279(ptr) AccessChain 283(input.Color) 170
303: 20(fvec3) Load 302
304: 118(ptr) AccessChain 268(input) 170 170
Store 304 303
308: 10(int) Load 307(InvocationID)
Store 305(InvocationID) 308
311: 10(int) Load 310(PrimitiveID)
Store 309(PrimitiveID) 311
314: 39 Load 268(input)
Store 313(param) 314
317: 10(int) Load 305(InvocationID)
Store 316(param) 317
319: 10(int) Load 309(PrimitiveID)
Store 318(param) 319
320: 3 FunctionCall 66(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;) 313(param) 315(param) 316(param) 318(param)
321:42(GSOutput) Load 315(param)
Store 312(outStream) 321
EntryPoint Geometry 6 "main" 255 261 266 272 277 282 287 302 309 314 338 341
ExecutionMode 6 Triangles
ExecutionMode 6 Invocations 2
ExecutionMode 6 OutputTriangleStrip
ExecutionMode 6 OutputVertices 3
1: String ""
10: String "float"
13: String "uint"
25: String "Pos"
27: String "// OpModuleProcessed auto-map-locations
// OpModuleProcessed auto-map-bindings
// OpModuleProcessed entry-point main
// OpModuleProcessed client vulkan100
// OpModuleProcessed target-env vulkan1.0
// OpModuleProcessed keep-uncalled
// OpModuleProcessed hlsl-offsets
#line 1
"
31: String "Color"
36: String "VSOutput"
47: String "PrimitiveID"
52: String "LightVec"
58: String "GSOutput"
68: String "@main"
74: String "input"
78: String "outStream"
82: String "InvocationID"
91: String "int"
96: String "i"
111: String "bool"
119: String "output"
141: String "projection"
145: String "modelview"
149: String "lightPos"
153: String "UBO"
156: String "ubo"
191: String "pos"
200: String "worldPos"
211: String "lPos"
257: String "outStream.Pos"
263: String "outStream.ViewportIndex"
268: String "outStream.PrimitiveID"
274: String "outStream.Normal"
279: String "outStream.Color"
284: String "outStream.ViewVec"
289: String "outStream.LightVec"
Name 6 "main"
Name 23 "VSOutput"
MemberName 23(VSOutput) 0 "Pos"
MemberName 23(VSOutput) 1 "Normal"
MemberName 23(VSOutput) 2 "Color"
Name 43 "GSOutput"
MemberName 43(GSOutput) 0 "Pos"
MemberName 43(GSOutput) 1 "ViewportIndex"
MemberName 43(GSOutput) 2 "PrimitiveID"
MemberName 43(GSOutput) 3 "Normal"
MemberName 43(GSOutput) 4 "Color"
MemberName 43(GSOutput) 5 "ViewVec"
MemberName 43(GSOutput) 6 "LightVec"
Name 67 "@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;"
Name 63 "input"
Name 64 "outStream"
Name 65 "InvocationID"
Name 66 "PrimitiveID"
Name 94 "i"
Name 117 "output"
Name 139 "UBO"
MemberName 139(UBO) 0 "projection"
MemberName 139(UBO) 1 "modelview"
MemberName 139(UBO) 2 "lightPos"
Name 154 "ubo"
MemberName 154(ubo) 0 "ubo"
Name 160 ""
Name 189 "pos"
Name 198 "worldPos"
Name 209 "lPos"
Name 255 "outStream.Pos"
Name 261 "outStream.ViewportIndex"
Name 266 "outStream.PrimitiveID"
Name 272 "outStream.Normal"
Name 277 "outStream.Color"
Name 282 "outStream.ViewVec"
Name 287 "outStream.LightVec"
Name 299 "input"
Name 302 "input.Pos"
Name 309 "input.Normal"
Name 314 "input.Color"
Name 336 "InvocationID"
Name 338 "InvocationID"
Name 340 "PrimitiveID"
Name 341 "PrimitiveID"
Name 343 "outStream"
Name 344 "param"
Name 346 "param"
Name 347 "param"
Name 349 "param"
Decorate 135 ArrayStride 64
Decorate 137 ArrayStride 64
MemberDecorate 139(UBO) 0 RowMajor
MemberDecorate 139(UBO) 0 Offset 0
MemberDecorate 139(UBO) 0 MatrixStride 16
MemberDecorate 139(UBO) 1 RowMajor
MemberDecorate 139(UBO) 1 Offset 128
MemberDecorate 139(UBO) 1 MatrixStride 16
MemberDecorate 139(UBO) 2 Offset 256
MemberDecorate 154(ubo) 0 Offset 0
Decorate 154(ubo) Block
Decorate 160 DescriptorSet 0
Decorate 160 Binding 0
Decorate 255(outStream.Pos) BuiltIn Position
Decorate 261(outStream.ViewportIndex) BuiltIn ViewportIndex
Decorate 266(outStream.PrimitiveID) BuiltIn PrimitiveId
Decorate 272(outStream.Normal) Location 0
Decorate 277(outStream.Color) Location 1
Decorate 282(outStream.ViewVec) Location 2
Decorate 287(outStream.LightVec) Location 3
Decorate 302(input.Pos) BuiltIn Position
Decorate 309(input.Normal) Location 0
Decorate 314(input.Color) Location 1
Decorate 338(InvocationID) BuiltIn InvocationId
Decorate 341(PrimitiveID) BuiltIn PrimitiveId
4: TypeVoid
5: TypeFunction 4
8: TypeFloat 32
11: TypeInt 32 0
14: 11(int) Constant 32
15: 11(int) Constant 6
16: 11(int) Constant 0
12: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 13 14 15 16
17: 11(int) Constant 3
9: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 10 14 17 16
18: TypeVector 8(float) 4
19: 11(int) Constant 4
20: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 9 19
21: TypeVector 8(float) 3
22: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 9 17
23(VSOutput): TypeStruct 18(fvec4) 21(fvec3) 21(fvec3)
26: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 1 27
28: 11(int) Constant 37
29: 11(int) Constant 13
24: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 25 20 26 28 29 16 16 17
32: 11(int) Constant 39
33: 11(int) Constant 34
30: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 31 22 26 32 33 16 16 17
34: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 31 22 26 32 33 16 16 17
37: 11(int) Constant 1
39: 11(int) Constant 5
38: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 37 19 26 39
35: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 36 37 26 16 16 38 36 16 17 24 30 34
40: TypeArray 23(VSOutput) 17
41: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 35 17
42: TypePointer Function 40
43(GSOutput): TypeStruct 18(fvec4) 11(int) 11(int) 21(fvec3) 21(fvec3) 21(fvec3) 21(fvec3)
45: 11(int) Constant 44
44: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 25 20 26 45 29 16 16 17
48: 11(int) Constant 46
49: 11(int) Constant 19
46: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 47 12 26 48 49 16 16 17
50: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 47 12 26 48 49 16 16 17
53: 11(int) Constant 50
51: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 52 22 26 53 28 16 16 17
54: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 52 22 26 53 28 16 16 17
55: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 52 22 26 53 28 16 16 17
56: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 52 22 26 53 28 16 16 17
57: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 58 37 26 16 16 38 58 16 17 44 46 50 51 54 55 56
59: TypePointer Function 43(GSOutput)
60: TypePointer Function 11(int)
61: TypeFunction 4 42(ptr) 59(ptr) 60(ptr) 60(ptr)
62: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 4 41 57 12 12
69: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 68 62 26 16 16 38 68 17 16
73: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 74 41 26 16 16 69 19 37
76: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
79: 11(int) Constant 2
77: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 78 57 26 16 16 69 19 79
81: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 82 12 26 16 16 69 19 17
84: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 47 12 26 16 16 69 19 19
89: 11(int) Constant 57
90: TypeInt 32 1
92: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 91 14 19 16
93: TypePointer Function 90(int)
95: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 96 92 26 89 16 69 19
98: 90(int) Constant 0
109: 90(int) Constant 3
110: TypeBool
112: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 111 14 79 16
116: 11(int) Constant 59
118: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 119 57 26 116 16 69 19
121: 8(float) Constant 0
122: 18(fvec4) ConstantComposite 121 121 121 121
123: 21(fvec3) ConstantComposite 121 121 121
124:43(GSOutput) ConstantComposite 122 16 16 123 123 123 123
126: 11(int) Constant 60
128: 90(int) Constant 1
129: TypePointer Function 21(fvec3)
132: TypeMatrix 18(fvec4) 4
134: 110(bool) ConstantTrue
133: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 134
135: TypeArray 132 79
136: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 133 79
137: TypeArray 132 79
138: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 133 79
139(UBO): TypeStruct 135 137 18(fvec4)
142: 11(int) Constant 28
143: 11(int) Constant 21
140: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 141 136 26 142 143 16 16 17
146: 11(int) Constant 29
147: 11(int) Constant 20
144: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 145 138 26 146 147 16 16 17
150: 11(int) Constant 30
151: 11(int) Constant 17
148: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 149 20 26 150 151 16 16 17
152: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 153 37 26 126 16 38 153 16 17 140 144 148
154(ubo): TypeStruct 139(UBO)
157: 11(int) Constant 33
155: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 156 152 26 157 28 16 16 17
158: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 156 37 26 126 16 38 156 16 17 155
159: TypePointer Uniform 154(ubo)
160: 159(ptr) Variable Uniform
162: 11(int) Constant 8
161: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 1 158 26 126 16 38 1 160 162
164: TypePointer Uniform 132
167: TypeMatrix 21(fvec3) 3
168: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 22 17 134
179: 11(int) Constant 61
180: 90(int) Constant 4
182: 90(int) Constant 2
187: 11(int) Constant 63
188: TypePointer Function 18(fvec4)
190: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 191 20 26 187 16 69 19
197: 11(int) Constant 64
199: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 200 20 26 197 16 69 19
208: 11(int) Constant 66
210: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 211 22 26 208 16 69 19
213: TypePointer Uniform 18(fvec4)
222: 11(int) Constant 67
223: 90(int) Constant 6
230: 11(int) Constant 68
231: 90(int) Constant 5
237: 11(int) Constant 70
245: 11(int) Constant 73
249: 11(int) Constant 74
253: 11(int) Constant 75
254: TypePointer Output 18(fvec4)
255(outStream.Pos): 254(ptr) Variable Output
256: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 257 20 26 253 16 38 257 255(outStream.Pos) 162
260: TypePointer Output 11(int)
261(outStream.ViewportIndex): 260(ptr) Variable Output
262: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 263 12 26 253 16 38 263 261(outStream.ViewportIndex) 162
266(outStream.PrimitiveID): 260(ptr) Variable Output
267: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 268 12 26 253 16 38 268 266(outStream.PrimitiveID) 162
271: TypePointer Output 21(fvec3)
272(outStream.Normal): 271(ptr) Variable Output
273: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 274 22 26 253 16 38 274 272(outStream.Normal) 162
277(outStream.Color): 271(ptr) Variable Output
278: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 279 22 26 253 16 38 279 277(outStream.Color) 162
282(outStream.ViewVec): 271(ptr) Variable Output
283: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 284 22 26 253 16 38 284 282(outStream.ViewVec) 162
287(outStream.LightVec): 271(ptr) Variable Output
288: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 289 22 26 253 16 38 289 287(outStream.LightVec) 162
298: 11(int) Constant 78
300: TypeArray 18(fvec4) 17
301: TypePointer Input 300
302(input.Pos): 301(ptr) Variable Input
303: TypePointer Input 18(fvec4)
307: TypeArray 21(fvec3) 17
308: TypePointer Input 307
309(input.Normal): 308(ptr) Variable Input
310: TypePointer Input 21(fvec3)
314(input.Color): 308(ptr) Variable Input
337: TypePointer Input 11(int)
338(InvocationID): 337(ptr) Variable Input
341(PrimitiveID): 337(ptr) Variable Input
Line 1 56 1
6(main): 4 Function None 5
7: Label
299(input): 42(ptr) Variable Function
336(InvocationID): 60(ptr) Variable Function
340(PrimitiveID): 60(ptr) Variable Function
343(outStream): 59(ptr) Variable Function
344(param): 42(ptr) Variable Function
346(param): 59(ptr) Variable Function
347(param): 60(ptr) Variable Function
349(param): 60(ptr) Variable Function
Line 1 56 0
304: 303(ptr) AccessChain 302(input.Pos) 98
305: 18(fvec4) Load 304
306: 188(ptr) AccessChain 299(input) 98 98
Store 306 305
311: 310(ptr) AccessChain 309(input.Normal) 98
312: 21(fvec3) Load 311
313: 129(ptr) AccessChain 299(input) 98 128
Store 313 312
315: 310(ptr) AccessChain 314(input.Color) 98
316: 21(fvec3) Load 315
317: 129(ptr) AccessChain 299(input) 98 182
Store 317 316
318: 303(ptr) AccessChain 302(input.Pos) 128
319: 18(fvec4) Load 318
320: 188(ptr) AccessChain 299(input) 128 98
Store 320 319
321: 310(ptr) AccessChain 309(input.Normal) 128
322: 21(fvec3) Load 321
323: 129(ptr) AccessChain 299(input) 128 128
Store 323 322
324: 310(ptr) AccessChain 314(input.Color) 128
325: 21(fvec3) Load 324
326: 129(ptr) AccessChain 299(input) 128 182
Store 326 325
327: 303(ptr) AccessChain 302(input.Pos) 182
328: 18(fvec4) Load 327
329: 188(ptr) AccessChain 299(input) 182 98
Store 329 328
330: 310(ptr) AccessChain 309(input.Normal) 182
331: 21(fvec3) Load 330
332: 129(ptr) AccessChain 299(input) 182 128
Store 332 331
333: 310(ptr) AccessChain 314(input.Color) 182
334: 21(fvec3) Load 333
335: 129(ptr) AccessChain 299(input) 182 182
Store 335 334
339: 11(int) Load 338(InvocationID)
Store 336(InvocationID) 339
342: 11(int) Load 341(PrimitiveID)
Store 340(PrimitiveID) 342
345: 40 Load 299(input)
Store 344(param) 345
348: 11(int) Load 336(InvocationID)
Store 347(param) 348
350: 11(int) Load 340(PrimitiveID)
Store 349(param) 350
351: 4 FunctionCall 67(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;) 344(param) 346(param) 347(param) 349(param)
352:43(GSOutput) Load 346(param)
Store 343(outStream) 352
Return
FunctionEnd
66(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;): 3 Function None 60
62(input): 41(ptr) FunctionParameter
63(outStream): 58(ptr) FunctionParameter
64(InvocationID): 59(ptr) FunctionParameter
65(PrimitiveID): 59(ptr) FunctionParameter
69: Label
90(i): 89(ptr) Variable Function
107(output): 58(ptr) Variable Function
175(pos): 174(ptr) Variable Function
183(worldPos): 174(ptr) Variable Function
193(lPos): 118(ptr) Variable Function
70: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 68
71: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 25 15 15 15 15
74: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 72 62(input) 75
79: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 76 63(outStream) 75
82: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 80 64(InvocationID) 75
84: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 83 65(PrimitiveID) 75
85: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 68 66(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;)
94: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 91 90(i) 75
Store 90(i) 95
Branch 96
96: Label
LoopMerge 98 99 None
Branch 100
100: Label
101: 86(int) Load 90(i)
106: 103(bool) SLessThan 101 102
BranchConditional 106 97 98
97: Label
111: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 108 107(output) 75
Store 107(output) 115
116: 86(int) Load 90(i)
119: 118(ptr) AccessChain 62(input) 116 117
120: 20(fvec3) Load 119
153: 10(int) Load 64(InvocationID)
155: 154(ptr) AccessChain 150 95 117 153
156: 121 Load 155
159: 17(fvec4) CompositeExtract 156 0
160: 20(fvec3) VectorShuffle 159 159 0 1 2
161: 17(fvec4) CompositeExtract 156 1
162: 20(fvec3) VectorShuffle 161 161 0 1 2
163: 17(fvec4) CompositeExtract 156 2
164: 20(fvec3) VectorShuffle 163 163 0 1 2
165: 157 CompositeConstruct 160 162 164
166: 20(fvec3) VectorTimesMatrix 120 165
167: 118(ptr) AccessChain 107(output) 102
Store 167 166
169: 86(int) Load 90(i)
171: 118(ptr) AccessChain 62(input) 169 170
172: 20(fvec3) Load 171
173: 118(ptr) AccessChain 107(output) 168
Store 173 172
179: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 176 175(pos) 75
180: 86(int) Load 90(i)
181: 174(ptr) AccessChain 62(input) 180 95
182: 17(fvec4) Load 181
Store 175(pos) 182
187: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 184 183(worldPos) 75
188: 17(fvec4) Load 175(pos)
189: 10(int) Load 64(InvocationID)
190: 154(ptr) AccessChain 150 95 117 189
191: 121 Load 190
192: 17(fvec4) VectorTimesMatrix 188 191
Store 183(worldPos) 192
197: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 194 193(lPos) 75
199: 198(ptr) AccessChain 150 95 170
200: 17(fvec4) Load 199
201: 10(int) Load 64(InvocationID)
202: 154(ptr) AccessChain 150 95 117 201
203: 121 Load 202
204: 17(fvec4) VectorTimesMatrix 200 203
205: 20(fvec3) VectorShuffle 204 204 0 1 2
Store 193(lPos) 205
207: 20(fvec3) Load 193(lPos)
208: 17(fvec4) Load 183(worldPos)
209: 20(fvec3) VectorShuffle 208 208 0 1 2
210: 20(fvec3) FSub 207 209
211: 118(ptr) AccessChain 107(output) 206
Store 211 210
213: 17(fvec4) Load 183(worldPos)
214: 20(fvec3) VectorShuffle 213 213 0 1 2
215: 20(fvec3) FNegate 214
216: 118(ptr) AccessChain 107(output) 212
Store 216 215
217: 17(fvec4) Load 183(worldPos)
218: 10(int) Load 64(InvocationID)
219: 154(ptr) AccessChain 150 95 95 218
220: 121 Load 219
221: 17(fvec4) VectorTimesMatrix 217 220
222: 174(ptr) AccessChain 107(output) 95
Store 222 221
223: 10(int) Load 64(InvocationID)
224: 59(ptr) AccessChain 107(output) 117
Store 224 223
225: 10(int) Load 65(PrimitiveID)
226: 59(ptr) AccessChain 107(output) 170
Store 226 225
232: 174(ptr) AccessChain 107(output) 95
233: 17(fvec4) Load 232
Store 228(outStream.Pos) 233
238: 59(ptr) AccessChain 107(output) 117
239: 10(int) Load 238
Store 235(outStream.ViewportIndex) 239
243: 59(ptr) AccessChain 107(output) 170
244: 10(int) Load 243
Store 240(outStream.PrimitiveID) 244
249: 118(ptr) AccessChain 107(output) 102
250: 20(fvec3) Load 249
Store 246(outStream.Normal) 250
254: 118(ptr) AccessChain 107(output) 168
255: 20(fvec3) Load 254
Store 251(outStream.Color) 255
259: 118(ptr) AccessChain 107(output) 212
260: 20(fvec3) Load 259
Store 256(outStream.ViewVec) 260
264: 118(ptr) AccessChain 107(output) 206
265: 20(fvec3) Load 264
Store 261(outStream.LightVec) 265
Line 1 56 1
67(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;): 4 Function None 61
63(input): 42(ptr) FunctionParameter
64(outStream): 59(ptr) FunctionParameter
65(InvocationID): 60(ptr) FunctionParameter
66(PrimitiveID): 60(ptr) FunctionParameter
70: Label
94(i): 93(ptr) Variable Function
117(output): 59(ptr) Variable Function
189(pos): 188(ptr) Variable Function
198(worldPos): 188(ptr) Variable Function
209(lPos): 129(ptr) Variable Function
71: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 69
72: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 16 16 16 16
75: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 73 63(input) 76
80: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 77 64(outStream) 76
83: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 81 65(InvocationID) 76
85: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 84 66(PrimitiveID) 76
86: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 69 67(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;)
87: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 69
88: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 89 89 16 16
97: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 95 94(i) 76
Store 94(i) 98
Branch 99
99: Label
103: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 69
104: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 89 89 16 16
LoopMerge 101 102 None
Branch 105
105: Label
106: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 69
107: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 89 89 16 16
108: 90(int) Load 94(i)
113: 110(bool) SLessThan 108 109
BranchConditional 113 100 101
100: Label
114: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 69
115: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 116 116 16 16
120: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 118 117(output) 76
Store 117(output) 124
125: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 126 126 16 16
127: 90(int) Load 94(i)
130: 129(ptr) AccessChain 63(input) 127 128
131: 21(fvec3) Load 130
163: 11(int) Load 65(InvocationID)
165: 164(ptr) AccessChain 160 98 128 163
166: 132 Load 165
169: 18(fvec4) CompositeExtract 166 0
170: 21(fvec3) VectorShuffle 169 169 0 1 2
171: 18(fvec4) CompositeExtract 166 1
172: 21(fvec3) VectorShuffle 171 171 0 1 2
173: 18(fvec4) CompositeExtract 166 2
174: 21(fvec3) VectorShuffle 173 173 0 1 2
175: 167 CompositeConstruct 170 172 174
176: 21(fvec3) VectorTimesMatrix 131 175
177: 129(ptr) AccessChain 117(output) 109
Store 177 176
178: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 179 179 16 16
181: 90(int) Load 94(i)
183: 129(ptr) AccessChain 63(input) 181 182
184: 21(fvec3) Load 183
185: 129(ptr) AccessChain 117(output) 180
Store 185 184
186: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 187 187 16 16
192: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 190 189(pos) 76
193: 90(int) Load 94(i)
194: 188(ptr) AccessChain 63(input) 193 98
195: 18(fvec4) Load 194
Store 189(pos) 195
196: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 197 197 16 16
201: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 199 198(worldPos) 76
202: 18(fvec4) Load 189(pos)
203: 11(int) Load 65(InvocationID)
204: 164(ptr) AccessChain 160 98 128 203
205: 132 Load 204
206: 18(fvec4) VectorTimesMatrix 202 205
Store 198(worldPos) 206
207: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 208 208 16 16
212: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 210 209(lPos) 76
214: 213(ptr) AccessChain 160 98 182
215: 18(fvec4) Load 214
216: 11(int) Load 65(InvocationID)
217: 164(ptr) AccessChain 160 98 128 216
218: 132 Load 217
219: 18(fvec4) VectorTimesMatrix 215 218
220: 21(fvec3) VectorShuffle 219 219 0 1 2
Store 209(lPos) 220
221: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 222 222 16 16
224: 21(fvec3) Load 209(lPos)
225: 18(fvec4) Load 198(worldPos)
226: 21(fvec3) VectorShuffle 225 225 0 1 2
227: 21(fvec3) FSub 224 226
228: 129(ptr) AccessChain 117(output) 223
Store 228 227
229: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 230 230 16 16
232: 18(fvec4) Load 198(worldPos)
233: 21(fvec3) VectorShuffle 232 232 0 1 2
234: 21(fvec3) FNegate 233
235: 129(ptr) AccessChain 117(output) 231
Store 235 234
236: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 237 237 16 16
238: 18(fvec4) Load 198(worldPos)
239: 11(int) Load 65(InvocationID)
240: 164(ptr) AccessChain 160 98 98 239
241: 132 Load 240
242: 18(fvec4) VectorTimesMatrix 238 241
243: 188(ptr) AccessChain 117(output) 98
Store 243 242
244: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 245 245 16 16
246: 11(int) Load 65(InvocationID)
247: 60(ptr) AccessChain 117(output) 128
Store 247 246
248: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 249 249 16 16
250: 11(int) Load 66(PrimitiveID)
251: 60(ptr) AccessChain 117(output) 182
Store 251 250
252: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 253 253 16 16
258: 188(ptr) AccessChain 117(output) 98
259: 18(fvec4) Load 258
Store 255(outStream.Pos) 259
264: 60(ptr) AccessChain 117(output) 128
265: 11(int) Load 264
Store 261(outStream.ViewportIndex) 265
269: 60(ptr) AccessChain 117(output) 182
270: 11(int) Load 269
Store 266(outStream.PrimitiveID) 270
275: 129(ptr) AccessChain 117(output) 109
276: 21(fvec3) Load 275
Store 272(outStream.Normal) 276
280: 129(ptr) AccessChain 117(output) 180
281: 21(fvec3) Load 280
Store 277(outStream.Color) 281
285: 129(ptr) AccessChain 117(output) 231
286: 21(fvec3) Load 285
Store 282(outStream.ViewVec) 286
290: 129(ptr) AccessChain 117(output) 223
291: 21(fvec3) Load 290
Store 287(outStream.LightVec) 291
EmitVertex
Branch 102
102: Label
292: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 69
293: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 89 89 16 16
294: 90(int) Load 94(i)
295: 90(int) IAdd 294 128
Store 94(i) 295
Branch 99
99: Label
266: 86(int) Load 90(i)
267: 86(int) IAdd 266 117
Store 90(i) 267
Branch 96
98: Label
101: Label
296: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 69
297: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 298 298 16 16
EndPrimitive
Return
FunctionEnd