This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: various Alpha patches
- To: msnyder at cygnus dot com
- Subject: Re: various Alpha patches
- From: Guy Harris <guy at netapp dot com>
- Date: Wed, 26 Jul 2000 14:37:18 -0700 (PDT)
- CC: Kevin Nomura <nomura at netapp dot com>, Eirik Fuller <eirik at netapp dot com>, gdb-patches at sourceware dot cygnus dot com
Sorry, I'm stupid.
Eirik's patch is the one in message
http://sources.redhat.com/ml/gdb-patches/2000-07/msg00166.html
with the subject line "[PATCH]: alpha_frame_saved_pc()".
The two patches in
http://sources.redhat.com/ml/gdb-patches/2000-07/msg00167.html
and
http://sources.redhat.com/ml/gdb-patches/2000-07/msg00168.html
with subject lines "[PATCH]: (alpha) heuristic_proc_start()" and
"[PATCH]: (alpha) heuristic_proc_start", respectively, are from Kevin
Nomura - it appears to be a fix for NetApp bug 26292 (our bug system
tracks bugs on tools, as well as on the software on our appliances),
caused by some code generated on the fly building stack frames that GDB
can't follow; the comment for the fix was
I'm changing alpha-tdep.c in gdb to use "lda sp,x(sp)" as the
sentinel which identifies the start of a procedure in heuristic
mode. Heuristic mode is entered when the procedure lacks a PDR.
This occurs if symbols are stripped, but if symbols are not
stripped it is fairly rare; even assembly procedures have PDRs
(provided they were bracketed with .ent/.end). [On-the-fly]
generated code is the issue here and of course such procedures
do not have PDRs.
I also changed "heuristic-fence-post" to work as documented. A
value of 0, which is the default, was supposed to mean "search
forever". Instead a value of 0 meant "don't do any search"!.
This meant that "set heuristic-fence-post 100000" or some such
was needed to backtrace through routines without PDRs. Seeing
how this flag is obscure and alpha-specific, I think the default
should be "on" rather than "off". The possible drawback is that
when debugging over a serial line, if for some reason a "lda
sp,x(sp)" was not present, gdb might go roaming through all of
memory and effectively hang. If this is a possibility then we
should perhaps do something special in serial line debugging
mode, or just make it default to off and require people to
explicitly set their favorite value of heuristic-fence-post.
The change to "heuristic-fence-post" is the change in the first of those
messages; the other change is the change in the second of those
messages.