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