1hlsl.semantic.geom
2Shader version: 500
3invocations = -1
4max_vertices = 4
5input primitive = triangles
6output primitive = line_strip
70:? Sequence
80:13  Function Definition: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void)
90:13    Function Parameters:
100:13      'VertexID' ( in 3-element array of uint)
110:13      'OutputStream' ( out structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
120:?     Sequence
130:15      Sequence
140:15        Sequence
150:15          move second child to first child ( temp float)
160:?             'OutputStream.clip0' ( out float Position)
170:15            clip0: direct index for structure ( temp float)
180:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
190:15              Constant:
200:15                0 (const int)
210:?           Sequence
220:15            move second child to first child ( temp float)
230:15              direct index ( out float ClipDistance)
240:?                 'OutputStream.clip0' ( out 1-element array of float ClipDistance)
250:15                Constant:
260:15                  0 (const int)
270:15              clip0: direct index for structure ( temp float)
280:15                's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
290:15                Constant:
300:15                  1 (const int)
310:?           Sequence
320:15            move second child to first child ( temp float)
330:15              direct index ( out float CullDistance)
340:?                 'OutputStream.cull0' ( out 1-element array of float CullDistance)
350:15                Constant:
360:15                  0 (const int)
370:15              cull0: direct index for structure ( temp float)
380:15                's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
390:15                Constant:
400:15                  2 (const int)
410:15          move second child to first child ( temp uint)
420:?             'OutputStream.vpai' ( out uint ViewportIndex)
430:15            vpai: direct index for structure ( temp uint)
440:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
450:15              Constant:
460:15                3 (const int)
470:15          move second child to first child ( temp uint)
480:?             'OutputStream.rtai' ( out uint Layer)
490:15            rtai: direct index for structure ( temp uint)
500:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
510:15              Constant:
520:15                4 (const int)
530:15          move second child to first child ( temp int)
540:?             'OutputStream.ii' (layout( location=0) out int)
550:15            ii: direct index for structure ( temp int)
560:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
570:15              Constant:
580:15                5 (const int)
590:15        EmitVertex ( temp void)
600:13  Function Definition: main( ( temp void)
610:13    Function Parameters:
620:?     Sequence
630:13      move second child to first child ( temp 3-element array of uint)
640:?         'VertexID' ( temp 3-element array of uint)
650:?         'VertexID' (layout( location=0) in 3-element array of uint)
660:13      Function Call: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void)
670:?         'VertexID' ( temp 3-element array of uint)
680:?         'OutputStream' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
690:?   Linker Objects
700:?     'VertexID' (layout( location=0) in 3-element array of uint)
710:?     'OutputStream.clip0' ( out float Position)
720:?     'OutputStream.vpai' ( out uint ViewportIndex)
730:?     'OutputStream.rtai' ( out uint Layer)
740:?     'OutputStream.ii' (layout( location=0) out int)
750:?     'OutputStream.clip0' ( out 1-element array of float ClipDistance)
760:?     'OutputStream.cull0' ( out 1-element array of float CullDistance)
77
78
79Linked geometry stage:
80
81
82Shader version: 500
83invocations = 1
84max_vertices = 4
85input primitive = triangles
86output primitive = line_strip
870:? Sequence
880:13  Function Definition: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void)
890:13    Function Parameters:
900:13      'VertexID' ( in 3-element array of uint)
910:13      'OutputStream' ( out structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
920:?     Sequence
930:15      Sequence
940:15        Sequence
950:15          move second child to first child ( temp float)
960:?             'OutputStream.clip0' ( out float Position)
970:15            clip0: direct index for structure ( temp float)
980:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
990:15              Constant:
1000:15                0 (const int)
1010:?           Sequence
1020:15            move second child to first child ( temp float)
1030:15              direct index ( out float ClipDistance)
1040:?                 'OutputStream.clip0' ( out 1-element array of float ClipDistance)
1050:15                Constant:
1060:15                  0 (const int)
1070:15              clip0: direct index for structure ( temp float)
1080:15                's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
1090:15                Constant:
1100:15                  1 (const int)
1110:?           Sequence
1120:15            move second child to first child ( temp float)
1130:15              direct index ( out float CullDistance)
1140:?                 'OutputStream.cull0' ( out 1-element array of float CullDistance)
1150:15                Constant:
1160:15                  0 (const int)
1170:15              cull0: direct index for structure ( temp float)
1180:15                's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
1190:15                Constant:
1200:15                  2 (const int)
1210:15          move second child to first child ( temp uint)
1220:?             'OutputStream.vpai' ( out uint ViewportIndex)
1230:15            vpai: direct index for structure ( temp uint)
1240:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
1250:15              Constant:
1260:15                3 (const int)
1270:15          move second child to first child ( temp uint)
1280:?             'OutputStream.rtai' ( out uint Layer)
1290:15            rtai: direct index for structure ( temp uint)
1300:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
1310:15              Constant:
1320:15                4 (const int)
1330:15          move second child to first child ( temp int)
1340:?             'OutputStream.ii' (layout( location=0) out int)
1350:15            ii: direct index for structure ( temp int)
1360:15              's' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
1370:15              Constant:
1380:15                5 (const int)
1390:15        EmitVertex ( temp void)
1400:13  Function Definition: main( ( temp void)
1410:13    Function Parameters:
1420:?     Sequence
1430:13      move second child to first child ( temp 3-element array of uint)
1440:?         'VertexID' ( temp 3-element array of uint)
1450:?         'VertexID' (layout( location=0) in 3-element array of uint)
1460:13      Function Call: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void)
1470:?         'VertexID' ( temp 3-element array of uint)
1480:?         'OutputStream' ( temp structure{ temp float clip0,  temp float clip0,  temp float cull0,  temp uint vpai,  temp uint rtai,  temp int ii})
1490:?   Linker Objects
1500:?     'VertexID' (layout( location=0) in 3-element array of uint)
1510:?     'OutputStream.clip0' ( out float Position)
1520:?     'OutputStream.vpai' ( out uint ViewportIndex)
1530:?     'OutputStream.rtai' ( out uint Layer)
1540:?     'OutputStream.ii' (layout( location=0) out int)
1550:?     'OutputStream.clip0' ( out 1-element array of float ClipDistance)
1560:?     'OutputStream.cull0' ( out 1-element array of float CullDistance)
157
158// Module Version 10000
159// Generated by (magic number): 80007
160// Id's are bound by 65
161
162                              Capability Geometry
163                              Capability ClipDistance
164                              Capability CullDistance
165                              Capability MultiViewport
166               1:             ExtInstImport  "GLSL.std.450"
167                              MemoryModel Logical GLSL450
168                              EntryPoint Geometry 4  "main" 20 29 34 40 45 50 57
169                              ExecutionMode 4 Triangles
170                              ExecutionMode 4 Invocations 1
171                              ExecutionMode 4 OutputLineStrip
172                              ExecutionMode 4 OutputVertices 4
173                              Source HLSL 500
174                              Name 4  "main"
175                              Name 12  "S"
176                              MemberName 12(S) 0  "clip0"
177                              MemberName 12(S) 1  "clip0"
178                              MemberName 12(S) 2  "cull0"
179                              MemberName 12(S) 3  "vpai"
180                              MemberName 12(S) 4  "rtai"
181                              MemberName 12(S) 5  "ii"
182                              Name 17  "@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;"
183                              Name 15  "VertexID"
184                              Name 16  "OutputStream"
185                              Name 20  "OutputStream.clip0"
186                              Name 21  "s"
187                              Name 29  "OutputStream.clip0"
188                              Name 34  "OutputStream.cull0"
189                              Name 40  "OutputStream.vpai"
190                              Name 45  "OutputStream.rtai"
191                              Name 50  "OutputStream.ii"
192                              Name 55  "VertexID"
193                              Name 57  "VertexID"
194                              Name 59  "OutputStream"
195                              Name 60  "param"
196                              Name 62  "param"
197                              Decorate 20(OutputStream.clip0) BuiltIn Position
198                              Decorate 29(OutputStream.clip0) BuiltIn ClipDistance
199                              Decorate 34(OutputStream.cull0) BuiltIn CullDistance
200                              Decorate 40(OutputStream.vpai) BuiltIn ViewportIndex
201                              Decorate 45(OutputStream.rtai) BuiltIn Layer
202                              Decorate 50(OutputStream.ii) Location 0
203                              Decorate 57(VertexID) Location 0
204               2:             TypeVoid
205               3:             TypeFunction 2
206               6:             TypeInt 32 0
207               7:      6(int) Constant 3
208               8:             TypeArray 6(int) 7
209               9:             TypePointer Function 8
210              10:             TypeFloat 32
211              11:             TypeInt 32 1
212           12(S):             TypeStruct 10(float) 10(float) 10(float) 6(int) 6(int) 11(int)
213              13:             TypePointer Function 12(S)
214              14:             TypeFunction 2 9(ptr) 13(ptr)
215              19:             TypePointer Output 10(float)
21620(OutputStream.clip0):     19(ptr) Variable Output
217              22:     11(int) Constant 0
218              23:             TypePointer Function 10(float)
219              26:      6(int) Constant 1
220              27:             TypeArray 10(float) 26
221              28:             TypePointer Output 27
22229(OutputStream.clip0):     28(ptr) Variable Output
223              30:     11(int) Constant 1
22434(OutputStream.cull0):     28(ptr) Variable Output
225              35:     11(int) Constant 2
226              39:             TypePointer Output 6(int)
22740(OutputStream.vpai):     39(ptr) Variable Output
228              41:     11(int) Constant 3
229              42:             TypePointer Function 6(int)
23045(OutputStream.rtai):     39(ptr) Variable Output
231              46:     11(int) Constant 4
232              49:             TypePointer Output 11(int)
23350(OutputStream.ii):     49(ptr) Variable Output
234              51:     11(int) Constant 5
235              52:             TypePointer Function 11(int)
236              56:             TypePointer Input 8
237    57(VertexID):     56(ptr) Variable Input
238         4(main):           2 Function None 3
239               5:             Label
240    55(VertexID):      9(ptr) Variable Function
24159(OutputStream):     13(ptr) Variable Function
242       60(param):      9(ptr) Variable Function
243       62(param):     13(ptr) Variable Function
244              58:           8 Load 57(VertexID)
245                              Store 55(VertexID) 58
246              61:           8 Load 55(VertexID)
247                              Store 60(param) 61
248              63:           2 FunctionCall 17(@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;) 60(param) 62(param)
249              64:       12(S) Load 62(param)
250                              Store 59(OutputStream) 64
251                              Return
252                              FunctionEnd
25317(@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;):           2 Function None 14
254    15(VertexID):      9(ptr) FunctionParameter
25516(OutputStream):     13(ptr) FunctionParameter
256              18:             Label
257           21(s):     13(ptr) Variable Function
258              24:     23(ptr) AccessChain 21(s) 22
259              25:   10(float) Load 24
260                              Store 20(OutputStream.clip0) 25
261              31:     23(ptr) AccessChain 21(s) 30
262              32:   10(float) Load 31
263              33:     19(ptr) AccessChain 29(OutputStream.clip0) 22
264                              Store 33 32
265              36:     23(ptr) AccessChain 21(s) 35
266              37:   10(float) Load 36
267              38:     19(ptr) AccessChain 34(OutputStream.cull0) 22
268                              Store 38 37
269              43:     42(ptr) AccessChain 21(s) 41
270              44:      6(int) Load 43
271                              Store 40(OutputStream.vpai) 44
272              47:     42(ptr) AccessChain 21(s) 46
273              48:      6(int) Load 47
274                              Store 45(OutputStream.rtai) 48
275              53:     52(ptr) AccessChain 21(s) 51
276              54:     11(int) Load 53
277                              Store 50(OutputStream.ii) 54
278                              EmitVertex
279                              Return
280                              FunctionEnd
281