Skip to content

Commit 260679b

Browse files
SiarheiVolkaujmvalin
authored andcommitted
MIPS: tune NSQ for MIPS
I observed that overridden silk_noise_shape_quantizer_del_dec is refactored in C version, and most performance critical parts moved to separate functions silk_noise_shape_quantizer_short_prediction and silk_NSQ_noise_shape_feedback_loop. So let's drop current mips implementation and override only the critical parts mentioned above. Signed-off-by: Siarhei Volkau <[email protected]> Signed-off-by: Jean-Marc Valin <[email protected]>
1 parent 51644d5 commit 260679b

File tree

5 files changed

+142
-414
lines changed

5 files changed

+142
-414
lines changed

silk/NSQ.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,4 +98,8 @@ static OPUS_INLINE opus_int32 silk_NSQ_noise_shape_feedback_loop_c(const opus_in
9898
#include "arm/NSQ_neon.h"
9999
#endif
100100

101+
#if defined(__mips)
102+
#include "mips/NSQ_mips.h"
103+
#endif
104+
101105
#endif /* SILK_NSQ_H */

silk/NSQ_del_dec.c

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,6 @@ typedef struct {
6161

6262
typedef NSQ_sample_struct NSQ_sample_pair[ 2 ];
6363

64-
#if defined(FIXED_POINT) && defined(__mips_dsp) && __mips == 32
65-
#include "mips/NSQ_del_dec_mipsr1.h"
66-
#endif
6764
static OPUS_INLINE void silk_nsq_del_dec_scale_states(
6865
const silk_encoder_state *psEncC, /* I Encoder State */
6966
silk_nsq_state *NSQ, /* I/O NSQ state */

0 commit comments

Comments
 (0)