Update CHANGES for release 11.12.0
[platform/upstream/glslang.git] / Test / baseResults / hlsl.w-recip2.frag.out
1 hlsl.w-recip2.frag
2 Shader version: 500
3 gl_FragCoord origin is upper left
4 0:? Sequence
5 0:13  Function Definition: @main(struct-VSOutput-vf4-vf3-vf3-vf21; ( temp 4-component vector of float)
6 0:13    Function Parameters: 
7 0:13      'VSOut' ( in structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
8 0:?     Sequence
9 0:14      Test condition and select ( temp void)
10 0:14        Condition
11 0:14        Compare Less Than ( temp bool)
12 0:14          direct index ( temp float)
13 0:14            PositionPS: direct index for structure ( temp 4-component vector of float)
14 0:14              'VSOut' ( in structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
15 0:14              Constant:
16 0:14                0 (const int)
17 0:14            Constant:
18 0:14              0 (const int)
19 0:14          Constant:
20 0:14            400.000000
21 0:14        true case
22 0:15        Branch: Return with expression
23 0:15          AmbientColor: direct index for structure ( uniform 4-component vector of float)
24 0:15            'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor,  uniform 4-component vector of float AmbientColor2})
25 0:15            Constant:
26 0:15              0 (const uint)
27 0:14        false case
28 0:17        Branch: Return with expression
29 0:17          AmbientColor2: direct index for structure ( uniform 4-component vector of float)
30 0:17            'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor,  uniform 4-component vector of float AmbientColor2})
31 0:17            Constant:
32 0:17              1 (const uint)
33 0:13  Function Definition: main( ( temp void)
34 0:13    Function Parameters: 
35 0:?     Sequence
36 0:13      Sequence
37 0:13        Sequence
38 0:13          move second child to first child ( temp 4-component vector of float)
39 0:13            '@fragcoord' ( temp 4-component vector of float)
40 0:?             'VSOut.PositionPS' ( in 4-component vector of float FragCoord)
41 0:13          move second child to first child ( temp float)
42 0:13            direct index ( in float FragCoord)
43 0:13              '@fragcoord' ( temp 4-component vector of float)
44 0:13              Constant:
45 0:13                3 (const int)
46 0:13            divide ( temp float)
47 0:13              Constant:
48 0:13                1.000000
49 0:13              direct index ( in float FragCoord)
50 0:13                '@fragcoord' ( temp 4-component vector of float)
51 0:13                Constant:
52 0:13                  3 (const int)
53 0:13          move second child to first child ( temp 4-component vector of float)
54 0:13            PositionPS: direct index for structure ( temp 4-component vector of float)
55 0:?               'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
56 0:13              Constant:
57 0:13                0 (const int)
58 0:13            '@fragcoord' ( temp 4-component vector of float)
59 0:13        move second child to first child ( temp 3-component vector of float)
60 0:13          PosInLightViewSpace: direct index for structure ( temp 3-component vector of float)
61 0:?             'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
62 0:13            Constant:
63 0:13              1 (const int)
64 0:?           'VSOut.PosInLightViewSpace' (layout( location=0) in 3-component vector of float)
65 0:13        move second child to first child ( temp 3-component vector of float)
66 0:13          NormalWS: direct index for structure ( temp 3-component vector of float)
67 0:?             'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
68 0:13            Constant:
69 0:13              2 (const int)
70 0:?           'VSOut.NormalWS' (layout( location=1) in 3-component vector of float)
71 0:13        move second child to first child ( temp 2-component vector of float)
72 0:13          TexCoord: direct index for structure ( temp 2-component vector of float)
73 0:?             'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
74 0:13            Constant:
75 0:13              3 (const int)
76 0:?           'VSOut.TexCoord' (layout( location=2) in 2-component vector of float)
77 0:13      move second child to first child ( temp 4-component vector of float)
78 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
79 0:13        Function Call: @main(struct-VSOutput-vf4-vf3-vf3-vf21; ( temp 4-component vector of float)
80 0:?           'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
81 0:?   Linker Objects
82 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor,  uniform 4-component vector of float AmbientColor2})
83 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
84 0:?     'VSOut.PositionPS' ( in 4-component vector of float FragCoord)
85 0:?     'VSOut.PosInLightViewSpace' (layout( location=0) in 3-component vector of float)
86 0:?     'VSOut.NormalWS' (layout( location=1) in 3-component vector of float)
87 0:?     'VSOut.TexCoord' (layout( location=2) in 2-component vector of float)
88
89
90 Linked fragment stage:
91
92
93 Shader version: 500
94 gl_FragCoord origin is upper left
95 0:? Sequence
96 0:13  Function Definition: @main(struct-VSOutput-vf4-vf3-vf3-vf21; ( temp 4-component vector of float)
97 0:13    Function Parameters: 
98 0:13      'VSOut' ( in structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
99 0:?     Sequence
100 0:14      Test condition and select ( temp void)
101 0:14        Condition
102 0:14        Compare Less Than ( temp bool)
103 0:14          direct index ( temp float)
104 0:14            PositionPS: direct index for structure ( temp 4-component vector of float)
105 0:14              'VSOut' ( in structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
106 0:14              Constant:
107 0:14                0 (const int)
108 0:14            Constant:
109 0:14              0 (const int)
110 0:14          Constant:
111 0:14            400.000000
112 0:14        true case
113 0:15        Branch: Return with expression
114 0:15          AmbientColor: direct index for structure ( uniform 4-component vector of float)
115 0:15            'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor,  uniform 4-component vector of float AmbientColor2})
116 0:15            Constant:
117 0:15              0 (const uint)
118 0:14        false case
119 0:17        Branch: Return with expression
120 0:17          AmbientColor2: direct index for structure ( uniform 4-component vector of float)
121 0:17            'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor,  uniform 4-component vector of float AmbientColor2})
122 0:17            Constant:
123 0:17              1 (const uint)
124 0:13  Function Definition: main( ( temp void)
125 0:13    Function Parameters: 
126 0:?     Sequence
127 0:13      Sequence
128 0:13        Sequence
129 0:13          move second child to first child ( temp 4-component vector of float)
130 0:13            '@fragcoord' ( temp 4-component vector of float)
131 0:?             'VSOut.PositionPS' ( in 4-component vector of float FragCoord)
132 0:13          move second child to first child ( temp float)
133 0:13            direct index ( in float FragCoord)
134 0:13              '@fragcoord' ( temp 4-component vector of float)
135 0:13              Constant:
136 0:13                3 (const int)
137 0:13            divide ( temp float)
138 0:13              Constant:
139 0:13                1.000000
140 0:13              direct index ( in float FragCoord)
141 0:13                '@fragcoord' ( temp 4-component vector of float)
142 0:13                Constant:
143 0:13                  3 (const int)
144 0:13          move second child to first child ( temp 4-component vector of float)
145 0:13            PositionPS: direct index for structure ( temp 4-component vector of float)
146 0:?               'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
147 0:13              Constant:
148 0:13                0 (const int)
149 0:13            '@fragcoord' ( temp 4-component vector of float)
150 0:13        move second child to first child ( temp 3-component vector of float)
151 0:13          PosInLightViewSpace: direct index for structure ( temp 3-component vector of float)
152 0:?             'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
153 0:13            Constant:
154 0:13              1 (const int)
155 0:?           'VSOut.PosInLightViewSpace' (layout( location=0) in 3-component vector of float)
156 0:13        move second child to first child ( temp 3-component vector of float)
157 0:13          NormalWS: direct index for structure ( temp 3-component vector of float)
158 0:?             'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
159 0:13            Constant:
160 0:13              2 (const int)
161 0:?           'VSOut.NormalWS' (layout( location=1) in 3-component vector of float)
162 0:13        move second child to first child ( temp 2-component vector of float)
163 0:13          TexCoord: direct index for structure ( temp 2-component vector of float)
164 0:?             'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
165 0:13            Constant:
166 0:13              3 (const int)
167 0:?           'VSOut.TexCoord' (layout( location=2) in 2-component vector of float)
168 0:13      move second child to first child ( temp 4-component vector of float)
169 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
170 0:13        Function Call: @main(struct-VSOutput-vf4-vf3-vf3-vf21; ( temp 4-component vector of float)
171 0:?           'VSOut' ( temp structure{ temp 4-component vector of float PositionPS,  temp 3-component vector of float PosInLightViewSpace,  temp 3-component vector of float NormalWS,  temp 2-component vector of float TexCoord})
172 0:?   Linker Objects
173 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float AmbientColor,  uniform 4-component vector of float AmbientColor2})
174 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
175 0:?     'VSOut.PositionPS' ( in 4-component vector of float FragCoord)
176 0:?     'VSOut.PosInLightViewSpace' (layout( location=0) in 3-component vector of float)
177 0:?     'VSOut.NormalWS' (layout( location=1) in 3-component vector of float)
178 0:?     'VSOut.TexCoord' (layout( location=2) in 2-component vector of float)
179
180 // Module Version 10000
181 // Generated by (magic number): 8000b
182 // Id's are bound by 75
183
184                               Capability Shader
185                1:             ExtInstImport  "GLSL.std.450"
186                               MemoryModel Logical GLSL450
187                               EntryPoint Fragment 4  "main" 44 56 61 66 71
188                               ExecutionMode 4 OriginUpperLeft
189                               Source HLSL 500
190                               Name 4  "main"
191                               Name 10  "VSOutput"
192                               MemberName 10(VSOutput) 0  "PositionPS"
193                               MemberName 10(VSOutput) 1  "PosInLightViewSpace"
194                               MemberName 10(VSOutput) 2  "NormalWS"
195                               MemberName 10(VSOutput) 3  "TexCoord"
196                               Name 14  "@main(struct-VSOutput-vf4-vf3-vf3-vf21;"
197                               Name 13  "VSOut"
198                               Name 28  "$Global"
199                               MemberName 28($Global) 0  "AmbientColor"
200                               MemberName 28($Global) 1  "AmbientColor2"
201                               Name 30  ""
202                               Name 42  "@fragcoord"
203                               Name 44  "VSOut.PositionPS"
204                               Name 52  "VSOut"
205                               Name 56  "VSOut.PosInLightViewSpace"
206                               Name 61  "VSOut.NormalWS"
207                               Name 66  "VSOut.TexCoord"
208                               Name 71  "@entryPointOutput"
209                               Name 72  "param"
210                               MemberDecorate 28($Global) 0 Offset 0
211                               MemberDecorate 28($Global) 1 Offset 16
212                               Decorate 28($Global) Block
213                               Decorate 30 DescriptorSet 0
214                               Decorate 30 Binding 0
215                               Decorate 44(VSOut.PositionPS) BuiltIn FragCoord
216                               Decorate 56(VSOut.PosInLightViewSpace) Location 0
217                               Decorate 61(VSOut.NormalWS) Location 1
218                               Decorate 66(VSOut.TexCoord) Location 2
219                               Decorate 71(@entryPointOutput) Location 0
220                2:             TypeVoid
221                3:             TypeFunction 2
222                6:             TypeFloat 32
223                7:             TypeVector 6(float) 4
224                8:             TypeVector 6(float) 3
225                9:             TypeVector 6(float) 2
226     10(VSOutput):             TypeStruct 7(fvec4) 8(fvec3) 8(fvec3) 9(fvec2)
227               11:             TypePointer Function 10(VSOutput)
228               12:             TypeFunction 7(fvec4) 11(ptr)
229               16:             TypeInt 32 1
230               17:     16(int) Constant 0
231               18:             TypeInt 32 0
232               19:     18(int) Constant 0
233               20:             TypePointer Function 6(float)
234               23:    6(float) Constant 1137180672
235               24:             TypeBool
236      28($Global):             TypeStruct 7(fvec4) 7(fvec4)
237               29:             TypePointer Uniform 28($Global)
238               30:     29(ptr) Variable Uniform
239               31:             TypePointer Uniform 7(fvec4)
240               36:     16(int) Constant 1
241               41:             TypePointer Function 7(fvec4)
242               43:             TypePointer Input 7(fvec4)
243 44(VSOut.PositionPS):     43(ptr) Variable Input
244               46:    6(float) Constant 1065353216
245               47:     18(int) Constant 3
246               55:             TypePointer Input 8(fvec3)
247 56(VSOut.PosInLightViewSpace):     55(ptr) Variable Input
248               58:             TypePointer Function 8(fvec3)
249               60:     16(int) Constant 2
250 61(VSOut.NormalWS):     55(ptr) Variable Input
251               64:     16(int) Constant 3
252               65:             TypePointer Input 9(fvec2)
253 66(VSOut.TexCoord):     65(ptr) Variable Input
254               68:             TypePointer Function 9(fvec2)
255               70:             TypePointer Output 7(fvec4)
256 71(@entryPointOutput):     70(ptr) Variable Output
257          4(main):           2 Function None 3
258                5:             Label
259   42(@fragcoord):     41(ptr) Variable Function
260        52(VSOut):     11(ptr) Variable Function
261        72(param):     11(ptr) Variable Function
262               45:    7(fvec4) Load 44(VSOut.PositionPS)
263                               Store 42(@fragcoord) 45
264               48:     20(ptr) AccessChain 42(@fragcoord) 47
265               49:    6(float) Load 48
266               50:    6(float) FDiv 46 49
267               51:     20(ptr) AccessChain 42(@fragcoord) 47
268                               Store 51 50
269               53:    7(fvec4) Load 42(@fragcoord)
270               54:     41(ptr) AccessChain 52(VSOut) 17
271                               Store 54 53
272               57:    8(fvec3) Load 56(VSOut.PosInLightViewSpace)
273               59:     58(ptr) AccessChain 52(VSOut) 36
274                               Store 59 57
275               62:    8(fvec3) Load 61(VSOut.NormalWS)
276               63:     58(ptr) AccessChain 52(VSOut) 60
277                               Store 63 62
278               67:    9(fvec2) Load 66(VSOut.TexCoord)
279               69:     68(ptr) AccessChain 52(VSOut) 64
280                               Store 69 67
281               73:10(VSOutput) Load 52(VSOut)
282                               Store 72(param) 73
283               74:    7(fvec4) FunctionCall 14(@main(struct-VSOutput-vf4-vf3-vf3-vf21;) 72(param)
284                               Store 71(@entryPointOutput) 74
285                               Return
286                               FunctionEnd
287 14(@main(struct-VSOutput-vf4-vf3-vf3-vf21;):    7(fvec4) Function None 12
288        13(VSOut):     11(ptr) FunctionParameter
289               15:             Label
290               21:     20(ptr) AccessChain 13(VSOut) 17 19
291               22:    6(float) Load 21
292               25:    24(bool) FOrdLessThan 22 23
293                               SelectionMerge 27 None
294                               BranchConditional 25 26 35
295               26:               Label
296               32:     31(ptr)   AccessChain 30 17
297               33:    7(fvec4)   Load 32
298                                 ReturnValue 33
299               35:               Label
300               37:     31(ptr)   AccessChain 30 36
301               38:    7(fvec4)   Load 37
302                                 ReturnValue 38
303               27:             Label
304                               Unreachable
305                               FunctionEnd