【发布时间】:2015-08-20 10:35:03
【问题描述】:
如何让 GCC 为对齐访问生成加载/存储指令?
如果我们有类似的东西:
uint8_t* p;
uint8x8x4_t r = vld4_u8(p);
如何让 GCC 生成需要 32 字节对齐的加载指令?
【问题讨论】:
-
这是
(*p),在通过指针传递其地址之前,您需要在堆栈、堆等上对齐。 -
在 Microsoft Visual C++ 中,有一个
ex版本的内部函数 (vld4_u8_ex) 来指示对齐的负载。 -
我检查了内在宏,没有发现对齐说明符。或许你可以自己定义一些符合你需要的说明符,或者用 asm 写代码。