http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21718



--- Comment #15 from joseph at codesourcery dot com <joseph at codesourcery dot 
com> 2012-11-05 20:49:24 UTC ---

The glibc code is pretty complicated (using glibc's copies of mpn_* 

low-level GMP functions for multiple-precision arithmetic) and entangled 

with other bits of glibc (it needs to handle things such as locales / 

thousands grouping characters, which are not relevant to GCC).  And of 

course there is no guarantee that the host has any floating-point type 

corresponding to the required type on the target.  Even working around the 

absence of a reliable ternary value in some supported MPFR versions, using 

MPFR for this would be much simpler than adapting the glibc code for use 

in GCC - it's the natural thing to do, given the use of MPFR for built-in 

function evaluation in GCC.  (MPFR should also be used to replace 

real_sqrt - real.c doesn't use enough bits internally to get a correctly 

rounded sqrt result in all cases.  fold_builtin_sqrt already does use 

mpfr_sqrt.)

Reply via email to