https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89125
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2019-01-31 CC| |andreast at gcc dot gnu.org, | |gp at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> --- The middle-end transforms sin/cos to cexp which means C99 support is required. cexp is then eventually expanded as sincos if the target advertises support via targetm.libc_has_function (function_sincos) or there is an optab handler (x87 has sincos IIRC). If sincos isn't available but the target is C99 we emit a call to cexp() which hopefully has an optimized path when passed a realpart zero (the glibc libm does). FreeBSD folks - can you adjust your targets config if appropriate?