Date: Fri, 14 Oct 2016 14:40:46 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org Subject: svn commit: r423974 - in branches/2016Q4: mail/thunderbird/files www/firefox-esr/files www/firefox/files www/libxul/files www/seamonkey/files Message-ID: <201610141440.u9EEekDp033691@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim (src committer) Date: Fri Oct 14 14:40:46 2016 New Revision: 423974 URL: https://svnweb.freebsd.org/changeset/ports/423974 Log: MFH: r423893 Add the upstream fix for Mozilla bug 1278861, which prevents clang assertions on a particular piece of arm inline assembly. This applies to: * mail/thunderbird * www/firefox * www/firefox-esr * www/libxul * www/seamonkey Approved by: portmgr (feld) PR: 203989 Added: branches/2016Q4/mail/thunderbird/files/patch-bug1278861 - copied unchanged from r423893, head/mail/thunderbird/files/patch-bug1278861 branches/2016Q4/www/firefox-esr/files/patch-bug1278861 - copied unchanged from r423893, head/www/firefox-esr/files/patch-bug1278861 branches/2016Q4/www/firefox/files/patch-bug1278861 - copied unchanged from r423893, head/www/firefox/files/patch-bug1278861 branches/2016Q4/www/libxul/files/patch-bug1278861 - copied unchanged from r423893, head/www/libxul/files/patch-bug1278861 branches/2016Q4/www/seamonkey/files/patch-bug1278861 - copied unchanged from r423893, head/www/seamonkey/files/patch-bug1278861 Modified: Directory Properties: branches/2016Q4/ (props changed) Copied: branches/2016Q4/mail/thunderbird/files/patch-bug1278861 (from r423893, head/mail/thunderbird/files/patch-bug1278861) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q4/mail/thunderbird/files/patch-bug1278861 Fri Oct 14 14:40:46 2016 (r423974, copy of r423893, head/mail/thunderbird/files/patch-bug1278861) @@ -0,0 +1,38 @@ + +# HG changeset patch +# User Nathan Froyd <froydnj@gmail.com> +# Date 1466820205 14400 +# Node ID bd25b06261c840a62d035192cf4b1dbc18f54e3f +# Parent fbe25a30fcbbe172bdd37c70c5b06cdbb07886af +Bug 1278861 - adjust ifdefs in Conversions.h:ToInt32 to catch clang-on-arm-generally; r=luke + +The bug noted in ToInt32 doesn't just exist when compiling for +arm-darwin; it exists for ARM targets generally. The ifdef should +reflect that. + +diff --git mozilla/js/public/Conversions.h mozilla/js/public/Conversions.h +--- mozilla/js/public/Conversions.h ++++ mozilla/js/public/Conversions.h +@@ -395,19 +395,19 @@ ToIntWidth(double d) + } + + } // namespace detail + + /* ES5 9.5 ToInt32 (specialized for doubles). */ + inline int32_t + ToInt32(double d) + { +- // clang crashes compiling this when targeting arm-darwin: ++ // clang crashes compiling this when targeting arm: + // https://llvm.org/bugs/show_bug.cgi?id=22974 +-#if defined (__arm__) && defined (__GNUC__) && !defined(__APPLE__) ++#if defined (__arm__) && defined (__GNUC__) && !defined(__clang__) + int32_t i; + uint32_t tmp0; + uint32_t tmp1; + uint32_t tmp2; + asm ( + // We use a pure integer solution here. In the 'softfp' ABI, the argument + // will start in r0 and r1, and VFP can't do all of the necessary ECMA + // conversions by itself so some integer code will be required anyway. A + Copied: branches/2016Q4/www/firefox-esr/files/patch-bug1278861 (from r423893, head/www/firefox-esr/files/patch-bug1278861) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q4/www/firefox-esr/files/patch-bug1278861 Fri Oct 14 14:40:46 2016 (r423974, copy of r423893, head/www/firefox-esr/files/patch-bug1278861) @@ -0,0 +1,38 @@ + +# HG changeset patch +# User Nathan Froyd <froydnj@gmail.com> +# Date 1466820205 14400 +# Node ID bd25b06261c840a62d035192cf4b1dbc18f54e3f +# Parent fbe25a30fcbbe172bdd37c70c5b06cdbb07886af +Bug 1278861 - adjust ifdefs in Conversions.h:ToInt32 to catch clang-on-arm-generally; r=luke + +The bug noted in ToInt32 doesn't just exist when compiling for +arm-darwin; it exists for ARM targets generally. The ifdef should +reflect that. + +diff --git js/public/Conversions.h js/public/Conversions.h +--- js/public/Conversions.h ++++ js/public/Conversions.h +@@ -395,19 +395,19 @@ ToIntWidth(double d) + } + + } // namespace detail + + /* ES5 9.5 ToInt32 (specialized for doubles). */ + inline int32_t + ToInt32(double d) + { +- // clang crashes compiling this when targeting arm-darwin: ++ // clang crashes compiling this when targeting arm: + // https://llvm.org/bugs/show_bug.cgi?id=22974 +-#if defined (__arm__) && defined (__GNUC__) && !defined(__APPLE__) ++#if defined (__arm__) && defined (__GNUC__) && !defined(__clang__) + int32_t i; + uint32_t tmp0; + uint32_t tmp1; + uint32_t tmp2; + asm ( + // We use a pure integer solution here. In the 'softfp' ABI, the argument + // will start in r0 and r1, and VFP can't do all of the necessary ECMA + // conversions by itself so some integer code will be required anyway. A + Copied: branches/2016Q4/www/firefox/files/patch-bug1278861 (from r423893, head/www/firefox/files/patch-bug1278861) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q4/www/firefox/files/patch-bug1278861 Fri Oct 14 14:40:46 2016 (r423974, copy of r423893, head/www/firefox/files/patch-bug1278861) @@ -0,0 +1,38 @@ + +# HG changeset patch +# User Nathan Froyd <froydnj@gmail.com> +# Date 1466820205 14400 +# Node ID bd25b06261c840a62d035192cf4b1dbc18f54e3f +# Parent fbe25a30fcbbe172bdd37c70c5b06cdbb07886af +Bug 1278861 - adjust ifdefs in Conversions.h:ToInt32 to catch clang-on-arm-generally; r=luke + +The bug noted in ToInt32 doesn't just exist when compiling for +arm-darwin; it exists for ARM targets generally. The ifdef should +reflect that. + +diff --git js/public/Conversions.h js/public/Conversions.h +--- js/public/Conversions.h ++++ js/public/Conversions.h +@@ -395,19 +395,19 @@ ToIntWidth(double d) + } + + } // namespace detail + + /* ES5 9.5 ToInt32 (specialized for doubles). */ + inline int32_t + ToInt32(double d) + { +- // clang crashes compiling this when targeting arm-darwin: ++ // clang crashes compiling this when targeting arm: + // https://llvm.org/bugs/show_bug.cgi?id=22974 +-#if defined (__arm__) && defined (__GNUC__) && !defined(__APPLE__) ++#if defined (__arm__) && defined (__GNUC__) && !defined(__clang__) + int32_t i; + uint32_t tmp0; + uint32_t tmp1; + uint32_t tmp2; + asm ( + // We use a pure integer solution here. In the 'softfp' ABI, the argument + // will start in r0 and r1, and VFP can't do all of the necessary ECMA + // conversions by itself so some integer code will be required anyway. A + Copied: branches/2016Q4/www/libxul/files/patch-bug1278861 (from r423893, head/www/libxul/files/patch-bug1278861) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q4/www/libxul/files/patch-bug1278861 Fri Oct 14 14:40:46 2016 (r423974, copy of r423893, head/www/libxul/files/patch-bug1278861) @@ -0,0 +1,38 @@ + +# HG changeset patch +# User Nathan Froyd <froydnj@gmail.com> +# Date 1466820205 14400 +# Node ID bd25b06261c840a62d035192cf4b1dbc18f54e3f +# Parent fbe25a30fcbbe172bdd37c70c5b06cdbb07886af +Bug 1278861 - adjust ifdefs in Conversions.h:ToInt32 to catch clang-on-arm-generally; r=luke + +The bug noted in ToInt32 doesn't just exist when compiling for +arm-darwin; it exists for ARM targets generally. The ifdef should +reflect that. + +diff --git js/public/Conversions.h js/public/Conversions.h +--- js/public/Conversions.h ++++ js/public/Conversions.h +@@ -395,19 +395,19 @@ ToIntWidth(double d) + } + + } // namespace detail + + /* ES5 9.5 ToInt32 (specialized for doubles). */ + inline int32_t + ToInt32(double d) + { +- // clang crashes compiling this when targeting arm-darwin: ++ // clang crashes compiling this when targeting arm: + // https://llvm.org/bugs/show_bug.cgi?id=22974 +-#if defined (__arm__) && defined (__GNUC__) && !defined(__APPLE__) ++#if defined (__arm__) && defined (__GNUC__) && !defined(__clang__) + int32_t i; + uint32_t tmp0; + uint32_t tmp1; + uint32_t tmp2; + asm ( + // We use a pure integer solution here. In the 'softfp' ABI, the argument + // will start in r0 and r1, and VFP can't do all of the necessary ECMA + // conversions by itself so some integer code will be required anyway. A + Copied: branches/2016Q4/www/seamonkey/files/patch-bug1278861 (from r423893, head/www/seamonkey/files/patch-bug1278861) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2016Q4/www/seamonkey/files/patch-bug1278861 Fri Oct 14 14:40:46 2016 (r423974, copy of r423893, head/www/seamonkey/files/patch-bug1278861) @@ -0,0 +1,38 @@ + +# HG changeset patch +# User Nathan Froyd <froydnj@gmail.com> +# Date 1466820205 14400 +# Node ID bd25b06261c840a62d035192cf4b1dbc18f54e3f +# Parent fbe25a30fcbbe172bdd37c70c5b06cdbb07886af +Bug 1278861 - adjust ifdefs in Conversions.h:ToInt32 to catch clang-on-arm-generally; r=luke + +The bug noted in ToInt32 doesn't just exist when compiling for +arm-darwin; it exists for ARM targets generally. The ifdef should +reflect that. + +diff --git mozilla/js/public/Conversions.h mozilla/js/public/Conversions.h +--- mozilla/js/public/Conversions.h ++++ mozilla/js/public/Conversions.h +@@ -395,19 +395,19 @@ ToIntWidth(double d) + } + + } // namespace detail + + /* ES5 9.5 ToInt32 (specialized for doubles). */ + inline int32_t + ToInt32(double d) + { +- // clang crashes compiling this when targeting arm-darwin: ++ // clang crashes compiling this when targeting arm: + // https://llvm.org/bugs/show_bug.cgi?id=22974 +-#if defined (__arm__) && defined (__GNUC__) && !defined(__APPLE__) ++#if defined (__arm__) && defined (__GNUC__) && !defined(__clang__) + int32_t i; + uint32_t tmp0; + uint32_t tmp1; + uint32_t tmp2; + asm ( + // We use a pure integer solution here. In the 'softfp' ABI, the argument + // will start in r0 and r1, and VFP can't do all of the necessary ECMA + // conversions by itself so some integer code will be required anyway. A +
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201610141440.u9EEekDp033691>