diff options
author | Søren Sandmann Pedersen <ssp@redhat.com> | 2010-09-24 22:29:48 -0400 |
---|---|---|
committer | Søren Sandmann Pedersen <ssp@redhat.com> | 2010-09-24 22:29:48 -0400 |
commit | e939870b62a716f1314e278256dac83fee486b97 (patch) | |
tree | 5088dc8e2f7eb795ef883cf751d1cc093a693f02 | |
parent | 2b2574daa7ea65aab21f821279b3e92122ae823f (diff) |
common subexpression
-rw-r--r-- | fft.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -8,6 +8,7 @@ do_fft (complex_t *buffer, int n, complex_t principal) { complex_t *temp, *even, *odd; complex_t alpha; + complex_t p2; int i; if (n == 1) @@ -23,8 +24,10 @@ do_fft (complex_t *buffer, int n, complex_t principal) odd[i] = buffer[2 * i + 1]; } - do_fft (even, n/2, complex_mul (principal, principal)); - do_fft (odd, n/2, complex_mul (principal, principal)); + p2 = complex_mul (principal, principal); + + do_fft (even, n/2, p2); + do_fft (odd, n/2, p2); alpha.re = 1.0; alpha.im = 0; |