1 1.1 christos 2017-12-19 Alan Modra <amodra (a] gmail.com> 2 1.1 christos 3 1.1 christos PR 22626 4 1.1 christos * elflink.c (_bfd_elf_link_renumber_dynsyms): Don't set section 5 1.1 christos dynindx when section_sym_count is NULL. 6 1.1 christos (bfd_elf_size_dynamic_sections): Pass NULL section_sym_count to 7 1.1 christos preliminary _bfd_elf_link_renumber_dynsyms call. 8 1.1 christos 9 1.1 christos 2017-12-15 Nick Clifton <nickc (a] redhat.com> 10 1.1 christos 11 1.1 christos PR 22571 12 1.1 christos * archive.c (bfd_openr_next_archived_file): Extend the 13 1.1 christos documentation to note that it is necessary to call 14 1.1 christos bfd_check_format on the rrturned bfd before using it. 15 1.1 christos 16 1.1 christos 2017-12-14 Nick Clifton <nickc (a] redhat.com> 17 1.1 christos 18 1.1 christos * cpu-mt.c: Update address of FSF in copyright notice. 19 1.1 christos * elf32-m32c.c: Likewise. 20 1.1 christos * elf32-mt.c: Likewise. 21 1.1 christos * elf32-rl78.c: Likewise. 22 1.1 christos * elf32-rx.c: Likewise. 23 1.1 christos * elf32-rx.h: Likewise. 24 1.1 christos * elf32-spu.h: Likewise. 25 1.1 christos * hosts/x86-64linux.h: Likewise. 26 1.1 christos 27 1.1 christos 2017-12-13 Renlin Li <renlin.li (a] arm.com> 28 1.1 christos 29 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Disallow 30 1.1 christos BFD_RELOC_AARCH64_16 in shared object const section. Disallow 31 1.1 christos BFD_RELOC_AARCH64_32 in shared object const section under LP64. 32 1.1 christos 33 1.1 christos 2017-12-11 Sangamesh Mallayya <sangamesh.swamy (a] in.ibm.com> 34 1.1 christos 35 1.1 christos * bfd.c (bfd_get_sign_extend_vma): Correct typo. 36 1.1 christos 37 1.1 christos 2017-12-09 Alan Modra <amodra (a] gmail.com> 38 1.1 christos 39 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): When emitting 40 1.1 christos dynamic R_SPARC_RELATIVE for GOT entries, ensure the section 41 1.1 christos contents are zeroed. 42 1.1 christos 43 1.1 christos 2017-12-08 Nick Clifton <nickc (a] redhat.com> 44 1.1 christos 45 1.1 christos * elfcode.h (elf_write_relocs): Check for an empty howto field. 46 1.1 christos 47 1.1 christos 2017-12-08 Sangamesh Mallayya <sangamesh.swamy (a] in.ibm.com> 48 1.1 christos 49 1.1 christos * bfd.c (bfd_get_sign_extend_vma): Handle aix5coff64-rs6000. 50 1.1 christos 51 1.1 christos 2017-12-06 Alan Modra <amodra (a] gmail.com> 52 1.1 christos 53 1.1 christos * doc/header.sed: Trim trailing space when splitting lines. 54 1.1 christos * aix386-core.c, * aout-adobe.c, * aout-arm.c, * aout-cris.c, 55 1.1 christos * aout-ns32k.c, * aout-target.h, * aout-tic30.c, * aoutf1.h, * aoutx.h, 56 1.1 christos * arc-got.h, * arc-plt.def, * arc-plt.h, * archive.c, * archive64.c, 57 1.1 christos * archures.c, * armnetbsd.c, * bfd-in.h, * bfd.c, * bfdio.c, * binary.c, 58 1.1 christos * bout.c, * cache.c, * cisco-core.c, * coff-alpha.c, * coff-apollo.c, 59 1.1 christos * coff-arm.c, * coff-h8300.c, * coff-i386.c, * coff-i860.c, 60 1.1 christos * coff-i960.c, * coff-m68k.c, * coff-m88k.c, * coff-mcore.c, 61 1.1 christos * coff-mips.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c, 62 1.1 christos * coff-stgo32.c, * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, 63 1.1 christos * coff-we32k.c, * coff-x86_64.c, * coff-z80.c, * coff-z8k.c, 64 1.1 christos * coff64-rs6000.c, * coffcode.h, * coffgen.c, * cofflink.c, 65 1.1 christos * coffswap.h, * compress.c, * corefile.c, * cpu-alpha.c, * cpu-arm.c, 66 1.1 christos * cpu-avr.c, * cpu-bfin.c, * cpu-cr16.c, * cpu-cr16c.c, * cpu-crx.c, 67 1.1 christos * cpu-d10v.c, * cpu-frv.c, * cpu-ft32.c, * cpu-i370.c, * cpu-i960.c, 68 1.1 christos * cpu-ia64-opc.c, * cpu-ip2k.c, * cpu-lm32.c, * cpu-m32r.c, 69 1.1 christos * cpu-mcore.c, * cpu-microblaze.c, * cpu-mips.c, * cpu-moxie.c, 70 1.1 christos * cpu-mt.c, * cpu-nios2.c, * cpu-ns32k.c, * cpu-or1k.c, * cpu-powerpc.c, 71 1.1 christos * cpu-pru.c, * cpu-sh.c, * cpu-spu.c, * cpu-v850.c, * cpu-v850_rh850.c, 72 1.1 christos * cpu-xgate.c, * cpu-z80.c, * dwarf1.c, * dwarf2.c, * ecoff.c, 73 1.1 christos * ecofflink.c, * ecoffswap.h, * elf-bfd.h, * elf-eh-frame.c, 74 1.1 christos * elf-hppa.h, * elf-m10200.c, * elf-m10300.c, * elf-s390-common.c, 75 1.1 christos * elf-strtab.c, * elf-vxworks.c, * elf.c, * elf32-am33lin.c, 76 1.1 christos * elf32-arc.c, * elf32-arm.c, * elf32-avr.c, * elf32-avr.h, 77 1.1 christos * elf32-bfin.c, * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, 78 1.1 christos * elf32-crx.c, * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, 79 1.1 christos * elf32-epiphany.c, * elf32-fr30.c, * elf32-frv.c, * elf32-ft32.c, 80 1.1 christos * elf32-h8300.c, * elf32-hppa.c, * elf32-i386.c, * elf32-i860.c, 81 1.1 christos * elf32-i960.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32c.c, 82 1.1 christos * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c, * elf32-m68hc1x.c, 83 1.1 christos * elf32-m68hc1x.h, * elf32-m68k.c, * elf32-m88k.c, * elf32-mcore.c, 84 1.1 christos * elf32-mep.c, * elf32-metag.c, * elf32-microblaze.c, * elf32-mips.c, 85 1.1 christos * elf32-moxie.c, * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, 86 1.1 christos * elf32-nds32.h, * elf32-nios2.c, * elf32-or1k.c, * elf32-pj.c, 87 1.1 christos * elf32-ppc.c, * elf32-ppc.h, * elf32-pru.c, * elf32-rl78.c, 88 1.1 christos * elf32-rx.c, * elf32-s390.c, * elf32-score.c, * elf32-score.h, 89 1.1 christos * elf32-score7.c, * elf32-sh-symbian.c, * elf32-sh.c, * elf32-sh64.c, 90 1.1 christos * elf32-sparc.c, * elf32-spu.c, * elf32-tic6x.c, * elf32-tilegx.c, 91 1.1 christos * elf32-tilegx.h, * elf32-tilepro.c, * elf32-tilepro.h, * elf32-v850.c, 92 1.1 christos * elf32-vax.c, * elf32-wasm32.c, * elf32-xc16x.c, * elf32-xgate.c, 93 1.1 christos * elf32-xgate.h, * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c, 94 1.1 christos * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c, 95 1.1 christos * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c, * elf64-sparc.c, 96 1.1 christos * elf64-tilegx.c, * elf64-tilegx.h, * elf64-x86-64.c, * elfcore.h, 97 1.1 christos * elflink.c, * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c, 98 1.1 christos * elfnn-riscv.c, * elfxx-aarch64.c, * elfxx-aarch64.h, * elfxx-ia64.c, 99 1.1 christos * elfxx-ia64.h, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-sparc.c, 100 1.1 christos * elfxx-tilegx.c, * elfxx-x86.c, * elfxx-x86.h, * freebsd.h, * hash.c, 101 1.1 christos * host-aout.c, * hp300hpux.c, * hppabsd-core.c, * hpux-core.c, 102 1.1 christos * i386aout.c, * i386linux.c, * i386lynx.c, * i386mach3.c, * i386msdos.c, 103 1.1 christos * i386netbsd.c, * ieee.c, * ihex.c, * irix-core.c, * libaout.h, 104 1.1 christos * libbfd-in.h, * libbfd.c, * libcoff-in.h, * libnlm.h, * libpei.h, 105 1.1 christos * libxcoff.h, * linker.c, * lynx-core.c, * m68k4knetbsd.c, 106 1.1 christos * m68klinux.c, * m68knetbsd.c, * m88kmach3.c, * mach-o-aarch64.c, 107 1.1 christos * mach-o-arm.c, * mach-o-i386.c, * mach-o-target.c, * mach-o-x86-64.c, 108 1.1 christos * mach-o.c, * mach-o.h, * merge.c, * mipsbsd.c, * mmo.c, * netbsd.h, 109 1.1 christos * netbsd-core.c, * newsos3.c, * nlm-target.h, * nlm32-ppc.c, 110 1.1 christos * nlm32-sparc.c, * nlmcode.h, * ns32k.h, * ns32knetbsd.c, * oasys.c, 111 1.1 christos * opncls.c, * pc532-mach.c, * pdp11.c, * pe-arm.c, * pe-i386.c, 112 1.1 christos * pe-mcore.c, * pe-mips.c, * pe-x86_64.c, * peXXigen.c, * pef.c, 113 1.1 christos * pef.h, * pei-arm.c, * pei-i386.c, * pei-mcore.c, * pei-x86_64.c, 114 1.1 christos * peicode.h, * plugin.c, * ppcboot.c, * ptrace-core.c, * reloc.c, 115 1.1 christos * riscix.c, * rs6000-core.c, * section.c, * som.c, * som.h, 116 1.1 christos * sparclinux.c, * sparcnetbsd.c, * srec.c, * stabs.c, * sunos.c, 117 1.1 christos * syms.c, * targets.c, * tekhex.c, * trad-core.c, * vax1knetbsd.c, 118 1.1 christos * vaxnetbsd.c, * verilog.c, * versados.c, * vms-alpha.c, * vms-lib.c, 119 1.1 christos * vms-misc.c, * wasm-module.c, * wasm-module.h, * xcofflink.c, 120 1.1 christos * xsym.c, * xsym.h: Whitespace fixes. 121 1.1 christos * bfd-in2.h, * libbfd.h, * libcoff.h: Regenerate. 122 1.1 christos 123 1.1 christos 2017-12-06 Alan Modra <amodra (a] gmail.com> 124 1.1 christos 125 1.1 christos * elf32-lm32.c (lm32_elf_check_relocs): Skip non-ALLOC sections. 126 1.1 christos * elf32-m32r.c (m32r_elf_check_relocs): Likewise. 127 1.1 christos * elf32-nds32.c (nds32_elf_check_relocs): Likewise. 128 1.1 christos * elf32-or1k.c (or1k_elf_check_relocs): Likewise. 129 1.1 christos * elf32-sh.c (sh_elf_check_relocs): Likewise. 130 1.1 christos 131 1.1 christos 2017-12-06 Alan Modra <amodra (a] gmail.com> 132 1.1 christos 133 1.1 christos * elf32-hppa.c (struct elf32_hppa_dyn_reloc_entry): Delete. Use 134 1.1 christos struct elf_dyn_relocs throughout file instead. 135 1.1 christos (elf32_hppa_adjust_dynamic_symbol): Comment tidy. 136 1.1 christos * elf32-lm32.c (struct elf_lm32_dyn_relocs): Delete. Use 137 1.1 christos struct elf_dyn_relocs throughout file instead. 138 1.1 christos (lm32_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. 139 1.1 christos * elf32-m32r.c (struct elf_m32r_dyn_relocs): Delete. Use 140 1.1 christos struct elf_dyn_relocs throughout file instead. 141 1.1 christos (m32r_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. 142 1.1 christos Disable -z no-copyreloc too. 143 1.1 christos * elf32-metag.c (struct elf_metag_dyn_reloc_entry): Delete. Use 144 1.1 christos struct elf_dyn_relocs throughout file instead. 145 1.1 christos (elf_metag_adjust_dynamic_symbol): Use readonly_dynrelocs. 146 1.1 christos * elf32-microblaze.c (struct elf32_mb_dyn_relocs): Delete. Use 147 1.1 christos struct elf_dyn_relocs throughout file instead. 148 1.1 christos (readonly_dynrelocs): New function. 149 1.1 christos (microblaze_elf_adjust_dynamic_symbol): Use it. 150 1.1 christos * elf32-nds32.c (struct elf_nds32_dyn_relocs): Delete. Use 151 1.1 christos struct elf_dyn_relocs throughout file instead. 152 1.1 christos (nds32_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. 153 1.1 christos Disable -z no-copyreloc too. 154 1.1 christos * elf32-nios2.c (struct elf32_nios2_dyn_relocs): Delete. Use 155 1.1 christos struct elf_dyn_relocs throughout file instead. 156 1.1 christos * elf32-or1k.c (struct elf_or1k_dyn_relocs): Delete. Use 157 1.1 christos struct elf_dyn_relocs throughout file instead. 158 1.1 christos (or1k_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. 159 1.1 christos * elf32-sh.c (struct elf_sh_dyn_relocs): Delete. Use 160 1.1 christos struct elf_dyn_relocs throughout file instead. 161 1.1 christos (sh_elf_adjust_dynamic_symbol): Use readonly_dynrelocs, but disable. 162 1.1 christos Disable -z no-copyreloc too. 163 1.1 christos * elf32-tilepro.c (struct tilepro_elf_dyn_relocs): Delete. Use 164 1.1 christos struct elf_dyn_relocs throughout file instead. 165 1.1 christos (tilepro_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. 166 1.1 christos * elfnn-riscv.c (struct riscv_elf_dyn_relocs): Delete. Use 167 1.1 christos struct elf_dyn_relocs throughout file instead. 168 1.1 christos (riscv_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. 169 1.1 christos * elfxx-sparc.c (struct _bfd_sparc_elf_dyn_relocs): Delete. Use 170 1.1 christos struct elf_dyn_relocs throughout file instead. 171 1.1 christos (_bfd_sparc_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. 172 1.1 christos * elfxx-tilegx.c (struct tilegx_elf_dyn_relocs): Delete. Use 173 1.1 christos struct elf_dyn_relocs throughout file instead. 174 1.1 christos (tilegx_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. 175 1.1 christos * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Use readonly_dynrelocs. 176 1.1 christos * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Use readonly_dynrelocs. 177 1.1 christos 178 1.1 christos 2017-12-06 Alan Modra <amodra (a] gmail.com> 179 1.1 christos 180 1.1 christos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Comment tidy. 181 1.1 christos * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. 182 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_adjust_dynamic_symbol): Likewise. 183 1.1 christos 184 1.1 christos 2017-12-04 Alan Modra <amodra (a] gmail.com> 185 1.1 christos 186 1.1 christos * elfxx-x86.c (readonly_dynrelocs): New function. 187 1.1 christos (maybe_set_textrel): New function. Always prints via minfo and 188 1.1 christos correct "readonly" to "read-only" in warning message., replacing.. 189 1.1 christos (_bfd_x86_elf_readonly_dynrelocs): ..this. 190 1.1 christos (_bfd_x86_elf_size_dynamic_sections): Correct "readonly" to 191 1.1 christos "read-only" in warning message. Formatting. 192 1.1 christos (_bfd_x86_elf_adjust_dynamic_symbol): Use readonly_dynrelocs. 193 1.1 christos * linker.c (bfd_link_hash_traverse): Comment typo fix. 194 1.1 christos 195 1.1 christos 2017-12-01 H.J. Lu <hongjiu.lu (a] intel.com> 196 1.1 christos 197 1.1 christos * elfxx-x86.c (_bfd_x86_elf_readonly_dynrelocs): Print symbol 198 1.1 christos for map file output. 199 1.1 christos 200 1.1 christos 2017-12-01 Alan Modra <amodra (a] gmail.com> 201 1.1 christos 202 1.1 christos * elf32-hppa.c (maybe_set_textrel): Print symbol for map file output. 203 1.1 christos * elf32-ppc.c (maybe_set_textrel): Likewise. 204 1.1 christos * elf64-ppc.c (maybe_set_textrel): Likewise. 205 1.1 christos * elf32-arm.c (readonly_dynrelocs): New function. 206 1.1 christos (maybe_set_textrel): New function, replacing.. 207 1.1 christos (elf32_arm_readonly_dynrelocs): ..this. 208 1.1 christos * elf32-lm32.c (readonly_dynrelocs): New function. 209 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 210 1.1 christos (readonly_dynrelocs): ..this. 211 1.1 christos * elf32-m32r.c (readonly_dynrelocs): New function. 212 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 213 1.1 christos (readonly_dynrelocs): ..this. 214 1.1 christos * elf32-metag.c (readonly_dynrelocs): New function. 215 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 216 1.1 christos (readonly_dynrelocs): ..this. 217 1.1 christos * elf32-nds32.c: Delete unnecessary forward declarations. 218 1.1 christos (readonly_dynrelocs): New function. 219 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 220 1.1 christos (readonly_dynrelocs): ..this. 221 1.1 christos * elf32-or1k.c (readonly_dynrelocs): New function. 222 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 223 1.1 christos (readonly_dynrelocs): ..this. 224 1.1 christos * elf32-s390.c (readonly_dynrelocs): New function. 225 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 226 1.1 christos (readonly_dynrelocs): ..this. 227 1.1 christos * elf32-sh.c (readonly_dynrelocs): New function. 228 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 229 1.1 christos (readonly_dynrelocs): ..this. 230 1.1 christos * elf32-tic6x.c (readonly_dynrelocs): New function. 231 1.1 christos (maybe_set_textrel): New function, replacing.. 232 1.1 christos (elf32_tic6x_readonly_dynrelocs): ..this. 233 1.1 christos * elf32-tilepro.c (readonly_dynrelocs): New function. 234 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 235 1.1 christos (readonly_dynrelocs): ..this. 236 1.1 christos * elf64-s390.c (readonly_dynrelocs): New function. 237 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 238 1.1 christos (readonly_dynrelocs): ..this. 239 1.1 christos * elfnn-aarch64.c (readonly_dynrelocs): New function. 240 1.1 christos (maybe_set_textrel): New function, replacing.. 241 1.1 christos (aarch64_readonly_readonly_dynrelocs): ..this. 242 1.1 christos * elfnn-riscv.c (readonly_dynrelocs): New function. 243 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 244 1.1 christos (readonly_dynrelocs): ..this. 245 1.1 christos * elfxx-sparc.c (readonly_dynrelocs): New function. 246 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 247 1.1 christos (readonly_dynrelocs): ..this. 248 1.1 christos * elfxx-tilegx.c (readonly_dynrelocs): New function. 249 1.1 christos (maybe_set_textrel): New function, replacing old version of.. 250 1.1 christos (readonly_dynrelocs): ..this. 251 1.1 christos 252 1.1 christos 2017-12-01 Alan Modra <amodra (a] gmail.com> 253 1.1 christos 254 1.1 christos PR 22533 255 1.1 christos * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Don't do anything 256 1.1 christos special with non_got_ref for weak aliases. 257 1.1 christos (elf32_hppa_check_relocs): Tweak setting of non_got_ref. 258 1.1 christos (elf32_hppa_adjust_dynamic_symbol): When initialising weak aliases, 259 1.1 christos don't uselessly copy non_got_ref. Clear dyn_relocs instead if 260 1.1 christos strong symbol is allocated in dynbss. Tidy comments. 261 1.1 christos (elf32_hppa_relocate_section): Comment fix. 262 1.1 christos * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't do anything 263 1.1 christos special with non_got_ref for weak aliases. 264 1.1 christos (ppc_elf_adjust_dynamic_symbol): When initialising weak aliases, 265 1.1 christos don't uselessly copy non_got_ref. Clear dyn_relocs instead if 266 1.1 christos strong symbol is allocated in dynbss. Tidy comments. 267 1.1 christos * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't do anything 268 1.1 christos special with non_got_ref for weak aliases. 269 1.1 christos (ppc64_elf_adjust_dynamic_symbol): When initialising weak aliases, 270 1.1 christos don't uselessly copy non_got_ref. Clear dyn_relocs instead if 271 1.1 christos strong symbol is allocated in dynbss. Tidy comments. 272 1.1 christos 273 1.1 christos 2017-11-29 Nick Clifton <nickc (a] redhat.com> 274 1.1 christos 275 1.1 christos PR 22509 276 1.1 christos * coffcode.h (coff_slurp_reloc_table): Check for a NULL symbol 277 1.1 christos pointer when processing relocs. 278 1.1 christos 279 1.1 christos 2017-11-29 Stefan Stroe <stroestefan (a] gmail.com> 280 1.1 christos 281 1.1 christos * po/Make-in (datadir): Define as @datadir@. 282 1.1 christos (localedir): Define as @localedir@. 283 1.1 christos (gnulocaledir, gettextsrcdir): Use @datarootdir@. 284 1.1 christos 285 1.1 christos 2017-11-28 Nick Clifton <nickc (a] redhat.com> 286 1.1 christos 287 1.1 christos PR 22507 288 1.1 christos * coffgen.c (_bfd_coff_read_string_table): Check for an excessive 289 1.1 christos size of the external string table. 290 1.1 christos 291 1.1 christos 2017-11-28 Nick Clifton <nickc (a] redhat.com> 292 1.1 christos 293 1.1 christos PR 22506 294 1.1 christos * reloc.c (reloc_offset_in_range): Rename to 295 1.1 christos bfd_reloc_offset_in_range and export. 296 1.1 christos (bfd_perform_relocation): Rename function invocation. 297 1.1 christos (bfd_install_relocation): Likewise. 298 1.1 christos (bfd_final_link_relocate): Likewise. 299 1.1 christos * bfd-in2.h: Regenerate. 300 1.1 christos * coff-arm.c (coff_arm_reloc): Use bfd_reloc_offset_in_range. 301 1.1 christos * coff-i386.c (coff_i386_reloc): Likewise. 302 1.1 christos * coff-i860.c (coff_i860_reloc): Likewise. 303 1.1 christos * coff-m68k.c (mk68kcoff_common_addend_special_fn): Likewise. 304 1.1 christos * coff-m88k.c (m88k_special_reloc): Likewise. 305 1.1 christos * coff-mips.c (mips_reflo_reloc): Likewise. 306 1.1 christos * coff-x86_64.c (coff_amd64_reloc): Likewise. 307 1.1 christos 308 1.1 christos 2017-11-28 H.J. Lu <hongjiu.lu (a] intel.com> 309 1.1 christos 310 1.1 christos * elf-m10300.c (mn10300_elf_check_relocs): Don't set 311 1.1 christos non_ir_ref_regular. 312 1.1 christos * elf32-arm.c (elf32_arm_check_relocs): Likewise. 313 1.1 christos * elf32-bfin.c (bfin_check_relocs): Likewise. 314 1.1 christos * elf32-cr16.c (cr16_elf_check_relocs): Likewise. 315 1.1 christos * elf32-cris.c (cris_elf_check_relocs): Likewise. 316 1.1 christos * elf32-d10v.c (elf32_d10v_check_relocs): Likewise. 317 1.1 christos * elf32-dlx.c (elf32_dlx_check_relocs): Likewise. 318 1.1 christos * elf32-fr30.c (fr30_elf_check_relocs): Likewise. 319 1.1 christos * elf32-frv.c (elf32_frv_check_relocs): Likewise. 320 1.1 christos * elf32-hppa.c (elf32_hppa_check_relocs): Likewise. 321 1.1 christos * elf32-i370.c (i370_elf_check_relocs): Likewise. 322 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Likewise. 323 1.1 christos * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise. 324 1.1 christos * elf32-lm32.c (lm32_elf_check_relocs): Likewise. 325 1.1 christos * elf32-m32c.c (m32c_elf_check_relocs): Likewise. 326 1.1 christos * elf32-m32r.c (m32r_elf_check_relocs): Likewise. 327 1.1 christos * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise. 328 1.1 christos * elf32-m68k.c (elf_m68k_check_relocs): Likewise. 329 1.1 christos * elf32-mcore.c (mcore_elf_check_relocs): Likewise. 330 1.1 christos * elf32-metag.c (elf_metag_check_relocs): Likewise. 331 1.1 christos * elf32-microblaze.c (microblaze_elf_check_relocs): Likewise. 332 1.1 christos * elf32-moxie.c (moxie_elf_check_relocs): Likewise. 333 1.1 christos * elf32-msp430.c (elf32_msp430_check_relocs): Likewise. 334 1.1 christos * elf32-mt.c (mt_elf_check_relocs): Likewise. 335 1.1 christos * elf32-nios2.c (nios2_elf32_check_relocs): Likewise. 336 1.1 christos * elf32-or1k.c (or1k_elf_check_relocs): Likewise. 337 1.1 christos * elf32-ppc.c (ppc_elf_check_relocs): Likewise. 338 1.1 christos * elf32-rl78.c (rl78_elf_check_relocs): Likewise. 339 1.1 christos * elf32-s390.c (elf_s390_check_relocs): Likewise. 340 1.1 christos * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise. 341 1.1 christos * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise. 342 1.1 christos * elf32-sh.c (sh_elf_check_relocs): Likewise. 343 1.1 christos * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise. 344 1.1 christos * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise. 345 1.1 christos * elf32-v850.c (v850_elf_check_relocs): Likewise. 346 1.1 christos * elf32-vax.c (elf_vax_check_relocs): Likewise. 347 1.1 christos * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise. 348 1.1 christos * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. 349 1.1 christos * elf64-aarch64.c (elf64_aarch64_check_relocs): Likewise. 350 1.1 christos * elf64-alpha.c (elf64_alpha_check_relocs): Likewise. 351 1.1 christos * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. 352 1.1 christos * elf64-ia64-vms.c (elf64_ia64_check_relocs): Likewise. 353 1.1 christos * elf64-mmix.c (mmix_elf_check_relocs): Likewise. 354 1.1 christos * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. 355 1.1 christos * elf64-s390.c (elf_s390_check_relocs): Likewise. 356 1.1 christos * elf64-sh64.c (sh_elf64_check_relocs): Likewise. 357 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 358 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Likewise. 359 1.1 christos * elfnn-ia64.c (elfNN_ia64_check_relocs): Likewise. 360 1.1 christos * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. 361 1.1 christos * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. 362 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. 363 1.1 christos * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise. 364 1.1 christos 365 1.1 christos 2017-11-28 Alan Modra <amodra (a] gmail.com> 366 1.1 christos 367 1.1 christos PR 22471 368 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Allow weak symbols to override 369 1.1 christos early passes over linker script symbols. 370 1.1 christos * linker.c (_bfd_generic_link_add_one_symbol): Allow symbols to 371 1.1 christos override early passes over linker script symbols. Clear ldscript_def 372 1.1 christos on symbol definitions. 373 1.1 christos 374 1.1 christos 2017-11-28 Alan Modra <amodra (a] gmail.com> 375 1.1 christos 376 1.1 christos * elf64-mmix.c (bfd_elf64_bfd_copy_link_hash_symbol_type): Define. 377 1.1 christos 378 1.1 christos 2017-11-28 H.J. Lu <hongjiu.lu (a] intel.com> 379 1.1 christos 380 1.1 christos PR ld/22502 381 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Also skip definition from 382 1.1 christos an IR object. 383 1.1 christos (elf_link_add_object_symbols): If linker plugin is enabled, set 384 1.1 christos non_ir_ref_regular on symbols referenced in regular objects so 385 1.1 christos that linker plugin will get the correct symbol resolution. 386 1.1 christos 387 1.1 christos 2017-11-27 Szabolcs Nagy <szabolcs.nagy (a] arm.com> 388 1.1 christos 389 1.1 christos PR ld/22263 390 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Use 391 1.1 christos bfd_link_executable instead of bfd_link_pic for TLS. 392 1.1 christos (elfNN_aarch64_allocate_dynrelocs): Likewise. 393 1.1 christos (aarch64_can_relax_tls): Likewise. 394 1.1 christos 395 1.1 christos 2017-11-27 Szabolcs Nagy <szabolcs.nagy (a] arm.com> 396 1.1 christos 397 1.1 christos PR ld/22269 398 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Use 399 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC to avoid dynamic GOT relocs. 400 1.1 christos (elfNN_aarch64_allocate_dynrelocs): Likewise. 401 1.1 christos 402 1.1 christos 2017-11-24 H.J. Lu <hongjiu.lu (a] intel.com> 403 1.1 christos 404 1.1 christos PR binutils/22444 405 1.1 christos * elf.c (elf_read_notes): Add an argument for note aligment. 406 1.1 christos (elf_parse_notes): Likewise. 407 1.1 christos (_bfd_elf_make_section_from_shdr): Pass section aligment to 408 1.1 christos elf_parse_notes. 409 1.1 christos (bfd_section_from_phdr): Pass segment aligment to elf_read_notes. 410 1.1 christos (elf_parse_notes): Add an argument for note aligment. Use 411 1.1 christos ELF_NOTE_DESC_OFFSET to get the offset of the note descriptor. 412 1.1 christos Use ELF_NOTE_NEXT_OFFSET to get the offset of the next note 413 1.1 christos entry. 414 1.1 christos (elf_read_notes): Add an argument for note aligment and pass it 415 1.1 christos to elf_parse_notes. 416 1.1 christos 417 1.1 christos 2017-11-23 Alan Modra <amodra (a] gmail.com> 418 1.1 christos 419 1.1 christos * elf32-hppa.c (pc_dynrelocs): Define. 420 1.1 christos (elf32_hppa_copy_indirect_symbol): Don't copy dyn_relocs to weakdefs. 421 1.1 christos (alias_readonly_dynrelocs): New function. 422 1.1 christos (elf32_hppa_adjust_dynamic_symbol): Don't clear non_got_ref to 423 1.1 christos indicate dyn_relocs should be discarded, discard them here. 424 1.1 christos Use alias_readonly_dynrelocs. 425 1.1 christos (allocate_dynrelocs): Don't test or clear non_got_ref. 426 1.1 christos (elf32_hppa_relocate_section): Simplify test for dynamic relocs. 427 1.1 christos * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Don't copy dyn_relocs 428 1.1 christos to weakdefs. 429 1.1 christos (alias_readonly_dynrelocs, pc_dynrelocs): New functions. 430 1.1 christos (ppc_elf_adjust_dynamic_symbol): Don't clear non_got_ref to 431 1.1 christos indicate dyn_relocs should be discarded, discard them here. 432 1.1 christos Use alias_readonly_dynrelocs. 433 1.1 christos (allocate_dynrelocs): Don't test or clear non_got_ref. 434 1.1 christos (ppc_elf_relocate_section): Simplify test for dynamic relocs. 435 1.1 christos 436 1.1 christos 2017-11-23 Alan Modra <amodra (a] gmail.com> 437 1.1 christos 438 1.1 christos * elf64-ppc.c (struct ppc_link_hash_entry): Delete weakref field. 439 1.1 christos (ppc64_elf_copy_indirect_symbol): Don't set weakref. 440 1.1 christos (alias_readonly_dynrelocs): Use u.alias rather than weakref. 441 1.1 christos (ppc64_elf_adjust_dynamic_symbol): Don't use 442 1.1 christos alias_readonly_dynrelocs for function symbols. 443 1.1 christos 444 1.1 christos 2017-11-23 Alan Modra <amodra (a] gmail.com> 445 1.1 christos 446 1.1 christos * elf-bfd.h (struct elf_link_hash_entry): Add is_weakalias. 447 1.1 christos Rename u.weakdef to u.alias and update comment. 448 1.1 christos (weakdef): New static inline function. 449 1.1 christos * elflink.c (bfd_elf_record_link_assignment) Test is_weakalias 450 1.1 christos rather than u.weakdef != NULL, and use weakdef function. 451 1.1 christos (_bfd_elf_adjust_dynamic_symbol): Likewise. 452 1.1 christos (_bfd_elf_fix_symbol_flags): Likewise. Clear is_weakalias on 453 1.1 christos all aliases if def has been overridden in a regular object, not 454 1.1 christos u.weakdef. 455 1.1 christos (elf_link_add_object_symbols): Delete new_weakdef flag. Test 456 1.1 christos is_weakalias and use weakdef. Set is_weakalias and circular 457 1.1 christos u.alias. Update comments. 458 1.1 christos (_bfd_elf_gc_mark_rsec): Test is_weakalias rather than 459 1.1 christos u.weakdef != NULL and use weakdef function. 460 1.1 christos * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Test 461 1.1 christos is_weakalias rather than u.weakdef != NULL and use weakdef 462 1.1 christos function. Assert that def is strong defined. 463 1.1 christos * elf32-arc.c (elf_arc_adjust_dynamic_symbol): Likewise. 464 1.1 christos * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. 465 1.1 christos * elf32-bfin.c (elf32_bfinfdpic_adjust_dynamic_symbol): Likewise. 466 1.1 christos (bfin_adjust_dynamic_symbol): Likewise. 467 1.1 christos * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise. 468 1.1 christos * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. 469 1.1 christos * elf32-frv.c (elf32_frvfdpic_adjust_dynamic_symbol): Likewise. 470 1.1 christos * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. 471 1.1 christos * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. 472 1.1 christos * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise. 473 1.1 christos * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. 474 1.1 christos * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. 475 1.1 christos * elf32-metag.c (elf_metag_adjust_dynamic_symbol): Likewise. 476 1.1 christos * elf32-microblaze.c (microblaze_elf_adjust_dynamic_symbol): Likewise. 477 1.1 christos * elf32-nds32.c (nds32_elf_adjust_dynamic_symbol): Likewise. 478 1.1 christos * elf32-nios2.c (nios2_elf32_adjust_dynamic_symbol): Likewise. 479 1.1 christos * elf32-or1k.c (or1k_elf_adjust_dynamic_symbol): Likewise. 480 1.1 christos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. 481 1.1 christos * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. 482 1.1 christos * elf32-score.c (s3_bfd_score_elf_adjust_dynamic_symbol): Likewise. 483 1.1 christos * elf32-score7.c (s7_bfd_score_elf_adjust_dynamic_symbol): Likewise. 484 1.1 christos * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. 485 1.1 christos * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise. 486 1.1 christos * elf32-tilepro.c (tilepro_elf_gc_mark_hook): Likewise. 487 1.1 christos (tilepro_elf_adjust_dynamic_symbol): Likewise. 488 1.1 christos * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. 489 1.1 christos * elf32-xtensa.c (elf_xtensa_adjust_dynamic_symbol): Likewise. 490 1.1 christos * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Likewise. 491 1.1 christos * elf64-hppa.c (elf64_hppa_adjust_dynamic_symbol): Likewise. 492 1.1 christos * elf64-ia64-vms.c (elf64_ia64_adjust_dynamic_symbol): Likewise. 493 1.1 christos * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise. 494 1.1 christos (ppc64_elf_adjust_dynamic_symbol): Likewise. 495 1.1 christos * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. 496 1.1 christos * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. 497 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_adjust_dynamic_symbol): Likewise. 498 1.1 christos * elfnn-ia64.c (elfNN_ia64_adjust_dynamic_symbol): Likewise. 499 1.1 christos * elfnn-riscv.c (riscv_elf_adjust_dynamic_symbol): Likewise. 500 1.1 christos * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. 501 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_gc_mark_hook): Likewise. 502 1.1 christos (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. 503 1.1 christos * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): Likewise. 504 1.1 christos (tilegx_elf_adjust_dynamic_symbol): Likewise. 505 1.1 christos * elfxx-x86.c (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. 506 1.1 christos 507 1.1 christos 2017-11-21 Alan Modra <amodra (a] gmail.com> 508 1.1 christos 509 1.1 christos * elf-bfd.h (elf_symbol_from): Check for NULL symbol bfd. 510 1.1 christos * elfcode.h (elf_slurp_reloc_table_from_section): Add FIXME comment. 511 1.1 christos 512 1.1 christos 2017-11-20 Nick Clifton <nickc (a] redhat.com> 513 1.1 christos 514 1.1 christos PR 22450 515 1.1 christos * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Skip 516 1.1 christos objects without a GNU_PROPERTY note section when looking for a bfd 517 1.1 christos onto which notes can be accumulated. 518 1.1 christos 519 1.1 christos 2017-11-20 Alan Modra <amodra (a] gmail.com> 520 1.1 christos 521 1.1 christos PR 22451 522 1.1 christos PR 22460 523 1.1 christos * elf.c (_bfd_elf_init_reloc_shdr): Delete "sec_hdr" parameter 524 1.1 christos and leave rel_hdr->sh_flags zero. Update calls. 525 1.1 christos (bfd_elf_set_group_contents): Check input rel/rela SHF_GROUP 526 1.1 christos flag when !gas before adding rel/rela section to group. Set 527 1.1 christos output rel/rela SHF_GROUP flags. 528 1.1 christos 529 1.1 christos 2017-11-18 Jim Wilson <jimw (a] sifive.com> 530 1.1 christos 531 1.1 christos * elfnn-riscv.c (_bfd_riscv_relax_align): Add space between alignment 532 1.1 christos and to in error message. 533 1.1 christos 534 1.1 christos 2017-11-17 H.J. Lu <hongjiu.lu (a] intel.com> 535 1.1 christos 536 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Pass 537 1.1 christos "%F%P:", instead of "%F:", to linker callback in case of error. 538 1.1 christos 539 1.1 christos 2017-11-16 Nick Clifton <nickc (a] redhat.com> 540 1.1 christos 541 1.1 christos PR 22421 542 1.1 christos * elf.c (elfcore_grok_netbsd_procinfo): Check that the note is big enough. 543 1.1 christos (elfcore_grok_openbsd_procinfo): Likewise. 544 1.1 christos (elfcore_grok_nto_status): Likewise. 545 1.1 christos 546 1.1 christos 2017-11-16 Nick Clifton <nickc (a] redhat.com> 547 1.1 christos 548 1.1 christos * merge.c (sec_merge_emit): Always create padding buffer. Add 549 1.1 christos asserts to make sure that the buffer is long enough. 550 1.1 christos 551 1.1 christos 2017-11-15 Alan Modra <amodra (a] gmail.com> 552 1.1 christos 553 1.1 christos * bfd.c (union _bfd_doprnt_args): Add "Bad". 554 1.1 christos (_bfd_doprnt): Handle more flags. 555 1.1 christos (_bfd_doprnt_scan): Likewise. Tidy setting of args array. 556 1.1 christos (error_handler_internal): Init args type to Bad. 557 1.1 christos 558 1.1 christos 2017-11-14 Alan Modra <amodra (a] gmail.com> 559 1.1 christos 560 1.1 christos PR 22431 561 1.1 christos * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Warn on discarding 562 1.1 christos non-empty dynamic section. 563 1.1 christos (ppc_build_one_stub): Take elf_gp from output bfd, not output 564 1.1 christos section owner. 565 1.1 christos (ppc_size_one_stub, ppc64_elf_next_toc_section): Likewise. 566 1.1 christos 567 1.1 christos 2017-11-14 Alan Modra <amodra (a] gmail.com> 568 1.1 christos 569 1.1 christos * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for user 570 1.1 christos .eh_frame info. 571 1.1 christos 572 1.1 christos 2017-11-13 Jan Beulich <jbeulich (a] suse.com> 573 1.1 christos 574 1.1 christos * coff-tic80.c (COFF_ENCODE_ALIGNMENT, COFF_DECODE_ALIGNMENT): 575 1.1 christos Define. 576 1.1 christos * coffcode.h (coff_set_alignment_hook): Drop tic80 special case. 577 1.1 christos (coff_write_object_contents): Likewise. Issue diagnostic for too 578 1.1 christos large alignment. 579 1.1 christos 580 1.1 christos 2017-11-12 H.J. Lu <hongjiu.lu (a] intel.com> 581 1.1 christos 582 1.1 christos PR ld/22423 583 1.1 christos * elf.c (_bfd_elf_map_sections_to_segments): Remove PF_X from 584 1.1 christos PT_PHDR segment. 585 1.1 christos 586 1.1 christos 2017-11-12 Alan Modra <amodra (a] gmail.com> 587 1.1 christos 588 1.1 christos * elflink.c (elf_link_add_object_symbols): Ignore anything but 589 1.1 christos defined and defweak symbols when setting up weakdefs. 590 1.1 christos 591 1.1 christos 2017-11-12 Alan Modra <amodra (a] gmail.com> 592 1.1 christos 593 1.1 christos * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Set non_got_ref 594 1.1 christos to keep dyn_relocs, clear to discard. Comment. 595 1.1 christos (allocate_dynrelocs): Always clear non_got_ref when clearing 596 1.1 christos dyn_relocs in non-pic case. Invert non_got_ref test. Also test 597 1.1 christos dynamic_adjusted and ELF_COMMON_DEF_P. Move code deleting 598 1.1 christos dyn_relocs on undefined syms to handle for non-pic too. 599 1.1 christos (elf32_hppa_relocate_section): Simplify test for non-pic dyn relocs. 600 1.1 christos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Set non_got_ref 601 1.1 christos to keep dyn_relocs, clear to discard. Comment. 602 1.1 christos (allocate_dynrelocs): Always clear non_got_ref when clearing 603 1.1 christos dyn_relocs in non-pic case. Invert non_got_ref test. Also test 604 1.1 christos dynamic_adjusted and ELF_COMMON_DEF_P. Move code deleting 605 1.1 christos dyn_relocs on undefined syms to handle for non-pic too. 606 1.1 christos (ppc_elf_relocate_section): Simplify test for non-pic dyn relocs. 607 1.1 christos * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Discard 608 1.1 christos dyn_relocs here. Don't bother setting non_got_ref. Comment. 609 1.1 christos (allocate_dynrelocs): Delete special handling of non-pic ELFv2 610 1.1 christos ifuncs. Move code deleting dyn_relocs on undefined symbols to 611 1.1 christos handle for non-pic too. Don't test non_got_ref. Do test 612 1.1 christos dynamic_adjusted and ELF_COMMON_DEF_P. 613 1.1 christos 614 1.1 christos 2017-11-08 Djordje Todorovic <djordje.todorovic (a] rt-rk.com> 615 1.1 christos 616 1.1 christos * elf32-mips.c (elf32_mips_grok_psinfo): Extract core->pid. 617 1.1 christos * elf64-mips.c (elf64_mips_grok_psinfo): Likewise. 618 1.1 christos * elfn32-mips.c (elf32_mips_grok_psinfo): Likewise. 619 1.1 christos 620 1.1 christos 2017-11-08 Djordje Todorovic <djordje.todorovic (a] rt-rk.com> 621 1.1 christos 622 1.1 christos * elf32-mips.c (elf32_mips_write_core_note): New function. 623 1.1 christos (elf_backend_write_core_note): New macro. 624 1.1 christos * elf64-mips.c (elf64_mips_write_core_note): New function. 625 1.1 christos (elf_backend_write_core_note): New macro. 626 1.1 christos * elfn32-mips.c (elf32_mips_write_core_note): New function. 627 1.1 christos (elf_backend_write_core_note): New macro. 628 1.1 christos 629 1.1 christos 2017-11-07 Alan Modra <amodra (a] gmail.com> 630 1.1 christos 631 1.1 christos * elf64-ppc.c (ppc64_elf_build_stubs): Correct pluralization in 632 1.1 christos statistics message. 633 1.1 christos 634 1.1 christos 2017-11-07 Alan Modra <amodra (a] gmail.com> 635 1.1 christos 636 1.1 christos * sysdep.h: Formatting, comment fixes. 637 1.1 christos (gettext, ngettext): Redefine when ENABLE_NLS. 638 1.1 christos (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. 639 1.1 christos (_): Define using gettext. 640 1.1 christos (textdomain, bindtextdomain): Use safer "do nothing". 641 1.1 christos * hosts/alphavms.h (textdomain, bindtextdomain): Likewise. 642 1.1 christos (ngettext, dngettext, dcngettext): Define when !ENABLE_NLS. 643 1.1 christos 644 1.1 christos 2017-11-05 Alan Modra <amodra (a] gmail.com> 645 1.1 christos 646 1.1 christos PR 22397 647 1.1 christos * bfd.c (_bfd_doprnt_scan): Check args index before storing, not 648 1.1 christos after. 649 1.1 christos 650 1.1 christos 2017-11-05 Alan Modra <amodra (a] gmail.com> 651 1.1 christos 652 1.1 christos PR 22397 653 1.1 christos * bfd.c (union _bfd_doprnt_args): New. 654 1.1 christos (PRINT_TYPE): Add FIELD arg. Take value from args. 655 1.1 christos (_bfd_doprnt): Replace ap parameter with args. Adjust all 656 1.1 christos PRINT_TYPE invocations and reading of format args to suit. 657 1.1 christos Move "%%" handling out of switch handling args. Support 658 1.1 christos positional parameters. 659 1.1 christos (_bfd_doprnt_scan): New function. 660 1.1 christos (error_handler_internal): Call _bfd_doprnt_scan and read args. 661 1.1 christos 662 1.1 christos 2017-11-04 Alan Modra <amodra (a] gmail.com> 663 1.1 christos 664 1.1 christos * elf32-ppc.c (got_entries_needed, got_relocs_needed): New functions. 665 1.1 christos (allocate_dynrelocs, ppc_elf_size_dynamic_sections): Use them here. 666 1.1 christos (ppc_elf_relocate_section): Don't output a dynamic relocation 667 1.1 christos for IE GOT entries in an executable. 668 1.1 christos * elf64-ppc.c (allocate_got): Trim unnecessary TPREL relocs. 669 1.1 christos (ppc64_elf_size_dynamic_sections): Likewise. 670 1.1 christos (ppc64_elf_relocate_section): Likewise. 671 1.1 christos 672 1.1 christos 2017-11-04 Alan Modra <amodra (a] gmail.com> 673 1.1 christos 674 1.1 christos * elf32-ppc.c (readonly_dynrelocs): Delete info param. Update all 675 1.1 christos callers. Don't bother with SEC_ALLOC test. Return section pointer. 676 1.1 christos Move minfo call to.. 677 1.1 christos (maybe_set_textrel): ..here. 678 1.1 christos * elf64-ppc.c (readonly_dynrelocs): Return section pointer. 679 1.1 christos (maybe_set_textrel): Call minfo to print textrel warning to map file. 680 1.1 christos 681 1.1 christos 2017-11-04 Alan Modra <amodra (a] gmail.com> 682 1.1 christos 683 1.1 christos * elf32-hppa.c (enum _tls_type): Move. 684 1.1 christos (struct elf32_hppa_link_hash_entry): Make tls_type a bitfield. 685 1.1 christos (elf32_hppa_check_relocs): Set DF_STATIC_TLS only for shared libraries. 686 1.1 christos Tidy tls_type handling. Set symbol tls_type for GOT_TLS_LDM too. 687 1.1 christos (got_entries_needed, got_relocs_needed): New functions. 688 1.1 christos (allocate_dynrelocs): Use them. 689 1.1 christos (elf32_hppa_size_dynamic_sections): Likewise. 690 1.1 christos (elf32_hppa_relocate_section): Delete bogus FIXME. Formatting. 691 1.1 christos Correct code emitting relocs on GD/IE got entries. Report an 692 1.1 christos error when a symbol has both normal and TLS GOT relocs. 693 1.1 christos 694 1.1 christos 2017-11-04 Alan Modra <amodra (a] gmail.com> 695 1.1 christos 696 1.1 christos PR 22394 697 1.1 christos * elf32-hppa.c (elf32_hppa_check_relocs): Don't create dyn_relocs 698 1.1 christos for plabels when non-pic. 699 1.1 christos (maybe_set_textrel): New function. 700 1.1 christos (readonly_dynrelocs): Move and rewrite. 701 1.1 christos (elf32_hppa_adjust_dynamic_symbol): Use it. Don't create copy 702 1.1 christos relocs when def_regular or -z nocopyreloc. Handle non_got_ref 703 1.1 christos for functions. Expand non_got_ref comments. 704 1.1 christos (elf32_hppa_size_dynamic_sections): Use maybe_set_textrel. 705 1.1 christos 706 1.1 christos 2017-11-03 H.J. Lu <hongjiu.lu (a] intel.com> 707 1.1 christos 708 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Set plt.refcount to 1. 709 1.1 christos Don't use func_pointer_refcount. Don't set plt.refcount nor 710 1.1 christos non_got_ref for function pointer reference. 711 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 712 1.1 christos * elfxx-x86.c (elf_x86_allocate_dynrelocs): Don't use 713 1.1 christos func_pointer_refcount. 714 1.1 christos (_bfd_x86_elf_copy_indirect_symbol): Don't copy 715 1.1 christos func_pointer_refcount. 716 1.1 christos (_bfd_x86_elf_hide_symbol): Don't use func_pointer_refcount. 717 1.1 christos * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): Likewise. 718 1.1 christos (elf_x86_link_hash_entry): Remove func_pointer_refcount. 719 1.1 christos 720 1.1 christos 2017-11-03 Mingi Cho <mgcho.minic (a] gmail.com> 721 1.1 christos Nick Clifton <nickc (a] redhat.com> 722 1.1 christos 723 1.1 christos PR 22385 724 1.1 christos * coffgen.c (_bfd_coff_get_external_symbols): Check for an 725 1.1 christos overlarge raw syment count. 726 1.1 christos (coff_get_normalized_symtab): Likewise. 727 1.1 christos 728 1.1 christos 2017-11-01 James Bowman <james.bowman (a] ftdichip.com> 729 1.1 christos 730 1.1 christos * archures.c: Add bfd_mach_ft32b. 731 1.1 christos * cpu-ft32.c: Add arch_info_struct. 732 1.1 christos * elf32-ft32.c: Add R_FT32_RELAX, SC0, SC1, 733 1.1 christos DIFF32. 734 1.1 christos (ft32_elf_relocate_section): Add clauses for R_FT32_SC0, SC1, 735 1.1 christos DIFF32. 736 1.1 christos (ft32_reloc_shortable, elf32_ft32_is_diff_reloc) 737 1.1 christos (elf32_ft32_adjust_diff_reloc_value) 738 1.1 christos (elf32_ft32_adjust_reloc_if_spans_insn) 739 1.1 christos (elf32_ft32_relax_delete_bytes, elf32_ft32_relax_is_branch_target) 740 1.1 christos (ft32_elf_relax_section): New function. 741 1.1 christos * reloc.c: Add BFD_RELOC_FT32_RELAX, SC0, SC1, DIFF32. 742 1.1 christos * bfd-in2.h: Regenerate. 743 1.1 christos * libbfd.h: Regenerate. 744 1.1 christos 745 1.1 christos 2017-11-01 Nick Clifton <nickc (a] redhat.com> 746 1.1 christos 747 1.1 christos PR 22376 748 1.1 christos * coffcode.h (coff_slurp_line_table): Check for an excessively 749 1.1 christos large line number count. 750 1.1 christos 751 1.1 christos 2017-11-01 Nick Clifton <nickc (a] redhat.com> 752 1.1 christos 753 1.1 christos PR 22373 754 1.1 christos * peicode.h (pe_bfd_read_buildid): Revise check for invalid size 755 1.1 christos and offset in light of further possible bogus values. 756 1.1 christos 757 1.1 christos 2017-11-01 Alan Modra <amodra (a] gmail.com> 758 1.1 christos 759 1.1 christos PR 22374 760 1.1 christos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't create a plt 761 1.1 christos entry when just a dynamic reloc can serve. Ensure no dynamic 762 1.1 christos relocations when UNDEFWEAK_NO_DYNAMIC_RELOC by setting non_got_ref. 763 1.1 christos Expand and move the non_got_ref comment. 764 1.1 christos * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. 765 1.1 christos 766 1.1 christos 2017-11-01 Nick Clifton <nickc (a] redhat.com> 767 1.1 christos 768 1.1 christos PR 22369 769 1.1 christos * coffgen.c (_bfd_coff_free_symbols): Fail if called on a non-COFF 770 1.1 christos file. 771 1.1 christos * cofflink.c (coff_link_check_archive_element): Skip non-COFF 772 1.1 christos members of an archive. 773 1.1 christos 774 1.1 christos 2017-10-31 Nick Clifton <nickc (a] redhat.com> 775 1.1 christos 776 1.1 christos PR 22373 777 1.1 christos * peicode.h (pe_bfd_read_buildid): Check for invalid size and data 778 1.1 christos offset values. 779 1.1 christos 780 1.1 christos 2017-10-30 Alan Modra <amodra (a] gmail.com> 781 1.1 christos 782 1.1 christos * elf32-frv.c (ELF_TARGET_ID): Don't define for generic 783 1.1 christos elf target. 784 1.1 christos 785 1.1 christos * elflink.c (elf_gc_sweep): Test elf_object_id in addition to 786 1.1 christos relocs_compatible. 787 1.1 christos (bfd_elf_gc_sections): Likewise. 788 1.1 christos 789 1.1 christos 2017-10-30 Alan Modra <amodra (a] gmail.com> 790 1.1 christos 791 1.1 christos PR 22269 792 1.1 christos * elf32-hppa.c (elf32_hppa_check_relocs): Move SEC_ALLOC test to 793 1.1 christos ensure non_got_ref is not set due to debug references. 794 1.1 christos (elf32_hppa_adjust_dynamic_symbol): Tidy plabel handling. Use 795 1.1 christos SYMBOL_CALLS_LOCAL and UNDEFWEAK_NO_DYNAMIC_RELOC when determining 796 1.1 christos need for a plt entry. 797 1.1 christos (allocate_dynrelocs): Similarly for got entries. Tidy code discarding 798 1.1 christos dynamic relocs when pic. Remove bogus code attempting to handle 799 1.1 christos commons. 800 1.1 christos (elf32_hppa_relocate_section): Similarly. Delete resolved_to_zero 801 1.1 christos and simplify. 802 1.1 christos (elf32_hppa_finish_dynamic_symbol): Use UNDEFWEAK_NO_DYNAMIC_RELOC 803 1.1 christos and SYMBOL_REFERENCES_LOCAL in GOT handling. 804 1.1 christos 805 1.1 christos 2017-10-28 Alan Modra <amodra (a] gmail.com> 806 1.1 christos 807 1.1 christos PR 22300 808 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Remove relocs_compatible check. 809 1.1 christos * elf32-hppa.c (elf_backend_relocs_compatible): Define. 810 1.1 christos * elf32-ppc.c (elf_backend_relocs_compatible): Define. 811 1.1 christos * elf64-ppc.c (elf_backend_relocs_compatible): Define. 812 1.1 christos 813 1.1 christos 2017-10-25 Alan Modra <amodra (a] gmail.com> 814 1.1 christos 815 1.1 christos * archive.c (_bfd_compute_and_write_armap): Match "__gnu_lto_slim" 816 1.1 christos optionally prefixed with "_". 817 1.1 christos * linker.c (_bfd_generic_link_add_one_symbol): Likewise. 818 1.1 christos 819 1.1 christos 2017-10-24 Andrew Waterman <andrew (a] sifive.com> 820 1.1 christos 821 1.1 christos * elfnn-riscv.c (_bfd_riscv_relax_lui): Don't relax to c.lui 822 1.1 christos when rd is x0. 823 1.1 christos 824 1.1 christos 2017-10-24 Renlin Li <renlin.li (a] arm.com> 825 1.1 christos 826 1.1 christos PR ld/21703 827 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Handle multiple definition case. 828 1.1 christos 829 1.1 christos 2017-10-23 Nick Clifton <nickc (a] redhat.com> 830 1.1 christos 831 1.1 christos PR 22319 832 1.1 christos * elflink.c (elf_link_output_extsym): Keep global undefined 833 1.1 christos symbols if they have been marked as needed. 834 1.1 christos 835 1.1 christos 2017-10-23 Maciej W. Rozycki <macro (a] imgtec.com> 836 1.1 christos 837 1.1 christos * elfn32-mips.c (mips_elf_n32_mkobject): New prototype and 838 1.1 christos function. 839 1.1 christos (bfd_elf32_mkobject): Use `mips_elf_n32_mkobject' rather than 840 1.1 christos `_bfd_mips_elf_mkobject'. 841 1.1 christos 842 1.1 christos 2017-10-22 Hans-Peter Nilsson <hp (a] axis.com> 843 1.1 christos 844 1.1 christos PR gas/22304 845 1.1 christos * config.bfd (cris-*-* | crisv32-*-*): Require a 64-bit BFD. 846 1.1 christos 847 1.1 christos 2017-10-19 Palmer Dabbelt <palmer (a] dabbelt.com> 848 1.1 christos 849 1.1 christos * elfnn-riscv.c (riscv_pcgp_hi_reloc): New structure. 850 1.1 christos (riscv_pcgp_lo_reloc): Likewise. 851 1.1 christos (riscv_pcgp_relocs): Likewise. 852 1.1 christos (riscv_init_pcgp_relocs): New function. 853 1.1 christos (riscv_free_pcgp_relocs): Likewise. 854 1.1 christos (riscv_record_pcgp_hi_reloc): Likewise. 855 1.1 christos (riscv_record_pcgp_lo_reloc): Likewise. 856 1.1 christos (riscv_delete_pcgp_hi_reloc): Likewise. 857 1.1 christos (riscv_use_pcgp_hi_reloc): Likewise. 858 1.1 christos (riscv_record_pcgp_lo_reloc): Likewise. 859 1.1 christos (riscv_find_pcgp_lo_reloc): Likewise. 860 1.1 christos (riscv_delete_pcgp_lo_reloc): Likewise. 861 1.1 christos (_bfd_riscv_relax_pc): Likewise. 862 1.1 christos (_bfd_riscv_relax_section): Handle R_RISCV_PCREL_* relocations 863 1.1 christos via the new functions above. 864 1.1 christos 865 1.1 christos 2017-10-19 Palmer Dabbelt <palmer (a] dabbelt.com> 866 1.1 christos 867 1.1 christos * elfnn-riscv.c (R_RISCV_DELETE): New define. 868 1.1 christos (_bfd_riscv_relax_delete): New function. 869 1.1 christos (perform_relocation): Handle R_RISCV_DELETE. 870 1.1 christos (_bfd_riscv_relax_section): Likewise. 871 1.1 christos 872 1.1 christos 2017-10-19 H.J. Lu <hongjiu.lu (a] intel.com> 873 1.1 christos 874 1.1 christos PR ld/22263 875 1.1 christos * elfxx-tilegx.c (tilegx_elf_tls_transition): Replace 876 1.1 christos bfd_link_pic with !bfd_link_executable, !bfd_link_pic with 877 1.1 christos bfd_link_executable for TLS check. 878 1.1 christos (tilegx_elf_check_relocs): Likewise. 879 1.1 christos (allocate_dynrelocs): Likewise. 880 1.1 christos (tilegx_elf_relocate_section): Likewise. 881 1.1 christos 882 1.1 christos 2017-10-19 H.J. Lu <hongjiu.lu (a] intel.com> 883 1.1 christos 884 1.1 christos PR ld/22263 885 1.1 christos * elf32-tilepro.c (tilepro_elf_tls_transition): Replace 886 1.1 christos bfd_link_pic with !bfd_link_executable, !bfd_link_pic with 887 1.1 christos bfd_link_executable for TLS check. 888 1.1 christos (tilepro_elf_check_relocs): Likewise. 889 1.1 christos (allocate_dynrelocs): Likewise. 890 1.1 christos (tilepro_elf_relocate_section): Likewise. 891 1.1 christos 892 1.1 christos 2017-10-19 H.J. Lu <hongjiu.lu (a] intel.com> 893 1.1 christos 894 1.1 christos PR ld/22263 895 1.1 christos * elfxx-sparc.c (sparc_elf_tls_transition): Replace 896 1.1 christos bfd_link_pic with !bfd_link_executable, !bfd_link_pic with 897 1.1 christos bfd_link_executable for TLS check. 898 1.1 christos (_bfd_sparc_elf_check_relocs): Likewise. 899 1.1 christos (allocate_dynrelocs): Likewise. 900 1.1 christos (_bfd_sparc_elf_relocate_section): Likewise. 901 1.1 christos 902 1.1 christos 2017-10-18 H.J. Lu <hongjiu.lu (a] intel.com> 903 1.1 christos 904 1.1 christos * elf32-tilepro.c (tilepro_elf_gc_mark_hook): Call 905 1.1 christos _bfd_generic_link_add_one_symbol to mark __tls_get_addr. 906 1.1 christos * elfxx-tilegx.c (tilegx_elf_gc_mark_hook): Likewise. 907 1.1 christos 908 1.1 christos 2017-10-17 H.J. Lu <hongjiu.lu (a] intel.com> 909 1.1 christos 910 1.1 christos * elf32-microblaze.c (microblaze_elf_check_relocs): Check for 911 1.1 christos indirect and warning symbols. 912 1.1 christos 913 1.1 christos 2017-10-17 Alan Modra <amodra (a] gmail.com> 914 1.1 christos 915 1.1 christos PR 22307 916 1.1 christos * elf-properties.c (_bfd_elf_parse_gnu_properties): Compare datasz 917 1.1 christos against size left rather than comparing pointers. Reorganise loop. 918 1.1 christos 919 1.1 christos 2017-10-17 Alan Modra <amodra (a] gmail.com> 920 1.1 christos 921 1.1 christos PR 22306 922 1.1 christos * aoutx.h (aout_get_external_symbols): Handle stringsize of zero, 923 1.1 christos and error for any other size that doesn't cover the header word. 924 1.1 christos 925 1.1 christos 2017-10-16 H.J. Lu <hongjiu.lu (a] intel.com> 926 1.1 christos 927 1.1 christos * elf-bfd.h (elf_backend_data): Remove gc_sweep_hook. 928 1.1 christos * elf32-arm.c (elf32_arm_gc_sweep_hook): Removed. 929 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 930 1.1 christos * elf32-bfin.c (bfin_gc_sweep_hook): Likewise. 931 1.1 christos (bfinfdpic_gc_sweep_hook): Likewise. 932 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 933 1.1 christos * elf32-cr16.c (elf32_cr16_gc_sweep_hook): Likewise. 934 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 935 1.1 christos * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise. 936 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 937 1.1 christos * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise. 938 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 939 1.1 christos * elf32-lm32.c (lm32_elf_gc_sweep_hook): Likewise. 940 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 941 1.1 christos * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise. 942 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 943 1.1 christos * elf32-m68k.c (elf_m68k_got_entry): Remove elf_m68k_gc_sweep_hook 944 1.1 christos from comments. 945 1.1 christos (elf_m68k_remove_got_entry_type): Removed. 946 1.1 christos (elf_m68k_find_got_entry_ptr): Likewise. 947 1.1 christos (elf_m68k_remove_got_entry): Likewise. 948 1.1 christos (elf_m68k_gc_sweep_hook): Likewise. 949 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 950 1.1 christos * elf32-mcore.c (mcore_elf_gc_sweep_hook): Likewise. 951 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 952 1.1 christos * elf32-metag.c (elf_metag_gc_sweep_hook): Likewise. 953 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 954 1.1 christos * elf32-microblaze.c (elf_backend_gc_sweep_hook): Likewise. 955 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 956 1.1 christos * elf32-mips.c (elf_backend_gc_sweep_hook): Likewise. 957 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 958 1.1 christos * elf32-nds32.c (nds32_elf_gc_sweep_hook): Likewise. 959 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 960 1.1 christos * elf32-nios2.c (nios2_elf32_gc_sweep_hook): Likewise. 961 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 962 1.1 christos * elf32-or1k.c (or1k_elf_gc_sweep_hook): Likewise. 963 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 964 1.1 christos * elf32-ppc.c (ppc_elf_gc_sweep_hook): Likewise. 965 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 966 1.1 christos * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise. 967 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 968 1.1 christos * elf32-sparc.c (elf_backend_gc_sweep_hook): Likewise. 969 1.1 christos * elf32-tic6x.c (elf32_tic6x_gc_sweep_hook): Likewise. 970 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 971 1.1 christos * elf32-tilegx.c (elf_backend_gc_sweep_hook): Likewise. 972 1.1 christos * elf32-tilepro.c (tilepro_elf_gc_sweep_hook): Likewise. 973 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 974 1.1 christos * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise. 975 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 976 1.1 christos * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise. 977 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 978 1.1 christos * elf64-alpha.c (elf64_alpha_gc_sweep_hook): Likewise. 979 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 980 1.1 christos * elf64-mips.c (elf_backend_gc_sweep_hook): Likewise. 981 1.1 christos * elf64-mmix.c (mmix_elf_gc_sweep_hook): Likewise. 982 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 983 1.1 christos * elf64-ppc.c (elf_backend_gc_sweep_hook): Likewise. 984 1.1 christos (ppc64_elf_gc_sweep_hook): Likewise. 985 1.1 christos * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise. 986 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 987 1.1 christos * elf64-sparc.c (elf_backend_gc_sweep_hook): Likewise. 988 1.1 christos * elf64-tilegx.c (elf_backend_gc_sweep_hook): Likewise. 989 1.1 christos * elflink.c (elf_link_add_object_symbols): Don't call 990 1.1 christos _bfd_elf_link_check_relocs here. 991 1.1 christos (gc_sweep_hook_fn): Removed. 992 1.1 christos (elf_gc_sweep): Remove gc_sweep_hook. 993 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_gc_sweep_hook): Removed. 994 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 995 1.1 christos * elfnn-riscv.c (riscv_elf_gc_sweep_hook): Likewise. 996 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 997 1.1 christos * elfxx-mips.c (_bfd_mips_elf_gc_sweep_hook): Likewise. 998 1.1 christos * elfxx-mips.h (_bfd_mips_elf_gc_sweep_hook): Likewise. 999 1.1 christos (elf_backend_gc_sweep_hook): Likewise. 1000 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_gc_sweep_hook): Likewise. 1001 1.1 christos * elfxx-sparc.h (_bfd_sparc_elf_gc_sweep_hook): Likewise. 1002 1.1 christos * elfxx-target.h (elf_backend_gc_sweep_hook): Likewise. 1003 1.1 christos (elfNN_bed): Remove elf_backend_gc_sweep_hook. 1004 1.1 christos * elfxx-tilegx.c (tilegx_elf_gc_sweep_hook): Removed. 1005 1.1 christos * elfxx-tilegx.h (tilegx_elf_gc_sweep_hook): Likewise. 1006 1.1 christos 1007 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1008 1.1 christos 1009 1.1 christos * elf32-i386.c (elf_i386_backend_data): Removed. 1010 1.1 christos (get_elf_i386_backend_data): Likewise. 1011 1.1 christos (elf_i386_arch_bed): Replace elf_i386_backend_data with 1012 1.1 christos elf_x86_backend_data. 1013 1.1 christos (elf_i386_get_synthetic_symtab): Likewise. 1014 1.1 christos (elf_i386_nacl_arch_bed): Likewise. 1015 1.1 christos (elf_i386_vxworks_arch_bed): Likewise. 1016 1.1 christos (elf_i386_relocate_section): Check target_os instead of 1017 1.1 christos is_vxworks. 1018 1.1 christos (elf_i386_finish_dynamic_symbol): Likewise. 1019 1.1 christos (elf_i386_finish_dynamic_sections): Use htab->plt0_pad_byte. 1020 1.1 christos Check target_os instead of is_vxworks. 1021 1.1 christos (elf_i386_link_setup_gnu_properties): Remove normal_target and 1022 1.1 christos is_vxworks. Initialize plt0_pad_byte. 1023 1.1 christos * elf64-x86-64.c (elf_x86_64_backend_data); Removed. 1024 1.1 christos (get_elf_x86_64_arch_data): Likewise. 1025 1.1 christos (get_elf_x86_64_backend_data): Likewise. 1026 1.1 christos (elf_x86_64_arch_bed): Replace elf_x86_64_backend_data with 1027 1.1 christos elf_x86_backend_data. 1028 1.1 christos (elf_x86_64_get_synthetic_symtab): Likewise. 1029 1.1 christos (elf_x86_64_nacl_arch_bed): Likewise. 1030 1.1 christos (elf_x86_64_link_setup_gnu_properties): Remove is_vxworks and 1031 1.1 christos normal_target. Initialize plt0_pad_byte. 1032 1.1 christos * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check target_os 1033 1.1 christos instead of is_vxworks. 1034 1.1 christos (_bfd_x86_elf_size_dynamic_sections): Likewise. 1035 1.1 christos (_bfd_x86_elf_finish_dynamic_sections): Likewise. 1036 1.1 christos (_bfd_x86_elf_adjust_dynamic_symbol): Likewise. 1037 1.1 christos (_bfd_x86_elf_link_hash_table_create): Initialize target_os. 1038 1.1 christos (_bfd_x86_elf_link_setup_gnu_properties): Remove is_vxworks. 1039 1.1 christos Update normal_target. Set up plt0_pad_byte. Check target_os 1040 1.1 christos instead of is_vxworks. 1041 1.1 christos * elfxx-x86.h (elf_x86_target_os): New. 1042 1.1 christos (elf_x86_backend_data): Likewise. 1043 1.1 christos (get_elf_x86_backend_data): Likewise. 1044 1.1 christos (elf_x86_link_hash_table): Remove is_vxworks. Add plt0_pad_byte 1045 1.1 christos and target_os. 1046 1.1 christos (elf_x86_init_table): Remove normal_target and is_vxworks. Add 1047 1.1 christos plt0_pad_byte. 1048 1.1 christos 1049 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1050 1.1 christos 1051 1.1 christos * elf32-i386.c (elf_i386_finish_dynamic_sections): Call 1052 1.1 christos _bfd_x86_elf_finish_dynamic_sections. 1053 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Likewise. 1054 1.1 christos * elfxx-x86.c (_bfd_x86_elf_finish_dynamic_sections): New 1055 1.1 christos function. 1056 1.1 christos * elfxx-x86.h (_bfd_x86_elf_finish_dynamic_sections): New 1057 1.1 christos prototype. 1058 1.1 christos 1059 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1060 1.1 christos 1061 1.1 christos PR ld/21384 1062 1.1 christos * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't 1063 1.1 christos hide symbol which was forced to be dynamic. 1064 1.1 christos 1065 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1066 1.1 christos 1067 1.1 christos PR ld/22269 1068 1.1 christos * elf32-cris.c (cris_elf_relocate_section): Don't generate 1069 1.1 christos dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1070 1.1 christos (cris_elf_check_relocs): Don't allocate dynamic relocation 1071 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1072 1.1 christos 1073 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1074 1.1 christos 1075 1.1 christos PR ld/22269 1076 1.1 christos * elf32-sh.c (allocate_dynrelocs): Discard dynamic relocations 1077 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1078 1.1 christos (sh_elf_relocate_section): Don't generate dynamic relocation if 1079 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1080 1.1 christos 1081 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1082 1.1 christos 1083 1.1 christos PR ld/22269 1084 1.1 christos * elf32-s390.c (allocate_dynrelocs): Discard dynamic 1085 1.1 christos relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1086 1.1 christos (elf_s390_relocate_section): Don't generate dynamic relocation 1087 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1088 1.1 christos * elf64-s390.c (allocate_dynrelocs): Discard dynamic 1089 1.1 christos relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1090 1.1 christos (elf_s390_relocate_section): Don't generate dynamic relocation 1091 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1092 1.1 christos 1093 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1094 1.1 christos 1095 1.1 christos PR ld/22269 1096 1.1 christos * elf32-nios2.c (nios2_elf32_relocate_section): Don't generate 1097 1.1 christos dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1098 1.1 christos (allocate_dynrelocs): Discard dynamic relocations if 1099 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1100 1.1 christos 1101 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1102 1.1 christos 1103 1.1 christos PR ld/22269 1104 1.1 christos * elf32-microblaze.c (microblaze_elf_relocate_section): Don't 1105 1.1 christos generate dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is 1106 1.1 christos true. 1107 1.1 christos (allocate_dynrelocs): Discard dynamic relocations if 1108 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1109 1.1 christos 1110 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1111 1.1 christos 1112 1.1 christos PR ld/22269 1113 1.1 christos * elf32-m68k.c (elf_m68k_check_relocs): Don't allocate dynamic 1114 1.1 christos relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1115 1.1 christos (elf_m68k_adjust_dynamic_symbol): Don't make symbol dynamic if 1116 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1117 1.1 christos (elf_m68k_relocate_section): Don't generate dynamic relocation 1118 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1119 1.1 christos 1120 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1121 1.1 christos 1122 1.1 christos PR ld/22269 1123 1.1 christos * elf32-hppa.c (ensure_undef_dynamic): Don't make undefined 1124 1.1 christos symbol dynamic if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1125 1.1 christos (allocate_dynrelocs): Discard dynamic relocations if 1126 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1127 1.1 christos (elf32_hppa_relocate_section): Don't generate dynamic 1128 1.1 christos relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1129 1.1 christos 1130 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1131 1.1 christos 1132 1.1 christos PR ld/22269 1133 1.1 christos * elfnn-ia64.c (elfNN_ia64_check_relocs): Don't allocate 1134 1.1 christos dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1135 1.1 christos (allocate_fptr): Don't allocate function pointer if 1136 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1137 1.1 christos (allocate_dynrel_entries): Don't allocate dynamic relocation 1138 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1139 1.1 christos (set_got_entry): Don't set GOT entry if 1140 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1141 1.1 christos (set_pltoff_entry): Don't set PLTOFF entry if 1142 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1143 1.1 christos (elfNN_ia64_relocate_section): Don't install dynamic relocation 1144 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1145 1.1 christos 1146 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1147 1.1 christos 1148 1.1 christos PR ld/22269 1149 1.1 christos * elfxx-mips.c (mips_elf_calculate_relocation): Don't generate 1150 1.1 christos dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1151 1.1 christos (allocate_dynrelocs): Don't allocate dynamic relocations if 1152 1.1 christos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1153 1.1 christos 1154 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1155 1.1 christos 1156 1.1 christos PR ld/22269 1157 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Don't generate 1158 1.1 christos dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1159 1.1 christos (allocate_dynrelocs_for_symbol): Discard dynamic relocations 1160 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1161 1.1 christos 1162 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1163 1.1 christos 1164 1.1 christos PR ld/22269 1165 1.1 christos * elf32-tilepro.c (allocate_dynrelocs): Discard dynamic 1166 1.1 christos relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1167 1.1 christos (tilepro_elf_relocate_section): Don't generate dynamic 1168 1.1 christos relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1169 1.1 christos * elfxx-tilegx.c (allocate_dynrelocs): Discard dynamic 1170 1.1 christos relocations if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1171 1.1 christos (tilegx_elf_relocate_section): Don't generate dynamic 1172 1.1 christos relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1173 1.1 christos 1174 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1175 1.1 christos 1176 1.1 christos PR ld/22269 1177 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Don't 1178 1.1 christos generate dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is 1179 1.1 christos true. 1180 1.1 christos (elfNN_aarch64_allocate_dynrelocs): Discard dynamic relocations 1181 1.1 christos if UNDEFWEAK_NO_DYNAMIC_RELOC is true. 1182 1.1 christos 1183 1.1 christos 2017-10-14 H.J. Lu <hongjiu.lu (a] intel.com> 1184 1.1 christos 1185 1.1 christos * elf32-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Moved to ... 1186 1.1 christos * elf-bfd.h (UNDEFWEAK_NO_DYNAMIC_RELOC): Here. 1187 1.1 christos * elf64-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Removed. 1188 1.1 christos 1189 1.1 christos 2017-10-12 James Bowman <james.bowman (a] ftdichip.com> 1190 1.1 christos 1191 1.1 christos * bfd-in2.h: Regenerate. 1192 1.1 christos * libbfd.h: Regenerate. 1193 1.1 christos * elf32-ft32.c: Add HOWTO R_FT32_15. 1194 1.1 christos * reloc.c: Add BFD_RELOC_FT32_15. 1195 1.1 christos 1196 1.1 christos 2017-10-12 Nick Clifton <nickc (a] redhat.com> 1197 1.1 christos 1198 1.1 christos * reloc.c (enum bfd_reloc_status): Start values at 2. 1199 1.1 christos * bfd-in2.h: Regenerate. 1200 1.1 christos * elfnn-aarch64.c (aarch64_relocate): Invert sense of function, so 1201 1.1 christos that a TRUE return indicates success. Compare the result of 1202 1.1 christos calling _bfd_aarch64_elf_put_addend against bfd_reloc_ok. 1203 1.1 christos (build_one_stub): Change sense of tests against aarch64_relocate 1204 1.1 christos return value. 1205 1.1 christos (elfNN_aarch64_tls_relax): Return bfd_reloc_notsupported, rather 1206 1.1 christos than FALSE, when an error is detected. 1207 1.1 christos (elfNN_aarch64_final_link_relocate): Likewise. 1208 1.1 christos 1209 1.1 christos 2017-10-12 H.J. Lu <hongjiu.lu (a] intel.com> 1210 1.1 christos 1211 1.1 christos * elf32-i386.c (elf_backend_hide_symbol): New. 1212 1.1 christos * elf64-x86-64.c (elf_backend_hide_symbol): Likewise. 1213 1.1 christos * elfxx-x86.c (_bfd_x86_elf_hide_symbol): Likewise. 1214 1.1 christos * elfxx-x86.h (_bfd_x86_elf_hide_symbol): Likewise. 1215 1.1 christos 1216 1.1 christos 2017-10-12 Alan Modra <amodra (a] gmail.com> 1217 1.1 christos 1218 1.1 christos * elflink.c (_bfd_elf_adjust_dynamic_symbol): Call 1219 1.1 christos elf_backend_hide_symbol, not _bfd_elf_link_hash_hide_symbol. 1220 1.1 christos (bfd_elf_define_start_stop): Likewise. 1221 1.1 christos 1222 1.1 christos 2017-10-12 Alan Modra <amodra (a] gmail.com> 1223 1.1 christos 1224 1.1 christos * elf32-nds32.c (nds32_elf_size_dynamic_sections): Set .interp 1225 1.1 christos when executable rather than non-PIC. 1226 1.1 christos * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise. 1227 1.1 christos * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise. 1228 1.1 christos 1229 1.1 christos 2017-10-11 Maciej W. Rozycki <macro (a] imgtec.com> 1230 1.1 christos 1231 1.1 christos * elf-bfd.h (elf_backend_data): Add `linux_prpsinfo64_ugid16' 1232 1.1 christos member. 1233 1.1 christos * elf-linux-core.h (elf_external_linux_prpsinfo64): Rename to... 1234 1.1 christos (elf_external_linux_prpsinfo64_ugid32): ... this. 1235 1.1 christos (swap_linux_prpsinfo32_out): Rename to... 1236 1.1 christos (swap_linux_prpsinfo32_ugid32_out): ... this. 1237 1.1 christos (elf_external_linux_prpsinfo64_ugid16): New structure. 1238 1.1 christos (swap_linux_prpsinfo64_ugid16_out): New function. 1239 1.1 christos * elfxx-target.h [!elf_backend_linux_prpsinfo64_ugid16] 1240 1.1 christos (elf_backend_linux_prpsinfo64_ugid16): Define. 1241 1.1 christos (elfNN_bed): Initialize `linux_prpsinfo64_ugid16' member. 1242 1.1 christos * elf.c (elfcore_write_linux_prpsinfo64): Handle both variants 1243 1.1 christos of the 64-bit Linux core PRPSINFO note. 1244 1.1 christos * elf64-sh64.c (elf_backend_linux_prpsinfo64_ugid16): Define. 1245 1.1 christos 1246 1.1 christos 2017-10-11 Maciej W. Rozycki <macro (a] imgtec.com> 1247 1.1 christos 1248 1.1 christos * elf-bfd.h (elf_backend_data): Add `linux_prpsinfo32_ugid16' 1249 1.1 christos member. 1250 1.1 christos (elfcore_write_ppc_linux_prpsinfo32): Remove prototype. 1251 1.1 christos * elf32-ppc.c (elfcore_write_ppc_linux_prpsinfo32): Remove. 1252 1.1 christos (elf_external_ppc_linux_prpsinfo32) 1253 1.1 christos (swap_ppc_linux_prpsinfo32_out): Move to... 1254 1.1 christos * elf-linux-core.h (elf_external_linux_prpsinfo32_ugid32) 1255 1.1 christos (swap_linux_prpsinfo32_ugid32_out): ... these. 1256 1.1 christos (elf_external_linux_prpsinfo32): Rename to... 1257 1.1 christos (elf_external_linux_prpsinfo32_ugid16): ... this. 1258 1.1 christos (swap_linux_prpsinfo32_out): Rename to... 1259 1.1 christos (swap_linux_prpsinfo32_ugid16_out): ... this. 1260 1.1 christos * elfxx-target.h [!elf_backend_linux_prpsinfo32_ugid16] 1261 1.1 christos (elf_backend_linux_prpsinfo32_ugid16): Define. 1262 1.1 christos (elfNN_bed): Initialize `linux_prpsinfo32_ugid16' member. 1263 1.1 christos * elf.c (elfcore_write_linux_prpsinfo32): Handle both variants 1264 1.1 christos of the 32-bit Linux core PRPSINFO note. 1265 1.1 christos * elf32-am33lin.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1266 1.1 christos * elf32-arm.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1267 1.1 christos * elf32-cris.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1268 1.1 christos * elf32-frv.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1269 1.1 christos * elf32-i386.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1270 1.1 christos * elf32-m32r.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1271 1.1 christos * elf32-m68k.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1272 1.1 christos * elf32-s390.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1273 1.1 christos * elf32-sh.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1274 1.1 christos * elf32-sparc.c (elf_backend_linux_prpsinfo32_ugid16): Define. 1275 1.1 christos 1276 1.1 christos 2017-10-11 Maciej W. Rozycki <macro (a] imgtec.com> 1277 1.1 christos 1278 1.1 christos * elf-linux-core.h (elf_external_linux_prpsinfo64): Move the 1279 1.1 christos `gap' member ahead of `pr_flag'. 1280 1.1 christos 1281 1.1 christos 2017-10-11 Pedro Alves <palves (a] redhat.com> 1282 1.1 christos 1283 1.1 christos * bfd.c (_doprnt): Rename to ... 1284 1.1 christos (_bfd_doprnt): ... this. 1285 1.1 christos (error_handler_internal): Adjust. 1286 1.1 christos 1287 1.1 christos 2017-10-10 H.J. Lu <hongjiu.lu (a] intel.com> 1288 1.1 christos 1289 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Set GOT refcount to 1 1290 1.1 christos instead of incrementing it. 1291 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 1292 1.1 christos 1293 1.1 christos 2017-10-10 Renlin Li <renlin.li (a] arm.com> 1294 1.1 christos 1295 1.1 christos PR ld/21402 1296 1.1 christos * elf32-arm.c (allocate_dynrelocs_for_symbol): Only make undefined weak 1297 1.1 christos symbols into dynamic. 1298 1.1 christos 1299 1.1 christos 2017-10-09 H.J. Lu <hongjiu.lu (a] intel.com> 1300 1.1 christos 1301 1.1 christos PR ld/22274 1302 1.1 christos * elfnn-riscv.c (riscv_elf_link_hash_table): Add max_alignment. 1303 1.1 christos (riscv_elf_link_hash_table_create): Initialize max_alignment to 1304 1.1 christos (bfd_vma) -1. 1305 1.1 christos (_bfd_riscv_relax_section): Cache the max alignment of output 1306 1.1 christos sections if possible. 1307 1.1 christos 1308 1.1 christos 2017-10-10 Alan Modra <amodra (a] gmail.com> 1309 1.1 christos 1310 1.1 christos * elf64-ppc.c (ppc64_elf_before_check_relocs): Set sec_type for 1311 1.1 christos .opd whenever .opd is present and non-zero size. Move code 1312 1.1 christos setting abiversion to/from output file earlier. Only set 1313 1.1 christos u.opd.func_sec when --gc-sections. Read relocs and set up 1314 1.1 christos u.opd.func_sec values here.. 1315 1.1 christos (ppc64_elf_check_relocs): ..rather than here. Simplify opd 1316 1.1 christos section tests. 1317 1.1 christos (ppc64_elf_edit_opd): Don't set sec_type for .opd here. 1318 1.1 christos 1319 1.1 christos 2017-10-09 H.J. Lu <hongjiu.lu (a] intel.com> 1320 1.1 christos 1321 1.1 christos * elf-m10300.c (mn10300_elf_check_relocs): Don't free cached 1322 1.1 christos isymbuf. 1323 1.1 christos 1324 1.1 christos 2017-10-09 H.J. Lu <hongjiu.lu (a] intel.com> 1325 1.1 christos 1326 1.1 christos * elf32-bfin.c (bfin_size_dynamic_sections): Don't create the 1327 1.1 christos .interp section with "ld --no-dynamic-linker". 1328 1.1 christos 1329 1.1 christos 2017-10-09 Alan Modra <amodra (a] gmail.com> 1330 1.1 christos 1331 1.1 christos PR 22212 1332 1.1 christos * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free 1333 1.1 christos funcinfo_hash_table and varinfo_hash_table. 1334 1.1 christos 1335 1.1 christos 2017-10-08 H.J. Lu <hongjiu.lu (a] intel.com> 1336 1.1 christos 1337 1.1 christos * elf32-sh.c (readonly_dynrelocs): Dump dynamic relocation 1338 1.1 christos in read-only section with minfo. 1339 1.1 christos (sh_elf_size_dynamic_sections): Likewise. 1340 1.1 christos 1341 1.1 christos 2017-10-08 H.J. Lu <hongjiu.lu (a] intel.com> 1342 1.1 christos 1343 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Remove 1344 1.1 christos a strayed comment. 1345 1.1 christos 1346 1.1 christos 2017-10-08 H.J. Lu <hongjiu.lu (a] intel.com> 1347 1.1 christos 1348 1.1 christos * elfxx-tilegx.c (tilegx_elf_finish_dynamic_sections): Set 1349 1.1 christos this_hdr.sh_entsize only if section size > 0. 1350 1.1 christos 1351 1.1 christos 2017-10-08 H.J. Lu <hongjiu.lu (a] intel.com> 1352 1.1 christos 1353 1.1 christos * elfxx-x86.c (elf_x86_allocate_dynrelocs): Reformat. 1354 1.1 christos 1355 1.1 christos 2017-10-07 H.J. Lu <hongjiu.lu (a] intel.com> 1356 1.1 christos 1357 1.1 christos * elfxx-sparc.c (readonly_dynrelocs): Dump dynamic relocation 1358 1.1 christos in read-only section with minfo. 1359 1.1 christos (_bfd_sparc_elf_size_dynamic_sections): Likewise. 1360 1.1 christos 1361 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1362 1.1 christos 1363 1.1 christos * elfxx-x86.h (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Update 1364 1.1 christos comments. 1365 1.1 christos 1366 1.1 christos 2017-10-06 John Baldwin <jhb (a] FreeBSD.org> 1367 1.1 christos 1368 1.1 christos * elf-bfd.h (struct elf_backend_data): Add 1369 1.1 christos `elf_backend_grok_freebsd_prstatus'. 1370 1.1 christos * elf.c (elfcore_grok_freebsd_note): Call 1371 1.1 christos `elf_backend_grok_freebsd_prstatus' to handle NT_PRSTATUS if 1372 1.1 christos present. 1373 1.1 christos * elfn32-mips.c (elf_n32_mips_grok_freebsd_prstatus): New 1374 1.1 christos function. 1375 1.1 christos (elf_backend_grok_freebsd_prstatus): Define. 1376 1.1 christos * elfxx-target.h (elf_backend_grok_freebsd_prstatus): Define. 1377 1.1 christos (elfNN_bed): Initialize `elf_backend_grok_freebsd_prstatus'. 1378 1.1 christos 1379 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1380 1.1 christos 1381 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Replace has_got_reloc 1382 1.1 christos and has_non_got_reloc with zero_undefweak. 1383 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 1384 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_hash_newfunc): Initialize 1385 1.1 christos zero_undefweak to 1. 1386 1.1 christos (_bfd_x86_elf_copy_indirect_symbol): Replace has_got_reloc and 1387 1.1 christos has_non_got_reloc with zero_undefweak. 1388 1.1 christos * elfxx-x86.h (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Replace 1389 1.1 christos has_got_reloc and has_non_got_reloc with zero_undefweak. 1390 1.1 christos (elf_x86_link_hash_entry): Likewise. 1391 1.1 christos 1392 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1393 1.1 christos 1394 1.1 christos * elfxx-x86.h (COPY_INPUT_RELOC_P): Add "do/while(0);". 1395 1.1 christos (VERIFY_COPY_RELOC): Likewise. 1396 1.1 christos 1397 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1398 1.1 christos 1399 1.1 christos * elfxx-x86.h (VERIFY_COPY_RELOC): New. 1400 1.1 christos * elf32-i386.c (elf_i386_finish_dynamic_symbol): Use it. 1401 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. 1402 1.1 christos 1403 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1404 1.1 christos 1405 1.1 christos * elfxx-x86.h (VERIFY_PLT_ENTRY): New. 1406 1.1 christos * elf32-i386.c (elf_i386_finish_dynamic_symbol): Use it. 1407 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. 1408 1.1 christos 1409 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1410 1.1 christos 1411 1.1 christos * elfxx-x86.h (COPY_INPUT_RELOC_P): New. 1412 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Use it. 1413 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 1414 1.1 christos 1415 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1416 1.1 christos 1417 1.1 christos * elf32-i386.c (X86_SIZE_TYPE_P): New. 1418 1.1 christos (elf_i386_relocate_section): Use GENERATE_DYNAMIC_RELOCATION_P. 1419 1.1 christos * elf64-x86-64.c (X86_SIZE_TYPE_P): New. 1420 1.1 christos (elf_x86_64_relocate_section): Use GENERATE_DYNAMIC_RELOCATION_P. 1421 1.1 christos * elfxx-x86.h (GENERATE_DYNAMIC_RELOCATION_P): New. 1422 1.1 christos 1423 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1424 1.1 christos 1425 1.1 christos * elfxx-x86.h (POINTER_LOCAL_IFUNC_P): New. 1426 1.1 christos (PLT_LOCAL_IFUNC_P): Likewise. 1427 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Use them. 1428 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 1429 1.1 christos 1430 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1431 1.1 christos 1432 1.1 christos * elfxx-x86.h (GENERATE_RELATIVE_RELOC_P): New. 1433 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Use it. 1434 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 1435 1.1 christos 1436 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1437 1.1 christos 1438 1.1 christos * elfxx-x86.h (RESOLVED_LOCALLY_P): New. 1439 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Use it. 1440 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 1441 1.1 christos 1442 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1443 1.1 christos 1444 1.1 christos * elf32-i386.c (X86_PCREL_TYPE_P): New. 1445 1.1 christos (elf_i386_check_relocs): Use NEED_DYNAMIC_RELOCATION_P. 1446 1.1 christos * elf64-x86-64.c (IS_X86_64_PCREL_TYPE): Renamed to ... 1447 1.1 christos (X86_PCREL_TYPE_P): This. 1448 1.1 christos (elf_x86_64_check_relocs): Use NEED_DYNAMIC_RELOCATION_P. 1449 1.1 christos Replace IS_X86_64_PCREL_TYPE with X86_PCREL_TYPE_P. 1450 1.1 christos (elf_x86_64_relocate_section): Replace IS_X86_64_PCREL_TYPE with 1451 1.1 christos X86_PCREL_TYPE_P. 1452 1.1 christos * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): New. 1453 1.1 christos 1454 1.1 christos 2017-10-06 H.J. Lu <hongjiu.lu (a] intel.com> 1455 1.1 christos 1456 1.1 christos * elfxx-x86.h (TLS_TRANSITION_IE_TO_LE_P): New. 1457 1.1 christos * elf32-i386.c (elf_i386_tls_transition): Use it. 1458 1.1 christos * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. 1459 1.1 christos 1460 1.1 christos 2017-10-05 H.J. Lu <hongjiu.lu (a] intel.com> 1461 1.1 christos 1462 1.1 christos * elf32-ppc.c (readonly_dynrelocs): Add a link_info argument. 1463 1.1 christos Dump dynamic relocation in read-only section with minfo if 1464 1.1 christos needed. 1465 1.1 christos (ppc_elf_adjust_dynamic_symbol): Pass NULL to readonly_dynrelocs. 1466 1.1 christos (maybe_set_textrel): Likewise. 1467 1.1 christos (ppc_elf_size_dynamic_sections): Dump dynamic relocation in 1468 1.1 christos read-only section with minfo. 1469 1.1 christos 1470 1.1 christos 2017-10-05 John Baldwin <jhb (a] FreeBSD.org> 1471 1.1 christos 1472 1.1 christos * elf.c (elfcore_grok_freebsd_note): Handle NT_ARM_VFP. 1473 1.1 christos 1474 1.1 christos 2017-10-05 H.J. Lu <hongjiu.lu (a] intel.com> 1475 1.1 christos 1476 1.1 christos * elf32-tilepro.c (readonly_dynrelocs): Dump dynamic relocation 1477 1.1 christos in read-only section with minfo. 1478 1.1 christos (tilepro_elf_size_dynamic_sections): Likewise. 1479 1.1 christos * elfxx-tilegx.c (readonly_dynrelocs): Likewise. 1480 1.1 christos (tilegx_elf_size_dynamic_sections): Likewise. 1481 1.1 christos 1482 1.1 christos 2017-10-05 Pedro Alves <palves (a] redhat.com> 1483 1.1 christos 1484 1.1 christos PR 22245 1485 1.1 christos * bfd.c (bfd_set_error): Revert 2017-10-04 change. Remove 1486 1.1 christos ellipsis parameter. Split out bfd_error_on_input code to.. 1487 1.1 christos (bfd_set_input_error): .. New function. 1488 1.1 christos * archive.c (_bfd_write_archive_contents): Use bfd_set_input_error. 1489 1.1 christos * vms-lib.c (_bfd_vms_lib_write_archive_contents): Likewise. 1490 1.1 christos * bfd-in2.h: Regenerate. 1491 1.1 christos 1492 1.1 christos 2017-10-05 Alan Modra <amodra (a] gmail.com> 1493 1.1 christos 1494 1.1 christos * elflink.c (elf_link_input_bfd): Correct ctor/dtor in init_array/ 1495 1.1 christos fini_array error value. 1496 1.1 christos 1497 1.1 christos 2017-10-05 Alan Modra <amodra (a] gmail.com> 1498 1.1 christos 1499 1.1 christos PR 21167 1500 1.1 christos * elf.c (_bfd_elf_setup_sections): Don't trim reloc sections from 1501 1.1 christos groups. 1502 1.1 christos (_bfd_elf_init_reloc_shdr): Pass sec_hdr, use it to copy SHF_GROUP 1503 1.1 christos flag from section. 1504 1.1 christos (elf_fake_sections): Adjust calls. Exit immediately on failure. 1505 1.1 christos (bfd_elf_set_group_contents): Add associated reloc section indices 1506 1.1 christos to group contents. 1507 1.1 christos 1508 1.1 christos 2017-10-04 Alan Modra <amodra (a] gmail.com> 1509 1.1 christos 1510 1.1 christos * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't sort or 1511 1.1 christos classify symbols for ELFv2. 1512 1.1 christos 1513 1.1 christos 2017-10-04 Pavel I. Kryukov <kryukov (a] frtk.ru> 1514 1.1 christos 1515 1.1 christos PR 22245 1516 1.1 christos * bfd.c (bfd_set_error): Avoid UB on passing arg to va_start that 1517 1.1 christos undergoes default promotion. 1518 1.1 christos * bfd-in2.h: Regenerate. 1519 1.1 christos 1520 1.1 christos 2017-10-02 Alan Modra <amodra (a] gmail.com> 1521 1.1 christos 1522 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Fix comment typo. 1523 1.1 christos * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 1524 1.1 christos 1525 1.1 christos 2017-10-01 Alan Modra <amodra (a] gmail.com> 1526 1.1 christos 1527 1.1 christos PR 21957 1528 1.1 christos * dwarf2.c (new_line_sorts_after): Remove end_sequence comparison. 1529 1.1 christos (add_line_info): Always put end_sequence last. 1530 1.1 christos 1531 1.1 christos 2017-10-01 Alan Modra <amodra (a] gmail.com> 1532 1.1 christos 1533 1.1 christos PR 22047 1534 1.1 christos * dwarf2.c (read_section): Allocate buffer with extra byte for 1535 1.1 christos bfd_simple_get_relocated_section_contents rather than copying 1536 1.1 christos afterwards. 1537 1.1 christos 1538 1.1 christos 2017-09-29 Alan Modra <amodra (a] gmail.com> 1539 1.1 christos 1540 1.1 christos * merge.c (merge_strings): Return FALSE on malloc failure. 1541 1.1 christos (_bfd_merge_sections): Return failures from record_section and 1542 1.1 christos merge_strings. 1543 1.1 christos 1544 1.1 christos 2017-09-28 Alan Modra <amodra (a] gmail.com> 1545 1.1 christos 1546 1.1 christos PR 22220 1547 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Set non_ir_ref_dynamic in 1548 1.1 christos a case where plugin_notice isn't called. 1549 1.1 christos 1550 1.1 christos 2017-09-27 Kuan-Lin Chen <kuanlinchentw (a] gmail.com> 1551 1.1 christos 1552 1.1 christos * elf32-nds32.c (nds32_elf_relax_section): Fix a tautological 1553 1.1 christos comparison. 1554 1.1 christos 1555 1.1 christos 2017-09-26 H.J. Lu <hongjiu.lu (a] intel.com> 1556 1.1 christos 1557 1.1 christos PR ld/22199 1558 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't pass 1559 1.1 christos output_bfd to info->callbacks->minfo. 1560 1.1 christos 1561 1.1 christos 2017-09-26 Nick Clifton <nickc (a] redhat.com> 1562 1.1 christos 1563 1.1 christos PR 22172 1564 1.1 christos * elf64-x86-64.c (elf_x86_64_info_to_howto): Do not trigger an 1565 1.1 christos assertion failure if elf_x86_64_rtype_to_howto has already issued 1566 1.1 christos an error message. 1567 1.1 christos 1568 1.1 christos 2017-09-26 Alan Modra <amodra (a] gmail.com> 1569 1.1 christos 1570 1.1 christos PR 22210 1571 1.1 christos * dwarf2.c (read_formatted_entries): Use read_attribute_value to 1572 1.1 christos read data. 1573 1.1 christos 1574 1.1 christos 2017-09-26 Nick Clifton <nickc (a] redhat.com> 1575 1.1 christos 1576 1.1 christos PR 22210 1577 1.1 christos * dwarf2.c (read_formatted_entries): Fail early if we know that 1578 1.1 christos the loop parsing data entries will overflow the end of the 1579 1.1 christos section. 1580 1.1 christos 1581 1.1 christos 2017-09-26 Alan Modra <amodra (a] gmail.com> 1582 1.1 christos 1583 1.1 christos PR 22209 1584 1.1 christos * dwarf2.c (struct comp_unit): Delete sec_info_ptr field. 1585 1.1 christos (find_abstract_instance_name): Calculate DW_FORM_ref_addr relative 1586 1.1 christos to stash->info_ptr_memory, and check die_ref is within that memory. 1587 1.1 christos Set info_ptr_end correctly when another CU is refd. Check die_ref 1588 1.1 christos for DW_FORM_ref4 etc. is within CU. 1589 1.1 christos 1590 1.1 christos 2017-09-26 Alan Modra <amodra (a] gmail.com> 1591 1.1 christos 1592 1.1 christos PR 22205 1593 1.1 christos * dwarf2.c (concat_filename): Return "<unknown>" on NULL filename. 1594 1.1 christos (read_formatted_entries): Init "fe". 1595 1.1 christos (decode_line_info <DW_LNE_define_file>): Use line_info_add_file_name. 1596 1.1 christos 1597 1.1 christos 2017-09-26 Alan Modra <amodra (a] gmail.com> 1598 1.1 christos 1599 1.1 christos PR 22204 1600 1.1 christos * dwarf2.c (decode_line_info): Ensure line_ptr stays within 1601 1.1 christos bounds in inner loop. 1602 1.1 christos 1603 1.1 christos 2017-09-25 Alan Modra <amodra (a] gmail.com> 1604 1.1 christos 1605 1.1 christos PR 22202 1606 1.1 christos * dwarf1.c (parse_die): Sanity check pointer against section limit 1607 1.1 christos before dereferencing. 1608 1.1 christos (parse_line_table): Likewise. 1609 1.1 christos 1610 1.1 christos 2017-09-25 Alan Modra <amodra (a] gmail.com> 1611 1.1 christos 1612 1.1 christos PR 22201 1613 1.1 christos * dwarf2.c (scan_unit_for_symbols): Ignore DW_AT_name unless it 1614 1.1 christos has string form. 1615 1.1 christos (parse_comp_unit): Likewise. 1616 1.1 christos 1617 1.1 christos 2017-09-25 Alan Modra <amodra (a] gmail.com> 1618 1.1 christos 1619 1.1 christos PR 22200 1620 1.1 christos * dwarf2.c (read_formatted_entries): Error on format_count zero. 1621 1.1 christos 1622 1.1 christos 2017-09-24 Alan Modra <amodra (a] gmail.com> 1623 1.1 christos 1624 1.1 christos PR 22197 1625 1.1 christos * opncls.c (bfd_get_debug_link_info_1): Properly check that crc is 1626 1.1 christos within section bounds. 1627 1.1 christos 1628 1.1 christos 2017-09-24 Alan Modra <amodra (a] gmail.com> 1629 1.1 christos 1630 1.1 christos PR 22191 1631 1.1 christos * dwarf2.c (decode_line_info): Properly free line sequences on error. 1632 1.1 christos 1633 1.1 christos 2017-09-24 Alan Modra <amodra (a] gmail.com> 1634 1.1 christos 1635 1.1 christos PR 22187 1636 1.1 christos * dwarf2.c (find_abstract_instance_name): Add orig_info_ptr and 1637 1.1 christos pname param. Return status. Make name const. Don't abort, 1638 1.1 christos return an error. Formatting. Exit if current info_ptr matches 1639 1.1 christos orig_info_ptr. Update callers. 1640 1.1 christos (scan_unit_for_symbols): Start at nesting_level of zero. Make 1641 1.1 christos nested_funcs an array of structs for extensibility. Formatting. 1642 1.1 christos 1643 1.1 christos 2017-09-24 Alan Modra <amodra (a] gmail.com> 1644 1.1 christos 1645 1.1 christos PR 22186 1646 1.1 christos * dwarf2.c (decode_line_info): Fail on lh.line_range of zero 1647 1.1 christos rather than dividing by zero. 1648 1.1 christos 1649 1.1 christos 2017-09-24 Alan Modra <amodra (a] gmail.com> 1650 1.1 christos 1651 1.1 christos PR 22169 1652 1.1 christos * dwarf2.c (decode_line_info): Correct .debug_line unit_length check. 1653 1.1 christos 1654 1.1 christos 2017-09-24 Alan Modra <amodra (a] gmail.com> 1655 1.1 christos 1656 1.1 christos PR 22167 1657 1.1 christos * dwarf2.c (scan_unit_for_symbols): Check u.blk->data is non-NULL. 1658 1.1 christos 1659 1.1 christos 2017-09-24 Alan Modra <amodra (a] gmail.com> 1660 1.1 christos 1661 1.1 christos PR 22166 1662 1.1 christos * elf.c (_bfd_elf_slurp_version_tables): Test sh_info on 1663 1.1 christos SHT_GNU_verneed section for sanity. Don't zalloc memory for 1664 1.1 christos verref. 1665 1.1 christos 1666 1.1 christos 2017-09-22 H.J. Lu <hongjiu.lu (a] intel.com> 1667 1.1 christos 1668 1.1 christos PR binutils/22170 1669 1.1 christos * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Guard against 1670 1.1 christos corrupted PLT. 1671 1.1 christos 1672 1.1 christos 2017-09-22 H.J. Lu <hongjiu.lu (a] intel.com> 1673 1.1 christos 1674 1.1 christos PR binutils/22163 1675 1.1 christos * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Also return 1676 1.1 christos -1 if bfd_canonicalize_dynamic_reloc returns 0. 1677 1.1 christos 1678 1.1 christos 2017-09-22 Pedro Alves <palves (a] redhat.com> 1679 1.1 christos Alan Modra <amodra (a] gmail.com> 1680 1.1 christos 1681 1.1 christos * version.h: Add comment. 1682 1.1 christos 1683 1.1 christos 2017-09-21 Andreas Arnez <arnez (a] linux.vnet.ibm.com> 1684 1.1 christos 1685 1.1 christos * elf.c (elfcore_grok_note): For the cases NT_S390_GS_CB and 1686 1.1 christos NT_S390_GS_BC, correct the previously swapped invocations of 1687 1.1 christos elfcore_grok_s390_gs_bc and elfcore_grok_s390_gs_cb. 1688 1.1 christos 1689 1.1 christos 2017-09-19 Alan Modra <amodra (a] gmail.com> 1690 1.1 christos 1691 1.1 christos PR 21441 1692 1.1 christos * elf64-ppc.c (ppc64_elf_build_stubs): Don't check glink_eh_frame 1693 1.1 christos size. 1694 1.1 christos 1695 1.1 christos 2017-09-19 Alan Modra <amodra (a] gmail.com> 1696 1.1 christos 1697 1.1 christos PR 22150 1698 1.1 christos * elflink.c (bfd_elf_size_dynamic_sections): Garbage collect 1699 1.1 christos symbols before calculating verrefs. Don't renumber dynsyms 1700 1.1 christos after gc. Exclude .gnu.version when zero or one dynsym. 1701 1.1 christos Localize some vars and reindent. 1702 1.1 christos 1703 1.1 christos 2017-09-18 H.J. Lu <hongjiu.lu (a] intel.com> 1704 1.1 christos 1705 1.1 christos PR ld/22148 1706 1.1 christos * elfxx-x86.c (_bfd_x86_elf_get_synthetic_symtab): Check error 1707 1.1 christos return from bfd_canonicalize_dynamic_reloc. 1708 1.1 christos 1709 1.1 christos 2017-09-15 Alan Modra <amodra (a] gmail.com> 1710 1.1 christos 1711 1.1 christos PR 22116 1712 1.1 christos * archive.c (bfd_ar_hdr_from_filesystem): Detect when status.st_size 1713 1.1 christos overflows bfd_size_type. 1714 1.1 christos 1715 1.1 christos 2017-09-14 H.J. Lu <hongjiu.lu (a] intel.com> 1716 1.1 christos 1717 1.1 christos PR ld/22135 1718 1.1 christos * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument 1719 1.1 christos to indicate if conversion is performed. 1720 1.1 christos (elf_i386_check_relocs): Cache section contents and relocations 1721 1.1 christos if conversion is performed. 1722 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Cache section 1723 1.1 christos contents and relocations if conversion is performed. 1724 1.1 christos 1725 1.1 christos 2017-09-14 Nick Clifton <nickc (a] redhat.com> 1726 1.1 christos 1727 1.1 christos PR binutils/22113 1728 1.1 christos * peXXigen.c (pe_print_idata): Extend check for HintName vector 1729 1.1 christos entries. 1730 1.1 christos 1731 1.1 christos 2017-09-13 H.J. Lu <hongjiu.lu (a] intel.com> 1732 1.1 christos 1733 1.1 christos * elfxx-x86.h: Fix a typo in comments. 1734 1.1 christos 1735 1.1 christos 2017-09-09 Kamil Rytarowski <n54 (a] gmx.com> 1736 1.1 christos 1737 1.1 christos * elf32-nds32.c: Rename __BIT() to N32_BIT(). 1738 1.1 christos 1739 1.1 christos 2017-09-09 Alan Modra <amodra (a] gmail.com> 1740 1.1 christos 1741 1.1 christos * elf64-ppp.c (plt_stub_pad): Handle positive and negative 1742 1.1 christos plt_stub_align. 1743 1.1 christos 1744 1.1 christos 2017-09-09 H.J. Lu <hongjiu.lu (a] intel.com> 1745 1.1 christos 1746 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Update usage of 1747 1.1 christos UNDEFINED_WEAK_RESOLVED_TO_ZERO. 1748 1.1 christos (elf_i386_finish_dynamic_symbol): Likewise. 1749 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 1750 1.1 christos (elf_x86_64_finish_dynamic_symbol): Likewise. 1751 1.1 christos * elfxx-x86.c (elf_x86_allocate_dynrelocs): Likewise. 1752 1.1 christos (_bfd_x86_elf_fixup_symbol): Likewise. 1753 1.1 christos 1754 1.1 christos 2017-09-09 H.J. Lu <hongjiu.lu (a] intel.com> 1755 1.1 christos 1756 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't 1757 1.1 christos check has_non_got_reloc. 1758 1.1 christos 1759 1.1 christos 2017-09-09 H.J. Lu <hongjiu.lu (a] intel.com> 1760 1.1 christos 1761 1.1 christos PR ld/22115 1762 1.1 christos * elf32-i386.c (elf_i386_convert_load_reloc): Check linker_def. 1763 1.1 christos Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. 1764 1.1 christos * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Check 1765 1.1 christos linker_def. Don't use UNDEFINED_WEAK_RESOLVED_TO_ZERO. 1766 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Set local_ref 1767 1.1 christos and linker_def on __ehdr_start if it is referenced and not 1768 1.1 christos defined. 1769 1.1 christos (_bfd_x86_elf_link_symbol_references_local): Also set local_ref 1770 1.1 christos and return TRUE when building executable, if a symbol has 1771 1.1 christos non-GOT/non-PLT relocations in text section or there is no 1772 1.1 christos dynamic linker. 1773 1.1 christos * elfxx-x86.h (elf_x86_link_hash_entry): Add linker_def. 1774 1.1 christos 1775 1.1 christos 2017-09-08 H.J. Lu <hongjiu.lu (a] intel.com> 1776 1.1 christos 1777 1.1 christos * elfxx-x86.h: Update comments. 1778 1.1 christos 1779 1.1 christos 2017-09-08 H.J. Lu <hongjiu.lu (a] intel.com> 1780 1.1 christos 1781 1.1 christos * elf32-i386.c (elf_i386_link_setup_gnu_properties): Replace 1782 1.1 christos elf_x86_plt_layout_table with elf_x86_init_table. 1783 1.1 christos * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): 1784 1.1 christos Likewise. 1785 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): 1786 1.1 christos Likewise. 1787 1.1 christos * elfxx-x86.h (elf_x86_plt_layout_table): Renamed to ... 1788 1.1 christos (elf_x86_init_table): This. 1789 1.1 christos (_bfd_x86_elf_link_setup_gnu_properties): Replace 1790 1.1 christos elf_x86_plt_layout_table with elf_x86_init_table. 1791 1.1 christos 1792 1.1 christos 2017-09-07 H.J. Lu <hongjiu.lu (a] intel.com> 1793 1.1 christos 1794 1.1 christos * configure.ac (bfd_backends): Don't add elf64-x86-64.lo nor 1795 1.1 christos elf64.lo together with elfxx-x86.lo for 64-bit BFD. 1796 1.1 christos * configure: Regenerated. 1797 1.1 christos * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set r_info 1798 1.1 christos and r_sym fields of plt_layout. 1799 1.1 christos * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): 1800 1.1 christos Likewise. 1801 1.1 christos * elfxx-x86.c (elf_x86_64_is_reloc_section): Remove BFD64 check. 1802 1.1 christos (_bfd_x86_elf_link_hash_table_create): Likewise. Don't set 1803 1.1 christos r_info nor r_sym fields. 1804 1.1 christos (_bfd_x86_elf_link_setup_gnu_properties): Set r_info and r_sym 1805 1.1 christos fields of htab. 1806 1.1 christos * elfxx-x86.h (elf_x86_plt_layout_table): Add r_info and r_sym. 1807 1.1 christos 1808 1.1 christos 2017-09-07 Palmer Dabbelt <palmer (a] dabbelt.com> 1809 1.1 christos 1810 1.1 christos * (_bfd_riscv_relax_align): Call bfd_set_error and 1811 1.1 christos print an error message when unable to relax a .align directive. 1812 1.1 christos 1813 1.1 christos 2017-09-07 Palmer Dabbelt <palmer (a] dabbelt.com> 1814 1.1 christos 1815 1.1 christos * elfnn-riscv.c (riscv_zero_pcrel_hi_reloc): New function. 1816 1.1 christos (riscv_record_pcrel_hi_reloc): Add absolute argument. 1817 1.1 christos (riscv_elf_relocate_section): Call riscv_zero_pcrel_hi_reloc for 1818 1.1 christos R_RISCV_PCREL_HI20 relocs, and pass the result to 1819 1.1 christos riscv_record_pcrel_hi_reloc. 1820 1.1 christos 1821 1.1 christos 2017-09-07 H.J. Lu <hongjiu.lu (a] intel.com> 1822 1.1 christos 1823 1.1 christos * elf32-i386.c (elf_i386_convert_load_reloc): Add an argument, 1824 1.1 christos r_type_p. Remove the converted argument. Replace 1825 1.1 christos SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. Return 1826 1.1 christos the new relocation type via r_type_p. 1827 1.1 christos (elf_i386_relocate_section): Likewise. 1828 1.1 christos (elf_i386_finish_dynamic_symbol): Likewise. 1829 1.1 christos (need_convert_load): Removed. 1830 1.1 christos (check_relocs_failed): Updated. 1831 1.1 christos (elf_i386_check_relocs): Call elf_i386_convert_load_reloc, 1832 1.1 christos instead of setting need_convert_load. 1833 1.1 christos (_bfd_i386_elf_convert_load): Removed. 1834 1.1 christos * elf64-x86-64.c (need_convert_load): Removed. 1835 1.1 christos (check_relocs_failed): Updated. 1836 1.1 christos (elf_x86_64_convert_load_reloc): Add an argument, r_type_p. 1837 1.1 christos Replace SYMBOL_REFERENCES_LOCAL with SYMBOL_REFERENCES_LOCAL_P. 1838 1.1 christos Return the new relocation type via r_type_p. 1839 1.1 christos (elf_x86_64_check_relocs): Call elf_x86_64_convert_load_reloc, 1840 1.1 christos instead of setting need_convert_load. 1841 1.1 christos (elf_x86_64_check_relocs): Don't check PIC if relocation has 1842 1.1 christos been converted. 1843 1.1 christos (_bfd_x86_64_elf_convert_load): Removed. 1844 1.1 christos (elf_x86_64_relocate_section): Replace SYMBOL_REFERENCES_LOCAL 1845 1.1 christos with SYMBOL_REFERENCES_LOCAL_P. 1846 1.1 christos (elf_x86_64_finish_dynamic_symbol): Likewise. 1847 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Don't 1848 1.1 christos set convert_load. 1849 1.1 christos (_bfd_x86_elf_size_dynamic_sections): Don't call convert_load. 1850 1.1 christos (_bfd_x86_elf_link_symbol_references_local): New function. 1851 1.1 christos * elfxx-x86.h (SYMBOL_REFERENCES_LOCAL_P): New. 1852 1.1 christos (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Replace elf.forced_local with 1853 1.1 christos SYMBOL_REFERENCES_LOCAL_P. 1854 1.1 christos (elf_x86_link_hash_entry): Add local_ref. 1855 1.1 christos (elf_x86_link_hash_table): Remove convert_load. 1856 1.1 christos (_bfd_i386_elf_convert_load): Removed. 1857 1.1 christos (_bfd_x86_64_elf_convert_load): Likewise. 1858 1.1 christos (_bfd_x86_elf_link_symbol_references_local): New. 1859 1.1 christos 1860 1.1 christos 2017-09-06 H.J. Lu <hongjiu.lu (a] intel.com> 1861 1.1 christos 1862 1.1 christos * elf64-x86-64.c (R_X86_64_converted_reloc_bit): New. 1863 1.1 christos (elf_x86_64_info_to_howto): Get the real relocation type by 1864 1.1 christos masking out R_X86_64_converted_reloc_bit. 1865 1.1 christos (elf_x86_64_check_tls_transition): Get the real relocation type 1866 1.1 christos by masking out R_X86_64_converted_reloc_bit. 1867 1.1 christos (elf_x86_64_convert_load_reloc): Set R_X86_64_converted_reloc_bit 1868 1.1 christos instead of setting converted_reloc. 1869 1.1 christos (elf_x86_64_relocate_section): Check R_X86_64_converted_reloc_bit 1870 1.1 christos instead of converted_reloc. Get the real relocation type by 1871 1.1 christos masking out R_X86_64_converted_reloc_bit. 1872 1.1 christos (elf_x86_64_link_setup_gnu_properties): Verify that the value of 1873 1.1 christos R_X86_64_converted_reloc_bit is valid. 1874 1.1 christos * elfxx-x86.h (converted_reloc): Removed. 1875 1.1 christos 1876 1.1 christos 2017-09-06 H.J. Lu <hongjiu.lu (a] intel.com> 1877 1.1 christos 1878 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Don't change r_type 1879 1.1 christos when calling elf_i386_tls_transition. Don't use ELF32_R_TYPE 1880 1.1 christos to get the relocation type again. 1881 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Don't change 1882 1.1 christos r_type when calling elf_x86_64_tls_transition. Don't use 1883 1.1 christos ELF32_R_TYPE to get the relocation type again. 1884 1.1 christos 1885 1.1 christos 2017-09-05 H.J. Lu <hongjiu.lu (a] intel.com> 1886 1.1 christos 1887 1.1 christos * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Properly set 1888 1.1 christos converted_reloc. 1889 1.1 christos 1890 1.1 christos 2017-09-05 H.J. Lu <hongjiu.lu (a] intel.com> 1891 1.1 christos 1892 1.1 christos * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Remove the sec 1893 1.1 christos argument. Don't check relocation overflow. Avoid relocation 1894 1.1 christos overflow if --no-relax is used. Set converted_reloc on symbol 1895 1.1 christos if a GOTPCREL relocation is converted. 1896 1.1 christos (elf_x86_64_relocate_section): Issue a fatal error and suggest 1897 1.1 christos --no-relax if GOTPCREL relocation conversion leads to relocation 1898 1.1 christos overflow. 1899 1.1 christos * elfxx-x86.h (elf_x86_link_hash_entry): Add converted_reloc. 1900 1.1 christos 1901 1.1 christos 2017-09-05 Alexander Fedotov <alexander.fedotov (a] nxp.com> 1902 1.1 christos Edmar Wienskoski <edmar.wienskoski (a] nxp.com 1903 1.1 christos 1904 1.1 christos * elf32-ppc.c (ppc_elf_howto_raw): Add R_PPC_VLE_ADDR20. 1905 1.1 christos (ppc_elf_check_relocs): Handle it. 1906 1.1 christos (ppc_elf_vle_split20): New function. 1907 1.1 christos (ppc_elf_relocate_section): Handle R_PPC_VLE_ADDR20. 1908 1.1 christos 1909 1.1 christos 2017-09-03 H.J. Lu <hongjiu.lu (a] intel.com> 1910 1.1 christos 1911 1.1 christos PR ld/22071 1912 1.1 christos * elfxx-x86.c (elf_x86_allocate_dynrelocs): Set tlsdesc_plt 1913 1.1 christos for x86-64 if GOT_TLS_GDESC_P is true. 1914 1.1 christos 1915 1.1 christos 2017-09-03 Alan Modra <amodra (a] gmail.com> 1916 1.1 christos 1917 1.1 christos PR 22067 1918 1.1 christos * elfxx-x86.h (elf_x86_hash_table): Check is_elf_hash_table first. 1919 1.1 christos 1920 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1921 1.1 christos 1922 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize 1923 1.1 christos tls_get_addr for x86-64 in one place. 1924 1.1 christos 1925 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1926 1.1 christos 1927 1.1 christos * configure.ac (bfd_backends): Add elf64-x86-64.lo together 1928 1.1 christos with elfxx-x86.lo for 64-bit BFD. 1929 1.1 christos * configure: Regenerated. 1930 1.1 christos 1931 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1932 1.1 christos 1933 1.1 christos * elf32-i386.c (elf_i386_convert_load): Renamed to ... 1934 1.1 christos (_bfd_i386_elf_convert_load): This. Remove static. 1935 1.1 christos (elf_i386_size_dynamic_sections): Removed. 1936 1.1 christos (elf_backend_size_dynamic_sections): Likewise. 1937 1.1 christos * elf64-x86-64.c (elf_x86_64_convert_load): Renamed to ... 1938 1.1 christos (_bfd_x86_64_elf_convert_load): This. Remove static. 1939 1.1 christos (elf_x86_64_size_dynamic_sections): Removed. 1940 1.1 christos (elf_backend_size_dynamic_sections): Likewise. 1941 1.1 christos * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): Renamed to ... 1942 1.1 christos (elf_x86_allocate_dynrelocs): This. Make it static. 1943 1.1 christos (_bfd_x86_elf_allocate_local_dynrelocs): Renamed to ... 1944 1.1 christos (elf_x86_allocate_local_dynreloc): This. Make it static. 1945 1.1 christos (elf_i386_is_reloc_section): New function. 1946 1.1 christos (elf_x86_64_is_reloc_section): Likewise. 1947 1.1 christos (_bfd_x86_elf_link_hash_table_create): Initialize convert_load, 1948 1.1 christos is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. 1949 1.1 christos Rearrange got_entry_size initialization. 1950 1.1 christos (_bfd_x86_elf_size_dynamic_sections): New function. 1951 1.1 christos * elfxx-x86.h (elf_x86_link_hash_table): Add convert_load, 1952 1.1 christos is_reloc_section, dt_reloc, dt_reloc_sz and dt_reloc_ent. 1953 1.1 christos (_bfd_i386_elf_convert_load): New. 1954 1.1 christos (_bfd_x86_64_elf_convert_load): Likewise. 1955 1.1 christos (_bfd_x86_elf_size_dynamic_sections): Likewise. 1956 1.1 christos (elf_backend_size_dynamic_sections): Likewise. 1957 1.1 christos (_bfd_x86_elf_allocate_dynrelocs): Removed. 1958 1.1 christos (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. 1959 1.1 christos 1960 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1961 1.1 christos 1962 1.1 christos * elfxx-x86.h (elf_x86_link_hash_table): Rearrange fields and 1963 1.1 christos update comments. 1964 1.1 christos 1965 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1966 1.1 christos 1967 1.1 christos * elf32-i386.c (elf_i386_size_dynamic_sections): Set 1968 1.1 christos sgotplt_jump_table_size with elf_x86_compute_jump_table_size. 1969 1.1 christos 1970 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1971 1.1 christos 1972 1.1 christos * elf32-i386.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, 1973 1.1 christos PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Moved to ... 1974 1.1 christos * elfxx-x86.h (PLT_CIE_LENGTH, PLT_FDE_LENGTH, 1975 1.1 christos PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Here. 1976 1.1 christos * elf64-x86-64.c (PLT_CIE_LENGTH, PLT_FDE_LENGTH, 1977 1.1 christos PLT_FDE_START_OFFSET, PLT_FDE_LEN_OFFSET): Removed. 1978 1.1 christos 1979 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1980 1.1 christos 1981 1.1 christos * elf32-i386.c (elf_i386_allocate_dynrelocs): Removed. 1982 1.1 christos (elf_i386_allocate_local_dynrelocs): Likewise. 1983 1.1 christos (elf_i386_size_dynamic_sections): Replace 1984 1.1 christos elf_i386_allocate_dynrelocs/elf_i386_allocate_local_dynrelocs 1985 1.1 christos with _bfd_x86_elf_allocate_dynrelocs and 1986 1.1 christos _bfd_x86_elf_allocate_local_dynrelocs. 1987 1.1 christos * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Removed. 1988 1.1 christos (elf_x86_64_allocate_local_dynrelocs): Likewise. 1989 1.1 christos (elf_x86_64_size_dynamic_sections): Replace 1990 1.1 christos elf_x86_64_allocate_dynrelocs/elf_x86_64_allocate_local_dynrelocs 1991 1.1 christos with _bfd_x86_elf_allocate_dynrelocs and 1992 1.1 christos _bfd_x86_elf_allocate_local_dynrelocs. 1993 1.1 christos * elfxx-x86.c (_bfd_x86_elf_allocate_dynrelocs): New function. 1994 1.1 christos (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. 1995 1.1 christos * elfxx-x86.h (_bfd_x86_elf_allocate_dynrelocs): New prototype. 1996 1.1 christos (_bfd_x86_elf_allocate_local_dynrelocs): Likewise. 1997 1.1 christos 1998 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 1999 1.1 christos 2000 1.1 christos * elf32-i386.c (is_i386_elf): Removed. 2001 1.1 christos (elf_i386_check_relocs): Replace is_i386_elf with is_x86_elf. 2002 1.1 christos (elf_i386_size_dynamic_sections): Likewise. 2003 1.1 christos (elf_i386_relocate_section): Likewise. 2004 1.1 christos * elf64-x86-64.c (is_x86_64_elf): Removed. 2005 1.1 christos (elf_x86_64_check_relocs): Replace is_x86_64_elf with 2006 1.1 christos is_x86_elf. 2007 1.1 christos (elf_x86_64_size_dynamic_sections): Likewise. 2008 1.1 christos (elf_x86_64_relocate_section): Likewise. 2009 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize 2010 1.1 christos target_id. 2011 1.1 christos * elfxx-x86.h (elf_x86_link_hash_table): Add target_id. 2012 1.1 christos (is_x86_elf): New. 2013 1.1 christos 2014 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 2015 1.1 christos 2016 1.1 christos * elf32-i386.c (elf_i386_compute_jump_table_size): Removed. 2017 1.1 christos (elf_i386_allocate_dynrelocs): Replace 2018 1.1 christos elf_i386_compute_jump_table_size with 2019 1.1 christos elf_x86_compute_jump_table_size. 2020 1.1 christos (elf_i386_size_dynamic_sections): Likewise. 2021 1.1 christos * elf64-x86-64.c (elf_x86_64_compute_jump_table_size): Removed. 2022 1.1 christos (elf_x86_64_allocate_dynrelocs): Replace 2023 1.1 christos elf_x86_64_compute_jump_table_size with 2024 1.1 christos elf_x86_compute_jump_table_size. 2025 1.1 christos (elf_x86_64_size_dynamic_sections): Likewise. 2026 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize 2027 1.1 christos got_entry_size. 2028 1.1 christos * elfxx-x86.h (elf_x86_link_hash_table): Add got_entry_size. 2029 1.1 christos (elf_x86_compute_jump_table_size): New. 2030 1.1 christos 2031 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 2032 1.1 christos 2033 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Initialize 2034 1.1 christos sizeof_reloc. 2035 1.1 christos (_bfd_x86_elf_adjust_dynamic_symbol): Use sizeof_reloc. 2036 1.1 christos * elfxx-x86.h (elf_x86_link_hash_table): Add sizeof_reloc. 2037 1.1 christos 2038 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 2039 1.1 christos 2040 1.1 christos * elf32-i386.c (elf_i386_allocate_dynrelocs): Check VxWorks 2041 1.1 christos with htab->is_vxworks. 2042 1.1 christos (elf_i386_size_dynamic_sections): Likewise. 2043 1.1 christos (elf_i386_relocate_section): Likewise. 2044 1.1 christos (elf_i386_finish_dynamic_symbol): Likewise. 2045 1.1 christos (elf_i386_finish_dynamic_sections): Likewise. 2046 1.1 christos 2047 1.1 christos 2017-09-02 H.J. Lu <hongjiu.lu (a] intel.com> 2048 1.1 christos 2049 1.1 christos * elf32-i386.c (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, 2050 1.1 christos GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, 2051 1.1 christos GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Moved to ... 2052 1.1 christos * elfxx-x86.h (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, 2053 1.1 christos GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, 2054 1.1 christos GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Here. 2055 1.1 christos * elf64-x86-64.c (GOT_TLS_IE, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, 2056 1.1 christos GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Removed. 2057 1.1 christos 2058 1.1 christos 2017-09-01 H.J. Lu <hongjiu.lu (a] intel.com> 2059 1.1 christos 2060 1.1 christos PR ld/22064 2061 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Check 2062 1.1 christos ELF_COMMON_DEF_P for common symbols. 2063 1.1 christos 2064 1.1 christos 2017-09-02 Alan Modra <amodra (a] gmail.com> 2065 1.1 christos 2066 1.1 christos * elf-eh-frame.c (offset_adjust): Avoid false positive gcc warning. 2067 1.1 christos * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Likewise. 2068 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. 2069 1.1 christos 2070 1.1 christos 2017-09-01 H.J. Lu <hongjiu.lu (a] intel.com> 2071 1.1 christos 2072 1.1 christos * elf32-i386.c (elf_i386_gc_mark_hook): Removed. 2073 1.1 christos (elf_backend_gc_mark_hook): Likewise. 2074 1.1 christos * elf64-x86-64.c (elf_x86_64_gc_mark_hook): Likewise. 2075 1.1 christos (elf_backend_gc_mark_hook): Likewise. 2076 1.1 christos * elfxx-x86.c (_bfd_x86_elf_gc_mark_hook): New function. 2077 1.1 christos * elfxx-x86.h (_bfd_x86_elf_gc_mark_hook): New. 2078 1.1 christos (elf_backend_gc_mark_hook): Likewise. 2079 1.1 christos 2080 1.1 christos 2017-09-01 H.J. Lu <hongjiu.lu (a] intel.com> 2081 1.1 christos 2082 1.1 christos * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Removed. 2083 1.1 christos (elf_backend_adjust_dynamic_symbol): Likewise. 2084 1.1 christos * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. 2085 1.1 christos (elf_backend_adjust_dynamic_symbol): Likewise. 2086 1.1 christos * elfxx-x86.c (_bfd_x86_elf_adjust_dynamic_symbol): New function. 2087 1.1 christos (_bfd_x86_elf_link_setup_gnu_properties): Copy is_vxworks. 2088 1.1 christos * elfxx-x86.h (elf_x86_link_hash_table): Add is_vxworks. 2089 1.1 christos (_bfd_x86_elf_adjust_dynamic_symbol): New. 2090 1.1 christos (elf_backend_adjust_dynamic_symbol): Likewise. 2091 1.1 christos 2092 1.1 christos 2017-09-01 H.J. Lu <hongjiu.lu (a] intel.com> 2093 1.1 christos 2094 1.1 christos * elfxx-x86.h (elf_x86_plt_layout_table): Fix a typo in 2095 1.1 christos comments. 2096 1.1 christos 2097 1.1 christos 2017-09-01 H.J. Lu <hongjiu.lu (a] intel.com> 2098 1.1 christos 2099 1.1 christos * elf32-i386.c (elf_i386_mkobject): Removed. 2100 1.1 christos (bfd_elf32_mkobject): Likewise. 2101 1.1 christos * elf64-x86-64.c (elf_x86_64_mkobject): Likewise. 2102 1.1 christos (bfd_elf64_mkobject): Likewise. 2103 1.1 christos (bfd_elf32_mkobject): Likewise. 2104 1.1 christos * elfxx-x86.c (_bfd_x86_elf_mkobject): New function. 2105 1.1 christos * elfxx-x86.h (_bfd_x86_elf_mkobject): New. 2106 1.1 christos (bfd_elf64_mkobject): Likewise. 2107 1.1 christos (bfd_elf32_mkobject): Likewise. 2108 1.1 christos 2109 1.1 christos 2017-09-01 H.J. Lu <hongjiu.lu (a] intel.com> 2110 1.1 christos 2111 1.1 christos * elf32-i386.c (elf_i386_link_setup_gnu_properties): Updated. 2112 1.1 christos Call _bfd_x86_elf_link_setup_gnu_properties. 2113 1.1 christos * elf64-x86-64.c (elf_x86_lazy_plt_layout): Initialize 2114 1.1 christos pic_plt0_entry and pic_plt_entry fields with the non-PIC PLT 2115 1.1 christos entries. 2116 1.1 christos (elf_x86_64_non_lazy_plt): Likewise. 2117 1.1 christos (elf_x86_64_lazy_bnd_plt): Likewise. 2118 1.1 christos (elf_x86_64_non_lazy_bnd_plt): Likewise. 2119 1.1 christos (elf_x86_64_lazy_ibt_plt): Likewise. 2120 1.1 christos (elf_x32_lazy_ibt_plt): Likewise. 2121 1.1 christos (elf_x86_64_non_lazy_ibt_plt): Likewise. 2122 1.1 christos (elf_x32_non_lazy_ibt_plt): Likewise. 2123 1.1 christos (elf_x86_64_nacl_plt): Likewise. 2124 1.1 christos (elf_x86_64_link_setup_gnu_properties): Updated. Call 2125 1.1 christos _bfd_x86_elf_link_setup_gnu_properties. 2126 1.1 christos * elfxx-x86.c: Include elf-vxworks.h". 2127 1.1 christos (_bfd_x86_elf_link_setup_gnu_properties): New function. 2128 1.1 christos * elfxx-x86.h (elf_x86_lazy_plt_layout): Remove "for i386 only" 2129 1.1 christos comments for pic_plt0_entry and pic_plt_entry. 2130 1.1 christos (elf_x86_non_lazy_plt_layout): Likewise. 2131 1.1 christos (elf_x86_plt_layout_table): New. 2132 1.1 christos (_bfd_x86_elf_link_setup_gnu_properties): Likewise. 2133 1.1 christos 2134 1.1 christos 2017-09-01 H.J. Lu <hongjiu.lu (a] intel.com> 2135 1.1 christos 2136 1.1 christos PR ld/22061 2137 1.1 christos * elf32-i386.c (elf_i386_link_setup_gnu_properties): Create 2138 1.1 christos .eh_frame section for the second PLT. 2139 1.1 christos * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Correct 2140 1.1 christos alignment of .eh_frame section for the second PLT. 2141 1.1 christos 2142 1.1 christos 2017-09-01 Nick Clifton <nickc (a] redhat.com> 2143 1.1 christos 2144 1.1 christos PR 22059 2145 1.1 christos * dwarf2.c (decode_line_info): Fix test for an overlong line info 2146 1.1 christos structure. 2147 1.1 christos 2148 1.1 christos 2017-09-01 Nick Clifton <nickc (a] redhat.com> 2149 1.1 christos 2150 1.1 christos PR 22058 2151 1.1 christos * elf-attrs.c (_bfd_elf_parse_attributes): Ensure that the 2152 1.1 christos attribute buffer is NUL terminated. 2153 1.1 christos 2154 1.1 christos 2017-08-31 Nick Clifton <nickc (a] redhat.com> 2155 1.1 christos 2156 1.1 christos PR 22047 2157 1.1 christos * dwarf2.c (read_section): If necessary add a terminating NUL byte 2158 1.1 christos to dwarf string sections. 2159 1.1 christos 2160 1.1 christos 2017-08-31 Alan Modra <amodra (a] gmail.com> 2161 1.1 christos 2162 1.1 christos * po/SRC-POTFILES.in: Regenerate. 2163 1.1 christos 2164 1.1 christos 2017-08-31 Alan Modra <amodra (a] gmail.com> 2165 1.1 christos 2166 1.1 christos * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Don't exit early 2167 1.1 christos for a section containing just a terminator. Allow multiple 2168 1.1 christos terminators at end of section. 2169 1.1 christos * elflink.c (bfd_elf_discard_info): Iterate over .eh_frame 2170 1.1 christos sections when not adding alignment. Assert on terminator in 2171 1.1 christos the middle of FDEs. 2172 1.1 christos 2173 1.1 christos 2017-08-31 Alan Modra <amodra (a] gmail.com> 2174 1.1 christos 2175 1.1 christos PR 21441 2176 1.1 christos PR 22048 2177 1.1 christos * elflink.c (bfd_elf_discard_info): Don't pad embedded zero 2178 1.1 christos terminators. 2179 1.1 christos 2180 1.1 christos 2017-08-30 H.J. Lu <hongjiu.lu (a] intel.com> 2181 1.1 christos 2182 1.1 christos * configure.ac (bfd_backends): Add elf64.lo together with 2183 1.1 christos elfxx-x86.lo for 64-bit BFD. 2184 1.1 christos * configure: Regenerated. 2185 1.1 christos 2186 1.1 christos 2017-08-31 James Bowman <james.bowman (a] ftdichip.com> 2187 1.1 christos 2188 1.1 christos * elf32-ft32.c (ft32_elf_howto_table): Use complain_overflow_dont 2189 1.1 christos for R_FT32_18. 2190 1.1 christos 2191 1.1 christos 2017-08-31 Alan Modra <amodra (a] gmail.com> 2192 1.1 christos 2193 1.1 christos PR binutils/22032 2194 1.1 christos * opncls.c (bfd_close_all_done): Don't call bfd_cache_close 2195 1.1 christos before _close_and_cleanup. Call iovec->bclose after. 2196 1.1 christos (bfd_close): Remove code common to, and call, bfd_close_all_done. 2197 1.1 christos 2198 1.1 christos 2017-08-30 H.J. Lu <hongjiu.lu (a] intel.com> 2199 1.1 christos 2200 1.1 christos * elf32-i386.c (elf_i386_plt_type): Removed. 2201 1.1 christos (elf_i386_plt): Likewise. 2202 1.1 christos (elf_i386_get_synthetic_symtab): Updated. Call 2203 1.1 christos _bfd_x86_elf_get_synthetic_symtab. 2204 1.1 christos * elf64-x86-64.c (elf_x86_64_plt_type): Removed. 2205 1.1 christos (elf_x86_64_plt): Likewise. 2206 1.1 christos (elf_x86_64_get_synthetic_symtab): Updated. Call 2207 1.1 christos _bfd_x86_elf_get_synthetic_symtab. 2208 1.1 christos * elfxx-x86.c (elf_i386_get_plt_got_vma): New function. 2209 1.1 christos (elf_x86_64_get_plt_got_vma): Likewise. 2210 1.1 christos (elf_i386_valid_plt_reloc_p): Likewise. 2211 1.1 christos (elf_x86_64_valid_plt_reloc_p): Likewise. 2212 1.1 christos (_bfd_x86_elf_get_synthetic_symtab): Likewise. 2213 1.1 christos * elfxx-x86.h (elf_x86_plt_type): New. 2214 1.1 christos (elf_x86_plt): Likewise. 2215 1.1 christos (_bfd_x86_elf_get_synthetic_symtab): Likewise. 2216 1.1 christos 2217 1.1 christos 2017-08-30 H.J. Lu <hongjiu.lu (a] intel.com> 2218 1.1 christos 2219 1.1 christos * elfxx-x86.c (_bfd_x86_elf_link_hash_table_create): Check 2220 1.1 christos target_id instead of elf_machine_code. 2221 1.1 christos 2222 1.1 christos 2017-08-30 H.J. Lu <hongjiu.lu (a] intel.com> 2223 1.1 christos 2224 1.1 christos * elf32-i386.c (ELF_DYNAMIC_INTERPRETER): Removed. 2225 1.1 christos (elf_i386_lazy_plt_layout): Likewise. 2226 1.1 christos (elf_i386_non_lazy_plt_layout): Likewise. 2227 1.1 christos (elf_i386_plt_layout): Likewise. 2228 1.1 christos (elf_i386_link_hash_table): Likewise. 2229 1.1 christos (elf_i386_next_tls_desc_index): Likewise. 2230 1.1 christos (elf_i386_srelplt2): Likewise. 2231 1.1 christos (elf_i386_plt): Likewise. 2232 1.1 christos (elf_i386_lazy_plt): Likewise. 2233 1.1 christos (elf_i386_non_lazy_plt): Likewise. 2234 1.1 christos (elf_i386_link_hash_table_create): Likewise. 2235 1.1 christos (bfd_elf32_bfd_link_hash_table_create): Likewise. 2236 1.1 christos (elf_i386_lazy_plt): Updated. 2237 1.1 christos (elf_i386_non_lazy_plt): Likewise. 2238 1.1 christos (elf_i386_lazy_ibt_plt): Likewise. 2239 1.1 christos (elf_i386_non_lazy_ibt_plt): Likewise. 2240 1.1 christos (elf_i386_allocate_dynrelocs): Likewise. 2241 1.1 christos (elf_i386_size_dynamic_sections): Likewise. 2242 1.1 christos (elf_i386_relocate_section): Likewise. 2243 1.1 christos (elf_i386_finish_dynamic_symbol): Likewise. 2244 1.1 christos (elf_i386_finish_dynamic_sections): Likewise. 2245 1.1 christos (elf_i386_get_synthetic_symtab): Likewise. 2246 1.1 christos (elf_i386_link_setup_gnu_properties): Likewise. 2247 1.1 christos (elf_i386_nacl_plt): Likewise. 2248 1.1 christos * elf64-x86-64.c (ABI_64_P): Removed. 2249 1.1 christos (ELF64_DYNAMIC_INTERPRETER): Likewise. 2250 1.1 christos (ELF32_DYNAMIC_INTERPRETER): Likewise. 2251 1.1 christos (elf_x86_64_lazy_plt_layout): Likewise. 2252 1.1 christos (elf_x86_64_non_lazy_plt_layout): Likewise. 2253 1.1 christos (elf_x86_64_plt_layout): Likewise. 2254 1.1 christos (elf_x86_64_link_hash_table): Likewise. 2255 1.1 christos (elf_x86_64_plt): Likewise. 2256 1.1 christos (elf_x86_64_lazy_plt): Likewise. 2257 1.1 christos (elf_x86_64_non_lazy_plt): Likewise. 2258 1.1 christos (elf_x86_64_link_hash_table_create): Likewise. 2259 1.1 christos (bfd_elf64_bfd_link_hash_table_create): Likewise. 2260 1.1 christos (bfd_elf32_bfd_link_hash_table_create): Likewise. 2261 1.1 christos (elf_x86_64_lazy_plt): Updated. 2262 1.1 christos (elf_x86_64_non_lazy_plt): Likewise. 2263 1.1 christos (elf_x86_64_lazy_bnd_plt): Likewise. 2264 1.1 christos (elf_x86_64_non_lazy_bnd_plt): Likewise. 2265 1.1 christos (elf_x86_64_lazy_ibt_plt): Likewise. 2266 1.1 christos (elf_x32_lazy_ibt_plt): Likewise. 2267 1.1 christos (elf_x86_64_non_lazy_ibt_plt): Likewise. 2268 1.1 christos (elf_x32_non_lazy_ibt_plt): Likewise. 2269 1.1 christos (elf_x86_64_allocate_dynrelocs): Likewise. 2270 1.1 christos (elf_x86_64_size_dynamic_sections): Likewise. 2271 1.1 christos (elf_x86_64_relocate_section): Likewise. 2272 1.1 christos (elf_x86_64_finish_dynamic_symbol): Likewise. 2273 1.1 christos (elf_x86_64_finish_dynamic_sections): Likewise. 2274 1.1 christos (elf_x86_64_get_synthetic_symtab): Likewise. 2275 1.1 christos (elf_x86_64_link_setup_gnu_properties): Likewise. 2276 1.1 christos (elf_x86_64_nacl_plt): Likewise. 2277 1.1 christos * elfxx-x86.c: Include "objalloc.h", "elf/i386.h" and 2278 1.1 christos "elf/x86-64.h". 2279 1.1 christos (ELF32_DYNAMIC_INTERPRETER): New. 2280 1.1 christos (ELF64_DYNAMIC_INTERPRETER): Likewise. 2281 1.1 christos (ELFX32_DYNAMIC_INTERPRETER): Likewise. 2282 1.1 christos (_bfd_x86_elf_link_hash_table_create): Likewise. 2283 1.1 christos (_bfd_x86_elf_link_hash_table_free): Renamed to ... 2284 1.1 christos (elf_x86_link_hash_table_free): This. Make it static. 2285 1.1 christos * elfxx-x86.h: Don't include "objalloc.h". 2286 1.1 christos (ABI_64_P): New. 2287 1.1 christos (elf_x86_lazy_plt_layout): Likewise. 2288 1.1 christos (elf_x86_non_lazy_plt_layout): Likewise. 2289 1.1 christos (elf_x86_plt_layout): Likewise. 2290 1.1 christos (_bfd_x86_elf_link_hash_table_create): Likewise. 2291 1.1 christos (bfd_elf64_bfd_link_hash_table_create): Likewise. 2292 1.1 christos (bfd_elf32_bfd_link_hash_table_create): Likewise. 2293 1.1 christos (elf_x86_link_hash_table): Add plt, lazy_plt, non_lazy_plt, 2294 1.1 christos srelplt2 and next_tls_desc_index. 2295 1.1 christos (_bfd_x86_elf_link_hash_table_free): Removed. 2296 1.1 christos 2297 1.1 christos 2017-08-30 Maciej W. Rozycki <macro (a] imgtec.com> 2298 1.1 christos 2299 1.1 christos * elfxx-mips.c (mips_elf_perform_relocation): Correct microMIPS 2300 1.1 christos branch offset interpretation. 2301 1.1 christos 2302 1.1 christos 2017-08-30 H.J. Lu <hongjiu.lu (a] intel.com> 2303 1.1 christos 2304 1.1 christos PR binutils/22032 2305 1.1 christos * opncls.c (bfd_close_all_done): Call _close_and_cleanup. 2306 1.1 christos 2307 1.1 christos 2017-08-30 H.J. Lu <hongjiu.lu (a] intel.com> 2308 1.1 christos 2309 1.1 christos * elf64-x86-64.c (elf_x86_64_next_tls_desc_index): Removed. 2310 1.1 christos (elf_x86_64_srelplt2): Likewise. 2311 1.1 christos 2312 1.1 christos 2017-08-30 Alan Modra <amodra (a] gmail.com> 2313 1.1 christos 2314 1.1 christos * elf64-ppc.c (struct ppc_link_hash_table): Add do_tls_opt. 2315 1.1 christos (ppc64_elf_tls_optimize): Set it. 2316 1.1 christos (ppc64_elf_relocate_section): Nop addis on TPREL16_HA, and convert 2317 1.1 christos insn on TPREL16_LO and TPREL16_LO_DS relocs to use r13 when 2318 1.1 christos addis would add zero. 2319 1.1 christos * elf32-ppc.c (struct ppc_elf_link_hash_table): Add do_tls_opt. 2320 1.1 christos (ppc_elf_tls_optimize): Set it. 2321 1.1 christos (ppc_elf_relocate_section): Nop addis on TPREL16_HA, and convert 2322 1.1 christos insn on TPREL16_LO relocs to use r2 when addis would add zero. 2323 1.1 christos 2324 1.1 christos 2017-08-30 Alan Modra <amodra (a] gmail.com> 2325 1.1 christos 2326 1.1 christos * elf64-ppc.c (ppc64_elf_relocate_section): When optimizing 2327 1.1 christos __tls_get_addr call sequences to LE, don't move the addi down 2328 1.1 christos to the nop. Replace the bl with addi and leave the nop alone. 2329 1.1 christos 2330 1.1 christos 2017-08-29 H.J. Lu <hongjiu.lu (a] intel.com> 2331 1.1 christos 2332 1.1 christos * elf32-i386.c (elf_i386_pie_finish_undefweak_symbol): 2333 1.1 christos Re-indent. 2334 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_local_dynamic_symbol): 2335 1.1 christos Likewise. 2336 1.1 christos (elf_x86_64_pie_finish_undefweak_symbol): Likewise. 2337 1.1 christos 2338 1.1 christos 2017-08-29 H.J. Lu <hongjiu.lu (a] intel.com> 2339 1.1 christos 2340 1.1 christos * Makefile.am (BFD32_BACKENDS): Add elfxx-x86.lo. 2341 1.1 christos (BFD64_BACKENDS): Likewise. 2342 1.1 christos (BFD32_BACKENDS_CFILES): Add elfxx-x86.c. 2343 1.1 christos (BFD64_BACKENDS_CFILES): Likewise. 2344 1.1 christos * Makefile.in: Regenerated. 2345 1.1 christos * configure.ac (bfd_backends): Add elfxx-x86.lo together with 2346 1.1 christos elf32-i386.lo and elf64-x86-64.lo. 2347 1.1 christos * configure: Regenerated. 2348 1.1 christos * elf32-i386.c: Include "elfxx-x86.h" instead of "sysdep.h", 2349 1.1 christos "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", 2350 1.1 christos "objalloc.h" and "hashtab.h". 2351 1.1 christos (ELIMINATE_COPY_RELOCS): Removed. 2352 1.1 christos (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. 2353 1.1 christos (SYMBOL_NO_COPYRELOC): Likewise. 2354 1.1 christos (elf_i386_link_hash_entry): Likewise. 2355 1.1 christos (GOT_UNKNOWN): Likewise. 2356 1.1 christos (GOT_NORMAL): Likewise. 2357 1.1 christos (GOT_TLS_GD): Likewise. 2358 1.1 christos (elf_i386_hash_entry): Likewise. 2359 1.1 christos (elf_i386_obj_tdata): Likewise. 2360 1.1 christos (elf_i386_tdata): Likewise. 2361 1.1 christos (elf_i386_local_got_tls_type): Likewise. 2362 1.1 christos (elf_i386_local_tlsdesc_gotent): Likewise. 2363 1.1 christos (elf_i386_hash_table): Likewise. 2364 1.1 christos (elf_i386_link_hash_newfunc): Likewise. 2365 1.1 christos (elf_i386_local_htab_hash): Likewise. 2366 1.1 christos (elf_i386_local_htab_eq): Likewise. 2367 1.1 christos (elf_i386_get_local_sym_hash): Likewise. 2368 1.1 christos (elf_i386_link_hash_table_free): Likewise. 2369 1.1 christos (elf_i386_copy_indirect_symbol): Likewise. 2370 1.1 christos (elf_i386_fixup_symbol): Likewise. 2371 1.1 christos (elf_i386_readonly_dynrelocs): Likewise. 2372 1.1 christos (elf_i386_always_size_sections): Likewise. 2373 1.1 christos (elf_i386_set_tls_module_base): Likewise. 2374 1.1 christos (elf_i386_dtpoff_base): Likewise. 2375 1.1 christos (compare_relocs): Likewise. 2376 1.1 christos (elf_i386_hash_symbol): Likewise. 2377 1.1 christos (elf_i386_parse_gnu_properties): Likewise. 2378 1.1 christos (elf_i386_merge_gnu_properties): Likewise. 2379 1.1 christos (elf_i386_link_check_relocs): Likewise. 2380 1.1 christos (elf_i386_merge_symbol_attribute): Likewise. 2381 1.1 christos (bfd_elf32_bfd_link_check_relocs): Likewise. 2382 1.1 christos (elf_backend_copy_indirect_symbol): Likewise. 2383 1.1 christos (elf_backend_always_size_sections): Likewise. 2384 1.1 christos (elf_backend_omit_section_dynsym): Likewise. 2385 1.1 christos (elf_backend_hash_symbol): Likewise. 2386 1.1 christos (elf_backend_fixup_symbol): Likewise. 2387 1.1 christos (elf_backend_parse_gnu_properties): Likewise. 2388 1.1 christos (elf_backend_merge_gnu_properties): Likewise. 2389 1.1 christos (elf_backend_merge_symbol_attribute): Likewise. 2390 1.1 christos (elf_i386_mkobject): Updated. 2391 1.1 christos (elf_i386_link_hash_table_create): Likewise. 2392 1.1 christos (elf_i386_check_tls_transition): Likewise. 2393 1.1 christos (elf_i386_tls_transition): Likewise. 2394 1.1 christos (elf_i386_convert_load_reloc): Likewise. 2395 1.1 christos (elf_i386_check_relocs): Likewise. 2396 1.1 christos (elf_i386_adjust_dynamic_symbol): Likewise. 2397 1.1 christos (elf_i386_allocate_dynrelocs): Likewise. 2398 1.1 christos (elf_i386_convert_load): Likewise. 2399 1.1 christos (elf_i386_size_dynamic_sections): Likewise. 2400 1.1 christos (elf_i386_relocate_section): Likewise. 2401 1.1 christos (elf_i386_finish_dynamic_symbol ): Likewise. 2402 1.1 christos (elf_i386_finish_dynamic_sections): Likewise. 2403 1.1 christos (elf_i386_output_arch_local_syms): Likewise. 2404 1.1 christos (elf_i386_get_synthetic_symtab): Likewise. 2405 1.1 christos (elf_i386_link_setup_gnu_properties): Likewise. 2406 1.1 christos (elf_i386_link_hash_table): Use elf_x86_link_hash_table, instead 2407 1.1 christos of elf_link_hash_table, as base. 2408 1.1 christos (elf_i386_next_tls_desc_index): New. 2409 1.1 christos (elf_i386_srelplt2): Likewise. 2410 1.1 christos (elf_i386_plt): Likewise. 2411 1.1 christos (elf_i386_lazy_plt): Likewise. 2412 1.1 christos (elf_i386_non_lazy_plt): Likewise. 2413 1.1 christos * elf32-x86-64.c: Include "elfxx-x86.h" instead of "sysdep.h", 2414 1.1 christos "bfd.h", "bfdlink.h", "libbfd.h", "elf-bfd.h", "bfd_stdint.h", 2415 1.1 christos "objalloc.h" and "hashtab.h". 2416 1.1 christos (ELIMINATE_COPY_RELOCS): Removed. 2417 1.1 christos (UNDEFINED_WEAK_RESOLVED_TO_ZERO):Likewise. 2418 1.1 christos (SYMBOL_NO_COPYRELOC): Likewise. 2419 1.1 christos (elf_x86_64_link_hash_entry): Likewise. 2420 1.1 christos (GOT_UNKNOWN): Likewise. 2421 1.1 christos (GOT_NORMAL): Likewise. 2422 1.1 christos (GOT_TLS_GD): Likewise. 2423 1.1 christos (elf_x86_64_hash_entry): Likewise. 2424 1.1 christos (elf_x86_64_obj_tdata): Likewise. 2425 1.1 christos (elf_x86_64_tdata): Likewise. 2426 1.1 christos (elf_x86_64_local_got_tls_type): Likewise. 2427 1.1 christos (elf_x86_64_local_tlsdesc_gotent): Likewise. 2428 1.1 christos (elf_x86_64_hash_table): Likewise. 2429 1.1 christos (elf_x86_64_link_hash_newfunc): Likewise. 2430 1.1 christos (elf_x86_64_local_htab_hash): Likewise. 2431 1.1 christos (elf_x86_64_local_htab_eq): Likewise. 2432 1.1 christos (elf_x86_64_get_local_sym_hash): Likewise. 2433 1.1 christos (elf_x86_64_link_hash_table_free): Likewise. 2434 1.1 christos (elf_x86_64_copy_indirect_symbol): Likewise. 2435 1.1 christos (elf_x86_64_fixup_symbol): Likewise. 2436 1.1 christos (elf_x86_64_readonly_dynrelocs): Likewise. 2437 1.1 christos (elf_x86_64_always_size_sections): Likewise. 2438 1.1 christos (elf_x86_64_set_tls_module_base): Likewise. 2439 1.1 christos (elf_x86_64_dtpoff_base): Likewise. 2440 1.1 christos (compare_relocs): Likewise. 2441 1.1 christos (elf_x86_64_merge_symbol_attribute): Likewise. 2442 1.1 christos (elf_x86_64_hash_symbol): Likewise. 2443 1.1 christos (elf_x86_64_parse_gnu_properties): Likewise. 2444 1.1 christos (elf_x86_64_merge_gnu_properties): Likewise. 2445 1.1 christos (elf_x86_64_link_check_relocs): Likewise. 2446 1.1 christos (elf_backend_copy_indirect_symbol): Likewise. 2447 1.1 christos (elf_backend_always_size_sections): Likewise. 2448 1.1 christos (bfd_elf64_bfd_link_check_relocs): Likewise. 2449 1.1 christos (elf_backend_merge_symbol_attribute): Likewise. 2450 1.1 christos (elf_backend_hash_symbol): Likewise. 2451 1.1 christos (elf_backend_omit_section_dynsym): Likewise. 2452 1.1 christos (elf_backend_fixup_symbol): Likewise. 2453 1.1 christos (elf_backend_parse_gnu_properties): Likewise. 2454 1.1 christos (elf_backend_merge_gnu_properties): Likewise. 2455 1.1 christos (bfd_elf32_bfd_link_check_relocs): Likewise. 2456 1.1 christos (elf_x86_64_mkobject): Updated. 2457 1.1 christos (elf_x86_64_link_hash_table_create): Likewise. 2458 1.1 christos (elf_x86_64_check_tls_transition): Likewise. 2459 1.1 christos (elf_x86_64_tls_transition): Likewise. 2460 1.1 christos (elf_x86_64_convert_load_reloc): Likewise. 2461 1.1 christos (elf_x86_64_check_relocs): Likewise. 2462 1.1 christos (elf_x86_64_adjust_dynamic_symbol): Likewise. 2463 1.1 christos (elf_x86_64_allocate_dynrelocs): Likewise. 2464 1.1 christos (elf_x86_64_convert_load): Likewise. 2465 1.1 christos (elf_x86_64_size_dynamic_sections): Likewise. 2466 1.1 christos (elf_x86_64_relocate_section): Likewise. 2467 1.1 christos (elf_x86_64_finish_dynamic_symbol ): Likewise. 2468 1.1 christos (elf_x86_64_finish_dynamic_sections): Likewise. 2469 1.1 christos (elf_x86_64_output_arch_local_syms): Likewise. 2470 1.1 christos (elf_x86_64_get_synthetic_symtab): Likewise. 2471 1.1 christos (elf_x86_64_link_setup_gnu_properties): Likewise. 2472 1.1 christos (elf_x86_64_link_hash_table): Use elf_x86_link_hash_table, 2473 1.1 christos instead of elf_link_hash_table, as base. 2474 1.1 christos (elf_x86_64_next_tls_desc_index): New. 2475 1.1 christos (elf_x86_64_srelplt2): Likewise. 2476 1.1 christos (elf_x86_64_plt): Likewise. 2477 1.1 christos (elf_x86_64_lazy_plt): Likewise. 2478 1.1 christos (elf_x86_64_non_lazy_plt): Likewise. 2479 1.1 christos * elfxx-x86.c: New file. 2480 1.1 christos * elfxx-x86.h: Likewise. 2481 1.1 christos 2482 1.1 christos 2017-08-29 H.J. Lu <hongjiu.lu (a] intel.com> 2483 1.1 christos 2484 1.1 christos * elf32-i386.c (elf_i386_get_synthetic_symtab): Simplify bad 2485 1.1 christos return. 2486 1.1 christos * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. 2487 1.1 christos 2488 1.1 christos 2017-08-29 H.J. Lu <hongjiu.lu (a] intel.com> 2489 1.1 christos 2490 1.1 christos * elf32-i386.c (elf_i386_get_synthetic_symtab): Check valid PLT 2491 1.1 christos sections before checking dynamic relocations and free invalid 2492 1.1 christos PLT section contents. 2493 1.1 christos * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. 2494 1.1 christos 2495 1.1 christos 2017-08-28 H.J. Lu <hongjiu.lu (a] intel.com> 2496 1.1 christos 2497 1.1 christos * elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): Removed. 2498 1.1 christos * elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): Likewise. 2499 1.1 christos 2500 1.1 christos 2017-08-28 H.J. Lu <hongjiu.lu (a] intel.com> 2501 1.1 christos 2502 1.1 christos PR binutils/22018 2503 1.1 christos * elf32-i386.c (elf_i386_get_synthetic_symtab): Check for valid 2504 1.1 christos PLT section size. 2505 1.1 christos * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. 2506 1.1 christos 2507 1.1 christos 2017-08-27 H.J. Lu <hongjiu.lu (a] intel.com> 2508 1.1 christos 2509 1.1 christos * elf32-i386.c (elf_i386_link_hash_newfunc): Initialize 2510 1.1 christos def_protected. 2511 1.1 christos * elf64-x86-64.c (elf_x86_64_link_hash_newfunc): Likewise. 2512 1.1 christos 2513 1.1 christos 2017-08-26 H.J. Lu <hongjiu.lu (a] intel.com> 2514 1.1 christos 2515 1.1 christos PR ld/21997 2516 1.1 christos * elf-bfd.h (elf_obj_tdata): Use ENUM_BITFIELD on object_id, 2517 1.1 christos dyn_lib_class and has_gnu_symbols. Change bad_symtab to bitfield. 2518 1.1 christos Add a has_no_copy_on_protected bitfield. 2519 1.1 christos (elf_has_no_copy_on_protected): New. 2520 1.1 christos * elf-properties.c (_bfd_elf_parse_gnu_properties): Set 2521 1.1 christos elf_has_no_copy_on_protected for GNU_PROPERTY_NO_COPY_ON_PROTECTED. 2522 1.1 christos (elf_merge_gnu_property_list): Likewise. 2523 1.1 christos (_bfd_elf_link_setup_gnu_properties): Set extern_protected_data 2524 1.1 christos to FALSE for elf_has_no_copy_on_protected. 2525 1.1 christos * elf32-i386.c (SYMBOL_NO_COPYRELOC): New. 2526 1.1 christos (elf_i386_link_hash_entry): Add def_protected. 2527 1.1 christos (elf_i386_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC 2528 1.1 christos when checking info->nocopyreloc. 2529 1.1 christos (elf_i386_link_setup_gnu_properties): Don't set 2530 1.1 christos extern_protected_data here. 2531 1.1 christos (elf_i386_merge_symbol_attribute): New function. 2532 1.1 christos (elf_backend_merge_symbol_attribute): New. 2533 1.1 christos * elf64-x86-64.c (SYMBOL_NO_COPYRELOC): New. 2534 1.1 christos (elf_x86_64_link_hash_entry): Add def_protected. 2535 1.1 christos (elf_x86_64_need_pic): Report protected symbol for def_protected. 2536 1.1 christos (elf_x86_64_adjust_dynamic_symbol): Also check SYMBOL_NO_COPYRELOC 2537 1.1 christos when checking info->nocopyreloc. 2538 1.1 christos (elf_x86_64_relocate_section): Also check for R_X86_64_PC32 2539 1.1 christos relocation run-time overflow and unresolvable R_X86_64_32S 2540 1.1 christos relocation against protected data symbol defined in shared object 2541 1.1 christos with GNU_PROPERTY_NO_COPY_ON_PROTECTED. 2542 1.1 christos (elf_x86_64_link_setup_gnu_properties): Don't set 2543 1.1 christos extern_protected_data here. 2544 1.1 christos (elf_x86_64_merge_symbol_attribute): New function. 2545 1.1 christos (elf_backend_merge_symbol_attribute): New. 2546 1.1 christos 2547 1.1 christos 2017-08-26 Alan Modra <amodra (a] gmail.com> 2548 1.1 christos 2549 1.1 christos * elf32-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. 2550 1.1 christos (ppc_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. 2551 1.1 christos (ppc_elf_relocate_section): Comment fix. 2552 1.1 christos * elf64-ppc.c (must_be_dyn_reloc): Use bfd_link_dll. Comment. 2553 1.1 christos (ppc64_elf_check_relocs): Only set DF_STATIC_TLS in shared libs. 2554 1.1 christos Support dynamic relocs for TPREL16 when non-pic too. 2555 1.1 christos (dec_dynrel_count): Adjust TPREL16 handling as per check_relocs. 2556 1.1 christos (ppc64_elf_relocate_section): Support dynamic relocs for TPREL16 2557 1.1 christos when non-pic too. 2558 1.1 christos 2559 1.1 christos 2017-08-25 H.J. Lu <hongjiu.lu (a] intel.com> 2560 1.1 christos 2561 1.1 christos * elf32-i386.c (elf_i386_link_hash_entry): Remove redundant 2562 1.1 christos "symbol" in comments. 2563 1.1 christos * elf64-x86-64.c (elf_x86_64_link_hash_entry): Likewise. 2564 1.1 christos 2565 1.1 christos 2017-08-24 H.J. Lu <hongjiu.lu (a] intel.com> 2566 1.1 christos 2567 1.1 christos PR ld/22001 2568 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Check for 2569 1.1 christos R_X86_64_PC32 relocation run-time overflow and unresolvable 2570 1.1 christos R_X86_64_32S relocation with -z nocopyreloc. 2571 1.1 christos 2572 1.1 christos 2017-08-24 H.J. Lu <hongjiu.lu (a] intel.com> 2573 1.1 christos 2574 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Revert the last change. 2575 1.1 christos Undefined symbols may not have a type. 2576 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 2577 1.1 christos 2578 1.1 christos 2017-08-23 H.J. Lu <hongjiu.lu (a] intel.com> 2579 1.1 christos 2580 1.1 christos * elf64-x86-64.c (elf_x86_64_need_pic): Add an argument for 2581 1.1 christos bfd_link_info. Report shared, PIE or PDE object based on 2582 1.1 christos bfd_link_info. 2583 1.1 christos (elf_x86_64_check_relocs): Update elf_x86_64_need_pic call. 2584 1.1 christos (elf_x86_64_relocate_section): Likewise. 2585 1.1 christos 2586 1.1 christos 2017-08-23 H.J. Lu <hongjiu.lu (a] intel.com> 2587 1.1 christos 2588 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Increment PLT count only 2589 1.1 christos for function symbols. 2590 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 2591 1.1 christos 2592 1.1 christos 2017-08-23 H.J. Lu <hongjiu.lu (a] intel.com> 2593 1.1 christos 2594 1.1 christos * elf32-i386.c (elf_i386_link_setup_gnu_properties): Set 2595 1.1 christos extern_protected_data to FALSE if GNU_PROPERTY_NO_COPY_ON_PROTECTED 2596 1.1 christos is set on any input relocatable file. 2597 1.1 christos * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise. 2598 1.1 christos 2599 1.1 christos 2017-08-23 Alan Modra <amodra (a] gmail.com> 2600 1.1 christos 2601 1.1 christos PR 21988 2602 1.1 christos * elf64-ppc.c (ensure_undef_dynamic): Rename from 2603 1.1 christos ensure_undefweak_dynamic. Handle undefined too. 2604 1.1 christos * elf32-ppc.c (ensure_undef_dynamic): Likewise. 2605 1.1 christos * elf32-hppa.c (ensure_undef_dynamic): Likewise. 2606 1.1 christos (allocate_dynrelocs): Discard undefined non-default visibility 2607 1.1 christos relocs first. Make undefined syms dynamic. Tidy goto. 2608 1.1 christos 2609 1.1 christos 2017-08-21 Alan Modra <amodra (a] gmail.com> 2610 1.1 christos H.J. Lu <hongjiu.lu (a] intel.com> 2611 1.1 christos 2612 1.1 christos PR ld/21964 2613 1.1 christos * elf-bfd.h (SYMBOLIC_BIND): Return TRUE for __start/__stop symbols. 2614 1.1 christos * elflink.c (bfd_elf_define_start_stop): Rewrite. 2615 1.1 christos 2616 1.1 christos 2017-08-21 Hans-Peter Nilsson <hp (a] bitrange.com> 2617 1.1 christos 2618 1.1 christos PR ld/20125 2619 1.1 christos * elf64-mmix.c (mmix_elf_relax_section): Correct handling of 2620 1.1 christos undefined weak symbols. 2621 1.1 christos 2622 1.1 christos 2017-08-18 Nick Clifton <nickc (a] redhat.com> 2623 1.1 christos 2624 1.1 christos PR binutils/21962 2625 1.1 christos * tekhex.c (getsym): Fix check for source pointer walking off the 2626 1.1 christos end of the input buffer. 2627 1.1 christos 2628 1.1 christos 2017-08-17 Szabolcs Nagy <szabolcs.nagy (a] arm.com> 2629 1.1 christos 2630 1.1 christos PR ld/18808 2631 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Skip IFUNC 2632 1.1 christos relocations in debug sections, change abort to _bfd_error_handler. 2633 1.1 christos 2634 1.1 christos 2017-08-14 Nick Clifton <nickc (a] redhat.com> 2635 1.1 christos 2636 1.1 christos PR 21957 2637 1.1 christos * elf.c (setup_group): Check for an empty or very small group 2638 1.1 christos section. 2639 1.1 christos * po/bfd.pot: Regenerate. 2640 1.1 christos 2641 1.1 christos 2017-08-14 Alan Modra <amodra (a] gmail.com> 2642 1.1 christos 2643 1.1 christos PR 21441 2644 1.1 christos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't add 2645 1.1 christos alignment padding here. 2646 1.1 christos * elflink.c (bfd_elf_discard_info): Add .eh_frame padding here 2647 1.1 christos in a reverse pass over sections. 2648 1.1 christos 2649 1.1 christos 2017-08-11 H.J. Lu <hongjiu.lu (a] intel.com> 2650 1.1 christos 2651 1.1 christos PR binutils/21943 2652 1.1 christos * elf32-i386.c (elf_i386_get_synthetic_symtab): Allocate space 2653 1.1 christos for @plt suffixes first. 2654 1.1 christos * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. 2655 1.1 christos 2656 1.1 christos 2017-08-08 Nick Clifton <nickc (a] redhat.com> 2657 1.1 christos 2658 1.1 christos PR 21916 2659 1.1 christos * elf-attrs.c (_bfd_elf_parse_attributes): Complain about very 2660 1.1 christos small section lengths. 2661 1.1 christos * elf.c (_bfd_elf_setup_sections): Skip empty entries in the group 2662 1.1 christos table. 2663 1.1 christos (elfcore_grok_freebsd_prstatus): Add checks to make sure that 2664 1.1 christos there is enough data present in the note. 2665 1.1 christos 2666 1.1 christos 2017-08-08 Alan Modra <amodra (a] gmail.com> 2667 1.1 christos 2668 1.1 christos PR 21017 2669 1.1 christos * elf32-microblaze.c (microblaze_elf_check_relocs): Don't bump 2670 1.1 christos got.refcount for GOTOFF relocs, just create .got section. 2671 1.1 christos 2672 1.1 christos 2017-08-07 H.J. Lu <hongjiu.lu (a] intel.com> 2673 1.1 christos 2674 1.1 christos * elflink.c (elf_link_add_object_symbols): Move common symbol 2675 1.1 christos check after bed->common_definition. 2676 1.1 christos 2677 1.1 christos 2017-08-07 Alan Modra <amodra (a] gmail.com> 2678 1.1 christos 2679 1.1 christos PR 21910 2680 1.1 christos * elflink.c (bfd_elf_final_link): Don't segfault when sections 2681 1.1 christos needed to define various dynamic tags have been discarded. 2682 1.1 christos 2683 1.1 christos 2017-08-07 Nick Clifton <nickc (a] redhat.com> 2684 1.1 christos 2685 1.1 christos PR 21884 2686 1.1 christos * elf32-i386.c (elf_i386_link_setup_gnu_properties): If the dynobj 2687 1.1 christos has not been set then use the bfd returned by 2688 1.1 christos _bfd_elf_link_setup_gnu_properties. If that is null then search 2689 1.1 christos through all the input bfds selecting the first normal, ELF format 2690 1.1 christos one. 2691 1.1 christos * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Likewise. 2692 1.1 christos 2693 1.1 christos 2017-08-06 H.J. Lu <hongjiu.lu (a] intel.com> 2694 1.1 christos 2695 1.1 christos * elf32-i386.c (elf_i386_link_hash_entry): Change tls_get_addr 2696 1.1 christos to 1 bit. 2697 1.1 christos (elf_i386_link_hash_newfunc): Initialize tls_get_addr to 0. 2698 1.1 christos (elf_i386_check_tls_transition): Check tls_get_addr directly. 2699 1.1 christos (elf_i386_convert_load_reloc): Update tls_get_addr check. 2700 1.1 christos (elf_i386_link_check_relocs): New function. 2701 1.1 christos (bfd_elf32_bfd_link_check_relocs): New. 2702 1.1 christos * elf64-x86-64.c (elf_x86_64_link_hash_entry): Change tls_get_addr 2703 1.1 christos to 1 bit. 2704 1.1 christos (elf_x86_64_link_hash_newfunc): Initialize tls_get_addr to 0. 2705 1.1 christos (elf_x86_64_check_tls_transition): Check tls_get_addr directly. 2706 1.1 christos (elf_x86_64_convert_load_reloc): Update tls_get_addr check. 2707 1.1 christos (elf_x86_64_link_check_relocs): New function. 2708 1.1 christos (bfd_elf64_bfd_link_check_relocs): New. 2709 1.1 christos (bfd_elf32_bfd_link_check_relocs): Likewise. 2710 1.1 christos 2711 1.1 christos 2017-08-06 H.J. Lu <hongjiu.lu (a] intel.com> 2712 1.1 christos 2713 1.1 christos PR ld/21903: 2714 1.1 christos * elflink.c (elf_link_add_object_symbols): Treat common symbol 2715 1.1 christos as undefined for --no-define-common. 2716 1.1 christos 2717 1.1 christos 2017-08-05 Alan Modra <amodra (a] gmail.com> 2718 1.1 christos 2719 1.1 christos * elf32-hppa.c (elf32_hppa_set_gp): Don't require an 2720 1.1 christos hppa_link_hash_table. 2721 1.1 christos 2722 1.1 christos 2017-08-02 Max Filippov <jcmvbkbc (a] gmail.com> 2723 1.1 christos 2724 1.1 christos * xtensa-isa.c (xtensa_isa_init): Don't update lookup table 2725 1.1 christos entries for sysregs with negative indices. 2726 1.1 christos 2727 1.1 christos 2017-08-01 Andreas Krebbel <krebbel (a] linux.vnet.ibm.com> 2728 1.1 christos 2729 1.1 christos * elf32-s390.c (elf_s390_finish_dynamic_sections): Skip if it 2730 1.1 christos isn't the S/390 specific elf data. 2731 1.1 christos * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. 2732 1.1 christos 2733 1.1 christos 2017-07-31 Kuan-Lin Chen <rufus (a] andestech.com> 2734 1.1 christos 2735 1.1 christos * elfxx-riscv.c (riscv_elf_add_sub_reloc): New function. 2736 1.1 christos * (howto_table) [R_RISCV_ADD8]: Use riscv_elf_add_sub_reloc. 2737 1.1 christos [R_RISCV_ADD16]: Likewise. 2738 1.1 christos [R_RISCV_ADD32]: Likewise. 2739 1.1 christos [R_RISCV_ADD64]: Likewise. 2740 1.1 christos [R_RISCV_SUB6]: Likewise. 2741 1.1 christos [R_RISCV_SUB8]: Likewise. 2742 1.1 christos [R_RISCV_SUB16]: Likewise. 2743 1.1 christos [R_RISCV_SUB32]: Likewise. 2744 1.1 christos [R_RISCV_SUB64]: Likewise. 2745 1.1 christos 2746 1.1 christos 2017-07-31 Alan Modra <amodra (a] gmail.com> 2747 1.1 christos 2748 1.1 christos * elf64-ppc.c (ppc64_elf_tls_setup): Warn on --plt-localentry 2749 1.1 christos without ld.so checks. 2750 1.1 christos 2751 1.1 christos 2017-07-29 Alan Modra <amodra (a] gmail.com> 2752 1.1 christos 2753 1.1 christos PR 21847 2754 1.1 christos * elf64-ppc.c (struct ppc_link_hash_entry): Add non_zero_localentry. 2755 1.1 christos (ppc64_elf_merge_symbol): Set non_zero_localentry. 2756 1.1 christos (is_elfv2_localentry0): Test non_zero_localentry. 2757 1.1 christos (ppc64_elf_tls_setup): Default to --no-plt-localentry. 2758 1.1 christos 2759 1.1 christos 2017-07-28 Andreas Krebbel <krebbel (a] linux.vnet.ibm.com> 2760 1.1 christos 2761 1.1 christos * elf32-s390.c (elf_s390_finish_dynamic_sections): Add NULL 2762 1.1 christos pointer check for htab->elf.irelplt. 2763 1.1 christos * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. 2764 1.1 christos 2765 1.1 christos 2017-07-27 Nick Clifton <nickc (a] redhat.com> 2766 1.1 christos 2767 1.1 christos PR 21840 2768 1.1 christos * mach-o.c (bfd_mach_o_read_symtab_strtab): Fail if the symtab 2769 1.1 christos size is -1. 2770 1.1 christos * nlmcode.h (nlm_swap_auxiliary_headers_in): Replace assertion 2771 1.1 christos with error return. 2772 1.1 christos * section.c (bfd_make_section_with_flags): Fail if the name or bfd 2773 1.1 christos are NULL. 2774 1.1 christos * vms-alpha.c (bfd_make_section_with_flags): Correct computation 2775 1.1 christos of end pointer. 2776 1.1 christos (evax_bfd_print_emh): Check for invalid string lengths. 2777 1.1 christos 2778 1.1 christos 2017-07-25 Nick Clifton <nickc (a] redhat.com> 2779 1.1 christos 2780 1.1 christos * po/fr.po: Updated French translation. 2781 1.1 christos 2782 1.1 christos 2017-07-25 Benjamin Green <bengreen5mx (a] gmail.com> 2783 1.1 christos 2784 1.1 christos PR 21824 2785 1.1 christos * elf32-msp430.c (msp430_elf_relax_section): Allow conversion of 2786 1.1 christos 16-bit absolute branches into 10-bit pc-relative branches on the 2787 1.1 christos MSP430 as well as the MSP430X. 2788 1.1 christos 2789 1.1 christos 2017-07-25 Alan Modra <amodra (a] gmail.com> 2790 1.1 christos 2791 1.1 christos * elf64-ppc.c (struct map_stub): Add tls_get_addr_opt_bctrl. 2792 1.1 christos (stub_eh_frame_size): New function. 2793 1.1 christos (ppc_size_one_stub): Set group tls_get_addr_opt_bctrl. 2794 1.1 christos (group_sections): Init group tls_get_addr_opt_bctrl. 2795 1.1 christos (ppc64_elf_size_stubs): Update sizing and initialization of 2796 1.1 christos .eh_frame. Iteration over stubs via group list. 2797 1.1 christos (ppc64_elf_build_stubs): Iterate over stubs via group list. 2798 1.1 christos (ppc64_elf_finish_dynamic_sections): Update finalization of 2799 1.1 christos .eh_frame. 2800 1.1 christos 2801 1.1 christos 2017-07-24 Nick Clifton <nickc (a] redhat.com> 2802 1.1 christos 2803 1.1 christos PR 21813 2804 1.1 christos * mach-o.c (bfd_mach_o_canonicalize_relocs): Pass the base address 2805 1.1 christos of the relocs to the canonicalize_one_reloc routine. 2806 1.1 christos * mach-o.h (struct bfd_mach_o_backend_data): Update the prototype 2807 1.1 christos for the _bfd_mach_o_canonicalize_one_reloc field. 2808 1.1 christos * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add 2809 1.1 christos res_base parameter. Use to check for corrupt pair relocs. 2810 1.1 christos * mach-o-aarch64.c (bfd_mach_o_arm64_canonicalize_one_reloc): 2811 1.1 christos Likewise. 2812 1.1 christos * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): 2813 1.1 christos Likewise. 2814 1.1 christos * mach-o-x86-64.c (bfd_mach_o_x86_64_canonicalize_one_reloc): 2815 1.1 christos Likewise. 2816 1.1 christos 2817 1.1 christos * vms-alpha.c (_bfd_vms_slurp_eihd): Make sure that there is 2818 1.1 christos enough data in the record before attempting to parse it. 2819 1.1 christos (_bfd_vms_slurp_eeom): Likewise. 2820 1.1 christos 2821 1.1 christos (_bfd_vms_slurp_egsd): Check for an invalid section index. 2822 1.1 christos (image_set_ptr): Likewise. 2823 1.1 christos (alpha_vms_slurp_relocs): Likewise. 2824 1.1 christos 2825 1.1 christos (alpha_vms_object_p): Check for a truncated record. 2826 1.1 christos 2827 1.1 christos 2017-07-24 Nick Clifton <nickc (a] redhat.com> 2828 1.1 christos 2829 1.1 christos PR 21803 2830 1.1 christos * reloc.c (_bfd_unrecognized_reloc): New function. Reports 2831 1.1 christos an unrecognized reloc and sets the bfd_error value. 2832 1.1 christos * libbfd.h: Regenerate. 2833 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Use the new 2834 1.1 christos function. 2835 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Likewise. 2836 1.1 christos * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. 2837 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 2838 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Likewise. 2839 1.1 christos * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. 2840 1.1 christos 2841 1.1 christos 2017-07-23 Alan Modra <amodra (a] gmail.com> 2842 1.1 christos 2843 1.1 christos * elf64-ppc.c (ppc64_elf_size_stubs): Correct advance to 2844 1.1 christos restore of LR. 2845 1.1 christos 2846 1.1 christos 2017-07-19 Szabolcs Nagy <szabolcs.nagy (a] arm.com> 2847 1.1 christos 2848 1.1 christos PR ld/18841 2849 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_reloc_type_class): Return 2850 1.1 christos reloc_class_ifunc for ifunc symbols. 2851 1.1 christos 2852 1.1 christos 2017-07-19 Nick Clifton <nickc (a] redhat.com> 2853 1.1 christos 2854 1.1 christos PR 21787 2855 1.1 christos * archive.c (bfd_generic_archive_p): If the bfd does not have the 2856 1.1 christos correct magic bytes at the start, set the error to wrong format 2857 1.1 christos and clear the format selector before returning NULL. 2858 1.1 christos 2859 1.1 christos 2017-07-19 Nick Clifton <nickc (a] redhat.com> 2860 1.1 christos 2861 1.1 christos PR 21786 2862 1.1 christos * coff-rs6000.c (_bfd_strntol): New function. 2863 1.1 christos (_bfd_strntoll): New function. 2864 1.1 christos (GET_VALUE_IN_FIELD): New macro. 2865 1.1 christos (EQ_VALUE_IN_FIELD): new macro. 2866 1.1 christos (_bfd_xcoff_slurp_armap): Use new macros. 2867 1.1 christos (_bfd_xcoff_archive_p): Likewise. 2868 1.1 christos (_bfd_xcoff_read_ar_hdr): Likewise. 2869 1.1 christos (_bfd_xcoff_openr_next_archived_file): Likewise. 2870 1.1 christos (_bfd_xcoff_stat_arch_elt): Likewise. 2871 1.1 christos * coff64-rs6000.c (_bfd_strntol): New function. 2872 1.1 christos (_bfd_strntoll): New function. 2873 1.1 christos (GET_VALUE_IN_FIELD): New macro. 2874 1.1 christos (xcoff64_slurp_armap): Use new macros. 2875 1.1 christos 2876 1.1 christos 2017-07-19 Claudiu Zissulescu <claziss (a] synopsys.com> 2877 1.1 christos John Eric Martin <John.Martin (a] emmicro-us.com> 2878 1.1 christos 2879 1.1 christos * bfd-in2.h: Regenerate. 2880 1.1 christos * libbfd.h: Regenerate. 2881 1.1 christos * elf32-arc.c (JLI): Define. 2882 1.1 christos * reloc.c: Add JLI relocations. 2883 1.1 christos 2884 1.1 christos 2017-07-18 Nick Clifton <nickc (a] redhat.com> 2885 1.1 christos 2886 1.1 christos PR 21775 2887 1.1 christos * coff-sh.c: Fix spelling typos. 2888 1.1 christos * compress.c: Likewise. 2889 1.1 christos * cpu-pdp11.c: Likewise. 2890 1.1 christos * ecofflink.c: Likewise. 2891 1.1 christos * elf-m10300.c: Likewise. 2892 1.1 christos * elf.c: Likewise. 2893 1.1 christos * elf32-arm.c: Likewise. 2894 1.1 christos * elf32-m68k.c: Likewise. 2895 1.1 christos * elf32-nds32.c: Likewise. 2896 1.1 christos * elf32-ppc.c: Likewise. 2897 1.1 christos * elf32-sh.c: Likewise. 2898 1.1 christos * elf32-v850.c: Likewise. 2899 1.1 christos * elf64-ppc.c: Likewise. 2900 1.1 christos * elf64-x86-64.c: Likewise. 2901 1.1 christos * elflink.c: Likewise. 2902 1.1 christos * elfnn-aarch64.c: Likewise. 2903 1.1 christos * elfxx-mips.c: Likewise. 2904 1.1 christos * som.c: Likewise. 2905 1.1 christos * sunos.c: Likewise. 2906 1.1 christos * vms-alpha.c: Likewise. 2907 1.1 christos * xcofflink.c: Likewise. 2908 1.1 christos 2909 1.1 christos 2017-07-18 Nick Clifton <nickc (a] redhat.com> 2910 1.1 christos 2911 1.1 christos PR binutils/21781 2912 1.1 christos * coffcode.h (handle_COMDAT): Replace abort with an error message 2913 1.1 christos and return. 2914 1.1 christos 2915 1.1 christos 2017-07-17 H.J. Lu <hongjiu.lu (a] intel.com> 2916 1.1 christos 2917 1.1 christos PR ld/21782 2918 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Limit PIC check 2919 1.1 christos to shared library. 2920 1.1 christos 2921 1.1 christos 2017-07-17 H.J. Lu <hongjiu.lu (a] intel.com> 2922 1.1 christos 2923 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Re-indent. 2924 1.1 christos 2925 1.1 christos 2017-07-16 Alan Modra <amodra (a] gmail.com> 2926 1.1 christos 2927 1.1 christos * elf64-ppc.c (ppc64_elf_relocate_section): Don't optimize 2928 1.1 christos __tls_index GOT entries when using __tls_get_addr_opt stub. 2929 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 2930 1.1 christos 2931 1.1 christos 2017-07-12 Alan Modra <amodra (a] gmail.com> 2932 1.1 christos 2933 1.1 christos * po/es.po: Update from translationproject.org/latest/bfd/. 2934 1.1 christos * po/fi.po: Likewise. 2935 1.1 christos * po/fr.po: Likewise. 2936 1.1 christos * po/id.po: Likewise. 2937 1.1 christos * po/ja.po: Likewise. 2938 1.1 christos * po/ro.po: Likewise. 2939 1.1 christos * po/ru.po: Likewise. 2940 1.1 christos * po/sr.po: Likewise. 2941 1.1 christos * po/sv.po: Likewise. 2942 1.1 christos * po/tr.po: Likewise. 2943 1.1 christos * po/uk.po: Likewise. 2944 1.1 christos * po/vi.po: Likewise. 2945 1.1 christos * po/zh_CN.po: Likewise. 2946 1.1 christos * po/hr.po: New file from translationproject.org. 2947 1.1 christos * configure.ac (ALL_LINGUAS): Add hr. Sort. 2948 1.1 christos * configure: Regenerate. 2949 1.1 christos 2950 1.1 christos 2017-07-12 Nick Clifton <nickc (a] redhat.com> 2951 1.1 christos 2952 1.1 christos Fix compile time warnings using gcc 7.1.1. 2953 1.1 christos * elf32-xtensa.c (elf_xtensa_get_plt_section): Increase length of 2954 1.1 christos plt_name buffer. 2955 1.1 christos (elf_xtensa_get_gotplt_section): Increase length of got_name 2956 1.1 christos buffer. 2957 1.1 christos * mach-o-arm.c (bfd_mach_o_arm_canonicalize_one_reloc): Add a 2958 1.1 christos default return of FALSE. 2959 1.1 christos * mach-o-i386.c (bfd_mach_o_i386_canonicalize_one_reloc): Add a 2960 1.1 christos default return of FALSE. 2961 1.1 christos 2962 1.1 christos 2017-07-12 Alan Modra <amodra (a] gmail.com> 2963 1.1 christos 2964 1.1 christos * binary.c (binary_set_section_contents): Don't print filepos in 2965 1.1 christos error message. 2966 1.1 christos (coff_write_object_contents): Cast size_t for error message. 2967 1.1 christos (coff_slurp_line_table): Don't use bfd_vma symndx. 2968 1.1 christos (coff_slurp_reloc_table): Remove unneeded cast. 2969 1.1 christos * dwarf2.c (read_section): Cast bfd_int64_t to long long for 2970 1.1 christos error message. 2971 1.1 christos (find_abstract_instance_name): Likewise. 2972 1.1 christos * elf32-arm.c (arm_type_of_stub): Correct error arg order. 2973 1.1 christos (bfd_elf32_arm_stm32l4xx_erratum_scan): Don't cast error arg. 2974 1.1 christos (elf32_arm_check_relocs): Make r_symndx an int. 2975 1.1 christos * elf32-cris.c (cris_elf_check_relocs): Delete extraneous %s in 2976 1.1 christos format string. 2977 1.1 christos * elf32-metag.c (elf_metag_relocate_section): Delete extra error 2978 1.1 christos message arg. 2979 1.1 christos * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Rewrite bogus 2980 1.1 christos error message. 2981 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Make r_symndx an int. 2982 1.1 christos * elf32-s390.c (elf_s390_check_relocs): Likewise. 2983 1.1 christos * elf32-tic6x.c (elf32_tic6x_check_relocs): Likewise. 2984 1.1 christos * elf32-tilepro.c (tilepro_elf_check_relocs): Likewise. 2985 1.1 christos * elf32-xtensa.c (elf_xtensa_check_relocs): Likewise. 2986 1.1 christos * elf64-s390.c (elf_s390_check_relocs): Likewise. 2987 1.1 christos * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise. 2988 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Likewise. 2989 1.1 christos * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. 2990 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. 2991 1.1 christos * elfxx-tilegx.c (tilegx_elf_check_relocs): Likewise. 2992 1.1 christos * elf64-mmix.c (_bfd_mmix_after_linker_allocation): Cast size_t args 2993 1.1 christos and use %lu for error message. 2994 1.1 christos * elflink.c (elf_link_adjust_relocs): Delete extra error message arg. 2995 1.1 christos * mmo.c (mmo_scan): Make stab_loc a file_ptr. Cast expression for 2996 1.1 christos error message. 2997 1.1 christos 2998 1.1 christos * elf32-arm.c (elf32_arm_tls_relax): Correct format string and args 2999 1.1 christos in error message. 3000 1.1 christos (elf32_arm_final_link_relocate): Likewise. 3001 1.1 christos * coff-arm.c (bfd_arm_process_before_allocation): Likewise. 3002 1.1 christos * coffcode.h (styp_to_sec_flags): Likewise. 3003 1.1 christos * cofflink.c (_bfd_coff_write_global_sym): Likewise. 3004 1.1 christos * ecoff.c (_bfd_ecoff_slurp_symbol_table): Likewise. 3005 1.1 christos * elf32-arc.c (arc_elf_merge_private_bfd_data): Likewise. 3006 1.1 christos * elf32-bfin.c (bfinfdpic_check_relocs): Likewise. 3007 1.1 christos (elf32_bfin_merge_private_bfd_data): Likewise. 3008 1.1 christos * elf32-cris.c (cris_elf_relocate_section): Likewise. 3009 1.1 christos * elf32-frv.c (frv_elf_merge_private_bfd_data): Likewise. 3010 1.1 christos * elf32-i370.c (i370_elf_merge_private_bfd_data): Likewise. 3011 1.1 christos (i370_elf_relocate_section): Likewise. 3012 1.1 christos * elf32-iq2000.c (iq2000_elf_merge_private_bfd_data): Likewise. 3013 1.1 christos * elf32-m32c.c (m32c_elf_merge_private_bfd_data): Likewise. 3014 1.1 christos * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Likewise. 3015 1.1 christos * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 3016 1.1 christos * elf32-mep.c (mep_elf_merge_private_bfd_data): Likewise. 3017 1.1 christos * elf32-mt.c (mt_elf_merge_private_bfd_data): Likewise. 3018 1.1 christos * elf64-sparc.c (elf64_sparc_merge_private_bfd_data): Likewise. 3019 1.1 christos * elfxx-mips.c (mips_elf_merge_obj_e_flags): Likewise. 3020 1.1 christos (_bfd_mips_elf_merge_private_bfd_data): Likewise. 3021 1.1 christos * ieee.c (ieee_write_id, read_id): Likewise. 3022 1.1 christos * mach-o.c (bfd_mach_o_write_contents): Likewise. 3023 1.1 christos (bfd_mach_o_layout_commands, bfd_mach_o_read_section_32): Likewise. 3024 1.1 christos (bfd_mach_o_read_section_64, bfd_mach_o_read_symtab_symbol): Likewise. 3025 1.1 christos (bfd_mach_o_read_command, bfd_mach_o_header_p): Likewise. 3026 1.1 christos * peXXigen.c (_bfd_XXi_swap_aouthdr_in): Likewise. 3027 1.1 christos * stabs.c (_bfd_link_section_stabs): Likewise. 3028 1.1 christos 3029 1.1 christos * coff-arm.c (coff_arm_relocate_section): Use L modifier in error 3030 1.1 christos format. 3031 1.1 christos * coff-mcore.c (coff_mcore_relocate_section): Likewise. 3032 1.1 christos * coff-ppc.c (coff_ppc_relocate_section): Likewise. 3033 1.1 christos * coff-rs6000.c (xcoff_reloc_type_toc): Likewise. 3034 1.1 christos * coff-sh.c (sh_relax_section): Likewise. 3035 1.1 christos (sh_relax_delete_bytes, sh_swap_insns): Likewise. 3036 1.1 christos * coff-tic80.c (coff_tic80_relocate_section): Likewise. 3037 1.1 christos * coffcode.h (coff_slurp_reloc_table): Likewise. 3038 1.1 christos * coffgen.c (_bfd_coff_get_external_symbols): Likewise. 3039 1.1 christos (_bfd_coff_read_string_table): Likewise. 3040 1.1 christos * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. 3041 1.1 christos * compress.c (bfd_get_full_section_contents): Likewise. 3042 1.1 christos * dwarf2.c (read_formatted_entries, decode_line_info): Likewise. 3043 1.1 christos * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 3044 1.1 christos * elf.c (bfd_elf_string_from_elf_section): Likewise. 3045 1.1 christos * elf32-arc.c (arc_special_overflow_checks): Likewise. 3046 1.1 christos * elf32-arm.c (elf32_arm_tls_relax): Likewise. 3047 1.1 christos (elf32_arm_final_link_relocate, elf32_arm_relocate_section): Likewise. 3048 1.1 christos (elf32_arm_write_section): Likewise. 3049 1.1 christos * elf32-bfin.c (bfin_relocate_section): Likewise. 3050 1.1 christos (bfinfdpic_relocate_section): Likewise. 3051 1.1 christos * elf32-hppa.c (hppa_build_one_stub): Likewise. 3052 1.1 christos (final_link_relocate, elf32_hppa_relocate_section): Likewise. 3053 1.1 christos * elf32-i386.c (elf_i386_tls_transition): Likewise. 3054 1.1 christos (elf_i386_relocate_section): Likewise. 3055 1.1 christos * elf32-ip2k.c (ip2k_final_link_relocate): Likewise. 3056 1.1 christos * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise. 3057 1.1 christos * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 3058 1.1 christos * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 3059 1.1 christos * elf32-metag.c (elf_metag_relocate_section): Likewise. 3060 1.1 christos * elf32-nds32.c (unrecognized_reloc_msg): Likewise. 3061 1.1 christos (nds32_elf_relax_longcall1, nds32_elf_relax_longcall2): Likewise. 3062 1.1 christos (nds32_elf_relax_longcall3, nds32_elf_relax_longjump1): Likewise. 3063 1.1 christos (nds32_elf_relax_longjump2, nds32_elf_relax_longjump3): Likewise. 3064 1.1 christos (nds32_elf_relax_longcall4, nds32_elf_relax_longcall5): Likewise. 3065 1.1 christos (nds32_elf_relax_longcall6, nds32_elf_relax_longjump4): Likewise. 3066 1.1 christos (nds32_elf_relax_longjump5, nds32_elf_relax_longjump6): Likewise. 3067 1.1 christos (nds32_elf_relax_longjump7, nds32_elf_relax_loadstore): Likewise. 3068 1.1 christos (nds32_elf_relax_ptr, nds32_elf_ex9_build_hash_table): Likewise. 3069 1.1 christos * elf32-nios2.c (nios2_elf32_relocate_section): Likewise. 3070 1.1 christos * elf32-rx.c (UNSAFE_FOR_PID): Likewise. 3071 1.1 christos * elf32-s390.c (invalid_tls_insn, elf_s390_relocate_section): Likewise. 3072 1.1 christos * elf32-score.c (s3_bfd_score_elf_check_relocs): Likewise. 3073 1.1 christos * elf32-score7.c (s7_bfd_score_elf_check_relocs): Likewise. 3074 1.1 christos * elf32-sh.c (sh_elf_relax_section): Likewise. 3075 1.1 christos (sh_elf_relax_delete_bytes, sh_elf_swap_insns): Likewise. 3076 1.1 christos (sh_elf_relocate_section): Likewise. 3077 1.1 christos * elf32-sh64.c (shmedia_prepare_reloc): Likewise. 3078 1.1 christos * elf32-spu.c (spu_elf_relocate_section): Likewise. 3079 1.1 christos * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. 3080 1.1 christos * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise. 3081 1.1 christos * elf32-v850.c (v850_elf_relax_section): Likewise. 3082 1.1 christos * elf32-vax.c (elf_vax_check_relocs): Likewise. 3083 1.1 christos (elf_vax_relocate_section): Likewise. 3084 1.1 christos * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 3085 1.1 christos (extend_ebb_bounds_forward, extend_ebb_bounds_backward): Likewise. 3086 1.1 christos (compute_text_actions, compute_ebb_proposed_actions): Likewise. 3087 1.1 christos (do_fix_for_relocatable_link): Likewise. 3088 1.1 christos * elf64-alpha.c (elf64_alpha_relax_got_load): Likewise. 3089 1.1 christos (elf64_alpha_relax_with_lituse): Likewise. 3090 1.1 christos * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Likewise. 3091 1.1 christos (elf_hppa_final_link_relocate): Likewise. 3092 1.1 christos * elf64-ia64-vms.c (elf64_ia64_relax_section): Likewise. 3093 1.1 christos (elf64_ia64_choose_gp, elf64_ia64_relocate_section): Likewise. 3094 1.1 christos (elf64_vms_link_add_object_symbols): Likewise. 3095 1.1 christos * elf64-mmix.c (mmix_elf_perform_relocation): Likewise. 3096 1.1 christos (mmix_final_link_relocate): Likewise. 3097 1.1 christos * elf64-s390.c (invalid_tls_insn): Likewise. 3098 1.1 christos (elf_s390_relocate_section): Likewise. 3099 1.1 christos * elf64-sh64.c (sh_elf64_relocate_section): Likewise. 3100 1.1 christos * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. 3101 1.1 christos (elf_x86_64_relocate_section): Likewise. 3102 1.1 christos * elfcode.h (elf_slurp_symbol_table): Likewise. 3103 1.1 christos * elfcore.h (elf_core_file_p): Likewise. 3104 1.1 christos * elflink.c (elf_link_read_relocs_from_section): Likewise. 3105 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. 3106 1.1 christos (elfNN_aarch64_relocate_section): Likewise. 3107 1.1 christos * elfnn-ia64.c (elfNN_ia64_relax_section): Likewise. 3108 1.1 christos (elfNN_ia64_choose_gp, elfNN_ia64_relocate_section): Likewise. 3109 1.1 christos * elfnn-riscv.c (riscv_elf_relocate_section): Likewise. 3110 1.1 christos * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. 3111 1.1 christos (_bfd_mips_elf_relocate_section): Likewise. 3112 1.1 christos (_bfd_mips_elf_finish_dynamic_symbol, mips_finish_exec_plt): Likewise. 3113 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 3114 1.1 christos * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise. 3115 1.1 christos * ieee.c (ieee_slurp_external_symbols): Likewise. 3116 1.1 christos * ihex.c (ihex_write_object_content): Likewise. 3117 1.1 christos * mach-o.c (bfd_mach_o_build_exec_seg_command): Likewise. 3118 1.1 christos * merge.c (_bfd_merged_section_offset): Likewise. 3119 1.1 christos * mmo.c (mmo_write_loc_chunk): Likewise. 3120 1.1 christos (mmo_write_object_contents): Likewise. 3121 1.1 christos * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Likewise. 3122 1.1 christos * stabs.c (_bfd_link_section_stabs): Likewise. 3123 1.1 christos * xcofflink.c (xcoff_link_add_symbols, xcoff_find_tc0): Likewise. 3124 1.1 christos 3125 1.1 christos 2017-07-11 Alan Modra <amodra (a] gmail.com> 3126 1.1 christos 3127 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Fix typo. 3128 1.1 christos 3129 1.1 christos 2017-07-11 Alan Modra <amodra (a] gmail.com> 3130 1.1 christos 3131 1.1 christos * elf32-ppc.c (ppc_elf_relocate_section): Emit "unexpected 3132 1.1 christos instruction" error using _bfd_error_handler, not einfo. 3133 1.1 christos 3134 1.1 christos 2017-07-10 Nick Clifton <nickc (a] redhat.com> 3135 1.1 christos 3136 1.1 christos * coffcode.h (coff_slurp_symbol_table): Do not include an entry 3137 1.1 christos for C_AIX_WEAKEXT if it has the same value as C_WEAKEXT. 3138 1.1 christos 3139 1.1 christos 2017-07-07 John Baldwin <jhb (a] FreeBSD.org> 3140 1.1 christos 3141 1.1 christos * elf.c (elfcore_grok_freebsd_note): Handle NT_FREEBSD_PTLWPINFO. 3142 1.1 christos 3143 1.1 christos 2017-07-07 Alan Modra <amodra (a] gmail.com> 3144 1.1 christos 3145 1.1 christos * coffcode.h (coff_slurp_symbol_table): Handle C_AIX_WEAKEXT. 3146 1.1 christos 3147 1.1 christos 2017-07-07 Alan Modra <amodra (a] gmail.com> 3148 1.1 christos 3149 1.1 christos * bfd.c (_doprnt): Replace "L" with "ll" when printing bfd_vma 3150 1.1 christos as long long. Move code replacing "ll" with "I64", and simplify. 3151 1.1 christos 3152 1.1 christos 2017-07-06 H.J. Lu <hongjiu.lu (a] intel.com> 3153 1.1 christos 3154 1.1 christos * bfd.c (_doprnt): Convert 'L' to 'l' when setting wide_width 3155 1.1 christos to 1. 3156 1.1 christos 3157 1.1 christos 2017-07-05 H.J. Lu <hongjiu.lu (a] intel.com> 3158 1.1 christos 3159 1.1 christos * dwarf2.c (line_info_add_include_dir_stub): Replace time with 3160 1.1 christos xtime. 3161 1.1 christos (line_info_add_file_name): Likewise. 3162 1.1 christos (decode_line_info): Likewise. 3163 1.1 christos 3164 1.1 christos 2017-07-04 Tristan Gingold <gingold (a] adacore.com> 3165 1.1 christos 3166 1.1 christos * version.m4: Bump version to 2.29.51 3167 1.1 christos * configure: Regenerate. 3168 1.1 christos 3169 1.1 christos 2017-07-04 Jiong Wang <jiong.wang (a] arm.com> 3170 1.1 christos 3171 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Remove the 3172 1.1 christos sanity check at the head of this function. 3173 1.1 christos 3174 1.1 christos 2017-07-04 Jan Kratochvil <jan.kratochvil (a] redhat.com> 3175 1.1 christos 3176 1.1 christos * dwarf2.c (struct dwarf2_debug): Add fields dwarf_line_str_buffer and 3177 1.1 christos dwarf_line_str_size. 3178 1.1 christos (struct attr_abbrev): Add field implicit_const. 3179 1.1 christos (dwarf_debug_sections): Add .debug_line_str. 3180 1.1 christos (enum dwarf_debug_section_enum): Add debug_line_str and debug_max. 3181 1.1 christos (dwarf_debug_section_assert): Add static assertion. 3182 1.1 christos (read_indirect_line_string): New. 3183 1.1 christos (read_abbrevs): Support DW_FORM_implicit_const. 3184 1.1 christos (is_str_attr): Support DW_FORM_line_strp. 3185 1.1 christos (read_attribute_value): Support DW_FORM_line_strp and 3186 1.1 christos DW_FORM_implicit_const. 3187 1.1 christos (read_attribute): Support DW_FORM_implicit_const. 3188 1.1 christos (line_info_add_include_dir, line_info_add_include_dir_stub): 3189 1.1 christos (line_info_add_file_name, read_formatted_entries): New. 3190 1.1 christos (decode_line_info, parse_comp_unit): Support DWARF 5. 3191 1.1 christos (_bfd_dwarf2_cleanup_debug_info): Free dwarf_line_str_buffer. 3192 1.1 christos 3193 1.1 christos 2017-07-03 Egeyar Bagcioglu <egeyar.bagcioglu (a] oracle.com> 3194 1.1 christos 3195 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Remove the 3196 1.1 christos abort statement that was put for symbols that are not dynamic. 3197 1.1 christos 3198 1.1 christos 2017-07-03 Tristan Gingold <gingold (a] adacore.com> 3199 1.1 christos 3200 1.1 christos * po/bfd.pot: Regenerate 3201 1.1 christos 3202 1.1 christos 2017-07-03 Alan Modra <amodra (a] gmail.com> 3203 1.1 christos 3204 1.1 christos * bfd.c (_doprnt): Rewrite "ll" and "L" modifiers to "I64" for 3205 1.1 christos __MSVCRT__. Support "L" modifier for bfd_vma. Formatting. 3206 1.1 christos * elf.c (setup_group): Use "Lx" to print sh_size. 3207 1.1 christos (_bfd_elf_setup_sections): Remove unnecessary cast and print 3208 1.1 christos unknown section type in hex. 3209 1.1 christos (copy_special_section_fields): Style fix. 3210 1.1 christos (bfd_section_from_shdr): Correct format for sh_link. Use a 3211 1.1 christos common error message for all the variants of unrecognized 3212 1.1 christos section types. 3213 1.1 christos (assign_file_positions_for_load_sections): Use "Lx" for lma 3214 1.1 christos adjust error message. 3215 1.1 christos (assign_file_positions_for_non_load_sections): Formatting. 3216 1.1 christos (rewrite_elf_program_header): Formatting. Use "Lx" for 3217 1.1 christos bfd_vma values in error messages. 3218 1.1 christos * elfcode.h (elf_slurp_reloc_table_from_section): Cast 3219 1.1 christos ELF_R_SYM value to type expected by format. 3220 1.1 christos * elflink.c (elf_link_read_relocs_from_section): Use "Lx" 3221 1.1 christos in error messages. 3222 1.1 christos (elf_link_add_object_symbols): Use "Lu" for symbol sizes. 3223 1.1 christos (elf_link_input_bfd): Use "Lx" for r_info. 3224 1.1 christos (bfd_elf_gc_record_vtinherit): Use "Lx" for offset. 3225 1.1 christos 3226 1.1 christos 2017-07-03 Alan Modra <amodra (a] gmail.com> 3227 1.1 christos 3228 1.1 christos * bfd.c (bfd_scan_vma): Don't use long long unless HAVE_LONG_LONG. 3229 1.1 christos * coff-rs6000.c (FMT20): Handle hosts with 64-bit long and 3230 1.1 christos Microsoft C library variant of long long format specifier. 3231 1.1 christos (PRINT20): Cast value to bfd_uint64_t not long long. 3232 1.1 christos * coffcode.h (coff_print_aux): Use BFD_VMA_FMT. 3233 1.1 christos * coff-x86_64.c (coff_amd64_reloc): Use bfd_uint64_t rather than 3234 1.1 christos long long. Don't cast to bfd_vma. 3235 1.1 christos * elf32-score.c (score3_bfd_getl48): Likewise. 3236 1.1 christos * vms-alpha.c (_bfd_vms_slurp_eisd): Likewise. 3237 1.1 christos 3238 1.1 christos 2017-07-03 Alan Modra <amodra (a] gmail.com> 3239 1.1 christos 3240 1.1 christos * elf.c (_bfd_elf_print_private_bfd_data): Use BFD_VMA_FMT to 3241 1.1 christos print d_tag. 3242 1.1 christos (bfd_elf_print_symbol): Don't cast symbol->flags. 3243 1.1 christos (_bfd_elf_symbol_from_bfd_symbol): Likewise. 3244 1.1 christos * elf32-ppc.c (ppc_elf_begin_write_processing): Correct 3245 1.1 christos _bfd_error_handler argument order. 3246 1.1 christos (ppc_elf_merge_private_bfd_data): Don't cast flags. 3247 1.1 christos 3248 1.1 christos 2017-07-03 Alan Modra <amodra (a] gmail.com> 3249 1.1 christos 3250 1.1 christos * configure.ac: Invoke AC_CHECK_TYPES for long long. Invoke 3251 1.1 christos AC_TYPE_LONG_DOUBLE. 3252 1.1 christos * configure: Regenerate. 3253 1.1 christos * config.in: Regenerate. 3254 1.1 christos 3255 1.1 christos 2017-06-29 Andrew Waterman <andrew (a] sifive.com> 3256 1.1 christos 3257 1.1 christos * elfnn-riscv.c (riscv_elf_adjust_dynamic_symbol): Fix TLS copy 3258 1.1 christos relocs. 3259 1.1 christos 3260 1.1 christos 2017-06-29 Egeyar Bagcioglu <egeyar.bagcioglu (a] oracle.com> 3261 1.1 christos 3262 1.1 christos * elfxx-sparc.c (allocate_dynrelocs): Don't make a symbol dynamic 3263 1.1 christos unless it is undefined weak. 3264 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Set the flag 3265 1.1 christos relative_reloc to direct non-dynamic symbols to R_SPARC_RELATIVE 3266 1.1 christos relocation. 3267 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): If symbol 3268 1.1 christos is not dynamic in PIC, abort. 3269 1.1 christos 3270 1.1 christos 2017-06-29 Jiong Wang <jiong.wang (a] arm.com> 3271 1.1 christos 3272 1.1 christos PR ld/21402 3273 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_allocate_dynrelocs): Only make 3274 1.1 christos undefined weak symbols into dynamic. 3275 1.1 christos (elfNN_aarch64_final_link_relocate): Generate runtime RELATIVE 3276 1.1 christos relocation for non-dynamic symbols. 3277 1.1 christos (elfNN_aarch64_finish_dynamic_symbol): Add sanity check. 3278 1.1 christos 3279 1.1 christos 2017-06-29 Jiong Wang <jiong.wang (a] arm.com> 3280 1.1 christos 3281 1.1 christos * elfnn-aarch64.c (aarch64_relocation_aginst_gp_p): New function. 3282 1.1 christos (elfNN_aarch64_final_link_relocate): Delete duplicated code for 3283 1.1 christos BFD_RELOC_AARCH64_LD64_GOTOFF_LO15, BFD_RELOC_AARCH64_MOVW_GOTOFF_G0_NC, 3284 1.1 christos BFD_RELOC_AARCH64_MOVW_GOTOFF_G1. 3285 1.1 christos * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Optimize the 3286 1.1 christos support for them. 3287 1.1 christos 3288 1.1 christos 2017-06-29 Andreas Arnez <arnez (a] linux.vnet.ibm.com> 3289 1.1 christos 3290 1.1 christos * elf-bfd.h (elfcore_write_s390_gs_cb): Add prototype. 3291 1.1 christos (elfcore_write_s390_gs_bc): Likewise. 3292 1.1 christos * elf.c (elfcore_grok_s390_gs_cb): New function. 3293 1.1 christos (elfcore_grok_s390_gs_bc): New function. 3294 1.1 christos (elfcore_grok_note): Call them. 3295 1.1 christos (elfcore_write_s390_gs_cb): New function. 3296 1.1 christos (elfcore_write_s390_gs_bc): New function. 3297 1.1 christos (elfcore_write_register_note): Call them. 3298 1.1 christos 3299 1.1 christos 2017-06-28 H.J. Lu <hongjiu.lu (a] intel.com> 3300 1.1 christos 3301 1.1 christos * libbfd.c (_bfd_generic_get_section_contents): Don't call 3302 1.1 christos bfd_get_file_size. Check archive element size. 3303 1.1 christos (_bfd_generic_get_section_contents_in_window): Likewise. 3304 1.1 christos 3305 1.1 christos 2017-06-28 H.J. Lu <hongjiu.lu (a] intel.com> 3306 1.1 christos 3307 1.1 christos * bfd-in2.h: Regenerated. 3308 1.1 christos * bfdio.c (bfd_get_size): Change return type to ufile_ptr. 3309 1.1 christos (bfd_get_file_size): Likewise. 3310 1.1 christos 3311 1.1 christos 2017-06-28 Maciej W. Rozycki <macro (a] imgtec.com> 3312 1.1 christos Matthew Fortune <matthew.fortune (a] imgtec.com> 3313 1.1 christos 3314 1.1 christos * archures.c (bfd_mach_mips_interaptiv_mr2): New macro. 3315 1.1 christos * cpu-mips.c (I_interaptiv_mr2): New enum value. 3316 1.1 christos (arch_info_struct): Add "mips:interaptiv-mr2" entry. 3317 1.1 christos * elfxx-mips.c (_bfd_elf_mips_mach) <E_MIPS_MACH_IAMR2>: New 3318 1.1 christos case. 3319 1.1 christos (mips_set_isa_flags) <bfd_mach_mips_interaptiv_mr2>: Likewise. 3320 1.1 christos (bfd_mips_isa_ext) <bfd_mach_mips_interaptiv_mr2>: Likewise. 3321 1.1 christos (print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise. 3322 1.1 christos (mips_mach_extensions): Add `bfd_mach_mipsisa32r3' and 3323 1.1 christos `bfd_mach_mips_interaptiv_mr2' entries. 3324 1.1 christos * bfd-in2.h: Regenerate. 3325 1.1 christos 3326 1.1 christos 2017-06-27 Nick Clifton <nickc (a] redhat.com> 3327 1.1 christos 3328 1.1 christos * tekhex.c (pass_over): Revert accidental conversion of a local 3329 1.1 christos array to a static array. 3330 1.1 christos 3331 1.1 christos 2017-06-27 Senthil Kumar Selvaraj <senthil_kumar.selvaraj (a] atmel.com> 3332 1.1 christos 3333 1.1 christos PR ld/13402 3334 1.1 christos * elf32-avr.c (elf32_avr_adjust_diff_reloc_value): Adjust 3335 1.1 christos reloc addend if necessary. Adjust diff only if 3336 1.1 christos shrinked_insn_address < end_address. 3337 1.1 christos 3338 1.1 christos 2017-06-27 Alan Modra <amodra (a] gmail.com> 3339 1.1 christos 3340 1.1 christos PR binutils/21665 3341 1.1 christos * libbfd.c (_bfd_generic_get_section_contents): Warning fix. 3342 1.1 christos (_bfd_generic_get_section_contents_in_window): Likewise. 3343 1.1 christos 3344 1.1 christos 2017-06-26 Kuan-Lin Chen <rufus (a] andestech.com> 3345 1.1 christos 3346 1.1 christos * elfnn-riscv.c (perform_relocation): Support the new 3347 1.1 christos R_RISCV_32_PCREL relocation. 3348 1.1 christos (riscv_elf_relocate_section): Likewise. 3349 1.1 christos * elfxx-riscv.c (howto_table): Likewise. 3350 1.1 christos (riscv_reloc_map): Likewise. 3351 1.1 christos * bfd-in2.h (BFD_RELOC_RISCV_32_PCREL): New relocation. 3352 1.1 christos * libbfd.h: Regenerate. 3353 1.1 christos 3354 1.1 christos 2017-06-27 Alan Modra <amodra (a] gmail.com> 3355 1.1 christos 3356 1.1 christos PR binutils/21665 3357 1.1 christos * libbfd.c (_bfd_generic_get_section_contents): Delete abort. 3358 1.1 christos Use unsigned file pointer type, and remove cast. 3359 1.1 christos * libbfd.c (_bfd_generic_get_section_contents_in_window): Likewise. 3360 1.1 christos Add "count", not "sz". 3361 1.1 christos 3362 1.1 christos 2017-06-26 Pedro Alves <palves (a] redhat.com> 3363 1.1 christos 3364 1.1 christos PR binutils/21665 3365 1.1 christos * libbfd.c (_bfd_generic_get_section_contents): Add "count", not 3366 1.1 christos "sz". 3367 1.1 christos 3368 1.1 christos 2017-06-26 H.J. Lu <hongjiu.lu (a] intel.com> 3369 1.1 christos 3370 1.1 christos PR binutils/21665 3371 1.1 christos * libbfd.c (_bfd_generic_get_section_contents_in_window): Add 3372 1.1 christos a missing line. 3373 1.1 christos 3374 1.1 christos 2017-06-26 Maciej W. Rozycki <macro (a] imgtec.com> 3375 1.1 christos 3376 1.1 christos * cpu-mips.c (arch_info_struct): Mark the 4010 32-bit. 3377 1.1 christos * elfxx-mips.c (mips_set_isa_flags) <bfd_mach_mips4010>: Set 3378 1.1 christos E_MIPS_ARCH_2 rather than E_MIPS_ARCH_3 in `e_flags'. 3379 1.1 christos (mips_mach_extensions): Mark `bfd_mach_mips4010' as extending 3380 1.1 christos `bfd_mach_mips6000' rather than `bfd_mach_mips4000'. 3381 1.1 christos 3382 1.1 christos 2017-06-26 H.J. Lu <hongjiu.lu (a] intel.com> 3383 1.1 christos 3384 1.1 christos PR binutils/21665 3385 1.1 christos * compress.c (bfd_get_full_section_contents): Don't check the 3386 1.1 christos file size here. 3387 1.1 christos * libbfd.c (_bfd_generic_get_section_contents): Check for and 3388 1.1 christos reject a section whose size + offset is greater than the size 3389 1.1 christos of the entire file. 3390 1.1 christos (_bfd_generic_get_section_contents_in_window): Likewise. 3391 1.1 christos 3392 1.1 christos 2017-06-26 Nick Clifton <nickc (a] redhat.com> 3393 1.1 christos 3394 1.1 christos PR binutils/21670 3395 1.1 christos * tekhex.c (getvalue): Check for the source pointer exceeding the 3396 1.1 christos end pointer before the first byte is read. 3397 1.1 christos 3398 1.1 christos 2017-06-26 Nick Clifton <nickc (a] redhat.com> 3399 1.1 christos 3400 1.1 christos PR binutils/21665 3401 1.1 christos * opncls.c (get_build_id): Check that the section is big enough 3402 1.1 christos to contain the whole note. 3403 1.1 christos * compress.c (bfd_get_full_section_contents): Check for and reject 3404 1.1 christos a section whose size is greater than the size of the entire file. 3405 1.1 christos * elf32-v850.c (v850_elf_copy_notes): Allow for the ouput to not 3406 1.1 christos contain a notes section. 3407 1.1 christos 3408 1.1 christos 2017-06-26 Andreas Krebbel <krebbel (a] linux.vnet.ibm.com> 3409 1.1 christos 3410 1.1 christos * elf64-s390.c (elf_s390_additional_program_headers): Add NULL 3411 1.1 christos pointer checks. 3412 1.1 christos (elf_s390_modify_segment_map): Likewise. 3413 1.1 christos (bfd_elf_s390_set_options): Lisewise. 3414 1.1 christos 3415 1.1 christos 2017-06-26 Alan Modra <amodra (a] gmail.com> 3416 1.1 christos 3417 1.1 christos * elflink.c (_bfd_elf_link_create_dynstrtab): Don't make dynobj 3418 1.1 christos a --just-syms bfd. 3419 1.1 christos (_bfd_elf_size_group_sections): Skip --just-syms bfds. 3420 1.1 christos (bfd_elf_size_dynamic_sections): Ignore .note.GNU-stack and 3421 1.1 christos .preinit_array on --just-syms bfds. 3422 1.1 christos (_bfd_elf_gc_mark_extra_sections): Skip --just-syms bfds. 3423 1.1 christos (elf_gc_sweep, bfd_elf_parse_eh_frame_entries): Likewise. 3424 1.1 christos (bfd_elf_gc_sections, bfd_elf_discard_info): Likewise. 3425 1.1 christos 3426 1.1 christos 2017-06-25 Sergei Trofimovich <slyfox (a] gentoo.org> 3427 1.1 christos 3428 1.1 christos * elf.c (find_link): Bounds check "hint". 3429 1.1 christos 3430 1.1 christos 2017-06-24 Thomas Preud'homme <thomas.preudhomme (a] arm.com> 3431 1.1 christos 3432 1.1 christos * elf32-arm.c (using_thumb_only): Update list of architectures in 3433 1.1 christos BFD_ASSERT for which the logic is valid. 3434 1.1 christos (using_thumb2_bl): Likewise. 3435 1.1 christos (using_thumb2): Likewise and return true for ARMv8-R. 3436 1.1 christos (arch_has_arm_nop): Likewise. 3437 1.1 christos (tag_cpu_arch_combine): New v8r table for ARMv8-R Tag_CPU_arch 3438 1.1 christos merging logic. Update commentis for value 15 of v8m_baseline, 3439 1.1 christos v8m_mainline and v4t_plus_v6_m arrays. Use v8r array to decide 3440 1.1 christos merging of value 15 of Tag_CPU_arch. 3441 1.1 christos 3442 1.1 christos 2017-06-23 Jiong Wang <jiong.wang (a] arm.com> 3443 1.1 christos 3444 1.1 christos * reloc.c (BFD_RELOC_AARCH64_ADR_GOTPAGE): Rename to 3445 1.1 christos BFD_RELOC_AARCH64_ADR_GOT_PAGE 3446 1.1 christos * bfd-in2.h: Regenerate. 3447 1.1 christos 3448 1.1 christos 2017-06-22 H.J. Lu <hongjiu.lu (a] intel.com> 3449 1.1 christos 3450 1.1 christos * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Move 3451 1.1 christos the error_alignment label forward. Properly align program 3452 1.1 christos property note section. 3453 1.1 christos 3454 1.1 christos 2017-06-22 Eric Christopher <echristo (a] gmail.com> 3455 1.1 christos 3456 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Use labs rather than 3457 1.1 christos abs to fix a truncation warning. 3458 1.1 christos 3459 1.1 christos 2017-06-22 H.J. Lu <hongjiu.lu (a] intel.com> 3460 1.1 christos 3461 1.1 christos * elf32-i386.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Resolve 3462 1.1 christos local undefined weak symbol to 0. 3463 1.1 christos * elf64-x86-64.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Likewise. 3464 1.1 christos 3465 1.1 christos 2017-06-22 H.J. Lu <hongjiu.lu (a] intel.com> 3466 1.1 christos 3467 1.1 christos * elf32-i386.c (elf_i386_merge_gnu_properties): If info->shstk 3468 1.1 christos is set, turn on GNU_PROPERTY_X86_FEATURE_1_SHSTK. 3469 1.1 christos (elf_i386_link_setup_gnu_properties): If info->shstk is set, 3470 1.1 christos turn on GNU_PROPERTY_X86_FEATURE_1_IBT. 3471 1.1 christos * elf64-x86-64.c (elf_x86_64_merge_gnu_properties): If 3472 1.1 christos info->shstk is set, turn on GNU_PROPERTY_X86_FEATURE_1_SHSTK. 3473 1.1 christos (elf_x86_64_link_setup_gnu_properties): If info->shstk is set, 3474 1.1 christos turn on GNU_PROPERTY_X86_FEATURE_1_IBT. 3475 1.1 christos 3476 1.1 christos 2017-06-22 H.J. Lu <hongjiu.lu (a] intel.com> 3477 1.1 christos 3478 1.1 christos * elf32-i386.c (elf_i386_lazy_ibt_plt0_entry): New. 3479 1.1 christos (elf_i386_lazy_ibt_plt_entry): Likewise. 3480 1.1 christos (elf_i386_pic_lazy_ibt_plt0_entry): Likewise. 3481 1.1 christos (elf_i386_non_lazy_ibt_plt_entry): Likewise. 3482 1.1 christos (elf_i386_pic_non_lazy_ibt_plt_entry): Likewise. 3483 1.1 christos (elf_i386_eh_frame_lazy_ibt_plt): Likewise. 3484 1.1 christos (elf_i386_lazy_plt_layout): Likewise. 3485 1.1 christos (elf_i386_non_lazy_plt_layout): Likewise. 3486 1.1 christos (elf_i386_link_hash_entry): Add plt_second. 3487 1.1 christos (elf_i386_link_hash_table): Add plt_second and 3488 1.1 christos plt_second_eh_frame. 3489 1.1 christos (elf_i386_allocate_dynrelocs): Use the second PLT if needed. 3490 1.1 christos (elf_i386_size_dynamic_sections): Use .plt.got unwind info for 3491 1.1 christos the second PLT. Check the second PLT. 3492 1.1 christos (elf_i386_relocate_section): Use the second PLT to resolve 3493 1.1 christos PLT reference if needed. 3494 1.1 christos (elf_i386_finish_dynamic_symbol): Fill and use the second PLT if 3495 1.1 christos needed. 3496 1.1 christos (elf_i386_finish_dynamic_sections): Set sh_entsize on the 3497 1.1 christos second PLT. Generate unwind info for the second PLT. 3498 1.1 christos (elf_i386_plt_type): Add plt_second. 3499 1.1 christos (elf_i386_get_synthetic_symtab): Support the second PLT. 3500 1.1 christos (elf_i386_parse_gnu_properties): Support 3501 1.1 christos GNU_PROPERTY_X86_FEATURE_1_AND. 3502 1.1 christos (elf_i386_merge_gnu_properties): Support 3503 1.1 christos GNU_PROPERTY_X86_FEATURE_1_AND. If info->ibt is set, turn 3504 1.1 christos on GNU_PROPERTY_X86_FEATURE_1_IBT 3505 1.1 christos (elf_i386_link_setup_gnu_properties): If info->ibt is set, 3506 1.1 christos turn on GNU_PROPERTY_X86_FEATURE_1_IBT. Use IBT-enabled PLT 3507 1.1 christos for info->ibtplt, info->ibt or GNU_PROPERTY_X86_FEATURE_1_IBT 3508 1.1 christos is set on all relocatable inputs. 3509 1.1 christos * elf64-x86-64.c (elf_x86_64_lazy_ibt_plt_entry): New. 3510 1.1 christos (elf_x32_lazy_ibt_plt_entry): Likewise. 3511 1.1 christos (elf_x86_64_non_lazy_ibt_plt_entry): Likewise. 3512 1.1 christos (elf_x32_non_lazy_ibt_plt_entry): Likewise. 3513 1.1 christos (elf_x86_64_eh_frame_lazy_ibt_plt): Likewise. 3514 1.1 christos (elf_x32_eh_frame_lazy_ibt_plt): Likewise. 3515 1.1 christos (elf_x86_64_lazy_ibt_plt): Likewise. 3516 1.1 christos (elf_x32_lazy_ibt_plt): Likewise. 3517 1.1 christos (elf_x86_64_non_lazy_ibt_plt): Likewise. 3518 1.1 christos (elf_x32_non_lazy_ibt_plt): Likewise. 3519 1.1 christos (elf_x86_64_get_synthetic_symtab): Support the second PLT. 3520 1.1 christos (elf_x86_64_parse_gnu_properties): Support 3521 1.1 christos GNU_PROPERTY_X86_FEATURE_1_AND. 3522 1.1 christos (elf_x86_64_merge_gnu_properties): Support 3523 1.1 christos GNU_PROPERTY_X86_FEATURE_1_AND. If info->ibt is set, turn 3524 1.1 christos on GNU_PROPERTY_X86_FEATURE_1_IBT 3525 1.1 christos (elf_x86_64_link_setup_gnu_properties): If info->ibt is set, 3526 1.1 christos turn on GNU_PROPERTY_X86_FEATURE_1_IBT. Use IBT-enabled PLT 3527 1.1 christos for info->ibtplt, info->ibt or GNU_PROPERTY_X86_FEATURE_1_IBT 3528 1.1 christos is set on all relocatable inputs. 3529 1.1 christos 3530 1.1 christos 2017-06-22 Nick Clifton <nickc (a] redhat.com> 3531 1.1 christos 3532 1.1 christos PR binutils/21649 3533 1.1 christos * som.c (setup_sections): NUL terminate the space_strings buffer. 3534 1.1 christos Check that the space.name field does not index beyond the end of 3535 1.1 christos the space_strings buffer. 3536 1.1 christos 3537 1.1 christos 2017-06-21 Nick Clifton <nickc (a] redhat.com> 3538 1.1 christos 3539 1.1 christos PR binutils/21646 3540 1.1 christos * coff-sh.c (sh_reloc): Check for an out of range reloc. 3541 1.1 christos 3542 1.1 christos 2017-06-21 Nick Clifton <nickc (a] redhat.com> 3543 1.1 christos 3544 1.1 christos PR binutils/21639 3545 1.1 christos * vms-misc.c (_bfd_vms_save_sized_string): Use unsigned int as 3546 1.1 christos type of the size parameter. 3547 1.1 christos (_bfd_vms_save_counted_string): Add second parameter - the maximum 3548 1.1 christos length of the counted string. 3549 1.1 christos * vms.h (_bfd_vms_save_sized_string): Update prototype. 3550 1.1 christos (_bfd_vms_save_counted_string): Likewise. 3551 1.1 christos * vms-alpha.c (_bfd_vms_slurp_eisd): Update calls to 3552 1.1 christos _bfd_vms_save_counted_string. 3553 1.1 christos (_bfd_vms_slurp_ehdr): Likewise. 3554 1.1 christos (_bfd_vms_slurp_egsd): Likewise. 3555 1.1 christos (Parse_module): Likewise. 3556 1.1 christos 3557 1.1 christos 2017-06-21 Alan Modra <amodra (a] gmail.com> 3558 1.1 christos 3559 1.1 christos * elf64-ppc.c (ppc64_elf_size_stubs): Test for localentry:0 plt 3560 1.1 christos calls before tocsave calls. 3561 1.1 christos (ppc64_elf_relocate_section): Allow localentry:0 plt calls without 3562 1.1 christos following nop. 3563 1.1 christos 3564 1.1 christos 2017-06-21 Nick Clifton <nickc (a] redhat.com> 3565 1.1 christos 3566 1.1 christos PR binutils/21645 3567 1.1 christos * reloc.c (bfd_generic_get_relocated_section_contents): Fail if 3568 1.1 christos bfd_get_full_section_contents returns no contents. 3569 1.1 christos 3570 1.1 christos 2017-06-21 Nick Clifton <nickc (a] redhat.com> 3571 1.1 christos 3572 1.1 christos PR binutils/21638 3573 1.1 christos * vms-alpha.c (_bfd_vms_slurp_egsd): Check for an undersized 3574 1.1 christos record. 3575 1.1 christos 3576 1.1 christos 2017-06-21 Nick Clifton <nickc (a] redhat.com> 3577 1.1 christos 3578 1.1 christos PR binutils/21637 3579 1.1 christos * vms-alpha.c (_bfd_vms_slurp_egsd): Check for an empty section 3580 1.1 christos list. 3581 1.1 christos (image_set_ptr): Likewise. 3582 1.1 christos (alpha_vms_fix_sec_rel): Likewise. 3583 1.1 christos (alpha_vms_slurp_relocs): Likewise. 3584 1.1 christos 3585 1.1 christos 2017-06-21 Nick Clifton <nickc (a] redhat.com> 3586 1.1 christos 3587 1.1 christos PR binutils/21633 3588 1.1 christos * ieee.c (ieee_slurp_sections): Check for a NULL return from 3589 1.1 christos read_id. 3590 1.1 christos (ieee_archive_p): Likewise. 3591 1.1 christos (ieee_object_p): Likewise. 3592 1.1 christos 3593 1.1 christos 2017-06-21 Nick Clifton <nickc (a] redhat.com> 3594 1.1 christos 3595 1.1 christos PR binutils/21640 3596 1.1 christos * elf.c (setup_group): Zero the group section pointer list after 3597 1.1 christos allocation so that loops can be caught. Check for NULL pointers 3598 1.1 christos when processing a group list. 3599 1.1 christos 3600 1.1 christos 2017-06-20 Andreas Krebbel <krebbel (a] linux.vnet.ibm.com> 3601 1.1 christos 3602 1.1 christos * elf-s390.h: New file. 3603 1.1 christos * elf64-s390.c (struct elf_s390_link_hash_table): Add params 3604 1.1 christos field. 3605 1.1 christos (elf_s390_additional_program_headers): New function. 3606 1.1 christos (elf_s390_modify_segment_map): New function. 3607 1.1 christos (bfd_elf_s390_set_options): New function. 3608 1.1 christos (elf_backend_additional_program_headers) 3609 1.1 christos (elf_backend_modify_segment_map): Add macro definitions. 3610 1.1 christos 3611 1.1 christos 2017-06-19 H.J. Lu <hongjiu.lu (a] intel.com> 3612 1.1 christos 3613 1.1 christos PR ld/21626 3614 1.1 christos * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Check 3615 1.1 christos the DYNAMIC bit instead of bfd_count_sections. 3616 1.1 christos 3617 1.1 christos 2017-06-19 Nick Clifton <nickc (a] redhat.com> 3618 1.1 christos 3619 1.1 christos PR binutils/21618 3620 1.1 christos * vms-alpha.c (evax_bfd_print_emh): Check for insufficient record 3621 1.1 christos length. 3622 1.1 christos (evax_bfd_print_eeom): Likewise. 3623 1.1 christos (evax_bfd_print_egsd): Check for an overlarge record length. 3624 1.1 christos (evax_bfd_print_etir): Likewise. 3625 1.1 christos 3626 1.1 christos 2017-06-19 Nick Clifton <nickc (a] redhat.com> 3627 1.1 christos 3628 1.1 christos PR binutils/21612 3629 1.1 christos * libieee.h (struct common_header_type): Add end_p field. 3630 1.1 christos * ieee.c (this_byte_and_next): Do not advance input_p beyond 3631 1.1 christos end_p. 3632 1.1 christos (read_id): Check for a length that exceeds the remaining bytes in 3633 1.1 christos the input buffer. 3634 1.1 christos (ieee_seek): Initialise end_p. 3635 1.1 christos (ieee_archive_p): Likewise. 3636 1.1 christos (ieee_object_p): Likewise. 3637 1.1 christos 3638 1.1 christos 2017-06-19 Nick Clifton <nickc (a] redhat.com> 3639 1.1 christos 3640 1.1 christos PR binutils/21611 3641 1.1 christos * vms-alpha.c (_bfd_vms_slurp_eihs): Check for invalid offset 3642 1.1 christos before reading the EIHS structure entries. 3643 1.1 christos 3644 1.1 christos 2017-06-19 Nick Clifton <nickc (a] redhat.com> 3645 1.1 christos 3646 1.1 christos PR binutils/21615 3647 1.1 christos * vms-alpha.c (_bfd_vms_slurp_egsd): Use unsigned int for 3648 1.1 christos gsd_size. Check that there are enough bytes remaining to read the 3649 1.1 christos type and size of the next egsd. Check that the size of the egsd 3650 1.1 christos does not exceed the size of the record. 3651 1.1 christos 3652 1.1 christos 2017-06-19 Alan Modra <amodra (a] gmail.com> 3653 1.1 christos 3654 1.1 christos * config.bfd: Correct targ_underscore for cris. 3655 1.1 christos 3656 1.1 christos 2017-06-18 Alan Modra <amodra (a] gmail.com> 3657 1.1 christos 3658 1.1 christos * config.bfd: Correct targ_underscore for epiphany, ip2k, 3659 1.1 christos m32c, mn10200, pru, rl78, rx, crisv32 and v850. 3660 1.1 christos 3661 1.1 christos 2017-06-16 Nick Clifton <nickc (a] redhat.com> 3662 1.1 christos 3663 1.1 christos * elflink.c (bfd_elf_size_dynsym_hash_dynstr): Do not fail if the 3664 1.1 christos bucketlist is empty because there are no symbols to add to the 3665 1.1 christos list. 3666 1.1 christos 3667 1.1 christos 2017-06-16 Alan Modra <amodra (a] gmail.com> 3668 1.1 christos 3669 1.1 christos PR ld/20022 3670 1.1 christos PR ld/21557 3671 1.1 christos PR ld/21562 3672 1.1 christos PR ld/21571 3673 1.1 christos * targets.c (struct bfd_target): Add _bfd_define_start_stop. 3674 1.1 christos (BFD_JUMP_TABLE_LINK): Likewise. 3675 1.1 christos * elf-bfd.h (bfd_elf_define_start_stop): Declare. 3676 1.1 christos * elflink.c (_bfd_elf_gc_mark_rsec): Update comment. 3677 1.1 christos (bfd_elf_define_start_stop): New function. 3678 1.1 christos * linker.c (bfd_generic_define_start_stop): New function. 3679 1.1 christos * coff64-rs6000.c (rs6000_xcoff64_vec, rs6000_xcoff64_aix_vec): Init 3680 1.1 christos new field. 3681 1.1 christos * aout-adobe.c (aout_32_bfd_define_start_stop): Define. 3682 1.1 christos * aout-target.h (MY_bfd_define_start_stop): Define. 3683 1.1 christos * aout-tic30.c (MY_bfd_define_start_stop): Define. 3684 1.1 christos * binary.c (binary_bfd_define_start_stop): Define. 3685 1.1 christos * bout.c (b_out_bfd_define_start_stop): Define. 3686 1.1 christos * coff-alpha.c (_bfd_ecoff_bfd_define_start_stop): Define. 3687 1.1 christos * coff-mips.c (_bfd_ecoff_bfd_define_start_stop): Define. 3688 1.1 christos * coff-rs6000.c (_bfd_xcoff_bfd_define_start_stop): Define. 3689 1.1 christos * coffcode.h (coff_bfd_define_start_stop): Define. 3690 1.1 christos * elfxx-target.h (bfd_elfNN_bfd_define_start_stop): Define. 3691 1.1 christos * i386msdos.c (msdos_bfd_define_start_stop): Define. 3692 1.1 christos * i386os9k.c (os9k_bfd_define_start_stop): Define. 3693 1.1 christos * ieee.c (ieee_bfd_define_start_stop): Define. 3694 1.1 christos * ihex.c (ihex_bfd_define_start_stop): Define. 3695 1.1 christos * libbfd-in.h (_bfd_nolink_bfd_define_start_stop): Define. 3696 1.1 christos * mach-o-target.c (bfd_mach_o_bfd_define_start_stop): Define. 3697 1.1 christos * mmo.c (mmo_bfd_define_start_stop): Define. 3698 1.1 christos * nlm-target.h (nlm_bfd_define_start_stop): Define. 3699 1.1 christos * oasys.c (oasys_bfd_define_start_stop): Define. 3700 1.1 christos * pef.c (bfd_pef_bfd_define_start_stop): Define. 3701 1.1 christos * plugin.c (bfd_plugin_bfd_define_start_stop): Define. 3702 1.1 christos * ppcboot.c (ppcboot_bfd_define_start_stop): Define. 3703 1.1 christos * som.c (som_bfd_define_start_stop): Define. 3704 1.1 christos * srec.c (srec_bfd_define_start_stop): Define. 3705 1.1 christos * tekhex.c (tekhex_bfd_define_start_stop): Define. 3706 1.1 christos * versados.c (versados_bfd_define_start_stop): Define. 3707 1.1 christos * vms-alpha.c (vms_bfd_define_start_stop): Define. 3708 1.1 christos (alpha_vms_bfd_define_start_stop): Define. 3709 1.1 christos * xsym.c (bfd_sym_bfd_define_start_stop): Define. 3710 1.1 christos * bfd-in2.h: Regenerate. 3711 1.1 christos * libbfd.h: Regenerate. 3712 1.1 christos 3713 1.1 christos 2017-06-16 Jiong Wang <jiong.wang (a] arm.com> 3714 1.1 christos 3715 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Use 3716 1.1 christos SYMBOL_REFERENCES_LOCAL. 3717 1.1 christos 3718 1.1 christos 2017-06-15 Jiong Wang <jiong.wang (a] arm.com> 3719 1.1 christos 3720 1.1 christos PR ld/21532 3721 1.1 christos * elfnn-aarch64.c (ELIMINATE_COPY_RELOCS): Set to 1. 3722 1.1 christos (elfNN_aarch64_final_link_relocate): Also propagate relocations to 3723 1.1 christos runtime for if there needs copy relocation elimination. 3724 1.1 christos (need_copy_relocation_p): New function. Return true for symbol with 3725 1.1 christos pc-relative references and if it's against read-only sections. 3726 1.1 christos (elfNN_aarch64_adjust_dynamic_symbol): Use need_copy_relocation_p. 3727 1.1 christos (elfNN_aarch64_check_relocs): Allocate dynrelocs for relocation types 3728 1.1 christos that are related with accessing external objects. 3729 1.1 christos (elfNN_aarch64_gc_sweep_hook): Sync the relocation types with the change 3730 1.1 christos in elfNN_aarch64_check_relocs. 3731 1.1 christos 3732 1.1 christos 2017-06-15 Nick Clifton <nickc (a] redhat.com> 3733 1.1 christos 3734 1.1 christos PR binutils/21582 3735 1.1 christos * ieee.c (ieee_object_p): Use a static buffer to avoid compiler 3736 1.1 christos bugs. 3737 1.1 christos PR binutils/21581 3738 1.1 christos (ieee_archive_p): Likewise. 3739 1.1 christos 3740 1.1 christos 2017-06-15 Nick Clifton <nickc (a] redhat.com> 3741 1.1 christos 3742 1.1 christos PR binutils/21579 3743 1.1 christos * vms-alpha.c (_bfd_vms_slurp_etir): Extend check of cmd_length. 3744 1.1 christos 3745 1.1 christos 2017-06-14 Max Filippov <jcmvbkbc (a] gmail.com> 3746 1.1 christos 3747 1.1 christos * elf32-xtensa.c (elf_xtensa_be_plt_entry, 3748 1.1 christos elf_xtensa_le_plt_entry): Add dimension for the ABI to arrays, 3749 1.1 christos keep both windowed and call0 ABI PLT definitions. 3750 1.1 christos (elf_xtensa_create_plt_entry): Use selected ABI to choose upper 3751 1.1 christos elf_xtensa_*_plt_entry endex. 3752 1.1 christos (ELF_MAXPAGESIZE): Fix at minimal supported MMU page size. 3753 1.1 christos 3754 1.1 christos 2017-06-14 Nick Clifton <nickc (a] redhat.com> 3755 1.1 christos 3756 1.1 christos PR binutils/21578 3757 1.1 christos * elf32-sh.c (sh_elf_set_mach_from_flags): Fix check for invalid 3758 1.1 christos flag value. 3759 1.1 christos 3760 1.1 christos 2017-06-14 Nick Clifton <nickc (a] redhat.com> 3761 1.1 christos 3762 1.1 christos PR binutils/21589 3763 1.1 christos * vms-alpha.c (_bfd_vms_get_value): Add an extra parameter - the 3764 1.1 christos maximum value for the ascic pointer. Check that name processing 3765 1.1 christos does not read beyond this value. 3766 1.1 christos (_bfd_vms_slurp_etir): Add checks for attempts to read beyond the 3767 1.1 christos end of etir record. 3768 1.1 christos 3769 1.1 christos 2017-06-14 Nick Clifton <nickc (a] redhat.com> 3770 1.1 christos 3771 1.1 christos PR binutils/21591 3772 1.1 christos * versados.c (versados_mkobject): Zero the allocated tdata structure. 3773 1.1 christos (process_otr): Check for an invalid offset in the otr structure. 3774 1.1 christos 3775 1.1 christos 2017-06-14 Sebastian Huber <sebastian.huber (a] embedded-brains.de> 3776 1.1 christos 3777 1.1 christos * config.bfd (epiphany-*-elf): Accept epiphany-*-*. 3778 1.1 christos 3779 1.1 christos 2017-06-13 H.J. Lu <hongjiu.lu (a] intel.com> 3780 1.1 christos 3781 1.1 christos PR ld/20022 3782 1.1 christos PR ld/21557 3783 1.1 christos PR ld/21562 3784 1.1 christos PR ld/21571 3785 1.1 christos * elf-bfd.h (elf_link_hash_entry): Add start_stop. Change the 3786 1.1 christos vtable field to a union. 3787 1.1 christos (_bfd_elf_is_start_stop): Removed. 3788 1.1 christos * elf32-i386.c (elf_i386_convert_load_reloc): Also check for 3789 1.1 christos __start_SECNAME and __stop_SECNAME symbols. 3790 1.1 christos * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Likewise. 3791 1.1 christos * elflink.c (_bfd_elf_is_start_stop): Removed. 3792 1.1 christos (_bfd_elf_gc_mark_rsec): Check start_stop instead of calling 3793 1.1 christos _bfd_elf_is_start_stop. 3794 1.1 christos (elf_gc_propagate_vtable_entries_used): Skip __start_SECNAME and 3795 1.1 christos __stop_SECNAME symbols. Updated. 3796 1.1 christos (elf_gc_smash_unused_vtentry_relocs): Likewise. 3797 1.1 christos (bfd_elf_gc_record_vtinherit): Likewise. 3798 1.1 christos (bfd_elf_gc_record_vtentry): Likewise. 3799 1.1 christos 3800 1.1 christos 2017-06-13 Nick Clifton <nickc (a] redhat.com> 3801 1.1 christos 3802 1.1 christos PR ld/21524 3803 1.1 christos * elflink.c (elf_link_adjust_relocs): Generate an error when 3804 1.1 christos encountering a reloc against a symbol removed by garbage 3805 1.1 christos collection. 3806 1.1 christos 3807 1.1 christos 2017-06-12 H.J. Lu <hongjiu.lu (a] intel.com> 3808 1.1 christos 3809 1.1 christos * elf-bfd.h (elf_backend_data): Add struct bfd_link_info * 3810 1.1 christos to merge_gnu_properties. 3811 1.1 christos * elf-properties.c (elf_merge_gnu_properties): Add struct 3812 1.1 christos bfd_link_info * and pass it to merge_gnu_properties. 3813 1.1 christos (elf_merge_gnu_property_list): Add struct bfd_link_info * 3814 1.1 christos and pass it to elf_merge_gnu_properties. 3815 1.1 christos (_bfd_elf_link_setup_gnu_properties): Pass info to 3816 1.1 christos elf_merge_gnu_property_list. 3817 1.1 christos * elf32-i386.c (elf_i386_merge_gnu_properties): Add struct 3818 1.1 christos bfd_link_info *. 3819 1.1 christos * elf64-x86-64.c (elf_x86_64_merge_gnu_properties): Likewise. 3820 1.1 christos 3821 1.1 christos 2017-06-11 Joe Zbiciak <joe.zbiciak (a] leftturnonly.info> 3822 1.1 christos 3823 1.1 christos PR 21564 3824 1.1 christos * binary.c (binary_set_section_contents): Scale lma by octets 3825 1.1 christos per byte to set filepos. 3826 1.1 christos 3827 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3828 1.1 christos 3829 1.1 christos * elf32-arc.c (elf_arc_check_relocs): Fixed conditions to generate 3830 1.1 christos dynamic sections. 3831 1.1 christos 3832 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3833 1.1 christos 3834 1.1 christos * elf32-arc.c (elf_arc_size_dynamic_sections): Changed condition to 3835 1.1 christos require TEXTREL. 3836 1.1 christos 3837 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3838 1.1 christos 3839 1.1 christos * arc-got.h (relocate_fix_got_relocs_for_got_info): Added TCB_SIZE to 3840 1.1 christos patched section contents for TLS IE reloc. 3841 1.1 christos * elf32-arc.c: Remove TCB_SIZE preprocessor macro. 3842 1.1 christos 3843 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3844 1.1 christos 3845 1.1 christos * elf32-arc.c (elf_arc_relocate_section): Added "call" to 3846 1.1 christos RELOC_FOR_GLOBAL_SYMBOL macro. 3847 1.1 christos 3848 1.1 christos 2018-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3849 1.1 christos 3850 1.1 christos * elf32-arc.c (elf_arc_relocate_section): Small refactor and condition 3851 1.1 christos changes. 3852 1.1 christos 3853 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3854 1.1 christos 3855 1.1 christos * config/tc-arc.c (md_undefined_symbol): Changed. 3856 1.1 christos * config/tc-arc.h (DYNAMIC_STRUCT_NAME): Removed. 3857 1.1 christos 3858 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3859 1.1 christos 3860 1.1 christos * elf32-arc.c (elf_arc_relocate_section): Fixed reassign of indirect 3861 1.1 christos symbols. 3862 1.1 christos 3863 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3864 1.1 christos 3865 1.1 christos * elf32-arc.c (elf_arc_check_relocs): Added condition to disable 3866 1.1 christos warning and "Bad value" for local symbols ARC_32 or ARC_32_ME relocs. 3867 1.1 christos 3868 1.1 christos 2017-06-08 Cupertino Miranda <cmiranda (a] synopsys.com> 3869 1.1 christos 3870 1.1 christos * elf32-arc.c (ADD_RELA): Changed to only work when dynamic 3871 1.1 christos object is created. 3872 1.1 christos 3873 1.1 christos 2017-06-08 Richard Earnshaw <rearnsha (a] arm.com> 3874 1.1 christos 3875 1.1 christos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Remove assertion 3876 1.1 christos that the input bfd has Tag_FP_ARCH non-zero if Tag_ABI_HardFP_use 3877 1.1 christos is non-zero. Add clarifying comments. 3878 1.1 christos 3879 1.1 christos 2017-06-08 H.J. Lu <hongjiu.lu (a] intel.com> 3880 1.1 christos 3881 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Set local IFUNC symbol 3882 1.1 christos name. Use local IFUNC symbol name string to report unsupported 3883 1.1 christos non-PIC call to IFUNC function. 3884 1.1 christos (elf_i386_relocate_section): Dump local IFUNC name with minfo 3885 1.1 christos when generating R_386_IRELATIVE relocation. 3886 1.1 christos (elf_i386_finish_dynamic_symbol): Likewise. 3887 1.1 christos * elf_x86_64_check_relocs (elf_x86_64_check_relocs): Set local 3888 1.1 christos IFUNC symbol name. 3889 1.1 christos (elf_x86_64_relocate_section): Dump local IFUNC name with minfo 3890 1.1 christos when generating R_X86_64_IRELATIVE relocation. 3891 1.1 christos (elf_x86_64_finish_dynamic_symbol): Likewise. 3892 1.1 christos 3893 1.1 christos 2017-06-06 Jose E. Marchesi <jose.marchesi (a] oracle.com> 3894 1.1 christos 3895 1.1 christos * elf.c (setup_group): Make sure BFD sections are created for all 3896 1.1 christos group sections in the input file when processing SHF_GROUP 3897 1.1 christos sections. 3898 1.1 christos (bfd_section_from_shdr): Avoid duplicating logic already 3899 1.1 christos implemented in `setup_group'. 3900 1.1 christos 3901 1.1 christos 2017-06-06 Daniel Bonniot de Ruisselet <bonniot (a] gmail.com> 3902 1.1 christos 3903 1.1 christos PR binutils/21546 3904 1.1 christos * peXXigen.c (pe_print_idata): Use the address of the first thunk 3905 1.1 christos if the hint address is zero. 3906 1.1 christos 3907 1.1 christos 2017-06-06 James Clarke <jrtc27 (a] jrtc27.com> 3908 1.1 christos 3909 1.1 christos PR ld/19579 3910 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Check 3911 1.1 christos ELF_COMMON_DEF_P for common symbols. 3912 1.1 christos 3913 1.1 christos 2017-06-06 Andrew Burgess <andrew.burgess (a] embecosm.com> 3914 1.1 christos 3915 1.1 christos * elf.c (_bfd_elf_make_section_from_shdr): Don't initially mark 3916 1.1 christos SEC_GROUP sections as SEC_EXCLUDE. 3917 1.1 christos (bfd_elf_set_group_contents): Replace use of abort with an assert. 3918 1.1 christos (assign_section_numbers): Use resolve_section_groups flag instead 3919 1.1 christos of relocatable link type. 3920 1.1 christos (_bfd_elf_init_private_section_data): Use resolve_section_groups 3921 1.1 christos flag instead of checking the final_link flag for part of the 3922 1.1 christos checks in here. Fix white space as a result. 3923 1.1 christos * elflink.c (elf_link_input_bfd): Use resolve_section_groups flag 3924 1.1 christos instead of relocatable link type. 3925 1.1 christos (bfd_elf_final_link): Likewise. 3926 1.1 christos 3927 1.1 christos 2017-06-06 Jose E. Marchesi <jose.marchesi (a] oracle.com> 3928 1.1 christos 3929 1.1 christos * elfxx-mips.c (_bfd_mips_elf_relocate_section): Remove unused 3930 1.1 christos variable `bed'. 3931 1.1 christos * elf32-score.c (score_elf_final_link_relocate): Likewise. 3932 1.1 christos (s3_bfd_score_elf_check_relocs): Likewise. 3933 1.1 christos * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. 3934 1.1 christos (score_elf_final_link_relocate): Likewise. 3935 1.1 christos (s7_bfd_score_elf_check_relocs): Likewise. 3936 1.1 christos 3937 1.1 christos 2017-06-06 Jose E. Marchesi <jose.marchesi (a] oracle.com> 3938 1.1 christos 3939 1.1 christos * elflink.c (init_reloc_cookie_rels): Remove unused variable 3940 1.1 christos `bed'. 3941 1.1 christos 3942 1.1 christos 2017-06-06 Maciej W. Rozycki <macro (a] imgtec.com> 3943 1.1 christos 3944 1.1 christos * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Subtract `count' 3945 1.1 christos from `reloc_count' rather than decrementing it. 3946 1.1 christos * elf.c (bfd_section_from_shdr): Multiply the adjustment to 3947 1.1 christos `reloc_count' by `int_rels_per_ext_rel'. 3948 1.1 christos * elf32-score.c (score_elf_final_link_relocate): Do not multiply 3949 1.1 christos `reloc_count' by `int_rels_per_ext_rel' for last relocation 3950 1.1 christos entry determination. 3951 1.1 christos (s3_bfd_score_elf_check_relocs): Likewise. 3952 1.1 christos * elf32-score7.c (score_elf_final_link_relocate): Likewise. 3953 1.1 christos (s7_bfd_score_elf_relocate_section): Likewise. 3954 1.1 christos (s7_bfd_score_elf_check_relocs): Likewise. 3955 1.1 christos * elf64-mips.c (mips_elf64_get_reloc_upper_bound): Remove 3956 1.1 christos prototype and function. 3957 1.1 christos (mips_elf64_slurp_one_reloc_table): Do not update `reloc_count'. 3958 1.1 christos (mips_elf64_slurp_reloc_table): Assert that `reloc_count' is 3959 1.1 christos triple rather than once the sum of REL and RELA relocation entry 3960 1.1 christos counts. 3961 1.1 christos (bfd_elf64_get_reloc_upper_bound): Remove macro. 3962 1.1 christos * elflink.c (_bfd_elf_link_read_relocs): Do not multiply 3963 1.1 christos `reloc_count' by `int_rels_per_ext_rel' for internal relocation 3964 1.1 christos storage allocation size determination. 3965 1.1 christos (elf_link_input_bfd): Multiply `.ctors' and `.dtors' section's 3966 1.1 christos size by `int_rels_per_ext_rel'. Do not multiply `reloc_count' 3967 1.1 christos by `int_rels_per_ext_rel' for last relocation entry 3968 1.1 christos determination. 3969 1.1 christos (bfd_elf_final_link): Do not multiply `reloc_count' by 3970 1.1 christos `int_rels_per_ext_rel' for internal relocation storage 3971 1.1 christos allocation size determination. 3972 1.1 christos (init_reloc_cookie_rels): Do not multiply `reloc_count' by 3973 1.1 christos `int_rels_per_ext_rel' for last relocation entry determination. 3974 1.1 christos (elf_gc_smash_unused_vtentry_relocs): Likewise. 3975 1.1 christos * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. 3976 1.1 christos (_bfd_mips_elf_relocate_section): Likewise. 3977 1.1 christos 3978 1.1 christos 2017-06-05 Alan Modra <amodra (a] gmail.com> 3979 1.1 christos 3980 1.1 christos PR 21529 3981 1.1 christos * linker.c (_bfd_generic_link_output_symbols): Handle BSF_GNU_UNIQUE. 3982 1.1 christos 3983 1.1 christos 2017-06-01 John Baldwin <jhb (a] FreeBSD.org> 3984 1.1 christos 3985 1.1 christos * elf.c (elfcore_grok_freebsd_psinfo): Use ELF header class to 3986 1.1 christos determine structure sizes. 3987 1.1 christos (elfcore_grok_freebsd_prstatus): Likewise. 3988 1.1 christos 3989 1.1 christos 2017-06-01 Alan Modra <amodra (a] gmail.com> 3990 1.1 christos 3991 1.1 christos * elf64-ppc.c (struct ppc_link_hash_table): Add has_plt_localentry0. 3992 1.1 christos (ppc64_elf_merge_symbol_attribute): Merge localentry bits from 3993 1.1 christos dynamic objects. 3994 1.1 christos (is_elfv2_localentry0): New function. 3995 1.1 christos (ppc64_elf_tls_setup): Default params->plt_localentry0. 3996 1.1 christos (plt_stub_size): Adjust size for tls_get_addr_opt stub. 3997 1.1 christos (build_tls_get_addr_stub): Use a simpler stub when r2 is not saved. 3998 1.1 christos (ppc64_elf_size_stubs): Leave stub_type as ppc_stub_plt_call for 3999 1.1 christos optimized localentry:0 stubs. 4000 1.1 christos (ppc64_elf_build_stubs): Save r2 in ELFv2 __glink_PLTresolve. 4001 1.1 christos (ppc64_elf_relocate_section): Leave nop unchanged for optimized 4002 1.1 christos localentry:0 stubs. 4003 1.1 christos (ppc64_elf_finish_dynamic_sections): Set PPC64_OPT_LOCALENTRY in 4004 1.1 christos DT_PPC64_OPT. 4005 1.1 christos * elf64-ppc.h (struct ppc64_elf_params): Add plt_localentry0. 4006 1.1 christos 4007 1.1 christos 2017-05-30 Casey Smith <clegg89 (a] gmail.com> 4008 1.1 christos 4009 1.1 christos PR ld/21523 4010 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Install an absolute 4011 1.1 christos value when processing the R_ARM_THM_ALU_PREL_11_0 reloc. 4012 1.1 christos 4013 1.1 christos 2017-05-30 Anton Kolesov Anton.Kolesov (a] synopsys.com 4014 1.1 christos 4015 1.1 christos * cpu-arc.c (arc_compatible): New function. 4016 1.1 christos 4017 1.1 christos 2017-05-30 Anton Kolesov <anton.kolesov (a] synopsys.com> 4018 1.1 christos 4019 1.1 christos * cpu-arc.c (arch_info_struct): Remove duplicate ARC600 entry. 4020 1.1 christos 4021 1.1 christos 2017-05-30 H.J. Lu <hongjiu.lu (a] intel.com> 4022 1.1 christos 4023 1.1 christos PR binutils/21519 4024 1.1 christos * bfdio.c (bfd_get_file_size): New function. 4025 1.1 christos * bfd-in2.h: Regenerated. 4026 1.1 christos 4027 1.1 christos 2017-05-23 Dilian Palauzov <git-dpa (a] aegee.org> 4028 1.1 christos 4029 1.1 christos * elf32-arc.c (arc_elf_merge_attributes): Add fall through 4030 1.1 christos comments. 4031 1.1 christos 4032 1.1 christos 2017-05-22 H.J. Lu <hongjiu.lu (a] intel.com> 4033 1.1 christos 4034 1.1 christos * elf64-x86-64.c (elf_x86_64_link_setup_gnu_properties): Use 4035 1.1 christos dynobj instead of htab->elf.dynobj. 4036 1.1 christos 4037 1.1 christos 2017-05-19 Maciej W. Rozycki <macro (a] imgtec.com> 4038 1.1 christos 4039 1.1 christos * elf64-mips.c (mips_elf64_canonicalize_reloc): Remove prototype 4040 1.1 christos and function. 4041 1.1 christos (mips_elf64_canonicalize_dynamic_reloc): Likewise. 4042 1.1 christos (mips_elf64_slurp_one_reloc_table): Set `reloc_count' to the 4043 1.1 christos actual number of internal relocations retrieved. Adjust 4044 1.1 christos function description. 4045 1.1 christos (bfd_elf64_canonicalize_reloc): Remove macro. 4046 1.1 christos (bfd_elf64_canonicalize_dynamic_reloc): Likewise. 4047 1.1 christos 4048 1.1 christos 2017-05-19 Jose E. Marchesi <jose.marchesi (a] oracle.com> 4049 1.1 christos 4050 1.1 christos * archures.c (bfd_mach_sparc_v9m8): Define. 4051 1.1 christos (bfd_mach_sparc_v8plusm8): Likewise. 4052 1.1 christos (bfd_mach_sparc_v9_p): Adjust to M8. 4053 1.1 christos (bfd_mach_sparc_64bit_p): Likewise. 4054 1.1 christos * aoutx.h (machine_type): Handle bfd_mach_sparc_v9m8 and 4055 1.1 christos bfd_mach_sparc_v8plusm8. 4056 1.1 christos * bfd-in2.h: Regenerated. 4057 1.1 christos * cpu-sparc.c (arch_info_struct): Entries for sparc:v9m8 and 4058 1.1 christos sparc:v8plusm8. 4059 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_object_p): Handle 4060 1.1 christos bfd_mach_sparc_v8plusm8 and bfd_mach_sparc_v9m8 using the new hw 4061 1.1 christos capabilities ONADDSUB, ONMUL, ONDIV, DICTUNP, FPCPSHL, RLE and 4062 1.1 christos SHA3. 4063 1.1 christos * elf32-sparc.c (elf32_sparc_final_write_processing): Handle 4064 1.1 christos bfd_mach_sparc_v8plusm8. 4065 1.1 christos 4066 1.1 christos 2017-05-19 Alan Modra <amodra (a] gmail.com> 4067 1.1 christos 4068 1.1 christos * elflink.c (_bfd_elf_gc_mark_extra_sections): Don't keep 4069 1.1 christos debug and special sections when no non-note alloc sections in an 4070 1.1 christos object are kept. 4071 1.1 christos 4072 1.1 christos 2017-05-18 Alan Modra <amodra (a] gmail.com> 4073 1.1 christos 4074 1.1 christos * arc-got.h: Don't compare boolean values against TRUE or FALSE. 4075 1.1 christos * elf-m10300.c: Likewise. 4076 1.1 christos * elf.c: Likewise. 4077 1.1 christos * elf32-arc.c: Likewise. 4078 1.1 christos * elf32-bfin.c: Likewise. 4079 1.1 christos * elf32-m68k.c: Likewise. 4080 1.1 christos * elf32-nds32.c: Likewise. 4081 1.1 christos * elf32-tilepro.c: Likewise. 4082 1.1 christos * elflink.c: Likewise. 4083 1.1 christos * elfnn-aarch64.c: Likewise. 4084 1.1 christos * elfnn-riscv.c: Likewise. 4085 1.1 christos * elfxx-tilegx.c: Likewise. 4086 1.1 christos * mach-o.c: Likewise. 4087 1.1 christos * peXXigen.c: Likewise. 4088 1.1 christos * vms-alpha.c: Likewise. 4089 1.1 christos * vms-lib.c: Likewise. 4090 1.1 christos 4091 1.1 christos 2017-05-17 H.J. Lu <hongjiu.lu (a] intel.com> 4092 1.1 christos 4093 1.1 christos PR ld/20882 4094 1.1 christos * elflink.c (elf_gc_mark_debug_section): New function. 4095 1.1 christos (_bfd_elf_gc_mark_extra_sections): Mark any debug sections 4096 1.1 christos referenced by kept debug sections. 4097 1.1 christos 4098 1.1 christos 2017-05-16 Alan Modra <amodra (a] gmail.com> 4099 1.1 christos 4100 1.1 christos * elf-m10300.c: Rename occurrences of non_ir_ref. 4101 1.1 christos * elf32-arm.c: Likewise. 4102 1.1 christos * elf32-bfin.c: Likewise. 4103 1.1 christos * elf32-cr16.c: Likewise. 4104 1.1 christos * elf32-cris.c: Likewise. 4105 1.1 christos * elf32-d10v.c: Likewise. 4106 1.1 christos * elf32-dlx.c: Likewise. 4107 1.1 christos * elf32-fr30.c: Likewise. 4108 1.1 christos * elf32-frv.c: Likewise. 4109 1.1 christos * elf32-hppa.c: Likewise. 4110 1.1 christos * elf32-i370.c: Likewise. 4111 1.1 christos * elf32-i386.c: Likewise. 4112 1.1 christos * elf32-iq2000.c: Likewise. 4113 1.1 christos * elf32-lm32.c: Likewise. 4114 1.1 christos * elf32-m32c.c: Likewise. 4115 1.1 christos * elf32-m32r.c: Likewise. 4116 1.1 christos * elf32-m68hc1x.c: Likewise. 4117 1.1 christos * elf32-m68k.c: Likewise. 4118 1.1 christos * elf32-mcore.c: Likewise. 4119 1.1 christos * elf32-metag.c: Likewise. 4120 1.1 christos * elf32-microblaze.c: Likewise. 4121 1.1 christos * elf32-moxie.c: Likewise. 4122 1.1 christos * elf32-msp430.c: Likewise. 4123 1.1 christos * elf32-mt.c: Likewise. 4124 1.1 christos * elf32-nios2.c: Likewise. 4125 1.1 christos * elf32-or1k.c: Likewise. 4126 1.1 christos * elf32-ppc.c: Likewise. 4127 1.1 christos * elf32-rl78.c: Likewise. 4128 1.1 christos * elf32-s390.c: Likewise. 4129 1.1 christos * elf32-score.c: Likewise. 4130 1.1 christos * elf32-score7.c: Likewise. 4131 1.1 christos * elf32-sh.c: Likewise. 4132 1.1 christos * elf32-tic6x.c: Likewise. 4133 1.1 christos * elf32-tilepro.c: Likewise. 4134 1.1 christos * elf32-v850.c: Likewise. 4135 1.1 christos * elf32-vax.c: Likewise. 4136 1.1 christos * elf32-xstormy16.c: Likewise. 4137 1.1 christos * elf32-xtensa.c: Likewise. 4138 1.1 christos * elf64-alpha.c: Likewise. 4139 1.1 christos * elf64-hppa.c: Likewise. 4140 1.1 christos * elf64-ia64-vms.c: Likewise. 4141 1.1 christos * elf64-mmix.c: Likewise. 4142 1.1 christos * elf64-ppc.c: Likewise. 4143 1.1 christos * elf64-s390.c: Likewise. 4144 1.1 christos * elf64-sh64.c: Likewise. 4145 1.1 christos * elf64-x86-64.c: Likewise. 4146 1.1 christos * elflink.c: Likewise. 4147 1.1 christos * elfnn-aarch64.c: Likewise. 4148 1.1 christos * elfnn-ia64.c: Likewise. 4149 1.1 christos * elfnn-riscv.c: Likewise. 4150 1.1 christos * elfxx-mips.c: Likewise. 4151 1.1 christos * elfxx-sparc.c: Likewise. 4152 1.1 christos * elfxx-tilegx.c: Likewise. 4153 1.1 christos * linker.c: Likewise. 4154 1.1 christos 4155 1.1 christos 2017-05-16 Alan Modra <amodra (a] gmail.com> 4156 1.1 christos 4157 1.1 christos * elf64-ppc.c (add_symbol_adjust): Transfer non_ir_ref_dynamic. 4158 1.1 christos * elflink.c (elf_link_add_object_symbols): Update to use 4159 1.1 christos non_ir_ref_dynamic. 4160 1.1 christos (elf_link_input_bfd): Test non_ir_ref_dynamic in addition to 4161 1.1 christos non_ir_ref. 4162 1.1 christos * linker.c (_bfd_generic_link_add_one_symbol): Likewise. 4163 1.1 christos 4164 1.1 christos 2017-05-15 Maciej W. Rozycki <macro (a] imgtec.com> 4165 1.1 christos 4166 1.1 christos * elfxx-mips.c (print_mips_ases): Handle MIPS16e2 ASE. 4167 1.1 christos 4168 1.1 christos 2017-05-12 H.J. Lu <hongjiu.lu (a] intel.com> 4169 1.1 christos 4170 1.1 christos * elf32-i386.c (elf_i386_parse_gnu_properties): Merge 4171 1.1 christos GNU_PROPERTY_X86_ISA_1_USED and GNU_PROPERTY_X86_ISA_1_NEEDED 4172 1.1 christos properties. 4173 1.1 christos * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. 4174 1.1 christos 4175 1.1 christos 2017-05-11 H.J. Lu <hongjiu.lu (a] intel.com> 4176 1.1 christos 4177 1.1 christos * elf64-x86-64.c (elf_x86_64_link_hash_entry): Rename plt_bnd 4178 1.1 christos to plt_second. 4179 1.1 christos (elf_x86_64_link_hash_table): Rename plt_bnd/plt_bnd_eh_frame 4180 1.1 christos to plt_second/plt_second_eh_frame. 4181 1.1 christos (elf_x86_64_link_hash_newfunc): Updated. 4182 1.1 christos (elf_x86_64_allocate_dynrelocs): Likewise. 4183 1.1 christos (elf_x86_64_size_dynamic_sections): Likewise. 4184 1.1 christos (elf_x86_64_relocate_section): Likewise. 4185 1.1 christos (elf_x86_64_finish_dynamic_symbol): Likewise. 4186 1.1 christos (elf_x86_64_finish_dynamic_sections): Likewise. 4187 1.1 christos (elf_x86_64_plt_type): Rename plt_bnd to plt_second. 4188 1.1 christos (elf_x86_64_get_synthetic_symtab): Updated. Also scan the 4189 1.1 christos .plt.sec section. 4190 1.1 christos (elf_backend_setup_gnu_properties): Updated. Create the 4191 1.1 christos .plt.sec section instead of the .plt.sec section. 4192 1.1 christos 4193 1.1 christos 2017-05-11 H.J. Lu <hongjiu.lu (a] intel.com> 4194 1.1 christos 4195 1.1 christos * elf32-i386.c (elf_i386_allocate_dynrelocs): Partially revert 4196 1.1 christos commit 25070364b0ce33eed46aa5d78ebebbec6accec7e. 4197 1.1 christos * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewse. 4198 1.1 christos 4199 1.1 christos 2017-05-10 Jose E. Marchesi <jose.marchesi (a] oracle.com> 4200 1.1 christos 4201 1.1 christos * elf64-sparc.c (elf64_sparc_set_reloc): New function. 4202 1.1 christos (bfd_elf64_set_reloc): Define. 4203 1.1 christos (elf64_sparc_write_relocs): Use `canon_reloc_count'. 4204 1.1 christos 4205 1.1 christos 2017-05-10 Jose E. Marchesi <jose.marchesi (a] oracle.com> 4206 1.1 christos 4207 1.1 christos * targets.c (BFD_JUMP_TABLE_RELOCS): Add NAME##_set_reloc. 4208 1.1 christos (struct bfd_target): New field _bfd_set_reloc. 4209 1.1 christos * bfd.c (bfd_set_reloc): Call backend _set_bfd. 4210 1.1 christos * reloc.c (_bfd_generic_set_reloc): New function. 4211 1.1 christos * coffcode.h (coff_set_reloc): Define to _bfd_generic_set_reloc. 4212 1.1 christos * nlm-target.h (nlm_set_reloc): Likewise. 4213 1.1 christos * coff-rs6000.c (_bfd_xcoff_set_reloc): Likewise. 4214 1.1 christos * aout-tic30.c (MY_set_reloc): Likewise. 4215 1.1 christos * aout-target.h (MY_set_reloc): Likewise. 4216 1.1 christos * elfxx-target.h (bfd_elfNN_set_reloc): Likewise. 4217 1.1 christos * coff-alpha.c (_bfd_ecoff_set_reloc): Likewise. 4218 1.1 christos * mach-o-target.c (bfd_mach_o_set_reloc): Likewise. 4219 1.1 christos * vms-alpha.c (alpha_vms_set_reloc): Likewise. 4220 1.1 christos * aout-adobe.c (aout_32_set_reloc): Likewise. 4221 1.1 christos * bout.c (b_out_set_reloc): Likewise. 4222 1.1 christos * coff-mips.c (_bfd_ecoff_set_reloc): Likewise. 4223 1.1 christos * i386os9k.c (aout_32_set_reloc): Likewise. 4224 1.1 christos * ieee.c (ieee_set_reloc): Likewise. 4225 1.1 christos * oasys.c (oasys_set_reloc): Likewise. 4226 1.1 christos * som.c (som_set_reloc): Likewise. 4227 1.1 christos * versados.c (versados_set_reloc): Likewise. 4228 1.1 christos * coff64-rs6000.c (rs6000_xcoff64_vec): Add 4229 1.1 christos _bfd_generic_set_reloc. 4230 1.1 christos (rs6000_xcoff64_aix_vec): LIkewise. 4231 1.1 christos * libbfd.c (_bfd_norelocs_set_reloc): New function. 4232 1.1 christos * libbfd-in.h: Prototype for _bfd_norelocs_set_reloc. 4233 1.1 christos * i386msdos.c (msdos_set_reloc): Define to 4234 1.1 christos _bfd_norelocs_set_reloc. 4235 1.1 christos * elfcode.h (elf_set_reloc): Define. 4236 1.1 christos * bfd-in2.h: Regenerated. 4237 1.1 christos 4238 1.1 christos 2017-05-10 H.J. Lu <hongjiu.lu (a] intel.com> 4239 1.1 christos 4240 1.1 christos PR ld/21481 4241 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Use .plt.bnd 4242 1.1 christos for IFUNC function address. 4243 1.1 christos 4244 1.1 christos 2017-05-10 Claudiu Zissulescu <claziss (a] synopsys.com> 4245 1.1 christos 4246 1.1 christos * elf32-arc.c (FEATURE_LIST_NAME): Define. 4247 1.1 christos (CONFLICT_LIST): Likewise. 4248 1.1 christos (opcode/arc-attrs.h): Include. 4249 1.1 christos (arc_elf_print_private_bfd_data): Print OSABI v4 flag. 4250 1.1 christos (arc_extract_features): New file. 4251 1.1 christos (arc_stralloc): Likewise. 4252 1.1 christos (arc_elf_merge_attributes): Likewise. 4253 1.1 christos (arc_elf_merge_private_bfd_data): Use object attributes. 4254 1.1 christos (bfd_arc_get_mach_from_attributes): New function. 4255 1.1 christos (arc_elf_object_p): Use object attributes. 4256 1.1 christos (arc_elf_final_write_processing): Likewise. 4257 1.1 christos (elf32_arc_obj_attrs_arg_type): New function. 4258 1.1 christos (elf32_arc_obj_attrs_handle_unknown): Likewise. 4259 1.1 christos (elf32_arc_section_from_shdr): Likewise. 4260 1.1 christos (elf_backend_obj_attrs_vendor): Define. 4261 1.1 christos (elf_backend_obj_attrs_section): Likewise. 4262 1.1 christos (elf_backend_obj_attrs_arg_type): Likewise. 4263 1.1 christos (elf_backend_obj_attrs_section_type): Likewise. 4264 1.1 christos (elf_backend_obj_attrs_handle_unknown): Likewise. 4265 1.1 christos (elf_backend_section_from_shdr): Likewise. 4266 1.1 christos 4267 1.1 christos 2017-05-09 Andrew Goedhart <Andrewgoedhart (a] simplepowersolutions.co.za> 4268 1.1 christos 4269 1.1 christos PR ld/21458 4270 1.1 christos * elf32-arm.c (elf32_arm_final_link_relocate): Set the bottom bit 4271 1.1 christos of the value when resolving a R_ARM_THM_ALU_PREL_11_0 relocation 4272 1.1 christos and the destination is a Thumb symbol. 4273 1.1 christos 4274 1.1 christos 2017-05-08 H.J. Lu <hongjiu.lu (a] intel.com> 4275 1.1 christos 4276 1.1 christos * elf32-i386.c (elf_i386_get_synthetic_symtab): Add missing 4277 1.1 christos initializer to silence GCC 4.2. 4278 1.1 christos * lf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Likewise. 4279 1.1 christos 4280 1.1 christos 2017-05-08 H.J. Lu <hongjiu.lu (a] intel.com> 4281 1.1 christos 4282 1.1 christos * elf64-x86-64.c (PLT_ENTRY_SIZE): Renamed to ... 4283 1.1 christos (LAZY_PLT_ENTRY_SIZE): This. 4284 1.1 christos (NON_LAZY_PLT_ENTRY_SIZE): New. 4285 1.1 christos (elf_x86_64_plt0_entry): Renamed to ... 4286 1.1 christos (elf_x86_64_lazy_plt0_entry): This. 4287 1.1 christos (elf_x86_64_plt_entry): Renamed to ... 4288 1.1 christos (elf_x86_64_lazy_plt_entry): This. 4289 1.1 christos (elf_x86_64_bnd_plt0_entry): Renamed to ... 4290 1.1 christos (elf_x86_64_lazy_bnd_plt0_entry): This. 4291 1.1 christos (elf_x86_64_legacy_plt_entry): Removed. 4292 1.1 christos (elf_x86_64_bnd_plt_entry): Renamed to ... 4293 1.1 christos (elf_x86_64_lazy_bnd_plt_entry): This. 4294 1.1 christos (elf_x86_64_legacy_plt2_entry): Renamed to ... 4295 1.1 christos (elf_x86_64_non_lazy_plt_entry): This. 4296 1.1 christos (elf_x86_64_bnd_plt2_entry): Renamed to ... 4297 1.1 christos (elf_x86_64_non_lazy_bnd_plt_entry): This. 4298 1.1 christos (elf_x86_64_eh_frame_plt): Renamed to ... 4299 1.1 christos (elf_x86_64_eh_frame_lazy_plt): This. 4300 1.1 christos (elf_x86_64_eh_frame_bnd_plt): Renamed to ... 4301 1.1 christos (elf_x86_64_eh_frame_lazy_bnd_plt): This. 4302 1.1 christos (elf_x86_64_eh_frame_plt_got): Renamed to ... 4303 1.1 christos (elf_x86_64_eh_frame_non_lazy_plt): This. 4304 1.1 christos (elf_x86_64_lazy_plt_layout): New. 4305 1.1 christos (elf_x86_64_non_lazy_plt_layout): Likewise. 4306 1.1 christos (elf_x86_64_plt_layout): Likewise. 4307 1.1 christos (elf_x86_64_backend_data): Remove PLT layout information. Add 4308 1.1 christos os for target system. 4309 1.1 christos (GET_PLT_ENTRY_SIZE): Removed. 4310 1.1 christos (elf_x86_64_lazy_plt): New. 4311 1.1 christos (elf_x86_64_non_lazy_plt): Likewise. 4312 1.1 christos (elf_x86_64_lazy_bnd_plt): Likewise. 4313 1.1 christos (elf_x86_64_non_lazy_bnd_plt): Likewise. 4314 1.1 christos (elf_x86-64_arch_bed): Updated. 4315 1.1 christos (elf_x86_64_link_hash_table): Add plt, lazy_plt and non_lazy_plt. 4316 1.1 christos (elf_x86_64_create_dynamic_sections): Removed. 4317 1.1 christos (elf_x86_64_check_relocs): Don't check elf.dynobj. Don't call 4318 1.1 christos _bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section. 4319 1.1 christos (elf_x86-64_adjust_dynamic_symbol): Updated. 4320 1.1 christos (elf_x86_64_allocate_dynrelocs): Updated. Pass 0 as PLT header 4321 1.1 christos size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate 4322 1.1 christos size for PLT0 if there is no PLT0. Get plt_entry_size from 4323 1.1 christos non_lazy_plt for non-lazy PLT entries. 4324 1.1 christos (elf_x86_64_size_dynamic_sections): Updated. Get plt_entry_size 4325 1.1 christos from non_lazy_plt for non-lazy PLT entries. 4326 1.1 christos (elf_x86-64_relocate_section): Updated. Properly get PLT index 4327 1.1 christos if there is no PLT0. 4328 1.1 christos (elf_x86_64_finish_dynamic_symbol): Updated. Fill the first slot 4329 1.1 christos in the PLT entry with generic PLT layout. Fill the non-lazy PLT 4330 1.1 christos entries with non-lazy PLT layout. Don't fill the second and third 4331 1.1 christos slots in the PLT entry if there is no PLT0. 4332 1.1 christos (elf_x86_64_finish_dynamic_sections): Updated. Don't fill PLT0 4333 1.1 christos if there is no PLT0. Set sh_entsize on the .plt.got section. 4334 1.1 christos (compare_relocs): New. 4335 1.1 christos (elf_x86_64_plt_type): Likewise. 4336 1.1 christos (elf_x86_64_plt): Likewise. 4337 1.1 christos (elf_x86_64_nacl_plt): New. Forward declaration. 4338 1.1 christos (elf_x86_64_get_plt_sym_val): Removed. 4339 1.1 christos (elf_x86_64_get_synthetic_symtab): Rewrite to check PLT sections 4340 1.1 christos against all dynamic relocations. 4341 1.1 christos (elf_x86_64_link_setup_gnu_properties): New function. 4342 1.1 christos (elf_backend_create_dynamic_sections): Updated. 4343 1.1 christos (elf_backend_setup_gnu_properties): New. 4344 1.1 christos (elf_x86_64_nacl_plt): New. 4345 1.1 christos (elf_x86_64_nacl_arch_bed): Updated. 4346 1.1 christos 4347 1.1 christos 2017-05-08 H.J. Lu <hongjiu.lu (a] intel.com> 4348 1.1 christos 4349 1.1 christos * elf32-i386.c (PLT_ENTRY_SIZE): Renamed to ... 4350 1.1 christos (LAZY_PLT_ENTRY_SIZE): This. 4351 1.1 christos (NON_LAZY_PLT_ENTRY_SIZE): New. 4352 1.1 christos (elf_i386_plt0_entry): Renamed to ... 4353 1.1 christos (elf_i386_lazy_plt0_entry): This. 4354 1.1 christos (elf_i386_plt_entry): Renamed to ... 4355 1.1 christos (elf_i386_lazy_plt_entry): This. 4356 1.1 christos (elf_i386_pic_plt0_entry): Renamed to ... 4357 1.1 christos (elf_i386_pic_lazy_plt0_entry): This. 4358 1.1 christos (elf_i386_pic_plt_entry): Renamed to ... 4359 1.1 christos (elf_i386_pic_lazy_plt_entry): This. 4360 1.1 christos (elf_i386_got_plt_entry): Renamed to ... 4361 1.1 christos (elf_i386_non_lazy_plt_entry): This. 4362 1.1 christos (elf_i386_pic_got_plt_entry): Renamed to ... 4363 1.1 christos (elf_i386_pic_non_lazy_plt_entry): This. 4364 1.1 christos (elf_i386_eh_frame_plt): Renamed to ... 4365 1.1 christos (elf_i386_eh_frame_lazy_plt): This. 4366 1.1 christos (elf_i386_eh_frame_plt_got): Renamed to ... 4367 1.1 christos (elf_i386_eh_frame_non_lazy_plt): This. 4368 1.1 christos (elf_i386_plt_layout): Renamed to ... 4369 1.1 christos (elf_i386_lazy_plt_layout): This. Remove eh_frame_plt_got and 4370 1.1 christos eh_frame_plt_got_size. 4371 1.1 christos (elf_i386_non_lazy_plt_layout): New. 4372 1.1 christos (elf_i386_plt_layout): Likewise. 4373 1.1 christos (elf_i386_non_lazy_plt): Likewise. 4374 1.1 christos (GET_PLT_ENTRY_SIZE): Removed. 4375 1.1 christos (elf_i386_plt): Renamed to ... 4376 1.1 christos (elf_i386_lazy_plt): This. 4377 1.1 christos (elf_i386_backend_data): Remove plt. Rename is_vxworks to os. 4378 1.1 christos (elf_i386_arch_bed): Updated. 4379 1.1 christos (elf_i386_link_hash_table): Add plt, lazy_plt and non_lazy_plt. 4380 1.1 christos (elf_i386_create_dynamic_sections): Removed. 4381 1.1 christos (elf_i386_check_relocs): Don't check elf.dynobj. Don't call 4382 1.1 christos _bfd_elf_create_ifunc_sections nor _bfd_elf_create_got_section. 4383 1.1 christos (elf_i386_adjust_dynamic_symbol): Updated. 4384 1.1 christos (elf_i386_allocate_dynrelocs): Updated. Pass 0 as PLT header 4385 1.1 christos size to _bfd_elf_allocate_ifunc_dyn_relocs and don't allocate 4386 1.1 christos size for PLT0 if there is no PLT0. 4387 1.1 christos (elf_i386_size_dynamic_sections): Updated. Check whether GOT 4388 1.1 christos output section is discarded only if GOT isn't empty. 4389 1.1 christos (elf_i386_relocate_section): Updated. Properly get PLT index 4390 1.1 christos if there is no PLT0. 4391 1.1 christos (elf_i386_finish_dynamic_symbol): Updated. Don't fill the 4392 1.1 christos second and third slots in the PLT entry if there is no PLT0. 4393 1.1 christos (elf_i386_finish_dynamic_sections): Updated. Don't fill PLT0 4394 1.1 christos if there is no PLT0. Set sh_entsize on the .plt.got section. 4395 1.1 christos (elf_i386_nacl_plt): Forward declaration. 4396 1.1 christos (elf_i386_get_plt_sym_val): Removed. 4397 1.1 christos (elf_i386_get_synthetic_symtab): Rewrite to check PLT sections 4398 1.1 christos against all dynamic relocations. 4399 1.1 christos (elf_i386_link_setup_gnu_properties): New function. 4400 1.1 christos (elf_backend_create_dynamic_sections): Updated. 4401 1.1 christos (elf_backend_setup_gnu_properties): New. 4402 1.1 christos (elf_i386_nacl_plt): Updated. 4403 1.1 christos (elf_i386_nacl_arch_bed): Likewise. 4404 1.1 christos (elf_i386_vxworks_arch_bed): Likewise. 4405 1.1 christos 4406 1.1 christos 2017-05-08 Thomas Preud'homme <thomas.preudhomme (a] arm.com> 4407 1.1 christos 4408 1.1 christos * elflink.c (elf_output_implib): Remove executable flag from import 4409 1.1 christos library bfd. 4410 1.1 christos * elf32-arm.c (elf32_arm_filter_implib_symbols): Assert that the import 4411 1.1 christos library is a relocatable object file. 4412 1.1 christos 4413 1.1 christos 2017-05-01 Senthil Kumar Selvaraj <senthil_kumar.selvaraj (a] atmel.com> 4414 1.1 christos 4415 1.1 christos PR ld/21404 4416 1.1 christos * elf32-avr.c (avr_should_move_sym): New function. 4417 1.1 christos (avr_should_reduce_sym_size): Likewise. 4418 1.1 christos (avr_should_increase_sym_size): Likewise. 4419 1.1 christos (elf32_avr_relax_delete_bytes): Adjust symbol values 4420 1.1 christos and sizes by calling new functions. 4421 1.1 christos 4422 1.1 christos 2017-05-01 Palmer Dabbelt <palmer (a] dabbelt.com> 4423 1.1 christos 4424 1.1 christos * config.bfd (riscv32-*): Enable rv64. 4425 1.1 christos 4426 1.1 christos 2017-05-02 Alan Modra <amodra (a] gmail.com> 4427 1.1 christos 4428 1.1 christos PR 21384 4429 1.1 christos * elflink.c (bfd_elf_link_mark_dynamic_symbol): Test h->non_elf 4430 1.1 christos rather than h->root.type == bfd_link_hash_new. 4431 1.1 christos (bfd_elf_record_link_assignment): Similarly, call 4432 1.1 christos bfd_elf_link_mark_dynamic_symbol when h->non_elf. 4433 1.1 christos 4434 1.1 christos 2017-04-29 Alan Modra <amodra (a] gmail.com> 4435 1.1 christos 4436 1.1 christos PR 21432 4437 1.1 christos * reloc.c (reloc_offset_in_range): New function. 4438 1.1 christos (bfd_perform_relocation, bfd_install_relocation): Use it. 4439 1.1 christos (_bfd_final_link_relocate): Likewise. 4440 1.1 christos 4441 1.1 christos 2017-04-28 H.J. Lu <hongjiu.lu (a] intel.com> 4442 1.1 christos 4443 1.1 christos * elf32-i386.c (elf_i386_allocate_dynrelocs): Check plt_got 4444 1.1 christos before using .plt.got. 4445 1.1 christos * elf64-x86-64.c (elf_x86_64_allocate_dynrelocs): Likewise. 4446 1.1 christos 4447 1.1 christos 2017-04-27 H.J. Lu <hongjiu.lu (a] intel.com> 4448 1.1 christos 4449 1.1 christos * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Use "=" 4450 1.1 christos instead of "+=" to update 0. 4451 1.1 christos 4452 1.1 christos 2017-04-27 H.J. Lu <hongjiu.lu (a] intel.com> 4453 1.1 christos 4454 1.1 christos * elf32-i386.c (elf_i386_create_dynamic_sections): Create the 4455 1.1 christos .plt.got section here. 4456 1.1 christos (elf_i386_check_relocs): Don't create the .plt.got section. 4457 1.1 christos * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Create 4458 1.1 christos the .plt.got and .plt.bnd sections here. 4459 1.1 christos (elf_x86_64_check_relocs): Don't create the .plt.got nor 4460 1.1 christos .plt.bnd sections. 4461 1.1 christos 4462 1.1 christos 2017-04-27 H.J. Lu <hongjiu.lu (a] intel.com> 4463 1.1 christos 4464 1.1 christos * elf64-x86-64.c (elf_x86_64_link_hash_entry): Remove 4465 1.1 christos has_bnd_reloc. 4466 1.1 christos (elf_x86_64_link_hash_newfunc): Don't clear has_bnd_reloc. 4467 1.1 christos (elf_x86_64_copy_indirect_symbol): Don't copy has_bnd_reloc. 4468 1.1 christos (elf_x86_64_check_relocs): Don't set has_bnd_reloc. 4469 1.1 christos (elf_x86_64_finish_dynamic_symbol): Check bndplt instead of 4470 1.1 christos has_bnd_reloc. 4471 1.1 christos 4472 1.1 christos 2017-04-27 H.J. Lu <hongjiu.lu (a] intel.com> 4473 1.1 christos 4474 1.1 christos * elf-bfd.h (elf_backend_data): Change setup_gnu_properties 4475 1.1 christos to return bfd *. 4476 1.1 christos (_bfd_elf_link_setup_gnu_properties): Return bfd *. 4477 1.1 christos * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Return 4478 1.1 christos the first relocatable ELF input with GNU properties. 4479 1.1 christos 4480 1.1 christos 2017-04-27 H.J. Lu <hongjiu.lu (a] intel.com> 4481 1.1 christos 4482 1.1 christos * elf32-i386.c (elf_i386_finish_dynamic_sections): Simplify 4483 1.1 christos VxWorks for non-PIC. 4484 1.1 christos 4485 1.1 christos 2017-04-27 Alan Modra <amodra (a] gmail.com> 4486 1.1 christos 4487 1.1 christos * elf-bfd.h (struct elf_backend_data): Make asection param of 4488 1.1 christos elf_backend_eh_frame_address_size const. 4489 1.1 christos (_bfd_elf_eh_frame_address_size): Likewise. 4490 1.1 christos * elf32-m32c.c (_bfd_m32c_elf_eh_frame_address_size): Likewise. 4491 1.1 christos * elf32-msp430.c (elf32_msp430_eh_frame_address_size): Likewise. 4492 1.1 christos * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): Likewise. 4493 1.1 christos * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Likewise. 4494 1.1 christos * elf-eh-frame.c (_bfd_elf_eh_frame_address_size): Likewise. 4495 1.1 christos (next_cie_fde_offset): Constify params. 4496 1.1 christos (offset_adjust, adjust_eh_frame_local_symbols): Likewise. 4497 1.1 christos 4498 1.1 christos 2017-04-27 Alan Modra <amodra (a] gmail.com> 4499 1.1 christos 4500 1.1 christos * elf-bfd.h (struct eh_cie_fde): Add aug_str_len and aug_data_len. 4501 1.1 christos (_bfd_elf_adjust_eh_frame_global_symbol): Declare. 4502 1.1 christos * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Set aug_str_len and 4503 1.1 christos aug_data_len. 4504 1.1 christos (offset_adjust): New function. 4505 1.1 christos (_bfd_elf_adjust_eh_frame_global_symbol): Likewise. 4506 1.1 christos (adjust_eh_frame_local_symbols): Likewise. 4507 1.1 christos (_bfd_elf_discard_section_eh_frame): Call adjust_eh_frame_local_symbols 4508 1.1 christos after changing anything. Return true if anything changed. 4509 1.1 christos * elflink.c (bfd_elf_discard_info): If .eh_frame changed, call 4510 1.1 christos _bfd_elf_adjust_eh_frame_global_symbol for globals. 4511 1.1 christos 4512 1.1 christos 2017-04-27 Alan Modra <amodra (a] gmail.com> 4513 1.1 christos 4514 1.1 christos * elflink.c (_bfd_elf_link_hash_hide_symbol): Clear dynstr_index 4515 1.1 christos when force_local. 4516 1.1 christos 4517 1.1 christos 2017-04-27 Alan Modra <amodra (a] gmail.com> 4518 1.1 christos 4519 1.1 christos * elf32-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Define. 4520 1.1 christos (ppc_elf_select_plt_layout, ppc_elf_tls_setup): Use it. 4521 1.1 christos (ppc_elf_adjust_dynamic_symbol, allocate_dynrelocs): Likewise. 4522 1.1 christos (ppc_elf_relocate_section): Likewise. Delete silly optimisation 4523 1.1 christos for undef and undefweak dyn_relocs. 4524 1.1 christos * elf64-ppc.c (UNDEFWEAK_NO_DYNAMIC_RELOC): Define. 4525 1.1 christos (ppc64_elf_adjust_dynamic_symbol, ppc64_elf_tls_setup): Use it. 4526 1.1 christos (allocate_got, allocate_dynrelocs): Likewise. 4527 1.1 christos (ppc64_elf_relocate_section): Likewise. 4528 1.1 christos 4529 1.1 christos 2017-04-26 H.J. Lu <hongjiu.lu (a] intel.com> 4530 1.1 christos 4531 1.1 christos * elf32-i386.c (elf_i386_size_dynamic_sections): Alwasys add 4532 1.1 christos DT_PLTRELSZ, DT_PLTREL and DT_JMPREL for .rel.plt section. 4533 1.1 christos * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Alwasys 4534 1.1 christos add DT_PLTRELSZ, DT_PLTREL and DT_JMPREL for .rela.plt section. 4535 1.1 christos 4536 1.1 christos 2017-04-26 Nick Clifton <nickc (a] redhat.com> 4537 1.1 christos 4538 1.1 christos PR binutils/21434 4539 1.1 christos * reloc.c (bfd_perform_relocation): Check for a negative address 4540 1.1 christos in the reloc. 4541 1.1 christos 4542 1.1 christos 2017-04-26 Maciej W. Rozycki <macro (a] imgtec.com> 4543 1.1 christos 4544 1.1 christos PR ld/21334 4545 1.1 christos * elf-bfd.h (elf_backend_data): Add `always_renumber_dynsyms' 4546 1.1 christos member. 4547 1.1 christos * elfxx-target.h [!elf_backend_always_renumber_dynsyms] 4548 1.1 christos (elf_backend_always_renumber_dynsyms): Define. 4549 1.1 christos (elfNN_bed): Initialize `always_renumber_dynsyms' member. 4550 1.1 christos * elfxx-mips.h (elf_backend_always_renumber_dynsyms): Define. 4551 1.1 christos * elflink.c (bfd_elf_size_dynamic_sections): Also call 4552 1.1 christos `_bfd_elf_link_renumber_dynsyms' if the backend has requested 4553 1.1 christos it. 4554 1.1 christos (bfd_elf_size_dynsym_hash_dynstr): Likewise. 4555 1.1 christos 4556 1.1 christos 2017-04-26 Maciej W. Rozycki <macro (a] imgtec.com> 4557 1.1 christos 4558 1.1 christos * elflink.c (bfd_elf_size_dynamic_sections): Only call 4559 1.1 christos `_bfd_elf_link_renumber_dynsyms' after section GC if dynamic 4560 1.1 christos sections have been created. 4561 1.1 christos 4562 1.1 christos 2017-04-26 Nick Clifton <nickc (a] redhat.com> 4563 1.1 christos 4564 1.1 christos PR binutils/21431 4565 1.1 christos * compress.c (bfd_init_section_compress_status): Check the return 4566 1.1 christos value from bfd_malloc. 4567 1.1 christos 4568 1.1 christos 2017-04-24 H.J. Lu <hongjiu.lu (a] intel.com> 4569 1.1 christos 4570 1.1 christos * elf64-x86-64.c (elf_x86_64_link_hash_entry): Add 4571 1.1 christos no_finish_dynamic_symbol. 4572 1.1 christos (elf_x86_64_link_hash_newfunc): Set no_finish_dynamic_symbol to 4573 1.1 christos 0. 4574 1.1 christos (elf_x86_64_allocate_dynrelocs): If a symbol isn't undefined 4575 1.1 christos weak symbol, don't make it dynamic. 4576 1.1 christos (elf_x86_64_relocate_section): If a symbol isn't dynamic in PIC, 4577 1.1 christos set no_finish_dynamic_symbol and generate R_X86_64_RELATIVE 4578 1.1 christos relocation for GOT reference. 4579 1.1 christos (elf_x86_64_finish_dynamic_symbol): Abort if 4580 1.1 christos no_finish_dynamic_symbol isn't 0. 4581 1.1 christos 4582 1.1 christos 2017-04-24 H.J. Lu <hongjiu.lu (a] intel.com> 4583 1.1 christos 4584 1.1 christos PR ld/21402 4585 1.1 christos * elf32-i386.c (elf_i386_allocate_dynrelocs): If a symbol isn't 4586 1.1 christos undefined weak symbol, don't make it dynamic. 4587 1.1 christos (elf_i386_relocate_section): If a symbol isn't dynamic in PIC, 4588 1.1 christos set no_finish_dynamic_symbol and generate R_386_RELATIVE 4589 1.1 christos relocation for R_386_GOT32. 4590 1.1 christos 4591 1.1 christos 2017-04-24 H.J. Lu <hongjiu.lu (a] intel.com> 4592 1.1 christos 4593 1.1 christos PR ld/21425 4594 1.1 christos * elf32-i386.c (ELF_MAXPAGESIZE): Set to 0x1000 for VxWorks. 4595 1.1 christos 4596 1.1 christos 2017-04-23 Alan Modra <amodra (a] gmail.com> 4597 1.1 christos 4598 1.1 christos PR 21414 4599 1.1 christos * section.c (GLOBAL_SYM_INIT): Make available in bfd.h. 4600 1.1 christos * elf.c (lcomm_sym): New. 4601 1.1 christos (_bfd_elf_large_com_section): Use lcomm_sym section symbol. 4602 1.1 christos * bfd-in2.h: Regenerate. 4603 1.1 christos 4604 1.1 christos 2017-04-23 Alan Modra <amodra (a] gmail.com> 4605 1.1 christos 4606 1.1 christos PR 21412 4607 1.1 christos * elf-bfd.h (struct elf_backend_data <get_reloc_section>): Change 4608 1.1 christos parameters and comment. 4609 1.1 christos (_bfd_elf_get_reloc_section): Delete. 4610 1.1 christos (_bfd_elf_plt_get_reloc_section): Declare. 4611 1.1 christos * elf.c (_bfd_elf_plt_get_reloc_section, elf_get_reloc_section): 4612 1.1 christos New functions. Don't blindly skip over assumed .rel/.rela prefix. 4613 1.1 christos Extracted from.. 4614 1.1 christos (_bfd_elf_get_reloc_section): ..here. Delete. 4615 1.1 christos (assign_section_numbers): Call elf_get_reloc_section. 4616 1.1 christos * elf64-ppc.c (elf_backend_get_reloc_section): Define. 4617 1.1 christos * elfxx-target.h (elf_backend_get_reloc_section): Update. 4618 1.1 christos 4619 1.1 christos 2017-04-23 Alan Modra <amodra (a] gmail.com> 4620 1.1 christos 4621 1.1 christos PR 21409 4622 1.1 christos * dwarf2.c (_bfd_dwarf2_find_nearest_line): Don't segfault when 4623 1.1 christos no symbols. 4624 1.1 christos 4625 1.1 christos 2017-04-21 H.J. Lu <hongjiu.lu (a] intel.com> 4626 1.1 christos 4627 1.1 christos PR ld/21402 4628 1.1 christos * elf32-i386.c (elf_i386_link_hash_entry): Add 4629 1.1 christos no_finish_dynamic_symbol. 4630 1.1 christos (elf_i386_link_hash_newfunc): Set no_finish_dynamic_symbol to 0. 4631 1.1 christos (elf_i386_allocate_dynrelocs): If a symbol isn't undefined weak 4632 1.1 christos symbol, don't make it dynamic in PIE. 4633 1.1 christos (elf_i386_relocate_section): If a symbol isn't dynamic in PIE, 4634 1.1 christos set no_finish_dynamic_symbol and generate R_386_RELATIVE 4635 1.1 christos relocation for R_386_GOT32 4636 1.1 christos (elf_i386_finish_dynamic_symbol): Abort if no_finish_dynamic_symbol 4637 1.1 christos isn't 0. 4638 1.1 christos 4639 1.1 christos 2017-04-21 H.J. Lu <hongjiu.lu (a] intel.com> 4640 1.1 christos 4641 1.1 christos PR ld/19617 4642 1.1 christos PR ld/21086 4643 1.1 christos * elflink.c (elf_link_add_object_symbols): Require 4644 1.1 christos --no-dynamic-linker with -E/--dynamic-list when creating 4645 1.1 christos dynamic sections. 4646 1.1 christos 4647 1.1 christos 2017-04-20 Maciej W. Rozycki <macro (a] imgtec.com> 4648 1.1 christos 4649 1.1 christos * elflink.c (_bfd_elf_symbol_refs_local_p): Always return TRUE 4650 1.1 christos if forced local. 4651 1.1 christos 4652 1.1 christos 2017-04-20 Maciej W. Rozycki <macro (a] imgtec.com> 4653 1.1 christos 4654 1.1 christos * elfxx-mips.c (_bfd_mips_elf_final_link): Reorder comment about 4655 1.1 christos dynamic symbol sorting. 4656 1.1 christos 4657 1.1 christos 2017-04-20 H.J. Lu <hongjiu.lu (a] intel.com> 4658 1.1 christos 4659 1.1 christos PR ld/21382 4660 1.1 christos * elflink.c (elf_link_add_object_symbols): Preserve 4661 1.1 christos dynamic_ref_after_ir_def when restoring the symbol table for 4662 1.1 christos unneeded dynamic object. 4663 1.1 christos 4664 1.1 christos 2017-04-19 H.J. Lu <hongjiu.lu (a] intel.com> 4665 1.1 christos 4666 1.1 christos PR ld/21401 4667 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't abort 4668 1.1 christos on on undefined IFUNC symbol in the second PLT. 4669 1.1 christos 4670 1.1 christos 2017-04-19 Wedson Almeida Filho <wedsonaf (a] gmail.com> 4671 1.1 christos 4672 1.1 christos * peXXigen.c (pe_print_reloc): Correct chunk_end. 4673 1.1 christos 4674 1.1 christos 2017-04-19 Alan Modra <amodra (a] gmail.com> 4675 1.1 christos 4676 1.1 christos * elflink.c (_bfd_elf_adjust_dynamic_symbol): Hide undefweak 4677 1.1 christos or make dynamic for info->dynamic_undefined_weak 0 and 1. 4678 1.1 christos * elf32-ppc.c:Formatting. 4679 1.1 christos (ensure_undefweak_dynamic): Don't make dynamic when 4680 1.1 christos info->dynamic_undefined_weak is zero. 4681 1.1 christos (allocate_dynrelocs): Discard undefweak dyn_relocs for 4682 1.1 christos info->dynamic_undefined_weak. Discard undef dyn_relocs when 4683 1.1 christos not default visibility. Discard undef and undefweak 4684 1.1 christos dyn_relocs earlier. 4685 1.1 christos (ppc_elf_relocate_section): Adjust to suit. 4686 1.1 christos * elf64-ppc.c: Formatting. 4687 1.1 christos (ensure_undefweak_dynamic): Don't make dynamic when 4688 1.1 christos info->dynamic_undefined_weak is zero. 4689 1.1 christos (allocate_dynrelocs): Discard undefweak dyn_relocs for 4690 1.1 christos info->dynamic_undefined_weak. Discard them earlier. 4691 1.1 christos 4692 1.1 christos 2017-04-17 H.J. Lu <hongjiu.lu (a] intel.com> 4693 1.1 christos 4694 1.1 christos PR ld/21389 4695 1.1 christos * elflink.c (bfd_elf_size_dynamic_sections): Get soname index 4696 1.1 christos before generating the version definition section. 4697 1.1 christos 4698 1.1 christos 2017-04-17 Alan Modra <amodra (a] gmail.com> 4699 1.1 christos 4700 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Undo dynamic linking 4701 1.1 christos state when a regular object file defines a symbol with 4702 1.1 christos incompatible type to that defined by an earlier shared lib. 4703 1.1 christos 4704 1.1 christos 2017-04-13 Alan Modra <amodra (a] gmail.com> 4705 1.1 christos 4706 1.1 christos * coffcode.h: Wrap some overly long _bfd_error_handler args. 4707 1.1 christos * elf.c: Likewise. 4708 1.1 christos * elf32-arm.c: Likewise. 4709 1.1 christos * elf32-i386.c: Likewise. 4710 1.1 christos * elf32-mep.c: Likewise. 4711 1.1 christos * elf64-ia64-vms.c: Likewise. 4712 1.1 christos * elf64-x86-64.c: Likewise. 4713 1.1 christos * elflink.c: Likewise. 4714 1.1 christos * elfnn-ia64.c: Likewise. 4715 1.1 christos * elfxx-mips.c: Likewise. 4716 1.1 christos 4717 1.1 christos 2017-04-13 Alan Modra <amodra (a] gmail.com> 4718 1.1 christos 4719 1.1 christos * aoutx.h: Use %B and %A in error messages throughout file. 4720 1.1 christos * aout-cris.c: Likewise. 4721 1.1 christos * archive.c: Likewise. 4722 1.1 christos * binary.c: Likewise. 4723 1.1 christos * coff-rs6000.c: Likewise. 4724 1.1 christos * coff-tic4x.c: Likewise. 4725 1.1 christos * coffcode.h: Likewise. 4726 1.1 christos * coffgen.c: Likewise. 4727 1.1 christos * cofflink.c: Likewise. 4728 1.1 christos * coffswap.h: Likewise. 4729 1.1 christos * cpu-arm.c: Likewise. 4730 1.1 christos * elf-eh-frame.c: Likewise. 4731 1.1 christos * elf-m10300.c: Likewise. 4732 1.1 christos * elf.c: Likewise. 4733 1.1 christos * elf32-arc.c: Likewise. 4734 1.1 christos * elf32-arm.c: Likewise. 4735 1.1 christos * elf32-bfin.c: Likewise. 4736 1.1 christos * elf32-frv.c: Likewise. 4737 1.1 christos * elf32-iq2000.c: Likewise. 4738 1.1 christos * elf32-m32c.c: Likewise. 4739 1.1 christos * elf32-microblaze.c: Likewise. 4740 1.1 christos * elf32-nds32.c: Likewise. 4741 1.1 christos * elf32-rl78.c: Likewise. 4742 1.1 christos * elf32-rx.c: Likewise. 4743 1.1 christos * elf32-score.c: Likewise. 4744 1.1 christos * elf32-score7.c: Likewise. 4745 1.1 christos * elf32-sh64.c: Likewise. 4746 1.1 christos * elf32-v850.c: Likewise. 4747 1.1 christos * elf32-vax.c: Likewise. 4748 1.1 christos * elf32-visium.c: Likewise. 4749 1.1 christos * elf64-ia64-vms.c: Likewise. 4750 1.1 christos * elf64-mmix.c: Likewise. 4751 1.1 christos * elf64-sh64.c: Likewise. 4752 1.1 christos * elfcode.h: Likewise. 4753 1.1 christos * elfnn-aarch64.c: Likewise. 4754 1.1 christos * elfnn-ia64.c: Likewise. 4755 1.1 christos * elfxx-mips.c: Likewise. 4756 1.1 christos * hpux-core.c: Likewise. 4757 1.1 christos * ieee.c: Likewise. 4758 1.1 christos * ihex.c: Likewise. 4759 1.1 christos * linker.c: Likewise. 4760 1.1 christos * merge.c: Likewise. 4761 1.1 christos * mmo.c: Likewise. 4762 1.1 christos * oasys.c: Likewise. 4763 1.1 christos * pdp11.c: Likewise. 4764 1.1 christos * peXXigen.c: Likewise. 4765 1.1 christos * rs6000-core.c: Likewise. 4766 1.1 christos * vms-alpha.c: Likewise. 4767 1.1 christos * xcofflink.c: Likewise. 4768 1.1 christos 4769 1.1 christos 2017-04-13 Alan Modra <amodra (a] gmail.com> 4770 1.1 christos 4771 1.1 christos * bfd.c (PRINT_TYPE): Define. 4772 1.1 christos (_doprnt): New function. 4773 1.1 christos (error_handler_internal): Use _doprnt. 4774 1.1 christos * coff-arm.c: Put %A and %B arguments to _bfd_error_handler 4775 1.1 christos calls in their natural order, throughout file. 4776 1.1 christos * coff-mcore.c: Likewise. 4777 1.1 christos * coff-ppc.c: Likewise. 4778 1.1 christos * coff-tic80.c: Likewise. 4779 1.1 christos * cofflink.c: Likewise. 4780 1.1 christos * elf-s390-common.c: Likewise. 4781 1.1 christos * elf.c: Likewise. 4782 1.1 christos * elf32-arm.c: Likewise. 4783 1.1 christos * elf32-i386.c: Likewise. 4784 1.1 christos * elf32-m32r.c: Likewise. 4785 1.1 christos * elf32-msp430.c: Likewise. 4786 1.1 christos * elf32-spu.c: Likewise. 4787 1.1 christos * elf64-ia64-vms.c: Likewise. 4788 1.1 christos * elf64-sparc.c: Likewise. 4789 1.1 christos * elf64-x86-64.c: Likewise. 4790 1.1 christos * elflink.c: Likewise. 4791 1.1 christos * elfnn-aarch64.c: Likewise. 4792 1.1 christos * elfnn-ia64.c: Likewise. 4793 1.1 christos * elfxx-mips.c: Likewise. 4794 1.1 christos 4795 1.1 christos 2017-04-13 Alan Modra <amodra (a] gmail.com> 4796 1.1 christos 4797 1.1 christos * elf32-arm.c (arm_type_of_stub): Supply missing args to "long 4798 1.1 christos branch veneers" error. Fix double space and format message. 4799 1.1 christos * elf32-avr.c (avr_add_stub): Do not pass NULL as %B arg. 4800 1.1 christos * elf64-ppc.c (tocsave_find): Supply missing %B arg. 4801 1.1 christos 4802 1.1 christos 2017-04-13 Alan Modra <amodra (a] gmail.com> 4803 1.1 christos 4804 1.1 christos * bfd-in2.h: Regenerate. 4805 1.1 christos 4806 1.1 christos 2017-04-11 H.J. Lu <hongjiu.lu (a] intel.com> 4807 1.1 christos 4808 1.1 christos * elf-properties.c (_bfd_elf_parse_gnu_properties): Remove the 4809 1.1 christos extra `\n' in warning/error messages. 4810 1.1 christos * elf32-i386.c (elf_i386_parse_gnu_properties): Likewise. 4811 1.1 christos * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. 4812 1.1 christos 4813 1.1 christos 2017-04-11 H.J. Lu <hongjiu.lu (a] intel.com> 4814 1.1 christos 4815 1.1 christos * elf-properties.c (_bfd_elf_parse_gnu_properties): Ignore 4816 1.1 christos processor-specific properties with generic ELF target vector. 4817 1.1 christos 4818 1.1 christos 2017-04-10 Qing Zhao <qing.zhao (a] oracle.com> 4819 1.1 christos 4820 1.1 christos * elf32-sparc.c (elf_backend_fixup_symbol): New. 4821 1.1 christos * elf64-sparc.c (elf_backend_fixup_symbol): New. 4822 1.1 christos * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): New. 4823 1.1 christos (_bfd_sparc_elf_link_hash_entry): Add has_got_reloc and 4824 1.1 christos has_non_got_reloc. 4825 1.1 christos (link_hash_newfunc): Initialize has_got_reloc and 4826 1.1 christos has_non_got_reloc. 4827 1.1 christos (_bfd_sparc_elf_size_dynamic_sections): Set interp to .interp 4828 1.1 christos section. 4829 1.1 christos (_bfd_sparc_elf_copy_indirect_symbol): Copy has_got_reloc and 4830 1.1 christos has_non_got_reloc. 4831 1.1 christos (_bfd_sparc_elf_check_relocs): Set has_got_reloc and 4832 1.1 christos has_non_got_reloc. 4833 1.1 christos (_bfd_sparc_elf_fixup_symbol): New function. 4834 1.1 christos (allocate_dynrelocs): Don't allocate space for dynamic 4835 1.1 christos relocations and discard relocations against resolved undefined 4836 1.1 christos weak symbols in executable. Don't make resolved undefined weak 4837 1.1 christos symbols in executable dynamic. Keep dynamic non-GOT/non-PLT 4838 1.1 christos relocation against undefined weak symbols in PIE. 4839 1.1 christos (_bfd_sparc_elf_relocate_section): Don't generate dynamic 4840 1.1 christos relocations against resolved undefined weak symbols in PIE 4841 1.1 christos (_bfd_sparc_elf_finish_dynamic_symbol): Keep PLT/GOT entries 4842 1.1 christos without ynamic PLT/GOT relocations for resolved undefined weak 4843 1.1 christos symbols. 4844 1.1 christos Don't generate dynamic relocation against resolved undefined 4845 1.1 christos weak symbol in executable. 4846 1.1 christos (pie_finish_undefweak_symbol): New function. 4847 1.1 christos (_bfd_sparc_elf_finish_dynamic_sections): Call 4848 1.1 christos pie_finish_undefweak_symbol on all symbols in PIE. 4849 1.1 christos * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add interp. 4850 1.1 christos (_bfd_sparc_elf_fixup_symbol): New function. 4851 1.1 christos 4852 1.1 christos 2017-04-10 Nick Clifton <nickc (a] redhat.com> 4853 1.1 christos 4854 1.1 christos * config.bfd: Remove ns32k from obsolete list. 4855 1.1 christos 4856 1.1 christos 2017-04-10 Alan Modra <amodra (a] gmail.com> 4857 1.1 christos 4858 1.1 christos PR 21287 4859 1.1 christos * elf.c (special_sections_f): Match .fini_array and .fini_array.*. 4860 1.1 christos (special_sections_i): Likewise for .init_array. 4861 1.1 christos (special_sections_p): Likewise for .preinit_array. 4862 1.1 christos 4863 1.1 christos 2017-04-07 H.J. Lu <hongjiu.lu (a] intel.com> 4864 1.1 christos 4865 1.1 christos PR ld/19579 4866 1.1 christos PR ld/21306 4867 1.1 christos * elf32-s390.c (elf_s390_finish_dynamic_symbol): Check 4868 1.1 christos ELF_COMMON_DEF_P for common symbols. 4869 1.1 christos * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. 4870 1.1 christos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 4871 1.1 christos * elflink.c (_bfd_elf_merge_symbol): Revert commits 4872 1.1 christos 202ac193bbbecc96a4978d1ac3d17148253f9b01 and 4873 1.1 christos 07492f668d2173da7a2bda3707ff0985e0f460b6. 4874 1.1 christos 4875 1.1 christos 2017-04-07 Pedro Alves <palves (a] redhat.com> 4876 1.1 christos 4877 1.1 christos * opncls.c (bfd_get_debug_link_info): Rename to... 4878 1.1 christos (bfd_get_debug_link_info_1): ... this. Change type of second 4879 1.1 christos parameter to void pointer. Adjust. 4880 1.1 christos (bfd_get_debug_link_info): Reimplement on top of 4881 1.1 christos bfd_get_debug_link_info_1. 4882 1.1 christos (separate_debug_file_exists, separate_alt_debug_file_exists): 4883 1.1 christos Change type of second parameter to void pointer. Adjust. 4884 1.1 christos (get_func_type, check_func_type): Change type of second parameter 4885 1.1 christos to void pointer. 4886 1.1 christos (find_separate_debug_file): Add 'func_data' parameter. Pass it to 4887 1.1 christos the callback functions instead of passing the address of a local. 4888 1.1 christos (bfd_follow_gnu_debuglink): Pass address of unsigned long local to 4889 1.1 christos find_separate_debug_file. 4890 1.1 christos (get_alt_debug_link_info_shim): Change type of second parameter to 4891 1.1 christos void pointer. Adjust. 4892 1.1 christos (bfd_follow_gnu_debugaltlink): Adjust to pass NULL to 4893 1.1 christos find_separate_debug_file. 4894 1.1 christos (get_build_id_name, bfd_boolean check_build_id_file): Change type 4895 1.1 christos of second parameter to void pointer. Adjust. 4896 1.1 christos (bfd_follow_build_id_debuglink): Pass address of bfd_build_id 4897 1.1 christos pointer local to find_separate_debug_file. 4898 1.1 christos 4899 1.1 christos 2017-04-07 Tristan Gingold <gingold@gingold-Precision-7510> 4900 1.1 christos 4901 1.1 christos * coffgen.c (_bfd_coff_gc_mark_hook): Handle PE weak 4902 1.1 christos external symbols with a definition. 4903 1.1 christos (_bfd_coff_gc_mark_extra_sections): Fix typo. 4904 1.1 christos 4905 1.1 christos 2017-04-07 Alan Modra <amodra (a] gmail.com> 4906 1.1 christos 4907 1.1 christos * po/SRC-POTFILES.in: Regenerate. 4908 1.1 christos 4909 1.1 christos 2017-04-05 Alan Modra <amodra (a] gmail.com> 4910 1.1 christos 4911 1.1 christos * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Support ELFv2 PLT 4912 1.1 christos reference counting. 4913 1.1 christos 4914 1.1 christos 2017-04-02 Jon Turney <jon.turney (a] dronecode.org.uk> 4915 1.1 christos 4916 1.1 christos (_bfd_XXi_swap_aouthdr_out): For clarity, use defines rather than 4917 1.1 christos numbers for DataDirectory entry indicies passed to 4918 1.1 christos add_data_entry(). 4919 1.1 christos 4920 1.1 christos 2017-04-04 H.J. Lu <hongjiu.lu (a] intel.com> 4921 1.1 christos 4922 1.1 christos * elf.c (get_program_header_size): Add a GNU_MBIND segment for 4923 1.1 christos each GNU_MBIND section and align GNU_MBIND section to page size. 4924 1.1 christos (_bfd_elf_map_sections_to_segments): Create a GNU_MBIND 4925 1.1 christos segment for each GNU_MBIND section. 4926 1.1 christos (_bfd_elf_init_private_section_data): Copy sh_info from input 4927 1.1 christos for GNU_MBIND section. 4928 1.1 christos 4929 1.1 christos 2017-04-03 Palmer Dabbelt <palmer (a] dabbelt.com> 4930 1.1 christos 4931 1.1 christos * elfnn-riscv.c (GP_NAME): Delete. 4932 1.1 christos (riscv_global_pointer_value): Change GP_NAME to RISCV_GP_SYMBOL. 4933 1.1 christos (_bfd_riscv_relax_lui): Likewise. 4934 1.1 christos 4935 1.1 christos 2017-04-04 Nick Clifton <nickc (a] redhat.com> 4936 1.1 christos 4937 1.1 christos PR binutils/21342 4938 1.1 christos * elflink.c (_bfd_elf_define_linkage_sym): Prevent null pointer 4939 1.1 christos dereference. 4940 1.1 christos (bfd_elf_final_link): Only initialize the extended symbol index 4941 1.1 christos section if there are extended symbol tables to list. 4942 1.1 christos 4943 1.1 christos 2017-04-03 H.J. Lu <hongjiu.lu (a] intel.com> 4944 1.1 christos 4945 1.1 christos * Makefile.am (BFD32_BACKENDS): Add elf-properties.lo. 4946 1.1 christos (BFD32_BACKENDS_CFILES): Add elf-properties.c. 4947 1.1 christos * configure.ac (elf): Add elf-properties.lo. 4948 1.1 christos * Makefile.in: Regenerated. 4949 1.1 christos * configure: Likewise. 4950 1.1 christos * elf-bfd.h (elf_property_kind): New. 4951 1.1 christos (elf_property): Likewise. 4952 1.1 christos (elf_property_list): Likewise. 4953 1.1 christos (elf_properties): Likewise. 4954 1.1 christos (_bfd_elf_parse_gnu_properties): Likewise. 4955 1.1 christos (_bfd_elf_get_property): Likewise. 4956 1.1 christos (_bfd_elf_link_setup_gnu_properties): Likewise. 4957 1.1 christos (elf_backend_data): Add parse_gnu_properties, merge_gnu_properties 4958 1.1 christos and setup_gnu_properties. 4959 1.1 christos (elf_obj_tdata): Add properties. 4960 1.1 christos * elf-properties.c: New file. 4961 1.1 christos * elf32-i386.c (elf_i386_parse_gnu_properties): New. 4962 1.1 christos (elf_i386_merge_gnu_properties): Likewise. 4963 1.1 christos (elf_backend_parse_gnu_properties): Likewise. 4964 1.1 christos (elf_backend_merge_gnu_properties): Likewise. 4965 1.1 christos * elf64-x86-64.c (elf_x86_64_parse_gnu_properties): Likewise. 4966 1.1 christos (elf_x86_64_merge_gnu_properties): Likewise. 4967 1.1 christos (elf_backend_parse_gnu_properties): Likewise. 4968 1.1 christos (elf_backend_merge_gnu_properties): Likewise. 4969 1.1 christos * elfxx-target.h (elf_backend_merge_gnu_properties): Likewise. 4970 1.1 christos (elf_backend_parse_gnu_properties): Likewise. 4971 1.1 christos (elf_backend_setup_gnu_properties): Likewise. 4972 1.1 christos (elfNN_bed): Add elf_backend_parse_gnu_properties, 4973 1.1 christos elf_backend_merge_gnu_properties and 4974 1.1 christos elf_backend_setup_gnu_properties. 4975 1.1 christos 4976 1.1 christos 2017-03-30 Pip Cet <pipcet (a] gmail.com> 4977 1.1 christos 4978 1.1 christos * elf32-wasm32.c: Add relocation code, two relocs. 4979 1.1 christos * reloc.c: Add wasm32 relocations. 4980 1.1 christos * libbfd.h: Regenerate. 4981 1.1 christos * bfd-in2.h: Regenerate. 4982 1.1 christos * bfd/po/bfd.pot: Regenerate. 4983 1.1 christos 4984 1.1 christos 2017-03-29 Nick Clifton <nickc (a] redhat.com> 4985 1.1 christos 4986 1.1 christos PR binutils/18025 4987 1.1 christos * coff-bfd.h (struct coff_section_data): Add new fields: 4988 1.1 christos saved_bias and bias. 4989 1.1 christos * coffgen.c (coff_find_nearest_line_with_names): Cache the bias 4990 1.1 christos computed for PE binaries. 4991 1.1 christos * dwarf2.c (scan_unit_for_symbols): Only warn once about each 4992 1.1 christos missing abbrev. 4993 1.1 christos 4994 1.1 christos 2017-03-28 Hans-Peter Nilsson <hp (a] axis.com> 4995 1.1 christos 4996 1.1 christos PR ld/16044 4997 1.1 christos * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Adjust BFD_ASSERT 4998 1.1 christos to handle a local symbol with a hash-symbol-entry; without PLT. 4999 1.1 christos Add BFD_ASSERT for an incidental case with GOT entry present. 5000 1.1 christos (cris_elf_check_relocs): Increment PLT refcount only if the symbol 5001 1.1 christos isn't forced-or-set local. 5002 1.1 christos 5003 1.1 christos 2017-03-27 Pip Cet <pipcet (a] gmail.com> 5004 1.1 christos 5005 1.1 christos * wasm-module.c: New file to support WebAssembly modules. 5006 1.1 christos * wasm-module.h: New file to support WebAssembly modules. 5007 1.1 christos * doc/webassembly.texi: Start documenting wasm-module.c. 5008 1.1 christos * config.bfd: Add wasm_vec. 5009 1.1 christos * targets.c: Likewise. 5010 1.1 christos * configure.ac: Likewise. 5011 1.1 christos * Makefile.am: Add entries for wasm-module.c. 5012 1.1 christos * Makefile.in: Regenerate. 5013 1.1 christos * configure: Regenerate. 5014 1.1 christos * po/SRC-POTFILES.in: Regenerate. 5015 1.1 christos 5016 1.1 christos 2017-03-27 Pip Cet <pipcet (a] gmail.com> 5017 1.1 christos 5018 1.1 christos * cpu-wasm32.c: New file to support wasm32 architecture. 5019 1.1 christos * elf32-wasm32.c: New file to support wasm32 architecture. 5020 1.1 christos * Makefile.am: Add wasm32 architecture. 5021 1.1 christos * archures.c: Likewise. 5022 1.1 christos * config.bfd: Likewise. 5023 1.1 christos * configure.ac: Likewise. 5024 1.1 christos * targets.c: Likewise. 5025 1.1 christos * Makefile.in: Regenerate. 5026 1.1 christos * bfd-in2.h: Regenerate. 5027 1.1 christos * configure: Regenerate. 5028 1.1 christos * po/SRC-POTFILES.in: Regenerate. 5029 1.1 christos 5030 1.1 christos 2017-03-20 Alan Modra <amodra (a] gmail.com> 5031 1.1 christos 5032 1.1 christos PR 21266 5033 1.1 christos * elf64-ppc.c (compare_symbols): Stabilize sort. 5034 1.1 christos 5035 1.1 christos 2017-03-18 Alan Modra <amodra (a] gmail.com> 5036 1.1 christos 5037 1.1 christos * elf64-ppc.c (struct ppc_link_hash_table): Add 5038 1.1 christos local_ifunc_resolver and maybe_local_ifunc_resolver. 5039 1.1 christos (ppc_build_one_stub): Set flags on emitting dynamic 5040 1.1 christos relocation to ifunc. 5041 1.1 christos (ppc64_elf_relocate_section): Likewise. 5042 1.1 christos (ppc64_elf_finish_dynamic_symbol): Likewise. 5043 1.1 christos (ppc64_elf_finish_dynamic_sections): Error on DT_TEXTREL with 5044 1.1 christos local dynamic relocs to ifuncs. 5045 1.1 christos * elf32-ppc.c (struct ppc_elf_link_hash_table): Add 5046 1.1 christos local_ifunc_resolver and maybe_local_ifunc_resolver. 5047 1.1 christos (ppc_elf_relocate_section): Set flag on emitting dynamic 5048 1.1 christos relocation to ifuncs. 5049 1.1 christos (ppc_elf_finish_dynamic_symbol): Likewise. 5050 1.1 christos (ppc_elf_finish_dynamic_sections): Error on DT_TEXTREL with local 5051 1.1 christos dynamic relocs to ifuncs. 5052 1.1 christos 5053 1.1 christos 2017-03-13 Nick Clifton <nickc (a] redhat.com> 5054 1.1 christos 5055 1.1 christos PR binutils/21202 5056 1.1 christos * reloc.c (BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC): Rename to 5057 1.1 christos BFD_RELOC_AARCH64_TLSDESC_LD64_LO12. 5058 1.1 christos (BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC): Rename to 5059 1.1 christos BFD_RELOC_AARCH64_TLSDESC_ADD_LO12. 5060 1.1 christos * bfd-in2.h: Regenerate. 5061 1.1 christos * libbfd.h: Regenerate. 5062 1.1 christos * elfnn-aarch64.c (IS_AARCH64_TLS_RELAX_RELOC): Update reloc 5063 1.1 christos names. 5064 1.1 christos (IS_AARCH64_TLSDESC_RELOC): Likewise. 5065 1.1 christos (elfNN_aarch64_howto_table): Likewise. 5066 1.1 christos (aarch64_tls_transition_without_check): Likewise. 5067 1.1 christos (aarch64_reloc_got_type): Likewise. 5068 1.1 christos (elfNN_aarch64_final_link_relocate): Likewise. 5069 1.1 christos (elfNN_aarch64_tls_relax): Likewise. 5070 1.1 christos (elfNN_aarch64_relocate_section): Likewise. 5071 1.1 christos (elfNN_aarch64_gc_sweep_hook): Likewise. 5072 1.1 christos (elfNN_aarch64_check_relocs): Likewise. 5073 1.1 christos * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise. 5074 1.1 christos (_bfd_aarch64_elf_resolve_relocation): Likewise. 5075 1.1 christos 5076 1.1 christos 2017-03-11 Alan Modra <amodra (a] gmail.com> 5077 1.1 christos 5078 1.1 christos * elf32-ppc.c: Remove ATTRIBUTE_UNUSED throughout when function 5079 1.1 christos parameter is in fact used. Whitespace fixes. 5080 1.1 christos * elf64-ppc.c: Likewise. 5081 1.1 christos 5082 1.1 christos 2017-03-09 Sam Thursfield <sam.thursfield (a] codethink.co.uk> 5083 1.1 christos 5084 1.1 christos * rs6000-core.c (CORE_NEW): Simplify macro when 5085 1.1 christos AIX_CORE_DUMPX_CORE and BFD64 are true to avoid compile warning. 5086 1.1 christos 5087 1.1 christos 2017-03-07 Alan Modra <amodra (a] gmail.com> 5088 1.1 christos 5089 1.1 christos PR 21224 5090 1.1 christos PR 20519 5091 1.1 christos * elf64-ppc.c (ppc64_elf_relocate_section): Add missing 5092 1.1 christos dyn_relocs check. 5093 1.1 christos 5094 1.1 christos 2017-03-05 Alan Modra <amodra (a] gmail.com> 5095 1.1 christos 5096 1.1 christos * elf-bfd.h (struct eh_cie_fde): Add u.cie.per_encoding_aligned8. 5097 1.1 christos * elf-eh-frame.c (size_of_output_cie_fde): Don't align here. 5098 1.1 christos (next_cie_fde_offset): New function. 5099 1.1 christos (_bfd_elf_parse_eh_frame): Set u.cie.per_encoding_aligned8. 5100 1.1 christos (_bfd_elf_discard_section_eh_frame): Align zero terminator to 5101 1.1 christos four bytes. Align CIEs to four or eight bytes depending on 5102 1.1 christos per_encoding_aligned8. Align FDEs according to their encoding. 5103 1.1 christos Pad last FDE to output section alignment. 5104 1.1 christos (_bfd_elf_write_section_eh_frame): Adjust to suit. Remove 5105 1.1 christos assertion. 5106 1.1 christos * elf64-ppc.c (glink_eh_frame_cie): Delete padding. 5107 1.1 christos (ppc64_elf_size_stubs): Pad glink eh_frame as per elf-eh-frame.c. 5108 1.1 christos (ppc64_elf_finish_dynamic_sections): Adjust to suit. 5109 1.1 christos 5110 1.1 christos 2017-03-02 Martin Bickel <binutils (a] ineranves.de> 5111 1.1 christos 5112 1.1 christos PR ld/21212 5113 1.1 christos * elf.c (rewrite_elf_program_header): Do not issue a warning for 5114 1.1 christos empty segments which have a zero filesz, but a non-zero memsz. 5115 1.1 christos 5116 1.1 christos 2017-03-02 Alan Modra <amodra (a] gmail.com> 5117 1.1 christos 5118 1.1 christos * elf32-ppc.c (ppc_elf_vle_split16): Correct insn mask typo. 5119 1.1 christos 5120 1.1 christos 2017-02-28 Alan Modra <amodra (a] gmail.com> 5121 1.1 christos 5122 1.1 christos * elf64-ppc.c (ppc64_elf_ha_reloc): Revert last change. 5123 1.1 christos (ppc64_elf_relocate_section): Likewise. 5124 1.1 christos 5125 1.1 christos 2017-02-28 Alan Modra <amodra (a] gmail.com> 5126 1.1 christos 5127 1.1 christos PR 20995 5128 1.1 christos * elf32-nios2.c (nios2_elf32_relocate_section): Use htab 5129 1.1 christos rather than elf32_nios2_hash_table or elf_hash_table. 5130 1.1 christos (create_got_section): Likewise. 5131 1.1 christos (nios2_elf32_finish_dynamic_symbol): Likewise. 5132 1.1 christos (nios2_elf32_adjust_dynamic_symbol): Likewise. 5133 1.1 christos (nios2_elf32_size_dynamic_sections): Likewise. 5134 1.1 christos (nios2_elf32_check_relocs): Delete dynobj, sgot, and srelgot 5135 1.1 christos vars. Use htab equivalents directly instead. Don't create 5136 1.1 christos all dynamic sections on needing just the GOT. Use a goto 5137 1.1 christos rather than a fall-through with reloc test. Ensure 5138 1.1 christos htab->dynobj is set when making dynamic sreloc section. 5139 1.1 christos (nios2_elf32_finish_dynamic_sections): Delete dynobj, use htab 5140 1.1 christos equivalent directly instead. Don't segfault on looking for 5141 1.1 christos .dynamic when dynamic sections have not been created. Don't 5142 1.1 christos segfault on .got.plt being discarded. 5143 1.1 christos (nios2_elf32_size_dynamic_sections): Delete plt and got vars. 5144 1.1 christos Don't set "relocs" on .rela.plt. Do handle .sbss. Delete 5145 1.1 christos fixme and another not so relevant comment. 5146 1.1 christos (nios2_elf_add_symbol_hook): Delete dynobj var. If not 5147 1.1 christos already set, set hash table dynobj on creating .sbss. 5148 1.1 christos 5149 1.1 christos 2017-02-28 Alan Modra <amodra (a] gmail.com> 5150 1.1 christos 5151 1.1 christos * reloc.c (BFD_RELOC_PPC_16DX_HA): New. 5152 1.1 christos * elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_16DX_HA>): New howto. 5153 1.1 christos (ppc64_elf_reloc_type_lookup): Translate new bfd reloc. 5154 1.1 christos (ppc64_elf_ha_reloc): Correct overflow test on REL16DX_HA. 5155 1.1 christos (ppc64_elf_relocate_section): Likewise. 5156 1.1 christos * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_16DX_HA>): New howto. 5157 1.1 christos (ppc_elf_reloc_type_lookup): Translate new bfd reloc. 5158 1.1 christos (ppc_elf_check_relocs): Handle R_PPC_16DX_HA to pacify gcc. 5159 1.1 christos * libbfd.h: Regenerate. 5160 1.1 christos * bfd-in2.h: Regenerate. 5161 1.1 christos 5162 1.1 christos 2017-02-28 Alan Modra <amodra (a] gmail.com> 5163 1.1 christos 5164 1.1 christos * elflink.c (_bfd_elf_create_dynamic_sections): Don't make 5165 1.1 christos dynamic .data.rel.ro read-only. 5166 1.1 christos * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Compare section 5167 1.1 christos rather than section flags when deciding where copy reloc goes. 5168 1.1 christos * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise. 5169 1.1 christos * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise. 5170 1.1 christos * elf32-i386.c (elf_i386_finish_dynamic_symbol): Likewise. 5171 1.1 christos * elf32-metag.c (elf_metag_finish_dynamic_symbol): Likewise. 5172 1.1 christos * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Likewise. 5173 1.1 christos * elf32-nios2.c (nios2_elf32_finish_dynamic_symbol): Likewise. 5174 1.1 christos * elf32-or1k.c (or1k_elf_finish_dynamic_symbol): Likewise. 5175 1.1 christos * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Likewise. 5176 1.1 christos * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise. 5177 1.1 christos * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise. 5178 1.1 christos * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise. 5179 1.1 christos * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Likewise. 5180 1.1 christos * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise. 5181 1.1 christos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. 5182 1.1 christos * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_symbol): Likewise. 5183 1.1 christos * elfnn-riscv.c (riscv_elf_finish_dynamic_symbol): Likewise. 5184 1.1 christos * elfxx-mips.c (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise. 5185 1.1 christos * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. 5186 1.1 christos * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise. 5187 1.1 christos 5188 1.1 christos 2017-02-28 Maciej W. Rozycki <macro (a] imgtec.com> 5189 1.1 christos 5190 1.1 christos * elfxx-mips.c (mips_elf_perform_relocation): Also handle the 5191 1.1 christos `jalr $0, $25' instruction encoding. 5192 1.1 christos 5193 1.1 christos 2017-02-27 Nick Clifton <nickc (a] redhat.com> 5194 1.1 christos 5195 1.1 christos PR ld/21180 5196 1.1 christos * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Avoid 5197 1.1 christos generating a seg-fault when encountering a symbol that has been 5198 1.1 christos deleted by garbage collection. 5199 1.1 christos 5200 1.1 christos 2017-02-25 Alan Modra <amodra (a] gmail.com> 5201 1.1 christos 5202 1.1 christos * elf32-arc.c (struct dynamic_sections): Delete. 5203 1.1 christos (enum dyn_section_types): Delete. 5204 1.1 christos (dyn_section_names): Delete. 5205 1.1 christos (arc_create_dynamic_sections): Delete. 5206 1.1 christos (elf_arc_finish_dynamic_sections): Don't call the above. Don't 5207 1.1 christos segfault on discarded .rela.plt section. 5208 1.1 christos (elf_arc_size_dynamic_sections): Formatting. Don't call 5209 1.1 christos arc_create_dynamic_sections. Don't allocate memory for sections 5210 1.1 christos handled by the generic linker. Correct code finding relocs in 5211 1.1 christos read-only sections. Set SEC_EXCLUDE on zero size .got, 5212 1.1 christos .got.plt, and .dynbss sections. Do set .interp for pies. 5213 1.1 christos 5214 1.1 christos 2017-02-24 Andrew Waterman <andrew (a] sifive.com> 5215 1.1 christos 5216 1.1 christos * elfnn-riscv.c (GP_NAME): New macro. 5217 1.1 christos (riscv_global_pointer_value): Use it. 5218 1.1 christos (_bfd_riscv_relax_lui): If symbol and global pointer are in same 5219 1.1 christos output section, consider only that section's alignment. 5220 1.1 christos 5221 1.1 christos 2017-02-23 Maciej W. Rozycki <macro (a] imgtec.com> 5222 1.1 christos 5223 1.1 christos * elfxx-mips.h (_bfd_mips_relax_section): Remove prototype. 5224 1.1 christos * elfxx-mips.c (_bfd_mips_relax_section): Remove function. 5225 1.1 christos * elf64-mips.c (bfd_elf64_bfd_relax_section): Remove macro. 5226 1.1 christos * elfn32-mips.c (bfd_elf32_bfd_relax_section): Likewise. 5227 1.1 christos 5228 1.1 christos 2017-02-23 Maciej W. Rozycki <macro (a] imgtec.com> 5229 1.1 christos 5230 1.1 christos * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_JALR> 5231 1.1 christos <R_MICROMIPS_JALR>: Discard relocation if `cross_mode_jump_p' 5232 1.1 christos or misaligned. 5233 1.1 christos 5234 1.1 christos 2017-02-23 Alan Modra <amodra (a] gmail.com> 5235 1.1 christos 5236 1.1 christos PR 20744 5237 1.1 christos * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask on all VLE 5238 1.1 christos 16D relocations. 5239 1.1 christos (ppc_elf_vle_split16): Correct field mask and shift for 16D relocs. 5240 1.1 christos (ppc_elf_relocate_section): Correct calculation for VLE SDAREL 5241 1.1 christos relocs. 5242 1.1 christos 5243 1.1 christos 2017-02-22 Maciej W. Rozycki <macro (a] imgtec.com> 5244 1.1 christos 5245 1.1 christos PR ld/20828 5246 1.1 christos * elflink.c (bfd_elf_size_dynamic_sections): Move symbol version 5247 1.1 christos processing ahead of the call to `elf_gc_sweep_symbol'. 5248 1.1 christos 5249 1.1 christos 2017-02-22 Nick Clifton <nickc (a] redhat.com> 5250 1.1 christos 5251 1.1 christos PR binutils/21193 5252 1.1 christos * opncls.c (bfd_create_gnu_debuglink_section): Give the newly 5253 1.1 christos created section 4-byte alignment. 5254 1.1 christos 5255 1.1 christos 2017-02-22 Alan Modra <amodra (a] gmail.com> 5256 1.1 christos 5257 1.1 christos * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Don't segfault 5258 1.1 christos on .got or .plt output section being discarded by script. 5259 1.1 christos * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Likewise. Move 5260 1.1 christos vxworks splt temp. 5261 1.1 christos 5262 1.1 christos 2017-02-21 Alan Modra <amodra (a] gmail.com> 5263 1.1 christos 5264 1.1 christos * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only emit 5265 1.1 christos DT_RELA, DT_RELASZ, and DT_RELAENT when DT_RELASZ is non-zero. 5266 1.1 christos 5267 1.1 christos 2017-02-20 Alan Modra <amodra (a] gmail.com> 5268 1.1 christos 5269 1.1 christos PR 21181 5270 1.1 christos * elflink.c (bfd_elf_final_link): Make DT_REL/DT_RELA zero 5271 1.1 christos if DT_RELSZ/DT_RELASZ is zero. 5272 1.1 christos 5273 1.1 christos 2017-02-17 Nick Clifton <nickc (a] redhat.com> 5274 1.1 christos 5275 1.1 christos * compress.c (bfd_get_full_section_contents): Remember to reduce 5276 1.1 christos compressed size by the sizeof the compression header when 5277 1.1 christos decompressing the contents. 5278 1.1 christos 5279 1.1 christos 2017-02-17 Pedro Alves <palves (a] redhat.com> 5280 1.1 christos 5281 1.1 christos * srec.c (Chunk): Rename to ... 5282 1.1 christos (_bfd_srec_len): ... this. 5283 1.1 christos (S3Forced): Rename to ... 5284 1.1 christos (_bfd_srec_forceS3): ... this. 5285 1.1 christos * objcopy.c: Adjust all references. 5286 1.1 christos 5287 1.1 christos 2017-02-17 Pedro Alves <palves (a] redhat.com> 5288 1.1 christos 5289 1.1 christos * archive.c (bsd_write_armap): Rename to ... 5290 1.1 christos (_bfd_bsd_write_armap): ... this. 5291 1.1 christos (coff_write_armap): Rename to ... 5292 1.1 christos (_bfd_coff_write_armap): ... this. 5293 1.1 christos * libbfd-in.h (bsd_write_armap): Rename to ... 5294 1.1 christos (_bfd_bsd_write_armap): ... this. 5295 1.1 christos (coff_write_armap): Rename to ... 5296 1.1 christos (_bfd_coff_write_armap): ... this. 5297 1.1 christos * aout-target.h, aout-tic30.c: Adjust all users. 5298 1.1 christos * libbfd.h: Regenerate. 5299 1.1 christos 5300 1.1 christos 2017-02-17 Pedro Alves <palves (a] redhat.com> 5301 1.1 christos 5302 1.1 christos * bfd-in.h (bfd_read, bfd_write): Adjust to rename. 5303 1.1 christos (warn_deprecated): Rename to ... 5304 1.1 christos (_bfd_warn_deprecated): ... this. 5305 1.1 christos * libbfd.c (warn_deprecated): Rename to ... 5306 1.1 christos (_bfd_warn_deprecated): ... this. 5307 1.1 christos * bfd-in2.h: Regenerate. 5308 1.1 christos 5309 1.1 christos 2017-02-17 Pedro Alves <palves (a] redhat.com> 5310 1.1 christos 5311 1.1 christos * bfdio.c (real_ftell): Rename to ... 5312 1.1 christos (_bfd_real_ftell): ... this. 5313 1.1 christos (real_fseek): Rename to ... 5314 1.1 christos (_bfd_real_fseek): ... this. 5315 1.1 christos (real_fopen): Rename to ... 5316 1.1 christos (_bfd_real_fopen): ... this. 5317 1.1 christos * libbfd-in.h (real_ftell): Rename to ... 5318 1.1 christos (_bfd_real_ftell): ... this. 5319 1.1 christos (real_fseek): Rename to ... 5320 1.1 christos (_bfd_real_fseek): ... this. 5321 1.1 christos (real_fopen): Rename to ... 5322 1.1 christos (_bfd_real_fopen): ... this. 5323 1.1 christos * cache.c, dwarf2.c, opncls.c: Adjust all callers. 5324 1.1 christos * libbfd.h: Regenerate. 5325 1.1 christos 5326 1.1 christos 2017-02-17 Pedro Alves <palves (a] redhat.com> 5327 1.1 christos 5328 1.1 christos * dwarf2.c, elf-attrs.c, elf32-nds32.c: Adjust all callers. 5329 1.1 christos * libbfd.c (read_unsigned_leb128): Rename to ... 5330 1.1 christos (_bfd_read_unsigned_leb128): ... this. 5331 1.1 christos (read_signed_leb128): Rename to ... 5332 1.1 christos (_bfd_read_signed_leb128): ... this. 5333 1.1 christos (safe_read_leb128): Rename to ... 5334 1.1 christos (_bfd_safe_read_leb128): ... this. 5335 1.1 christos * libbfd-in.h (read_unsigned_leb128): Rename to ... 5336 1.1 christos (_bfd_read_unsigned_leb128): ... this. 5337 1.1 christos (read_signed_leb128): Rename to ... 5338 1.1 christos (_bfd_read_signed_leb128): ... this. 5339 1.1 christos (safe_read_leb128): Rename to ... 5340 1.1 christos (_bfd_safe_read_leb128): ... this. 5341 1.1 christos * libbfd.h: Renegerate. 5342 1.1 christos 5343 1.1 christos 2017-02-16 Andrew Burgess <andrew.burgess (a] embecosm.com> 5344 1.1 christos 5345 1.1 christos * dwarf2.c (_bfd_dwarf2_find_nearest_line): Perform symbol lookup 5346 1.1 christos before trying to fine matching file and line information. 5347 1.1 christos 5348 1.1 christos 2017-02-16 Andrew Burgess <andrew.burgess (a] embecosm.com> 5349 1.1 christos 5350 1.1 christos * dwarf2.c (struct dwarf2_debug): Add orig_bfd member. 5351 1.1 christos (_bfd_dwarf2_slurp_debug_info): If stashed debug information does 5352 1.1 christos not match current bfd, then reload debug information. Record bfd 5353 1.1 christos we're loading debug info for in the stash. If we have debug 5354 1.1 christos informatin in the cache then perform section placement before 5355 1.1 christos returning. 5356 1.1 christos 5357 1.1 christos 2017-02-16 Alan Modra <amodra (a] gmail.com> 5358 1.1 christos 5359 1.1 christos PR 21000 5360 1.1 christos * elf-bfd.h (struct elf_backend_data): Add no_page_alias. 5361 1.1 christos * elfxx-target.h (elf_backend_no_page_alias): Define. 5362 1.1 christos (elfNN_bed): Init new field. 5363 1.1 christos * elf.c (assign_file_positions_for_load_sections): If no_page_alias 5364 1.1 christos ensure PT_LOAD segment starts on a new page. 5365 1.1 christos * elf32-hppa.c (elf_backend_no_page_alias): Define. 5366 1.1 christos 5367 1.1 christos 2017-02-16 Alan Modra <amodra (a] gmail.com> 5368 1.1 christos 5369 1.1 christos PR 21132 5370 1.1 christos * elf32-hppa.c (allocate_plt_static): Allocate space for relocs 5371 1.1 christos if pic. 5372 1.1 christos 5373 1.1 christos 2017-02-16 Jiong Wang <jiong.wang (a] arm.com> 5374 1.1 christos 5375 1.1 christos * bfd.c (BFD_FLAGS_SAVED): Add BFD_LINKER_CREATED. 5376 1.1 christos * bfd-in2.h: Regenerated. 5377 1.1 christos 5378 1.1 christos 2017-02-15 H.J. Lu <hongjiu.lu (a] intel.com> 5379 1.1 christos 5380 1.1 christos PR ld/21168 5381 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Allow 5382 1.1 christos "lea foo@GOT, %reg" in PIC. 5383 1.1 christos 5384 1.1 christos 2017-02-15 H.J. Lu <hongjiu.lu (a] intel.com> 5385 1.1 christos 5386 1.1 christos PR ld/20244 5387 1.1 christos * elf32-i386.c (elf_i386_relocate_section): Properly get IFUNC 5388 1.1 christos symbol name when reporting R_386_GOT32/R_386_GOT32X relocation 5389 1.1 christos error against local IFUNC symbol without a base register for 5390 1.1 christos PIC. 5391 1.1 christos 5392 1.1 christos 2017-02-15 Maciej W. Rozycki <macro (a] imgtec.com> 5393 1.1 christos 5394 1.1 christos * elf32-ppc.c (ppc_elf_check_relocs): Use `%H:' rather than 5395 1.1 christos `%P: %H:' with `info->callbacks->einfo'. 5396 1.1 christos (ppc_elf_relocate_section): Likewise. 5397 1.1 christos * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. 5398 1.1 christos (ppc64_elf_edit_toc): Likewise. 5399 1.1 christos (ppc64_elf_relocate_section): Likewise. 5400 1.1 christos 5401 1.1 christos 2017-02-14 Alan Modra <amodra (a] gmail.com> 5402 1.1 christos 5403 1.1 christos * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support 5404 1.1 christos --gc-keep-exported, and test versioned field of sym rather than 5405 1.1 christos looking for @ in name. 5406 1.1 christos 5407 1.1 christos 2017-02-13 Palmer Dabbelt <palmer (a] dabbelt.com> 5408 1.1 christos 5409 1.1 christos * elfnn-riscv.c (riscv_global_pointer_value): Change _gp to 5410 1.1 christos __global_pointer$. 5411 1.1 christos 5412 1.1 christos 2017-02-13 Nick Clifton <nickc (a] redhat.com> 5413 1.1 christos 5414 1.1 christos PR binutils/21151 5415 1.1 christos * dwarf2.c (_bfd_dwarf2_find_nearest_line): Check for an invalid 5416 1.1 christos unit length field. 5417 1.1 christos 5418 1.1 christos 2017-02-07 Andrew Waterman <andrew (a] sifive.com> 5419 1.1 christos 5420 1.1 christos * elfnn-riscv.c (riscv_elf_finish_dynamic_sections): Only write PLT 5421 1.1 christos entry size if PLT header is written. 5422 1.1 christos 5423 1.1 christos 2017-02-06 Sheldon Lobo <sheldon.lobo (a] oracle.com> 5424 1.1 christos 5425 1.1 christos Fix sparc64 dynamic relocation processing to use the dynamic 5426 1.1 christos symbol count. 5427 1.1 christos * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Use 'dynamic' 5428 1.1 christos to determine if bfd_get_symcount() or bfd_get_dynamic_symcount() 5429 1.1 christos should be used. 5430 1.1 christos 5431 1.1 christos 2017-02-03 Nick Clifton <nickc (a] redhat.com> 5432 1.1 christos 5433 1.1 christos PR 21096 5434 1.1 christos * coffcode.h (coff_write_object_contents): Enlarge size of 5435 1.1 christos s_name_buf in order to avoid compile time warning about possible 5436 1.1 christos integer truncation. 5437 1.1 christos * elf32-nds32.c (nds32_elf_ex9_import_table): Mask off lower 5438 1.1 christos 32-bits of insn value before printing into buffer. 5439 1.1 christos 5440 1.1 christos 2017-02-02 Maciej W. Rozycki <macro (a] imgtec.com> 5441 1.1 christos 5442 1.1 christos * elfxx-mips.c (mips_elf_hash_sort_data): Add 5443 1.1 christos `max_local_dynindx'. 5444 1.1 christos (mips_elf_sort_hash_table): Handle it. 5445 1.1 christos (mips_elf_sort_hash_table_f) <GGA_NONE>: For forced local 5446 1.1 christos symbols bump up `max_local_dynindx' rather than 5447 1.1 christos `max_non_got_dynindx'. 5448 1.1 christos 5449 1.1 christos 2017-02-02 Maciej W. Rozycki <macro (a] imgtec.com> 5450 1.1 christos 5451 1.1 christos * elfxx-mips.c (mips_elf_hash_sort_data): Convert the 5452 1.1 christos `min_got_dynindx', `max_unref_got_dynindx' and 5453 1.1 christos `max_non_got_dynindx' members to the `bfd_size_type' data type. 5454 1.1 christos (mips_elf_sort_hash_table): Adjust accordingly. 5455 1.1 christos 5456 1.1 christos 2017-02-02 Maciej W. Rozycki <macro (a] imgtec.com> 5457 1.1 christos 5458 1.1 christos * elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout 5459 1.1 christos to access the hash table. 5460 1.1 christos 5461 1.1 christos 2017-02-02 Maciej W. Rozycki <macro (a] imgtec.com> 5462 1.1 christos 5463 1.1 christos * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on 5464 1.1 christos non-NULL `htab' to the beginning. 5465 1.1 christos 5466 1.1 christos 2017-02-02 Maciej W. Rozycki <macro (a] imgtec.com> 5467 1.1 christos 5468 1.1 christos * elflink.c (elf_gc_sweep): Wrap overlong line. 5469 1.1 christos 5470 1.1 christos 2017-01-30 Maciej W. Rozycki <macro (a] imgtec.com> 5471 1.1 christos 5472 1.1 christos * elfxx-mips.h (_bfd_mips_elf_insn32): Rename prototype to... 5473 1.1 christos (_bfd_mips_elf_linker_flags): ... this. Add another parameter. 5474 1.1 christos * elfxx-mips.c (mips_elf_link_hash_table): Add 5475 1.1 christos `ignore_branch_isa' member. 5476 1.1 christos (mips_elf_perform_relocation): Do not treat an ISA mode mismatch 5477 1.1 christos in branch relocation calculation as an error if 5478 1.1 christos `ignore_branch_isa' has been set. 5479 1.1 christos (_bfd_mips_elf_insn32): Rename to... 5480 1.1 christos (_bfd_mips_elf_linker_flags): ... this. Rename the `on' 5481 1.1 christos parameter to `insn32' and add an `ignore_branch_isa' parameter. 5482 1.1 christos Handle the new parameter. 5483 1.1 christos 5484 1.1 christos 2017-01-27 Hans-Peter Nilsson <hp (a] axis.com> 5485 1.1 christos 5486 1.1 christos * elf32-cris.c (elf_cris_finish_dynamic_symbol): Remove now unused 5487 1.1 christos local variable dynobj. 5488 1.1 christos 5489 1.1 christos PR ld/20995 5490 1.1 christos * elf32-cris.c (elf_cris_size_dynamic_sections): Handle sdynrelro. 5491 1.1 christos (elf_cris_adjust_dynamic_symbol): Place variables copied into the 5492 1.1 christos executable from read-only sections into sdynrelro. 5493 1.1 christos (elf_cris_finish_dynamic_symbol): Select sreldynrelro for 5494 1.1 christos dynamic relocs in sdynrelro. 5495 1.1 christos (elf_backend_want_dynrelro): Define. 5496 1.1 christos 5497 1.1 christos 2017-01-25 Sebastian Huber <sebastian.huber (a] embedded-brains.de> 5498 1.1 christos 5499 1.1 christos * config.bfd (*-*-rtemsaout*): Mark as removed. 5500 1.1 christos 5501 1.1 christos 2017-01-25 Sebastian Huber <sebastian.huber (a] embedded-brains.de> 5502 1.1 christos 5503 1.1 christos * config.bfd (powerpcle-*-rtems*): Do not mark as removed. 5504 1.1 christos (arm-*-rtems*): Move to (arm*-*-eabi*). 5505 1.1 christos (i[3-7]86-*-rtems*): Move to (i[3-7]86-*-elf*). 5506 1.1 christos (m68-*-rtems*): Move to (m68*-*-elf*). 5507 1.1 christos 5508 1.1 christos 2017-01-25 Sebastian Huber <sebastian.huber (a] embedded-brains.de> 5509 1.1 christos 5510 1.1 christos * config.bfd (*-*-rtemscoff*): Mark as removed. 5511 1.1 christos 5512 1.1 christos 2017-01-24 Maciej W. Rozycki <macro (a] imgtec.com> 5513 1.1 christos 5514 1.1 christos PR ld/20828 5515 1.1 christos * elflink.c (bfd_elf_record_link_assignment): Revert last 5516 1.1 christos change and don't ever clear `forced_local'. Set `mark' 5517 1.1 christos unconditionally. 5518 1.1 christos (elf_gc_sweep_symbol_info, elf_gc_sweep_symbol): Reorder within 5519 1.1 christos file. 5520 1.1 christos (elf_gc_sweep): Move the call to `elf_gc_sweep_symbol'... 5521 1.1 christos (bfd_elf_size_dynamic_sections): ... here. 5522 1.1 christos * elf32-ppc.c (ppc_elf_tls_setup): Don't clear `forced_local' 5523 1.1 christos and set `mark' instead in `__tls_get_addr_opt' processing. 5524 1.1 christos * elf64-ppc.c (ppc64_elf_tls_setup): Likewise. 5525 1.1 christos 5526 1.1 christos 2017-01-24 Alan Modra <amodra (a] gmail.com> 5527 1.1 christos 5528 1.1 christos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Merge two cases 5529 1.1 christos where dynamic relocs are preferable. Allow ifunc too. 5530 1.1 christos (ensure_undefweak_dynamic): New function. 5531 1.1 christos (allocate_dynrelocs): Use it here. Move plt handling last and 5532 1.1 christos don't make symbols dynamic, simplifying loop. Only make undef 5533 1.1 christos weak symbols with GOT entries dynamic. Correct condition 5534 1.1 christos for GOT relocs. Handle dynamic relocs on ifuncs. Correct 5535 1.1 christos comments. Remove goto. 5536 1.1 christos (ppc_elf_relocate_section): Correct test for using dynamic 5537 1.1 christos symbol on GOT relocs. Rearrange test for emitting GOT relocs 5538 1.1 christos to suit. Set up explicit tls_index entries and implicit GOT 5539 1.1 christos tls_index entries resolvable at link time for 5540 1.1 christos __tls_get_addr_opt. Simplify test to clear mem for prelink. 5541 1.1 christos * elf64-ppc.c (allocate_got): Correct condition for GOT relocs. 5542 1.1 christos (ensure_undefweak_dynamic): New function. 5543 1.1 christos (allocate_dynrelocs): Use it here. Only make undef weak symbols 5544 1.1 christos with GOT entries dynamic. Remove unnecessary test of 5545 1.1 christos WILL_CALL_FINISH_DYNAMIC_SYMBOL in PLT handling. 5546 1.1 christos (ppc64_elf_relocate_section): Correct test for using dynamic 5547 1.1 christos symbol on GOT relocs. Rearrange test for emitting GOT relocs 5548 1.1 christos to suit. Set up explicit tls_index entries and implicit GOT 5549 1.1 christos tls_index entries resolvable at link time for __tls_get_addr_opt. 5550 1.1 christos Simplify expression to clear mem for prelink. 5551 1.1 christos 5552 1.1 christos 2017-01-23 Yury Norov <ynorov (a] caviumnetworks.com> 5553 1.1 christos 5554 1.1 christos * elfnn-aarch64.c: Fix relaxations for ILP32 mode. 5555 1.1 christos 5556 1.1 christos 2017-01-20 Jiong Wang <jiong.wang (a] arm.com> 5557 1.1 christos 5558 1.1 christos * elfnn-aarch64.c (elf_aarch64_hash_symbol): New function. 5559 1.1 christos (elf_backend_hash_symbol): Define. 5560 1.1 christos 5561 1.1 christos 2017-01-18 Maciej W. Rozycki <macro (a] imgtec.com> 5562 1.1 christos 5563 1.1 christos PR ld/20828 5564 1.1 christos * elflink.c (bfd_elf_record_link_assignment): Clear any 5565 1.1 christos `forced_local' marking for DSO symbols that are not being 5566 1.1 christos provided. 5567 1.1 christos 5568 1.1 christos 2017-01-17 Kuan-Lin Chen <kuanlinchentw (a] gmail.com> 5569 1.1 christos 5570 1.1 christos * elfnn-riscv.c (riscv_elf_object_p): New function. 5571 1.1 christos 5572 1.1 christos 2017-01-12 H.J. Lu <hongjiu.lu (a] intel.com> 5573 1.1 christos 5574 1.1 christos PR ld/21038 5575 1.1 christos * elf64-x86-64.c (elf_x86_64_link_hash_table): Add 5576 1.1 christos plt_bnd_eh_frame. 5577 1.1 christos (elf_x86_64_check_relocs): Create .eh_frame section for the 5578 1.1 christos .plt.bnd section. 5579 1.1 christos (elf_x86_64_size_dynamic_sections): Allocate and initialize 5580 1.1 christos .eh_frame section for the .plt.bnd section. 5581 1.1 christos (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section 5582 1.1 christos for the .plt.bnd section. 5583 1.1 christos 5584 1.1 christos 2017-01-12 Nick Clifton <nickc (a] redhat.com> 5585 1.1 christos 5586 1.1 christos PR binutils/20876 5587 1.1 christos * opncls.c (find_separate_debug_file): Add include_dirs 5588 1.1 christos parameter. Only include the directory part of the bfd's filename 5589 1.1 christos in search paths if include_dirs is true. Add a couple of extra 5590 1.1 christos locations for looking for debug files. 5591 1.1 christos ( bfd_follow_gnu_debuglink): Update invocation of 5592 1.1 christos find_separate_debug_file. 5593 1.1 christos (bfd_follow_gnu_debugaltlink): Likewise. 5594 1.1 christos (get_build_id): New function: Finds the build-id of the given bfd. 5595 1.1 christos (get_build_id_name): New function: Computes the name of the 5596 1.1 christos separate debug info file for a bfd, based upon its build-id. 5597 1.1 christos (check_build_id_file): New function: Checks to see if a separate 5598 1.1 christos debug info file exists at the given location, and that its 5599 1.1 christos build-id matches that of the original bfd. 5600 1.1 christos (bfd_follow_build_id_debuglink): New function: Finds a separate 5601 1.1 christos debug info file for a given bfd by using the build-id method. 5602 1.1 christos * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Try using the build-id 5603 1.1 christos method of locating a separate debug info file before using the 5604 1.1 christos debuglink method. 5605 1.1 christos * bfd-in2.h: Regenerate. 5606 1.1 christos 5607 1.1 christos 2017-01-11 H.J. Lu <hongjiu.lu (a] intel.com> 5608 1.1 christos 5609 1.1 christos PR ld/21038 5610 1.1 christos * elf64-x86-64.c (elf_x86_64_eh_frame_bnd_plt): New. 5611 1.1 christos (elf_x86_64_bnd_arch_bed): Use elf_x86_64_eh_frame_bnd_plt and 5612 1.1 christos elf_x86_64_eh_frame_plt_got. 5613 1.1 christos (elf_x86_64_size_dynamic_sections): Get unwind info from 5614 1.1 christos elf_x86_64_bnd_arch_bed for the BND PLT. 5615 1.1 christos 5616 1.1 christos 2017-01-11 Jeremy Soller <jackpot51 (a] gmail.com> 5617 1.1 christos 5618 1.1 christos * config.bfd: Add entries for i686-redox and x86_64-redox. 5619 1.1 christos 5620 1.1 christos 2017-01-10 H.J. Lu <hongjiu.lu (a] intel.com> 5621 1.1 christos 5622 1.1 christos * elf32-i386.c (elf_i386_check_relocs): Align .eh_frame section 5623 1.1 christos to 4 bytes. 5624 1.1 christos * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align 5625 1.1 christos .eh_frame section to 4 bytes for x32. 5626 1.1 christos (elf_x86_64_check_relocs): Likewise. 5627 1.1 christos 5628 1.1 christos 2017-01-10 H.J. Lu <hongjiu.lu (a] intel.com> 5629 1.1 christos 5630 1.1 christos PR ld/20830 5631 1.1 christos * elf32-i386.c (elf_i386_eh_frame_plt_got): New. 5632 1.1 christos (PLT_GOT_FDE_LENGTH): Likewise. 5633 1.1 christos (elf_i386_plt_layout): Add eh_frame_plt_got and 5634 1.1 christos eh_frame_plt_got_size. 5635 1.1 christos (elf_i386_plt): Updated. 5636 1.1 christos (elf_i386_link_hash_table): Add plt_got_eh_frame. 5637 1.1 christos (elf_i386_check_relocs): Create .eh_frame section for .plt.got. 5638 1.1 christos (elf_i386_size_dynamic_sections): Allocate and initialize 5639 1.1 christos .eh_frame section for .plt.got. 5640 1.1 christos (elf_i386_finish_dynamic_sections): Adjust .eh_frame section for 5641 1.1 christos .plt.got. 5642 1.1 christos (elf_i386_nacl_plt): Add FIXME for eh_frame_plt_got and 5643 1.1 christos eh_frame_plt_got_size. 5644 1.1 christos * elf64-x86-64.c (elf_x86_64_eh_frame_plt_got): New. 5645 1.1 christos (PLT_GOT_FDE_LENGTH): Likewise. 5646 1.1 christos (elf_x86_64_backend_data): Add eh_frame_plt_got and 5647 1.1 christos eh_frame_plt_got_size. 5648 1.1 christos (elf_x86_64_arch_bed): Updated. 5649 1.1 christos (elf_x86_64_bnd_arch_bed): Add FIXME for eh_frame_plt_got and 5650 1.1 christos eh_frame_plt_got_size. 5651 1.1 christos (elf_x86_64_nacl_arch_bed): Likewise. 5652 1.1 christos (elf_x86_64_link_hash_table): Add plt_got_eh_frame. 5653 1.1 christos (elf_x86_64_check_relocs): Create .eh_frame section for .plt.got. 5654 1.1 christos (elf_x86_64_size_dynamic_sections): Allocate and initialize 5655 1.1 christos .eh_frame section for .plt.got. 5656 1.1 christos (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section 5657 1.1 christos for .plt.got. 5658 1.1 christos 5659 1.1 christos 2017-01-10 H.J. Lu <hongjiu.lu (a] intel.com> 5660 1.1 christos 5661 1.1 christos * elf32-i386.c (elf_i386_size_dynamic_sections): Set 5662 1.1 christos plt_eh_frame->size to eh_frame_plt_size and use eh_frame_plt. 5663 1.1 christos 5664 1.1 christos 2017-01-09 Nick Clifton <nickc (a] redhat.com> 5665 1.1 christos 5666 1.1 christos * dwarf2.c (lookup_address_in_function_table): Return early if 5667 1.1 christos there are no functions in the given comp unit, or if the high 5668 1.1 christos address of the last function in the comp unit is less than the 5669 1.1 christos desired address. 5670 1.1 christos 5671 1.1 christos 2017-01-09 Nick Clifton <nickc (a] redhat.com> 5672 1.1 christos 5673 1.1 christos PR binutils/21013 5674 1.1 christos * coffgen.c (_bfd_coff_get_external_symbols): Generate an error 5675 1.1 christos message if there are too many symbols to load. 5676 1.1 christos 5677 1.1 christos 2017-01-04 James Clarke <jrtc27 (a] jrtc27.com> 5678 1.1 christos 5679 1.1 christos * elf64-alpha.c (elf64_alpha_relax_opt_call): Don't set tsec_free 5680 1.1 christos if relocs are cached. 5681 1.1 christos 5682 1.1 christos 2017-01-03 Rich Felker <bugdal (a] aerifal.cx> 5683 1.1 christos 5684 1.1 christos PR ld/21017 5685 1.1 christos * elf32-microblaze.c (microblaze_elf_check_relocs): Add an entry 5686 1.1 christos for R_MICROBLAZE_GOTOFF_64. 5687 1.1 christos 5688 1.1 christos 2017-01-03 Nick Clifton <nickc (a] redhat.com> 5689 1.1 christos 5690 1.1 christos * mach-o.c (bfd_mach_o_lookup_uuid_command): Fix compile time 5691 1.1 christos warning about using a possibly uninitialised variable. 5692 1.1 christos 5693 1.1 christos 2017-01-02 Alan Modra <amodra (a] gmail.com> 5694 1.1 christos 5695 1.1 christos * elf32-hppa.c (ensure_undef_weak_dynamic): New function. 5696 1.1 christos (allocate_plt_static, allocate_dynrelocs): Use it. 5697 1.1 christos 5698 1.1 christos 2017-01-02 Alan Modra <amodra (a] gmail.com> 5699 1.1 christos 5700 1.1 christos * elf-hppa.h (elf_hppa_fake_sections): Set SHF_INFO_LINK for 5701 1.1 christos .PARISC.unwind section. 5702 1.1 christos 5703 1.1 christos 2017-01-02 Alan Modra <amodra (a] gmail.com> 5704 1.1 christos 5705 1.1 christos PR ld/20989 5706 1.1 christos * elfxx-sparc.c (gdop_relative_offset_ok): New function. 5707 1.1 christos (_bfd_sparc_elf_relocate_section): Use it to validate GOT 5708 1.1 christos indirect to GOT pointer relative code edit. 5709 1.1 christos 5710 1.1 christos 2017-01-02 Alan Modra <amodra (a] gmail.com> 5711 1.1 christos 5712 1.1 christos Update year range in copyright notice of all files. 5713 1.1 christos 5714 1.1 christos For older changes see ChangeLog-2016 5715 1.1 christos 5717 1.1 christos Copyright (C) 2017 Free Software Foundation, Inc. 5718 1.1 christos 5719 1.1 christos Copying and distribution of this file, with or without modification, 5720 1.1 christos are permitted in any medium without royalty provided the copyright 5721 1.1 christos notice and this notice are preserved. 5722 1.1 christos 5723 1.1 christos Local Variables: 5724 1.1 christos mode: change-log 5725 1.1 christos left-margin: 8 5726 1.1 christos fill-column: 74 5727 1.1 christos version-control: never 5728 End: 5729