gpt4 book ai didi

c++ - 广播 __m128 vector 的任意一个元素

转载 作者:太空狗 更新时间:2023-10-29 19:56:58 27 4
gpt4 key购买 nike

我需要广播 __m128 vector 的任意一个元素。比如第二个元素:

__m128 a = {a0, a1, a2, a3};
__m128 b = {a1, a1, a1, a1};

我知道有内在函数 _mm_set1_ps(float) 和 _mm_broadcast_ss(float*)。但是这些内在函数可以从内存的常用寄存器加载值。是否存在从另一个 vector 寄存器设置标量值的方法?

最佳答案

你可以像这样使用 _mm_shuffle_ps:

b = _mm_shuffle_ps(a, a, _MM_SHUFFLE(1,1,1,1));

关于c++ - 广播 __m128 vector 的任意一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43447002/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com