Index: celt/fixed_debug.h |
diff --git a/celt/fixed_debug.h b/celt/fixed_debug.h |
index f11d890dff59b19eabb49737a882afd1c74587c0..80bc94910fa3e51fe762847734d7bd60ab0cb5af 100644 |
--- a/celt/fixed_debug.h |
+++ b/celt/fixed_debug.h |
@@ -33,9 +33,9 @@ |
#define FIXED_DEBUG_H |
#include <stdio.h> |
+#include "opus_defines.h" |
#ifdef CELT_C |
-#include "opus_defines.h" |
OPUS_EXPORT opus_int64 celt_mips=0; |
#else |
extern opus_int64 celt_mips; |
@@ -59,7 +59,7 @@ extern opus_int64 celt_mips; |
#define SHR(a,b) SHR32(a,b) |
#define PSHR(a,b) PSHR32(a,b) |
-static inline short NEG16(int x) |
+static OPUS_INLINE short NEG16(int x) |
{ |
int res; |
if (!VERIFY_SHORT(x)) |
@@ -80,7 +80,7 @@ static inline short NEG16(int x) |
celt_mips++; |
return res; |
} |
-static inline int NEG32(opus_int64 x) |
+static OPUS_INLINE int NEG32(opus_int64 x) |
{ |
opus_int64 res; |
if (!VERIFY_INT(x)) |
@@ -103,7 +103,7 @@ static inline int NEG32(opus_int64 x) |
} |
#define EXTRACT16(x) EXTRACT16_(x, __FILE__, __LINE__) |
-static inline short EXTRACT16_(int x, char *file, int line) |
+static OPUS_INLINE short EXTRACT16_(int x, char *file, int line) |
{ |
int res; |
if (!VERIFY_SHORT(x)) |
@@ -119,7 +119,7 @@ static inline short EXTRACT16_(int x, char *file, int line) |
} |
#define EXTEND32(x) EXTEND32_(x, __FILE__, __LINE__) |
-static inline int EXTEND32_(int x, char *file, int line) |
+static OPUS_INLINE int EXTEND32_(int x, char *file, int line) |
{ |
int res; |
if (!VERIFY_SHORT(x)) |
@@ -135,7 +135,7 @@ static inline int EXTEND32_(int x, char *file, int line) |
} |
#define SHR16(a, shift) SHR16_(a, shift, __FILE__, __LINE__) |
-static inline short SHR16_(int a, int shift, char *file, int line) |
+static OPUS_INLINE short SHR16_(int a, int shift, char *file, int line) |
{ |
int res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(shift)) |
@@ -157,7 +157,7 @@ static inline short SHR16_(int a, int shift, char *file, int line) |
return res; |
} |
#define SHL16(a, shift) SHL16_(a, shift, __FILE__, __LINE__) |
-static inline short SHL16_(int a, int shift, char *file, int line) |
+static OPUS_INLINE short SHL16_(int a, int shift, char *file, int line) |
{ |
int res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(shift)) |
@@ -179,7 +179,7 @@ static inline short SHL16_(int a, int shift, char *file, int line) |
return res; |
} |
-static inline int SHR32(opus_int64 a, int shift) |
+static OPUS_INLINE int SHR32(opus_int64 a, int shift) |
{ |
opus_int64 res; |
if (!VERIFY_INT(a) || !VERIFY_SHORT(shift)) |
@@ -201,7 +201,7 @@ static inline int SHR32(opus_int64 a, int shift) |
return res; |
} |
#define SHL32(a, shift) SHL32_(a, shift, __FILE__, __LINE__) |
-static inline int SHL32_(opus_int64 a, int shift, char *file, int line) |
+static OPUS_INLINE int SHL32_(opus_int64 a, int shift, char *file, int line) |
{ |
opus_int64 res; |
if (!VERIFY_INT(a) || !VERIFY_SHORT(shift)) |
@@ -234,7 +234,7 @@ static inline int SHL32_(opus_int64 a, int shift, char *file, int line) |
//#define SHL(a,shift) ((a) << (shift)) |
#define ADD16(a, b) ADD16_(a, b, __FILE__, __LINE__) |
-static inline short ADD16_(int a, int b, char *file, int line) |
+static OPUS_INLINE short ADD16_(int a, int b, char *file, int line) |
{ |
int res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -257,7 +257,7 @@ static inline short ADD16_(int a, int b, char *file, int line) |
} |
#define SUB16(a, b) SUB16_(a, b, __FILE__, __LINE__) |
-static inline short SUB16_(int a, int b, char *file, int line) |
+static OPUS_INLINE short SUB16_(int a, int b, char *file, int line) |
{ |
int res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -280,7 +280,7 @@ static inline short SUB16_(int a, int b, char *file, int line) |
} |
#define ADD32(a, b) ADD32_(a, b, __FILE__, __LINE__) |
-static inline int ADD32_(opus_int64 a, opus_int64 b, char *file, int line) |
+static OPUS_INLINE int ADD32_(opus_int64 a, opus_int64 b, char *file, int line) |
{ |
opus_int64 res; |
if (!VERIFY_INT(a) || !VERIFY_INT(b)) |
@@ -303,7 +303,7 @@ static inline int ADD32_(opus_int64 a, opus_int64 b, char *file, int line) |
} |
#define SUB32(a, b) SUB32_(a, b, __FILE__, __LINE__) |
-static inline int SUB32_(opus_int64 a, opus_int64 b, char *file, int line) |
+static OPUS_INLINE int SUB32_(opus_int64 a, opus_int64 b, char *file, int line) |
{ |
opus_int64 res; |
if (!VERIFY_INT(a) || !VERIFY_INT(b)) |
@@ -327,7 +327,7 @@ static inline int SUB32_(opus_int64 a, opus_int64 b, char *file, int line) |
#undef UADD32 |
#define UADD32(a, b) UADD32_(a, b, __FILE__, __LINE__) |
-static inline unsigned int UADD32_(opus_uint64 a, opus_uint64 b, char *file, int line) |
+static OPUS_INLINE unsigned int UADD32_(opus_uint64 a, opus_uint64 b, char *file, int line) |
{ |
opus_uint64 res; |
if (!VERIFY_UINT(a) || !VERIFY_UINT(b)) |
@@ -351,7 +351,7 @@ static inline unsigned int UADD32_(opus_uint64 a, opus_uint64 b, char *file, int |
#undef USUB32 |
#define USUB32(a, b) USUB32_(a, b, __FILE__, __LINE__) |
-static inline unsigned int USUB32_(opus_uint64 a, opus_uint64 b, char *file, int line) |
+static OPUS_INLINE unsigned int USUB32_(opus_uint64 a, opus_uint64 b, char *file, int line) |
{ |
opus_uint64 res; |
if (!VERIFY_UINT(a) || !VERIFY_UINT(b)) |
@@ -381,7 +381,7 @@ static inline unsigned int USUB32_(opus_uint64 a, opus_uint64 b, char *file, int |
} |
/* result fits in 16 bits */ |
-static inline short MULT16_16_16(int a, int b) |
+static OPUS_INLINE short MULT16_16_16(int a, int b) |
{ |
int res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -404,7 +404,7 @@ static inline short MULT16_16_16(int a, int b) |
} |
#define MULT16_16(a, b) MULT16_16_(a, b, __FILE__, __LINE__) |
-static inline int MULT16_16_(int a, int b, char *file, int line) |
+static OPUS_INLINE int MULT16_16_(int a, int b, char *file, int line) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -429,7 +429,7 @@ static inline int MULT16_16_(int a, int b, char *file, int line) |
#define MAC16_16(c,a,b) (celt_mips-=2,ADD32((c),MULT16_16((a),(b)))) |
#define MULT16_32_QX(a, b, Q) MULT16_32_QX_(a, b, Q, __FILE__, __LINE__) |
-static inline int MULT16_32_QX_(int a, opus_int64 b, int Q, char *file, int line) |
+static OPUS_INLINE int MULT16_32_QX_(int a, opus_int64 b, int Q, char *file, int line) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_INT(b)) |
@@ -462,7 +462,7 @@ static inline int MULT16_32_QX_(int a, opus_int64 b, int Q, char *file, int line |
} |
#define MULT16_32_PX(a, b, Q) MULT16_32_PX_(a, b, Q, __FILE__, __LINE__) |
-static inline int MULT16_32_PX_(int a, opus_int64 b, int Q, char *file, int line) |
+static OPUS_INLINE int MULT16_32_PX_(int a, opus_int64 b, int Q, char *file, int line) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_INT(b)) |
@@ -497,7 +497,7 @@ static inline int MULT16_32_PX_(int a, opus_int64 b, int Q, char *file, int line |
#define MULT16_32_Q15(a,b) MULT16_32_QX(a,b,15) |
#define MAC16_32_Q15(c,a,b) (celt_mips-=2,ADD32((c),MULT16_32_Q15((a),(b)))) |
-static inline int SATURATE(int a, int b) |
+static OPUS_INLINE int SATURATE(int a, int b) |
{ |
if (a>b) |
a=b; |
@@ -507,7 +507,17 @@ static inline int SATURATE(int a, int b) |
return a; |
} |
-static inline int MULT16_16_Q11_32(int a, int b) |
+static OPUS_INLINE opus_int16 SATURATE16(opus_int32 a) |
+{ |
+ celt_mips+=3; |
+ if (a>32767) |
+ return 32767; |
+ else if (a<-32768) |
+ return -32768; |
+ else return a; |
+} |
+ |
+static OPUS_INLINE int MULT16_16_Q11_32(int a, int b) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -529,7 +539,7 @@ static inline int MULT16_16_Q11_32(int a, int b) |
celt_mips+=3; |
return res; |
} |
-static inline short MULT16_16_Q13(int a, int b) |
+static OPUS_INLINE short MULT16_16_Q13(int a, int b) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -551,7 +561,7 @@ static inline short MULT16_16_Q13(int a, int b) |
celt_mips+=3; |
return res; |
} |
-static inline short MULT16_16_Q14(int a, int b) |
+static OPUS_INLINE short MULT16_16_Q14(int a, int b) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -575,7 +585,7 @@ static inline short MULT16_16_Q14(int a, int b) |
} |
#define MULT16_16_Q15(a, b) MULT16_16_Q15_(a, b, __FILE__, __LINE__) |
-static inline short MULT16_16_Q15_(int a, int b, char *file, int line) |
+static OPUS_INLINE short MULT16_16_Q15_(int a, int b, char *file, int line) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -598,7 +608,7 @@ static inline short MULT16_16_Q15_(int a, int b, char *file, int line) |
return res; |
} |
-static inline short MULT16_16_P13(int a, int b) |
+static OPUS_INLINE short MULT16_16_P13(int a, int b) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -628,7 +638,7 @@ static inline short MULT16_16_P13(int a, int b) |
celt_mips+=4; |
return res; |
} |
-static inline short MULT16_16_P14(int a, int b) |
+static OPUS_INLINE short MULT16_16_P14(int a, int b) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -658,7 +668,7 @@ static inline short MULT16_16_P14(int a, int b) |
celt_mips+=4; |
return res; |
} |
-static inline short MULT16_16_P15(int a, int b) |
+static OPUS_INLINE short MULT16_16_P15(int a, int b) |
{ |
opus_int64 res; |
if (!VERIFY_SHORT(a) || !VERIFY_SHORT(b)) |
@@ -691,7 +701,7 @@ static inline short MULT16_16_P15(int a, int b) |
#define DIV32_16(a, b) DIV32_16_(a, b, __FILE__, __LINE__) |
-static inline int DIV32_16_(opus_int64 a, opus_int64 b, char *file, int line) |
+static OPUS_INLINE int DIV32_16_(opus_int64 a, opus_int64 b, char *file, int line) |
{ |
opus_int64 res; |
if (b==0) |
@@ -726,7 +736,7 @@ static inline int DIV32_16_(opus_int64 a, opus_int64 b, char *file, int line) |
} |
#define DIV32(a, b) DIV32_(a, b, __FILE__, __LINE__) |
-static inline int DIV32_(opus_int64 a, opus_int64 b, char *file, int line) |
+static OPUS_INLINE int DIV32_(opus_int64 a, opus_int64 b, char *file, int line) |
{ |
opus_int64 res; |
if (b==0) |