summaryrefslogtreecommitdiff
path: root/lib/libc/stdlib/strtod.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/stdlib/strtod.c')
-rw-r--r--lib/libc/stdlib/strtod.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/libc/stdlib/strtod.c b/lib/libc/stdlib/strtod.c
index 0e717591953..f1c54639335 100644
--- a/lib/libc/stdlib/strtod.c
+++ b/lib/libc/stdlib/strtod.c
@@ -1,3 +1,6 @@
+/* $OpenBSD: strtod.c,v 1.2 1996/03/19 23:15:11 niklas Exp $ */
+/* $NetBSD: strtod.c,v 1.21 1996/02/16 21:19:29 mark Exp $ */
+
/****************************************************************
*
* The author of this software is David M. Gay.
@@ -90,7 +93,7 @@
*/
#if defined(LIBC_SCCS) && !defined(lint)
-static char *rcsid = "$Id: strtod.c,v 1.1 1995/10/18 08:42:19 deraadt Exp $";
+static char *rcsid = "$OpenBSD: strtod.c,v 1.2 1996/03/19 23:15:11 niklas Exp $";
#endif /* LIBC_SCCS and not lint */
#if defined(__m68k__) || defined(__sparc__) || defined(__i386__) || \
@@ -103,6 +106,15 @@ static char *rcsid = "$Id: strtod.c,v 1.1 1995/10/18 08:42:19 deraadt Exp $";
#endif
#endif
+#ifdef __arm32__
+/*
+ * Although the CPU is little endian the FP has different
+ * byte and word endianness. The byte order is still little endian
+ * but the word order is big endian.
+ */
+#define IEEE_BIG_ENDIAN
+#endif
+
#ifdef vax
#define VAX
#endif
@@ -224,7 +236,7 @@ IBM should be defined.
* An alternative that might be better on some machines is
* #define Storeinc(a,b,c) (*a++ = b << 16 | c & 0xffff)
*/
-#if defined(IEEE_LITTLE_ENDIAN) + defined(VAX)
+#if defined(IEEE_LITTLE_ENDIAN) + defined(VAX) + defined(__arm32__)
#define Storeinc(a,b,c) (((unsigned short *)a)[1] = (unsigned short)b, \
((unsigned short *)a)[0] = (unsigned short)c, a++)
#else