1hlsl.entry-in.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:8  Function Definition: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
60:8    Function Parameters:
70:8      'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
80:?     Sequence
90:9      Branch: Return with expression
100:9        add ( temp float)
110:9          direct index ( temp float)
120:9            v: direct index for structure ( temp 2-component vector of float)
130:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
140:9              Constant:
150:9                0 (const int)
160:9            Constant:
170:9              1 (const int)
180:9          direct index ( temp float)
190:9            fragCoord: direct index for structure ( temp 4-component vector of float)
200:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
210:9              Constant:
220:9                1 (const int)
230:9            Constant:
240:9              0 (const int)
250:13  Function Definition: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
260:13    Function Parameters:
270:13      'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
280:?     Sequence
290:15      move second child to first child ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
300:15        'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
310:15        'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
320:16      Sequence
330:16        move second child to first child ( temp float)
340:16          'ret1' ( temp float)
350:16          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
360:16            'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
370:17      Sequence
380:17        move second child to first child ( temp float)
390:17          'ret2' ( temp float)
400:17          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
410:17            'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
420:19      Branch: Return with expression
430:19        vector-scale ( temp 4-component vector of float)
440:19          vector-scale ( temp 4-component vector of float)
450:19            fragCoord: direct index for structure ( temp 4-component vector of float)
460:19              'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
470:19              Constant:
480:19                1 (const int)
490:19            'ret1' ( temp float)
500:19          'ret2' ( temp float)
510:13  Function Definition: PixelShaderFunction( ( temp void)
520:13    Function Parameters:
530:?     Sequence
540:13      Sequence
550:13        move second child to first child ( temp 2-component vector of float)
560:13          v: direct index for structure ( temp 2-component vector of float)
570:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
580:13            Constant:
590:13              0 (const int)
600:?           'i.v' (layout( location=0) in 2-component vector of float)
610:13        move second child to first child ( temp 4-component vector of float)
620:13          fragCoord: direct index for structure ( temp 4-component vector of float)
630:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
640:13            Constant:
650:13              1 (const int)
660:?           'i.fragCoord' ( in 4-component vector of float FragCoord)
670:13        move second child to first child ( temp 2-component vector of int)
680:13          i2: direct index for structure ( temp 2-component vector of int)
690:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
700:13            Constant:
710:13              2 (const int)
720:?           'i.i2' (layout( location=1) flat in 2-component vector of int)
730:13      move second child to first child ( temp 4-component vector of float)
740:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
750:13        Function Call: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
760:?           'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
770:?   Linker Objects
780:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
790:?     'i.fragCoord' ( in 4-component vector of float FragCoord)
800:?     'i.v' (layout( location=0) in 2-component vector of float)
810:?     'i.i2' (layout( location=1) flat in 2-component vector of int)
82
83
84Linked fragment stage:
85
86
87Shader version: 500
88gl_FragCoord origin is upper left
890:? Sequence
900:8  Function Definition: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
910:8    Function Parameters:
920:8      'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
930:?     Sequence
940:9      Branch: Return with expression
950:9        add ( temp float)
960:9          direct index ( temp float)
970:9            v: direct index for structure ( temp 2-component vector of float)
980:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
990:9              Constant:
1000:9                0 (const int)
1010:9            Constant:
1020:9              1 (const int)
1030:9          direct index ( temp float)
1040:9            fragCoord: direct index for structure ( temp 4-component vector of float)
1050:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1060:9              Constant:
1070:9                1 (const int)
1080:9            Constant:
1090:9              0 (const int)
1100:13  Function Definition: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
1110:13    Function Parameters:
1120:13      'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1130:?     Sequence
1140:15      move second child to first child ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1150:15        'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1160:15        'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1170:16      Sequence
1180:16        move second child to first child ( temp float)
1190:16          'ret1' ( temp float)
1200:16          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
1210:16            'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1220:17      Sequence
1230:17        move second child to first child ( temp float)
1240:17          'ret2' ( temp float)
1250:17          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
1260:17            'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1270:19      Branch: Return with expression
1280:19        vector-scale ( temp 4-component vector of float)
1290:19          vector-scale ( temp 4-component vector of float)
1300:19            fragCoord: direct index for structure ( temp 4-component vector of float)
1310:19              'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1320:19              Constant:
1330:19                1 (const int)
1340:19            'ret1' ( temp float)
1350:19          'ret2' ( temp float)
1360:13  Function Definition: PixelShaderFunction( ( temp void)
1370:13    Function Parameters:
1380:?     Sequence
1390:13      Sequence
1400:13        move second child to first child ( temp 2-component vector of float)
1410:13          v: direct index for structure ( temp 2-component vector of float)
1420:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1430:13            Constant:
1440:13              0 (const int)
1450:?           'i.v' (layout( location=0) in 2-component vector of float)
1460:13        move second child to first child ( temp 4-component vector of float)
1470:13          fragCoord: direct index for structure ( temp 4-component vector of float)
1480:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1490:13            Constant:
1500:13              1 (const int)
1510:?           'i.fragCoord' ( in 4-component vector of float FragCoord)
1520:13        move second child to first child ( temp 2-component vector of int)
1530:13          i2: direct index for structure ( temp 2-component vector of int)
1540:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1550:13            Constant:
1560:13              2 (const int)
1570:?           'i.i2' (layout( location=1) flat in 2-component vector of int)
1580:13      move second child to first child ( temp 4-component vector of float)
1590:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1600:13        Function Call: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
1610:?           'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
1620:?   Linker Objects
1630:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1640:?     'i.fragCoord' ( in 4-component vector of float FragCoord)
1650:?     'i.v' (layout( location=0) in 2-component vector of float)
1660:?     'i.i2' (layout( location=1) flat in 2-component vector of int)
167
168// Module Version 10000
169// Generated by (magic number): 80007
170// Id's are bound by 74
171
172                              Capability Shader
173               1:             ExtInstImport  "GLSL.std.450"
174                              MemoryModel Logical GLSL450
175                              EntryPoint Fragment 4  "PixelShaderFunction" 55 60 65 70
176                              ExecutionMode 4 OriginUpperLeft
177                              Source HLSL 500
178                              Name 4  "PixelShaderFunction"
179                              Name 11  "InParam"
180                              MemberName 11(InParam) 0  "v"
181                              MemberName 11(InParam) 1  "fragCoord"
182                              MemberName 11(InParam) 2  "i2"
183                              Name 15  "fun(struct-InParam-vf2-vf4-vi21;"
184                              Name 14  "p"
185                              Name 19  "@PixelShaderFunction(struct-InParam-vf2-vf4-vi21;"
186                              Name 18  "i"
187                              Name 34  "local"
188                              Name 36  "ret1"
189                              Name 37  "param"
190                              Name 40  "ret2"
191                              Name 41  "param"
192                              Name 53  "i"
193                              Name 55  "i.v"
194                              Name 60  "i.fragCoord"
195                              Name 65  "i.i2"
196                              Name 70  "@entryPointOutput"
197                              Name 71  "param"
198                              Decorate 55(i.v) Location 0
199                              Decorate 60(i.fragCoord) BuiltIn FragCoord
200                              Decorate 65(i.i2) Flat
201                              Decorate 65(i.i2) Location 1
202                              Decorate 70(@entryPointOutput) Location 0
203               2:             TypeVoid
204               3:             TypeFunction 2
205               6:             TypeFloat 32
206               7:             TypeVector 6(float) 2
207               8:             TypeVector 6(float) 4
208               9:             TypeInt 32 1
209              10:             TypeVector 9(int) 2
210     11(InParam):             TypeStruct 7(fvec2) 8(fvec4) 10(ivec2)
211              12:             TypePointer Function 11(InParam)
212              13:             TypeFunction 6(float) 12(ptr)
213              17:             TypeFunction 8(fvec4) 12(ptr)
214              21:      9(int) Constant 0
215              22:             TypeInt 32 0
216              23:     22(int) Constant 1
217              24:             TypePointer Function 6(float)
218              27:      9(int) Constant 1
219              28:     22(int) Constant 0
220              44:             TypePointer Function 8(fvec4)
221              54:             TypePointer Input 7(fvec2)
222         55(i.v):     54(ptr) Variable Input
223              57:             TypePointer Function 7(fvec2)
224              59:             TypePointer Input 8(fvec4)
225 60(i.fragCoord):     59(ptr) Variable Input
226              63:      9(int) Constant 2
227              64:             TypePointer Input 10(ivec2)
228        65(i.i2):     64(ptr) Variable Input
229              67:             TypePointer Function 10(ivec2)
230              69:             TypePointer Output 8(fvec4)
23170(@entryPointOutput):     69(ptr) Variable Output
2324(PixelShaderFunction):           2 Function None 3
233               5:             Label
234           53(i):     12(ptr) Variable Function
235       71(param):     12(ptr) Variable Function
236              56:    7(fvec2) Load 55(i.v)
237              58:     57(ptr) AccessChain 53(i) 21
238                              Store 58 56
239              61:    8(fvec4) Load 60(i.fragCoord)
240              62:     44(ptr) AccessChain 53(i) 27
241                              Store 62 61
242              66:   10(ivec2) Load 65(i.i2)
243              68:     67(ptr) AccessChain 53(i) 63
244                              Store 68 66
245              72: 11(InParam) Load 53(i)
246                              Store 71(param) 72
247              73:    8(fvec4) FunctionCall 19(@PixelShaderFunction(struct-InParam-vf2-vf4-vi21;) 71(param)
248                              Store 70(@entryPointOutput) 73
249                              Return
250                              FunctionEnd
25115(fun(struct-InParam-vf2-vf4-vi21;):    6(float) Function None 13
252           14(p):     12(ptr) FunctionParameter
253              16:             Label
254              25:     24(ptr) AccessChain 14(p) 21 23
255              26:    6(float) Load 25
256              29:     24(ptr) AccessChain 14(p) 27 28
257              30:    6(float) Load 29
258              31:    6(float) FAdd 26 30
259                              ReturnValue 31
260                              FunctionEnd
26119(@PixelShaderFunction(struct-InParam-vf2-vf4-vi21;):    8(fvec4) Function None 17
262           18(i):     12(ptr) FunctionParameter
263              20:             Label
264       34(local):     12(ptr) Variable Function
265        36(ret1):     24(ptr) Variable Function
266       37(param):     12(ptr) Variable Function
267        40(ret2):     24(ptr) Variable Function
268       41(param):     12(ptr) Variable Function
269              35: 11(InParam) Load 18(i)
270                              Store 34(local) 35
271              38: 11(InParam) Load 34(local)
272                              Store 37(param) 38
273              39:    6(float) FunctionCall 15(fun(struct-InParam-vf2-vf4-vi21;) 37(param)
274                              Store 36(ret1) 39
275              42: 11(InParam) Load 18(i)
276                              Store 41(param) 42
277              43:    6(float) FunctionCall 15(fun(struct-InParam-vf2-vf4-vi21;) 41(param)
278                              Store 40(ret2) 43
279              45:     44(ptr) AccessChain 34(local) 27
280              46:    8(fvec4) Load 45
281              47:    6(float) Load 36(ret1)
282              48:    8(fvec4) VectorTimesScalar 46 47
283              49:    6(float) Load 40(ret2)
284              50:    8(fvec4) VectorTimesScalar 48 49
285                              ReturnValue 50
286                              FunctionEnd
287