[an error occurred while processing this directive]
|
void prepostrotating(float* restrict x, float* restrict w)
{
int i;
float temp;
_nassert(((int)(w) & 0x7) == 0);
_nassert(((int)(x) & 0x7) == 0);
#pragma MUST_ITERATE(M>>1,M>>1)
for (i=0;i<(M>>1);i++)
{
temp=u[2*i]*prepost_w[2*i]-u[2*i+1]*prepost_w[2*i+1]; // real
u[2*i+1]=u[2*i]*prepost_w[2*i+1]+u[2*i+1]*prepost_w[2*i]; // imag
u[2*i]=temp;
}
}
prosto nado vklju4it' uroven' optimizazii -o3
I po4itat' pered etim
spru187k.pdf TMS320C6000 Optimizing Compiler User's Guide (Rev. K)
vsego 50 str.
Optimizirujet on horosho kogda pri napisanii ziklov u4ityvaesh, 4to on mozhet zagruzhat' srazu 64 bita - dva sampla (vazhno dlja single precision i integer)
Ja kak-to polenilsja pro4itat' etot dokument pri pervom proekte
Ubil mnogo vremeni na asm
A prostye zikly mozhno bylo by realizovat' 04 bystro i effectivno ispolzuja vstroennye vozmozhnosti optimizazii
E-mail: info@telesys.ru