I don't like calling arrangeCXXDtorDeclaration from ctor-related functions.
It looks like a typo. In the past I've used 'structor' as the generic term
for ctors and dtors. You can see it in the Itanium mangling code, but I
don't think it's very widely used. Does that seem like a better
nomenclature? Then we would probably have StructorType, etc.

I'm excited to finally have this functionality, though. :)


On Thu, Sep 4, 2014 at 11:20 AM, Rafael Espíndola <
rafael.espind...@gmail.com> wrote:

> I have rebased this patch on top of my refactoring patch since it
> makes it quiet a bit simpler. I have attached both.
>
> Because of some bugs in GCC there is a discussion going on
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62306 about the best way
> to handle the destructor comdat. The attached patch implements the
> suggestion of using a new comdat name.
>
>
> On 1 September 2014 23:03, Rafael Espíndola <rafael.espind...@gmail.com>
> wrote:
> > There are situations when clang knows that the C1 and C2 constructors
> > or the D2 and D2 destructors are identical. We already optimize some
> > of these cases, but cannot optimize it when the GlobalValue is
> > weak_odr.
> >
> > The problem with weak_odr is that an old TU seeing the same code will
> > have a C1 and a C2 comdat with the corresponding symbols. We cannot
> > suddenly start putting the C2 symbol in the C1 comdat as we cannot
> > guarantee that the linker will not pick a .o with only C1 in it.
> >
> > The solution implemented by GCC is to expand the ABI to have a comdat
> > whose name uses a C5/D5 suffix and always has both symbols. That is
> > what this patch implements.
> >
> > We could also use C5/D5 for linkonce_odr, but it is probably better to
> > change one at a time.
> >
> > Cheers,
> > Rafael
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits@cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>
_______________________________________________
cfe-commits mailing list
cfe-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to