This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Testsuite question...
- From: Robin Getz <rgetz at blackfin dot uclinux dot org>
- To: gdb at sourceware dot org
- Date: Wed, 5 Dec 2007 10:59:37 -0500
- Subject: Testsuite question...
In gdb/testsuite/gdb.base/dbx-test.exp there are some simple breakpoint tests:
#
#test_breakpoints
#
proc test_breakpoints { } {
gdb_test "stop in main" "Breakpoint.*at.*: file.*average\.c, line 38\."
gdb_test "status" "Num.*Type.*Disp.*Enb.*Address.*What\r\n1\[ \r\]+breakpoint\[ \r\]+keep y.*in main at.*average\.c:38.*"
gdb_test "stop at 43" "Breakpoint.*at.*: file.*average\.c, line 43.*"
gdb_test "stop in 43" "Usage: stop in <function . address>"
gdb_test "stop at main" "Usage: stop at <line>"
}
I have run into a little problem with this, and am not sure if this is my
problem, or if it is a general testsuite issue.
Since we compile all the c libraries with -g, I get a break in the crt1.S file.
(This is pretty helpful when debugging libs and startup issues).
(gdb) exec-file /home/rgetz/blackfin/gcc-build/binutils_build/gdb/testsuite/gdb.base/dbx-test. ^Mgdb
(gdb) target remote 192.168.0.32:2427
Remote debugging using 192.168.0.32:2427
Remote debugging from host 192.168.0.22
_stext () at libc/sysdeps/linux/bfin/crt1.S:84
84 FP = 0;
Current language: auto; currently asm
When you do a "stop symbol", where the symbol is in the application, it
works fine,
(gdb) stop in main
Breakpoint 1 at 0x4401b2: file /home/rgetz/blackfin/toolchain/binutils-2.17/gdb/testsuite/gdb.base/average.c, line 38.
(gdb) PASS: gdb.base/dbx.exp: stop in main
status
Num Type Disp Enb Address What
1 breakpoint keep y 0x004401b2 in main at /home/rgetz/blackfin/toolchain/binutils-2.17/gdb/testsuite/gdb.base/average.c:38
(gdb) PASS: gdb.base/dbx.exp: status
When you do a "stop 43", since the current context is not the application
source file (it is line number after all), it puts a breakpoint in the
current open file - crt1.S, and this fails the pattern match.
stop at 43
Breakpoint 2 at 0x440044: file libc/sysdeps/linux/bfin/crt1.S, line 43.
(gdb) FAIL: gdb.base/dbx.exp: stop at 43
This doesn't sound like an architecture specific issue?
Thanks for any/all pointers.
-Robin