From: Julian Seward Date: Sat, 19 Sep 2020 10:09:54 +0000 (+0200) Subject: On amd64, use by default the expensive instrumentation scheme for Iop_Add32. X-Git-Tag: VALGRIND_3_17_0~160 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=913ed1fa179710ada662fbaa84282e5dadd393d1;p=thirdparty%2Fvalgrind.git On amd64, use by default the expensive instrumentation scheme for Iop_Add32. This is necessary to avoid some false positives in code compiled by clang 10 at -O2. Some very crude measurements suggest the increase in generated code size is around 0.2%, viz, insignificant. --- diff --git a/memcheck/mc_translate.c b/memcheck/mc_translate.c index 87b8ac6886..b32c9c9c53 100644 --- a/memcheck/mc_translate.c +++ b/memcheck/mc_translate.c @@ -8478,6 +8478,7 @@ IRSB* MC_(instrument) ( VgCallbackClosure* closure, mce.dlbo.dl_Add32 = DLauto; mce.dlbo.dl_CmpEQ32_CmpNE32 = DLexpensive; # elif defined(VGA_amd64) + mce.dlbo.dl_Add32 = DLexpensive; mce.dlbo.dl_Add64 = DLauto; mce.dlbo.dl_CmpEQ32_CmpNE32 = DLexpensive; mce.dlbo.dl_CmpEQ64_CmpNE64 = DLexpensive;