This enables long double support for little-endian.  It assumes we keep
the same ordering as big-endian, ie. the first double is the larger
magnitude or inf/nan.   Bootstrapped powerpc64-linux.  OK to apply?

        * config/rs6000/ibm-ldouble.c: Enable for little-endian.

Index: libgcc/config/rs6000/ibm-ldouble.c
===================================================================
--- libgcc/config/rs6000/ibm-ldouble.c  (revision 199174)
+++ libgcc/config/rs6000/ibm-ldouble.c  (working copy)
@@ -42,10 +42,10 @@
    represented as (1.0, +0.0) or (1.0, -0.0), and the low part of a
    NaN is don't-care.
 
-   This code currently assumes big-endian.  */
+   This code currently assumes the most significant double is in
+   the lower numbered register or lower addressed memory.  */
 
-#if (!defined (__LITTLE_ENDIAN__) \
-     && (defined (__MACH__) || defined (__powerpc__) || defined (_AIX)))
+#if defined (__MACH__) || defined (__powerpc__) || defined (_AIX)
 
 #define fabs(x) __builtin_fabs(x)
 #define isless(x, y) __builtin_isless (x, y)

-- 
Alan Modra
Australia Development Lab, IBM

Reply via email to