summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2024-07-10 08:57:26 -0400
committerSolomon Peachy <pizza@shaftnet.org>2024-07-10 09:23:33 -0400
commit67b5fa06d5b128ad66d1f4b946c9080387171529 (patch)
tree339020b0af0537a6e8f9c27f73e08746a5dfffe1
parentfdbaf7df597b404be04cecbdc83dbc0551a5b996 (diff)
downloadrockbox-67b5fa06d5b128ad66d1f4b946c9080387171529.tar.gz
rockbox-67b5fa06d5b128ad66d1f4b946c9080387171529.zip
opus: Re-enable Coldfire ASM optimizations
Was accidently disabled in 14c6bb798d6bebc80f07e863236adbaf8d156a9c (in January 2019) (Had to make a minor change due argument differences) Change-Id: If7c128cdeaa9ed82b2b33de1b75ca7cc4a95abdd
-rw-r--r--lib/rbcodec/codecs/libopus/celt/_kiss_fft_guts.h3
-rw-r--r--lib/rbcodec/codecs/libopus/celt/arch.h2
-rw-r--r--lib/rbcodec/codecs/libopus/celt/cf/fixed_cf.h3
-rw-r--r--lib/rbcodec/codecs/libopus/silk/macros.h4
4 files changed, 11 insertions, 1 deletions
diff --git a/lib/rbcodec/codecs/libopus/celt/_kiss_fft_guts.h b/lib/rbcodec/codecs/libopus/celt/_kiss_fft_guts.h
index 17392b3e90..ea847ff31d 100644
--- a/lib/rbcodec/codecs/libopus/celt/_kiss_fft_guts.h
+++ b/lib/rbcodec/codecs/libopus/celt/_kiss_fft_guts.h
@@ -97,6 +97,9 @@
97#if defined(OPUS_ARM_INLINE_EDSP) 97#if defined(OPUS_ARM_INLINE_EDSP)
98#include "arm/kiss_fft_armv5e.h" 98#include "arm/kiss_fft_armv5e.h"
99#endif 99#endif
100#if defined(OPUS_CF_INLINE_ASM)
101#include "cf/kiss_fft_cf.h"
102#endif
100#if defined(MIPSr1_ASM) 103#if defined(MIPSr1_ASM)
101#include "mips/kiss_fft_mipsr1.h" 104#include "mips/kiss_fft_mipsr1.h"
102#endif 105#endif
diff --git a/lib/rbcodec/codecs/libopus/celt/arch.h b/lib/rbcodec/codecs/libopus/celt/arch.h
index 08b07db598..6437f59624 100644
--- a/lib/rbcodec/codecs/libopus/celt/arch.h
+++ b/lib/rbcodec/codecs/libopus/celt/arch.h
@@ -170,6 +170,8 @@ static OPUS_INLINE opus_int16 SAT16(opus_int32 x) {
170#include "fixed_c5x.h" 170#include "fixed_c5x.h"
171#elif defined (TI_C6X_ASM) 171#elif defined (TI_C6X_ASM)
172#include "fixed_c6x.h" 172#include "fixed_c6x.h"
173#elif defined (OPUS_CF_INLINE_ASM)
174#include "cf/fixed_cf.h"
173#endif 175#endif
174 176
175#endif 177#endif
diff --git a/lib/rbcodec/codecs/libopus/celt/cf/fixed_cf.h b/lib/rbcodec/codecs/libopus/celt/cf/fixed_cf.h
index ba1829871a..02b9eacdf3 100644
--- a/lib/rbcodec/codecs/libopus/celt/cf/fixed_cf.h
+++ b/lib/rbcodec/codecs/libopus/celt/cf/fixed_cf.h
@@ -55,8 +55,9 @@ static inline int32_t MULT32_32_Q31_cf(int32_t a, int32_t b)
55 55
56#define OVERRIDE_COMB_FILTER_CONST 56#define OVERRIDE_COMB_FILTER_CONST
57static inline void comb_filter_const(opus_val32 *y, opus_val32 *x, int T, int N, 57static inline void comb_filter_const(opus_val32 *y, opus_val32 *x, int T, int N,
58 opus_val16 g10, opus_val16 g11, opus_val16 g12) 58 opus_val16 g10, opus_val16 g11, opus_val16 g12, int arch)
59{ 59{
60 (void)arch;
60 opus_val32 x0, x1, x2, x3, x4; 61 opus_val32 x0, x1, x2, x3, x4;
61 int i; 62 int i;
62 x4 = x[-T-2]; 63 x4 = x[-T-2];
diff --git a/lib/rbcodec/codecs/libopus/silk/macros.h b/lib/rbcodec/codecs/libopus/silk/macros.h
index 3c67b6e5d9..f46e27caaa 100644
--- a/lib/rbcodec/codecs/libopus/silk/macros.h
+++ b/lib/rbcodec/codecs/libopus/silk/macros.h
@@ -143,6 +143,10 @@ static OPUS_INLINE opus_int32 silk_CLZ32(opus_int32 in32)
143#include "arm/macros_armv5e.h" 143#include "arm/macros_armv5e.h"
144#endif 144#endif
145 145
146#ifdef OPUS_CF_INLINE_ASM
147#include "cf/macros_cf.h"
148#endif
149
146#ifdef OPUS_ARM_PRESUME_AARCH64_NEON_INTR 150#ifdef OPUS_ARM_PRESUME_AARCH64_NEON_INTR
147#include "arm/macros_arm64.h" 151#include "arm/macros_arm64.h"
148#endif 152#endif