Update rive-cpp to 2.0 version
[platform/core/uifw/rive-tizen.git] / submodule / skia / tests / sksl / intrinsics / Atan.asm.frag
1 OpCapability Shader
2 %1 = OpExtInstImport "GLSL.std.450"
3 OpMemoryModel Logical GLSL450
4 OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise
5 OpExecutionMode %_entrypoint_v OriginUpperLeft
6 OpName %sk_FragColor "sk_FragColor"
7 OpName %sk_Clockwise "sk_Clockwise"
8 OpName %_UniformBuffer "_UniformBuffer"
9 OpMemberName %_UniformBuffer 0 "inputVal"
10 OpMemberName %_UniformBuffer 1 "expected"
11 OpMemberName %_UniformBuffer 2 "colorGreen"
12 OpMemberName %_UniformBuffer 3 "colorRed"
13 OpName %_entrypoint_v "_entrypoint_v"
14 OpName %main "main"
15 OpName %constVal2 "constVal2"
16 OpDecorate %sk_FragColor RelaxedPrecision
17 OpDecorate %sk_FragColor Location 0
18 OpDecorate %sk_FragColor Index 0
19 OpDecorate %sk_Clockwise BuiltIn FrontFacing
20 OpMemberDecorate %_UniformBuffer 0 Offset 0
21 OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
22 OpMemberDecorate %_UniformBuffer 1 Offset 16
23 OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
24 OpMemberDecorate %_UniformBuffer 2 Offset 32
25 OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision
26 OpMemberDecorate %_UniformBuffer 3 Offset 48
27 OpMemberDecorate %_UniformBuffer 3 RelaxedPrecision
28 OpDecorate %_UniformBuffer Block
29 OpDecorate %10 Binding 0
30 OpDecorate %10 DescriptorSet 0
31 OpDecorate %constVal2 RelaxedPrecision
32 OpDecorate %36 RelaxedPrecision
33 OpDecorate %37 RelaxedPrecision
34 OpDecorate %40 RelaxedPrecision
35 OpDecorate %41 RelaxedPrecision
36 OpDecorate %47 RelaxedPrecision
37 OpDecorate %48 RelaxedPrecision
38 OpDecorate %50 RelaxedPrecision
39 OpDecorate %51 RelaxedPrecision
40 OpDecorate %60 RelaxedPrecision
41 OpDecorate %61 RelaxedPrecision
42 OpDecorate %64 RelaxedPrecision
43 OpDecorate %65 RelaxedPrecision
44 OpDecorate %74 RelaxedPrecision
45 OpDecorate %76 RelaxedPrecision
46 OpDecorate %84 RelaxedPrecision
47 OpDecorate %85 RelaxedPrecision
48 OpDecorate %91 RelaxedPrecision
49 OpDecorate %92 RelaxedPrecision
50 OpDecorate %100 RelaxedPrecision
51 OpDecorate %101 RelaxedPrecision
52 OpDecorate %109 RelaxedPrecision
53 OpDecorate %117 RelaxedPrecision
54 OpDecorate %118 RelaxedPrecision
55 OpDecorate %120 RelaxedPrecision
56 OpDecorate %121 RelaxedPrecision
57 OpDecorate %128 RelaxedPrecision
58 OpDecorate %129 RelaxedPrecision
59 OpDecorate %132 RelaxedPrecision
60 OpDecorate %133 RelaxedPrecision
61 OpDecorate %141 RelaxedPrecision
62 OpDecorate %142 RelaxedPrecision
63 OpDecorate %145 RelaxedPrecision
64 OpDecorate %146 RelaxedPrecision
65 OpDecorate %154 RelaxedPrecision
66 OpDecorate %156 RelaxedPrecision
67 OpDecorate %163 RelaxedPrecision
68 OpDecorate %164 RelaxedPrecision
69 OpDecorate %170 RelaxedPrecision
70 OpDecorate %171 RelaxedPrecision
71 OpDecorate %178 RelaxedPrecision
72 OpDecorate %179 RelaxedPrecision
73 OpDecorate %186 RelaxedPrecision
74 OpDecorate %196 RelaxedPrecision
75 OpDecorate %199 RelaxedPrecision
76 OpDecorate %200 RelaxedPrecision
77 %float = OpTypeFloat 32
78 %v4float = OpTypeVector %float 4
79 %_ptr_Output_v4float = OpTypePointer Output %v4float
80 %sk_FragColor = OpVariable %_ptr_Output_v4float Output
81 %bool = OpTypeBool
82 %_ptr_Input_bool = OpTypePointer Input %bool
83 %sk_Clockwise = OpVariable %_ptr_Input_bool Input
84 %_UniformBuffer = OpTypeStruct %v4float %v4float %v4float %v4float
85 %_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
86 %10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
87 %void = OpTypeVoid
88 %15 = OpTypeFunction %void
89 %float_0 = OpConstant %float 0
90 %v2float = OpTypeVector %float 2
91 %19 = OpConstantComposite %v2float %float_0 %float_0
92 %_ptr_Function_v2float = OpTypePointer Function %v2float
93 %23 = OpTypeFunction %v4float %_ptr_Function_v2float
94 %_ptr_Function_v4float = OpTypePointer Function %v4float
95 %float_1 = OpConstant %float 1
96 %29 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
97 %false = OpConstantFalse %bool
98 %_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
99 %int = OpTypeInt 32 1
100 %int_0 = OpConstant %int 0
101 %int_1 = OpConstant %int 1
102 %v2bool = OpTypeVector %bool 2
103 %v3float = OpTypeVector %float 3
104 %v3bool = OpTypeVector %bool 3
105 %v4bool = OpTypeVector %bool 4
106 %98 = OpConstantComposite %v3float %float_0 %float_0 %float_0
107 %107 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
108 %130 = OpConstantComposite %v2float %float_1 %float_1
109 %143 = OpConstantComposite %v3float %float_1 %float_1 %float_1
110 %int_2 = OpConstant %int 2
111 %int_3 = OpConstant %int 3
112 %_entrypoint_v = OpFunction %void None %15
113 %16 = OpLabel
114 %20 = OpVariable %_ptr_Function_v2float Function
115 OpStore %20 %19
116 %22 = OpFunctionCall %v4float %main %20
117 OpStore %sk_FragColor %22
118 OpReturn
119 OpFunctionEnd
120 %main = OpFunction %v4float None %23
121 %24 = OpFunctionParameter %_ptr_Function_v2float
122 %25 = OpLabel
123 %constVal2 = OpVariable %_ptr_Function_v4float Function
124 %190 = OpVariable %_ptr_Function_v4float Function
125 OpStore %constVal2 %29
126 %32 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
127 %36 = OpLoad %v4float %32
128 %37 = OpCompositeExtract %float %36 0
129 %31 = OpExtInst %float %1 Atan %37
130 %38 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
131 %40 = OpLoad %v4float %38
132 %41 = OpCompositeExtract %float %40 0
133 %42 = OpFOrdEqual %bool %31 %41
134 OpSelectionMerge %44 None
135 OpBranchConditional %42 %43 %44
136 %43 = OpLabel
137 %46 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
138 %47 = OpLoad %v4float %46
139 %48 = OpVectorShuffle %v2float %47 %47 0 1
140 %45 = OpExtInst %v2float %1 Atan %48
141 %49 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
142 %50 = OpLoad %v4float %49
143 %51 = OpVectorShuffle %v2float %50 %50 0 1
144 %52 = OpFOrdEqual %v2bool %45 %51
145 %54 = OpAll %bool %52
146 OpBranch %44
147 %44 = OpLabel
148 %55 = OpPhi %bool %false %25 %54 %43
149 OpSelectionMerge %57 None
150 OpBranchConditional %55 %56 %57
151 %56 = OpLabel
152 %59 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
153 %60 = OpLoad %v4float %59
154 %61 = OpVectorShuffle %v3float %60 %60 0 1 2
155 %58 = OpExtInst %v3float %1 Atan %61
156 %63 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
157 %64 = OpLoad %v4float %63
158 %65 = OpVectorShuffle %v3float %64 %64 0 1 2
159 %66 = OpFOrdEqual %v3bool %58 %65
160 %68 = OpAll %bool %66
161 OpBranch %57
162 %57 = OpLabel
163 %69 = OpPhi %bool %false %44 %68 %56
164 OpSelectionMerge %71 None
165 OpBranchConditional %69 %70 %71
166 %70 = OpLabel
167 %73 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
168 %74 = OpLoad %v4float %73
169 %72 = OpExtInst %v4float %1 Atan %74
170 %75 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
171 %76 = OpLoad %v4float %75
172 %77 = OpFOrdEqual %v4bool %72 %76
173 %79 = OpAll %bool %77
174 OpBranch %71
175 %71 = OpLabel
176 %80 = OpPhi %bool %false %57 %79 %70
177 OpSelectionMerge %82 None
178 OpBranchConditional %80 %81 %82
179 %81 = OpLabel
180 %83 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
181 %84 = OpLoad %v4float %83
182 %85 = OpCompositeExtract %float %84 0
183 %86 = OpFOrdEqual %bool %float_0 %85
184 OpBranch %82
185 %82 = OpLabel
186 %87 = OpPhi %bool %false %71 %86 %81
187 OpSelectionMerge %89 None
188 OpBranchConditional %87 %88 %89
189 %88 = OpLabel
190 %90 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
191 %91 = OpLoad %v4float %90
192 %92 = OpVectorShuffle %v2float %91 %91 0 1
193 %93 = OpFOrdEqual %v2bool %19 %92
194 %94 = OpAll %bool %93
195 OpBranch %89
196 %89 = OpLabel
197 %95 = OpPhi %bool %false %82 %94 %88
198 OpSelectionMerge %97 None
199 OpBranchConditional %95 %96 %97
200 %96 = OpLabel
201 %99 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
202 %100 = OpLoad %v4float %99
203 %101 = OpVectorShuffle %v3float %100 %100 0 1 2
204 %102 = OpFOrdEqual %v3bool %98 %101
205 %103 = OpAll %bool %102
206 OpBranch %97
207 %97 = OpLabel
208 %104 = OpPhi %bool %false %89 %103 %96
209 OpSelectionMerge %106 None
210 OpBranchConditional %104 %105 %106
211 %105 = OpLabel
212 %108 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
213 %109 = OpLoad %v4float %108
214 %110 = OpFOrdEqual %v4bool %107 %109
215 %111 = OpAll %bool %110
216 OpBranch %106
217 %106 = OpLabel
218 %112 = OpPhi %bool %false %97 %111 %105
219 OpSelectionMerge %114 None
220 OpBranchConditional %112 %113 %114
221 %113 = OpLabel
222 %116 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
223 %117 = OpLoad %v4float %116
224 %118 = OpCompositeExtract %float %117 0
225 %115 = OpExtInst %float %1 Atan2 %118 %float_1
226 %119 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
227 %120 = OpLoad %v4float %119
228 %121 = OpCompositeExtract %float %120 0
229 %122 = OpFOrdEqual %bool %115 %121
230 OpBranch %114
231 %114 = OpLabel
232 %123 = OpPhi %bool %false %106 %122 %113
233 OpSelectionMerge %125 None
234 OpBranchConditional %123 %124 %125
235 %124 = OpLabel
236 %127 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
237 %128 = OpLoad %v4float %127
238 %129 = OpVectorShuffle %v2float %128 %128 0 1
239 %126 = OpExtInst %v2float %1 Atan2 %129 %130
240 %131 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
241 %132 = OpLoad %v4float %131
242 %133 = OpVectorShuffle %v2float %132 %132 0 1
243 %134 = OpFOrdEqual %v2bool %126 %133
244 %135 = OpAll %bool %134
245 OpBranch %125
246 %125 = OpLabel
247 %136 = OpPhi %bool %false %114 %135 %124
248 OpSelectionMerge %138 None
249 OpBranchConditional %136 %137 %138
250 %137 = OpLabel
251 %140 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
252 %141 = OpLoad %v4float %140
253 %142 = OpVectorShuffle %v3float %141 %141 0 1 2
254 %139 = OpExtInst %v3float %1 Atan2 %142 %143
255 %144 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
256 %145 = OpLoad %v4float %144
257 %146 = OpVectorShuffle %v3float %145 %145 0 1 2
258 %147 = OpFOrdEqual %v3bool %139 %146
259 %148 = OpAll %bool %147
260 OpBranch %138
261 %138 = OpLabel
262 %149 = OpPhi %bool %false %125 %148 %137
263 OpSelectionMerge %151 None
264 OpBranchConditional %149 %150 %151
265 %150 = OpLabel
266 %153 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
267 %154 = OpLoad %v4float %153
268 %152 = OpExtInst %v4float %1 Atan2 %154 %29
269 %155 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
270 %156 = OpLoad %v4float %155
271 %157 = OpFOrdEqual %v4bool %152 %156
272 %158 = OpAll %bool %157
273 OpBranch %151
274 %151 = OpLabel
275 %159 = OpPhi %bool %false %138 %158 %150
276 OpSelectionMerge %161 None
277 OpBranchConditional %159 %160 %161
278 %160 = OpLabel
279 %162 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
280 %163 = OpLoad %v4float %162
281 %164 = OpCompositeExtract %float %163 0
282 %165 = OpFOrdEqual %bool %float_0 %164
283 OpBranch %161
284 %161 = OpLabel
285 %166 = OpPhi %bool %false %151 %165 %160
286 OpSelectionMerge %168 None
287 OpBranchConditional %166 %167 %168
288 %167 = OpLabel
289 %169 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
290 %170 = OpLoad %v4float %169
291 %171 = OpVectorShuffle %v2float %170 %170 0 1
292 %172 = OpFOrdEqual %v2bool %19 %171
293 %173 = OpAll %bool %172
294 OpBranch %168
295 %168 = OpLabel
296 %174 = OpPhi %bool %false %161 %173 %167
297 OpSelectionMerge %176 None
298 OpBranchConditional %174 %175 %176
299 %175 = OpLabel
300 %177 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
301 %178 = OpLoad %v4float %177
302 %179 = OpVectorShuffle %v3float %178 %178 0 1 2
303 %180 = OpFOrdEqual %v3bool %98 %179
304 %181 = OpAll %bool %180
305 OpBranch %176
306 %176 = OpLabel
307 %182 = OpPhi %bool %false %168 %181 %175
308 OpSelectionMerge %184 None
309 OpBranchConditional %182 %183 %184
310 %183 = OpLabel
311 %185 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
312 %186 = OpLoad %v4float %185
313 %187 = OpFOrdEqual %v4bool %107 %186
314 %188 = OpAll %bool %187
315 OpBranch %184
316 %184 = OpLabel
317 %189 = OpPhi %bool %false %176 %188 %183
318 OpSelectionMerge %193 None
319 OpBranchConditional %189 %191 %192
320 %191 = OpLabel
321 %194 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2
322 %196 = OpLoad %v4float %194
323 OpStore %190 %196
324 OpBranch %193
325 %192 = OpLabel
326 %197 = OpAccessChain %_ptr_Uniform_v4float %10 %int_3
327 %199 = OpLoad %v4float %197
328 OpStore %190 %199
329 OpBranch %193
330 %193 = OpLabel
331 %200 = OpLoad %v4float %190
332 OpReturnValue %200
333 OpFunctionEnd