From: Julian Seward Date: Wed, 11 Feb 2015 19:46:27 +0000 (+0000) Subject: arm32-linux: for the magic-call CALL_FN_* macros, add r12 to the asm X-Git-Tag: svn/VALGRIND_3_11_0~663 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b4287f205ad7cd34994fe61f8c06161c32919023;p=thirdparty%2Fvalgrind.git arm32-linux: for the magic-call CALL_FN_* macros, add r12 to the asm trash list. Not doing so was causing r12 to get corrupted by the called function, which lead to some very strange failures in Helgrind on arm32. Fixes #344033. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14929 --- diff --git a/include/valgrind.h b/include/valgrind.h index aa0620feb8..7689a9f2a0 100644 --- a/include/valgrind.h +++ b/include/valgrind.h @@ -3734,7 +3734,7 @@ typedef #if defined(PLAT_arm_linux) /* These regs are trashed by the hidden call. */ -#define __CALLER_SAVED_REGS "r0", "r1", "r2", "r3","r4","r14" +#define __CALLER_SAVED_REGS "r0", "r1", "r2", "r3","r4", "r12", "r14" /* Macros to save and align the stack before making a function call and restore it afterwards as gcc may not keep the stack