【发布时间】:2013-05-15 18:38:37
【问题描述】:
我是向量的新手,我一直在阅读 gcc documentation 试图了解它。
是否可以在运行时动态分配向量的大小?似乎您必须在 typedef 中执行此操作,例如:
typedef double v4sf __attribute__((vector_size (16)));
我想将向量的值设置为双精度数组。我试过这样:
v4sf curr_vect = double_array;
其中 double_array 显然是一个双精度数组。但这无法编译。有没有可能做这两件事?
【问题讨论】:
-
double *vec = malloc(sizeof(*vec) * 16;怎么样? -
@H2CO3 这将无法正确对齐。
-
@Mysticial 哦,对不起。在这种情况下,
posix_memalign()应该可以解决问题。 -
@H2CO3 是的,可以。
-
@Mysticial 你介意我写一个答案吗?