int t1[16]; int t2[16]; int t3[16]; int t4[16]; int t5[16]; int t6[16]; extern void *__builtin___memcpy_chk(void *, void *, unsigned int, unsigned int); extern void *__builtin___memmove_chk(void *, void *, unsigned int, unsigned int); extern void *__builtin___mempcpy_chk(void *, void *, unsigned int, unsigned int); extern void *__builtin___memset_chk(void *, int, unsigned int, unsigned int); extern unsigned char *__builtin___stpcpy_chk(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin___strcat_chk(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin___strcpy_chk(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin___strncat_chk(unsigned char *, unsigned char *, unsigned int, unsigned int); extern unsigned char *__builtin___strncpy_chk(unsigned char *, unsigned char *, unsigned int, unsigned int); extern int __builtin___vfprintf_chk(void *, int, unsigned char *, void *); extern int __builtin___vprintf_chk(int, unsigned char *, void *); extern int __builtin___vsnprintf_chk(unsigned char *, unsigned int, int, unsigned int, unsigned char *, void *); extern int __builtin___vsprintf_chk(unsigned char *, int, unsigned int, unsigned char *, void *); extern double __builtin_acos(double); extern float __builtin_acosf(float); extern double __builtin_acosl(double); extern void *__builtin_alloca(unsigned int); extern double __builtin_asin(double); extern float __builtin_asinf(float); extern double __builtin_asinl(double); extern double __builtin_atan(double); extern float __builtin_atanf(float); extern double __builtin_atanl(double); extern double __builtin_atan2(double, double); extern float __builtin_atan2f(float, float); extern double __builtin_atan2l(double, double); extern double __builtin_ceil(double); extern float __builtin_ceilf(float); extern double __builtin_ceill(double); extern double __builtin_cos(double); extern float __builtin_cosf(float); extern double __builtin_cosl(double); extern double __builtin_cosh(double); extern float __builtin_coshf(float); extern double __builtin_coshl(double); extern int __builtin_clz(unsigned int); extern int __builtin_clzl(unsigned int); extern int __builtin_clzll(unsigned int); extern int __builtin_constant_p(int); extern int __builtin_ctz(unsigned int); extern int __builtin_ctzl(unsigned int); extern int __builtin_ctzll(unsigned int); extern double __builtin_exp(double); extern float __builtin_expf(float); extern double __builtin_expl(double); extern int __builtin_expect(int, int); extern double __builtin_fabs(double); extern float __builtin_fabsf(float); extern double __builtin_fabsl(double); extern int __builtin_ffs(unsigned int); extern int __builtin_ffsl(unsigned int); extern int __builtin_ffsll(unsigned int); extern void *__builtin_frame_address(unsigned int); extern double __builtin_floor(double); extern float __builtin_floorf(float); extern double __builtin_floorl(double); extern double __builtin_huge_val(void); extern float __builtin_huge_valf(void); extern double __builtin_huge_vall(void); extern double __builtin_inf(void); extern float __builtin_inff(void); extern double __builtin_infl(void); extern void *__builtin_memcpy(void *, void *, unsigned int); extern void *__builtin_mempcpy(void *, void *, unsigned int); extern double __builtin_fmod(double); extern float __builtin_fmodf(float); extern double __builtin_fmodl(double); extern double __builtin_frexp(double, int *); extern float __builtin_frexpf(float, int *); extern double __builtin_frexpl(double, int *); extern double __builtin_ldexp(double, int); extern float __builtin_ldexpf(float, int); extern double __builtin_ldexpl(double, int); extern double __builtin_log(double); extern float __builtin_logf(float); extern double __builtin_logl(double); extern double __builtin_log10(double); extern float __builtin_log10f(float); extern double __builtin_log10l(double); extern float __builtin_modff(float, float *); extern double __builtin_modfl(double, double *); extern double __builtin_nan(unsigned char *); extern float __builtin_nanf(unsigned char *); extern double __builtin_nanl(unsigned char *); extern double __builtin_nans(unsigned char *); extern float __builtin_nansf(unsigned char *); extern double __builtin_nansl(unsigned char *); extern void *__builtin_next_arg(void); extern unsigned int __builtin_object_size(void *, int); extern int __builtin_parity(unsigned int); extern int __builtin_parityl(unsigned int); extern int __builtin_parityll(unsigned int); extern int __builtin_popcount(unsigned int); extern int __builtin_popcountl(unsigned int); extern int __builtin_popcountll(unsigned int); extern double __builtin_powi(double, int); extern float __builtin_powif(float, int); extern double __builtin_powil(double, int); extern void __builtin_return(void *); extern void *__builtin_return_address(unsigned int); extern double __builtin_sin(double); extern float __builtin_sinf(float); extern double __builtin_sinl(double); extern double __builtin_sinh(double); extern float __builtin_sinhf(float); extern double __builtin_sinhl(double); extern double __builtin_sqrt(double); extern float __builtin_sqrtf(float); extern double __builtin_sqrtl(double); extern unsigned char *__builtin_stpcpy(unsigned char *, unsigned char *); extern unsigned char *__builtin_strchr(unsigned char *, unsigned char); extern int __builtin_strcmp(unsigned char *, unsigned char *); extern unsigned char *__builtin_strcpy(unsigned char *, unsigned char *); extern unsigned int __builtin_strcspn(unsigned char *, unsigned char *); extern unsigned char *__builtin_strncat(unsigned char *, unsigned char *, unsigned int); extern int __builtin_strncmp(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin_strncpy(unsigned char *, unsigned char *, unsigned int); extern int __builtin_strspn(unsigned char *, unsigned char *); extern unsigned char *__builtin_strpbrk(unsigned char *, unsigned char *); extern int __builtin_types_compatible_p(unsigned int, unsigned int); extern double __builtin_tan(double); extern float __builtin_tanf(float); extern double __builtin_tanl(double); extern double __builtin_tanh(double); extern float __builtin_tanhf(float); extern double __builtin_tanhl(double); extern void __builtin_va_end(void *); extern void __builtin_varargs_start(void *); extern void __builtin_va_start(void *, void *); extern void __builtin_stdarg_start(void *); extern void __builtin_va_arg(void *, unsigned int); extern void __builtin_va_copy(void *, void *); void init(void) { int i; c9: for (({ c8: i = 0; }); (/* c7 */ i < 16); ({ c6: i = i + 1; })) { c5: t1[i] = 2; c4: t2[i] = 2; c3: t3[i] = 2; c2: t4[i] = 2; c1: t5[i] = 2; c0: t6[i] = 2; } } int comp_fir_complexe(int *in_re, int *in_im, int *c_re, int *c_im, int *out_re, int *out_im, int size) { int i; int j; int res_re; int res_im; int tmp_im; int tmp_re; int tmp_x_re; int tmp_x_im; int x_re[16]; int x_im[16]; int ii; int adx; c39: for (({ c38: ii = 0; }); (/* c37 */ ii < 16); ({ c36: ii = ii + 1; })) { c35: x_re[ii] = 0; c34: x_im[ii] = 0; } c33: adx = 0; c32: res_re = 0; c31: res_im = 0; c30: for (({ c29: j = 0; }); (/* c28 */ j < size); ({ c27: j = j + 1; })) { c26: x_re[adx] = in_re[j]; c25: x_im[adx] = in_im[j]; c24: for (({ c23: i = 0; }); (/* c22 */ i < 16); ({ c21: i = i + 1; })) { c20: tmp_x_re = x_re[adx]; c19: tmp_x_im = x_im[adx]; c18: tmp_re = (tmp_x_re * c_re[i] - tmp_x_im * c_im[i]) >> 4; c17: tmp_im = (tmp_x_re * c_im[i] + tmp_x_im * c_re[i]) >> 4; c16: res_re = res_re + tmp_re; c15: res_im = res_im + tmp_im; c14: adx = (adx + 1) % 16; } c13: adx = (adx + 1) % 16; c12: out_re[j] = res_re; c11: out_im[j] = res_im; } c10: return 0; } int main(void) { int t; c42: init(); c41: t = comp_fir_complexe(t1, t2, t3, t4, t5, t6, 16); c40: return t; }