* Modify nlgone_exit so that it tests --vgdb-stop-at=startup,exit

* remove empty lines from nlgone_*.stdinB.gdb, as these empty
  lines are (surprisingly) repeating the previous gdb command.
  Empty lines should be be put in the *gdb files.
* And add yet another sed expression in filter_gdb to cope with
  the different place where a thread exits.
  (this filter technique is now *really* arriving in a dead end
   e.g. the link between the comment and the sed expression is very
   poor).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13905
This commit is contained in:
Philippe Waroquiers 2014-04-23 21:27:07 +00:00
parent e2286363d9
commit e548d704c3
9 changed files with 13 additions and 11 deletions

View File

@ -76,6 +76,8 @@ sed -e '/Remote debugging using/,/vgdb launched process attached/d'
-e 's/in _dl_sysinfo_int80 () from \/lib\/ld-linux.so.*/in syscall .../' \
-e 's/in kill ().*$/in syscall .../' \
-e 's/in .*kill ().*$/in syscall .../' \
-e 's/in _exit () from \/lib\/libc.so.*$/in syscall .../' \
-e 's/in \._exit () from \/lib64\/libc.so.*$/in syscall .../' \
-e 's/in _dl_sysinfo_int80 ()/in syscall .../' \
-e '/^ from \/lib\/ld-linux.so.*$/d' \
-e 's/\(0x........\) in ?? () from \/lib.*$/\1 in syscall .../' \
@ -83,7 +85,7 @@ sed -e '/Remote debugging using/,/vgdb launched process attached/d'
-e 's/in \(.__\)\{0,1\}select () from \/.*$/in syscall .../' \
-e '/^ from \/lib\/libc.so.*$/d' \
-e '/^ from \/lib64\/libc.so.*$/d' \
-e '/^ from \/lib64\/.*\/libc.so.*$/d' \
-e '/^ from \/lib64\/.*\/libc.so.*$/d' \
-e 's/in select ()$/in syscall .../' \
-e 's/in \.__select ()$/in syscall .../' \
-e 's/in select () at \.\.\/sysdeps\/unix\/syscall-template\.S.*$/in syscall .../' \

View File

@ -1,7 +1,6 @@
# connect gdb to Valgrind gdbserver:
target remote | ./vgdb --wait=60 --vgdb-prefix=./vgdb-prefix-nlgone-abrt
echo vgdb launched process attached\n
continue
# see process get a fatal signal
continue

View File

@ -1,4 +1,3 @@
vgdb launched process attached
Continuing.
Program received signal SIGABRT, Aborted.
0x........ in syscall ...

View File

@ -1,8 +1,7 @@
Nulgrind, the minimal Valgrind tool
(action at startup) vgdb me ...
starting ...
exiting ...
(action at exit) vgdb me ...

View File

@ -1,7 +1,9 @@
# connect gdb to Valgrind gdbserver:
target remote | ./vgdb --wait=60 --vgdb-prefix=./vgdb-prefix-nlgone-exit
echo vgdb launched process attached\n
# continue after startup
continue
# continue at the last instruction
continue
# see program is gone with exit code
quit

View File

@ -1,3 +1,5 @@
vgdb launched process attached
Continuing.
Program received signal SIGTRAP, Trace/breakpoint trap.
0x........ in syscall ...
Continuing.
Program exited with code 01.

View File

@ -1,8 +1,9 @@
# test that an exit (with return value) is properly passed on to gdb.
# also test the --vgdb-stop-at startup and exit args (so we do not use
# --vgdb-error=0 here)
prog: gone
args: exit
vgopts: --tool=none --vgdb=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-nlgone-exit
vgopts: --tool=none --vgdb=yes --vgdb-stop-at=startup,exit --vgdb-prefix=./vgdb-prefix-nlgone-exit
stderr_filter: filter_stderr
prereq: test -e gdb
progB: gdb

View File

@ -1,7 +1,6 @@
# connect gdb to Valgrind gdbserver:
target remote | ./vgdb --wait=60 --vgdb-prefix=./vgdb-prefix-nlgone-return
echo vgdb launched process attached\n
continue
# see program is gone
quit

View File

@ -1,3 +1,2 @@
vgdb launched process attached
Continuing.
Program exited normally.