From: Paul Floyd Date: Thu, 8 Feb 2024 13:09:15 +0000 (+0100) Subject: Bug 283429 - ARM leak checking needs CLEAR_CALLER_SAVED_REGS X-Git-Tag: VALGRIND_3_23_0~176 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=81b7b2d4d9fe237f6e26887ccfba39687e808366;p=thirdparty%2Fvalgrind.git Bug 283429 - ARM leak checking needs CLEAR_CALLER_SAVED_REGS Unfortunately it took over 12 years to reinvent the wheel and fix this item. See also d91042c29dd3fbe2971f36f35b08e9735327f50a and b0015f7572bf42ee4ac1296884f5e7640ec1e5dc --- diff --git a/NEWS b/NEWS index a902488af7..21e07e8975 100644 --- a/NEWS +++ b/NEWS @@ -24,6 +24,7 @@ than mailing the developers (or mailing lists) directly -- bugs that are not entered into bugzilla tend to get forgotten about or ignored. +283429 ARM leak checking needs CLEAR_CALLER_SAVED_REGS 281059 Cannot connect to Oracle using valgrind 390269 unhandled amd64-darwin syscall: unix:464 (openat_nocancel) 401284 False positive "Source and destination overlap in strncat" diff --git a/memcheck/tests/leak.h b/memcheck/tests/leak.h index 23722a4217..9e3cd2ad8f 100644 --- a/memcheck/tests/leak.h +++ b/memcheck/tests/leak.h @@ -153,6 +153,9 @@ #define CLEAR_CALLER_SAVED_REGS \ do { \ __asm__ __volatile__ ("mov %r0, $0\n\t"); \ + __asm__ __volatile__ ("mov %r1, $0\n\t"); \ + __asm__ __volatile__ ("mov %r2, $0\n\t"); \ + __asm__ __volatile__ ("mov %r3, $0\n\t"); \ } while (0) #else #define CLEAR_CALLER_SAVED_REGS /*nothing*/