https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95115
--- Comment #5 from Aurelien Jarno <aurelien at aurel32 dot net> --- (In reply to Jim Wilson from comment #3) > Newlib incidentally uses (x-x)/(x-x) where x is the input value, so there > are no constants involved, and the divide does not get optimized away. This > still works with gcc-10. The result is a subtract followed by a divide. This is also what is used for acosf and asinf, that's why the problem only appears with the double variant.