我有一个包含 8 个 float 的 __m256
,我想将它分成 2 个 __m128
,一个包含前四个 float ,另一个包含后四个 float float 。这可能吗?
谢谢
最佳答案
_mm256_extractf128_ps
上下两部分都可以使用。对于上半部分,这是提取它的最佳方法。然而,对于一些稍旧的 MSVC 版本,内在总是产生相应的指令,即使索引为零(在这种情况下实际上不需要指令)。因此,对于提取下半部分,_mm256_castps256_ps128
应该是首选。
关于c - 将 __m256 拆分为两个 __m128 寄存器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66536865/