From: Jan Beulich Date: Fri, 23 Apr 2021 07:18:48 +0000 (+0200) Subject: x86: TLS desc call relocs target zero-size fields X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c21346c5e224ace15a3ba8b7f56cd375e30e29a8;p=binutils-gdb.git x86: TLS desc call relocs target zero-size fields These are marker relocations, so together with their bit size being zero their byte size should be zero as well. This is expressed by a value of 3, not 0. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 6361656fac1..f401e29863f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2021-04-23 Jan Beulich + + * elf32-i386.c (elf_howto_table): R_386_TLS_DESC_CALL has zero + size field. + * elf64-x86-64.c (x86_64_elf_howto_table): R_X86_64_TLSDESC_CALL + has zero size field. + 2021-04-22 Clément Chigot * hash.c (struct bfd_strtab_hash): Remove xcoff field. diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c index 377e76d0f3d..dee5352a0b6 100644 --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -130,7 +130,7 @@ static reloc_howto_type elf_howto_table[]= HOWTO(R_386_TLS_GOTDESC, 0, 2, 32, false, 0, complain_overflow_bitfield, bfd_elf_generic_reloc, "R_386_TLS_GOTDESC", true, 0xffffffff, 0xffffffff, false), - HOWTO(R_386_TLS_DESC_CALL, 0, 0, 0, false, 0, complain_overflow_dont, + HOWTO(R_386_TLS_DESC_CALL, 0, 3, 0, false, 0, complain_overflow_dont, bfd_elf_generic_reloc, "R_386_TLS_DESC_CALL", false, 0, 0, false), HOWTO(R_386_TLS_DESC, 0, 2, 32, false, 0, complain_overflow_bitfield, diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index 3ac6159f3f0..1204b29e396 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -146,7 +146,7 @@ static reloc_howto_type x86_64_elf_howto_table[] = complain_overflow_bitfield, bfd_elf_generic_reloc, "R_X86_64_GOTPC32_TLSDESC", false, 0xffffffff, 0xffffffff, true), - HOWTO(R_X86_64_TLSDESC_CALL, 0, 0, 0, false, 0, + HOWTO(R_X86_64_TLSDESC_CALL, 0, 3, 0, false, 0, complain_overflow_dont, bfd_elf_generic_reloc, "R_X86_64_TLSDESC_CALL", false, 0, 0, false),