| 331 | } |
| 332 | |
| 333 | NOINLINE static void pass2f (size_t ido, size_t l1, const cmplx * restrict cc, |
| 334 | cmplx * restrict ch, const cmplx * restrict wa) |
| 335 | { |
| 336 | const size_t cdim=2; |
| 337 | |
| 338 | if (ido==1) |
| 339 | for (size_t k=0; k<l1; ++k) |
| 340 | PMC (CH(0,k,0),CH(0,k,1),CC(0,0,k),CC(0,1,k)) |
| 341 | else |
| 342 | for (size_t k=0; k<l1; ++k) |
| 343 | { |
| 344 | PMC (CH(0,k,0),CH(0,k,1),CC(0,0,k),CC(0,1,k)) |
| 345 | for (size_t i=1; i<ido; ++i) |
| 346 | { |
| 347 | cmplx t; |
| 348 | PMC (CH(i,k,0),t,CC(i,0,k),CC(i,1,k)) |
| 349 | A_EQ_CB_MUL_C (CH(i,k,1),WA(0,i),t) |
| 350 | } |
| 351 | } |
| 352 | } |
| 353 | |
| 354 | #define PREP3(idx) \ |
| 355 | cmplx t0 = CC(idx,0,k), t1, t2; \ |