r218141 - In the Itanium ABI, move stuff to the comdat of variables with static init.

Rafael EspĂ­ndola rafael.espindola at gmail.com
Tue Oct 7 07:03:52 PDT 2014


>
>          .file 1 "test.c"
>
>          .section        .text.startup,"axG", at progbits,test,comdat
>          .loc 1 1
>          nop
>
>          .section        .text.startup,"ax", at progbits
>          .loc 1 1
>          nop
>
> This will cause multiple sections named ".text.startup" to exist in the
> output object, one within the comdat group and one outside of it.   This in
> turn triggers a bug in dwarf2dbg.c in GAS, where it gets confused in
> looking up the section name in a hash table and assumes there can only be
> one section with the same name, resulting in an internal error.

Were we already causing GAS problems in r217264? It would cause us to
create multiple .init_array sections. Or is the problem specific to
.text.startup?

> This causes compile failures in the tramp3d-v4 and CoyoteBench/fftbench
> test cases in test-suite when using -g to build the suite.
>
>
> The bug is fixed in mainline GAS here:
> https://sourceware.org/ml/binutils/2014-09/msg00211.html
> but that hasn't made it into any release (or distro) yet.

Sigh :-(

So, this is only when not using the integrated assembler and using -g?
I am tempted to just live with this bug and make sure the integrated
assembler works. Why wasn't the integrated assembler used? Were you
explicitly testing the external one?

Cheers,
Rafael



More information about the cfe-commits mailing list