【 以下文字转载自 LinuxDev 讨论区 】
发信人: il15 (il15), 信区: LinuxDev
标 题: 请教个关于 _ZGVbN2v_sin 的问题
发信站: 水木社区 (Tue Jul 20 19:39:32 2021), 站内
一个程序用gcc 8.3.1和 glibc 2.28编译过了,换台glibc 2.17的机器说找不到 mvec,
然后我打算通过头文件用低版本的 glibc 来编译(用了 __asm__(".symver sin,sin@GLIBC_2.2.5"); 这种方法),
这时候就出现 没有_ZGVbN2v_sin 类似的错误。
我简单做个case测试了一下,发现好像是 如果for 循环里面用了 sin的话,在 -O3 -fast-math的时候,就会优化成_ZGVbN2v_sin,然后链接了 libmvec.so吧。
想请教一下,有什么方法可以不优化,还是用sin() ?
--
FROM 14.16.155.*