This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: Porting advice or documentation request
Richard Earnshaw writes:
> > Hi all,
> >
> > I'm working on this new gdb port, and more than often I'm stuck. I have
> > been told that the d10v port is the most authorative template for how
> > new targets should be written. Unfortunately it is impossible to learn
> > anything about the d10v's hardware architecture on the net, so I find it
> > a bit difficult to template from.
>
> I can sympathise. I've tried on a couple of occasions to update the ARM
> target to use the new interfaces and I've repeatedly run into situations
> where the GDB's abstraction model is just not obvious from staring at the
> code.
>
> Andrew, I think we really need a 10,000 ft view document on gdb's internal
> architecture to complement the list of macros that a target can define...
For a 10 000' view there's the multi-arch white paper, and posts such as:
Ref: cooked regcache -> frame (follow the links in it)
http://sources.redhat.com/ml/gdb/2003-05/msg00287.html
Ref: WIP: Register doco
http://sources.redhat.com/ml/gdb/2002-07/msg00202.html
One thing that is missing, though, is a migration strategy that is known
to work (like the convert to multi-arch doco). Can I suggest starting
with a set_gdbarch_deprecated_* method and working down (see gdbarch.h
for the replacement). I think trying to start from the other end -
trying to eliminate all instances of something like
deprecated_registers[] say - will run into real problems.
I think checking out the new i386 frame branch could help here
too. Mark updated the i386 to use the new frame stuff, so that could
be used as example.
Yes, definitly. I've been told that a third architecture is lurking in
the wings.
Andrew