diff -r 000000000000 -r 6474c204b198 toolkit/crashreporter/google-breakpad/src/client/linux/handler/Makefile.in --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/toolkit/crashreporter/google-breakpad/src/client/linux/handler/Makefile.in Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,17 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +ifdef MOZ_THUMB2 #{ +# The syscall number is passed through r7 in the linux ARM ABI, but r7 +# is also the THUMB frame pointer. (Unfortunate, but ah well.) gcc +# complains if we store to r7, not unreasonably, but complains +# inconsistently. The generic syscall template pushes/stores to/pops +# r7 with no complaint from gcc, but the sys_clone() function marks r7 +# as a clobbered register yet gcc error's. The generated assembly for +# sys_clone() looks OK, so we chalk this up to a gcc/gas quirk and +# work around it by telling gcc that the THUMB frame pointer is a +# vanilla callee-save register. +OS_CXXFLAGS += -fomit-frame-pointer +MOZ_FRAMEPTR_FLAGS := -fomit-frame-pointer +endif #}