【发布时间】:2012-04-30 18:14:44
【问题描述】:
Intel's official optimization guide 有一章是关于从 MMX 命令转换为 SSE 的,其中说明了闲置状态:
使用可能未与 16 字节边界对齐的内存操作数的计算指令必须替换为未对齐的 128 位加载 (MOVDQU),然后执行使用寄存器操作数的相同计算操作。
(第 5.8 章从 64 位转换为 128 位 SIMD 整数,第 5-43 页)
我无法理解“可能未与 16 字节边界对齐”是什么意思,请您澄清一下并举一些例子吗?
【问题讨论】:
-
当他们说“可能未对齐”时,他们的意思是代码在与未对齐的指针一起使用时是否需要正常工作。即你不能假设输入总是对齐的。 (Jakob 的回答涵盖了对齐地址的含义)。
标签: optimization x86 memory-alignment