Hi,
Is there a way to store two registers into a double word aligned memory location using an intrinsic of STDW? For example, in this function
void DSPF_sp_vecmul(const float * x1, const float * x2,float *restrict y, const int n)
{
int i;
double x1x0, x3x2;
_nassert((int)x1 % 8 == 0);
_nassert((int)x2 % 8 == 0);
_nassert(n % 2 == 0);
_nassert(n > 0);
#pragma MUST_ITERATE(1,,)
for(i = 0; i < n; i+=2)
{
x1x0= _amemd8((void*)(x1 + i));
x3x2= _amemd8((void*)(x2 + i));
y[i] = _itof(_lo(x1x0)) * _itof(_lo(x3x2));
y[i + 1] = _itof(_hi(x1x0)) * _itof(_hi(x3x2));
}
}
How do I utilize the STDW instruction to store the register pair to y? will it run any faster?
Thanks