我想矢量化一个简单的数组副本。数组以 float* 形式提交,大小为 int。我事先检查大小,然后运行副本:
int i;
float *vec;
float *tab;
for(i = x->x_start; i < x->x_end; i++)
vec[i] = tab[i];
我已经尝试过使用这个非常简单的语句,但我似乎无法让它自动矢量化。我试过restrict
没有效果,并玩了__builtin_assume_aligned(vec, 16)
我想矢量化一个简单的数组副本。数组以 float* 形式提交,大小为 int。我事先检查大小,然后运行副本:
int i;
float *vec;
float *tab;
for(i = x->x_start; i < x->x_end; i++)
vec[i] = tab[i];
我已经尝试过使用这个非常简单的语句,但我似乎无法让它自动矢量化。我试过restrict
没有效果,并玩了__builtin_assume_aligned(vec, 16)