multiple frame/register caches (or what isn't in GDB 6)
Andrew Cagney
ac131313@redhat.com
Fri Jun 6 20:02:00 GMT 2003
Since GDB 6 is looming large, its probably time to think about what to
not try and squeese into that release.
While the on-going architectural changes have many potential benefits,
one more immediate and tangable addition is per-thread frame/register
caches.
At present, when the user switches threads, GDB discards all local state
(register cache, all frames, ...). The plan is for GDB to instead
maintain per-thread register/frame caches that are only flushed when the
target changes. For GUI environments, which like to switch between and
display lots of threads, this should be a very big win.
Anyway, to give this an update. The architecture methods are now
[almost] all parameterized with an explicit frame/regcache, and that
makes the addition of multiple active register/frame caches to core GDB
just that much easier - the problem of architecture specific code
indirectly manipulating global state is eliminated (see read_pc_pid).
The remaining obvious problems are of course read_pc_pid, and the target
side supply_register.
So, don't expect this in GDB 6 :-)
enjoy,
Andrew
More information about the Gdb
mailing list