summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorandrew <andrew@FreeBSD.org>2013-09-07 14:04:10 +0000
committerandrew <andrew@FreeBSD.org>2013-09-07 14:04:10 +0000
commit59c30969f90a33d9696fe5b69fe545018ad76caa (patch)
treed742050140d3967fef8c5531b8fa6ef1d60bd3c2 /lib
parent5545e24af36227705bd4f73c058fcda754d117d8 (diff)
downloadFreeBSD-src-59c30969f90a33d9696fe5b69fe545018ad76caa.zip
FreeBSD-src-59c30969f90a33d9696fe5b69fe545018ad76caa.tar.gz
On ARM EABI double precision floating point values are stored in the
endian the CPU is in, i.e. little-endian on most ARM cores. This allows ARMv4 and ARMv5 boards to boot with the ARM EABI.
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/arm/_fpmath.h2
-rw-r--r--lib/libc/arm/arith.h2
-rw-r--r--lib/libc/arm/softfloat/arm-gcc.h2
-rw-r--r--lib/msun/src/math_private.h2
4 files changed, 4 insertions, 4 deletions
diff --git a/lib/libc/arm/_fpmath.h b/lib/libc/arm/_fpmath.h
index 4c18945..28bcb4b 100644
--- a/lib/libc/arm/_fpmath.h
+++ b/lib/libc/arm/_fpmath.h
@@ -26,7 +26,7 @@
* $FreeBSD$
*/
-#if defined(__VFP_FP__)
+#if defined(__VFP_FP__) || defined(__ARM_EABI__)
#define _IEEE_WORD_ORDER _BYTE_ORDER
#else
#define _IEEE_WORD_ORDER _BIG_ENDIAN
diff --git a/lib/libc/arm/arith.h b/lib/libc/arm/arith.h
index be78d86..5e2e389 100644
--- a/lib/libc/arm/arith.h
+++ b/lib/libc/arm/arith.h
@@ -11,7 +11,7 @@
* architecture. See contrib/gdtoa/gdtoaimp.h for details.
*/
-#if !defined(__ARMEB__) && defined(__VFP_FP__)
+#if !defined(__ARMEB__) && (defined(__VFP_FP__) || defined(__ARM_EABI__))
#define IEEE_8087
#define Arith_Kind_ASL 1
#define Sudden_Underflow
diff --git a/lib/libc/arm/softfloat/arm-gcc.h b/lib/libc/arm/softfloat/arm-gcc.h
index 15bc509..0e20ef9 100644
--- a/lib/libc/arm/softfloat/arm-gcc.h
+++ b/lib/libc/arm/softfloat/arm-gcc.h
@@ -91,7 +91,7 @@ what the endianness of the CPU. VFP is sane.
-------------------------------------------------------------------------------
*/
#if defined(SOFTFLOAT_FOR_GCC)
-#if defined(__VFP_FP__) || defined(__ARMEB__)
+#if defined (__ARM_EABI__) || defined(__VFP_FP__) || defined(__ARMEB__)
#define FLOAT64_DEMANGLE(a) (a)
#define FLOAT64_MANGLE(a) (a)
#else
diff --git a/lib/msun/src/math_private.h b/lib/msun/src/math_private.h
index 8ebc7fb..8af2c65 100644
--- a/lib/msun/src/math_private.h
+++ b/lib/msun/src/math_private.h
@@ -39,7 +39,7 @@
*/
#ifdef __arm__
-#if defined(__VFP_FP__)
+#if defined(__VFP_FP__) || defined(__ARM_EABI__)
#define IEEE_WORD_ORDER BYTE_ORDER
#else
#define IEEE_WORD_ORDER BIG_ENDIAN
OpenPOWER on IntegriCloud