1hlsl.emptystructreturn.vert
2Shader version: 500
30:? Sequence
40:10  Function Definition: @main(struct-vs_in1; ( temp structure{})
50:10    Function Parameters:
60:10      'i' ( in structure{})
70:?     Sequence
80:12      Branch: Return with expression
90:12        'o' ( temp structure{})
100:10  Function Definition: main( ( temp void)
110:10    Function Parameters:
120:?     Sequence
130:10      Sequence
140:10        move second child to first child ( temp structure{})
150:?           'i' ( temp structure{})
160:?           'i' ( in structure{})
170:10      Sequence
180:10        move second child to first child ( temp structure{})
190:?           '@entryPointOutput' ( out structure{})
200:10          Function Call: @main(struct-vs_in1; ( temp structure{})
210:?             'i' ( temp structure{})
220:?   Linker Objects
23
24
25Linked vertex stage:
26
27
28Shader version: 500
290:? Sequence
300:10  Function Definition: @main(struct-vs_in1; ( temp structure{})
310:10    Function Parameters:
320:10      'i' ( in structure{})
330:?     Sequence
340:12      Branch: Return with expression
350:12        'o' ( temp structure{})
360:10  Function Definition: main( ( temp void)
370:10    Function Parameters:
380:?     Sequence
390:10      Sequence
400:10        move second child to first child ( temp structure{})
410:?           'i' ( temp structure{})
420:?           'i' ( in structure{})
430:10      Sequence
440:10        move second child to first child ( temp structure{})
450:?           '@entryPointOutput' ( out structure{})
460:10          Function Call: @main(struct-vs_in1; ( temp structure{})
470:?             'i' ( temp structure{})
480:?   Linker Objects
49
50Validation failed
51// Module Version 10000
52// Generated by (magic number): 8000a
53// Id's are bound by 27
54
55                              Capability Shader
56               1:             ExtInstImport  "GLSL.std.450"
57                              MemoryModel Logical GLSL450
58                              EntryPoint Vertex 4  "main"
59                              Source HLSL 500
60                              Name 4  "main"
61                              Name 6  "vs_in"
62                              Name 8  "vs_out"
63                              Name 11  "@main(struct-vs_in1;"
64                              Name 10  "i"
65                              Name 14  "o"
66                              Name 18  "i"
67                              Name 20  "i"
68                              Name 23  "@entryPointOutput"
69                              Name 24  "param"
70               2:             TypeVoid
71               3:             TypeFunction 2
72        6(vs_in):             TypeStruct
73               7:             TypePointer Function 6(vs_in)
74       8(vs_out):             TypeStruct
75               9:             TypeFunction 8(vs_out) 7(ptr)
76              13:             TypePointer Function 8(vs_out)
77              19:             TypePointer Input 6(vs_in)
78           20(i):     19(ptr) Variable Input
79              22:             TypePointer Output 8(vs_out)
8023(@entryPointOutput):     22(ptr) Variable Output
81         4(main):           2 Function None 3
82               5:             Label
83           18(i):      7(ptr) Variable Function
84       24(param):      7(ptr) Variable Function
85              21:    6(vs_in) Load 20(i)
86                              Store 18(i) 21
87              25:    6(vs_in) Load 18(i)
88                              Store 24(param) 25
89              26:   8(vs_out) FunctionCall 11(@main(struct-vs_in1;) 24(param)
90                              Store 23(@entryPointOutput) 26
91                              Return
92                              FunctionEnd
9311(@main(struct-vs_in1;):   8(vs_out) Function None 9
94           10(i):      7(ptr) FunctionParameter
95              12:             Label
96           14(o):     13(ptr) Variable Function
97              15:   8(vs_out) Load 14(o)
98                              ReturnValue 15
99                              FunctionEnd
100