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