1hlsl.clipdistance-4.vert
2Shader version: 500
30:? Sequence
40:11  Function Definition: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
50:11    Function Parameters:
60:11      'v' ( const (read only) structure{ temp 4-component vector of float Position})
70:?     Sequence
80:13      move second child to first child ( temp 4-component vector of float)
90:13        Position: direct index for structure ( temp 4-component vector of float)
100:13          'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
110:13          Constant:
120:13            0 (const int)
130:13        Constant:
140:13          0.000000
150:13          0.000000
160:13          0.000000
170:13          0.000000
180:15      move second child to first child ( temp float)
190:15        direct index ( temp float)
200:15          ClipRect: direct index for structure ( temp 4-component vector of float)
210:15            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
220:15            Constant:
230:15              1 (const int)
240:15          Constant:
250:15            0 (const int)
260:15        Constant:
270:15          1.000000
280:16      move second child to first child ( temp float)
290:16        direct index ( temp float)
300:16          ClipRect: direct index for structure ( temp 4-component vector of float)
310:16            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
320:16            Constant:
330:16              1 (const int)
340:16          Constant:
350:16            1 (const int)
360:16        Constant:
370:16          2.000000
380:17      move second child to first child ( temp float)
390:17        direct index ( temp float)
400:17          ClipRect: direct index for structure ( temp 4-component vector of float)
410:17            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
420:17            Constant:
430:17              1 (const int)
440:17          Constant:
450:17            2 (const int)
460:17        Constant:
470:17          3.000000
480:18      move second child to first child ( temp float)
490:18        direct index ( temp float)
500:18          ClipRect: direct index for structure ( temp 4-component vector of float)
510:18            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
520:18            Constant:
530:18              1 (const int)
540:18          Constant:
550:18            3 (const int)
560:18        Constant:
570:18          4.000000
580:20      Branch: Return with expression
590:20        'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
600:11  Function Definition: main( ( temp void)
610:11    Function Parameters:
620:?     Sequence
630:11      Sequence
640:11        move second child to first child ( temp 4-component vector of float)
650:11          Position: direct index for structure ( temp 4-component vector of float)
660:?             'v' ( temp structure{ temp 4-component vector of float Position})
670:11            Constant:
680:11              0 (const int)
690:?           'v.Position' (layout( location=0) in 4-component vector of float)
700:11      Sequence
710:11        move second child to first child ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
720:11          'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
730:11          Function Call: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
740:?             'v' ( temp structure{ temp 4-component vector of float Position})
750:11        move second child to first child ( temp 4-component vector of float)
760:?           '@entryPointOutput.Position' ( out 4-component vector of float Position)
770:11          Position: direct index for structure ( temp 4-component vector of float)
780:11            'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
790:11            Constant:
800:11              0 (const int)
810:?         Sequence
820:11          move second child to first child ( temp float)
830:11            direct index ( out float ClipDistance)
840:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
850:11              Constant:
860:11                0 (const int)
870:11            direct index ( temp float)
880:11              ClipRect: direct index for structure ( temp 4-component vector of float)
890:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
900:11                Constant:
910:11                  1 (const int)
920:11              Constant:
930:11                0 (const int)
940:11          move second child to first child ( temp float)
950:11            direct index ( out float ClipDistance)
960:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
970:11              Constant:
980:11                1 (const int)
990:11            direct index ( temp float)
1000:11              ClipRect: direct index for structure ( temp 4-component vector of float)
1010:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1020:11                Constant:
1030:11                  1 (const int)
1040:11              Constant:
1050:11                1 (const int)
1060:11          move second child to first child ( temp float)
1070:11            direct index ( out float ClipDistance)
1080:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
1090:11              Constant:
1100:11                2 (const int)
1110:11            direct index ( temp float)
1120:11              ClipRect: direct index for structure ( temp 4-component vector of float)
1130:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1140:11                Constant:
1150:11                  1 (const int)
1160:11              Constant:
1170:11                2 (const int)
1180:11          move second child to first child ( temp float)
1190:11            direct index ( out float ClipDistance)
1200:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
1210:11              Constant:
1220:11                3 (const int)
1230:11            direct index ( temp float)
1240:11              ClipRect: direct index for structure ( temp 4-component vector of float)
1250:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1260:11                Constant:
1270:11                  1 (const int)
1280:11              Constant:
1290:11                3 (const int)
1300:?   Linker Objects
1310:?     '@entryPointOutput.Position' ( out 4-component vector of float Position)
1320:?     'v.Position' (layout( location=0) in 4-component vector of float)
1330:?     '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
134
135
136Linked vertex stage:
137
138
139Shader version: 500
1400:? Sequence
1410:11  Function Definition: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1420:11    Function Parameters:
1430:11      'v' ( const (read only) structure{ temp 4-component vector of float Position})
1440:?     Sequence
1450:13      move second child to first child ( temp 4-component vector of float)
1460:13        Position: direct index for structure ( temp 4-component vector of float)
1470:13          'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1480:13          Constant:
1490:13            0 (const int)
1500:13        Constant:
1510:13          0.000000
1520:13          0.000000
1530:13          0.000000
1540:13          0.000000
1550:15      move second child to first child ( temp float)
1560:15        direct index ( temp float)
1570:15          ClipRect: direct index for structure ( temp 4-component vector of float)
1580:15            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1590:15            Constant:
1600:15              1 (const int)
1610:15          Constant:
1620:15            0 (const int)
1630:15        Constant:
1640:15          1.000000
1650:16      move second child to first child ( temp float)
1660:16        direct index ( temp float)
1670:16          ClipRect: direct index for structure ( temp 4-component vector of float)
1680:16            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1690:16            Constant:
1700:16              1 (const int)
1710:16          Constant:
1720:16            1 (const int)
1730:16        Constant:
1740:16          2.000000
1750:17      move second child to first child ( temp float)
1760:17        direct index ( temp float)
1770:17          ClipRect: direct index for structure ( temp 4-component vector of float)
1780:17            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1790:17            Constant:
1800:17              1 (const int)
1810:17          Constant:
1820:17            2 (const int)
1830:17        Constant:
1840:17          3.000000
1850:18      move second child to first child ( temp float)
1860:18        direct index ( temp float)
1870:18          ClipRect: direct index for structure ( temp 4-component vector of float)
1880:18            'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1890:18            Constant:
1900:18              1 (const int)
1910:18          Constant:
1920:18            3 (const int)
1930:18        Constant:
1940:18          4.000000
1950:20      Branch: Return with expression
1960:20        'Output' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
1970:11  Function Definition: main( ( temp void)
1980:11    Function Parameters:
1990:?     Sequence
2000:11      Sequence
2010:11        move second child to first child ( temp 4-component vector of float)
2020:11          Position: direct index for structure ( temp 4-component vector of float)
2030:?             'v' ( temp structure{ temp 4-component vector of float Position})
2040:11            Constant:
2050:11              0 (const int)
2060:?           'v.Position' (layout( location=0) in 4-component vector of float)
2070:11      Sequence
2080:11        move second child to first child ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2090:11          'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2100:11          Function Call: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2110:?             'v' ( temp structure{ temp 4-component vector of float Position})
2120:11        move second child to first child ( temp 4-component vector of float)
2130:?           '@entryPointOutput.Position' ( out 4-component vector of float Position)
2140:11          Position: direct index for structure ( temp 4-component vector of float)
2150:11            'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2160:11            Constant:
2170:11              0 (const int)
2180:?         Sequence
2190:11          move second child to first child ( temp float)
2200:11            direct index ( out float ClipDistance)
2210:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
2220:11              Constant:
2230:11                0 (const int)
2240:11            direct index ( temp float)
2250:11              ClipRect: direct index for structure ( temp 4-component vector of float)
2260:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2270:11                Constant:
2280:11                  1 (const int)
2290:11              Constant:
2300:11                0 (const int)
2310:11          move second child to first child ( temp float)
2320:11            direct index ( out float ClipDistance)
2330:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
2340:11              Constant:
2350:11                1 (const int)
2360:11            direct index ( temp float)
2370:11              ClipRect: direct index for structure ( temp 4-component vector of float)
2380:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2390:11                Constant:
2400:11                  1 (const int)
2410:11              Constant:
2420:11                1 (const int)
2430:11          move second child to first child ( temp float)
2440:11            direct index ( out float ClipDistance)
2450:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
2460:11              Constant:
2470:11                2 (const int)
2480:11            direct index ( temp float)
2490:11              ClipRect: direct index for structure ( temp 4-component vector of float)
2500:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2510:11                Constant:
2520:11                  1 (const int)
2530:11              Constant:
2540:11                2 (const int)
2550:11          move second child to first child ( temp float)
2560:11            direct index ( out float ClipDistance)
2570:?               '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
2580:11              Constant:
2590:11                3 (const int)
2600:11            direct index ( temp float)
2610:11              ClipRect: direct index for structure ( temp 4-component vector of float)
2620:11                'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 4-component vector of float ClipRect})
2630:11                Constant:
2640:11                  1 (const int)
2650:11              Constant:
2660:11                3 (const int)
2670:?   Linker Objects
2680:?     '@entryPointOutput.Position' ( out 4-component vector of float Position)
2690:?     'v.Position' (layout( location=0) in 4-component vector of float)
2700:?     '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance)
271
272// Module Version 10000
273// Generated by (magic number): 80007
274// Id's are bound by 72
275
276                              Capability Shader
277                              Capability ClipDistance
278               1:             ExtInstImport  "GLSL.std.450"
279                              MemoryModel Logical GLSL450
280                              EntryPoint Vertex 4  "main" 43 50 56
281                              Source HLSL 500
282                              Name 4  "main"
283                              Name 8  "VS_INPUT"
284                              MemberName 8(VS_INPUT) 0  "Position"
285                              Name 9  "VS_OUTPUT"
286                              MemberName 9(VS_OUTPUT) 0  "Position"
287                              MemberName 9(VS_OUTPUT) 1  "ClipRect"
288                              Name 12  "@main(struct-VS_INPUT-vf41;"
289                              Name 11  "v"
290                              Name 15  "Output"
291                              Name 41  "v"
292                              Name 43  "v.Position"
293                              Name 46  "flattenTemp"
294                              Name 50  "@entryPointOutput.Position"
295                              Name 56  "@entryPointOutput.ClipRect"
296                              Decorate 43(v.Position) Location 0
297                              Decorate 50(@entryPointOutput.Position) BuiltIn Position
298                              Decorate 56(@entryPointOutput.ClipRect) BuiltIn ClipDistance
299               2:             TypeVoid
300               3:             TypeFunction 2
301               6:             TypeFloat 32
302               7:             TypeVector 6(float) 4
303     8(VS_INPUT):             TypeStruct 7(fvec4)
304    9(VS_OUTPUT):             TypeStruct 7(fvec4) 7(fvec4)
305              10:             TypeFunction 9(VS_OUTPUT) 8(VS_INPUT)
306              14:             TypePointer Function 9(VS_OUTPUT)
307              16:             TypeInt 32 1
308              17:     16(int) Constant 0
309              18:    6(float) Constant 0
310              19:    7(fvec4) ConstantComposite 18 18 18 18
311              20:             TypePointer Function 7(fvec4)
312              22:     16(int) Constant 1
313              23:    6(float) Constant 1065353216
314              24:             TypeInt 32 0
315              25:     24(int) Constant 0
316              26:             TypePointer Function 6(float)
317              28:    6(float) Constant 1073741824
318              29:     24(int) Constant 1
319              31:    6(float) Constant 1077936128
320              32:     24(int) Constant 2
321              34:    6(float) Constant 1082130432
322              35:     24(int) Constant 3
323              40:             TypePointer Function 8(VS_INPUT)
324              42:             TypePointer Input 7(fvec4)
325  43(v.Position):     42(ptr) Variable Input
326              49:             TypePointer Output 7(fvec4)
32750(@entryPointOutput.Position):     49(ptr) Variable Output
328              53:     24(int) Constant 4
329              54:             TypeArray 6(float) 53
330              55:             TypePointer Output 54
33156(@entryPointOutput.ClipRect):     55(ptr) Variable Output
332              59:             TypePointer Output 6(float)
333              64:     16(int) Constant 2
334              68:     16(int) Constant 3
335         4(main):           2 Function None 3
336               5:             Label
337           41(v):     40(ptr) Variable Function
338 46(flattenTemp):     14(ptr) Variable Function
339              44:    7(fvec4) Load 43(v.Position)
340              45:     20(ptr) AccessChain 41(v) 17
341                              Store 45 44
342              47: 8(VS_INPUT) Load 41(v)
343              48:9(VS_OUTPUT) FunctionCall 12(@main(struct-VS_INPUT-vf41;) 47
344                              Store 46(flattenTemp) 48
345              51:     20(ptr) AccessChain 46(flattenTemp) 17
346              52:    7(fvec4) Load 51
347                              Store 50(@entryPointOutput.Position) 52
348              57:     26(ptr) AccessChain 46(flattenTemp) 22 25
349              58:    6(float) Load 57
350              60:     59(ptr) AccessChain 56(@entryPointOutput.ClipRect) 17
351                              Store 60 58
352              61:     26(ptr) AccessChain 46(flattenTemp) 22 29
353              62:    6(float) Load 61
354              63:     59(ptr) AccessChain 56(@entryPointOutput.ClipRect) 22
355                              Store 63 62
356              65:     26(ptr) AccessChain 46(flattenTemp) 22 32
357              66:    6(float) Load 65
358              67:     59(ptr) AccessChain 56(@entryPointOutput.ClipRect) 64
359                              Store 67 66
360              69:     26(ptr) AccessChain 46(flattenTemp) 22 35
361              70:    6(float) Load 69
362              71:     59(ptr) AccessChain 56(@entryPointOutput.ClipRect) 68
363                              Store 71 70
364                              Return
365                              FunctionEnd
36612(@main(struct-VS_INPUT-vf41;):9(VS_OUTPUT) Function None 10
367           11(v): 8(VS_INPUT) FunctionParameter
368              13:             Label
369      15(Output):     14(ptr) Variable Function
370              21:     20(ptr) AccessChain 15(Output) 17
371                              Store 21 19
372              27:     26(ptr) AccessChain 15(Output) 22 25
373                              Store 27 23
374              30:     26(ptr) AccessChain 15(Output) 22 29
375                              Store 30 28
376              33:     26(ptr) AccessChain 15(Output) 22 32
377                              Store 33 31
378              36:     26(ptr) AccessChain 15(Output) 22 35
379                              Store 36 34
380              37:9(VS_OUTPUT) Load 15(Output)
381                              ReturnValue 37
382                              FunctionEnd
383