* HOWTO for porting GDB published
@ 2008-09-02 10:53 Jeremy Bennett
2008-09-03 15:38 ` Robert Norton
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Jeremy Bennett @ 2008-09-02 10:53 UTC (permalink / raw)
To: gdb
I've just completed porting GDB 6.8 to the OpenRISC 1000 architecture.
This was an exercise originally done for GDB 5.0 and 5.3, but which has
since languished.
I achieved this by using the GDB Internals manual, looking at ports of
other architectures, and a great deal of poring over the GDB source.
I realized that there is no proper guide for an engineer porting GDB for
the first time. The GDB Internals manual is aimed at developers of GDB
itself, not porters - it is also not yet complete. Looking at ports for
other architectures helps - but which is the best one, and does it have
similar features?
But I got there in the end, thanks to the generous advice from
contributors to this mailing list and the GDB IRC channel. To help
others, I have written up what I did as a HOWTO manual for porting GDB,
using the OpenRISC 1000 port for examples. It's at
http://www.embecosm.com/download/ean3.html
I hope this is a useful contribution. I'd welcome feedback and any
suggestions for how this first issue could be improved.
For those interested in the OpenRISC 1000 port itself, this is available
at
http://www.embecosm.com/download/esp3.html
I've also included a Doxygen analysis, giving the documentation of all
functions in the port and their calling and dependency graphs.
I look forward to your feedback.
Jeremy
--
Tel: +44 (1202) 416955
Cell: +44 (7970) 676050
SkypeID: jeremybennett
Email: jeremy.bennett@embecosm.com
Web: www.embecosm.com
^ permalink raw reply [flat|nested] 7+ messages in thread* RE: HOWTO for porting GDB published
2008-09-02 10:53 HOWTO for porting GDB published Jeremy Bennett
@ 2008-09-03 15:38 ` Robert Norton
2008-09-09 4:18 ` Joel Brobecker
` (2 subsequent siblings)
3 siblings, 0 replies; 7+ messages in thread
From: Robert Norton @ 2008-09-03 15:38 UTC (permalink / raw)
To: jeremy.bennett, gdb
> -----Original Message-----
> From: gdb-owner@sourceware.org
> [mailto:gdb-owner@sourceware.org] On Behalf Of Jeremy Bennett
> Sent: 02 September 2008 11:53
> To: gdb@sourceware.org
> Subject: HOWTO for porting GDB published
>
> I hope this is a useful contribution. I'd welcome feedback and any
> suggestions for how this first issue could be improved.
Wow this looks really great! I wish I'd had this when working on our port. It is difficult for me to be objective since perhaps I already know a little more about GDB than the target audience but I think this would have allowed me to get started much more easily.
Not having read the entire document thoroughly here are some things I really liked:
o It appears to give a clear and fairly high level explanation of the various concepts and terminology employed by GDB
o The example procedure flows (sequence diagrams) provide a good overview of gdb internals and where the arch functions fit in
o Provides a good checklist of things to do when porting an arch
o The OpenRISC example makes everything nice and concrete.
In short the whole thing seems to have hit a nice level of abstraction: high-level enough to provide information which can't be easily obtained by reading the source but not so high-level as to be totally abstract.
Thank you so much for this! Hopefully I will have time to give it a more thorough read sometime, at which point I may be able to give more detailed feedback.
Regards,
Robert Norton
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: HOWTO for porting GDB published
2008-09-02 10:53 HOWTO for porting GDB published Jeremy Bennett
2008-09-03 15:38 ` Robert Norton
@ 2008-09-09 4:18 ` Joel Brobecker
2008-09-09 7:01 ` Jeremy Bennett
2008-09-13 23:09 ` Thiago Jung Bauermann
[not found] ` <1221346443.28258.50.camel@localhost.localdomain>
2010-03-23 4:49 ` arm-none-linux-gnuabi - sim support? Reddy, MR Swami
3 siblings, 2 replies; 7+ messages in thread
From: Joel Brobecker @ 2008-09-09 4:18 UTC (permalink / raw)
To: Jeremy Bennett; +Cc: gdb
> To help others, I have written up what I did as a HOWTO manual for
> porting GDB, using the OpenRISC 1000 port for examples. It's at
>
> http://www.embecosm.com/download/ean3.html
>
> I hope this is a useful contribution. I'd welcome feedback and any
> suggestions for how this first issue could be improved.
I haven't had a chance to look too deeply into it as I am really really
busy these days, but I think this is a great effort that I'm sure lots
of people who haven't done a new port before will very much appreciate.
To give your document a little more visibility, I suggest putting
a link to it on the GDB wiki. Would that make sense to everyone?
--
Joel
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: HOWTO for porting GDB published
2008-09-09 4:18 ` Joel Brobecker
@ 2008-09-09 7:01 ` Jeremy Bennett
2008-09-13 23:09 ` Thiago Jung Bauermann
1 sibling, 0 replies; 7+ messages in thread
From: Jeremy Bennett @ 2008-09-09 7:01 UTC (permalink / raw)
To: gdb
On Mon, 2008-09-08 at 21:17 -0700, Joel Brobecker wrote:
> I haven't had a chance to look too deeply into it as I am really really
> busy these days, but I think this is a great effort that I'm sure lots
> of people who haven't done a new port before will very much appreciate.
Thank you
> To give your document a little more visibility, I suggest putting
> a link to it on the GDB wiki. Would that make sense to everyone?
I would be very happy with this
Jeremy
--
Tel: +44 (1202) 416955
Cell: +44 (7970) 676050
SkypeID: jeremybennett
Email: jeremy.bennett@embecosm.com
Web: www.embecosm.com
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: HOWTO for porting GDB published
2008-09-09 4:18 ` Joel Brobecker
2008-09-09 7:01 ` Jeremy Bennett
@ 2008-09-13 23:09 ` Thiago Jung Bauermann
1 sibling, 0 replies; 7+ messages in thread
From: Thiago Jung Bauermann @ 2008-09-13 23:09 UTC (permalink / raw)
To: Joel Brobecker; +Cc: Jeremy Bennett, gdb
El lun, 08-09-2008 a las 21:17 -0700, Joel Brobecker escribió:
> > To help others, I have written up what I did as a HOWTO manual for
> > porting GDB, using the OpenRISC 1000 port for examples. It's at
> >
> > http://www.embecosm.com/download/ean3.html
> >
> > I hope this is a useful contribution. I'd welcome feedback and any
> > suggestions for how this first issue could be improved.
>
> I haven't had a chance to look too deeply into it as I am really really
> busy these days, but I think this is a great effort that I'm sure lots
> of people who haven't done a new port before will very much appreciate.
Agreed! Also its "Overview of GDB Internals" chapter is a good companion
to the GDB Internals manual.
> To give your document a little more visibility, I suggest putting
> a link to it on the GDB wiki. Would that make sense to everyone?
I just added it to the Developer_Tips page.
--
[]'s
Thiago Jung Bauermann
IBM Linux Technology Center
^ permalink raw reply [flat|nested] 7+ messages in thread
[parent not found: <1221346443.28258.50.camel@localhost.localdomain>]
* Re: HOWTO for porting GDB published
[not found] ` <1221346443.28258.50.camel@localhost.localdomain>
@ 2008-09-16 9:39 ` Jeremy Bennett
0 siblings, 0 replies; 7+ messages in thread
From: Jeremy Bennett @ 2008-09-16 9:39 UTC (permalink / raw)
To: gdb; +Cc: Thiago Jung Bauermann
On Sat, 2008-09-13 at 19:54 -0300, Thiago Jung Bauermann wrote:
> I wonder if you'd be interested in merging at least some of your work
> into the GDB Internals document? IMHO it would make your documentation
> effort even more effective, by providing them in a standard place where
> people already turn to.
>
> I think chapter 2 in particular is very interesting to merge. Especially
> the following parts, which from my comparison with gdbint you describe
> better (and in some cases, the information isn't even there in the
> internals manual):
>
> creating a gdbarch (section 2.3)
> gdbarch_info (2.3.1, 2.3.1.1)
> raw, pseudo and cooked register sets (2.3.5)
> regcache (section 2.3.5.3),
> frame handling (section 2.3.6 and subsections)
> procedure flows (section 2.11)
>
> Of course the other parts would also be fit for the GDB Internals. It
> has a stub chapter already about Porting GDB.
Hi Thiago,
Thanks for adding the link to the GDB Wiki.
I'm very happy to incorporate parts of this document into the GDB
Internals. I'll try incorporating the sections you suggest as a start.
Jeremy
--
Tel: +44 (1202) 416955
Cell: +44 (7970) 676050
SkypeID: jeremybennett
Email: jeremy.bennett@embecosm.com
Web: www.embecosm.com
^ permalink raw reply [flat|nested] 7+ messages in thread
* arm-none-linux-gnuabi - sim support?
2008-09-02 10:53 HOWTO for porting GDB published Jeremy Bennett
` (2 preceding siblings ...)
[not found] ` <1221346443.28258.50.camel@localhost.localdomain>
@ 2010-03-23 4:49 ` Reddy, MR Swami
3 siblings, 0 replies; 7+ messages in thread
From: Reddy, MR Swami @ 2010-03-23 4:49 UTC (permalink / raw)
To: gdb
Hello,
Is the ARM GDB (target=arm-none-linux-gnuabi), supports the simulator target?
Thanks
Swami
-----Original Message-----
From: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] On Behalf Of Jeremy Bennett
Sent: Tuesday, September 02, 2008 4:23 PM
To: gdb@sourceware.org
Subject: HOWTO for porting GDB published
I've just completed porting GDB 6.8 to the OpenRISC 1000 architecture.
This was an exercise originally done for GDB 5.0 and 5.3, but which has
since languished.
I achieved this by using the GDB Internals manual, looking at ports of
other architectures, and a great deal of poring over the GDB source.
I realized that there is no proper guide for an engineer porting GDB for
the first time. The GDB Internals manual is aimed at developers of GDB
itself, not porters - it is also not yet complete. Looking at ports for
other architectures helps - but which is the best one, and does it have
similar features?
But I got there in the end, thanks to the generous advice from
contributors to this mailing list and the GDB IRC channel. To help
others, I have written up what I did as a HOWTO manual for porting GDB,
using the OpenRISC 1000 port for examples. It's at
http://www.embecosm.com/download/ean3.html
I hope this is a useful contribution. I'd welcome feedback and any
suggestions for how this first issue could be improved.
For those interested in the OpenRISC 1000 port itself, this is available
at
http://www.embecosm.com/download/esp3.html
I've also included a Doxygen analysis, giving the documentation of all
functions in the port and their calling and dependency graphs.
I look forward to your feedback.
Jeremy
--
Tel: +44 (1202) 416955
Cell: +44 (7970) 676050
SkypeID: jeremybennett
Email: jeremy.bennett@embecosm.com
Web: www.embecosm.com
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2010-03-23 4:49 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-02 10:53 HOWTO for porting GDB published Jeremy Bennett
2008-09-03 15:38 ` Robert Norton
2008-09-09 4:18 ` Joel Brobecker
2008-09-09 7:01 ` Jeremy Bennett
2008-09-13 23:09 ` Thiago Jung Bauermann
[not found] ` <1221346443.28258.50.camel@localhost.localdomain>
2008-09-16 9:39 ` Jeremy Bennett
2010-03-23 4:49 ` arm-none-linux-gnuabi - sim support? Reddy, MR Swami
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox