1hlsl.spv.1.6.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 10600
111// Generated by (magic number): 8000b
112// Id's are bound by 47
113
114                              Capability Shader
115                              Capability DemoteToHelperInvocationEXT
116               1:             ExtInstImport  "GLSL.std.450"
117                              MemoryModel Logical GLSL450
118                              EntryPoint Fragment 4  "PixelShaderFunction" 42
119                              ExecutionMode 4 OriginUpperLeft
120                              Source HLSL 500
121                              Name 4  "PixelShaderFunction"
122                              Name 10  "foo(f1;"
123                              Name 9  "f"
124                              Name 16  "@PixelShaderFunction(vf4;"
125                              Name 15  "input"
126                              Name 24  "param"
127                              Name 37  "f"
128                              Name 40  "input"
129                              Name 42  "input"
130                              Name 44  "param"
131                              Decorate 42(input) Location 0
132               2:             TypeVoid
133               3:             TypeFunction 2
134               6:             TypeFloat 32
135               7:             TypePointer Function 6(float)
136               8:             TypeFunction 2 7(ptr)
137              12:             TypeVector 6(float) 4
138              13:             TypePointer Function 12(fvec4)
139              14:             TypeFunction 2 13(ptr)
140              19:    6(float) Constant 1065353216
141              20:             TypeBool
142              25:             TypeInt 32 0
143              26:     25(int) Constant 2
144              30:     25(int) Constant 0
145              33:    6(float) Constant 0
146              41:             TypePointer Input 12(fvec4)
147       42(input):     41(ptr) Variable Input
1484(PixelShaderFunction):           2 Function None 3
149               5:             Label
150       40(input):     13(ptr) Variable Function
151       44(param):     13(ptr) Variable Function
152              43:   12(fvec4) Load 42(input)
153                              Store 40(input) 43
154              45:   12(fvec4) Load 40(input)
155                              Store 44(param) 45
156              46:           2 FunctionCall 16(@PixelShaderFunction(vf4;) 44(param)
157                              Return
158                              FunctionEnd
159     10(foo(f1;):           2 Function None 8
160            9(f):      7(ptr) FunctionParameter
161              11:             Label
162              18:    6(float) Load 9(f)
163              21:    20(bool) FOrdLessThan 18 19
164                              SelectionMerge 23 None
165                              BranchConditional 21 22 23
166              22:               Label
167                                DemoteToHelperInvocationEXT
168                                Branch 23
169              23:             Label
170                              Return
171                              FunctionEnd
17216(@PixelShaderFunction(vf4;):           2 Function None 14
173       15(input):     13(ptr) FunctionParameter
174              17:             Label
175       24(param):      7(ptr) Variable Function
176           37(f):      7(ptr) Variable Function
177              27:      7(ptr) AccessChain 15(input) 26
178              28:    6(float) Load 27
179                              Store 24(param) 28
180              29:           2 FunctionCall 10(foo(f1;) 24(param)
181              31:      7(ptr) AccessChain 15(input) 30
182              32:    6(float) Load 31
183              34:    20(bool) FUnordNotEqual 32 33
184                              SelectionMerge 36 None
185                              BranchConditional 34 35 36
186              35:               Label
187                                DemoteToHelperInvocationEXT
188                                Branch 36
189              36:             Label
190              38:      7(ptr) AccessChain 15(input) 30
191              39:    6(float) Load 38
192                              Store 37(f) 39
193                              DemoteToHelperInvocationEXT
194                              Return
195                              FunctionEnd
196