gpt4 book ai didi

linux - MSVC下有调用__libm_sse2_sincos的接口(interface)吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:12:05 24 4
gpt4 key购买 nike

我目前正在对 MSVC 下的一些 C 代码进行优化,其中执行了一些 sin() 和 cos() 计算。

我使用 SSE 实现,例如:

a = _mm_set_pd(cos(w),sin(w));

然而,后来我查看反汇编代码时,发现微软编译器对cos(w)和sin(w)的解释如下:

call        __libm_sse2_cos 
...
call __libm_sse2_sin

其中分别调用了cos和sin。但我希望编译器调用 __libm_sse2_sincos 来同时计算具有相同弧度的 sin 和 cos。

那么我可以告诉编译器这样做吗?或在 MSVC 下调用它们的任何接口(interface)?在 Linux 下怎么样?

非常感谢您的帮助。

最佳答案

为什么不这样做:

double s, c;

sincos(w, &s, &c);
a = _mm_set_pd(c, s);

?

关于linux - MSVC下有调用__libm_sse2_sincos的接口(interface)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7268510/

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