【问题标题】:Does _mm_load_ps1 require its argument to be aligned?_mm_load_ps1 是否需要对齐其参数?
【发布时间】:2013-11-24 12:24:16
【问题描述】:

一个非常简单的问题,但我找不到答案。 MSDN 说它扩展为 MOVSS 指令,但该指令似乎将单个 float 从一个 xmm 寄存器移动到另一个,而不是从内存中加载,所以我很困惑。

【问题讨论】:

    标签: c sse memory-alignment


    【解决方案1】:

    movss有多种形式;包括 reg->reg move 和 mem->reg load。加载形式在英特尔架构手册中被描述为采用“32 位内存位置”,不需要特殊对齐。

    【讨论】:

    • 谢谢。附注:_mm_load_ps 也采用裸指针,但确实需要对齐。
    • @VioletGiraffe:啊,你说得对(抱歉,我不经常使用 SSE 内部函数进行编程——我更喜欢汇编)。我删除了那句话。
    猜你喜欢
    • 2017-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-19
    • 2010-12-26
    • 1970-01-01
    相关资源
    最近更新 更多