2

我必须避免在 SSE 和 AVX 之间切换。我认为MM是不同的技术,但不得不问。下一个代码是否会导致处罚?:

vmovq XMM0, RAX
pinsrw MM0, EDX, 1
vmovd XMM5, EBX
movdq2q MM1, XMM2
4

1 回答 1

1

MMX 寄存器不会对 AVX 的低位部分起别名,因此不存在像 AVX256 和 SSE 之间那样的状态转换危险。

然而。

混合 MMX 和 AVX 确实没有充分的理由(或者根本没有使用 MMX,因为 SSE 是普遍可用的,并且避免了与 MMX 使用相关的一些危险,并且还为您提供了更多的寄存器名称)。为什么您不简单地在 AVX(或 SSE?)中进行所有操作?

于 2013-11-07T16:21:12.117 回答