715
|
1 |
|
|
2 |
# HG changeset patch
|
|
3 |
# User Marcin Juszkiewicz <mjuszkiewicz@redhat.com>
|
|
4 |
# Date 1393440196 18000
|
|
5 |
# Node ID 6a46f53ad944b44385398822d7bcf7621a785d91
|
|
6 |
# Parent 0aa56e2a5f816a30da48701f73d03060ee9692b2
|
|
7 |
Bug 962488 - Update double-conversion for proper AArch64 support. r=froydnj
|
|
8 |
|
|
9 |
Fix imported from upstream repository:
|
|
10 |
https://code.google.com/p/double-conversion/source/detail?r=4e24bb31bcc76d6d218f3056b4c24a109d367561
|
|
11 |
|
|
12 |
diff --git a/mfbt/double-conversion/fix-aarch64-macro.patch b/mfbt/double-conversion/fix-aarch64-macro.patch
|
|
13 |
new file mode 100644
|
|
14 |
--- /dev/null
|
|
15 |
+++ b/mfbt/double-conversion/fix-aarch64-macro.patch
|
|
16 |
@@ -0,0 +1,23 @@
|
|
17 |
+Backport from upstream.
|
|
18 |
+
|
|
19 |
+https://code.google.com/p/double-conversion/source/detail?r=4e24bb31bcc76d6d218f3056b4c24a109d367561
|
|
20 |
+
|
|
21 |
+---
|
|
22 |
+ mfbt/double-conversion/utils.h | 2 +-
|
|
23 |
+ 1 file changed, 1 insertion(+), 1 deletion(-)
|
|
24 |
+
|
|
25 |
+--- a/mfbt/double-conversion/utils.h
|
|
26 |
++++ b/mfbt/double-conversion/utils.h
|
|
27 |
+@@ -58,11 +58,11 @@
|
|
28 |
+ defined(__mips__) || \
|
|
29 |
+ defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \
|
|
30 |
+ defined(__sparc__) || defined(__sparc) || defined(__s390__) || \
|
|
31 |
+ defined(__SH4__) || defined(__alpha__) || \
|
|
32 |
+ defined(_MIPS_ARCH_MIPS32R2) || \
|
|
33 |
+- defined(_AARCH64EL_)
|
|
34 |
++ defined(__AARCH64EL__)
|
|
35 |
+ #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
|
|
36 |
+ #elif defined(_M_IX86) || defined(__i386__) || defined(__i386)
|
|
37 |
+ #if defined(_WIN32)
|
|
38 |
+ // Windows uses a 64bit wide floating point stack.
|
|
39 |
+ #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
|
|
40 |
diff --git a/mfbt/double-conversion/update.sh b/mfbt/double-conversion/update.sh
|
|
41 |
--- a/mfbt/double-conversion/update.sh
|
|
42 |
+++ b/mfbt/double-conversion/update.sh
|
|
43 |
@@ -15,9 +15,12 @@ cp $1/src/*.h ./
|
|
44 |
|
|
45 |
# Source
|
|
46 |
cp $1/src/*.cc ./
|
|
47 |
|
|
48 |
patch -p3 < add-mfbt-api-markers.patch
|
|
49 |
patch -p3 < use-StandardInteger.patch
|
|
50 |
patch -p3 < use-mozilla-assertions.patch
|
|
51 |
patch -p3 < use-static_assert.patch
|
|
52 |
-patch -p3 < ToPrecision-exponential.patch
|
|
53 |
\ No newline at end of file
|
|
54 |
+patch -p3 < ToPrecision-exponential.patch
|
|
55 |
+
|
|
56 |
+# Merged upstream, part of 2.0.1 version
|
|
57 |
+patch -p3 < fix-aarch64-macro.patch
|
|
58 |
diff --git a/mfbt/double-conversion/utils.h b/mfbt/double-conversion/utils.h
|
|
59 |
--- a/mfbt/double-conversion/utils.h
|
|
60 |
+++ b/mfbt/double-conversion/utils.h
|
|
61 |
@@ -55,17 +55,17 @@
|
|
62 |
#if defined(_M_X64) || defined(__x86_64__) || \
|
|
63 |
defined(__ARMEL__) || defined(__avr32__) || \
|
|
64 |
defined(__hppa__) || defined(__ia64__) || \
|
|
65 |
defined(__mips__) || \
|
|
66 |
defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \
|
|
67 |
defined(__sparc__) || defined(__sparc) || defined(__s390__) || \
|
|
68 |
defined(__SH4__) || defined(__alpha__) || \
|
|
69 |
defined(_MIPS_ARCH_MIPS32R2) || \
|
|
70 |
- defined(_AARCH64EL_)
|
|
71 |
+ defined(__AARCH64EL__)
|
|
72 |
#define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
|
|
73 |
#elif defined(_M_IX86) || defined(__i386__) || defined(__i386)
|
|
74 |
#if defined(_WIN32)
|
|
75 |
// Windows uses a 64bit wide floating point stack.
|
|
76 |
#define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
|
|
77 |
#else
|
|
78 |
#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
|
|
79 |
#endif // _WIN32
|
|
80 |
|