This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Irix6 casting long double to double yields bogus results
- From: Alexandre Oliva <aoliva at redhat dot com>
- To: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>
- Cc: gcc-bugs at gcc dot gnu dot org, gcc at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: 30 Jan 2003 02:19:33 -0200
- Subject: Re: Irix6 casting long double to double yields bogus results
- Organization: GCC Team, Red Hat
- References: <200301291751.MAA04321@caip.rutgers.edu>
On Jan 29, 2003, "Kaveh R. Ghazi" <ghazi@caip.rutgers.edu> wrote:
> I've been running some tests on irix6 floating point and noticed a
> problem. Casting from long double to double seems to be broken now.
I doubt it ever worked with software-emulated 128-bit long doubles :-(
I hate the convoluted logic we use to decide whether to declare the
__make_[sdt]f functions. I'm checking this obvious patch in for now,
but it would be really nice to clean it up and consolidate the several
duplicate declarations into more logical conditions. Permission to
proceed?
Index: gcc/ChangeLog
from Alexandre Oliva <aoliva@redhat.com>
* config/fp-bit.h (__make_dp): Declare if TMODES.
Index: gcc/config/fp-bit.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/fp-bit.h,v
retrieving revision 1.9
diff -u -p -r1.9 fp-bit.h
--- gcc/config/fp-bit.h 26 Jan 2003 10:06:57 -0000 1.9
+++ gcc/config/fp-bit.h 30 Jan 2003 04:17:06 -0000
@@ -521,6 +521,7 @@ extern TFtype df_to_tf (DFtype);
#endif /* ! FLOAT */
#ifdef TMODES
+extern DFtype __make_dp (fp_class_type, unsigned int, int, UDItype);
extern TFtype __make_tp (fp_class_type, unsigned int, int, UTItype);
#ifdef TFLOAT
#if defined(L_tf_to_sf)
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva@{redhat.com, gcc.gnu.org}
CS PhD student at IC-Unicamp oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist Professional serial bug killer