typedef long fract32; typedef struct complex_fract16 { fract32 re, im; } complex_long_double; typedef int __v2hi __attribute__ ((__mode__ (__V2HI__))); typedef __v2hi raw2x16; typedef raw2x16 fract2x16; static __inline complex_fract16 cmlt_fr16(complex_fract16 _a, complex_fract16 _b) { fract2x16 i = __builtin_bfin_cmplx_mul(__builtin_bfin_compose_2x16(_a.im, _a.re), __builtin_bfin_compose_2x16(_b.im, _b.re)); } int main(){ complex_fract16 c,d; complex_fract16 answer; answer = cmlt_fr16(c,d); }