30 lines
873 B
Diff
30 lines
873 B
Diff
|
# HG changeset patch
|
||
|
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||
|
# Parent 7332dfc4c47d73f1b88850b7727d33096d68e329
|
||
|
|
||
|
diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h
|
||
|
--- a/modules/fdlibm/src/math_private.h
|
||
|
+++ b/modules/fdlibm/src/math_private.h
|
||
|
@@ -25,17 +25,21 @@
|
||
|
|
||
|
#include "mozilla/EndianUtils.h"
|
||
|
|
||
|
/*
|
||
|
* Emulate FreeBSD internal double types.
|
||
|
* Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
|
||
|
*/
|
||
|
|
||
|
+#ifdef __i386__
|
||
|
+typedef long double __double_t;
|
||
|
+#else
|
||
|
typedef double __double_t;
|
||
|
+#endif
|
||
|
typedef __double_t double_t;
|
||
|
|
||
|
/*
|
||
|
* The original fdlibm code used statements like:
|
||
|
* n0 = ((*(int*)&one)>>29)^1; * index of high word *
|
||
|
* ix0 = *(n0+(int*)&x); * high word of x *
|
||
|
* ix1 = *((1-n0)+(int*)&x); * low word of x *
|
||
|
* to dig two 32 bit words out of the 64 bit IEEE floating point
|