1hlsl.clipdistance-8.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:8  Function Definition: @main(struct-VS_OUTPUT-vf4-vf3-f11; ( temp 4-component vector of float)
60:8    Function Parameters:
70:8      'v' ( in structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp 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 3-component vector of float clip0,  temp float clip1})
140:9              Constant:
150:9                0 (const int)
160:9            direct index ( temp float)
170:9              clip0: direct index for structure ( temp 3-component vector of float)
180:9                'v' ( in structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
190:9                Constant:
200:9                  1 (const int)
210:9              Constant:
220:9                0 (const int)
230:9          clip1: direct index for structure ( temp float)
240:9            'v' ( in structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
250:9            Constant:
260:9              2 (const int)
270:8  Function Definition: main( ( temp void)
280:8    Function Parameters:
290:?     Sequence
300:8      Sequence
310:8        move second child to first child ( temp 4-component vector of float)
320:8          Position: direct index for structure ( temp 4-component vector of float)
330:?             'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
340:8            Constant:
350:8              0 (const int)
360:?           'v.Position' ( in 4-component vector of float FragCoord)
370:?         Sequence
380:8          move second child to first child ( temp float)
390:8            direct index ( temp float)
400:8              clip0: direct index for structure ( temp 3-component vector of float)
410:?                 'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
420:8                Constant:
430:8                  1 (const int)
440:8              Constant:
450:8                0 (const int)
460:8            direct index ( in float ClipDistance)
470:?               'v.clip1' ( in 4-element array of float ClipDistance)
480:8              Constant:
490:8                0 (const int)
500:8          move second child to first child ( temp float)
510:8            direct index ( temp float)
520:8              clip0: direct index for structure ( temp 3-component vector of float)
530:?                 'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
540:8                Constant:
550:8                  1 (const int)
560:8              Constant:
570:8                1 (const int)
580:8            direct index ( in float ClipDistance)
590:?               'v.clip1' ( in 4-element array of float ClipDistance)
600:8              Constant:
610:8                1 (const int)
620:8          move second child to first child ( temp float)
630:8            direct index ( temp float)
640:8              clip0: direct index for structure ( temp 3-component vector of float)
650:?                 'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
660:8                Constant:
670:8                  1 (const int)
680:8              Constant:
690:8                2 (const int)
700:8            direct index ( in float ClipDistance)
710:?               'v.clip1' ( in 4-element array of float ClipDistance)
720:8              Constant:
730:8                2 (const int)
740:?         Sequence
750:8          move second child to first child ( temp float)
760:8            clip1: direct index for structure ( temp float)
770:?               'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
780:8              Constant:
790:8                2 (const int)
800:8            direct index ( in float ClipDistance)
810:?               'v.clip1' ( in 4-element array of float ClipDistance)
820:8              Constant:
830:8                3 (const int)
840:8      move second child to first child ( temp 4-component vector of float)
850:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
860:8        Function Call: @main(struct-VS_OUTPUT-vf4-vf3-f11; ( temp 4-component vector of float)
870:?           'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
880:?   Linker Objects
890:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
900:?     'v.Position' ( in 4-component vector of float FragCoord)
910:?     'v.clip1' ( in 4-element array of float ClipDistance)
92
93
94Linked fragment stage:
95
96
97Shader version: 500
98gl_FragCoord origin is upper left
990:? Sequence
1000:8  Function Definition: @main(struct-VS_OUTPUT-vf4-vf3-f11; ( temp 4-component vector of float)
1010:8    Function Parameters:
1020:8      'v' ( in structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1030:?     Sequence
1040:9      Branch: Return with expression
1050:9        add ( temp 4-component vector of float)
1060:9          add ( temp 4-component vector of float)
1070:9            Position: direct index for structure ( temp 4-component vector of float)
1080:9              'v' ( in structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1090:9              Constant:
1100:9                0 (const int)
1110:9            direct index ( temp float)
1120:9              clip0: direct index for structure ( temp 3-component vector of float)
1130:9                'v' ( in structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1140:9                Constant:
1150:9                  1 (const int)
1160:9              Constant:
1170:9                0 (const int)
1180:9          clip1: direct index for structure ( temp float)
1190:9            'v' ( in structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1200:9            Constant:
1210:9              2 (const int)
1220:8  Function Definition: main( ( temp void)
1230:8    Function Parameters:
1240:?     Sequence
1250:8      Sequence
1260:8        move second child to first child ( temp 4-component vector of float)
1270:8          Position: direct index for structure ( temp 4-component vector of float)
1280:?             'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1290:8            Constant:
1300:8              0 (const int)
1310:?           'v.Position' ( in 4-component vector of float FragCoord)
1320:?         Sequence
1330:8          move second child to first child ( temp float)
1340:8            direct index ( temp float)
1350:8              clip0: direct index for structure ( temp 3-component vector of float)
1360:?                 'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1370:8                Constant:
1380:8                  1 (const int)
1390:8              Constant:
1400:8                0 (const int)
1410:8            direct index ( in float ClipDistance)
1420:?               'v.clip1' ( in 4-element array of float ClipDistance)
1430:8              Constant:
1440:8                0 (const int)
1450:8          move second child to first child ( temp float)
1460:8            direct index ( temp float)
1470:8              clip0: direct index for structure ( temp 3-component vector of float)
1480:?                 'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1490:8                Constant:
1500:8                  1 (const int)
1510:8              Constant:
1520:8                1 (const int)
1530:8            direct index ( in float ClipDistance)
1540:?               'v.clip1' ( in 4-element array of float ClipDistance)
1550:8              Constant:
1560:8                1 (const int)
1570:8          move second child to first child ( temp float)
1580:8            direct index ( temp float)
1590:8              clip0: direct index for structure ( temp 3-component vector of float)
1600:?                 'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1610:8                Constant:
1620:8                  1 (const int)
1630:8              Constant:
1640:8                2 (const int)
1650:8            direct index ( in float ClipDistance)
1660:?               'v.clip1' ( in 4-element array of float ClipDistance)
1670:8              Constant:
1680:8                2 (const int)
1690:?         Sequence
1700:8          move second child to first child ( temp float)
1710:8            clip1: direct index for structure ( temp float)
1720:?               'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1730:8              Constant:
1740:8                2 (const int)
1750:8            direct index ( in float ClipDistance)
1760:?               'v.clip1' ( in 4-element array of float ClipDistance)
1770:8              Constant:
1780:8                3 (const int)
1790:8      move second child to first child ( temp 4-component vector of float)
1800:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1810:8        Function Call: @main(struct-VS_OUTPUT-vf4-vf3-f11; ( temp 4-component vector of float)
1820:?           'v' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float clip0,  temp float clip1})
1830:?   Linker Objects
1840:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1850:?     'v.Position' ( in 4-component vector of float FragCoord)
1860:?     'v.clip1' ( in 4-element array of float ClipDistance)
187
188// Module Version 10000
189// Generated by (magic number): 80007
190// Id's are bound by 65
191
192                              Capability Shader
193                              Capability ClipDistance
194               1:             ExtInstImport  "GLSL.std.450"
195                              MemoryModel Logical GLSL450
196                              EntryPoint Fragment 4  "main" 37 43 61
197                              ExecutionMode 4 OriginUpperLeft
198                              Source HLSL 500
199                              Name 4  "main"
200                              Name 9  "VS_OUTPUT"
201                              MemberName 9(VS_OUTPUT) 0  "Position"
202                              MemberName 9(VS_OUTPUT) 1  "clip0"
203                              MemberName 9(VS_OUTPUT) 2  "clip1"
204                              Name 13  "@main(struct-VS_OUTPUT-vf4-vf3-f11;"
205                              Name 12  "v"
206                              Name 35  "v"
207                              Name 37  "v.Position"
208                              Name 43  "v.clip1"
209                              Name 61  "@entryPointOutput"
210                              Name 62  "param"
211                              Decorate 37(v.Position) BuiltIn FragCoord
212                              Decorate 43(v.clip1) BuiltIn ClipDistance
213                              Decorate 61(@entryPointOutput) Location 0
214               2:             TypeVoid
215               3:             TypeFunction 2
216               6:             TypeFloat 32
217               7:             TypeVector 6(float) 4
218               8:             TypeVector 6(float) 3
219    9(VS_OUTPUT):             TypeStruct 7(fvec4) 8(fvec3) 6(float)
220              10:             TypePointer Function 9(VS_OUTPUT)
221              11:             TypeFunction 7(fvec4) 10(ptr)
222              15:             TypeInt 32 1
223              16:     15(int) Constant 0
224              17:             TypePointer Function 7(fvec4)
225              20:     15(int) Constant 1
226              21:             TypeInt 32 0
227              22:     21(int) Constant 0
228              23:             TypePointer Function 6(float)
229              28:     15(int) Constant 2
230              36:             TypePointer Input 7(fvec4)
231  37(v.Position):     36(ptr) Variable Input
232              40:     21(int) Constant 4
233              41:             TypeArray 6(float) 40
234              42:             TypePointer Input 41
235     43(v.clip1):     42(ptr) Variable Input
236              44:             TypePointer Input 6(float)
237              50:     21(int) Constant 1
238              54:     21(int) Constant 2
239              56:     15(int) Constant 3
240              60:             TypePointer Output 7(fvec4)
24161(@entryPointOutput):     60(ptr) Variable Output
242         4(main):           2 Function None 3
243               5:             Label
244           35(v):     10(ptr) Variable Function
245       62(param):     10(ptr) Variable Function
246              38:    7(fvec4) Load 37(v.Position)
247              39:     17(ptr) AccessChain 35(v) 16
248                              Store 39 38
249              45:     44(ptr) AccessChain 43(v.clip1) 16
250              46:    6(float) Load 45
251              47:     23(ptr) AccessChain 35(v) 20 22
252                              Store 47 46
253              48:     44(ptr) AccessChain 43(v.clip1) 20
254              49:    6(float) Load 48
255              51:     23(ptr) AccessChain 35(v) 20 50
256                              Store 51 49
257              52:     44(ptr) AccessChain 43(v.clip1) 28
258              53:    6(float) Load 52
259              55:     23(ptr) AccessChain 35(v) 20 54
260                              Store 55 53
261              57:     44(ptr) AccessChain 43(v.clip1) 56
262              58:    6(float) Load 57
263              59:     23(ptr) AccessChain 35(v) 28
264                              Store 59 58
265              63:9(VS_OUTPUT) Load 35(v)
266                              Store 62(param) 63
267              64:    7(fvec4) FunctionCall 13(@main(struct-VS_OUTPUT-vf4-vf3-f11;) 62(param)
268                              Store 61(@entryPointOutput) 64
269                              Return
270                              FunctionEnd
27113(@main(struct-VS_OUTPUT-vf4-vf3-f11;):    7(fvec4) Function None 11
272           12(v):     10(ptr) FunctionParameter
273              14:             Label
274              18:     17(ptr) AccessChain 12(v) 16
275              19:    7(fvec4) Load 18
276              24:     23(ptr) AccessChain 12(v) 20 22
277              25:    6(float) Load 24
278              26:    7(fvec4) CompositeConstruct 25 25 25 25
279              27:    7(fvec4) FAdd 19 26
280              29:     23(ptr) AccessChain 12(v) 28
281              30:    6(float) Load 29
282              31:    7(fvec4) CompositeConstruct 30 30 30 30
283              32:    7(fvec4) FAdd 27 31
284                              ReturnValue 32
285                              FunctionEnd
286