From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15955 invoked by alias); 31 May 2005 03:31:27 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 15936 invoked by uid 22791); 31 May 2005 03:31:22 -0000 Received: from ausmtp02.au.ibm.com (HELO ausmtp02.au.ibm.com) (202.81.18.187) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Tue, 31 May 2005 03:31:22 +0000 Received: from sd0208e0.au.ibm.com (d23rh904.au.ibm.com [202.81.18.202]) by ausmtp02.au.ibm.com (8.12.10/8.12.10) with ESMTP id j4V3QvVN333718 for ; Tue, 31 May 2005 13:26:59 +1000 Received: from d23av04.au.ibm.com (d23av04.au.ibm.com [9.190.250.237]) by sd0208e0.au.ibm.com (8.12.10/NCO/VER6.6) with ESMTP id j4V3Y58G130328 for ; Tue, 31 May 2005 13:34:06 +1000 Received: from d23av04.au.ibm.com (loopback [127.0.0.1]) by d23av04.au.ibm.com (8.12.11/8.13.3) with ESMTP id j4V3VC9K011745 for ; Tue, 31 May 2005 13:31:13 +1000 Received: from plinuxt18.cn.ibm.com (plinuxt18.cn.ibm.com [9.181.140.28]) by d23av04.au.ibm.com (8.12.11/8.12.11) with ESMTP id j4V3VAmW011694; Tue, 31 May 2005 13:31:11 +1000 Date: Tue, 31 May 2005 13:27:00 -0000 From: Wu Zhou To: Daniel Jacobowitz cc: ezannoni@redhat.com, gdb-patches@sources.redhat.com Subject: Re: [RFC] Add a little IBM XL C++ specific code in dwarf2read.c, to set TYPE_VPTR_FIELDNO and TYPE_VPTR_BASETYPE of a virtual class correctly In-Reply-To: <20050531025031.GA7983@nevyn.them.org> Message-ID: References: <20050531025031.GA7983@nevyn.them.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-SW-Source: 2005-05/txt/msg00659.txt.bz2 On Mon, 30 May 2005, Daniel Jacobowitz wrote: > Your computer's date is wrong; please fix that. I had to go hunting to > see where this message was filed :-) Sorry for the trouble it brought. Should be fixed now. > > On Sat, Apr 30, 2005 at 01:53:46PM -0700, Wu Zhou wrote: > > Daniel, > > > > As we discussed in a previous thread before, gdb will drop into SEGV > > fault when handling the debug-info of a virtual class which has no > > DW_AT_containing_type attribute. ARM's RVCT compiler will generate > > this kind of debuginfo and prone to trigger SEGV error, which you > > fixed in a big un-cleanuped patch. IBM's XL compiler will also > > generate this kind of debuginfo and prone to SEGV error too, on > > which I posted a small patch based on yours. > > > > I see that you are still too busy to look into this. But maybe we > > could handle this somewhat easily. My thought is to begin with > > eliminating the SEGV error first, which only need a small fix. Then > > we could go on with other parts. So I post the following IBM XLC++ > > specific patch, wishing that we could make some progress on this. > > What is your point on this idea? If you think it is ok, I could also > > add ARM specific code into this patch. Please review and comment. > > Thanks a lot! > > I am not the maintainer of this code, so I can't approve patches to it. > You currently need to speak with Elena about DWARF-2 patches. OK, got it. I will also include Elena in the CC list. Elena, would you please help review this patch and give your comment on this? Thanks a lot! > I think the change is probably reasonable. Alternatively, we could > teach GDB not to rely on TYPE_VPTR_FIELDNO and TYPE_VPTR_BASETYPE if > the C++ ABI in use does not require them, which the GNU v3 ABI does > not. That would also be a good solution. Yes. I had ever thought of that and even added a file named xlc-abi.c to not rely on these two fields. But I am not sure whether this is the most appropriate way. The developer of XL compiler ever told me that they also comply to the GNU C++ ABI. Maybe it is acceptable to code that change in gnu-v3-abi.c. My question is: which one is better and more prone to be accepted by mainline? Any comments, suggestion and idea are highly appreciated! Cheers - Wu Zhou