Lines Matching refs:re
185 BF(tmp[0].re, tmp[1].im, in[1].im, in[2].im);
186 BF(tmp[0].im, tmp[1].re, in[1].re, in[2].re);
188 out[0*stride].re = in[0].re + tmp[1].re;
192 mtmp[0] = (int64_t)tab[0] * tmp[0].re;
194 mtmp[2] = (int64_t)tab[2] * tmp[1].re;
196 out[1*stride].re = in[0].re - (mtmp[2] + mtmp[0] + 0x40000000 >> 31);
198 out[2*stride].re = in[0].re - (mtmp[2] - mtmp[0] + 0x40000000 >> 31);
201 tmp[0].re = tab[0] * tmp[0].re;
203 tmp[1].re = tab[2] * tmp[1].re;
205 out[1*stride].re = in[0].re - tmp[1].re + tmp[0].re;
207 out[2*stride].re = in[0].re - tmp[1].re - tmp[0].re;
219 BF(t[1].im, t[0].re, in[1].re, in[4].re); \
220 BF(t[1].re, t[0].im, in[1].im, in[4].im); \
221 BF(t[3].im, t[2].re, in[2].re, in[3].re); \
222 BF(t[3].re, t[2].im, in[2].im, in[3].im); \
224 out[D0*stride].re = in[0].re + t[0].re + t[2].re; \
227 SMUL(t[4].re, t[0].re, tab[4], tab[6], t[2].re, t[0].re); \
229 CMUL(t[5].re, t[1].re, tab[5], tab[7], t[3].re, t[1].re); \
232 BF(z0[0].re, z0[3].re, t[0].re, t[1].re); \
234 BF(z0[2].re, z0[1].re, t[4].re, t[5].re); \
237 out[D1*stride].re = in[0].re + z0[3].re; \
239 out[D2*stride].re = in[0].re + z0[2].re; \
241 out[D3*stride].re = in[0].re + z0[1].re; \
243 out[D4*stride].re = in[0].re + z0[0].re; \
261 BF(t[1].re, t[0].re, in[1].re, in[6].re);
263 BF(t[3].re, t[2].re, in[2].re, in[5].re);
265 BF(t[5].re, t[4].re, in[3].re, in[4].re);
268 out[0*stride].re = in[0].re + t[0].re + t[2].re + t[4].re;
272 mtmp[ 0] = ((int64_t)tab[0].re)*t[0].re - ((int64_t)tab[2].re)*t[4].re;
273 mtmp[ 1] = ((int64_t)tab[0].re)*t[4].re - ((int64_t)tab[1].re)*t[0].re;
274 mtmp[ 2] = ((int64_t)tab[0].re)*t[2].re - ((int64_t)tab[2].re)*t[0].re;
275 mtmp[ 3] = ((int64_t)tab[0].re)*t[0].im - ((int64_t)tab[1].re)*t[2].im;
276 mtmp[ 4] = ((int64_t)tab[0].re)*t[4].im - ((int64_t)tab[1].re)*t[0].im;
277 mtmp[ 5] = ((int64_t)tab[0].re)*t[2].im - ((int64_t)tab[2].re)*t[0].im;
282 mtmp[ 9] = ((int64_t)tab[0].im)*t[1].re + ((int64_t)tab[1].im)*t[3].re;
283 mtmp[10] = ((int64_t)tab[2].im)*t[3].re + ((int64_t)tab[0].im)*t[5].re;
284 mtmp[11] = ((int64_t)tab[2].im)*t[1].re + ((int64_t)tab[1].im)*t[5].re;
286 z[0].re = (int32_t)(mtmp[ 0] - ((int64_t)tab[1].re)*t[2].re + 0x40000000 >> 31);
287 z[1].re = (int32_t)(mtmp[ 1] - ((int64_t)tab[2].re)*t[2].re + 0x40000000 >> 31);
288 z[2].re = (int32_t)(mtmp[ 2] - ((int64_t)tab[1].re)*t[4].re + 0x40000000 >> 31);
289 z[0].im = (int32_t)(mtmp[ 3] - ((int64_t)tab[2].re)*t[4].im + 0x40000000 >> 31);
290 z[1].im = (int32_t)(mtmp[ 4] - ((int64_t)tab[2].re)*t[2].im + 0x40000000 >> 31);
291 z[2].im = (int32_t)(mtmp[ 5] - ((int64_t)tab[1].re)*t[4].im + 0x40000000 >> 31);
293 t[0].re = (int32_t)(mtmp[ 6] - ((int64_t)tab[0].im)*t[3].im + 0x40000000 >> 31);
294 t[2].re = (int32_t)(mtmp[ 7] - ((int64_t)tab[1].im)*t[1].im + 0x40000000 >> 31);
295 t[4].re = (int32_t)(mtmp[ 8] + ((int64_t)tab[0].im)*t[1].im + 0x40000000 >> 31);
296 t[0].im = (int32_t)(mtmp[ 9] + ((int64_t)tab[2].im)*t[5].re + 0x40000000 >> 31);
297 t[2].im = (int32_t)(mtmp[10] - ((int64_t)tab[1].im)*t[1].re + 0x40000000 >> 31);
298 t[4].im = (int32_t)(mtmp[11] - ((int64_t)tab[0].im)*t[3].re + 0x40000000 >> 31);
300 z[0].re = tab[0].re*t[0].re - tab[2].re*t[4].re - tab[1].re*t[2].re;
301 z[1].re = tab[0].re*t[4].re - tab[1].re*t[0].re - tab[2].re*t[2].re;
302 z[2].re = tab[0].re*t[2].re - tab[2].re*t[0].re - tab[1].re*t[4].re;
303 z[0].im = tab[0].re*t[0].im - tab[1].re*t[2].im - tab[2].re*t[4].im;
304 z[1].im = tab[0].re*t[4].im - tab[1].re*t[0].im - tab[2].re*t[2].im;
305 z[2].im = tab[0].re*t[2].im - tab[2].re*t[0].im - tab[1].re*t[4].im;
307 /* It's possible to do t[4].re and t[0].im with 2 multiplies only by
310 t[0].re = tab[2].im*t[1].im + tab[1].im*t[5].im - tab[0].im*t[3].im;
311 t[2].re = tab[0].im*t[5].im + tab[2].im*t[3].im - tab[1].im*t[1].im;
312 t[4].re = tab[2].im*t[5].im + tab[1].im*t[3].im + tab[0].im*t[1].im;
313 t[0].im = tab[0].im*t[1].re + tab[1].im*t[3].re + tab[2].im*t[5].re;
314 t[2].im = tab[2].im*t[3].re + tab[0].im*t[5].re - tab[1].im*t[1].re;
315 t[4].im = tab[2].im*t[1].re + tab[1].im*t[5].re - tab[0].im*t[3].re;
318 BF(t[1].re, z[0].re, z[0].re, t[4].re);
319 BF(t[3].re, z[1].re, z[1].re, t[2].re);
320 BF(t[5].re, z[2].re, z[2].re, t[0].re);
325 out[1*stride].re = in[0].re + z[0].re;
327 out[2*stride].re = in[0].re + t[3].re;
329 out[3*stride].re = in[0].re + z[2].re;
331 out[4*stride].re = in[0].re + t[5].re;
333 out[5*stride].re = in[0].re + z[1].re;
335 out[6*stride].re = in[0].re + t[1].re;
348 BF(t[1].re, t[0].re, in[1].re, in[8].re);
350 BF(t[3].re, t[2].re, in[2].re, in[7].re);
352 BF(t[5].re, t[4].re, in[3].re, in[6].re);
354 BF(t[7].re, t[6].re, in[4].re, in[5].re);
357 w[0].re = t[0].re - t[6].re;
359 w[1].re = t[2].re - t[6].re;
361 w[2].re = t[1].re - t[7].re;
363 w[3].re = t[3].re + t[7].re;
366 z[0].re = in[0].re + t[4].re;
369 z[1].re = t[0].re + t[2].re + t[6].re;
372 out[0*stride].re = z[0].re + z[1].re;
376 mtmp[0] = t[1].re - t[3].re + t[7].re;
379 y[3].re = (int32_t)(((int64_t)tab[0].im)*mtmp[0] + 0x40000000 >> 31);
382 mtmp[0] = (int32_t)(((int64_t)tab[0].re)*z[1].re + 0x40000000 >> 31);
383 mtmp[1] = (int32_t)(((int64_t)tab[0].re)*z[1].im + 0x40000000 >> 31);
384 mtmp[2] = (int32_t)(((int64_t)tab[0].re)*t[4].re + 0x40000000 >> 31);
385 mtmp[3] = (int32_t)(((int64_t)tab[0].re)*t[4].im + 0x40000000 >> 31);
387 x[3].re = z[0].re + (int32_t)mtmp[0];
389 z[0].re = in[0].re + (int32_t)mtmp[2];
392 mtmp[0] = ((int64_t)tab[1].re)*w[0].re;
393 mtmp[1] = ((int64_t)tab[1].re)*w[0].im;
394 mtmp[2] = ((int64_t)tab[2].im)*w[0].re;
396 mtmp[4] = ((int64_t)tab[1].im)*w[2].re;
398 mtmp[6] = ((int64_t)tab[2].re)*w[2].re;
399 mtmp[7] = ((int64_t)tab[2].re)*w[2].im;
401 x[1].re = (int32_t)(mtmp[0] + ((int64_t)tab[2].im)*w[1].re + 0x40000000 >> 31);
403 x[2].re = (int32_t)(mtmp[2] - ((int64_t)tab[3].re)*w[1].re + 0x40000000 >> 31);
404 x[2].im = (int32_t)(mtmp[3] - ((int64_t)tab[3].re)*w[1].im + 0x40000000 >> 31);
405 y[1].re = (int32_t)(mtmp[4] + ((int64_t)tab[2].re)*w[3].re + 0x40000000 >> 31);
406 y[1].im = (int32_t)(mtmp[5] + ((int64_t)tab[2].re)*w[3].im + 0x40000000 >> 31);
407 y[2].re = (int32_t)(mtmp[6] - ((int64_t)tab[3].im)*w[3].re + 0x40000000 >> 31);
410 y[0].re = (int32_t)(((int64_t)tab[0].im)*t[5].re + 0x40000000 >> 31);
414 y[3].re = tab[0].im*(t[1].re - t[3].re + t[7].re);
417 x[3].re = z[0].re + tab[0].re*z[1].re;
418 x[3].im = z[0].im + tab[0].re*z[1].im;
419 z[0].re = in[0].re + tab[0].re*t[4].re;
420 z[0].im = in[0].im + tab[0].re*t[4].im;
422 x[1].re = tab[1].re*w[0].re + tab[2].im*w[1].re;
423 x[1].im = tab[1].re*w[0].im + tab[2].im*w[1].im;
424 x[2].re = tab[2].im*w[0].re - tab[3].re*w[1].re;
425 x[2].im = tab[2].im*w[0].im - tab[3].re*w[1].im;
426 y[1].re = tab[1].im*w[2].re + tab[2].re*w[3].re;
427 y[1].im = tab[1].im*w[2].im + tab[2].re*w[3].im;
428 y[2].re = tab[2].re*w[2].re - tab[3].im*w[3].re;
429 y[2].im = tab[2].re*w[2].im - tab[3].im*w[3].im;
431 y[0].re = tab[0].im*t[5].re;
435 x[4].re = x[1].re + x[2].re;
438 y[4].re = y[1].re - y[2].re;
440 x[1].re = z[0].re + x[1].re;
442 y[1].re = y[0].re + y[1].re;
444 x[2].re = z[0].re + x[2].re;
446 y[2].re = y[2].re - y[0].re;
448 x[4].re = z[0].re - x[4].re;
450 y[4].re = y[0].re - y[4].re;
453 out[1*stride] = (TXComplex){ x[1].re + y[1].im, x[1].im - y[1].re };
454 out[2*stride] = (TXComplex){ x[2].re + y[2].im, x[2].im - y[2].re };
455 out[3*stride] = (TXComplex){ x[3].re + y[3].im, x[3].im - y[3].re };
456 out[4*stride] = (TXComplex){ x[4].re + y[4].im, x[4].im - y[4].re };
457 out[5*stride] = (TXComplex){ x[4].re - y[4].im, x[4].im + y[4].re };
458 out[6*stride] = (TXComplex){ x[3].re - y[3].im, x[3].im + y[3].re };
459 out[7*stride] = (TXComplex){ x[2].re - y[2].im, x[2].im + y[2].re };
460 out[8*stride] = (TXComplex){ x[1].re - y[1].im, x[1].im + y[1].re };
478 r0=a0.re; \
480 r1=a1.re; \
483 BF(a2.re, a0.re, r0, t5); \
486 BF(a3.re, a1.re, r1, t4); \
492 CMUL(t1, t2, a2.re, a2.im, wre, -wim); \
493 CMUL(t5, t6, a3.re, a3.im, wre, wim); \
571 BF(tmp.re, z[0].re, z[0].re, z[1].re);
582 BF(t3, t1, z[0].re, z[1].re);
583 BF(t8, t6, z[3].re, z[2].re);
584 BF(z[2].re, z[0].re, t1, t6);
588 BF(z[3].re, z[1].re, t3, t7);
601 BF(t1, z[5].re, z[4].re, -z[5].re);
603 BF(t5, z[7].re, z[6].re, -z[7].re);
625 t1 = z[ 8].re;
627 t5 = z[12].re;
761 tmp.re += res.re;
986 tmp.re = FOLD(-src[ len2 + k], src[1*len2 - 1 - k]);
989 tmp.re = FOLD(-src[ len2 + k], -src[5*len2 - 1 - k]);
992 CMUL(z[idx].im, z[idx].re, tmp.re, tmp.im, exp[i].re, exp[i].im);
999 TXComplex src1 = { z[i1].re, z[i1].im };
1000 TXComplex src0 = { z[i0].re, z[i0].im };
1002 CMUL(dst[2*i1*stride + stride], dst[2*i0*stride], src0.re, src0.im,
1003 exp[i0].im, exp[i0].re);
1004 CMUL(dst[2*i0*stride + stride], dst[2*i1*stride], src1.re, src1.im,
1005 exp[i1].im, exp[i1].re);
1031 TXComplex src1 = { z[i1].im, z[i1].re };
1032 TXComplex src0 = { z[i0].im, z[i0].re };
1034 CMUL(z[i1].re, z[i0].im, src1.re, src1.im, exp[i1].im, exp[i1].re);
1035 CMUL(z[i0].re, z[i1].im, src0.re, src0.im, exp[i0].im, exp[i0].re);
1186 TXComplex src1 = { s->tmp[s1].im, s->tmp[s1].re }; \
1187 TXComplex src0 = { s->tmp[s0].im, s->tmp[s0].re }; \
1189 CMUL(z[i1].re, z[i0].im, src1.re, src1.im, exp[i1].im, exp[i1].re); \
1190 CMUL(z[i0].re, z[i1].im, src0.re, src0.im, exp[i0].im, exp[i0].re); \
1233 tmp.re = FOLD(-src[ len4 + k], src[1*len4 - 1 - k]); \
1236 tmp.re = FOLD(-src[ len4 + k], -src[5*len4 - 1 - k]); \
1239 CMUL(fft##N##in[j].im, fft##N##in[j].re, tmp.re, tmp.im, \
1240 exp[k >> 1].re, exp[k >> 1].im); \
1251 TXComplex src1 = { s->tmp[s1].re, s->tmp[s1].im }; \
1252 TXComplex src0 = { s->tmp[s0].re, s->tmp[s0].im }; \
1254 CMUL(dst[2*i1*stride + stride], dst[2*i0*stride], src0.re, src0.im, \
1255 exp[i0].im, exp[i0].re); \
1256 CMUL(dst[2*i0*stride + stride], dst[2*i1*stride], src1.re, src1.im, \
1257 exp[i1].im, exp[i1].re); \
1339 data[0].im = data[len2].re; \
1344 t[0].re = data[0].re; \
1345 data[0].re = t[0].re + data[0].im; \
1346 data[0].im = t[0].re - data[0].im; \
1347 data[ 0].re = MULT(fact[0], data[ 0].re); \
1349 data[len4].re = MULT(fact[2], data[len4].re); \
1354 t[0].re = MULT(fact[4], (data[i].re + data[len2 - i].re)); \
1356 t[1].re = MULT(fact[6], (data[i].im + data[len2 - i].im)); \
1357 t[1].im = MULT(fact[7], (data[i].re - data[len2 - i].re)); \
1360 CMUL(t[2].re, t[2].im, t[1].re, t[1].im, tcos[i], tsin[i]); \
1362 data[ i].re = t[0].re + t[2].re; \
1364 data[len2 - i].re = t[0].re - t[2].re; \
1372 data[len2].re = data[0].im; \
1420 s->exp[i].re = RESCALE(cos(alpha) * scale);