This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [patch/rfa] tweak patterns for annota3.exp
> Are you sure there's nothing but an extra \r\n? It definitely passes
> for others, so I'd like to know where that came from.
yup... the log says:
signal SIGUSR1^M
^M
^Z^Zpost-prompt^M
Continuing with signal SIGUSR1.^M
^M
^Z^Zstarting^M
^M
^Z^Zframes-invalid^M
^M
^Z^Zbreakpoint 2^M
^M
Breakpoint 2, 0x000105d4 in handle_USR1 (sig=16) at /home/tausq/gdb/gdb-cvs/gdb/testsuite/gdb.base/annota3.c:18^M
^M
^Z^Zsource /home/tausq/gdb/gdb-cvs/gdb/testsuite/gdb.base/annota3.c:18:238:beg:0x105d4^M
^M
^Z^Zstopped^M
^M
^Z^Zpre-prompt^M
(gdb) ^M
^Z^Zprompt^M
PASS: gdb.base/annota3.exp: send SIGUSR1
i have no idea where that comes from either...
> > address of the signal handler... i.e. i get
> >
> > #0 0x000105d4 in handle_USR1 (sig=16) at /home/tausq/gdb/gdb-cvs/gdb/testsuite/gdb.base/annota3.c:18
> >
> > instead of what the script expected, which seems to be
> > #0 handle_USR1 (sig=16) at /home/tausq/gdb/gdb-cvs/gdb/testsuite/gdb.base/annota3.c:18
>
> The extra address means we didn't put the breakpoint at the beginning
> of a line. This could be a prologue skipper bug, a GCC bug, a general
> the-world-hates-us bug, or we could decide it wasn't a bug. The
> testsuite seems to contain examples of all of the above.
mmmmm. gcc creates this:
.globl handle_USR1
.type handle_USR1, @function
.LFB3:
.loc 1 18 0
handle_USR1:
.PROC
.CALLINFO FRAME=64,NO_CALLS,SAVE_SP,ENTRY_GR=3
.ENTRY
copy %r3,%r1
.LCFI0:
copy %r30,%r3
.LCFI1:
stwm %r1,64(%r30)
.LCFI2:
stw %r26,-36(%r3)
ldo 64(%r3),%r30
ldwm -64(%r30),%r3
bv,n %r0(%r2)
.EXIT
.PROCEND
we are breakpointing at the ldo insn, which seems to be correct from the
prologue analysis point of view. do you mean that the ".loc" should be
right before the ldo?
randolph
--
Randolph Chung
Debian GNU/Linux Developer, hppa/ia64 ports
http://www.tausq.org/