[rfc] Frame based register cache / frame->unwind

Daniel Jacobowitz drow@mvista.com
Sun Apr 14 18:48:00 GMT 2002


On Sun, Apr 14, 2002 at 04:58:42PM -0400, Andrew Cagney wrote:
> Hello,
> 
> To pull together several apparently random threads.  The attached is a 
> work in progress to add a frame based register cache to GDB.  It appears 
> to work - NetBSD/PPC shows no regressions.
> 
> Performance is hard to quantify(1) but looks positive.  Using a native 
> GDB (not typical for me :-) it appears that each frame is ~2% slower to 
> create (``(gdb) up'').  Once created, the frame is ~20-25% faster 
> (``(gdb) info registers'').

You might want to try timing the testsuite with and without this patch
(using /usr/bin/time et al., to get real/user/sys times) and see what
changes.  It'll probably be negligible, but you never know.

> I'm not too worried about the apparent 2% overhead per frame create 
> though.  With the patch applied, the code ends up maintaining both this 
> new cache and the old ->saved_regs table.  Rewriting a target to just 
> use the ->unwind_cache, should, I think, claw back the 2% and then some 
> - less need to go out to the target.

Completely agree.

> 
> There are two parts to the change and I'll describe each in turn.  The 
> final patch will likely be committed as two parts.

Looks wonderful to me!

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer



More information about the Gdb mailing list