|
From: Josef W. <Jos...@gm...> - 2012-08-06 12:17:30
|
[Forgot to CC the list] Am 04.08.2012 02:52, schrieb Philippe Waroquiers: > Find attached a new version of the patch which puts allregs-at-sb-exits > as the default for callgrind and cachegrind. > Did not touch lackey. Thanks. > For none, not too sure what is preferred: the none tool might > preferrably run with the default value for vex_control ? Updating the guest state multiple times within a SB may be needed because of requirements from a tool which wants to print error reports with stack traces. I do not see a reason for "none" needing it. We use "none" in a lot of regression tests to check for bugs in VG core, and the guest updating makes stack traces in bug reports better. But you would try to get a good stack trace in manual bug analysis anyway... > There is one regression in cachegrind with this patch: > on a debian6/amd64 system, the test cachegrind/tests/x86/fpu-28-108 > crashes with: > ==20077== Process terminating with default action of signal 11 (SIGSEGV) > ==20077== Access not within mapped region at address 0xFEFFCFBC > ==20077== at 0x40061EB: _dl_map_object_from_fd (dl-load.c:917) > ==20077== by 0x4007BD0: _dl_map_object (dl-load.c:2329) > ==20077== by 0x40016CE: map_doit (rtld.c:633) > ==20077== by 0x400E5D5: _dl_catch_error (dl-error.c:178) > ==20077== by 0x4001586: do_preload (rtld.c:817) > ==20077== by 0x4003B0F: dl_main (rtld.c:1683) > ==20077== by 0x4014F26: _dl_sysdep_start (dl-sysdep.c:243) > ==20077== by 0x4001237: _dl_start (rtld.c:338) > ==20077== by 0x4000856: ??? (in /lib32/ld-2.11.3.so) > The same test does not crash with cachegrind with > --vex-iropt-register-updates=unwindregs-at-mem-access. > The same test does not crash with callgrind. > The same test does not crash on f12/x86 (callgrind or cachegrind). > On ppc64, it looks ok. > > So, it looks like there are some subtilities on some distro > when not updating at least the unwind regs at each mem access. > > Before we understand the subtility, it does not look a good idea > to put this in 3.8.0. > (or at least then without setting the default to allregs-at-sb-exits). Agreed. Does "none" work with this test case with allregs-at-sb-exits on debian6/amd64? Josef > > Philippe > |