26#if !defined(_SPANDSP_VECTOR_INT_H_) 
   27#define _SPANDSP_VECTOR_INT_H_ 
   29#if defined(__cplusplus) 
   34static __inline__ 
void vec_copyi(
int z[], 
const int x[], 
int n)
 
   36    memcpy(z, x, n*
sizeof(z[0]));
 
   40static __inline__ 
void vec_copyi16(int16_t z[], 
const int16_t x[], 
int n)
 
   42    memcpy(z, x, n*
sizeof(z[0]));
 
   46static __inline__ 
void vec_copyi32(int32_t z[], 
const int32_t x[], 
int n)
 
   48    memcpy(z, x, n*
sizeof(z[0]));
 
   52static __inline__ 
void vec_zeroi(
int z[], 
int n)
 
   54    memset(z, 0, n*
sizeof(z[0]));
 
   58static __inline__ 
void vec_zeroi16(int16_t z[], 
int n)
 
   60    memset(z, 0, n*
sizeof(z[0]));
 
   64static __inline__ 
void vec_zeroi32(int32_t z[], 
int n)
 
   66    memset(z, 0, n*
sizeof(z[0]));
 
   70static __inline__ 
void vec_seti(
int z[], 
int x, 
int n)
 
   74    for (i = 0;  i < n;  i++)
 
   79static __inline__ 
void vec_seti16(int16_t z[], int16_t x, 
int n)
 
   83    for (i = 0;  i < n;  i++)
 
   88static __inline__ 
void vec_seti32(int32_t z[], int32_t x, 
int n)
 
   92    for (i = 0;  i < n;  i++)
 
  102SPAN_DECLARE(int32_t) vec_dot_prodi16(
const int16_t x[], 
const int16_t y[], 
int n);
 
  111SPAN_DECLARE(int32_t) vec_circular_dot_prodi16(
const int16_t x[], 
const int16_t y[], 
int n, 
int pos);
 
  113SPAN_DECLARE(
void) vec_lmsi16(
const int16_t x[], int16_t y[], 
int n, int16_t error);
 
  115SPAN_DECLARE(
void) vec_circular_lmsi16(
const int16_t x[], int16_t y[], 
int n, 
int pos, int16_t error);
 
  126SPAN_DECLARE(int32_t) vec_min_maxi16(
const int16_t x[], 
int n, int16_t out[]);
 
  128static __inline__ 
int vec_norm2i16(
const int16_t *vec, 
int len)
 
  134    for (i = 0;  i < len;  i++)
 
  135        sum += vec[i]*vec[i];
 
  140static __inline__ 
void vec_sari16(int16_t *vec, 
int len, 
int shift)
 
  144    for (i = 0;  i < len;  i++)
 
  149static __inline__ 
int vec_max_bitsi16(
const int16_t *vec, 
int len)
 
  157    for (i = 0;  i < len;  i++)
 
  173#if defined(__cplusplus)