This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: powerpc targets, long double implementation, and c++ programs
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: Edmar Wienskoski <edmar at freescale dot com>, gcc at gcc dot gnu dot org
- Date: Fri, 8 Sep 2006 20:14:37 +0000 (UTC)
- Subject: Re: powerpc targets, long double implementation, and c++ programs
- References: <4501BB90.4010101@freescale.com> <200609081918.k88JI9V25562@makai.watson.ibm.com>
On Fri, 8 Sep 2006, David Edelsohn wrote:
> Soft-float implementation of long double support is in development
> but not complete. Long double requires double precision registers, so it
> only will work with e500 double. It also requires floating point
> multiply-subtract (fmsub), which e500 double does not appear to
> implement. This is why long double has been disabled for e500 by testing
> for __NO_FPRS__. The soft-float support requires emulating fmsub, so it
> might work on e500 as well at that point.
>
> http://gcc.gnu.org/ml/gcc-patches/2006-03/msg01298.html is the
> patch that disabled this. This was in response to PR 26607 reported by
> you.
Perhaps as an interim fix it should be more thoroughly disabled. In
particular, the ldblspecs
ldblspecs: specs
sed -e '/cc1_options/{ n; s/$$/ %{!msoft-float:-mlong-double-128}/; }' < specs > $@
are what causes the problematic references in the shared libgcc; E500
targets may need different specs until the long double support is fixed.
--
Joseph S. Myers
joseph@codesourcery.com