This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Unable to step over (n and ni) on mipsel-linux...


On Fri, 20 Aug 2004, David Daney wrote:

> GNU gdb 6.2_2004-08-19-cvs
>
> from the gdb_6_2-branch yesterday.
>
> ../gdbcvs/src/configure  --build=i686-pc-linux --host=mipsel-linux
> --target=mipsel-linux --enable-tui=no
>
> Most of the time when I do next or nexti, gdb is treating it as if I did
> step or stepi.
>
> I have tracked the problem down to this portion of code:
>
> infrun.c: 2322
> .
> .
> .
>   if (frame_id_eq (frame_unwind_id (get_current_frame ()),
>                    step_frame_id))
>     {
>       /* It's a subroutine call.  */
>       CORE_ADDR real_stop_pc;
> .
> .
> .
>
> When there is a subroutine call this if statement fails.  It never
> thinks "It's a subroutine call."
>
> Something is horked up in the frame code, but I cannot figure out where.

I've noticed this problem with the avr port too, but haven't had the
time to look into it. It also appears to have a seeming random element
to it for me: sometimes 'next' will step over the function call, but
most of the time it doesn't.

The problem seems to be independent of which version of gcc I use to
generate the target code. I've noticed the problem with versions of gdb
newer than 6.0.x up through current cvs (my last cvs was
2004-08-05-cvs).

I'm hoping that my problem is related. If there's any testing I can do
with the avr port to help out, please let me know.

---
Ted Roth
PGP Key ID: 0x18F846E9
Jabber ID: troth@jabber.org


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]