|
From: <sv...@va...> - 2005-08-14 17:25:41
|
Author: njn Date: 2005-08-14 18:25:28 +0100 (Sun, 14 Aug 2005) New Revision: 4405 Log: Update for Vex. BACKPORT TO 3_0_X? Modified: trunk/none/tests/selfrun.vgtest Modified: trunk/none/tests/selfrun.vgtest =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/none/tests/selfrun.vgtest 2005-08-14 06:24:20 UTC (rev 4404) +++ trunk/none/tests/selfrun.vgtest 2005-08-14 17:25:28 UTC (rev 4405) @@ -1,3 +1,3 @@ prog: ../../coregrind/valgrind --tool=3Dnone --command-line-only=3Dyes .= /selfrun -vgopts: --single-step=3Dyes +vgopts: --vex-guest-max-insns=3D1 prereq: grep '^#define HAVE_PIE 1' ../../config.h > /dev/null |
|
From: Julian S. <js...@ac...> - 2005-08-15 07:50:56
|
The point of --single-step=yes here was to ensure that the guest integer registers, at least, were up to date immediately before each memory reference, so that the stack-extending segfault handler can work when self-hosting. But single stepping has a drastic effect on performance. Vex offers a better solution, which is --vex-iropt-precise-memory-exns=yes. This constraints optimisation enough to ensure the abovementioned property whilst still allowing basic blocks to be arbitrarily long. Uh .. so does this mean you have self-hosting working? J On Sunday 14 August 2005 18:25, sv...@va... wrote: > Author: njn > Date: 2005-08-14 18:25:28 +0100 (Sun, 14 Aug 2005) > New Revision: 4405 > > Log: > Update for Vex. > > BACKPORT TO 3_0_X? > > Modified: > trunk/none/tests/selfrun.vgtest > > > Modified: trunk/none/tests/selfrun.vgtest > =================================================================== > --- trunk/none/tests/selfrun.vgtest 2005-08-14 06:24:20 UTC (rev 4404) > +++ trunk/none/tests/selfrun.vgtest 2005-08-14 17:25:28 UTC (rev 4405) > @@ -1,3 +1,3 @@ > prog: ../../coregrind/valgrind --tool=none --command-line-only=yes > ./selfrun -vgopts: --single-step=yes > +vgopts: --vex-guest-max-insns=1 > prereq: grep '^#define HAVE_PIE 1' ../../config.h > /dev/null > > > > ------------------------------------------------------- > SF.Net email is Sponsored by the Better Software Conference & EXPO > September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices > Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA > Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers |
|
From: Nicholas N. <nj...@cs...> - 2005-08-15 13:30:50
|
On Mon, 15 Aug 2005, Julian Seward wrote: > The point of --single-step=yes here was to ensure that the > guest integer registers, at least, were up to date immediately > before each memory reference, so that the stack-extending > segfault handler can work when self-hosting. But single stepping > has a drastic effect on performance. Vex offers a better > solution, which is --vex-iropt-precise-memory-exns=yes. > This constraints optimisation enough to ensure the abovementioned > property whilst still allowing basic blocks to be > arbitrarily long. > > Uh .. so does this mean you have self-hosting working? Nope. A user had mentioned that this regtest was failing for them, so I tried to fix it. I've changed it to use --vex-iropt-precise-memory-exns=yes now. N |