From: ojab <ojab@ojab.ru>
To: musl@lists.openwall.com
Subject: spandsp build, lrint/sqrt/pow issue
Date: Fri, 14 Dec 2012 13:49:57 +0400 [thread overview]
Message-ID: <50CAF645.9000804@ojab.ru> (raw)
[-- Attachment #1: Type: text/plain, Size: 1222 bytes --]
Hi list,
spandsp library (which is used in FreeSWITCH/Asterisk/Yate/many
commercial solutions/etc) build fails with (first error):
> In file included from awgn.c:59:0:
> spandsp/saturated.h: In function 'fsaturate':
> spandsp/saturated.h:184:22: warning: cast to pointer from integer of different size
> spandsp/saturated.h:184:22: warning: cast to pointer from integer of different size
> spandsp/saturated.h:184:5: error: invalid use of void expression
line 184 is return statement in
> static __inline__ int16_t fsaturate(double damp)
> {
> if (damp > (double) INT16_MAX)
> return INT16_MAX;
> if (damp < (double) INT16_MIN)
> return INT16_MIN;
> return (int16_t) lrint(damp);
> }
awgn.i can be found in the attached file. The same errors happens with
pow() and sqrt() functions.
Unfortunately my knowledge is insufficient to debug further (because I
don't quite understand how lrint() can unfold to that), please assist.
I'm using sabotage-0.9.7 x86_64 image with musl updated to 0.9.8 (you
can download it http://ojab.ru/sabotage-0.9.7-x86_64_spandsp.img.xz and
`cd ~/spandsp && make`), please drop me a private mail if the ssh access
to qemu instance is needed.
//wbr ojab
[-- Attachment #2: awgn.i --]
[-- Type: text/plain, Size: 62900 bytes --]
# 1 "awgn.c"
# 1 "/root/spandsp/src//"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "awgn.c"
# 44 "awgn.c"
# 1 "config.h" 1
# 45 "awgn.c" 2
# 1 "/usr/include/stdlib.h" 1 3 4
# 1 "/usr/include/features.h" 1 3 4
# 9 "/usr/include/stdlib.h" 2 3 4
# 20 "/usr/include/stdlib.h" 3 4
# 1 "/usr/include/bits/alltypes.h" 1 3 4
typedef unsigned long size_t;
# 25 "/usr/include/bits/alltypes.h" 3 4
typedef int wchar_t;
# 21 "/usr/include/stdlib.h" 2 3 4
int atoi (const char *);
long atol (const char *);
long long atoll (const char *);
double atof (const char *);
float strtof (const char *restrict, char **restrict);
double strtod (const char *restrict, char **restrict);
long double strtold (const char *restrict, char **restrict);
long strtol (const char *restrict, char **restrict, int);
unsigned long strtoul (const char *restrict, char **restrict, int);
long long strtoll (const char *restrict, char **restrict, int);
unsigned long long strtoull (const char *restrict, char **restrict, int);
int rand (void);
void srand (unsigned);
void *malloc (size_t);
void *calloc (size_t, size_t);
void *realloc (void *, size_t);
void free (void *);
void *aligned_alloc(size_t alignment, size_t size);
__attribute__((__noreturn__)) void abort (void);
int atexit (void (*) (void));
__attribute__((__noreturn__)) void exit (int);
__attribute__((__noreturn__)) void _Exit (int);
int at_quick_exit (void (*) (void));
__attribute__((__noreturn__)) void quick_exit (int);
char *getenv (const char *);
int system (const char *);
void *bsearch (const void *, const void *, size_t, size_t, int (*)(const void *, const void *));
void qsort (void *, size_t, size_t, int (*)(const void *, const void *));
int abs (int);
long labs (long);
long long llabs (long long);
typedef struct { int quot, rem; } div_t;
typedef struct { long quot, rem; } ldiv_t;
typedef struct { long long quot, rem; } lldiv_t;
div_t div (int, int);
ldiv_t ldiv (long, long);
lldiv_t lldiv (long long, long long);
int mblen (const char *, size_t);
int mbtowc (wchar_t *restrict, const char *restrict, size_t);
int wctomb (char *, wchar_t);
size_t mbstowcs (wchar_t *restrict, const char *restrict, size_t);
size_t wcstombs (char *restrict, const wchar_t *restrict, size_t);
# 99 "/usr/include/stdlib.h" 3 4
int posix_memalign (void **, size_t, size_t);
int setenv (const char *, const char *, int);
int unsetenv (const char *);
int mkstemp (char *);
char *mkdtemp (char *);
int getsubopt (char **, char *const *, char **);
int rand_r (unsigned *);
char *realpath (const char *restrict, char *restrict);
long int random (void);
void srandom (unsigned int);
char *initstate (unsigned int, char *, size_t);
char *setstate (char *);
int putenv (char *);
int posix_openpt (int);
int grantpt (int);
int unlockpt (int);
char *ptsname (int);
char *l64a (long);
long a64l (const char *);
void setkey (const char *);
double drand48 (void);
double erand48 (unsigned short [3]);
long int lrand48 (void);
long int nrand48 (unsigned short [3]);
long mrand48 (void);
long jrand48 (unsigned short [3]);
void srand48 (long);
unsigned short *seed48 (unsigned short [3]);
void lcong48 (unsigned short [7]);
# 1 "/usr/include/alloca.h" 1 3 4
# 9 "/usr/include/alloca.h" 3 4
# 1 "/usr/include/bits/alltypes.h" 1 3 4
# 10 "/usr/include/alloca.h" 2 3 4
void *alloca(size_t);
# 141 "/usr/include/stdlib.h" 2 3 4
char *mktemp (char *);
void *valloc (size_t);
void *memalign(size_t, size_t);
# 48 "awgn.c" 2
# 1 "/usr/include/inttypes.h" 1 3 4
# 9 "/usr/include/inttypes.h" 3 4
# 1 "/opt/gcc4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.4/include/stdint.h" 1 3 4
# 1 "/usr/include/stdint.h" 1 3 4
# 27 "/usr/include/stdint.h" 3 4
# 1 "/usr/include/bits/alltypes.h" 1 3 4
# 47 "/usr/include/bits/alltypes.h" 3 4
typedef signed char int8_t;
typedef short int16_t;
typedef int int32_t;
typedef long int64_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long uint64_t;
# 105 "/usr/include/bits/alltypes.h" 3 4
typedef int8_t int_fast8_t;
typedef int int_fast16_t;
typedef int int_fast32_t;
typedef int64_t int_fast64_t;
typedef unsigned char uint_fast8_t;
typedef unsigned int uint_fast16_t;
typedef unsigned int uint_fast32_t;
typedef uint64_t uint_fast64_t;
typedef long intptr_t;
typedef unsigned long uintptr_t;
# 28 "/usr/include/stdint.h" 2 3 4
typedef int8_t int_least8_t;
typedef int16_t int_least16_t;
typedef int32_t int_least32_t;
typedef int64_t int_least64_t;
typedef uint8_t uint_least8_t;
typedef uint16_t uint_least16_t;
typedef uint32_t uint_least32_t;
typedef uint64_t uint_least64_t;
typedef long long intmax_t;
typedef unsigned long long uintmax_t;
# 81 "/usr/include/stdint.h" 3 4
# 1 "/usr/include/bits/wchar.h" 1 3 4
# 82 "/usr/include/stdint.h" 2 3 4
# 1 "/usr/include/bits/stdint.h" 1 3 4
# 83 "/usr/include/stdint.h" 2 3 4
# 4 "/opt/gcc4/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.5.4/include/stdint.h" 2 3 4
# 10 "/usr/include/inttypes.h" 2 3 4
# 1 "/usr/include/bits/alltypes.h" 1 3 4
# 13 "/usr/include/inttypes.h" 2 3 4
typedef struct { intmax_t quot, rem; } imaxdiv_t;
intmax_t imaxabs(intmax_t);
imaxdiv_t imaxdiv(intmax_t, intmax_t);
intmax_t strtoimax(const char *restrict, char **restrict, int);
uintmax_t strtoumax(const char *restrict, char **restrict, int);
intmax_t wcstoimax(const wchar_t *restrict, wchar_t **restrict, int);
uintmax_t wcstoumax(const wchar_t *restrict, wchar_t **restrict, int);
# 49 "awgn.c" 2
# 1 "/usr/include/tgmath.h" 1 3 4
# 13 "/usr/include/tgmath.h" 3 4
# 1 "/usr/include/math.h" 1 3 4
# 15 "/usr/include/math.h" 3 4
# 1 "/usr/include/bits/alltypes.h" 1 3 4
# 89 "/usr/include/bits/alltypes.h" 3 4
typedef unsigned short __uint16_t;
typedef unsigned int __uint32_t;
typedef unsigned long __uint64_t;
# 158 "/usr/include/bits/alltypes.h" 3 4
typedef double float_t;
typedef double double_t;
# 16 "/usr/include/math.h" 2 3 4
# 42 "/usr/include/math.h" 3 4
int __fpclassify(double);
int __fpclassifyf(float);
int __fpclassifyl(long double);
union __float_repr { float __f; __uint32_t __i; };
union __double_repr { double __f; __uint64_t __i; };
# 77 "/usr/include/math.h" 3 4
int __signbit(double);
int __signbitf(float);
int __signbitl(long double);
# 92 "/usr/include/math.h" 3 4
static inline int __islessf(float __x, float __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x < __y; }
static inline int __isless(double __x, double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x < __y; }
static inline int __islessl(long double __x, long double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x < __y; }
static inline int __islessequalf(float __x, float __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x <= __y; }
static inline int __islessequal(double __x, double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x <= __y; }
static inline int __islessequall(long double __x, long double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x <= __y; }
static inline int __islessgreaterf(float __x, float __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x != __y; }
static inline int __islessgreater(double __x, double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x != __y; }
static inline int __islessgreaterl(long double __x, long double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x != __y; }
static inline int __isgreaterf(float __x, float __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x > __y; }
static inline int __isgreater(double __x, double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x > __y; }
static inline int __isgreaterl(long double __x, long double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x > __y; }
static inline int __isgreaterequalf(float __x, float __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x >= __y; }
static inline int __isgreaterequal(double __x, double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x >= __y; }
static inline int __isgreaterequall(long double __x, long double __y) { return !(( sizeof((__x)) == sizeof(float) ? ((((union __float_repr){ (float)((__x)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__x)) == sizeof(double) ? ((((union __double_repr){ (double)((__x)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__x)) == 0) ? ((void)(__y),1) : ( sizeof((__y)) == sizeof(float) ? ((((union __float_repr){ (float)((__y)) }).__i) & 0x7fffffff) > 0x7f800000 : sizeof((__y)) == sizeof(double) ? ((((union __double_repr){ (double)((__y)) }).__i) & (__uint64_t)-1>>1) > (__uint64_t)0x7ff<<52 : __fpclassifyl((__y)) == 0)) && __x >= __y; }
# 119 "/usr/include/math.h" 3 4
double acos(double);
float acosf(float);
long double acosl(long double);
double acosh(double);
float acoshf(float);
long double acoshl(long double);
double asin(double);
float asinf(float);
long double asinl(long double);
double asinh(double);
float asinhf(float);
long double asinhl(long double);
double atan(double);
float atanf(float);
long double atanl(long double);
double atan2(double, double);
float atan2f(float, float);
long double atan2l(long double, long double);
double atanh(double);
float atanhf(float);
long double atanhl(long double);
double cbrt(double);
float cbrtf(float);
long double cbrtl(long double);
double ceil(double);
float ceilf(float);
long double ceill(long double);
double copysign(double, double);
float copysignf(float, float);
long double copysignl(long double, long double);
double cos(double);
float cosf(float);
long double cosl(long double);
double cosh(double);
float coshf(float);
long double coshl(long double);
double erf(double);
float erff(float);
long double erfl(long double);
double erfc(double);
float erfcf(float);
long double erfcl(long double);
double exp(double);
float expf(float);
long double expl(long double);
double exp2(double);
float exp2f(float);
long double exp2l(long double);
double expm1(double);
float expm1f(float);
long double expm1l(long double);
double fabs(double);
float fabsf(float);
long double fabsl(long double);
double fdim(double, double);
float fdimf(float, float);
long double fdiml(long double, long double);
double floor(double);
float floorf(float);
long double floorl(long double);
double fma(double, double, double);
float fmaf(float, float, float);
long double fmal(long double, long double, long double);
double fmax(double, double);
float fmaxf(float, float);
long double fmaxl(long double, long double);
double fmin(double, double);
float fminf(float, float);
long double fminl(long double, long double);
double fmod(double, double);
float fmodf(float, float);
long double fmodl(long double, long double);
double frexp(double, int *);
float frexpf(float, int *);
long double frexpl(long double, int *);
double hypot(double, double);
float hypotf(float, float);
long double hypotl(long double, long double);
int ilogb(double);
int ilogbf(float);
int ilogbl(long double);
double ldexp(double, int);
float ldexpf(float, int);
long double ldexpl(long double, int);
double lgamma(double);
float lgammaf(float);
long double lgammal(long double);
long long llrint(double);
long long llrintf(float);
long long llrintl(long double);
long long llround(double);
long long llroundf(float);
long long llroundl(long double);
double log(double);
float logf(float);
long double logl(long double);
double log10(double);
float log10f(float);
long double log10l(long double);
double log1p(double);
float log1pf(float);
long double log1pl(long double);
double log2(double);
float log2f(float);
long double log2l(long double);
double logb(double);
float logbf(float);
long double logbl(long double);
long lrint(double);
long lrintf(float);
long lrintl(long double);
long lround(double);
long lroundf(float);
long lroundl(long double);
double modf(double, double *);
float modff(float, float *);
long double modfl(long double, long double *);
double nan(const char *);
float nanf(const char *);
long double nanl(const char *);
double nearbyint(double);
float nearbyintf(float);
long double nearbyintl(long double);
double nextafter(double, double);
float nextafterf(float, float);
long double nextafterl(long double, long double);
double nexttoward(double, long double);
float nexttowardf(float, long double);
long double nexttowardl(long double, long double);
double pow(double, double);
float powf(float, float);
long double powl(long double, long double);
double remainder(double, double);
float remainderf(float, float);
long double remainderl(long double, long double);
double remquo(double, double, int *);
float remquof(float, float, int *);
long double remquol(long double, long double, int *);
double rint(double);
float rintf(float);
long double rintl(long double);
double round(double);
float roundf(float);
long double roundl(long double);
double scalbln(double, long);
float scalblnf(float, long);
long double scalblnl(long double, long);
double scalbn(double, int);
float scalbnf(float, int);
long double scalbnl(long double, int);
double sin(double);
float sinf(float);
long double sinl(long double);
double sinh(double);
float sinhf(float);
long double sinhl(long double);
double sqrt(double);
float sqrtf(float);
long double sqrtl(long double);
double tan(double);
float tanf(float);
long double tanl(long double);
double tanh(double);
float tanhf(float);
long double tanhl(long double);
double tgamma(double);
float tgammaf(float);
long double tgammal(long double);
double trunc(double);
float truncf(float);
long double truncl(long double);
# 367 "/usr/include/math.h" 3 4
extern int signgam;
double j0(double);
double j1(double);
double jn(int, double);
double y0(double);
double y1(double);
double yn(int, double);
double scalb(double, double);
float scalbf(float, float);
double significand(double);
float significandf(float);
double lgamma_r(double, int*);
float lgammaf_r(float, int*);
float j0f(float);
float j1f(float);
float jnf(int, float);
float y0f(float);
float y1f(float);
float ynf(int, float);
# 14 "/usr/include/tgmath.h" 2 3 4
# 1 "/usr/include/complex.h" 1 3 4
# 16 "/usr/include/complex.h" 3 4
double _Complex cacos(double _Complex);
float _Complex cacosf(float _Complex);
long double _Complex cacosl(long double _Complex);
double _Complex casin(double _Complex);
float _Complex casinf(float _Complex);
long double _Complex casinl(long double _Complex);
double _Complex catan(double _Complex);
float _Complex catanf(float _Complex);
long double _Complex catanl(long double _Complex);
double _Complex ccos(double _Complex);
float _Complex ccosf(float _Complex);
long double _Complex ccosl(long double _Complex);
double _Complex csin(double _Complex);
float _Complex csinf(float _Complex);
long double _Complex csinl(long double _Complex);
double _Complex ctan(double _Complex);
float _Complex ctanf(float _Complex);
long double _Complex ctanl(long double _Complex);
double _Complex cacosh(double _Complex);
float _Complex cacoshf(float _Complex);
long double _Complex cacoshl(long double _Complex);
double _Complex casinh(double _Complex);
float _Complex casinhf(float _Complex);
long double _Complex casinhl(long double _Complex);
double _Complex catanh(double _Complex);
float _Complex catanhf(float _Complex);
long double _Complex catanhl(long double _Complex);
double _Complex ccosh(double _Complex);
float _Complex ccoshf(float _Complex);
long double _Complex ccoshl(long double _Complex);
double _Complex csinh(double _Complex);
float _Complex csinhf(float _Complex);
long double _Complex csinhl(long double _Complex);
double _Complex ctanh(double _Complex);
float _Complex ctanhf(float _Complex);
long double _Complex ctanhl(long double _Complex);
double _Complex cexp(double _Complex);
float _Complex cexpf(float _Complex);
long double _Complex cexpl(long double _Complex);
double _Complex clog(double _Complex);
float _Complex clogf(float _Complex);
long double _Complex clogl(long double _Complex);
double cabs(double _Complex);
float cabsf(float _Complex);
long double cabsl(long double _Complex);
double _Complex cpow(double _Complex, double _Complex);
float _Complex cpowf(float _Complex, float _Complex);
long double _Complex cpowl(long double _Complex, long double _Complex);
double _Complex csqrt(double _Complex);
float _Complex csqrtf(float _Complex);
long double _Complex csqrtl(long double _Complex);
double carg(double _Complex);
float cargf(float _Complex);
long double cargl(long double _Complex);
double cimag(double _Complex);
float cimagf(float _Complex);
long double cimagl(long double _Complex);
double _Complex conj(double _Complex);
float _Complex conjf(float _Complex);
long double _Complex conjl(long double _Complex);
double _Complex cproj(double _Complex);
float _Complex cprojf(float _Complex);
long double _Complex cprojl(long double _Complex);
double creal(double _Complex);
float crealf(float _Complex);
long double creall(long double _Complex);
# 15 "/usr/include/tgmath.h" 2 3 4
# 51 "awgn.c" 2
# 1 "floating_fudge.h" 1
# 56 "awgn.c" 2
# 1 "spandsp/telephony.h" 1
# 59 "spandsp/telephony.h"
typedef int (*span_rx_handler_t)(void *s, const int16_t amp[], int len);
typedef int (*span_mod_handler_t)(void *s, int16_t amp[], int len);
typedef int (*span_rx_fillin_handler_t)(void *s, int len);
typedef int (*span_tx_handler_t)(void *s, int16_t amp[], int max_len);
# 58 "awgn.c" 2
# 1 "spandsp/fast_convert.h" 1
# 189 "spandsp/fast_convert.h"
static __inline__ long int lfastrint(double x)
{
return (long int) (x);
}
static __inline__ long int lfastrintf(float x)
{
return (long int) (x);
}
# 59 "awgn.c" 2
# 1 "spandsp/saturated.h" 1
# 46 "spandsp/saturated.h"
static __inline__ int16_t saturate(int32_t amp)
{
# 58 "spandsp/saturated.h"
int16_t z;
z = (int16_t) amp;
if (amp == z)
return z;
if (amp > (0x7fff))
return (0x7fff);
return (-1-0x7fff);
}
static __inline__ int16_t saturate16(int32_t amp)
{
# 83 "spandsp/saturated.h"
int16_t z;
z = (int16_t) amp;
if (amp == z)
return z;
if (amp > (0x7fff))
return (0x7fff);
return (-1-0x7fff);
}
static __inline__ int16_t saturate15(int32_t amp)
{
# 109 "spandsp/saturated.h"
if (amp > 16383)
return 16383;
if (amp < -16384)
return -16384;
return (int16_t) amp;
}
static __inline__ uint16_t saturateu16(int32_t amp)
{
# 130 "spandsp/saturated.h"
uint16_t z;
z = (uint16_t) amp;
if (amp == z)
return z;
if (amp > (0xffff))
return (0xffff);
return 0;
}
static __inline__ uint8_t saturateu8(int32_t amp)
{
# 155 "spandsp/saturated.h"
uint8_t z;
z = (uint8_t) amp;
if (amp == z)
return z;
if (amp > (0xff))
return (0xff);
return 0;
}
static __inline__ int16_t fsaturatef(float famp)
{
if (famp > (float) (0x7fff))
return (0x7fff);
if (famp < (float) (-1-0x7fff))
return (-1-0x7fff);
return (int16_t) lrintf(famp);
}
static __inline__ int16_t fsaturate(double damp)
{
if (damp > (double) (0x7fff))
return (0x7fff);
if (damp < (double) (-1-0x7fff))
return (-1-0x7fff);
return (int16_t) ((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((damp)))/2)))0 : (__typeof__(0 ? (__typeof__((damp)) *)0 : (void *)!!!((1?1:((damp)))/2)))0 )))( ((!!((1?1:((damp)))/2) && 2*sizeof((damp)) == sizeof(((damp))+(__extension__ 1.0fi))) && sizeof((damp)) == sizeof(float)) ? lrintf ((damp)) : ((!!((1?1:((damp)))/2) && 2*sizeof((damp)) == sizeof(((damp))+(__extension__ 1.0fi))) && sizeof((damp)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? lrintl ((damp)) : lrint((damp)) ));
}
static __inline__ int16_t ffastsaturatef(float famp)
{
if (famp > (float) (0x7fff))
return (0x7fff);
if (famp < (float) (-1-0x7fff))
return (-1-0x7fff);
return (int16_t) lfastrintf(famp);
}
static __inline__ int16_t ffastsaturate(double damp)
{
if (damp > (double) (0x7fff))
return (0x7fff);
if (damp < (double) (-1-0x7fff))
return (-1-0x7fff);
return (int16_t) lfastrint(damp);
}
static __inline__ float ffsaturatef(float famp)
{
if (famp > (float) (0x7fff))
return (float) (0x7fff);
if (famp < (float) (-1-0x7fff))
return (float) (-1-0x7fff);
return famp;
}
static __inline__ double ffsaturate(double famp)
{
if (famp > (double) (0x7fff))
return (double) (0x7fff);
if (famp < (double) (-1-0x7fff))
return (double) (-1-0x7fff);
return famp;
}
static __inline__ int16_t saturated_add16(int16_t a, int16_t b)
{
__asm__ __volatile__(
" addw %2,%0;\n"
" jno 0f;\n"
" movw $0x7fff,%0;\n"
" adcw $0,%0;\n"
"0:"
: "=r" (a)
: "0" (a), "ir" (b)
: "cc"
);
return a;
# 258 "spandsp/saturated.h"
}
static __inline__ int32_t saturated_add32(int32_t a, int32_t b)
{
__asm__ __volatile__(
" addl %2,%0;\n"
" jno 0f;\n"
" movl $0x7fffffff,%0;\n"
" adcl $0,%0;\n"
"0:"
: "=r" (a)
: "0" (a), "ir" (b)
: "cc"
);
return a;
# 295 "spandsp/saturated.h"
}
static __inline__ int16_t saturated_sub16(int16_t a, int16_t b)
{
__asm__ __volatile__(
" subw %2,%0;\n"
" jno 0f;\n"
" movw $0x8000,%0;\n"
" sbbw $0,%0;\n"
"0:"
: "=r" (a)
: "0" (a), "ir" (b)
: "cc"
);
return a;
# 324 "spandsp/saturated.h"
}
static __inline__ int32_t saturated_sub32(int32_t a, int32_t b)
{
__asm__ __volatile__(
" subl %2,%0;\n"
" jno 0f;\n"
" movl $0x80000000,%0;\n"
" sbbl $0,%0;\n"
"0:"
: "=r" (a)
: "0" (a), "ir" (b)
: "cc"
);
return a;
# 361 "spandsp/saturated.h"
}
static __inline__ int16_t saturated_mul16(int16_t a, int16_t b)
{
if (a == (-1-0x7fff) && b == (-1-0x7fff))
return (0x7fff);
return (int16_t) (((int32_t) a*(int32_t) b) >> 15);
}
static __inline__ int32_t saturated_mul16_32(int16_t a, int16_t b)
{
return ((int32_t) a*(int32_t) b) << 1;
}
static __inline__ int16_t saturated_abs16(int16_t a)
{
return (a == (-1-0x7fff)) ? (0x7fff) : (int16_t) abs(a);
}
# 60 "awgn.c" 2
# 1 "spandsp/awgn.h" 1
# 72 "spandsp/awgn.h"
typedef struct awgn_state_s awgn_state_t;
__attribute__((visibility("default"))) awgn_state_t * awgn_init_dbm0(awgn_state_t *s, int idum, float level);
__attribute__((visibility("default"))) awgn_state_t * awgn_init_dbov(awgn_state_t *s, int idum, float level);
__attribute__((visibility("default"))) int awgn_release(awgn_state_t *s);
__attribute__((visibility("default"))) int awgn_free(awgn_state_t *s);
__attribute__((visibility("default"))) int16_t awgn(awgn_state_t *s);
# 61 "awgn.c" 2
# 1 "spandsp/private/awgn.h" 1
# 32 "spandsp/private/awgn.h"
struct awgn_state_s
{
double rms;
long int ix1;
long int ix2;
long int ix3;
double r[98];
double gset;
int iset;
};
# 63 "awgn.c" 2
# 77 "awgn.c"
static double ran1(awgn_state_t *s)
{
double temp;
int j;
s->ix1 = (7141*s->ix1 + 54773)%259200;
s->ix2 = (8121*s->ix2 + 28411)%134456;
s->ix3 = (4561*s->ix3 + 51349)%243000;
j = 1 + ((97*s->ix3)/243000);
if (j > 97 || j < 1)
{
return -1;
}
temp = s->r[j];
s->r[j] = (s->ix1 + s->ix2*(1.0/134456))*(1.0/259200);
return temp;
}
__attribute__((visibility("default"))) awgn_state_t * awgn_init_dbov(awgn_state_t *s, int idum, float level)
{
int j;
if (s == ((void*)0))
{
if ((s = (awgn_state_t *) malloc(sizeof(*s))) == ((void*)0))
return ((void*)0);
}
if (idum < 0)
idum = -idum;
s->rms = ((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!((!!!((1?1:((10.0)))/2) || !!!((1?1:((level/20.0)))/2)) && ((!!((1?1:(((10.0))+((level/20.0))+1.0f))/2) && 2*sizeof(((10.0))+((level/20.0))+1.0f) == sizeof((((10.0))+((level/20.0))+1.0f)+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))+1.0f) == sizeof(float)))))0 : 0 ? (__typeof__(0 ? (double _Complex *)0 : (void *)!((!!!((1?1:((10.0)))/2) || !!!((1?1:((level/20.0)))/2)) && ((!!((1?1:(((10.0))+((level/20.0))))/2) && sizeof(((10.0))+((level/20.0))) == sizeof((((10.0))+((level/20.0)))+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))) == sizeof(float _Complex)))))0 : (__typeof__(0 ? (__typeof__(((10.0))+((level/20.0))) *)0 : (void *)((!!!((1?1:((10.0)))/2) || !!!((1?1:((level/20.0)))/2)) && (((!!((1?1:(((10.0))+((level/20.0))+1.0f))/2) && 2*sizeof(((10.0))+((level/20.0))+1.0f) == sizeof((((10.0))+((level/20.0))+1.0f)+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))+1.0f) == sizeof(float)) || ((!!((1?1:(((10.0))+((level/20.0))))/2) && sizeof(((10.0))+((level/20.0))) == sizeof((((10.0))+((level/20.0)))+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))) == sizeof(float _Complex))))))0 )))( ((!!((1?1:(((10.0))+((level/20.0))))/2) && sizeof(((10.0))+((level/20.0))) == sizeof((((10.0))+((level/20.0)))+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))) == sizeof(float _Complex)) && !!((1?1:((10.0)))/2) && !!((1?1:((level/20.0)))/2) ? cpowf((10.0), (level/20.0)) : ((!!((1?1:(((10.0))+((level/20.0))))/2) && sizeof(((10.0))+((level/20.0))) == sizeof((((10.0))+((level/20.0)))+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))) == sizeof(float _Complex)) ? cpow((10.0), (level/20.0)) : ((!!((1?1:(((10.0))+((level/20.0))))/2) && sizeof(((10.0))+((level/20.0))) == sizeof((((10.0))+((level/20.0)))+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))) == sizeof(double _Complex)) ? cpow((10.0), (level/20.0)) : ((!!((1?1:(((10.0))+((level/20.0))))/2) && sizeof(((10.0))+((level/20.0))) == sizeof((((10.0))+((level/20.0)))+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? cpowl((10.0), (level/20.0)) : ((!!((1?1:((10.0)))/2) && 2*sizeof((10.0)) == sizeof(((10.0))+(__extension__ 1.0fi))) && sizeof((10.0)) == sizeof(float)) && ((!!((1?1:((level/20.0)))/2) && 2*sizeof((level/20.0)) == sizeof(((level/20.0))+(__extension__ 1.0fi))) && sizeof((level/20.0)) == sizeof(float)) ? powf((10.0), (level/20.0)) : ((!!((1?1:(((10.0))+((level/20.0))))/2) && 2*sizeof(((10.0))+((level/20.0))) == sizeof((((10.0))+((level/20.0)))+(__extension__ 1.0fi))) && sizeof(((10.0))+((level/20.0))) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? powl((10.0), (level/20.0)) : pow((10.0), (level/20.0)) ))*32768.0;
s->ix1 = (54773 + idum)%259200;
s->ix1 = (7141*s->ix1 + 54773)%259200;
s->ix2 = s->ix1%134456;
s->ix1 = (7141*s->ix1 + 54773)%259200;
s->ix3 = s->ix1%243000;
s->r[0] = 0.0;
for (j = 1; j <= 97; j++)
{
s->ix1 = (7141*s->ix1 + 54773)%259200;
s->ix2 = (8121*s->ix2 + 28411)%134456;
s->r[j] = (s->ix1 + s->ix2*(1.0/134456))*(1.0/259200);
}
s->gset = 0.0;
s->iset = 0;
return s;
}
__attribute__((visibility("default"))) awgn_state_t * awgn_init_dbm0(awgn_state_t *s, int idum, float level)
{
return awgn_init_dbov(s, idum, level - (3.14f + 3.02f));
}
__attribute__((visibility("default"))) int awgn_release(awgn_state_t *s)
{
return 0;
}
__attribute__((visibility("default"))) int awgn_free(awgn_state_t *s)
{
free(s);
return 0;
}
__attribute__((visibility("default"))) int16_t awgn(awgn_state_t *s)
{
double fac;
double r;
double v1;
double v2;
double amp;
if (s->iset == 0)
{
do
{
v1 = 2.0*ran1(s) - 1.0;
v2 = 2.0*ran1(s) - 1.0;
r = v1*v1 + v2*v2;
}
while (r >= 1.0);
fac = ((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)))/2)))0 : (__typeof__(0 ? (__typeof__((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) *)0 : (void *)!!!((1?1:((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)))/2)))0 )))( ((!!((1?1:((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)))/2) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r))+(__extension__ 1.0fi))) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(float _Complex)) ? csqrtf ((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) : ((!!((1?1:((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)))/2) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r))+(__extension__ 1.0fi))) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(double _Complex)) ? csqrt ((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) : ((!!((1?1:((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)))/2) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r))+(__extension__ 1.0fi))) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? csqrtl ((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) : ((!!((1?1:((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)))/2) && 2*sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r))+(__extension__ 1.0fi))) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(float)) ? sqrtf ((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) : ((!!((1?1:((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)))/2) && 2*sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r))+(__extension__ 1.0fi))) && sizeof((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? sqrtl ((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) : sqrt((-2.0*((__typeof__(*( 0 ? (__typeof__(0 ? (double *)0 : (void *)!!((1?1:((r)))/2)))0 : (__typeof__(0 ? (__typeof__((r)) *)0 : (void *)!!!((1?1:((r)))/2)))0 )))( ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float _Complex)) ? clogf ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(double _Complex)) ? clog ((r)) : ((!!((1?1:((r)))/2) && sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double _Complex) && sizeof(long double) != sizeof(double)) ? clogl ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(float)) ? logf ((r)) : ((!!((1?1:((r)))/2) && 2*sizeof((r)) == sizeof(((r))+(__extension__ 1.0fi))) && sizeof((r)) == sizeof(long double) && sizeof(long double) != sizeof(double)) ? logl ((r)) : log((r)) ))/r)) ));
s->gset = v1*fac;
s->iset = 1;
amp = v2*fac*s->rms;
}
else
{
s->iset = 0;
amp = s->gset*s->rms;
}
return fsaturate(amp);
}
next reply other threads:[~2012-12-14 9:49 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-14 9:49 ojab [this message]
2012-12-14 12:40 ` Szabolcs Nagy
2012-12-14 12:59 ` ojab
2012-12-14 13:33 ` Szabolcs Nagy
2012-12-14 14:21 ` ojab
2012-12-14 19:47 ` ojab
2012-12-15 0:47 ` Szabolcs Nagy
2012-12-16 10:29 ` ojab
2012-12-16 14:12 ` Szabolcs Nagy
2012-12-18 6:07 ` ojab
2012-12-18 11:45 ` Szabolcs Nagy
2012-12-18 12:31 ` Szabolcs Nagy
2012-12-18 13:50 ` Szabolcs Nagy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50CAF645.9000804@ojab.ru \
--to=ojab@ojab.ru \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).