【发布时间】:2017-09-10 12:48:16
【问题描述】:
如何(在 C/C++ 中)将 32 位整数加载到 SSE 寄存器的低 32 位,而其余部分未定义?我的意思是像vmovd xmm0, eax 一样的效率。
【问题讨论】:
-
vmovd = _mm_cvtsi32_si128但我想你知道,那为什么不合适呢? -
@harold,我不知道,谢谢!
-
在 Intel 的内在函数指南中,您可以搜索
(int以查找第一个参数是int或int *的内在函数。 (有关链接,请参阅sse tag wiki)。或者您可以搜索movd以查找movd的内在函数,在内部函数指南或英特尔的 insn 参考手册中:felixcloutier.com/x86/MOVD:MOVQ.html -
@PeterCordes here,顺便说一句,你知道那个地方吗?可能有用
-
@harold:哦,酷,谢谢你的链接。添加到 x86 和 SSE 标签 wiki。
标签: c++ assembly x86 vectorization sse