Index: third_party/opus/src/celt/fixed_c6x.h |
diff --git a/third_party/opus/src/celt/celt_lpc.h b/third_party/opus/src/celt/fixed_c6x.h |
similarity index 57% |
copy from third_party/opus/src/celt/celt_lpc.h |
copy to third_party/opus/src/celt/fixed_c6x.h |
index 323459eb1a83156664784742ddca78e1c44e6dc0..bb6ad927803f9fabc155e10bd7da845fce2e8ce8 100644 |
--- a/third_party/opus/src/celt/celt_lpc.h |
+++ b/third_party/opus/src/celt/fixed_c6x.h |
@@ -1,5 +1,8 @@ |
-/* Copyright (c) 2009-2010 Xiph.Org Foundation |
- Written by Jean-Marc Valin */ |
+/* Copyright (C) 2008 CSIRO */ |
+/** |
+ @file fixed_c6x.h |
+ @brief Fixed-point operations for the TI C6x DSP family |
+*/ |
/* |
Redistribution and use in source and binary forms, with or without |
modification, are permitted provided that the following conditions |
@@ -25,43 +28,43 @@ |
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
-#ifndef PLC_H |
-#define PLC_H |
+#ifndef FIXED_C6X_H |
+#define FIXED_C6X_H |
+ |
+#undef MULT16_16SU |
+#define MULT16_16SU(a,b) _mpysu(a,b) |
+ |
+#undef MULT_16_16 |
+#define MULT_16_16(a,b) _mpy(a,b) |
+ |
+#define celt_ilog2(x) (30 - _norm(x)) |
+#define OVERRIDE_CELT_ILOG2 |
+ |
+#undef MULT16_32_Q15 |
+#define MULT16_32_Q15(a,b) (_mpylill(a, b) >> 15) |
-#include "arch.h" |
-#include "cpu_support.h" |
+#if 0 |
+#include "dsplib.h" |
-#if defined(OPUS_X86_MAY_HAVE_SSE4_1) |
-#include "x86/celt_lpc_sse.h" |
-#endif |
+#undef MAX16 |
+#define MAX16(a,b) _max(a,b) |
-#define LPC_ORDER 24 |
+#undef MIN16 |
+#define MIN16(a,b) _min(a,b) |
-void _celt_lpc(opus_val16 *_lpc, const opus_val32 *ac, int p); |
+#undef MAX32 |
+#define MAX32(a,b) _lmax(a,b) |
-void celt_fir_c( |
- const opus_val16 *x, |
- const opus_val16 *num, |
- opus_val16 *y, |
- int N, |
- int ord, |
- opus_val16 *mem, |
- int arch); |
+#undef MIN32 |
+#define MIN32(a,b) _lmin(a,b) |
-#if !defined(OVERRIDE_CELT_FIR) |
-#define celt_fir(x, num, y, N, ord, mem, arch) \ |
- (celt_fir_c(x, num, y, N, ord, mem, arch)) |
-#endif |
+#undef VSHR32 |
+#define VSHR32(a, shift) _lshl(a,-(shift)) |
-void celt_iir(const opus_val32 *x, |
- const opus_val16 *den, |
- opus_val32 *y, |
- int N, |
- int ord, |
- opus_val16 *mem, |
- int arch); |
+#undef MULT16_16_Q15 |
+#define MULT16_16_Q15(a,b) (_smpy(a,b)) |
-int _celt_autocorr(const opus_val16 *x, opus_val32 *ac, |
- const opus_val16 *window, int overlap, int lag, int n, int arch); |
+#define celt_maxabs16(x, len) MAX32(EXTEND32(maxval((DATA *)x, len)),-EXTEND32(minval((DATA *)x, len))) |
+#define OVERRIDE_CELT_MAXABS16 |
-#endif /* PLC_H */ |
+#endif /* FIXED_C6X_H */ |