* frameless functions
@ 2003-03-04 15:46 Jan Hoogerbrugge
2003-03-04 17:58 ` Andrew Cagney
0 siblings, 1 reply; 2+ messages in thread
From: Jan Hoogerbrugge @ 2003-03-04 15:46 UTC (permalink / raw)
To: gdb
Hi,
I porting gdb to a new target. The port is now in a stage where stack traces
seem to work when code is compiled with a frame pointer. Now I am trying to
get it working for code without a frame pointer. Could anyone tell me how to
deal with frameless functions? Is there another port where I can learn from?
My compiler assigns the incoming sp to the fp. I guess this is what most
compilers do.
In scan_prologue() I use fi->frame, which appears to correspond to the fp,
to determine where registers are saved. What to do in the case of frameless
functions? Should I assign something to fi->frame?
Should I define frameless_function_invocation()?
Thanks in advance,
Jan
_________________________________________________________________
STOP MORE SPAM with the new MSN 8 and get 2 months FREE*
http://join.msn.com/?page=features/junkmail
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: frameless functions
2003-03-04 15:46 frameless functions Jan Hoogerbrugge
@ 2003-03-04 17:58 ` Andrew Cagney
0 siblings, 0 replies; 2+ messages in thread
From: Andrew Cagney @ 2003-03-04 17:58 UTC (permalink / raw)
To: Jan Hoogerbrugge; +Cc: gdb
> Hi,
>
> I porting gdb to a new target. The port is now in a stage where stack traces seem to work when code is compiled with a frame pointer. Now I am trying to get it working for code without a frame pointer. Could anyone tell me how to deal with frameless functions? Is there another port where I can learn from?
>
> My compiler assigns the incoming sp to the fp. I guess this is what most compilers do.
>
> In scan_prologue() I use fi->frame, which appears to correspond to the fp, to determine where registers are saved. What to do in the case of frameless functions? Should I assign something to fi->frame?
>
> Should I define frameless_function_invocation()?
I'd ignore that method, it doesn't do much useful. You'll need to do at
least a minimal prologue analysis to determine the address of the
frameless frames `base'. You need to do this anyway to determine where
any pushed registers are.
As an alternative, your architecure might have debug info that lets you
locate the frame base.
I should also note that the frame code is being rewritten so when it
comes to integrate your architecture into GDB, you're going to encounter
some radical change.
Andrew
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2003-03-04 17:58 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-03-04 15:46 frameless functions Jan Hoogerbrugge
2003-03-04 17:58 ` Andrew Cagney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).