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 [EMAIL PROTECTED]