1hlsl.semantic-1.vert
2Shader version: 500
30:? Sequence
40:16  Function Definition: @main(vf4; ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
50:16    Function Parameters:
60:16      'v' ( in 4-component vector of float)
70:?     Sequence
80:18      move second child to first child ( temp 4-component vector of float)
90:18        pos: direct index for structure ( temp 4-component vector of float)
100:18          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
110:18          Constant:
120:18            0 (const int)
130:18        'v' ( in 4-component vector of float)
140:19      move second child to first child ( temp 2-component vector of float)
150:19        UV0: direct index for structure ( temp 2-component vector of float)
160:19          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
170:19          Constant:
180:19            1 (const int)
190:?         Construct vec2 ( temp 2-component vector of float)
200:19          direct index ( temp float)
210:19            'v' ( in 4-component vector of float)
220:19            Constant:
230:19              0 (const int)
240:19          direct index ( temp float)
250:19            'v' ( in 4-component vector of float)
260:19            Constant:
270:19              0 (const int)
280:20      move second child to first child ( temp 2-component vector of float)
290:20        UV1: direct index for structure ( temp 2-component vector of float)
300:20          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
310:20          Constant:
320:20            2 (const int)
330:?         Construct vec2 ( temp 2-component vector of float)
340:20          direct index ( temp float)
350:20            'v' ( in 4-component vector of float)
360:20            Constant:
370:20              1 (const int)
380:20          direct index ( temp float)
390:20            'v' ( in 4-component vector of float)
400:20            Constant:
410:20              1 (const int)
420:21      move second child to first child ( temp 2-component vector of float)
430:21        UV2: direct index for structure ( temp 2-component vector of float)
440:21          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
450:21          Constant:
460:21            3 (const int)
470:?         Construct vec2 ( temp 2-component vector of float)
480:21          direct index ( temp float)
490:21            'v' ( in 4-component vector of float)
500:21            Constant:
510:21              2 (const int)
520:21          direct index ( temp float)
530:21            'v' ( in 4-component vector of float)
540:21            Constant:
550:21              2 (const int)
560:22      move second child to first child ( temp 2-component vector of float)
570:22        UV3: direct index for structure ( temp 2-component vector of float)
580:22          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
590:22          Constant:
600:22            4 (const int)
610:?         Construct vec2 ( temp 2-component vector of float)
620:22          direct index ( temp float)
630:22            'v' ( in 4-component vector of float)
640:22            Constant:
650:22              3 (const int)
660:22          direct index ( temp float)
670:22            'v' ( in 4-component vector of float)
680:22            Constant:
690:22              3 (const int)
700:23      Branch: Return with expression
710:23        's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
720:16  Function Definition: main( ( temp void)
730:16    Function Parameters:
740:?     Sequence
750:16      move second child to first child ( temp 4-component vector of float)
760:?         'v' ( temp 4-component vector of float)
770:?         'v' (layout( location=0) in 4-component vector of float)
780:16      Sequence
790:16        move second child to first child ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
800:16          'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
810:16          Function Call: @main(vf4; ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
820:?             'v' ( temp 4-component vector of float)
830:16        move second child to first child ( temp 4-component vector of float)
840:?           '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
850:16          pos: direct index for structure ( temp 4-component vector of float)
860:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
870:16            Constant:
880:16              0 (const int)
890:16        move second child to first child ( temp 2-component vector of float)
900:?           '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
910:16          UV0: direct index for structure ( temp 2-component vector of float)
920:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
930:16            Constant:
940:16              1 (const int)
950:16        move second child to first child ( temp 2-component vector of float)
960:?           '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
970:16          UV1: direct index for structure ( temp 2-component vector of float)
980:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
990:16            Constant:
1000:16              2 (const int)
1010:16        move second child to first child ( temp 2-component vector of float)
1020:?           '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
1030:16          UV2: direct index for structure ( temp 2-component vector of float)
1040:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1050:16            Constant:
1060:16              3 (const int)
1070:16        move second child to first child ( temp 2-component vector of float)
1080:?           '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
1090:16          UV3: direct index for structure ( temp 2-component vector of float)
1100:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1110:16            Constant:
1120:16              4 (const int)
1130:?   Linker Objects
1140:?     '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
1150:?     '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
1160:?     '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
1170:?     '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
1180:?     '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
1190:?     'v' (layout( location=0) in 4-component vector of float)
120
121
122Linked vertex stage:
123
124
125Shader version: 500
1260:? Sequence
1270:16  Function Definition: @main(vf4; ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1280:16    Function Parameters:
1290:16      'v' ( in 4-component vector of float)
1300:?     Sequence
1310:18      move second child to first child ( temp 4-component vector of float)
1320:18        pos: direct index for structure ( temp 4-component vector of float)
1330:18          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1340:18          Constant:
1350:18            0 (const int)
1360:18        'v' ( in 4-component vector of float)
1370:19      move second child to first child ( temp 2-component vector of float)
1380:19        UV0: direct index for structure ( temp 2-component vector of float)
1390:19          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1400:19          Constant:
1410:19            1 (const int)
1420:?         Construct vec2 ( temp 2-component vector of float)
1430:19          direct index ( temp float)
1440:19            'v' ( in 4-component vector of float)
1450:19            Constant:
1460:19              0 (const int)
1470:19          direct index ( temp float)
1480:19            'v' ( in 4-component vector of float)
1490:19            Constant:
1500:19              0 (const int)
1510:20      move second child to first child ( temp 2-component vector of float)
1520:20        UV1: direct index for structure ( temp 2-component vector of float)
1530:20          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1540:20          Constant:
1550:20            2 (const int)
1560:?         Construct vec2 ( temp 2-component vector of float)
1570:20          direct index ( temp float)
1580:20            'v' ( in 4-component vector of float)
1590:20            Constant:
1600:20              1 (const int)
1610:20          direct index ( temp float)
1620:20            'v' ( in 4-component vector of float)
1630:20            Constant:
1640:20              1 (const int)
1650:21      move second child to first child ( temp 2-component vector of float)
1660:21        UV2: direct index for structure ( temp 2-component vector of float)
1670:21          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1680:21          Constant:
1690:21            3 (const int)
1700:?         Construct vec2 ( temp 2-component vector of float)
1710:21          direct index ( temp float)
1720:21            'v' ( in 4-component vector of float)
1730:21            Constant:
1740:21              2 (const int)
1750:21          direct index ( temp float)
1760:21            'v' ( in 4-component vector of float)
1770:21            Constant:
1780:21              2 (const int)
1790:22      move second child to first child ( temp 2-component vector of float)
1800:22        UV3: direct index for structure ( temp 2-component vector of float)
1810:22          's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1820:22          Constant:
1830:22            4 (const int)
1840:?         Construct vec2 ( temp 2-component vector of float)
1850:22          direct index ( temp float)
1860:22            'v' ( in 4-component vector of float)
1870:22            Constant:
1880:22              3 (const int)
1890:22          direct index ( temp float)
1900:22            'v' ( in 4-component vector of float)
1910:22            Constant:
1920:22              3 (const int)
1930:23      Branch: Return with expression
1940:23        's' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
1950:16  Function Definition: main( ( temp void)
1960:16    Function Parameters:
1970:?     Sequence
1980:16      move second child to first child ( temp 4-component vector of float)
1990:?         'v' ( temp 4-component vector of float)
2000:?         'v' (layout( location=0) in 4-component vector of float)
2010:16      Sequence
2020:16        move second child to first child ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2030:16          'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2040:16          Function Call: @main(vf4; ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2050:?             'v' ( temp 4-component vector of float)
2060:16        move second child to first child ( temp 4-component vector of float)
2070:?           '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
2080:16          pos: direct index for structure ( temp 4-component vector of float)
2090:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2100:16            Constant:
2110:16              0 (const int)
2120:16        move second child to first child ( temp 2-component vector of float)
2130:?           '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
2140:16          UV0: direct index for structure ( temp 2-component vector of float)
2150:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2160:16            Constant:
2170:16              1 (const int)
2180:16        move second child to first child ( temp 2-component vector of float)
2190:?           '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
2200:16          UV1: direct index for structure ( temp 2-component vector of float)
2210:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2220:16            Constant:
2230:16              2 (const int)
2240:16        move second child to first child ( temp 2-component vector of float)
2250:?           '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
2260:16          UV2: direct index for structure ( temp 2-component vector of float)
2270:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2280:16            Constant:
2290:16              3 (const int)
2300:16        move second child to first child ( temp 2-component vector of float)
2310:?           '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
2320:16          UV3: direct index for structure ( temp 2-component vector of float)
2330:16            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float UV0,  temp 2-component vector of float UV1,  temp 2-component vector of float UV2,  temp 2-component vector of float UV3})
2340:16            Constant:
2350:16              4 (const int)
2360:?   Linker Objects
2370:?     '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
2380:?     '@entryPointOutput.UV0' (layout( location=1) out 2-component vector of float)
2390:?     '@entryPointOutput.UV1' (layout( location=2) out 2-component vector of float)
2400:?     '@entryPointOutput.UV2' (layout( location=3) out 2-component vector of float)
2410:?     '@entryPointOutput.UV3' (layout( location=4) out 2-component vector of float)
2420:?     'v' (layout( location=0) in 4-component vector of float)
243
244// Module Version 10000
245// Generated by (magic number): 80007
246// Id's are bound by 84
247
248                              Capability Shader
249               1:             ExtInstImport  "GLSL.std.450"
250                              MemoryModel Logical GLSL450
251                              EntryPoint Vertex 4  "main" 61 68 72 75 78 81
252                              Source HLSL 500
253                              Name 4  "main"
254                              Name 10  "S"
255                              MemberName 10(S) 0  "pos"
256                              MemberName 10(S) 1  "UV0"
257                              MemberName 10(S) 2  "UV1"
258                              MemberName 10(S) 3  "UV2"
259                              MemberName 10(S) 4  "UV3"
260                              Name 13  "@main(vf4;"
261                              Name 12  "v"
262                              Name 16  "s"
263                              Name 59  "v"
264                              Name 61  "v"
265                              Name 63  "flattenTemp"
266                              Name 64  "param"
267                              Name 68  "@entryPointOutput.pos"
268                              Name 72  "@entryPointOutput.UV0"
269                              Name 75  "@entryPointOutput.UV1"
270                              Name 78  "@entryPointOutput.UV2"
271                              Name 81  "@entryPointOutput.UV3"
272                              Decorate 61(v) Location 0
273                              Decorate 68(@entryPointOutput.pos) Location 0
274                              Decorate 72(@entryPointOutput.UV0) Location 1
275                              Decorate 75(@entryPointOutput.UV1) Location 2
276                              Decorate 78(@entryPointOutput.UV2) Location 3
277                              Decorate 81(@entryPointOutput.UV3) Location 4
278               2:             TypeVoid
279               3:             TypeFunction 2
280               6:             TypeFloat 32
281               7:             TypeVector 6(float) 4
282               8:             TypePointer Function 7(fvec4)
283               9:             TypeVector 6(float) 2
284           10(S):             TypeStruct 7(fvec4) 9(fvec2) 9(fvec2) 9(fvec2) 9(fvec2)
285              11:             TypeFunction 10(S) 8(ptr)
286              15:             TypePointer Function 10(S)
287              17:             TypeInt 32 1
288              18:     17(int) Constant 0
289              21:     17(int) Constant 1
290              22:             TypeInt 32 0
291              23:     22(int) Constant 0
292              24:             TypePointer Function 6(float)
293              30:             TypePointer Function 9(fvec2)
294              32:     17(int) Constant 2
295              33:     22(int) Constant 1
296              40:     17(int) Constant 3
297              41:     22(int) Constant 2
298              48:     17(int) Constant 4
299              49:     22(int) Constant 3
300              60:             TypePointer Input 7(fvec4)
301           61(v):     60(ptr) Variable Input
302              67:             TypePointer Output 7(fvec4)
30368(@entryPointOutput.pos):     67(ptr) Variable Output
304              71:             TypePointer Output 9(fvec2)
30572(@entryPointOutput.UV0):     71(ptr) Variable Output
30675(@entryPointOutput.UV1):     71(ptr) Variable Output
30778(@entryPointOutput.UV2):     71(ptr) Variable Output
30881(@entryPointOutput.UV3):     71(ptr) Variable Output
309         4(main):           2 Function None 3
310               5:             Label
311           59(v):      8(ptr) Variable Function
312 63(flattenTemp):     15(ptr) Variable Function
313       64(param):      8(ptr) Variable Function
314              62:    7(fvec4) Load 61(v)
315                              Store 59(v) 62
316              65:    7(fvec4) Load 59(v)
317                              Store 64(param) 65
318              66:       10(S) FunctionCall 13(@main(vf4;) 64(param)
319                              Store 63(flattenTemp) 66
320              69:      8(ptr) AccessChain 63(flattenTemp) 18
321              70:    7(fvec4) Load 69
322                              Store 68(@entryPointOutput.pos) 70
323              73:     30(ptr) AccessChain 63(flattenTemp) 21
324              74:    9(fvec2) Load 73
325                              Store 72(@entryPointOutput.UV0) 74
326              76:     30(ptr) AccessChain 63(flattenTemp) 32
327              77:    9(fvec2) Load 76
328                              Store 75(@entryPointOutput.UV1) 77
329              79:     30(ptr) AccessChain 63(flattenTemp) 40
330              80:    9(fvec2) Load 79
331                              Store 78(@entryPointOutput.UV2) 80
332              82:     30(ptr) AccessChain 63(flattenTemp) 48
333              83:    9(fvec2) Load 82
334                              Store 81(@entryPointOutput.UV3) 83
335                              Return
336                              FunctionEnd
337  13(@main(vf4;):       10(S) Function None 11
338           12(v):      8(ptr) FunctionParameter
339              14:             Label
340           16(s):     15(ptr) Variable Function
341              19:    7(fvec4) Load 12(v)
342              20:      8(ptr) AccessChain 16(s) 18
343                              Store 20 19
344              25:     24(ptr) AccessChain 12(v) 23
345              26:    6(float) Load 25
346              27:     24(ptr) AccessChain 12(v) 23
347              28:    6(float) Load 27
348              29:    9(fvec2) CompositeConstruct 26 28
349              31:     30(ptr) AccessChain 16(s) 21
350                              Store 31 29
351              34:     24(ptr) AccessChain 12(v) 33
352              35:    6(float) Load 34
353              36:     24(ptr) AccessChain 12(v) 33
354              37:    6(float) Load 36
355              38:    9(fvec2) CompositeConstruct 35 37
356              39:     30(ptr) AccessChain 16(s) 32
357                              Store 39 38
358              42:     24(ptr) AccessChain 12(v) 41
359              43:    6(float) Load 42
360              44:     24(ptr) AccessChain 12(v) 41
361              45:    6(float) Load 44
362              46:    9(fvec2) CompositeConstruct 43 45
363              47:     30(ptr) AccessChain 16(s) 40
364                              Store 47 46
365              50:     24(ptr) AccessChain 12(v) 49
366              51:    6(float) Load 50
367              52:     24(ptr) AccessChain 12(v) 49
368              53:    6(float) Load 52
369              54:    9(fvec2) CompositeConstruct 51 53
370              55:     30(ptr) AccessChain 16(s) 48
371                              Store 55 54
372              56:       10(S) Load 16(s)
373                              ReturnValue 56
374                              FunctionEnd
375