mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-11-09 13:12:37 -05:00
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:
parent
94c7c908b3
commit
da4e02cdd3
17 changed files with 28 additions and 23 deletions
|
|
@ -2,6 +2,6 @@ decoder.c
|
|||
shndec.c
|
||||
#if defined(CPU_COLDFIRE)
|
||||
coldfire.S
|
||||
#elif defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
arm.S
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -320,7 +320,7 @@ static int decode_subframe_lpc(FLACContext *s, int32_t* decoded, int pred_order,
|
|||
(void)sum;
|
||||
lpc_decode_emac(s->blocksize - pred_order, qlevel, pred_order,
|
||||
decoded + pred_order, coeffs);
|
||||
#elif defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
(void)sum;
|
||||
lpc_decode_arm(s->blocksize - pred_order, qlevel, pred_order,
|
||||
decoded + pred_order, coeffs);
|
||||
|
|
|
|||
|
|
@ -7,8 +7,7 @@ stream.c
|
|||
synth.c
|
||||
#if defined(CPU_COLDFIRE)
|
||||
imdct_mcf5249.S
|
||||
#endif
|
||||
#if defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
imdct_l_arm.S
|
||||
synth_full_arm.S
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
#if defined(CPU_COLDFIRE)
|
||||
#define FPM_COLDFIRE_EMAC
|
||||
#elif defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
#define FPM_ARM
|
||||
#elif defined(CPU_MIPS)
|
||||
#define FPM_MIPS
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ resample.c
|
|||
#ifdef CPU_COLDFIRE
|
||||
filters_cf.S
|
||||
ltp_cf.S
|
||||
#elif defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
filters_arm4.S
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
#define DISABLE_VBR
|
||||
|
||||
/* Make use of ARM4E assembly optimizations */
|
||||
#if defined(CPU_ARM)
|
||||
#if defined(CPU_ARM_CLASSIC)
|
||||
#if (ARM_ARCH < 5)
|
||||
#define ARM4_ASM
|
||||
#else
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
ttadec.c
|
||||
#ifdef CPU_ARM
|
||||
#if defined(CPU_ARM_CLASSIC)
|
||||
filter_arm.S
|
||||
#endif
|
||||
#ifdef CPU_COLDFIRE
|
||||
#elif defined(CPU_COLDFIRE)
|
||||
filter_coldfire.S
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
///////// Filter Settings //////////
|
||||
static int flt_set[3] = {10, 9, 10};
|
||||
|
||||
#if defined(CPU_ARM) || defined(CPU_COLDFIRE)
|
||||
#if defined(CPU_ARM_CLASSIC) || defined(CPU_COLDFIRE)
|
||||
int hybrid_filter(fltst *fs, int *in); /* implements in filter_arm.S */
|
||||
|
||||
#else
|
||||
|
|
|
|||
|
|
@ -7,8 +7,7 @@ words.c
|
|||
wputils.c
|
||||
#if defined(CPU_COLDFIRE)
|
||||
coldfire.S
|
||||
#endif
|
||||
#if defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
arm.S
|
||||
arml.S
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -304,7 +304,7 @@ int read_sample_rate (WavpackContext *wpc, WavpackMetadata *wpmd)
|
|||
|
||||
#if defined(CPU_COLDFIRE)
|
||||
extern void decorr_stereo_pass_cont_mcf5249 (struct decorr_pass *dpp, int32_t *buffer, int32_t sample_count);
|
||||
#elif defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
extern void decorr_stereo_pass_cont_arm (struct decorr_pass *dpp, int32_t *buffer, int32_t sample_count);
|
||||
extern void decorr_stereo_pass_cont_arml (struct decorr_pass *dpp, int32_t *buffer, int32_t sample_count);
|
||||
#else
|
||||
|
|
@ -369,7 +369,7 @@ int32_t unpack_samples (WavpackContext *wpc, int32_t *buffer, uint32_t sample_co
|
|||
decorr_stereo_pass (dpp, buffer, 8);
|
||||
#if defined(CPU_COLDFIRE)
|
||||
decorr_stereo_pass_cont_mcf5249 (dpp, buffer + 16, sample_count - 8);
|
||||
#elif defined(CPU_ARM)
|
||||
#elif defined(CPU_ARM_CLASSIC)
|
||||
if (((flags & MAG_MASK) >> MAG_LSB) > 15)
|
||||
decorr_stereo_pass_cont_arml (dpp, buffer + 16, sample_count - 8);
|
||||
else
|
||||
|
|
@ -541,7 +541,7 @@ static void decorr_stereo_pass (struct decorr_pass *dpp, int32_t *buffer, int32_
|
|||
dpp->weight_B = weight_B;
|
||||
}
|
||||
|
||||
#if (!defined(CPU_COLDFIRE) && !defined(CPU_ARM))
|
||||
#if (!defined(CPU_COLDFIRE) && !defined(CPU_ARM_CLASSIC))
|
||||
|
||||
static void decorr_stereo_pass_cont (struct decorr_pass *dpp, int32_t *buffer, int32_t sample_count)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue