fixed_debug.h File Reference

Fixed-point operations with debugging. More...

#include <stdio.h>

Include dependency graph for fixed_debug.h:

Go to the source code of this file.

Defines

#define MIPS_INC   spx_mips++,
#define QCONST16(x, bits)   ((spx_word16_t)((x)*(1<<(bits))+(1<<((bits)-1))))
#define QCONST32(x, bits)   ((spx_word32_t)((x)*(1<<(bits))+(1<<((bits)-1))))
#define VERIFY_SHORT(x)   ((x)<=32767&&(x)>=-32768)
#define VERIFY_INT(x)   ((x)<=2147483647LL&&(x)>=-2147483648LL)
#define PSHR16(a, shift)   (SHR16(ADD16(a,(1<<((shift)-1))),shift))
#define PSHR32(a, shift)   (SHR32(ADD32(a,(1<<((shift)-1))),shift))
#define SATURATE16(x, a)   (((x)>(a) ? (a) : (x)<-(a) ? -(a) : (x)))
#define SATURATE32(x, a)   (((x)>(a) ? (a) : (x)<-(a) ? -(a) : (x)))
#define SHR(a, shift)   ((a) >> (shift))
#define SHL(a, shift)   ((a) << (shift))
#define ADD64(a, b)   (MIPS_INC(a)+(b))
#define PSHR(a, shift)   (SHR((a)+(1<<((shift)-1)),shift))
#define MAC16_16(c, a, b)   (spx_mips--,ADD32((c),MULT16_16((a),(b))))
#define MAC16_16_Q11(c, a, b)   (ADD16((c),EXTRACT16(SHR32(MULT16_16((a),(b)),11))))
#define MAC16_16_Q13(c, a, b)   (ADD16((c),EXTRACT16(SHR32(MULT16_16((a),(b)),13))))
#define MULT16_32_Q11(a, b)   MULT16_32_QX(a,b,11)
#define MAC16_32_Q11(c, a, b)   ADD32((c),MULT16_32_Q11((a),(b)))
#define MULT16_32_Q12(a, b)   MULT16_32_QX(a,b,12)
#define MULT16_32_Q13(a, b)   MULT16_32_QX(a,b,13)
#define MULT16_32_Q14(a, b)   MULT16_32_QX(a,b,14)
#define MULT16_32_Q15(a, b)   MULT16_32_QX(a,b,15)
#define MAC16_32_Q15(c, a, b)   ADD32((c),MULT16_32_Q15((a),(b)))

Variables

long long spx_mips


Detailed Description

Fixed-point operations with debugging.


Define Documentation

#define ADD64 a,
 )     (MIPS_INC(a)+(b))
 

#define MAC16_16 c,
a,
 )     (spx_mips--,ADD32((c),MULT16_16((a),(b))))
 

#define MAC16_16_Q11 c,
a,
 )     (ADD16((c),EXTRACT16(SHR32(MULT16_16((a),(b)),11))))
 

#define MAC16_16_Q13 c,
a,
 )     (ADD16((c),EXTRACT16(SHR32(MULT16_16((a),(b)),13))))
 

#define MAC16_32_Q11 c,
a,
 )     ADD32((c),MULT16_32_Q11((a),(b)))
 

#define MAC16_32_Q15 c,
a,
 )     ADD32((c),MULT16_32_Q15((a),(b)))
 

#define MIPS_INC   spx_mips++,
 

#define MULT16_32_Q11 a,
 )     MULT16_32_QX(a,b,11)
 

#define MULT16_32_Q12 a,
 )     MULT16_32_QX(a,b,12)
 

#define MULT16_32_Q13 a,
 )     MULT16_32_QX(a,b,13)
 

#define MULT16_32_Q14 a,
 )     MULT16_32_QX(a,b,14)
 

#define MULT16_32_Q15 a,
 )     MULT16_32_QX(a,b,15)
 

#define PSHR a,
shift   )     (SHR((a)+(1<<((shift)-1)),shift))
 

#define PSHR16 a,
shift   )     (SHR16(ADD16(a,(1<<((shift)-1))),shift))
 

#define PSHR32 a,
shift   )     (SHR32(ADD32(a,(1<<((shift)-1))),shift))
 

#define QCONST16 x,
bits   )     ((spx_word16_t)((x)*(1<<(bits))+(1<<((bits)-1))))
 

#define QCONST32 x,
bits   )     ((spx_word32_t)((x)*(1<<(bits))+(1<<((bits)-1))))
 

#define SATURATE16 x,
 )     (((x)>(a) ? (a) : (x)<-(a) ? -(a) : (x)))
 

#define SATURATE32 x,
 )     (((x)>(a) ? (a) : (x)<-(a) ? -(a) : (x)))
 

#define SHL a,
shift   )     ((a) << (shift))
 

#define SHR a,
shift   )     ((a) >> (shift))
 

#define VERIFY_INT  )     ((x)<=2147483647LL&&(x)>=-2147483648LL)
 

#define VERIFY_SHORT  )     ((x)<=32767&&(x)>=-32768)
 


Variable Documentation

long long spx_mips
 


Generated on Mon Jun 19 22:41:05 2006 for speex by  doxygen 1.4.6