r1
将,r3
和r4
类型加载到 NEON 寄存器中,我有uint32x4_t
以下代码:
r3 = veorq_u32(r0,r3);
r4 = r1;
r1 = vandq_u32(r1,r3);
r4 = veorq_u32(r4,r2);
r1 = veorq_u32(r1,r0);
我只是想知道 GCC 是否真的翻译r4 = r1
成vmov
指令。看着反汇编的代码,我并不感到惊讶。(此外,我无法弄清楚生成的汇编代码实际上做了什么)
浏览 ARM 的 NEON 内在函数参考,我找不到任何简单的向量->向量赋值内在函数。
实现这一目标的最简单方法是什么?我不确定内联汇编代码会是什么样子,因为我不知道哪些寄存器r1
是r4
由vld1q_u32
. 我不需要实际的交换,只需要分配。