Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Wu Zhou" <woodzltc@cn.ibm.com>
To: <drow@false.org>, <gdb-patches@sources.redhat.com>
Cc: <gilliam@us.ibm.com>, <manjo@austin.ibm.com>
Subject: about how to add support to new c++ compiler in GDB
Date: Tue, 26 Apr 2005 02:54:00 -0000	[thread overview]
Message-ID: <001f01c54a0b$146e8450$7286b509@ibmcsdl9m89c83> (raw)

Hello Daniel and all,

I am recently running GDB testsuite against IBM's xlc compiler, and found
some problems with c++ testcases, especially while handling virtual-table
related stuff. After some analysis, I found there are some difference
between the debuginfo output between xlc++ and g++. The main difference I
noted now is that the class in xlc++ didn't depend on DW_TAG_containing_type
to find its virutal function table. Instead, every virtual class in xlc++
had its own "__vfp", which act the same role as "_vptr.CLASSNAME" in g++.
This will make gdb crash (SEGV) on quite a few c++ testcase.

I am now considering add some code in GDB to fix this. After doing some
search in this mail-list, I found there are some discussion on similar
problem before, such as http://sourceware.org/ml/gdb/2004-12/msg00077.html.
So I think maybe some of you might have experience or thought or idea on
this already. So I write this mail to ask for your expert advice:

1. To support a new c++ compiler, what work need to bo done? I am now
thinking of is a new source file(maybe xlc-abi.c) to register its own cp-abi
operation, and some tweak in dwarf2read.c to let GDB understand xlc specific
debuginfo. Any else places need my special attention? Please advice.
2. while coding this support, what design consideration I need to take into
account? Is there any document on this? GDB internal didn't mention this.
Maybe there are some in somebody's mind, would you like to share with me?
Thanks a lot. :-)
3. To verify that my code does work ok and don't bring any other
side-effect, what I need to take into account? Running the testsuite against
the modified code might be a help. Any specific area need some more
attention?

Above is only my initial thought. Any idea, advice or comments are highly
appreciated.

Cheers.

- Wu Zhou




             reply	other threads:[~2005-04-26  2:54 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-26  2:54 Wu Zhou [this message]
2005-04-26  3:18 ` Daniel Jacobowitz
2005-04-26  9:53   ` Wu Zhou
2005-04-26 13:20     ` Daniel Jacobowitz
2005-04-27 20:09   ` Daniel Jacobowitz
     [not found]     ` <019101c54bc9$20360cd0$4186b509@ibmcsdl9m89c83>
     [not found]       ` <20050428131902.GB29277@nevyn.them.org>
2005-04-29  2:37         ` Wu Zhou
2005-04-29  7:28           ` Wu Zhou
2005-04-29 13:10             ` Daniel Jacobowitz
2005-04-28  6:34 woodzltc
2005-05-09 12:42 Wu Zhou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='001f01c54a0b$146e8450$7286b509@ibmcsdl9m89c83' \
    --to=woodzltc@cn.ibm.com \
    --cc=drow@false.org \
    --cc=gdb-patches@sources.redhat.com \
    --cc=gilliam@us.ibm.com \
    --cc=manjo@austin.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox