https://sourceware.org/bugzilla/show_bug.cgi?id=33702
Bug ID: 33702
Summary: GLIBC_ABI_GNU_TLS produced for i386 binaries that do
not need it
Product: binutils
Version: 2.45
Status: NEW
Severity: normal
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: hjl.tools at gmail dot com
Target Milestone: ---
Target: i386
A GLIBC_ABI_GNU_TLS symbol version requirement is supposed to be created only
if the binary uses global-dynamic TLS. It is created for 32-bit executables
that use no TLS at all. (In executables, TLS sequences should be relaxed to
local-exec, that's another reason why there shouldn't be a GLIBC_ABI_GNU_TLS
symbol requirement.)
[hjl@gnu-zen4-1 tls-1]$ cat x.c
int
main ()
{
return 0;
}
[hjl@gnu-zen4-1 tls-1]$ make
readelf -V x
Version symbols section '.gnu.version' contains 4 entries:
Addr: 0x00000000080490cc Offset: 0x000010cc Link: 8 (.dynsym)
000: 0 (*local*) 2 (GLIBC_2.34) 0 (*local*) 1 (*global*)
Version needs section '.gnu.version_r' contains 1 entry:
Addr: 0x00000000080490d4 Offset: 0x000010d4 Link: 9 (.dynstr)
000000: Version: 1 File: libc.so.6 Cnt: 2
0x0010: Name: GLIBC_ABI_GNU_TLS Flags: none Version: 3
0x0020: Name: GLIBC_2.34 Flags: none Version: 2
[hjl@gnu-zen4-1 tls-1]$
--
You are receiving this mail because:
You are on the CC list for the bug.