1hlsl.discard.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:2  Function Definition: foo(f1; ( temp void)
60:2    Function Parameters:
70:2      'f' ( in float)
80:?     Sequence
90:3      Test condition and select ( temp void)
100:3        Condition
110:3        Compare Less Than ( temp bool)
120:3          'f' ( in float)
130:3          Constant:
140:3            1.000000
150:3        true case
160:4        Branch: Kill
170:8  Function Definition: @PixelShaderFunction(vf4; ( temp void)
180:8    Function Parameters:
190:8      'input' ( in 4-component vector of float)
200:?     Sequence
210:9      Function Call: foo(f1; ( temp void)
220:9        direct index ( temp float)
230:9          'input' ( in 4-component vector of float)
240:9          Constant:
250:9            2 (const int)
260:10      Test condition and select ( temp void)
270:10        Condition
280:10        Convert float to bool ( temp bool)
290:10          direct index ( temp float)
300:10            'input' ( in 4-component vector of float)
310:10            Constant:
320:10              0 (const int)
330:10        true case
340:11        Branch: Kill
350:12      Sequence
360:12        move second child to first child ( temp float)
370:12          'f' ( temp float)
380:12          direct index ( temp float)
390:12            'input' ( in 4-component vector of float)
400:12            Constant:
410:12              0 (const int)
420:13      Branch: Kill
430:8  Function Definition: PixelShaderFunction( ( temp void)
440:8    Function Parameters:
450:?     Sequence
460:8      move second child to first child ( temp 4-component vector of float)
470:?         'input' ( temp 4-component vector of float)
480:?         'input' (layout( location=0) in 4-component vector of float)
490:8      Function Call: @PixelShaderFunction(vf4; ( temp void)
500:?         'input' ( temp 4-component vector of float)
510:?   Linker Objects
520:?     'input' (layout( location=0) in 4-component vector of float)
53
54
55Linked fragment stage:
56
57
58Shader version: 500
59gl_FragCoord origin is upper left
600:? Sequence
610:2  Function Definition: foo(f1; ( temp void)
620:2    Function Parameters:
630:2      'f' ( in float)
640:?     Sequence
650:3      Test condition and select ( temp void)
660:3        Condition
670:3        Compare Less Than ( temp bool)
680:3          'f' ( in float)
690:3          Constant:
700:3            1.000000
710:3        true case
720:4        Branch: Kill
730:8  Function Definition: @PixelShaderFunction(vf4; ( temp void)
740:8    Function Parameters:
750:8      'input' ( in 4-component vector of float)
760:?     Sequence
770:9      Function Call: foo(f1; ( temp void)
780:9        direct index ( temp float)
790:9          'input' ( in 4-component vector of float)
800:9          Constant:
810:9            2 (const int)
820:10      Test condition and select ( temp void)
830:10        Condition
840:10        Convert float to bool ( temp bool)
850:10          direct index ( temp float)
860:10            'input' ( in 4-component vector of float)
870:10            Constant:
880:10              0 (const int)
890:10        true case
900:11        Branch: Kill
910:12      Sequence
920:12        move second child to first child ( temp float)
930:12          'f' ( temp float)
940:12          direct index ( temp float)
950:12            'input' ( in 4-component vector of float)
960:12            Constant:
970:12              0 (const int)
980:13      Branch: Kill
990:8  Function Definition: PixelShaderFunction( ( temp void)
1000:8    Function Parameters:
1010:?     Sequence
1020:8      move second child to first child ( temp 4-component vector of float)
1030:?         'input' ( temp 4-component vector of float)
1040:?         'input' (layout( location=0) in 4-component vector of float)
1050:8      Function Call: @PixelShaderFunction(vf4; ( temp void)
1060:?         'input' ( temp 4-component vector of float)
1070:?   Linker Objects
1080:?     'input' (layout( location=0) in 4-component vector of float)
109
110// Module Version 10000
111// Generated by (magic number): 8000a
112// Id's are bound by 50
113
114                              Capability Shader
115               1:             ExtInstImport  "GLSL.std.450"
116                              MemoryModel Logical GLSL450
117                              EntryPoint Fragment 4  "PixelShaderFunction" 45
118                              ExecutionMode 4 OriginUpperLeft
119                              Source HLSL 500
120                              Name 4  "PixelShaderFunction"
121                              Name 10  "foo(f1;"
122                              Name 9  "f"
123                              Name 16  "@PixelShaderFunction(vf4;"
124                              Name 15  "input"
125                              Name 25  "param"
126                              Name 39  "f"
127                              Name 43  "input"
128                              Name 45  "input"
129                              Name 47  "param"
130                              Decorate 45(input) Location 0
131               2:             TypeVoid
132               3:             TypeFunction 2
133               6:             TypeFloat 32
134               7:             TypePointer Function 6(float)
135               8:             TypeFunction 2 7(ptr)
136              12:             TypeVector 6(float) 4
137              13:             TypePointer Function 12(fvec4)
138              14:             TypeFunction 2 13(ptr)
139              19:    6(float) Constant 1065353216
140              20:             TypeBool
141              26:             TypeInt 32 0
142              27:     26(int) Constant 2
143              31:     26(int) Constant 0
144              34:    6(float) Constant 0
145              44:             TypePointer Input 12(fvec4)
146       45(input):     44(ptr) Variable Input
1474(PixelShaderFunction):           2 Function None 3
148               5:             Label
149       43(input):     13(ptr) Variable Function
150       47(param):     13(ptr) Variable Function
151              46:   12(fvec4) Load 45(input)
152                              Store 43(input) 46
153              48:   12(fvec4) Load 43(input)
154                              Store 47(param) 48
155              49:           2 FunctionCall 16(@PixelShaderFunction(vf4;) 47(param)
156                              Return
157                              FunctionEnd
158     10(foo(f1;):           2 Function None 8
159            9(f):      7(ptr) FunctionParameter
160              11:             Label
161              18:    6(float) Load 9(f)
162              21:    20(bool) FOrdLessThan 18 19
163                              SelectionMerge 23 None
164                              BranchConditional 21 22 23
165              22:               Label
166                                Kill
167              23:             Label
168                              Return
169                              FunctionEnd
17016(@PixelShaderFunction(vf4;):           2 Function None 14
171       15(input):     13(ptr) FunctionParameter
172              17:             Label
173       25(param):      7(ptr) Variable Function
174           39(f):      7(ptr) Variable Function
175              28:      7(ptr) AccessChain 15(input) 27
176              29:    6(float) Load 28
177                              Store 25(param) 29
178              30:           2 FunctionCall 10(foo(f1;) 25(param)
179              32:      7(ptr) AccessChain 15(input) 31
180              33:    6(float) Load 32
181              35:    20(bool) FUnordNotEqual 33 34
182                              SelectionMerge 37 None
183                              BranchConditional 35 36 37
184              36:               Label
185                                Kill
186              37:             Label
187              40:      7(ptr) AccessChain 15(input) 31
188              41:    6(float) Load 40
189                              Store 39(f) 41
190                              Kill
191                              FunctionEnd
192