mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-03 18:13:01 +00:00
to put a "marker" msg in process log output * v.info n_errs_found accepts optional msg, added in the output of the monitor command. * use VG_(printf) rather than VG_(gdb_printf) when output of command should be redirected according to v.set gdb_output|log_output|mixed_output * also avoid calling gdb_printf in output sink processing to output zero bytes, as gdb_printf expects to have a null terminated string, which is not ensured when 0 bytes have to be output. * some minor reformatting (replace char* xxx by char *xxx). git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13532
74 lines
1.4 KiB
Plaintext
74 lines
1.4 KiB
Plaintext
# connect gdb to Valgrind gdbserver:
|
|
target remote | ./vgdb --wait=60 --vgdb-prefix=./vgdb-prefix-mcbreak
|
|
echo vgdb launched process attached\n
|
|
monitor v.set vgdb-error 999999
|
|
#
|
|
define checkstep
|
|
set $old_pc=$pc
|
|
step
|
|
if $old_pc == $pc
|
|
echo Bizarre the oldpc has not changed after step\n
|
|
print $oldpc
|
|
print $pc
|
|
else
|
|
echo old_pc has changed after step\n
|
|
end
|
|
end
|
|
#
|
|
# break1 and break2
|
|
break t.c:112
|
|
break t.c:117
|
|
#
|
|
continue
|
|
# first break encountered.
|
|
checkstep
|
|
checkstep
|
|
checkstep
|
|
#
|
|
monitor v.set vgdb-error 0
|
|
#
|
|
next
|
|
print whoami("first")
|
|
print undefined
|
|
print i
|
|
checkstep
|
|
checkstep
|
|
next
|
|
print whoami("second")
|
|
print undefined
|
|
print i
|
|
next
|
|
print whoami("third")
|
|
print undefined
|
|
print i
|
|
next
|
|
print whoami("fourth")
|
|
print undefined
|
|
print i
|
|
# modify sleeps so as to have a shorter test:
|
|
print sleeps=1
|
|
#
|
|
print whoami("after next: inferior call pushed from mcbreak.stdinB.gdb")
|
|
continue
|
|
#
|
|
# encountered second break
|
|
step
|
|
finish
|
|
# delete all breaks
|
|
delete
|
|
continue
|
|
monitor v.info n_errs_found
|
|
monitor v.info n_errs_found a
|
|
monitor v.info n_errs_found b
|
|
monitor v.info n_errs_found c d
|
|
monitor v.info n_errs_found eeeeeee fffffff ggggggg
|
|
# inferior call "in the middle" of an instruction is not working at least
|
|
# on all platforms, so comment the below.
|
|
# print whoami("after error: inferior call pushed from mcbreak.stdinB.gdb")
|
|
checkstep
|
|
monitor v.set vgdb-error 0
|
|
continue
|
|
# stop the process a.o. to avoid non deterministic output
|
|
monitor v.kill
|
|
quit
|