[review v3] slotinfo in struct dtv_slotinfo_list should be flexible array [BZ #25...
Sandra Loosemore
sandra@codesourcery.com
Tue Nov 12 17:42:00 GMT 2019
On 11/12/19 10:29 AM, Joseph Myers wrote:
> This change (glibc commit cba932a5a9e91cffd7f4172d7e91f9b2efb1f84b) has
> broken the glibc testsuite build for nios2. I don't know whether the
> cause is some underlying bug in GCC or binutils or elsewhere in glibc, or
> somehow an issue with this patch itself.
>
> /scratch/jmyers/glibc/many9/install/compilers/nios2-linux-gnu/lib/gcc/nios2-glibc-linux-gnu/9.2.1/../../../../nios2-glibc-linux-gnu/bin/ld: /scratch/jmyers/glibc/many9/build/glibcs/nios2-linux-gnu/glibc/libc.a(libc-tls.o): in function `init_slotinfo':
> /scratch/jmyers/glibc/many9/src/glibc/csu/../csu/libc-tls.c:72: warning: unable to reach .bss (at 0xc5ea0) from the global pointer (at 0x8d890) because the offset (230928) is out of the allowed range, -32678 to 32767
>
> /scratch/jmyers/glibc/many9/install/compilers/nios2-linux-gnu/lib/gcc/nios2-glibc-linux-gnu/9.2.1/../../../../nios2-glibc-linux-gnu/bin/ld: final link failed: nonrepresentable section on output
> collect2: error: ld returned 1 exit status
> ../Rules:253: recipe for target '/scratch/jmyers/glibc/many9/build/glibcs/nios2-linux-gnu/glibc/malloc/tst-interpose-static-nothread' failed
> make[3]: *** [/scratch/jmyers/glibc/many9/build/glibcs/nios2-linux-gnu/glibc/malloc/tst-interpose-static-nothread] Error 1
>
> https://sourceware.org/ml/libc-testresults/2019-q4/msg00203.html
>
I don't have any state on this particular change or what it is trying to
accomplish, but the linker error is the sort of thing that happens when
the compiler sees a reference to an object it thinks will be put in the
small data section, but the actual definition of the object puts it
somewhere else (e.g., because it is too big for small data) -- in this
case the .bss section. Are there conflicting declarations about the
size of the object? If that's unavoidable for some reason, another way
to suppress GP-relative addressing on this object would be to give it an
explicit .bss section attribute everywhere it's declared.
-Sandra
More information about the Libc-alpha
mailing list