# HG changeset patch # User Marcin Juszkiewicz # Date 1393440196 18000 # Node ID 6a46f53ad944b44385398822d7bcf7621a785d91 # Parent 0aa56e2a5f816a30da48701f73d03060ee9692b2 Bug 962488 - Update double-conversion for proper AArch64 support. r=froydnj Fix imported from upstream repository: https://code.google.com/p/double-conversion/source/detail?r=4e24bb31bcc76d6d218f3056b4c24a109d367561 diff --git a/mfbt/double-conversion/fix-aarch64-macro.patch b/mfbt/double-conversion/fix-aarch64-macro.patch new file mode 100644 --- /dev/null +++ b/mfbt/double-conversion/fix-aarch64-macro.patch @@ -0,0 +1,23 @@ +Backport from upstream. + +https://code.google.com/p/double-conversion/source/detail?r=4e24bb31bcc76d6d218f3056b4c24a109d367561 + +--- + mfbt/double-conversion/utils.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/mfbt/double-conversion/utils.h ++++ b/mfbt/double-conversion/utils.h +@@ -58,11 +58,11 @@ + defined(__mips__) || \ + defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \ + defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ + defined(__SH4__) || defined(__alpha__) || \ + defined(_MIPS_ARCH_MIPS32R2) || \ +- defined(_AARCH64EL_) ++ defined(__AARCH64EL__) + #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 + #elif defined(_M_IX86) || defined(__i386__) || defined(__i386) + #if defined(_WIN32) + // Windows uses a 64bit wide floating point stack. + #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 diff --git a/mfbt/double-conversion/update.sh b/mfbt/double-conversion/update.sh --- a/mfbt/double-conversion/update.sh +++ b/mfbt/double-conversion/update.sh @@ -15,9 +15,12 @@ cp $1/src/*.h ./ # Source cp $1/src/*.cc ./ patch -p3 < add-mfbt-api-markers.patch patch -p3 < use-StandardInteger.patch patch -p3 < use-mozilla-assertions.patch patch -p3 < use-static_assert.patch -patch -p3 < ToPrecision-exponential.patch \ No newline at end of file +patch -p3 < ToPrecision-exponential.patch + +# Merged upstream, part of 2.0.1 version +patch -p3 < fix-aarch64-macro.patch diff --git a/mfbt/double-conversion/utils.h b/mfbt/double-conversion/utils.h --- a/mfbt/double-conversion/utils.h +++ b/mfbt/double-conversion/utils.h @@ -55,17 +55,17 @@ #if defined(_M_X64) || defined(__x86_64__) || \ defined(__ARMEL__) || defined(__avr32__) || \ defined(__hppa__) || defined(__ia64__) || \ defined(__mips__) || \ defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \ defined(__sparc__) || defined(__sparc) || defined(__s390__) || \ defined(__SH4__) || defined(__alpha__) || \ defined(_MIPS_ARCH_MIPS32R2) || \ - defined(_AARCH64EL_) + defined(__AARCH64EL__) #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 #elif defined(_M_IX86) || defined(__i386__) || defined(__i386) #if defined(_WIN32) // Windows uses a 64bit wide floating point stack. #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 #else #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS #endif // _WIN32