This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: mi*-watch.exp: Test both hardware and software watchpoints


On Tue, Sep 11, 2007 at 04:42:05PM +0100, Maciej W. Rozycki wrote:
>  The reason for MIPS is (and I suppose for i386 likewise) as soon as the 
> frame pointer is destroyed in the callee, the watchpoint vanishes.  There 
> is this in_function_epilogue_p() hook that may be used to single-step out 
> of the function epilogue which is currently not implemented.

It isn't generally sufficient, either.  It's implemented on PowerPC
but the test still fails.  The frame pointer is corrupted one
instruction before the epilogue is detected, and I couldn't come up
with a reasonable way of making it work.

> 2007-09-11  Maciej W. Rozycki  <macro@mips.com>
> 
> 	* gdb.mi/mi-watch.exp (test_watchpoint_all): New function.
> 	Move all the tests here and run them twice, once using software
> 	watchpoints and once using hardware watchpoints.
> 	* gdb.mi/mi2-watch.exp (test_watchpoint_all): Likewise.
> 
>  OK to apply?

In principle, I think so, but give it a day or two to see if anyone
objects.  How about xfailing the out of scope test for software
watchpoints?

In practice, there's one problem.  You're going to create lots of
tests with duplicated test names.  The usual way to fix this is to
pass a prefix around and apply it everywhere.  The clever way to
fix this, inspired by Jan's recent change to sepdebug.exp, is to
modify the global pf_prefix.

If you do that please leave the default prefix present though; save
the value at the beginning of the test (i.e. after default_gdb_init)
and append to it.

-- 
Daniel Jacobowitz
CodeSourcery


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]