Re: [CRIS] dwarf2 frame sniffer problem?

Daniel Jacobowitz
2004-03-10T16:59:07Z

On Wed, Mar 10, 2004 at 05:53:50PM +0100, Orjan Friberg wrote:
> After getting the CRIS port into shape without the dwarf2 frame sniffer,
> I hooked it in and found that basic stuff like next over a function call
> no longer works. (More specifically, after stepping into the function,
> gdb sets the breakpoint on the jump instruction itself, rather than at
> the instruction after.)
>
> I do get a complaint "During symbol reading, Incomplete CFI data;
> unspecified registers at 0x000802f6." already by the time I get to
> main(), where 802f6 is the first address in main(), which is where the
> subroutine pointer is pushed. Although there is a comment in
> dwarf2-frame.c explaining the complaint, I'm not sure how seriously I
> should take it.

That shouldn't be the problem.

> Thanks for any idea on what might be the cause or where to start digging.

Well, it sounds like the return address is being unwound incorrectly.
You may want to take a look at the CFI data by hand, and then compare
with dwarf2_frame_prev_register. I can't quite imagine how you'd get
the one-instruction-early behavior, though :)

--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer