This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] Set calling convention of methods
- From: Joel Brobecker <brobecker at adacore dot com>
- To: Jonas Maebe <jonas dot maebe at elis dot ugent dot be>
- Cc: tromey at redhat dot com, Mark Kettenis <mark dot kettenis at xs4all dot nl>, gdb-patches at sourceware dot org
- Date: Wed, 30 Sep 2009 09:10:01 -0700
- Subject: Re: [patch] Set calling convention of methods
- References: <m31vs0s9da.fsf@fleche.redhat.com> <7B6EF4DA-76C8-4D9C-8B9F-94153EF1C4E1@elis.ugent.be> <m3zleb2ne3.fsf@fleche.redhat.com> <691B0BA8-C606-42FF-A796-76CC9C31556A@elis.ugent.be> <200904222215.n3MMF0p2006994@brahms.sibelius.xs4all.nl> <19C107AA-5271-4C23-A6D2-AFF75BBAC4E4@elis.ugent.be> <m3bpp3oode.fsf@fleche.redhat.com> <5AA3BCA9-1ECF-446E-8B49-3132F0E470FB@elis.ugent.be> <20090930000225.GA10338@adacore.com> <8F3B6095-4766-432D-ABB5-AB4DAA2D5572@elis.ugent.be>
>> As far as I am concerned, I can't see a problem with using DWARF
>> declarations even from stabs.
>
> We could include the dwarf2.h header in the stabs reader and set the
> calling convention to DW_CC_normal in all cases.
That, or explicitly document that calling smash_to_method_type
with a calling_convention=0 means a normal calling convention.
We'd then just add an extra check at the beginning of this function
that translates calling_convention from zero to DW_CC_normal.
My money is on including dwarf2.h from stabsread.c. We do this
from other places, so why not from stabsread.c?
>> This part is maintained by binutils, I believe. You'll need
>> to ask them for approval of this change.
>
> Tom said it came from gcc
> (http://sourceware.org/ml/gdb-patches/2009-04/msg00063.html) and I did
> submit a patch there:
> http://gcc.gnu.org/ml/gcc-patches/2009-04/msg00301.html . I did not get
> any reaction to that patch (and I guess it's not been applied).
That's really strange, because if you look at include/MAINTAINERS:
% cat include/MAINTAINERS
See ../binutils/MAINTAINERS
So, my guess is that this file is maintained by binutils, and that
GCC should stay up to date. If they have local changes there, they
should merge them into binutils so that both copies stay in sync.
> Later on, Tom clarified that he thought that the gdb and gcc versions of
> dwarf2.h should actually be merged into a single copy, but that I
> shouldn't worry about this since the divergence started before my patch:
> http://sourceware.org/ml/gdb-patches/2009-04/msg00099.html
Right, this shouldn't be your problem. But they should welcome your help
if you send patches to make things right again. Double-check with
the binutils people that they indeed "own" that file first.
--
Joel