【发布时间】:2026-01-23 10:35:02
【问题描述】:
是否可以将 xmm 寄存器参数与 AVX 内在函数 (_mm256_**_**) 一起使用?
我的代码需要使用向量整数运算(用于加载和存储数据)以及向量浮点运算。整数代码使用 SSE2 内部函数编写以兼容旧 CPU,而浮点代码使用 AVX 编写以提高速度(还有 SSE 代码分支,所以不建议这样做)。
目前,除了使用编译器标志将所有SSE指令自动转换为VEX编码版本外,有没有办法使用内在函数(即没有内联/外部汇编)来强制在XMM寄存器上使用VEX编码指令?
注意:我试过_mm256_castsi128_si256(),这会生成带有 ymm 操作数的指令。
【问题讨论】:
-
这里的回答中竟然提到了那个问题,当然不一样!
标签: intrinsics avx