From 3131cea97083e47599ec1b68a8fb2444f8b5a897 Mon Sep 17 00:00:00 2001 From: rearnsha Date: Wed, 16 Apr 2003 18:32:06 +0000 Subject: * java/lang/ieeefp.h: Handle ARM platforms that have pure-endian floating point. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@65693 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/lang/ieeefp.h | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'libjava/java') diff --git a/libjava/java/lang/ieeefp.h b/libjava/java/lang/ieeefp.h index fc56de0b379..2bef69568cc 100644 --- a/libjava/java/lang/ieeefp.h +++ b/libjava/java/lang/ieeefp.h @@ -6,13 +6,23 @@ #endif #if defined(__arm__) || defined(__thumb__) -/* ARM always has big-endian words. Within those words the byte ordering - will be big or little endian depending upon the target. */ +/* ARM traditionally used big-endian words; and within those words the + byte ordering was big or little endian depending upon the target. + Modern floating-point formats are naturally ordered; in this case + __VFP_FP__ will be defined, even if soft-float. */ +#ifdef __VFP_FP__ +#ifdef __ARMEL__ +#define __IEEE_LITTLE_ENDIAN +#else +#define __IEEE_BIG_ENDIAN +#endif +#else #define __IEEE_BIG_ENDIAN #ifdef __ARMEL__ #define __IEEE_BYTES_LITTLE_ENDIAN #endif #endif +#endif #ifdef __hppa__ #define __IEEE_BIG_ENDIAN -- cgit v1.2.3