[Bug target/105428] compilation never (?) finishes with __builtin_casinl() and __builtin_csqrtl() with -O -mlong-double-128
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105428 --- Comment #4 from joseph at codesourcery dot com --- If you can identify specific arguments passed to mpc_asin for which it is excessively slow, that should be reported as an MPC bug. Computing correctly rounded mpc_asin shouldn't need to be that slow - provided the algorithm used is appropriate to the input value. See for example how glibc implements casin / casinh / cacos / cacosh. Or https://dl.acm.org/doi/10.1145/275323.275324 (Hull et al, Implementing the complex arcsine and arccosine functions using exception handling, ACM TOMS vol. 23 no. 3 (Sep 1997) pp 299-335). That may require several different algorithms to be implemented, but each such algorithm is straightforward. That's different from the case of Bessel functions of high order - for which there is some literature about computational techniques that shouldn't take time proportional to the order, but where the algorithms are certainly a lot more complicated.
[Bug target/105428] compilation never (?) finishes with __builtin_casinl() and __builtin_csqrtl() with -O -mlong-double-128
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105428 Martin Liška changed: What|Removed |Added Ever confirmed|0 |1 Status|UNCONFIRMED |NEW CC||marxin at gcc dot gnu.org Last reconfirmed||2022-04-29 --- Comment #3 from Martin Liška --- Confirmed with: Repository : Main Repository (OSS) Name : gmp-devel Version: 6.2.1-4.5
[Bug target/105428] compilation never (?) finishes with __builtin_casinl() and __builtin_csqrtl() with -O -mlong-double-128
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105428 --- Comment #2 from Zdenek Sojka --- (In reply to jos...@codesourcery.com from comment #1) > What MPC version are you using? Thank you for the reply. If I understand the backtrace correctly I am using the libraries downloaded by the contrib/download_prerequisites script: mpc-1.2.1, mpfr-4.1.0; the same behavior can be observed with system libraries as well, which are the same version + gentoo patches. > There have been a few fixes for slowness > in the MPC inverse trigonometric and hyperbolic functions over the years, > though there may still be scope for substantial further improvements by > choosing different algorithms for different ranges of inputs. If you're > using current MPC then this case should probably be reported to the MPC > maintainers. Similar to PR105384 and PR105385 - if you tell me to open a PR against MPC / MPRF, I will try to do. But I can't tell if this is a bug in the library, or expected behavior and gcc shouldn't use the library to evaluate the value at compilation time.
[Bug target/105428] compilation never (?) finishes with __builtin_casinl() and __builtin_csqrtl() with -O -mlong-double-128
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105428 --- Comment #1 from joseph at codesourcery dot com --- What MPC version are you using? There have been a few fixes for slowness in the MPC inverse trigonometric and hyperbolic functions over the years, though there may still be scope for substantial further improvements by choosing different algorithms for different ranges of inputs. If you're using current MPC then this case should probably be reported to the MPC maintainers.