251 {
252 register SP_VEC_TYPE r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,rA,rB,rC,rD,rE,rF;
253
254
255 r0 = SET_VEC_PS(0.01);
256 r1 = SET_VEC_PS(0.02);
257 r2 = SET_VEC_PS(0.03);
258 r3 = SET_VEC_PS(0.04);
259 r4 = SET_VEC_PS(0.05);
260 r5 = SET_VEC_PS(0.06);
261 r6 = SET_VEC_PS(0.07);
262 r7 = SET_VEC_PS(0.08);
263 r8 = SET_VEC_PS(0.09);
264 r9 = SET_VEC_PS(0.10);
265 rA = SET_VEC_PS(0.11);
266 rB = SET_VEC_PS(0.12);
267 rC = SET_VEC_PS(0.13);
268 rD = SET_VEC_PS(0.14);
269 rE = SET_VEC_PS(0.15);
270 rF = SET_VEC_PS(0.16);
271
272
274 return -1;
275 }
276
278 while (
c < iterations){
281
282
283 r0 = MUL_VEC_PS(r0,rC);
284 r1 = ADD_VEC_PS(r1,rD);
285 r2 = MUL_VEC_PS(r2,rE);
286 r3 = ADD_VEC_PS(r3,rF);
287 r4 = MUL_VEC_PS(r4,rC);
288 r5 = ADD_VEC_PS(r5,rD);
289 r6 = MUL_VEC_PS(r6,rE);
290 r7 = ADD_VEC_PS(r7,rF);
291 r8 = MUL_VEC_PS(r8,rC);
292 r9 = ADD_VEC_PS(r9,rD);
293 rA = MUL_VEC_PS(rA,rE);
294 rB = ADD_VEC_PS(rB,rF);
295
296 r0 = ADD_VEC_PS(r0,rF);
297 r1 = MUL_VEC_PS(r1,rE);
298 r2 = ADD_VEC_PS(r2,rD);
299 r3 = MUL_VEC_PS(r3,rC);
300 r4 = ADD_VEC_PS(r4,rF);
301 r5 = MUL_VEC_PS(r5,rE);
302 r6 = ADD_VEC_PS(r6,rD);
303 r7 = MUL_VEC_PS(r7,rC);
304 r8 = ADD_VEC_PS(r8,rF);
305 r9 = MUL_VEC_PS(r9,rE);
306 rA = ADD_VEC_PS(rA,rD);
307 rB = MUL_VEC_PS(rB,rC);
308
309 r0 = MUL_VEC_PS(r0,rC);
310 r1 = ADD_VEC_PS(r1,rD);
311 r2 = MUL_VEC_PS(r2,rE);
312 r3 = ADD_VEC_PS(r3,rF);
313 r4 = MUL_VEC_PS(r4,rC);
314 r5 = ADD_VEC_PS(r5,rD);
315 r6 = MUL_VEC_PS(r6,rE);
316 r7 = ADD_VEC_PS(r7,rF);
317 r8 = MUL_VEC_PS(r8,rC);
318 r9 = ADD_VEC_PS(r9,rD);
319 rA = MUL_VEC_PS(rA,rE);
320 rB = ADD_VEC_PS(rB,rF);
321
322 r0 = ADD_VEC_PS(r0,rF);
323 r1 = MUL_VEC_PS(r1,rE);
324 r2 = ADD_VEC_PS(r2,rD);
325 r3 = MUL_VEC_PS(r3,rC);
326 r4 = ADD_VEC_PS(r4,rF);
327 r5 = MUL_VEC_PS(r5,rE);
328 r6 = ADD_VEC_PS(r6,rD);
329 r7 = MUL_VEC_PS(r7,rC);
330 r8 = ADD_VEC_PS(r8,rF);
331 r9 = MUL_VEC_PS(r9,rE);
332 rA = ADD_VEC_PS(rA,rD);
333 rB = MUL_VEC_PS(rB,rC);
334
335 r0 = MUL_VEC_PS(r0,rC);
336 r1 = ADD_VEC_PS(r1,rD);
337 r2 = MUL_VEC_PS(r2,rE);
338 r3 = ADD_VEC_PS(r3,rF);
339 r4 = MUL_VEC_PS(r4,rC);
340 r5 = ADD_VEC_PS(r5,rD);
341 r6 = MUL_VEC_PS(r6,rE);
342 r7 = ADD_VEC_PS(r7,rF);
343 r8 = MUL_VEC_PS(r8,rC);
344 r9 = ADD_VEC_PS(r9,rD);
345 rA = MUL_VEC_PS(rA,rE);
346 rB = ADD_VEC_PS(rB,rF);
347
348 r0 = ADD_VEC_PS(r0,rF);
349 r1 = MUL_VEC_PS(r1,rE);
350 r2 = ADD_VEC_PS(r2,rD);
351 r3 = MUL_VEC_PS(r3,rC);
352 r4 = ADD_VEC_PS(r4,rF);
353 r5 = MUL_VEC_PS(r5,rE);
354 r6 = ADD_VEC_PS(r6,rD);
355 r7 = MUL_VEC_PS(r7,rC);
356 r8 = ADD_VEC_PS(r8,rF);
357 r9 = MUL_VEC_PS(r9,rE);
358 rA = ADD_VEC_PS(rA,rD);
359 rB = MUL_VEC_PS(rB,rC);
360
361 r0 = MUL_VEC_PS(r0,rC);
362 r1 = ADD_VEC_PS(r1,rD);
363 r2 = MUL_VEC_PS(r2,rE);
364 r3 = ADD_VEC_PS(r3,rF);
365 r4 = MUL_VEC_PS(r4,rC);
366 r5 = ADD_VEC_PS(r5,rD);
367 r6 = MUL_VEC_PS(r6,rE);
368 r7 = ADD_VEC_PS(r7,rF);
369 r8 = MUL_VEC_PS(r8,rC);
370 r9 = ADD_VEC_PS(r9,rD);
371 rA = MUL_VEC_PS(rA,rE);
372 rB = ADD_VEC_PS(rB,rF);
373
374 r0 = ADD_VEC_PS(r0,rF);
375 r1 = MUL_VEC_PS(r1,rE);
376 r2 = ADD_VEC_PS(r2,rD);
377 r3 = MUL_VEC_PS(r3,rC);
378 r4 = ADD_VEC_PS(r4,rF);
379 r5 = MUL_VEC_PS(r5,rE);
380 r6 = ADD_VEC_PS(r6,rD);
381 r7 = MUL_VEC_PS(r7,rC);
382 r8 = ADD_VEC_PS(r8,rF);
383 r9 = MUL_VEC_PS(r9,rE);
384 rA = ADD_VEC_PS(rA,rD);
385 rB = MUL_VEC_PS(rB,rC);
386
388 }
390 }
391
392
394
395
396 r0 = ADD_VEC_PS(r0,r1);
397 r2 = ADD_VEC_PS(r2,r3);
398 r4 = ADD_VEC_PS(r4,r5);
399 r6 = ADD_VEC_PS(r6,r7);
400 r8 = ADD_VEC_PS(r8,r9);
401 rA = ADD_VEC_PS(rA,rB);
402
403 r0 = ADD_VEC_PS(r0,r2);
404 r4 = ADD_VEC_PS(r4,r6);
405 r8 = ADD_VEC_PS(r8,rA);
406
407 r0 = ADD_VEC_PS(r0,r4);
408 r0 = ADD_VEC_PS(r0,r8);
409
410 float out = 0;
411 SP_VEC_TYPE temp = r0;
412 out += ((float*)&temp)[0];
413 out += ((float*)&temp)[1];
414 out += ((float*)&temp)[2];
415 out += ((float*)&temp)[3];
416
417 return out;
418}