DSP_fft16x16r
4-19 C64x+ DSPLIB Reference
x_1 = x[1];
x_h2 = x[h2];
x_h2p1 = x[h2+1];
x_l1 = x[l1];
x_l1p1 = x[l1+1];
x_l2 = x[l2];
x_l2p1 = x[l2+1];
xh0 = x_0 + x_l1;
xh1 = x_1 + x_l1p1;
xl0 = x_0 − x_l1;
xl1 = x_1 − x_l1p1;
xh20 = x_h2 + x_l2;
xh21 = x_h2p1 + x_l2p1;
xl20 = x_h2 − x_l2;
xl21 = x_h2p1 − x_l2p1;
ptr_x0 = x;
ptr_x0[0] = ((short)(xh0 + xh20))>>1;
ptr_x0[1] = ((short)(xh1 + xh21))>>1;
ptr_x2 = ptr_x0;
x += 2;
predj = (j − fft_jmp);
if (!predj) x += fft_jmp;
if (!predj) j = 0;
xt0 = xh0 − xh20;
yt0 = xh1 − xh21;
xt1 = xl0 + xl21;
yt2 = xl1 + xl20;
xt2 = xl0 − xl21;
yt1 = xl1 − xl20;
l1p1 = l1+1;
h2p1 = h2+1;
l2p1 = l2+1;
ptr_x2[l1 ] = (xt1 * co1 + yt1 * si1 + 0x00008000) >> 16;
ptr_x2[l1p1] = (yt1 * co1 − xt1 * si1 + 0x00008000) >> 16;
ptr_x2[h2 ] = (xt0 * co2 + yt0 * si2 + 0x00008000) >> 16;