1
0
Fork 0
forked from len0rd/rockbox

codecs: disable incompatible ARM assembly for Cortex-M

Some assembly routines don't work on Thumb as-is. For now
just disable these so the codecs compile.

Affected codecs:

- libflac
- libmad
- libspeex
- libtta
- libwavpack

A few DSP routines need to be disabled for the same reason:

- crossfeed_process
- crossfeed_meier_process
- resample_hermite
- filter_process
- sample_output_stereo

Change-Id: I277e0719652096745a19a7e2b597eff32d8e1553
This commit is contained in:
Aidan MacDonald 2024-11-14 18:06:35 +00:00
parent 94c7c908b3
commit da4e02cdd3
17 changed files with 28 additions and 23 deletions

View file

@ -922,7 +922,7 @@ mad_fixed_t III_requantize(unsigned int value, signed int exp)
}
/* we must take care that sz >= bits and sz < sizeof(long) lest bits == 0 */
# if defined(CPU_ARM)
# if defined(CPU_ARM_CLASSIC)
# define MASK(cache, sz, bits) \
({ unsigned long res; \
asm ("mov %0, #1\n\t" \
@ -1557,7 +1557,7 @@ enum mad_error III_stereo(mad_fixed_t xr[2][576],
return MAD_ERROR_NONE;
}
#if defined(CPU_ARM)
#if defined(CPU_ARM_CLASSIC)
void III_aliasreduce(mad_fixed_t xr[576], int lines);
#else
/*
@ -2683,7 +2683,7 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
#endif
#ifdef CPU_ARM
#if defined(CPU_ARM_CLASSIC)
void III_overlap(mad_fixed_t const output[36], mad_fixed_t overlap[18],
mad_fixed_t sample[18][32], unsigned int sb);
#else