42 #define FRAC_MUL16(a,b) ((16384+((opus_int32)(opus_int16)(a)*(opus_int16)(b)))>>15) 46 #ifndef OVERRIDE_CELT_MAXABS16 54 maxval =
MAX16(maxval, x[i]);
55 minval =
MIN16(minval, x[i]);
61 #ifndef OVERRIDE_CELT_MAXABS32 70 maxval =
MAX32(maxval, x[i]);
71 minval =
MIN32(minval, x[i]);
73 return MAX32(maxval, -minval);
76 #define celt_maxabs32(x,len) celt_maxabs16(x,len) 83 #define PI 3.141592653f 84 #define celt_sqrt(x) ((float)sqrt(x)) 85 #define celt_rsqrt(x) (1.f/celt_sqrt(x)) 86 #define celt_rsqrt_norm(x) (celt_rsqrt(x)) 87 #define celt_cos_norm(x) ((float)cos((.5f*PI)*(x))) 88 #define celt_rcp(x) (1.f/(x)) 89 #define celt_div(a,b) ((a)/(b)) 90 #define frac_div32(a,b) ((float)(a)/(b)) 98 static OPUS_INLINE
float celt_log2(
float x)
107 integer = (in.i>>23)-127;
110 frac = -0.41445418f + frac*(0.95909232f
111 + frac*(-0.33951290f + frac*0.16541097f));
112 return 1+integer+frac;
116 static OPUS_INLINE
float celt_exp2(
float x)
129 res.f = 0.99992522f + frac * (0.69583354f
130 + frac * (0.22606716f + 0.078024523f*frac));
131 res.i = (
res.i + (integer<<23)) & 0x7fffffff;
136 #define celt_log2(x) ((float)(1.442695040888963387*log(x))) 137 #define celt_exp2(x) ((float)exp(0.6931471805599453094*(x))) 146 #ifndef OVERRIDE_CELT_ILOG2 150 celt_assert2(x>0,
"celt_ilog2() only defined for strictly positive numbers");
159 return x <= 0 ? 0 : celt_ilog2(x);
175 static const opus_val16 C[5] = {-6801+(1<<(13-DB_SHIFT)), 15746, -5217, 2545, -1401};
179 n =
VSHR32(x,i-15)-32768-16384;
181 return SHL16(i-13,DB_SHIFT)+
SHR16(frac,14-DB_SHIFT);
206 integer =
SHR16(x,10);
209 else if (integer < -15)
211 frac = celt_exp2_frac(x-
SHL16(integer,10));
217 #define celt_div(a,b) MULT32_32_Q31((opus_val32)(a),celt_rcp(b)) #define celt_div(a, b)
Definition: mathops.h:89
long integer
Definition: TestObj.idl:461
#define MULT16_16_P15(a, b)
Definition: arch.h:229
#define MIN32(a, b)
Definition: arch.h:74
short opus_int16
Definition: opus_types.h:144
#define celt_sqrt(x)
Definition: mathops.h:84
#define ADD16(a, b)
Definition: arch.h:208
#define celt_rsqrt_norm(x)
Definition: mathops.h:86
float opus_val16
Definition: arch.h:148
#define EXTRACT16(x)
Definition: arch.h:189
EGLStreamKHR EGLint n
Definition: eglext.h:984
#define SHL16(a, shift)
Definition: arch.h:192
#define EC_ILOG(_x)
Definition: ecintrin.h:85
OPENSSL_EXPORT const ASN1_OBJECT int const unsigned char int len
Definition: x509.h:1053
EGLSurface EGLint x
Definition: eglext.h:950
#define celt_exp2(x)
Definition: mathops.h:137
int opus_int32
Definition: opus_types.h:146
#define celt_maxabs32(x, len)
Definition: mathops.h:76
#define VSHR32(a, shift)
Definition: arch.h:196
EGLSurface EGLint EGLint y
Definition: eglext.h:950
#define celt_assert2(cond, message)
Definition: arch.h:67
#define celt_rcp(x)
Definition: mathops.h:88
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
#define frac_div32(a, b)
Definition: mathops.h:90
#define EXTEND32(x)
Definition: arch.h:190
#define MAX32(a, b)
Definition: arch.h:75
GLfloat f
Definition: gl2.h:417
#define MIN16(a, b)
Definition: arch.h:72
#define MAX16(a, b)
Definition: arch.h:73
#define ADD32(a, b)
Definition: arch.h:210
for i
Definition: complexityMeasures.m:24
unsigned int opus_uint32
Definition: opus_types.h:147
Definition: type_traits_unittest.cc:77
#define SHR16(a, shift)
Definition: arch.h:191
unsigned isqrt32(opus_uint32 _val)
Definition: mathops.c:42
#define SHL32(a, shift)
Definition: arch.h:194
#define celt_log2(x)
Definition: mathops.h:136
#define MULT16_16_Q15(a, b)
Definition: arch.h:228
Various architecture definitions for CELT.
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306
float opus_val32
Definition: arch.h:149
res
Definition: harness.py:111
#define celt_cos_norm(x)
Definition: mathops.h:87