[Bug target/47558] 163267 breaks exception traceback in xplor-nih

dominiq at lps dot ens.fr gcc-bugzilla@gcc.gnu.org
Mon Feb 7 20:56:00 GMT 2011


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

--- Comment #65 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-02-07 20:55:31 UTC ---
>   /* The system ___divdc3 routine in libSystem on darwin10 is not
>     accurate to 1ulp, ours is, so we avoid ever using the system name
>      for this routine and instead install a non-conflicting name that
>      is accurate.

I think this comment in gcc/config/darwin.c and gcc/config/i386/darwin.h is at
best misleading. The problem is not about accuracy, but the range of validity
of the chosen algorithm. In darwin10, it is
tiny<arg(complex_denominator)**2<huge, while in the FSF lib it is
tiny<arg(complex_denominator)<huge. Note that codes relying on this extended
range are likely to generate infinities elsewhere.



More information about the Gcc-bugs mailing list