* \file imdct.c Inverse modified discrete cosine transform.
*/
-#include <inttypes.h>
#include <math.h>
-#include <string.h>
-#include <stdlib.h>
#include <regex.h>
#include "para.h"
struct fft_context fft;
};
-/** cos(2 * pi * x / n) for 0 <= x <= n / 4, followed by its reverse */
+/** \cond cosine_tabs */
+
+/* cos(2 * pi * x / n) for 0 <= x <= n / 4, followed by its reverse */
#define COSINE_TAB(n) static fftsample_t cos_ ## n[n / 2] __a_aligned(16)
COSINE_TAB(16);
cos_16, cos_32, cos_64, cos_128, cos_256, cos_512, cos_1024, cos_2048,
cos_4096, cos_8192, cos_16384, cos_32768, cos_65536,
};
+/** \endcond cosine_tabs */
-static int split_radix_permutation(int i, int n)
+__a_const static int split_radix_permutation(int i, int n)
{
int m;
if (n <= 2)
fft(&s->fft, z);
/* post rotation + reordering */
- output += n4;
for (k = 0; k < n8; k++) {
fftsample_t r0, i0, r1, i1;
CMUL(r0, i1, z[n8 - k - 1].im, z[n8 - k - 1].re,