On Mon, Jun 26, 2006 at 09:24:57PM -0700, Ian Lance Taylor wrote:
> Andrew Pinski <[EMAIL PROTECTED]> writes:
> 
> > On Jun 26, 2006, at 2:09 PM, Ian Lance Taylor wrote:
> > 
> > > As far as I can see, it doesn't.
> > 
> > You missed:
> >    if (TARGET_MMX)
> >      ix86_init_mmx_sse_builtins ();
> > 
> > Which HJL should have also quoted.
> 
> I didn't miss it, I was just ambiguous.  H.J. asked "Why does
> __float80 have to depend on -mmmx/-msse?" and I answered "it doesn't,"
> meaning that __float80 doesn't have to depend on -mmmx/-msse.
> 
> > > On the other hand, as far as I can
> > > see, __float80 is undocumented and unused for the i386.  Why does it
> > > exist?
> > 
> > Jan added it with __float128 also:
> > 2003-10-30  Jan Hubicka  <[EMAIL PROTECTED]>
> > 
> >          (ix86_init_mmx_sse_builtins): Add __float80, __float128.
> > 
> > I think it was added for x86_64 ABI support which defines them
> > 
> > http://gcc.gnu.org/ml/gcc-patches/2003-10/msg02473.html
> 
> Are you saying that the x86_64 ABI calls for __float80 to be defined?
> I can't find any reference to __float80 which is not related to gcc or
> ia64.
> 
> In any case that does not give any explanation for why it should only
> be defined for MMX or SSE.
> 
> I don't object to defining __float80 for i386.  I agree with H.J. that
> if we define it, we should define it unconditionally.  And I also say
> that if we define it, we should document it, or at least find some
> other document which mentions it.

I have no strong opinion on the support for __float80. But the current
behavior seems odd to me. Also, we have incomplete support for
__float128. There is no runtime support for __float128 at all on
x86-64. Libstdc++ doesn't support __float128 nor does glibc. I did post
a __float128 runtime patch for glibc. But very few people showed any
interest in it. I was wondering why gcc bothered with __float80 and
__float128 on x86-64.


H.J.

Reply via email to