bug 890985 - crash in nsStandardURL::SetSpec @ nsStandardURL::BuildNormalizedSpec r=glandium
☠☠ backed out by a9b6a9349c36 ☠ ☠
authorBrad Lassey <blassey@mozilla.com>
Mon, 14 Oct 2013 15:18:50 -0400
changeset 165103 cc22bc5485669b4c50a5f0ba88f82ac7283ce2b2
parent 165102 c5391fab9cc1b28e98c88e789fc00b94dd817c32
child 165104 39500fdd50078f67a6d7d231441e5efbccd3adc6
push id3066
push userakeybl@mozilla.com
push dateMon, 09 Dec 2013 19:58:46 +0000
treeherdermozilla-beta@a31a0dce83aa [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersglandium
bugs890985
milestone27.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
bug 890985 - crash in nsStandardURL::SetSpec @ nsStandardURL::BuildNormalizedSpec r=glandium
build/autoconf/arch.m4
js/src/build/autoconf/arch.m4
--- a/build/autoconf/arch.m4
+++ b/build/autoconf/arch.m4
@@ -9,16 +9,17 @@ dnl ====================================
 dnl = ARM toolchain tweaks
 dnl ========================================================
 
 MOZ_THUMB=toolchain-default
 MOZ_THUMB_INTERWORK=toolchain-default
 MOZ_FPU=toolchain-default
 MOZ_FLOAT_ABI=toolchain-default
 MOZ_SOFT_FLOAT=toolchain-default
+MOZ_ALIGN=toolchain-default
 
 MOZ_ARG_WITH_STRING(arch,
 [  --with-arch=[[type|toolchain-default]]
                            Use specific CPU features (-march=type). Resets
                            thumb, fpu, float-abi, etc. defaults when set],
     if test -z "$GNU_CC"; then
         AC_MSG_ERROR([--with-arch is not supported on non-GNU toolchains])
     fi
@@ -27,16 +28,17 @@ MOZ_ARG_WITH_STRING(arch,
 if test -z "$MOZ_ARCH"; then
     dnl Defaults
     case "${CPU_ARCH}-${OS_TARGET}" in
     arm-Android)
         MOZ_THUMB=yes
         MOZ_ARCH=armv7-a
         MOZ_FPU=vfp
         MOZ_FLOAT_ABI=softfp
+        MOZ_ALIGN=no
         ;;
     arm-Darwin)
         MOZ_ARCH=toolchain-default
         MOZ_THUMB=yes
         ;;
     esac
 fi
 
@@ -154,18 +156,30 @@ yes)
 no)
     soft_float_flag="-mno-soft-float"
     ;;
 *) # toolchain-default
     soft_float_flag=""
     ;;
 esac
 
+case "$MOZ_ALIGN" in
+no)
+    align_flag="-mno-unaligned-access"
+    ;;
+yes)
+    align_flag="-munaligned-access"
+    ;;
+*)
+    align_flag=""
+    ;;
+esac
+
 dnl Use echo to avoid accumulating space characters
-all_flags=`echo $arch_flag $thumb_flag $thumb_interwork_flag $fpu_flag $float_abi_flag $soft_float_flag`
+all_flags=`echo $arch_flag $thumb_flag $thumb_interwork_flag $fpu_flag $float_abi_flag $soft_float_flag $align_flag`
 if test -n "$all_flags"; then
     _SAVE_CFLAGS="$CFLAGS"
     CFLAGS="$all_flags"
     AC_MSG_CHECKING(whether the chosen combination of compiler flags ($all_flags) works)
     AC_TRY_COMPILE([],[return 0;],
         AC_MSG_RESULT([yes]),
         AC_MSG_ERROR([no]))
 
--- a/js/src/build/autoconf/arch.m4
+++ b/js/src/build/autoconf/arch.m4
@@ -9,16 +9,17 @@ dnl ====================================
 dnl = ARM toolchain tweaks
 dnl ========================================================
 
 MOZ_THUMB=toolchain-default
 MOZ_THUMB_INTERWORK=toolchain-default
 MOZ_FPU=toolchain-default
 MOZ_FLOAT_ABI=toolchain-default
 MOZ_SOFT_FLOAT=toolchain-default
+MOZ_ALIGN=toolchain-default
 
 MOZ_ARG_WITH_STRING(arch,
 [  --with-arch=[[type|toolchain-default]]
                            Use specific CPU features (-march=type). Resets
                            thumb, fpu, float-abi, etc. defaults when set],
     if test -z "$GNU_CC"; then
         AC_MSG_ERROR([--with-arch is not supported on non-GNU toolchains])
     fi
@@ -27,16 +28,17 @@ MOZ_ARG_WITH_STRING(arch,
 if test -z "$MOZ_ARCH"; then
     dnl Defaults
     case "${CPU_ARCH}-${OS_TARGET}" in
     arm-Android)
         MOZ_THUMB=yes
         MOZ_ARCH=armv7-a
         MOZ_FPU=vfp
         MOZ_FLOAT_ABI=softfp
+        MOZ_ALIGN=no
         ;;
     arm-Darwin)
         MOZ_ARCH=toolchain-default
         MOZ_THUMB=yes
         ;;
     esac
 fi
 
@@ -154,18 +156,33 @@ yes)
 no)
     soft_float_flag="-mno-soft-float"
     ;;
 *) # toolchain-default
     soft_float_flag=""
     ;;
 esac
 
+case "$MOZ_ALIGN" in
+toolchain-default|"")
+    align_flag=""
+    ;;
+no)
+    align_flag="-mno-unaligned-access"
+    ;;
+yes)
+    align_flag="-munaligned-access"
+    ;;
+*)
+    align_flag=""
+    ;;
+esac
+
 dnl Use echo to avoid accumulating space characters
-all_flags=`echo $arch_flag $thumb_flag $thumb_interwork_flag $fpu_flag $float_abi_flag $soft_float_flag`
+all_flags=`echo $arch_flag $thumb_flag $thumb_interwork_flag $fpu_flag $float_abi_flag $soft_float_flag $align_flag`
 if test -n "$all_flags"; then
     _SAVE_CFLAGS="$CFLAGS"
     CFLAGS="$all_flags"
     AC_MSG_CHECKING(whether the chosen combination of compiler flags ($all_flags) works)
     AC_TRY_COMPILE([],[return 0;],
         AC_MSG_RESULT([yes]),
         AC_MSG_ERROR([no]))