]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
On amd64, use by default the expensive instrumentation scheme for Iop_Add32.
authorJulian Seward <jseward@acm.org>
Sat, 19 Sep 2020 10:09:54 +0000 (12:09 +0200)
committerJulian Seward <jseward@acm.org>
Sat, 19 Sep 2020 10:11:43 +0000 (12:11 +0200)
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.

memcheck/mc_translate.c

index 87b8ac6886cec5b4902128c3d01d3f8104bddf40..b32c9c9c53c83275e66f04731cbb92555c9d0fb1 100644 (file)
@@ -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;