1*867d70fcSchristos2018-12-31 Alan Modra <amodra@gmail.com> 2*867d70fcSchristos 3*867d70fcSchristos PR 24041 4*867d70fcSchristos * elflink.c (elf_link_add_object_symbols): Don't segfault on 5*867d70fcSchristos crafted ET_DYN with no program headers. 6*867d70fcSchristos 7*867d70fcSchristos2018-12-31 Alan Modra <amodra@gmail.com> 8*867d70fcSchristos 9*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section <tls_ldgd_opt>): When 10*867d70fcSchristos editing an old-style __tls_get_addr call, replace a toc restore 11*867d70fcSchristos insn with a nop. 12*867d70fcSchristos 13*867d70fcSchristos2018-12-28 Alan Modra <amodra@gmail.com> 14*867d70fcSchristos 15*867d70fcSchristos PR 24015 16*867d70fcSchristos * elf.c (bfd_elf_get_default_section_type): Make common sections 17*867d70fcSchristos SHT_NOBITS. 18*867d70fcSchristos * linker.c (bfd_generic_define_common_symbol): Clear 19*867d70fcSchristos SEC_HAS_CONTENTS. 20*867d70fcSchristos 21*867d70fcSchristos2018-12-28 Alan Modra <amodra@gmail.com> 22*867d70fcSchristos 23*867d70fcSchristos PR 23966 24*867d70fcSchristos * libbfd.c (SSIZE_MAX): Define. 25*867d70fcSchristos (bfd_malloc, bfd_realloc): Don't cast size to long to check for 26*867d70fcSchristos "negative" values, compare against SSIZE_MAX instead. 27*867d70fcSchristos 28*867d70fcSchristos2018-12-23 H.J. Lu <hongjiu.lu@intel.com> 29*867d70fcSchristos 30*867d70fcSchristos * elf32-i386.c (elf_i386_rtype_to_howto): Remove the unused bfd 31*867d70fcSchristos pointer argument. 32*867d70fcSchristos (elf_i386_info_to_howto_rel): Updated. 33*867d70fcSchristos (elf_i386_tls_transition): Likewise. 34*867d70fcSchristos (elf_i386_relocate_section): Likewise. 35*867d70fcSchristos 36*867d70fcSchristos2018-12-20 H.J. Lu <hongjiu.lu@intel.com> 37*867d70fcSchristos 38*867d70fcSchristos * elf32-i386.c (elf_i386_relocate_section): Call 39*867d70fcSchristos elf_i386_rtype_to_howto to get reloc_howto_type pointer. 40*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_relocate_section): Call 41*867d70fcSchristos elf_x86_64_rtype_to_howto to get reloc_howto_type pointer. 42*867d70fcSchristos 43*867d70fcSchristos2018-12-18 Alan Modra <amodra@gmail.com> 44*867d70fcSchristos 45*867d70fcSchristos * Makefile.am (bfdinclude_HEADERS): Add bfd_stdint.h. 46*867d70fcSchristos (BFD_H_DEPS): Add include/diagnostics.h. 47*867d70fcSchristos (LOCAL_H_DEPS): Add bfd_stdint.h. 48*867d70fcSchristos * bfd-in.h: Include bfd_stdint.h. 49*867d70fcSchristos * arc-plt.h: Don't include stdint.h. 50*867d70fcSchristos * coff-rs6000.c: Likewise. 51*867d70fcSchristos * coff64-rs6000.c: Likewise. 52*867d70fcSchristos * elfxx-riscv.c: Likewise. 53*867d70fcSchristos * cache.c: Don't include bfd_stdint.h. 54*867d70fcSchristos * elf32-arm.c: Likewise. 55*867d70fcSchristos * elf32-avr.c: Likewise. 56*867d70fcSchristos * elf32-nds32.c: Likewise. 57*867d70fcSchristos * elf32-rl78.c: Likewise. 58*867d70fcSchristos * elf32-rx.c: Likewise. 59*867d70fcSchristos * elf32-wasm32.c: Likewise. 60*867d70fcSchristos * elf64-nfp.c: Likewise. 61*867d70fcSchristos * elflink.c: Likewise. 62*867d70fcSchristos * elfnn-aarch64.c: Likewise. 63*867d70fcSchristos * elfnn-ia64.c: Likewise. 64*867d70fcSchristos * elfxx-ia64.c: Likewise. 65*867d70fcSchristos * elfxx-x86.h: Likewise. 66*867d70fcSchristos * wasm-module.c: Likewise, and don't include sysdep.h twice. 67*867d70fcSchristos * elf-nacl.h: Don't include bfd.h. 68*867d70fcSchristos * mach-o.h: Likewise. 69*867d70fcSchristos * elfxx-aarch64.c: Include bfd.h and elf-bfd.h. 70*867d70fcSchristos * elfxx-aarch64.h: Don't include bfd.h, elf-bfd.h or stdint.h. 71*867d70fcSchristos * mach-o-aarch64.c: Include mach-o.h later. 72*867d70fcSchristos * mach-o-arm.c: Likewise. 73*867d70fcSchristos * mach-o-i386.c: Likewise. 74*867d70fcSchristos * mach-o-x86-64.c: Likewise. 75*867d70fcSchristos * mach-o.c: Likewise. 76*867d70fcSchristos * sysdep.h: Don't include ansidecl.h or sys/stat.h. 77*867d70fcSchristos * Makefile.in: Regenerate. 78*867d70fcSchristos * bfd-in2.h: Regenerate. 79*867d70fcSchristos 80*867d70fcSchristos2018-12-18 Alan Modra <amodra@gmail.com> 81*867d70fcSchristos 82*867d70fcSchristos PR 23980 83*867d70fcSchristos * elf32-i386.c (elf_i386_relocate_section): Exit with wrong format 84*867d70fcSchristos error rather than asserting input file is as expected. 85*867d70fcSchristos * elf32-s390.c (elf_s390_relocate_section): Likewise. 86*867d70fcSchristos * elf32-sh.c (sh_elf_relocate_section): Likewise. 87*867d70fcSchristos * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 88*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 89*867d70fcSchristos * elf64-s390.c (elf_s390_relocate_section): Likewise. 90*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 91*867d70fcSchristos * elf32-ppc.c (ppc_elf_relocate_section): Exit with wrong format 92*867d70fcSchristos error if input file is not ppc32 ELF. 93*867d70fcSchristos 94*867d70fcSchristos2018-12-18 Alan Modra <amodra@gmail.com> 95*867d70fcSchristos 96*867d70fcSchristos PR 23980 97*867d70fcSchristos * elf64-ppc.c (ppc64_elf_hide_symbol): Check hash table type 98*867d70fcSchristos before referencing ppc64-only fields of hash entries. 99*867d70fcSchristos 100*867d70fcSchristos2018-12-17 Alan Modra <amodra@gmail.com> 101*867d70fcSchristos 102*867d70fcSchristos PR 23994 103*867d70fcSchristos * aoutx.h: Include limits.h. 104*867d70fcSchristos (get_reloc_upper_bound): Detect long overflow and return a file 105*867d70fcSchristos too big error if it occurs. 106*867d70fcSchristos * elf.c: Include limits.h. 107*867d70fcSchristos (_bfd_elf_get_symtab_upper_bound): Detect long overflow and return 108*867d70fcSchristos a file too big error if it occurs. 109*867d70fcSchristos (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise. 110*867d70fcSchristos (_bfd_elf_get_dynamic_reloc_upper_bound): Likewise. 111*867d70fcSchristos 112*867d70fcSchristos2018-12-14 H.J. Lu <hongjiu.lu@intel.com> 113*867d70fcSchristos 114*867d70fcSchristos PR ld/23900 115*867d70fcSchristos * elf.c (get_program_header_size): Add a PT_GNU_PROPERTY 116*867d70fcSchristos segment for NOTE_GNU_PROPERTY_SECTION_NAME. 117*867d70fcSchristos (_bfd_elf_map_sections_to_segments): Create a PT_GNU_PROPERTY 118*867d70fcSchristos segment for NOTE_GNU_PROPERTY_SECTION_NAME. 119*867d70fcSchristos * elfxx-x86.c (_bfd_elf_link_setup_gnu_properties): Don't set 120*867d70fcSchristos GNU_PROPERTY_X86_UINT32_VALID. 121*867d70fcSchristos 122*867d70fcSchristos2018-12-11 Max Filippov <jcmvbkbc@gmail.com> 123*867d70fcSchristos 124*867d70fcSchristos * elf32-xtensa.c (elf_xtensa_do_reloc): Limit const16 opcode 125*867d70fcSchristos immediate field to 16 least significant bits. 126*867d70fcSchristos 127*867d70fcSchristos2018-12-11 H.J. Lu <hongjiu.lu@intel.com> 128*867d70fcSchristos 129*867d70fcSchristos * elf32-xc16x.c (elf32_xc16x_rtype_to_howto): New function. 130*867d70fcSchristos (elf32_xc16x_relocate_section): Call elf32_xc16x_rtype_to_howto 131*867d70fcSchristos instead of xc16x_reloc_type_lookup to get reloc_howto_type. 132*867d70fcSchristos 133*867d70fcSchristos2018-12-07 H.J. Lu <hongjiu.lu@intel.com> 134*867d70fcSchristos 135*867d70fcSchristos PR ld/23958 136*867d70fcSchristos * elflink.c (_bfd_elf_add_default_symbol): Override the previous 137*867d70fcSchristos definition from IR object. 138*867d70fcSchristos 139*867d70fcSchristos2018-12-08 Stafford Horne <shorne@gmail.com> 140*867d70fcSchristos 141*867d70fcSchristos * elf32-or1k.c (or1k_grok_prstatus): New function. 142*867d70fcSchristos (or1k_grok_psinfo): Likewise. 143*867d70fcSchristos 144*867d70fcSchristos2018-12-07 H.J. Lu <hongjiu.lu@intel.com> 145*867d70fcSchristos 146*867d70fcSchristos * elf-properties.c (elf_find_and_remove_property): Add a 147*867d70fcSchristos bfd_boolean argument to indicate if the property should be 148*867d70fcSchristos removed. 149*867d70fcSchristos (elf_merge_gnu_property_list): Updated. Report 150*867d70fcSchristos property change in linker map file. 151*867d70fcSchristos (elf_get_gnu_property_section_size): Skip property_remove 152*867d70fcSchristos properties. 153*867d70fcSchristos (elf_write_gnu_properties): Likewise. 154*867d70fcSchristos (_bfd_elf_link_setup_gnu_properties): Report property merge 155*867d70fcSchristos in linker map file. Pass abfd to elf_merge_gnu_property_list. 156*867d70fcSchristos 157*867d70fcSchristos2018-12-07 Alan Modra <amodra@gmail.com> 158*867d70fcSchristos 159*867d70fcSchristos PR 23952 160*867d70fcSchristos * syms.c (_bfd_generic_read_minisymbols): Free syms before 161*867d70fcSchristos returning with zero symcount. 162*867d70fcSchristos 163*867d70fcSchristos2018-12-06 Alan Modra <amodra@gmail.com> 164*867d70fcSchristos 165*867d70fcSchristos * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_VLE_ADDR20>): Correct 166*867d70fcSchristos mask and shift value. 167*867d70fcSchristos (ppc_elf_vle_split16): Use E_OPCODE_MASK. Handle e_li 168*867d70fcSchristos specially. 169*867d70fcSchristos 170*867d70fcSchristos2018-12-05 Sam Tebbs <sam.tebbs@arm.com> 171*867d70fcSchristos 172*867d70fcSchristos * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Add check for 'B'. 173*867d70fcSchristos 174*867d70fcSchristos2018-12-04 H.J. Lu <hongjiu.lu@intel.com> 175*867d70fcSchristos 176*867d70fcSchristos PR ld/23372 177*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Don't remove 178*867d70fcSchristos empty properties for GNU_PROPERTY_X86_COMPAT_ISA_1_USED and 179*867d70fcSchristos GNU_PROPERTY_X86_UINT32_OR_AND. 180*867d70fcSchristos (_bfd_x86_elf_link_fixup_gnu_properties): Likewise. 181*867d70fcSchristos 182*867d70fcSchristos2018-12-03 Kito Cheng <kito@andestech.com> 183*867d70fcSchristos 184*867d70fcSchristos * elfxx-riscv.h (RISCV_DONT_CARE_VERSION): New macro. 185*867d70fcSchristos (struct riscv_subset_t): New structure. 186*867d70fcSchristos (riscv_subset_t): New typedef. 187*867d70fcSchristos (riscv_subset_list_t): New structure. 188*867d70fcSchristos (riscv_release_subset_list): New prototype. 189*867d70fcSchristos (riscv_add_subset): Likewise. 190*867d70fcSchristos (riscv_lookup_subset): Likewise. 191*867d70fcSchristos (riscv_lookup_subset_version): Likewise. 192*867d70fcSchristos (riscv_release_subset_list): Likewise. 193*867d70fcSchristos * elfxx-riscv.c: Include safe-ctype.h. 194*867d70fcSchristos (riscv_parsing_subset_version): New function. 195*867d70fcSchristos (riscv_supported_std_ext): Likewise. 196*867d70fcSchristos (riscv_parse_std_ext): Likewise. 197*867d70fcSchristos (riscv_parse_sv_or_non_std_ext): Likewise. 198*867d70fcSchristos (riscv_parse_subset): Likewise. 199*867d70fcSchristos (riscv_add_subset): Likewise. 200*867d70fcSchristos (riscv_lookup_subset): Likewise. 201*867d70fcSchristos (riscv_lookup_subset_version): Likewise. 202*867d70fcSchristos (riscv_release_subset_list): Likewise. 203*867d70fcSchristos 204*867d70fcSchristos2018-12-01 H.J. Lu <hongjiu.lu@intel.com> 205*867d70fcSchristos 206*867d70fcSchristos PR ld/23930 207*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Update 208*867d70fcSchristos the iplt section alignment if it is non-empty. 209*867d70fcSchristos (_bfd_x86_elf_link_setup_gnu_properties): Set plt.iplt_alignment 210*867d70fcSchristos and delay setting the iplt section alignment. 211*867d70fcSchristos * elfxx-x86.h (elf_x86_plt_layout): Add iplt_alignment. 212*867d70fcSchristos 213*867d70fcSchristos2018-11-30 Nick Clifton <nickc@redhat.com> 214*867d70fcSchristos 215*867d70fcSchristos PR 23942 216*867d70fcSchristos * elfcode.h (elf_object_p): Check for corrupt input files with 217*867d70fcSchristos more program headers than can actually fit in the file. 218*867d70fcSchristos 219*867d70fcSchristos2018-11-30 Nick Clifton <nickc@redhat.com> 220*867d70fcSchristos 221*867d70fcSchristos PR 23932 222*867d70fcSchristos * elf.c (IS_CONTAINED_BY_LMA): Add a check for a negative section 223*867d70fcSchristos size. 224*867d70fcSchristos (rewrite_elf_program_header): If no sections are mapped into a 225*867d70fcSchristos segment return an error. 226*867d70fcSchristos 227*867d70fcSchristos2018-11-30 Alan Modra <amodra@gmail.com> 228*867d70fcSchristos 229*867d70fcSchristos PR 23937 230*867d70fcSchristos * elf64-ppc.c (write_plt_relocs_for_local_syms): Don't add local 231*867d70fcSchristos entry offset for ifuncs. 232*867d70fcSchristos 233*867d70fcSchristos2018-11-29 H.J. Lu <hongjiu.lu@intel.com> 234*867d70fcSchristos 235*867d70fcSchristos PR ld/23929 236*867d70fcSchristos * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Don't 237*867d70fcSchristos merge .note.gnu.property section in IR inputs. 238*867d70fcSchristos 239*867d70fcSchristos2018-11-27 Thomas Preud'homme <thomas.preudhomme@linaro.org> 240*867d70fcSchristos 241*867d70fcSchristos * cpu-arm.c (processors): Add processors known to GAS but missing here 242*867d70fcSchristos and reindent. 243*867d70fcSchristos (bfd_arm_update_notes): Add comment explaining why the list of 244*867d70fcSchristos architectures in the switch should not be updated. 245*867d70fcSchristos (architectures): Likewise. 246*867d70fcSchristos 247*867d70fcSchristos2018-11-27 Maciej W. Rozycki <macro@linux-mips.org> 248*867d70fcSchristos 249*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_check_relocs) <R_MIPS16_HI16> 250*867d70fcSchristos <R_MIPS_HI16, R_MIPS_HIGHER, R_MIPS_HIGHEST, R_MICROMIPS_HI16> 251*867d70fcSchristos <R_MICROMIPS_HIGHER, R_MICROMIPS_HIGHEST>: Also accept an 252*867d70fcSchristos absolute symbol in PIC code. 253*867d70fcSchristos 254*867d70fcSchristos2018-11-27 Maciej W. Rozycki <macro@linux-mips.org> 255*867d70fcSchristos 256*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_check_relocs) <R_MIPS16_26> 257*867d70fcSchristos <R_MIPS_26, R_MICROMIPS_26_S1>: Use `info->callbacks->einfo' 258*867d70fcSchristos rather than `_bfd_error_handler' to report refused relocations 259*867d70fcSchristos in PIC code and continue processing. Fix error message: `can 260*867d70fcSchristos not' -> `cannot'. 261*867d70fcSchristos 262*867d70fcSchristos2018-11-27 H.J. Lu <hongjiu.lu@intel.com> 263*867d70fcSchristos 264*867d70fcSchristos PR binutils/23919 265*867d70fcSchristos * compress.c (bfd_is_section_compressed_with_header): Initialize 266*867d70fcSchristos *uncompressed_align_pow_p to 0. 267*867d70fcSchristos 268*867d70fcSchristos2018-11-27 Tamar Christina <tamar.christina@arm.com> 269*867d70fcSchristos 270*867d70fcSchristos PR ld/23904 271*867d70fcSchristos * elfnn-aarch64.c (_bfd_aarch64_adrp_p): Use existing constants. 272*867d70fcSchristos (_bfd_aarch64_erratum_843419_branch_to_stub): Use _bfd_aarch64_adrp_p. 273*867d70fcSchristos (struct erratum_835769_branch_to_stub_clear_data): New. 274*867d70fcSchristos (_bfd_aarch64_erratum_843419_clear_stub): New. 275*867d70fcSchristos (clear_erratum_843419_entry): New. 276*867d70fcSchristos (elfNN_aarch64_tls_relax): Use it. 277*867d70fcSchristos (elfNN_aarch64_relocate_section): Pass input_section. 278*867d70fcSchristos (aarch64_map_one_stub): Handle branch type none as valid. 279*867d70fcSchristos 280*867d70fcSchristos2018-11-27 Mark Wielaard <mark@klomp.org> 281*867d70fcSchristos 282*867d70fcSchristos PR binutils/23919 283*867d70fcSchristos * bfd.c (bfd_update_compression_header): Explicitly set alignment. 284*867d70fcSchristos (bfd_check_compression_header): Add uncompressed_alignment_power 285*867d70fcSchristos argument. Check ch_addralign is a power of 2. 286*867d70fcSchristos * bfd-in2.h: Regenerated. 287*867d70fcSchristos * compress.c (bfd_compress_section_contents): Get and set 288*867d70fcSchristos orig_uncompressed_alignment_pow if section is decompressed. 289*867d70fcSchristos (bfd_is_section_compressed_with_header): Add and get 290*867d70fcSchristos uncompressed_align_pow_p argument. 291*867d70fcSchristos (bfd_is_section_compressed): Add uncompressed_align_power argument 292*867d70fcSchristos to bfd_is_section_compressed_with_header call. 293*867d70fcSchristos (bfd_init_section_decompress_status): Get and set 294*867d70fcSchristos uncompressed_alignment_power. 295*867d70fcSchristos * elf.c (_bfd_elf_make_section_from_shdr): Add 296*867d70fcSchristos uncompressed_align_power argument to 297*867d70fcSchristos bfd_is_section_compressed_with_header call. 298*867d70fcSchristos 299*867d70fcSchristos2018-11-21 Jozef Lawrynowicz <jozef.l@mittosystems.com> 300*867d70fcSchristos 301*867d70fcSchristos * elf32-msp430.c (elf32_msp430_merge_mspabi_attributes): Do not 302*867d70fcSchristos error when .MSP430.attributes section is missing from objects 303*867d70fcSchristos created by LTO. 304*867d70fcSchristos 305*867d70fcSchristos2018-11-13 Jim Wilson <jimw@sifive.com> 306*867d70fcSchristos 307*867d70fcSchristos * elfnn-riscv.c (riscv_float_abi_string): New. 308*867d70fcSchristos (_bfd_riscv_elf_merge_private_bfd_data): Use it for error message. 309*867d70fcSchristos 310*867d70fcSchristos2018-11-09 Bernhard M. Wiedemann <bwiedemann@suse.de> 311*867d70fcSchristos 312*867d70fcSchristos * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Correct comment 313*867d70fcSchristos concerning timestamp insertion. 314*867d70fcSchristos 315*867d70fcSchristos2018-11-09 Cupertino Miranda <cmiranda@synopsys.com> 316*867d70fcSchristos 317*867d70fcSchristos * arc-got.h (arc_got_entry_type_for_reloc): Changed to 318*867d70fcSchristos correct static TLS relocs. 319*867d70fcSchristos * elf32-arc.c (elf_arc_check_relocs): Introduced warning to 320*867d70fcSchristos TLS relocs which require -fPIC. 321*867d70fcSchristos (arc_create_forced_local_got_entries_for_tls): Created. 322*867d70fcSchristos Traverses list of GOT entries to be resolved statically 323*867d70fcSchristos when needed. 324*867d70fcSchristos (elf_arc_finish_dynamic_sections): Changed. Calls 325*867d70fcSchristos arc_create_forced_local_got_entries_for_tls for each known 326*867d70fcSchristos possibly GOT symbol. 327*867d70fcSchristos 328*867d70fcSchristos2018-11-09 rhn <sowaac.rhn@porcupinefactory.org> 329*867d70fcSchristos 330*867d70fcSchristos PR 23699 331*867d70fcSchristos * ihex.c (ihex_write_object_contents): Check for sign extended 332*867d70fcSchristos addresses that cannot be supported in the ihex format. 333*867d70fcSchristos 334*867d70fcSchristos2018-11-09 Claudiu Zissulescu <claziss@synopsys.com> 335*867d70fcSchristos 336*867d70fcSchristos * arc-got.h (arc_get_local_got_ents): Revamp it; use 337*867d70fcSchristos elf_local_got_ents to store the local got list. 338*867d70fcSchristos (get_got_entry_list_for_symbo): Restructure it. 339*867d70fcSchristos * elf32-arc.c (elf_arc_relocate_section): Correct the call to 340*867d70fcSchristos get_got_entry_list_for_symbol. 341*867d70fcSchristos 342*867d70fcSchristos2018-11-07 Nick Clifton <nickc@redhat.com> 343*867d70fcSchristos 344*867d70fcSchristos * po/fr.po: Updated French translation. 345*867d70fcSchristos * po/pt.po: Updated Portuguese translation. 346*867d70fcSchristos 347*867d70fcSchristos2018-11-06 Roman Bolshakov <r.bolshakov@yadro.com> 348*867d70fcSchristos Saagar Jha <saagar@saagarjha.com> 349*867d70fcSchristos 350*867d70fcSchristos * mach-o.h: Add new enums for BFD_MACH_O_PLATFORM_MACOS, 351*867d70fcSchristos BFD_MACH_O_PLATFORM_IOS, BFD_MACH_O_PLATFORM_TVOS, 352*867d70fcSchristos BFD_MACH_O_PLATFORM_WATCHOS, BFD_MACH_O_PLATFORM_BRIDGEOS, 353*867d70fcSchristos BFD_MACH_O_TOOL_CLANG, BFD_MACH_O_TOOL_SWIFT, BFD_MACH_O_TOOL_LD. 354*867d70fcSchristos (struct bfd_mach_o_note_command): New. 355*867d70fcSchristos (struct bfd_mach_o_build_version_tool): New. 356*867d70fcSchristos (struct bfd_mach_o_build_version_command): New. 357*867d70fcSchristos (bfd_mach_o_read_version_min): Don't split version into 358*867d70fcSchristos a few fields. Rename reserved to sdk. 359*867d70fcSchristos * mach-o.c (bfd_mach_o_read_version_min): Don't split version into a 360*867d70fcSchristos few fields. Rename reserved to sdk. 361*867d70fcSchristos (bfd_mach_o_read_command): Handle LC_VERSION_MIN_TVOS, LC_NOTE, 362*867d70fcSchristos LC_BUILD_VERSION. 363*867d70fcSchristos (bfd_mach_o_read_note): New. 364*867d70fcSchristos (bfd_mach_o_read_build_version): New. 365*867d70fcSchristos 366*867d70fcSchristos2018-11-07 Yoshinori Sato <ysato@users.sourceforge.jp> 367*867d70fcSchristos 368*867d70fcSchristos * config.bfd: Add rx-*-linux. 369*867d70fcSchristos * congigure.ac: Likewise. 370*867d70fcSchristos * elf32-rx.c (rx_linux_object_p): New function. 371*867d70fcSchristos (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME) 372*867d70fcSchristos (elf_backend_object_p, elf32_bed): Define rx-*-linux. 373*867d70fcSchristos * targets.c: Add rx_elf32_linux_le_vec. 374*867d70fcSchristos * configure: Regenerate. 375*867d70fcSchristos 376*867d70fcSchristos2018-11-06 Romain Margheriti <lilrom13@gmail.com> 377*867d70fcSchristos 378*867d70fcSchristos PR 23742 379*867d70fcSchristos * mach-o.c (bfd_mach_o_read_command): Accept and ignore 380*867d70fcSchristos BFD_MACH_O_LC_LINKER_OPTIONS and BFD_MACH_O_LC_BUILD_VERSION 381*867d70fcSchristos commands. 382*867d70fcSchristos 383*867d70fcSchristos2018-11-02 Alan Modra <amodra@gmail.com> 384*867d70fcSchristos 385*867d70fcSchristos PR 23850 386*867d70fcSchristos * elf.c (bfd_section_from_shdr): Treat SHF_ALLOC SHT_REL* sections 387*867d70fcSchristos in an executable or shared library as normal sections. 388*867d70fcSchristos 389*867d70fcSchristos2018-10-31 Renlin Li <renlin.li@arm.com> 390*867d70fcSchristos 391*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Don't create got 392*867d70fcSchristos section for Local Exec TLS model. 393*867d70fcSchristos 394*867d70fcSchristos2018-10-24 H.J. Lu <hongjiu.lu@intel.com> 395*867d70fcSchristos 396*867d70fcSchristos PR ld/23818 397*867d70fcSchristos * elflink.c (_bfd_elf_link_assign_sym_version): Hide symbols 398*867d70fcSchristos defined in discarded input sections. 399*867d70fcSchristos 400*867d70fcSchristos2018-10-24 Alan Modra <amodra@gmail.com> 401*867d70fcSchristos 402*867d70fcSchristos * elf32-arm.c (elf32_arm_size_stubs): Ignore as-needed libs that 403*867d70fcSchristos were not needed. 404*867d70fcSchristos 405*867d70fcSchristos2018-10-23 Alan Modra <amodra@gmail.com> 406*867d70fcSchristos 407*867d70fcSchristos PR 23806 408*867d70fcSchristos * merge.c (_bfd_add_merge_section): Don't attempt to merge 409*867d70fcSchristos sections with ridiculously large alignments. 410*867d70fcSchristos 411*867d70fcSchristos2018-10-23 Alan Modra <amodra@gmail.com> 412*867d70fcSchristos 413*867d70fcSchristos PR 23805 414*867d70fcSchristos * elflink.c (elf_link_input_bfd): Don't segfault on finding 415*867d70fcSchristos STT_TLS symbols without any TLS sections. Instead, change the 416*867d70fcSchristos symbol type to STT_NOTYPE. 417*867d70fcSchristos 418*867d70fcSchristos2018-10-23 Alan Modra <amodra@gmail.com> 419*867d70fcSchristos 420*867d70fcSchristos PR 23804 421*867d70fcSchristos * merge.c (_bfd_add_merge_section): Don't attempt to merge 422*867d70fcSchristos sections where size is not a multiple of entsize. 423*867d70fcSchristos 424*867d70fcSchristos2018-10-20 Alan Modra <amodra@gmail.com> 425*867d70fcSchristos 426*867d70fcSchristos PR 23788 427*867d70fcSchristos * elf.c (section_match): Don't require a size match for SHT_SYMTAB 428*867d70fcSchristos or SHT_STRTAB. 429*867d70fcSchristos 430*867d70fcSchristos2018-10-17 Alan Modra <amodra@gmail.com> 431*867d70fcSchristos 432*867d70fcSchristos PR 23653 433*867d70fcSchristos * elflink.c (_bfd_elf_link_create_dynstrtab): Match elf_object_id 434*867d70fcSchristos too when choosing dynobj. 435*867d70fcSchristos 436*867d70fcSchristos2018-10-16 Alan Modra <amodra@gmail.com> 437*867d70fcSchristos 438*867d70fcSchristos * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Simplify 439*867d70fcSchristos PE_DEBUG_DATA size checks. 440*867d70fcSchristos 441*867d70fcSchristos2018-10-16 Alan Modra <amodra@gmail.com> 442*867d70fcSchristos 443*867d70fcSchristos PR 23781 444*867d70fcSchristos * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Free data 445*867d70fcSchristos before returning. 446*867d70fcSchristos 447*867d70fcSchristos2018-10-16 Alan Modra <amodra@gmail.com> 448*867d70fcSchristos 449*867d70fcSchristos PR 23534 450*867d70fcSchristos * init.c (bfd_init): Return an unsigned int. 451*867d70fcSchristos bfd-in2.h: Regenerate. 452*867d70fcSchristos 453*867d70fcSchristos2018-10-15 Alan Modra <amodra@gmail.com> 454*867d70fcSchristos 455*867d70fcSchristos PR 23534 456*867d70fcSchristos * init.c (BFD_INIT_MAGIC): Define. 457*867d70fcSchristos (bfd_init): Return BFD_INIT_MAGIC. 458*867d70fcSchristos bfd-in2.h: Regenerate. 459*867d70fcSchristos 460*867d70fcSchristos2018-10-13 Alan Modra <amodra@gmail.com> 461*867d70fcSchristos 462*867d70fcSchristos PR 23770 463*867d70fcSchristos PR 23425 464*867d70fcSchristos * reloc.c (_bfd_clear_contents): Replace "location" param with 465*867d70fcSchristos "buf" and "off". Bounds check "off". Return status. 466*867d70fcSchristos * cofflink.c (_bfd_coff_generic_relocate_section): Update 467*867d70fcSchristos _bfd_clear_contents call. 468*867d70fcSchristos * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Likewise. 469*867d70fcSchristos * elf32-arc.c (elf_arc_relocate_section): Likewise. 470*867d70fcSchristos * elf32-i386.c (elf_i386_relocate_section): Likewise. 471*867d70fcSchristos * elf32-metag.c (metag_final_link_relocate): Likewise. 472*867d70fcSchristos * elf32-nds32.c (nds32_elf_get_relocated_section_contents): Likewise. 473*867d70fcSchristos * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 474*867d70fcSchristos * elf32-visium.c (visium_elf_relocate_section): Likewise. 475*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 476*867d70fcSchristos * elf64-x86-64.c *(elf_x86_64_relocate_section): Likewise. 477*867d70fcSchristos * libbfd-in.h (_bfd_clear_contents): Update prototype. 478*867d70fcSchristos * libbfd.h: Regenerate. 479*867d70fcSchristos 480*867d70fcSchristos2018-10-09 Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com> 481*867d70fcSchristos 482*867d70fcSchristos * elflink.c (elf_link_output_extsym): Do not place symbols into a 483*867d70fcSchristos discarded .dynsym. 484*867d70fcSchristos 485*867d70fcSchristos2018-10-08 H.J. Lu <hongjiu.lu@intel.com> 486*867d70fcSchristos 487*867d70fcSchristos PR ld/23428 488*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't 489*867d70fcSchristos add GNU_PROPERTY_X86_FEATURE_2_NEEDED to force program header 490*867d70fcSchristos in non-code PT_LOAD segment. 491*867d70fcSchristos 492*867d70fcSchristos2018-10-08 Alan Modra <amodra@gmail.com> 493*867d70fcSchristos 494*867d70fcSchristos * elf-nacl.c (nacl_modify_segment_map): Cope with header PT_LOAD 495*867d70fcSchristos lacking sections. 496*867d70fcSchristos * elf.c (_bfd_elf_map_sections_to_segments): Assume file and 497*867d70fcSchristos program headers are required when info->load_phdrs. Reorganize 498*867d70fcSchristos code handling program headers. Generate a mapping without 499*867d70fcSchristos sections just for file and program headers when -z separate-code 500*867d70fcSchristos would indicate they should be on a different page to the first 501*867d70fcSchristos section. 502*867d70fcSchristos 503*867d70fcSchristos2018-10-08 Alan Modra <amodra@gmail.com> 504*867d70fcSchristos 505*867d70fcSchristos * elf.c (assign_file_positions_for_load_sections): Set p_vaddr 506*867d70fcSchristos from m->p_vaddr_offset for segments without sections. Invert 507*867d70fcSchristos sign of p_vaddr_offset. 508*867d70fcSchristos (rewrite_elf_program_header, copy_elf_program_header): Save 509*867d70fcSchristos old segment p_vaddr to p_vaddr_offset. Invert sign of 510*867d70fcSchristos p_vaddr_offset. 511*867d70fcSchristos 512*867d70fcSchristos2018-10-08 Alan Modra <amodra@gmail.com> 513*867d70fcSchristos 514*867d70fcSchristos * elf.c (get_program_header_size): Don't count PT_INTERP if 515*867d70fcSchristos .interp is empty. 516*867d70fcSchristos (_bfd_elf_map_sections_to_segments): Don't create PT_INTERP if 517*867d70fcSchristos .interp is empty. 518*867d70fcSchristos 519*867d70fcSchristos2018-10-08 Alan Modra <amodra@gmail.com> 520*867d70fcSchristos 521*867d70fcSchristos * elf32-spu.c (spu_elf_modify_segment_map): Don't insert 522*867d70fcSchristos overlays before segment containing headers. 523*867d70fcSchristos 524*867d70fcSchristos2018-10-08 Alan Modra <amodra@gmail.com> 525*867d70fcSchristos 526*867d70fcSchristos * elf.c (make_mapping): Cope with zero size array at end of 527*867d70fcSchristos struct elf_segment_map. 528*867d70fcSchristos (_bfd_elf_map_sections_to_segments): Likewise. 529*867d70fcSchristos (rewrite_elf_program_header, copy_elf_program_header): Likewise. 530*867d70fcSchristos (_bfd_elf_map_sections_to_segments): Rename phdr_index to hdr_index. 531*867d70fcSchristos 532*867d70fcSchristos2018-10-05 Alan Modra <amodra@gmail.com> 533*867d70fcSchristos 534*867d70fcSchristos * elf32-spu.c (spu_elf_create_sections): Make .note.spu_name 535*867d70fcSchristos SHT_NOTE. 536*867d70fcSchristos 537*867d70fcSchristos2018-10-05 Richard Henderson <rth@twiddle.net> 538*867d70fcSchristos 539*867d70fcSchristos * bfd-in2.h: Regenerated. 540*867d70fcSchristos * elf32-or1k.c: (or1k_elf_howto_table): Fix formatting for 541*867d70fcSchristos R_OR1K_PLT26, Add R_OR1K_PCREL_PG21, R_OR1K_GOT_PG21, 542*867d70fcSchristos R_OR1K_TLS_GD_PG21, R_OR1K_TLS_LDM_PG21, R_OR1K_TLS_IE_PG21, 543*867d70fcSchristos R_OR1K_LO13, R_OR1K_GOT_LO13, R_OR1K_TLS_GD_LO13, R_OR1K_TLS_LDM_LO13, 544*867d70fcSchristos R_OR1K_TLS_IE_LO13, R_OR1K_SLO13, R_OR1K_PLTA26. 545*867d70fcSchristos (or1k_reloc_map): Add BFD_RELOC_OR1K_PCREL_PG21, 546*867d70fcSchristos BFD_RELOC_OR1K_GOT_PG21, BFD_RELOC_OR1K_TLS_GD_PG21, 547*867d70fcSchristos BFD_RELOC_OR1K_TLS_LDM_PG21, BFD_RELOC_OR1K_TLS_IE_PG21, 548*867d70fcSchristos BFD_RELOC_OR1K_LO13, BFD_RELOC_OR1K_GOT_LO13, 549*867d70fcSchristos BFD_RELOC_OR1K_TLS_GD_LO13, BFD_RELOC_OR1K_TLS_GD_LO13, 550*867d70fcSchristos BFD_RELOC_OR1K_TLS_LDM_LO13, BFD_RELOC_OR1K_TLS_IE_LO13, 551*867d70fcSchristos BFD_RELOC_OR1K_SLO13, BFD_RELOC_OR1K_PLTA26. 552*867d70fcSchristos (elf_or1k_link_hash_table): Add field saw_plta. 553*867d70fcSchristos (or1k_final_link_relocate): Add value calculations for new relocations. 554*867d70fcSchristos (or1k_elf_relocate_section): Add section relocations for new 555*867d70fcSchristos relocations. 556*867d70fcSchristos (or1k_write_plt_entry): New function. 557*867d70fcSchristos (or1k_elf_finish_dynamic_sections): Add support for PLTA relocations 558*867d70fcSchristos using new l.adrp instruction. Cleanup PLT relocation code generation. 559*867d70fcSchristos * libbfd.h: Regenerated. 560*867d70fcSchristos * reloc.c: Add BFD_RELOC_OR1K_PCREL_PG21, BFD_RELOC_OR1K_LO13, 561*867d70fcSchristos BFD_RELOC_OR1K_SLO13, BFD_RELOC_OR1K_GOT_PG21, BFD_RELOC_OR1K_GOT_LO13, 562*867d70fcSchristos BFD_RELOC_OR1K_PLTA26, BFD_RELOC_OR1K_TLS_GD_PG21, 563*867d70fcSchristos BFD_RELOC_OR1K_TLS_GD_LO13, BFD_RELOC_OR1K_TLS_LDM_PG21, 564*867d70fcSchristos BFD_RELOC_OR1K_TLS_LDM_LO13, BFD_RELOC_OR1K_TLS_IE_PG21, 565*867d70fcSchristos BFD_RELOC_OR1K_TLS_IE_LO13. 566*867d70fcSchristos 567*867d70fcSchristos2018-10-05 Richard Henderson <rth@twiddle.net> 568*867d70fcSchristos 569*867d70fcSchristos * elf32-or1k.c (or1k_elf_relocate_section): Add error for unknown 570*867d70fcSchristos relocations. Add error for non zero addend with plt and got 571*867d70fcSchristos relocations. Add error for got and plt references against dynamic, non 572*867d70fcSchristos local, symbols. Add error when linking non shared liraries with 573*867d70fcSchristos flag_pic. 574*867d70fcSchristos 575*867d70fcSchristos2018-10-05 Richard Henderson <rth@twiddle.net> 576*867d70fcSchristos Stafford Horne <shorne@gmail.com> 577*867d70fcSchristos 578*867d70fcSchristos * bfd-in2.h: Regenerated. 579*867d70fcSchristos * elf32-or1k.c (N_ONES): New macro. 580*867d70fcSchristos (or1k_elf_howto_table): Fix R_OR1K_PLT26 to complain on overflow. 581*867d70fcSchristos Add definitions for R_OR1K_TLS_TPOFF, R_OR1K_TLS_DTPOFF, 582*867d70fcSchristos R_OR1K_TLS_DTPMOD, R_OR1K_AHI16, R_OR1K_GOTOFF_AHI16, 583*867d70fcSchristos R_OR1K_TLS_IE_AHI16, R_OR1K_TLS_LE_AHI16, R_OR1K_SLO16, 584*867d70fcSchristos R_OR1K_GOTOFF_SLO16, R_OR1K_TLS_LE_SLO16. 585*867d70fcSchristos (or1k_reloc_map): Add entries for BFD_RELOC_HI16_S, 586*867d70fcSchristos BFD_RELOC_LO16_GOTOFF, BFD_RELOC_HI16_GOTOFF, BFD_RELOC_HI16_S_GOTOFF, 587*867d70fcSchristos BFD_RELOC_OR1K_TLS_IE_AHI16, BFD_RELOC_OR1K_TLS_LE_AHI16, 588*867d70fcSchristos BFD_RELOC_OR1K_SLO16, BFD_RELOC_OR1K_GOTOFF_SLO16, 589*867d70fcSchristos BFD_RELOC_OR1K_TLS_LE_SLO16. 590*867d70fcSchristos (or1k_reloc_type_lookup): Change search loop to start ad index 0 and 591*867d70fcSchristos also check results before returning. 592*867d70fcSchristos (or1k_reloc_name_lookup): Simplify loop to use R_OR1K_max as index 593*867d70fcSchristos limit. 594*867d70fcSchristos (or1k_final_link_relocate): New function. 595*867d70fcSchristos (or1k_elf_relocate_section): Add support for new AHI and SLO 596*867d70fcSchristos relocations. Use or1k_final_link_relocate instead of generic 597*867d70fcSchristos _bfd_final_link_relocate. 598*867d70fcSchristos (or1k_elf_check_relocs): Add support for new AHI and SLO relocations. 599*867d70fcSchristos * reloc.c: Add new enums for BFD_RELOC_OR1K_SLO16, 600*867d70fcSchristos BFD_RELOC_OR1K_GOTOFF_SLO16, BFD_RELOC_OR1K_TLS_IE_AHI16, 601*867d70fcSchristos BFD_RELOC_OR1K_TLS_IE_AHI16, BFD_RELOC_OR1K_TLS_LE_AHI16, 602*867d70fcSchristos BFD_RELOC_OR1K_TLS_LE_SLO16. Remove unused BFD_RELOC_OR1K_GOTOFF_HI16 603*867d70fcSchristos and BFD_RELOC_OR1K_GOTOFF_LO16. 604*867d70fcSchristos * libbfd.h: Regenerated. 605*867d70fcSchristos 606*867d70fcSchristos2018-10-04 Jim Wilson <jimw@sifive.com> 607*867d70fcSchristos 608*867d70fcSchristos * elfnn-riscv.c (riscv_elf_size_dynamic_sections): In dynobj->sections 609*867d70fcSchristos loop, handle htab->sdyntdata section. 610*867d70fcSchristos 611*867d70fcSchristos2018-10-04 Jose E. Marchesi <jose.marchesi@oracle.com> 612*867d70fcSchristos 613*867d70fcSchristos * elf64-sparc.c (elf64_sparc_output_arch_syms): Do notcorrect the 614*867d70fcSchristos impact of STT_REGISTER symbols in the dynsym sh_info here... 615*867d70fcSchristos * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_sections): ...but 616*867d70fcSchristos do it here. 617*867d70fcSchristos 618*867d70fcSchristos2018-10-03 H.J. Lu <hongjiu.lu@intel.com> 619*867d70fcSchristos 620*867d70fcSchristos PR ld/23658 621*867d70fcSchristos * elf.c (get_program_header_size): Put all adjacent SHT_NOTE 622*867d70fcSchristos sections with the same section alignment into a single PT_NOTE 623*867d70fcSchristos segment. Check SHT_NOTE section type instead of section name. 624*867d70fcSchristos (_bfd_elf_map_sections_to_segments): Likewise. 625*867d70fcSchristos 626*867d70fcSchristos2018-10-03 Millan Wolff <mail@milianw.de> 627*867d70fcSchristos 628*867d70fcSchristos PR 23715 629*867d70fcSchristos * dwarf2.c (find_abstract_instance): Allow recursive invocations 630*867d70fcSchristos of find_abstract_instance to override the name variable. 631*867d70fcSchristos 632*867d70fcSchristos2018-10-03 Nick Clifton <nickc@redhat.com> 633*867d70fcSchristos 634*867d70fcSchristos * po/pt.po: Updated Portuguese translation. 635*867d70fcSchristos 636*867d70fcSchristos2018-10-01 Cupertino Miranda <cmiranda@synopsys.com> 637*867d70fcSchristos 638*867d70fcSchristos * arc-got.h (relocate_fix_got_relocs_for_got_info): Changed. Take TLS 639*867d70fcSchristos section alignment in consideration for this relocation. Fixed TCB_SIZE 640*867d70fcSchristos offset size to include section alignment. 641*867d70fcSchristos (get_got_entry_list_for_symbol): Changed. 642*867d70fcSchristos * elf32-arc.c (FINAL_SECTSTART): Added this formula macro. 643*867d70fcSchristos (ARC_TLS_DTPOFF) Updated reloc to use new created macro instead. 644*867d70fcSchristos (arc_special_overflow_checks): Fixed TCB_SIZE offsize to include 645*867d70fcSchristos section alignment. 646*867d70fcSchristos (elf_arc_check_relocs): Changed. 647*867d70fcSchristos (elf_arc_finish_dynamic_symbol) Return FALSE in case arc_htab is NULL. 648*867d70fcSchristos (struct elf_arc_link_hash_entry): Moved and changed. 649*867d70fcSchristos (elf_arc_link_hash_newfunc): Changed. 650*867d70fcSchristos (arc_elf_link_hash_table_create): Removed old initializations. 651*867d70fcSchristos (elf_arc_relocate_section, elf_arc_finish_dynamic_symbol): Changed. 652*867d70fcSchristos 653*867d70fcSchristos2018-09-28 H.J. Lu <hongjiu.lu@intel.com> 654*867d70fcSchristos 655*867d70fcSchristos * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Use 656*867d70fcSchristos elfclass instead of bed->s->elfclass. 657*867d70fcSchristos 658*867d70fcSchristos2018-09-27 Jim Wilson <jimw@sifive.com> 659*867d70fcSchristos 660*867d70fcSchristos * elfnn-riscv.c (riscv_init_pcgp_relocs): Add explanatory comment. 661*867d70fcSchristos (riscv_free_pcgp_relocs, riscv_record_pcgp_reloc): Likewise. 662*867d70fcSchristos (riscv_find_pcgp_hi_reloc, riscv_reocrd_pcgp_lo_reloc): Likewise. 663*867d70fcSchristos (riscv_find_pcgp_lo_reloc): Likewise. 664*867d70fcSchristos (riscv_delete_pcgp_hi_reloc, riscv_use_pcgp_hi_reloc): Delete. 665*867d70fcSchristos (riscv_delete_pcgp_lo_reloc): Likewise. 666*867d70fcSchristos (_bfd_riscv_relax_pc): Don't call riscv_use_pcgp_hi_reloc. Replace 667*867d70fcSchristos calls to riscv_delete_pcgp_lo_reloc and riscv_delete_pcgp_hi_reloc 668*867d70fcSchristos with TRUE. Mark abfd arg as ATTRIBUTE_UNUSED. 669*867d70fcSchristos 670*867d70fcSchristos2018-09-25 Jim Wilson <jimw@sifive.com> 671*867d70fcSchristos 672*867d70fcSchristos * elfnn-riscv.c (riscv_make_plt_header): New arg output_bfd. Change 673*867d70fcSchristos return type to bfd_boolean. If EF_RISCV_RVE call _bfd_error_handler 674*867d70fcSchristos and return FALSE. Return TRUE at end. 675*867d70fcSchristos (riscv_make_plt_entry): Likewise. 676*867d70fcSchristos (riscv_elf_finish_dynamic_symbol): Update call to riscv_make_plt_entry. 677*867d70fcSchristos (riscv_elf_finish_dynamic_sections): Update call to 678*867d70fcSchristos riscv_make_plt_header. 679*867d70fcSchristos 680*867d70fcSchristos2018-09-24 Jim Wilson <jimw@sifive.com> 681*867d70fcSchristos 682*867d70fcSchristos * elfnn-riscv.c (_bfd_riscv_relax_pc) <R_RISCV_PCREL_LO12_I>: New local 683*867d70fcSchristos hi_sec_off which is symbol address with addend subtracted. Use in 684*867d70fcSchristos riscv_find_pcgp_hi_reloc and riscv_record_pcgp_lo_reloc calls. 685*867d70fcSchristos 686*867d70fcSchristos * elfnn-riscv.c (riscv_resolve_pcrel_lo_relocs): Add check for reloc 687*867d70fcSchristos overflow with addend. Use reloc_dangerous instead of reloc_overflow. 688*867d70fcSchristos Add strings for the two errors handled here. 689*867d70fcSchristos (riscv_elf_relocate_section) In case R_RISCV_PCREL_LO12_I, rewrite 690*867d70fcSchristos comment. Only give error with addend when used with section symbol. 691*867d70fcSchristos In case bfd_reloc_dangerous, update error string. 692*867d70fcSchristos 693*867d70fcSchristos2018-09-24 Jozef Lawrynowicz <jozef.l@mittosystems.com> 694*867d70fcSchristos 695*867d70fcSchristos PR gdb/20948 696*867d70fcSchristos * elf.c (_bfd_elf_write_object_contents): Return from function 697*867d70fcSchristos early if abfd->direction == both_direction. 698*867d70fcSchristos 699*867d70fcSchristos2018-09-21 Simon Marchi <simon.marchi@ericsson.com> 700*867d70fcSchristos 701*867d70fcSchristos * configure.ac: Check for fls. 702*867d70fcSchristos * elf32-nds32.c (fls): Only define if !HAVE_FLS. 703*867d70fcSchristos * config.in: Re-generate. 704*867d70fcSchristos * configure: Re-generate. 705*867d70fcSchristos 706*867d70fcSchristos2018-09-20 Maciej W. Rozycki <macro@linux-mips.org> 707*867d70fcSchristos 708*867d70fcSchristos * config.bfd <rs6000-*-aix5.[01], rs6000-*-aix[5-9]*>: Remove 709*867d70fcSchristos duplicate `case' selectors. 710*867d70fcSchristos 711*867d70fcSchristos2018-09-20 Nelson Chu <nelson.chu1990@gmail.com> 712*867d70fcSchristos 713*867d70fcSchristos * elf32-nds32.c (nds32_elf_relax_loadstore): 714*867d70fcSchristos Remove the unused target features. 715*867d70fcSchristos (bfd_elf32_nds32_set_target_option): Remove the unused parameters. 716*867d70fcSchristos (nds32_elf_relax_piclo12, nds32_elf_relax_letlslo12, 717*867d70fcSchristos nds32_elf_relax_letlsadd, nds32_elf_relax_letlsls, 718*867d70fcSchristos nds32_elf_relax_pltgot_suff, nds32_elf_relax_got_suff 719*867d70fcSchristos nds32_elf_relax_gotoff_suff, calculate_plt_memory_address, 720*867d70fcSchristos calculate_plt_offset, calculate_got_memory_address, 721*867d70fcSchristos nds32_elf_check_dup_relocs): Removed. 722*867d70fcSchristos All callers changed. 723*867d70fcSchristos * elf32-nds32.h: Remove the unused macros and defines. 724*867d70fcSchristos (elf_nds32_link_hash_table): Remove the unused variable. 725*867d70fcSchristos (bfd_elf32_nds32_set_target_option): Update prototype. 726*867d70fcSchristos (nds32_elf_ex9_init): Removed. 727*867d70fcSchristos * elf32-nds32.c (nds32_convert_32_to_16): Updated. 728*867d70fcSchristos * elf32-nds32.c (HOWTO2, HOWTO3): Define new HOWTO macros 729*867d70fcSchristos to initialize array nds32_elf_howto_table in any order 730*867d70fcSchristos without lots of EMPTY_HOWTO. 731*867d70fcSchristos (nds32_reloc_map): Updated. 732*867d70fcSchristos * reloc.c: Add BFD_RELOC_NDS32_LSI. 733*867d70fcSchristos * bfd-in2.h: Regenerated. 734*867d70fcSchristos * bfd/libbfd.h: Regenerated. 735*867d70fcSchristos * elf32-nds32.c (nds32_elf_relax_howto_table): Add R_NDS32_LSI. 736*867d70fcSchristos (nds32_reloc_map): Likewise. 737*867d70fcSchristos (nds32_elf_relax_flsi): New function. 738*867d70fcSchristos (nds32_elf_relax_section): Support floating load/store relaxation. 739*867d70fcSchristos * elf32-nds32.c (NDS32_GUARD_SEC_P, elf32_nds32_local_gp_offset): 740*867d70fcSchristos New macro. 741*867d70fcSchristos (struct elf_nds32_link_hash_entry): New `offset_to_gp' field. 742*867d70fcSchristos (struct elf_nds32_obj_tdata): New `offset_to_gp' and `hdr_size' fields. 743*867d70fcSchristos (elf32_nds32_allocate_local_sym_info, nds32_elf_relax_guard, 744*867d70fcSchristos nds32_elf_is_target_special_symbol, nds32_elf_maybe_function_sym): 745*867d70fcSchristos New functions. 746*867d70fcSchristos (nds32_info_to_howto_rel): Add BFD_ASSERT. 747*867d70fcSchristos (bfd_elf32_bfd_reloc_type_table_lookup, nds32_elf_link_hash_newfunc, 748*867d70fcSchristos nds32_elf_link_hash_table_create, nds32_elf_relocate_section, 749*867d70fcSchristos nds32_elf_relax_loadstore, nds32_elf_relax_lo12, nds32_relax_adjust_label, 750*867d70fcSchristos bfd_elf32_nds32_set_target_option, nds32_fag_mark_relax): Updated. 751*867d70fcSchristos (nds32_elf_final_sda_base): Improve it to find the better gp value. 752*867d70fcSchristos (insert_nds32_elf_blank): Must consider `len' when inserting blanks. 753*867d70fcSchristos * elf32-nds32.h (bfd_elf32_nds32_set_target_option): Update prototype. 754*867d70fcSchristos (struct elf_nds32_link_hash_table): Add new variable `hyper_relax'. 755*867d70fcSchristos * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): New function. 756*867d70fcSchristos (create_got_section): Likewise. 757*867d70fcSchristos (allocate_dynrelocs, nds32_elf_size_dynamic_sections, 758*867d70fcSchristos nds32_elf_relocate_section, nds32_elf_finish_dynamic_symbol): Updated. 759*867d70fcSchristos (nds32_elf_check_relocs): Fix the issue that the shared library may 760*867d70fcSchristos has TEXTREL entry in the dynamic section. 761*867d70fcSchristos (nds32_elf_create_dynamic_sections): Enable to call readonly_dynrelocs 762*867d70fcSchristos since the TEXTREL issue is fixed in the nds32_elf_check_relocs. 763*867d70fcSchristos (nds32_elf_finish_dynamic_sections): Update and add DT_RELASZ 764*867d70fcSchristos dynamic entry. 765*867d70fcSchristos (calculate_offset): Remove the unused parameter `pic_ext_target' and 766*867d70fcSchristos related codes. 767*867d70fcSchristos All callers changed. 768*867d70fcSchristos (elf_backend_dtrel_excludes_plt): Disable it temporarily since it 769*867d70fcSchristos will cause some errors for our test cases. 770*867d70fcSchristos * elf32-nds32.c (nds32_elf_merge_private_bfd_data): Allow to link the 771*867d70fcSchristos generic object. 772*867d70fcSchristos * reloc.c: Add TLS relocations. 773*867d70fcSchristos * libbfd.h: Regenerated. 774*867d70fcSchristos * bfd-in2.h: Regenerated. 775*867d70fcSchristos * elf32-nds32.h (struct section_id_list_t): New. 776*867d70fcSchristos (elf32_nds32_lookup_section_id, elf32_nds32_check_relax_group, 777*867d70fcSchristos elf32_nds32_unify_relax_group, nds32_elf_unify_tls_model): 778*867d70fcSchristos New prototypes. 779*867d70fcSchristos (elf32_nds32_compute_jump_table_size, elf32_nds32_local_tlsdesc_gotent): 780*867d70fcSchristos New macro. 781*867d70fcSchristos (nds32_insertion_sort, bfd_elf32_nds32_set_target_option, 782*867d70fcSchristos elf_nds32_link_hash_table): Updated. 783*867d70fcSchristos * elf32-nds32.c (enum elf_nds32_tls_type): New. 784*867d70fcSchristos (struct elf32_nds32_relax_group_t, struct relax_group_list_t): New. 785*867d70fcSchristos (elf32_nds32_add_dynreloc, patch_tls_desc_to_ie, get_tls_type, 786*867d70fcSchristos fls, ones32, list_insert, list_insert_sibling, dump_chain, 787*867d70fcSchristos elf32_nds32_check_relax_group, elf32_nds32_lookup_section_id, 788*867d70fcSchristos elf32_nds32_unify_relax_group, nds32_elf_unify_tls_model): New functions. 789*867d70fcSchristos (elf_nds32_obj_tdata): Add new fields. 790*867d70fcSchristos (elf32_nds32_relax_group_ptr, nds32_elf_local_tlsdesc_gotent): New macros. 791*867d70fcSchristos (nds32_elf_howto_table): Add TLS relocations. 792*867d70fcSchristos (nds32_reloc_map): Likewise. 793*867d70fcSchristos (nds32_elf_copy_indirect_symbol, nds32_elf_size_dynamic_sections, 794*867d70fcSchristos nds32_elf_finish_dynamic_symbol, elf32_nds32_allocate_local_sym_info, 795*867d70fcSchristos nds32_elf_relocate_section, bfd_elf32_nds32_set_target_option, 796*867d70fcSchristos nds32_elf_check_relocs, allocate_dynrelocs): Updated. 797*867d70fcSchristos (nds32_elf_relax_section): Call nds32_elf_unify_tls_model. 798*867d70fcSchristos (dtpoff_base): Rename it to `gottpof' and then update it. 799*867d70fcSchristos 800*867d70fcSchristos2018-09-20 Alan Modra <amodra@gmail.com> 801*867d70fcSchristos 802*867d70fcSchristos PR 23685 803*867d70fcSchristos * peXXigen.c (pe_print_edata): Correct export address table 804*867d70fcSchristos overflow checks. Check dataoff against section size too. 805*867d70fcSchristos 806*867d70fcSchristos2018-09-20 Alan Modra <amodra@gmail.com> 807*867d70fcSchristos 808*867d70fcSchristos PR 23686 809*867d70fcSchristos * dwarf2.c (read_section): Error when attempting to malloc 810*867d70fcSchristos "(bfd_size_type) -1". 811*867d70fcSchristos * syms.c (_bfd_stab_section_find_nearest_line): Bounds check 812*867d70fcSchristos function_name. Bounds check reloc address. Formatting. Ensure 813*867d70fcSchristos .stabstr zero terminated. 814*867d70fcSchristos 815*867d70fcSchristos2018-09-18 Nick Clifton <nickc@redhat.com> 816*867d70fcSchristos 817*867d70fcSchristos PR 23657 818*867d70fcSchristos * elfcode.h (elf_swap_shdr_in): Generate a warning message if an 819*867d70fcSchristos ELF section has contents and size larger than the file size. 820*867d70fcSchristos 821*867d70fcSchristos2018-09-14 Maciej W. Rozycki <macro@mips.com> 822*867d70fcSchristos 823*867d70fcSchristos PR ld/21375 824*867d70fcSchristos * elfxx-mips.h (_bfd_mips_elf_hide_symbol): New prototype. 825*867d70fcSchristos (_bfd_mips_elf_linker_flags): Update prototype. 826*867d70fcSchristos * elf32-mips.c (elf_backend_hide_symbol): New macro. 827*867d70fcSchristos * elf64-mips.c (elf_backend_hide_symbol): Likewise. 828*867d70fcSchristos * elfn32-mips.c (elf_backend_hide_symbol): Likewise. 829*867d70fcSchristos * elfxx-mips.c (mips_elf_link_hash_table): Add 830*867d70fcSchristos `use_absolute_zero' and `gnu_target' members. 831*867d70fcSchristos (mips_elf_record_global_got_symbol): Call 832*867d70fcSchristos `_bfd_mips_elf_hide_symbol' rather than 833*867d70fcSchristos `_bfd_elf_link_hash_hide_symbol'. 834*867d70fcSchristos (mips_use_local_got_p): Return FALSE if the symbol is absolute. 835*867d70fcSchristos (mips_elf_obtain_contents): Reorder function. 836*867d70fcSchristos (mips_elf_nullify_got_load): New function. 837*867d70fcSchristos (mips_elf_calculate_relocation): Add `contents' parameter. 838*867d70fcSchristos Nullify GOT loads or if it is not possible, then redirect GOT 839*867d70fcSchristos relocations to the `__gnu_absolute_zero' symbol, for references 840*867d70fcSchristos that are supposed to resolve to zero. 841*867d70fcSchristos (mips_elf_define_absolute_zero): New function. 842*867d70fcSchristos (_bfd_mips_elf_check_relocs): Prepare for arrangements made in 843*867d70fcSchristos `mips_elf_calculate_relocation' for references made via the GOT 844*867d70fcSchristos that are supposed to resolve to zero. 845*867d70fcSchristos (_bfd_mips_elf_hide_symbol): New function. 846*867d70fcSchristos (_bfd_mips_elf_linker_flags): Add the `gnu_target' parameter, 847*867d70fcSchristos set the `gnu_target' member of the MIPS hash table. 848*867d70fcSchristos (MIPS_LIBC_ABI_ABSOLUTE): New enumeration constant. 849*867d70fcSchristos (_bfd_mips_post_process_headers): Use it. 850*867d70fcSchristos 851*867d70fcSchristos2018-09-14 Maciej W. Rozycki <macro@mips.com> 852*867d70fcSchristos 853*867d70fcSchristos * elfxx-mips.c (mips_elf_store_contents): New function... 854*867d70fcSchristos (mips_elf_perform_relocation): ... factored out from here. 855*867d70fcSchristos 856*867d70fcSchristos2018-09-14 Lifang Xia <lifang_xia@c-sky.com> 857*867d70fcSchristos 858*867d70fcSchristos * elf32-csky.c (csky_elf_howto_table): Fill special_function of 859*867d70fcSchristos R_CKCORE_PCREL32. 860*867d70fcSchristos (csky_elf_relocate_section): Add R_CKCORE_PCREL32 process. 861*867d70fcSchristos 862*867d70fcSchristos2018-09-14 Alan Modra <amodra@gmail.com> 863*867d70fcSchristos 864*867d70fcSchristos PR 23425 865*867d70fcSchristos * reloc.c (bfd_generic_get_relocated_section_contents): Zero reloc 866*867d70fcSchristos fields in debug sections when reloc is against an undefined symbol 867*867d70fcSchristos and called from bfd_simple_get_relocated_section_contents or 868*867d70fcSchristos similar. 869*867d70fcSchristos * dwarf2.c (find_abstract_instance): Return true for zero offset 870*867d70fcSchristos DW_FORM_ref_addr without returning values. 871*867d70fcSchristos 872*867d70fcSchristos2018-09-06 Alan Modra <amodra@gmail.com> 873*867d70fcSchristos 874*867d70fcSchristos PR 23570 875*867d70fcSchristos * elf32-avr.c (elf_avr_special_sections): New. 876*867d70fcSchristos (elf_backend_special_sections): Define. 877*867d70fcSchristos 878*867d70fcSchristos2018-09-04 Jose E. Marchesi <jose.marchesi@oracle.com> 879*867d70fcSchristos 880*867d70fcSchristos * elfxx-sparc.c (_bfd_sparc_elf_info_to_howto): Do not issue an 881*867d70fcSchristos error when an invalid relocation is passed; this is already done 882*867d70fcSchristos by `_bfd_sparc_elf_info_to_howto_ptr'. 883*867d70fcSchristos 884*867d70fcSchristos2018-09-04 Jose E. Marchesi <jose.marchesi@oracle.com> 885*867d70fcSchristos 886*867d70fcSchristos * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Issue an 887*867d70fcSchristos error when an invalid symbol index is retrieved in ELF64_R_SYM of 888*867d70fcSchristos a relocation seen in an input file. 889*867d70fcSchristos 890*867d70fcSchristos2018-09-03 Jozef Lawrynowicz <jozef.l@mittosystems.com> 891*867d70fcSchristos Alan Modra <amodra@gmail.com> 892*867d70fcSchristos 893*867d70fcSchristos PR 23595 894*867d70fcSchristos elf.c (copy_elf_program_header): When first segment contains 895*867d70fcSchristos only the headers and SHT_NOBITS sections, use segment p_filesz 896*867d70fcSchristos to calculate header and padding size. Use filepos of the first 897*867d70fcSchristos section otherwise. 898*867d70fcSchristos 899*867d70fcSchristos2018-08-31 H.J. Lu <hongjiu.lu@intel.com> 900*867d70fcSchristos 901*867d70fcSchristos PR ld/23600 902*867d70fcSchristos * archures.c (bfd_arch_get_compatible): Allow an IR object with 903*867d70fcSchristos unknown architecture. 904*867d70fcSchristos 905*867d70fcSchristos2018-08-31 Alan Modra <amodra@gmail.com> 906*867d70fcSchristos 907*867d70fcSchristos * elf64-ppc.c (num_relocs_for_offset): New function. 908*867d70fcSchristos (emit_relocs_for_offset): New function. 909*867d70fcSchristos (use_global_in_relocs): New function, split out from.. 910*867d70fcSchristos (ppc_build_one_stub): ..here. Output relocations for notoc stubs. 911*867d70fcSchristos (ppc_size_one_stub): Calculate reloc count for notoc stubs. 912*867d70fcSchristos (ppc64_elf_size_stubs): Don't count undefined syms in stub_globals. 913*867d70fcSchristos 914*867d70fcSchristos2018-08-31 Alan Modra <amodra@gmail.com> 915*867d70fcSchristos 916*867d70fcSchristos * reloc.c (BFD_RELOC_PPC64_REL16_HIGH, BFD_RELOC_PPC64_REL16_HIGHA), 917*867d70fcSchristos (BFD_RELOC_PPC64_REL16_HIGHER, BFD_RELOC_PPC64_REL16_HIGHERA), 918*867d70fcSchristos (BFD_RELOC_PPC64_REL16_HIGHEST, BFD_RELOC_PPC64_REL16_HIGHESTA): 919*867d70fcSchristos Define. 920*867d70fcSchristos * elf64-ppc.c (ppc64_elf_howto_raw): Add new REL16 howtos. 921*867d70fcSchristos (ppc64_elf_reloc_type_lookup): Translate new REL16 relocs. 922*867d70fcSchristos (ppc64_elf_check_relocs, ppc64_elf_relocate_section): Handle them. 923*867d70fcSchristos * bfd-in2.h: Regenerate. 924*867d70fcSchristos * libbfd.h: Regenerate. 925*867d70fcSchristos 926*867d70fcSchristos2018-08-31 Alan Modra <amodra@gmail.com> 927*867d70fcSchristos 928*867d70fcSchristos * elf64-ppc.c: Correct _notoc stub comments. 929*867d70fcSchristos (ppc_build_one_stub): Simplify output of branch for notoc 930*867d70fcSchristos long branch stub. Don't include label offset of 8 bytes in 931*867d70fcSchristos "off" calculation for notoc plt stub. Don't emit insns to get pc. 932*867d70fcSchristos (build_offset): Emit insns to get pc here instead. 933*867d70fcSchristos (size_offset): Add 4 extra insns. 934*867d70fcSchristos (plt_stub_size): Adjust for "off" and size_offset changes. 935*867d70fcSchristos (ppc_size_one_stub): Rearrange code into a switch, duplicating 936*867d70fcSchristos some to better match ppc_build_one_stub. 937*867d70fcSchristos 938*867d70fcSchristos2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com> 939*867d70fcSchristos 940*867d70fcSchristos * archures.c (bfd_architecture): New machine 941*867d70fcSchristos bfd_mach_mips_gs264e. 942*867d70fcSchristos * bfd-in2.h (bfd_architecture): Likewise. 943*867d70fcSchristos * cpu-mips.c (enum I_xxx): Likewise. 944*867d70fcSchristos (arch_info_struct): Likewise. 945*867d70fcSchristos * elfxx-mips.c (_bfd_elf_mips_mach): Handle 946*867d70fcSchristos E_MIPS_MACH_GS264E. 947*867d70fcSchristos (mips_set_isa_flags): Likewise. 948*867d70fcSchristos (mips_mach_extensions): Map bfd_mach_mips_gs264e to 949*867d70fcSchristos bfd_mach_mips_gs464e extension. 950*867d70fcSchristos 951*867d70fcSchristos2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com> 952*867d70fcSchristos 953*867d70fcSchristos * archures.c (bfd_architecture): New machine 954*867d70fcSchristos bfd_mach_mips_gs464e. 955*867d70fcSchristos * bfd-in2.h (bfd_architecture): Likewise. 956*867d70fcSchristos * cpu-mips.c (enum I_xxx): Likewise. 957*867d70fcSchristos (arch_info_struct): Likewise. 958*867d70fcSchristos * elfxx-mips.c (_bfd_elf_mips_mach): Handle 959*867d70fcSchristos E_MIPS_MACH_GS464E. 960*867d70fcSchristos (mips_set_isa_flags): Likewise. 961*867d70fcSchristos (mips_mach_extensions): Map bfd_mach_mips_gs464e to 962*867d70fcSchristos bfd_mach_mips_gs464 extension. 963*867d70fcSchristos 964*867d70fcSchristos2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com> 965*867d70fcSchristos 966*867d70fcSchristos * archures.c (bfd_architecture): Rename 967*867d70fcSchristos bfd_mach_mips_loongson_3a to bfd_mach_mips_gs464. 968*867d70fcSchristos * bfd-in2.h (bfd_architecture): Likewise. 969*867d70fcSchristos * cpu-mips.c (enum I_xxx): Likewise. 970*867d70fcSchristos (arch_info_struct): Likewise. 971*867d70fcSchristos * elfxx-mips.c (_bfd_elf_mips_mach): Likewise. 972*867d70fcSchristos (mips_set_isa_flags): Likewise. 973*867d70fcSchristos (mips_mach_extensions): Likewise. 974*867d70fcSchristos (bfd_mips_isa_ext_mach): Likewise. 975*867d70fcSchristos (bfd_mips_isa_ext): Likewise. 976*867d70fcSchristos (print_mips_isa_ext): Delete AFL_EXT_LOONGSON_3A. 977*867d70fcSchristos 978*867d70fcSchristos2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com> 979*867d70fcSchristos 980*867d70fcSchristos * elfxx-mips.c (print_mips_ases): Add Loongson EXT2 extension. 981*867d70fcSchristos 982*867d70fcSchristos2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com> 983*867d70fcSchristos 984*867d70fcSchristos * elfxx-mips.c (infer_mips_abiflags): Use ases instead of 985*867d70fcSchristos isa_ext for infer ABI flags. 986*867d70fcSchristos (print_mips_ases): Add Loongson EXT extension. 987*867d70fcSchristos 988*867d70fcSchristos2018-08-29 Chenghua Xu <paul.hua.gm@gmail.com> 989*867d70fcSchristos 990*867d70fcSchristos * elfxx-mips.c (print_mips_ases): Add CAM extension. 991*867d70fcSchristos 992*867d70fcSchristos2018-08-27 H.J. Lu <hongjiu.lu@intel.com> 993*867d70fcSchristos 994*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Don't mask 995*867d70fcSchristos out the GNU_PROPERTY_X86_UINT32_VALID bit. 996*867d70fcSchristos 997*867d70fcSchristos2018-08-25 H.J. Lu <hongjiu.lu@intel.com> 998*867d70fcSchristos 999*867d70fcSchristos PR ld/23499 1000*867d70fcSchristos * elf.c (_bfd_elf_get_symbol_version_string): Return 1001*867d70fcSchristos _("<corrupt>") for corrupt symbol version info. 1002*867d70fcSchristos 1003*867d70fcSchristos2018-08-24 H.J. Lu <hongjiu.lu@intel.com> 1004*867d70fcSchristos 1005*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Handle 1006*867d70fcSchristos X86_COMPAT_ISA_1_USED, X86_COMPAT_ISA_1_NEEDED, 1007*867d70fcSchristos X86_UINT32_AND_LO, X86_UINT32_AND_HI, X86_UINT32_OR_LO, 1008*867d70fcSchristos X86_UINT32_OR_HI, X86_UINT32_OR_AND_LO and X86_UINT32_OR_AND_HI 1009*867d70fcSchristos instead of X86_ISA_1_USED, X86_ISA_1_NEEDED and X86_FEATURE_1_AND. 1010*867d70fcSchristos (_bfd_x86_elf_merge_gnu_properties): Likewise. 1011*867d70fcSchristos (_bfd_x86_elf_link_setup_gnu_properties): Add X86_FEATURE_2_NEEDED 1012*867d70fcSchristos instead of X86_ISA_1_NEEDED. 1013*867d70fcSchristos (_bfd_x86_elf_link_fixup_gnu_properties): Handle 1014*867d70fcSchristos X86_COMPAT_ISA_1_USED, X86_COMPAT_ISA_1_NEEDED, X86_UINT32_AND_LO, 1015*867d70fcSchristos X86_UINT32_AND_HI, X86_UINT32_OR_LO, X86_UINT32_OR_HI, 1016*867d70fcSchristos X86_UINT32_OR_AND_LO and X86_UINT32_OR_AND_HI instead of 1017*867d70fcSchristos X86_ISA_1_USED, X86_ISA_1_NEEDED and X86_FEATURE_1_AND. 1018*867d70fcSchristos 1019*867d70fcSchristos2018-08-24 H.J. Lu <hongjiu.lu@intel.com> 1020*867d70fcSchristos 1021*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_parse_gnu_properties): Mask out the 1022*867d70fcSchristos GNU_PROPERTY_X86_UINT32_VALID bit. 1023*867d70fcSchristos (_bfd_x86_elf_link_fixup_gnu_properties): Set the 1024*867d70fcSchristos GNU_PROPERTY_X86_UINT32_VALID bit for non-relocatable output. 1025*867d70fcSchristos 1026*867d70fcSchristos2018-08-23 Zenith423 <zenith432@users.sourceforge.net> 1027*867d70fcSchristos 1028*867d70fcSchristos PR 23460 1029*867d70fcSchristos * plugin.c (struct plugin_list_entry): New structure. 1030*867d70fcSchristos (plugin_list): New variable. 1031*867d70fcSchristos (try_load_plugin): Place opened plugins on a list. Ensure that 1032*867d70fcSchristos the refcount in the dynamic loader is kept at 1. 1033*867d70fcSchristos 1034*867d70fcSchristos2018-08-23 Alan Modra <amodra@gmail.com> 1035*867d70fcSchristos 1036*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section): Revise "call lacks 1037*867d70fcSchristos nop" error message. 1038*867d70fcSchristos 1039*867d70fcSchristos2018-08-23 Nick Clifton <nickc@redhat.com> 1040*867d70fcSchristos 1041*867d70fcSchristos * elf64-hppa.c (elf_hppa_final_link_relocate): Replace unworkable 1042*867d70fcSchristos code with an assertion. 1043*867d70fcSchristos 1044*867d70fcSchristos2018-08-23 Nick Clifton <nickc@redhat.com> 1045*867d70fcSchristos 1046*867d70fcSchristos PR 23061 1047*867d70fcSchristos * coffgen.c (coff_pointerize_aux): Add table_end parameter. Use 1048*867d70fcSchristos it to prevent walking off the end of the table. 1049*867d70fcSchristos (coff_get_normalized_symtab): Pass internal_end pointer to 1050*867d70fcSchristos coff_pointerize_aux. 1051*867d70fcSchristos 1052*867d70fcSchristos2018-08-23 Alan Modra <amodra@gmail.com> 1053*867d70fcSchristos 1054*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section): Don't miss clearing 1055*867d70fcSchristos unresolved_reloc on ppc_stub_plt_call_notoc. 1056*867d70fcSchristos 1057*867d70fcSchristos2018-08-22 H.J. Lu <hongjiu.lu@intel.com> 1058*867d70fcSchristos 1059*867d70fcSchristos PR ld/23536 1060*867d70fcSchristos * development.sh (experimental): New. 1061*867d70fcSchristos 1062*867d70fcSchristos2018-08-22 Helge Deller <deller@gmx.de> 1063*867d70fcSchristos Nick Clifton <nickc@redhat.com> 1064*867d70fcSchristos 1065*867d70fcSchristos * elf-hppa.h (elf_hppa_fake_sections): Use SHT_PARISC_UNWIND as 1066*867d70fcSchristos the section type of the .PARISC.unwind section on 64-bit binaries 1067*867d70fcSchristos and SHT_PROGBITS for 32-bit binaries. Add a comment about it. 1068*867d70fcSchristos Add comment about the sh_entsize value. 1069*867d70fcSchristos 1070*867d70fcSchristos2018-08-22 Rafeal Auler <rafaelauler@gmail.com> 1071*867d70fcSchristos 1072*867d70fcSchristos PR 23560 1073*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_size_stubs): Always update the 1074*867d70fcSchristos stub's target, since it may have been changed after the layout. 1075*867d70fcSchristos 1076*867d70fcSchristos2018-08-21 John Darington <john@darrington.wattle.id.au> 1077*867d70fcSchristos 1078*867d70fcSchristos * elf32-s12z.c (opru18_reloc): New function. 1079*867d70fcSchristos (elf_s12z_howto_table): Adjust Howto according to new knowledge. 1080*867d70fcSchristos 1081*867d70fcSchristos2018-08-21 mephi42 <mephi42@gmail.com> 1082*867d70fcSchristos 1083*867d70fcSchristos PR binutils/23315 1084*867d70fcSchristos * mach-o.c (bfd_mach_o_mangle_symbols): Update n_type even if 1085*867d70fcSchristos data is already considered filled. 1086*867d70fcSchristos 1087*867d70fcSchristos2018-08-21 Alan Modra <amodra@gmail.com> 1088*867d70fcSchristos 1089*867d70fcSchristos * elf64-ppc.c (HOW): Define. 1090*867d70fcSchristos (ONES): Delete. 1091*867d70fcSchristos (ppc64_elf_howto_raw): Use HOW to initialize entries. 1092*867d70fcSchristos * elf32-ppc.c (HOW): Define. 1093*867d70fcSchristos (ppc_elf_howto_raw): Use HOW to initialize entries, updating 1094*867d70fcSchristos R_PPC_VLE_REL15 and R_PPC_VLE_REL24 to use bitpos=0. 1095*867d70fcSchristos 1096*867d70fcSchristos2018-08-21 Alan Modra <amodra@gmail.com> 1097*867d70fcSchristos 1098*867d70fcSchristos * reloc.c (reloc_howto_type): Typedef. 1099*867d70fcSchristos (bfd_symbol): Delete forward declaration. 1100*867d70fcSchristos (struct reloc_howto_struct): Add "negate" field. Make "size", 1101*867d70fcSchristos "bitsize", "rightshift", "bitpos", "complain_on_overflow", 1102*867d70fcSchristos "pc_relative", "partial_inplace", and "pcrel_offset" bitfields. 1103*867d70fcSchristos Rearrange for better packing. Revise comments. 1104*867d70fcSchristos (HOWTO): Map to rearranged reloc_howto_struct. 1105*867d70fcSchristos (bfd_get_reloc_size): Delete now unused cases. 1106*867d70fcSchristos (read_reloc, write_reloc): Likewise. 1107*867d70fcSchristos (apply_reloc, _bfd_relocate_contents): Test howto->negate 1108*867d70fcSchristos rather than howto->size < 0 for negated relocation values. 1109*867d70fcSchristos * coff-rs6000.c (xcoff_complain_overflow_bitfield_func): Avoid 1110*867d70fcSchristos signed/unsigned warning. 1111*867d70fcSchristos (xcoff_ppc_relocate_section): Delete "condition is always false" 1112*867d70fcSchristos code. 1113*867d70fcSchristos * coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise. 1114*867d70fcSchristos * cpu-ns32k.c (do_ns32k_reloc): Adjust to suit reloc_howto_struct 1115*867d70fcSchristos changes. 1116*867d70fcSchristos * vms-alpha.c (_bfd_vms_write_etir, alpha_vms_slurp_relocs): Use 1117*867d70fcSchristos size 16 for ALPHA_R_LINKAGE. 1118*867d70fcSchristos (alpha_howto_table <ALPHA_R_LINKAGE>): Set encoded size and 1119*867d70fcSchristos bitsize to zero. 1120*867d70fcSchristos * bfd-in.h (reloc_howto_type): Delete. 1121*867d70fcSchristos * bfd-in2.h: Regenerate. 1122*867d70fcSchristos 1123*867d70fcSchristos2018-08-21 Alan Modra <amodra@gmail.com> 1124*867d70fcSchristos 1125*867d70fcSchristos * reloc.c (HOWTO): Revise comment. 1126*867d70fcSchristos (NEWHOWTO, HOWTO_PREPARE): Delete. 1127*867d70fcSchristos * coff-arm.c (coff_arm_reloc_type_lookup): Replace const struc 1128*867d70fcSchristos reloc_howto_struct with reloc_howto_type. 1129*867d70fcSchristos * ns32knetbsd.c (MY_bfd_reloc_type_lookup): Likewise. 1130*867d70fcSchristos * vms-alpha.c (alpha_vms_bfd_reloc_type_lookup): Likewise. 1131*867d70fcSchristos * elf-hppa.h (HOW): Define. 1132*867d70fcSchristos (elf_hppa_howto_table): Use it to simplify this table, correcting 1133*867d70fcSchristos name of R_PARISC_LTOFF16WF, R_PARISC_LTOFF_FPTR64, and 1134*867d70fcSchristos R_PARISC_LTOFF_FPTR16DF. 1135*867d70fcSchristos * elf32-mep.c (MEPREL): Use HOWTO. 1136*867d70fcSchristos * bfd-in2.h: Regenerate. 1137*867d70fcSchristos 1138*867d70fcSchristos2018-08-20 Alan Modra <amodra@gmail.com> 1139*867d70fcSchristos 1140*867d70fcSchristos * mmo.c (valid_mmo_symbol_character_set): Initialize and make 1141*867d70fcSchristos array const. 1142*867d70fcSchristos (mmo_init): Don't init valid_mmo_symbol_character_set. 1143*867d70fcSchristos 1144*867d70fcSchristos2018-08-20 Alan Modra <amodra@gmail.com> 1145*867d70fcSchristos 1146*867d70fcSchristos * rs6000-core.c (CORE_COMMONSZ): Balance parentheses in expression. 1147*867d70fcSchristos 1148*867d70fcSchristos2018-08-17 H.J. Lu <hongjiu.lu@intel.com> 1149*867d70fcSchristos 1150*867d70fcSchristos PR ld/23515 1151*867d70fcSchristos * elf-bfd.h (elf_backend_data): Add fixup_gnu_properties. 1152*867d70fcSchristos * elf-properties.c (_bfd_elf_link_setup_gnu_properties): Call 1153*867d70fcSchristos backend fixup_gnu_properties if it isn't NULL. Discard 1154*867d70fcSchristos .note.gnu.property section if all properties have been removed. 1155*867d70fcSchristos * elfxx-target.h (elf_backend_fixup_gnu_properties): New. 1156*867d70fcSchristos (elfNN_bed): Initialize fixup_gnu_properties. 1157*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_fixup_gnu_properties): New 1158*867d70fcSchristos function. 1159*867d70fcSchristos * elfxx-x86.h (_bfd_x86_elf_link_fixup_gnu_properties): New 1160*867d70fcSchristos prototype. 1161*867d70fcSchristos (elf_backend_fixup_gnu_properties): New. 1162*867d70fcSchristos 1163*867d70fcSchristos2018-08-16 Alan Modra <amodra@gmail.com> 1164*867d70fcSchristos 1165*867d70fcSchristos * elf64-ppc.c: Correct ppc_stub_long_branch_notoc example. 1166*867d70fcSchristos Formatting. 1167*867d70fcSchristos 1168*867d70fcSchristos2018-08-12 H.J. Lu <hongjiu.lu@intel.com> 1169*867d70fcSchristos 1170*867d70fcSchristos PR binutils/23494 1171*867d70fcSchristos * Makefile.am (BFD32_LIBS): Add elf-properties.lo. 1172*867d70fcSchristos (BFD32_LIBS_CFILES): Add elf-properties.c. 1173*867d70fcSchristos (BFD32_BACKENDS): Remove elf-properties.lo. 1174*867d70fcSchristos (BFD32_BACKENDS_CFILES): Remove elf-properties.c. 1175*867d70fcSchristos * configure.ac (elf): Remove elf-properties.lo. 1176*867d70fcSchristos * Makefile.in: Regenerated. 1177*867d70fcSchristos * configure: Likewise. 1178*867d70fcSchristos 1179*867d70fcSchristos2018-08-11 H.J. Lu <hongjiu.lu@intel.com> 1180*867d70fcSchristos 1181*867d70fcSchristos PR ld/23428 1182*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't 1183*867d70fcSchristos add X86_ISA_1_NEEDED property only if existing properties won't 1184*867d70fcSchristos be removed. 1185*867d70fcSchristos 1186*867d70fcSchristos2018-08-11 Alan Modra <amodra@gmail.com> 1187*867d70fcSchristos 1188*867d70fcSchristos * reloc.c (bfd_get_reloc_size): Sort switch. 1189*867d70fcSchristos (read_reloc, write_reloc, apply_reloc): New functions. 1190*867d70fcSchristos (bfd_perform_relocation, bfd_install_relocation): Use apply_reloc. 1191*867d70fcSchristos (_bfd_relocate_contents): Use read_reloc and write_reloc. 1192*867d70fcSchristos (_bfd_clear_contents): Likewise. 1193*867d70fcSchristos 1194*867d70fcSchristos2018-08-11 John Darrington <john@darrington.wattle.id.au> 1195*867d70fcSchristos 1196*867d70fcSchristos * reloc.c (_bfd_relocate_contents): Handle 3 byte relocs. 1197*867d70fcSchristos (_bfd_clear_contents): Likewise. 1198*867d70fcSchristos (bfd_perform_relocation): Likewise. 1199*867d70fcSchristos (bfd_install_relocation): Likewise. 1200*867d70fcSchristos 1201*867d70fcSchristos2018-08-10 H.J. Lu <hongjiu.lu@intel.com> 1202*867d70fcSchristos 1203*867d70fcSchristos PR ld/23499 1204*867d70fcSchristos * elflink.c (bfd_elf_record_link_assignment): Always clear 1205*867d70fcSchristos h->verinfo.verdef when overriding a dynamic definition. 1206*867d70fcSchristos 1207*867d70fcSchristos2018-08-10 H.J. Lu <hongjiu.lu@intel.com> 1208*867d70fcSchristos 1209*867d70fcSchristos PR binutils/23494 1210*867d70fcSchristos * elf-properties.c (elf_get_gnu_property_section_size): Always 1211*867d70fcSchristos use align_size as pr_datasz for GNU_PROPERTY_STACK_SIZE. 1212*867d70fcSchristos (elf_write_gnu_properties): Likewise. 1213*867d70fcSchristos 1214*867d70fcSchristos2018-08-08 H.J. Lu <hongjiu.lu@intel.com> 1215*867d70fcSchristos 1216*867d70fcSchristos PR binutils/23494 1217*867d70fcSchristos * bfd.c (bfd_convert_section_size): Check BFD_DECOMPRESS after 1218*867d70fcSchristos calling _bfd_elf_convert_gnu_property_size to convert 1219*867d70fcSchristos .note.gnu.property section size. 1220*867d70fcSchristos (bfd_convert_section_contents): Check BFD_DECOMPRESS after 1221*867d70fcSchristos calling _bfd_elf_convert_gnu_properties to convert 1222*867d70fcSchristos .note.gnu.property section. 1223*867d70fcSchristos * elf-bfd.h (_bfd_elf_convert_gnu_property_size): New prototype. 1224*867d70fcSchristos (_bfd_elf_convert_gnu_properties): Likewise. 1225*867d70fcSchristos * elf-properties.c (elf_get_gnu_property_section_size): New 1226*867d70fcSchristos function. 1227*867d70fcSchristos (elf_write_gnu_properties): Likewise. 1228*867d70fcSchristos (_bfd_elf_convert_gnu_property_size): Likewise. 1229*867d70fcSchristos (_bfd_elf_convert_gnu_properties): Likewise. 1230*867d70fcSchristos (_bfd_elf_link_setup_gnu_properties): Use 1231*867d70fcSchristos elf_get_gnu_property_section_size and elf_write_gnu_properties. 1232*867d70fcSchristos 1233*867d70fcSchristos2018-08-08 H.J. Lu <hongjiu.lu@intel.com> 1234*867d70fcSchristos 1235*867d70fcSchristos PR ld/23486 1236*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove 1237*867d70fcSchristos GNU_PROPERTY_X86_ISA_1_USED if an input file doesn't have it. 1238*867d70fcSchristos (_bfd_x86_elf_link_setup_gnu_properties): Adding the 1239*867d70fcSchristos GNU_PROPERTY_X86_ISA_1_NEEDED, instead of 1240*867d70fcSchristos GNU_PROPERTY_X86_ISA_1_USED, property. 1241*867d70fcSchristos 1242*867d70fcSchristos2018-08-07 Alan Modra <amodra@gmail.com> 1243*867d70fcSchristos 1244*867d70fcSchristos * elf64-ppc.c (struct map_stub): Delete tls_get_addr_opt_bctrl. 1245*867d70fcSchristos Add lr_restore, eh_size and eh_base. 1246*867d70fcSchristos (eh_advance, eh_advance_size): New functions. 1247*867d70fcSchristos (build_tls_get_addr_stub): Emit EH info for stub. 1248*867d70fcSchristos (ppc_build_one_stub): Likewise for _notoc stubs. 1249*867d70fcSchristos (ppc_size_one_stub): Size EH info for stub. 1250*867d70fcSchristos (group_sections): Init new map_stub fields. 1251*867d70fcSchristos (stub_eh_frame_size): Delete. 1252*867d70fcSchristos (ppc64_elf_size_stubs): Size EH info for stubs. Set up dummy EH 1253*867d70fcSchristos program for stubs. 1254*867d70fcSchristos (ppc64_elf_build_stubs): Reinit new map_stub fields. Set FDE 1255*867d70fcSchristos offset to stub section here.. 1256*867d70fcSchristos (ppc64_elf_finish_dynamic_sections): ..rather than here. 1257*867d70fcSchristos 1258*867d70fcSchristos2018-08-07 Alan Modra <amodra@gmail.com> 1259*867d70fcSchristos 1260*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section): Don't skip first 1261*867d70fcSchristos instruction of __tls_get_addr_opt stub. 1262*867d70fcSchristos (plt_stub_size): Omit ALWAYS_EMIT_R2SAVE condition when 1263*867d70fcSchristos dealing with __tls_get_addr_opt stub. 1264*867d70fcSchristos (build_tls_get_addr_stub, ppc_size_one_stub): Likewise. 1265*867d70fcSchristos 1266*867d70fcSchristos2018-08-06 Claudiu Zissulescu <claziss@synopsys.com> 1267*867d70fcSchristos 1268*867d70fcSchristos * elf32-arc.c (arc_elf_merge_private_bfd_data): Complain about 1269*867d70fcSchristos efalgs only when in/out exists. 1270*867d70fcSchristos (elf32_arc_section_from_shdr): Don't complain about 0x0c 1271*867d70fcSchristos section type. It is mwdt compiler specific. 1272*867d70fcSchristos 1273*867d70fcSchristos2018-08-06 Claudiu Zissulescu <claziss@synopsys.com> 1274*867d70fcSchristos 1275*867d70fcSchristos * elf32-arc.c (arc_elf_merge_attributes): Fix merge attributes. 1276*867d70fcSchristos 1277*867d70fcSchristos2018-08-06 Claudiu Zissulescu <claziss@synopsys.com> 1278*867d70fcSchristos 1279*867d70fcSchristos * elf32-arc.c (arc_elf_merge_attributes): Handle 1280*867d70fcSchristos Tag_ARC_ATR_version. 1281*867d70fcSchristos 1282*867d70fcSchristos2018-08-05 Alan Modra <amodra@gmail.com> 1283*867d70fcSchristos 1284*867d70fcSchristos * elf64-ppc.c (ADDI_R12_R11, ADDI_R12_R12, LIS_R12), 1285*867d70fcSchristos (ADDIS_R12_R11, ORIS_R12_R12_0, ORI_R12_R12_0), 1286*867d70fcSchristos (SLDI_R12_R12_32, LDX_R12_R11_R12, ADD_R12_R11_R12): Define. 1287*867d70fcSchristos (ppc64_elf_howto_raw): Add R_PPC64_REL24_NOTOC entry. 1288*867d70fcSchristos (ppc64_elf_reloc_type_lookup): Support R_PPC64_REL24_NOTOC. 1289*867d70fcSchristos (ppc_stub_type): Add ppc_stub_long_branch_notoc, 1290*867d70fcSchristos ppc_stub_long_branch_both, ppc_stub_plt_branch_notoc, 1291*867d70fcSchristos ppc_stub_plt_branch_both, ppc_stub_plt_call_notoc, and 1292*867d70fcSchristos ppc_stub_plt_call_both. 1293*867d70fcSchristos (is_branch_reloc): Add R_PPC64_REL24_NOTOC. 1294*867d70fcSchristos (build_offset, size_offset): New functions. 1295*867d70fcSchristos (plt_stub_size): Support plt_call_notoc and plt_call_both. 1296*867d70fcSchristos (ppc_build_one_stub, ppc_size_one_stub): Support new stubs. 1297*867d70fcSchristos (toc_adjusting_stub_needed): Handle R_PPC64_REL24_NOTOC. 1298*867d70fcSchristos (ppc64_elf_size_stubs): Likewise, and new stubs. 1299*867d70fcSchristos (ppc64_elf_build_stubs, ppc64_elf_relocate_section): Likewise. 1300*867d70fcSchristos * reloc.c: Add BFD_RELOC_PPC64_REL24_NOTOC. 1301*867d70fcSchristos * bfd-in2.h: Regenerate. 1302*867d70fcSchristos * libbfd.h: Regenerate. 1303*867d70fcSchristos 1304*867d70fcSchristos2018-08-05 Alan Modra <amodra@gmail.com> 1305*867d70fcSchristos 1306*867d70fcSchristos * elf64-ppc.c (ppc_build_one_stub): Lose "_r2off" in stub symbols. 1307*867d70fcSchristos 1308*867d70fcSchristos2018-08-02 Jim Wilson <jimw@sifive.com> 1309*867d70fcSchristos 1310*867d70fcSchristos * elfnn-riscv.c (riscv_elf_create_dynamic_sections): For .tdata.dyn, 1311*867d70fcSchristos add SEC_LINKER_CREATED flag. 1312*867d70fcSchristos 1313*867d70fcSchristos2018-08-01 Nick Clifton <nickc@redhat.com> 1314*867d70fcSchristos 1315*867d70fcSchristos * coff-rs6000.c (_bfd_xcoff_put_ldsymbol_name): Suppress warnings 1316*867d70fcSchristos about potentially truncated strncpy operations. 1317*867d70fcSchristos (_bfd_xcoff_put_symbol_name): Likewise. 1318*867d70fcSchristos 1319*867d70fcSchristos * elf32-avr.c (avr_stub_name): Check for a NULL return from 1320*867d70fcSchristos bfd_malloc. 1321*867d70fcSchristos 1322*867d70fcSchristos2018-08-01 Zenith <zenith432@users.sourceforge.net> 1323*867d70fcSchristos 1324*867d70fcSchristos PR 23460 1325*867d70fcSchristos * plugin.c (bfd_plugin_open_input): Close file descriptor if the 1326*867d70fcSchristos call to fstat fails. 1327*867d70fcSchristos (try_claim): Always close the file descriptor at the end of the 1328*867d70fcSchristos function. 1329*867d70fcSchristos (try_load_plugin): If a plugin has already been registered, then 1330*867d70fcSchristos skip the dlopen and onload steps and go straight to claiming the 1331*867d70fcSchristos file. If these is an error, close the plugin. 1332*867d70fcSchristos 1333*867d70fcSchristos2018-08-01 Alan Modra <amodra@gmail.com> 1334*867d70fcSchristos 1335*867d70fcSchristos * elf64-ppc.c (plt_stub_pad): Delay plt_stub_size call until needed. 1336*867d70fcSchristos (ppc_build_one_stub): Don't set stub_offset, instead assert that 1337*867d70fcSchristos it is sane. Don't adjust stub_offset for alignment. Adjust size 1338*867d70fcSchristos calculation. Use "targ" temp when calculating offsets. 1339*867d70fcSchristos (ppc_size_one_stub): Set stub_offset here. Use "targ" temp when 1340*867d70fcSchristos calculating offsets. Adjust for alignment before setting 1341*867d70fcSchristos tls_get_addr_opt_bctrl. 1342*867d70fcSchristos 1343*867d70fcSchristos2018-08-01 Alan Modra <amodra@gmail.com> 1344*867d70fcSchristos 1345*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 1346*867d70fcSchristos 1347*867d70fcSchristos2018-07-30 Nick Clifton <nickc@redhat.com> 1348*867d70fcSchristos 1349*867d70fcSchristos PR 22706 1350*867d70fcSchristos * elf32-sh.c (sh_elf_relocate_section): When processing 1351*867d70fcSchristos translation relocs, fail if the relocation offset is too small. 1352*867d70fcSchristos Replace BFD_ASSERTs with more helpful error messages. 1353*867d70fcSchristos 1354*867d70fcSchristos2018-07-30 Andrew Jenner <andrew@codesourcery.com> 1355*867d70fcSchristos 1356*867d70fcSchristos * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES): Add C-SKY. 1357*867d70fcSchristos (BFD32_BACKENDS, BFD_BACKENDS_CFILES): Likewise. 1358*867d70fcSchristos * Makefile.in: Regenerated. 1359*867d70fcSchristos * archures.c (enum bfd_architecture): Add bfd_arch_csky and 1360*867d70fcSchristos related bfd_mach defines. 1361*867d70fcSchristos (bfd_csky_arch): Declare. 1362*867d70fcSchristos (bfd_archures_list): Add C-SKY. 1363*867d70fcSchristos * bfd-in.h (elf32_csky_build_stubs): Declare. 1364*867d70fcSchristos (elf32_csky_size_stubs): Declare. 1365*867d70fcSchristos (elf32_csky_next_input_section: Declare. 1366*867d70fcSchristos (elf32_csky_setup_section_lists): Declare. 1367*867d70fcSchristos * bfd-in2.h: Regenerated. 1368*867d70fcSchristos * config.bfd: Add C-SKY. 1369*867d70fcSchristos * configure.ac: Likewise. 1370*867d70fcSchristos * configure: Regenerated. 1371*867d70fcSchristos * cpu-csky.c: New file. 1372*867d70fcSchristos * elf-bfd.h (enum elf_target_id): Add C-SKY. 1373*867d70fcSchristos * elf32-csky.c: New file. 1374*867d70fcSchristos * libbfd.h: Regenerated. 1375*867d70fcSchristos * reloc.c: Add C-SKY relocations. 1376*867d70fcSchristos * targets.c (csky_elf32_be_vec, csky_elf32_le_vec): Declare. 1377*867d70fcSchristos (_bfd_target_vector): Add C-SKY target vector entries. 1378*867d70fcSchristos 1379*867d70fcSchristos2018-07-27 John Darrington <john@darrington.wattle.id.au> 1380*867d70fcSchristos 1381*867d70fcSchristos * elf32-s12z.c (ELF_TARGET_ID): Don't define. 1382*867d70fcSchristos 1383*867d70fcSchristos2018-07-27 John Darrington <john@darrington.wattle.id.au> 1384*867d70fcSchristos 1385*867d70fcSchristos * libbfd.c (bfd_getb24, bfd_getl24): New functions. 1386*867d70fcSchristos (bfd_get_24, bfd_put_24): New macros. 1387*867d70fcSchristos * bfd-in2.h: Regenerate. 1388*867d70fcSchristos 1389*867d70fcSchristos2018-07-27 John Darrington <john@darrington.wattle.id.au> 1390*867d70fcSchristos 1391*867d70fcSchristos * elf32-s12z.c (s12z_elf_set_mach_from_flags): Remove comment. 1392*867d70fcSchristos 1393*867d70fcSchristos2018-07-26 Alan Modra <amodra@gmail.com> 1394*867d70fcSchristos 1395*867d70fcSchristos * elf64-ppc.c (ppc64_elf_size_stubs): Use a ppc_stub_long_branch_r2off 1396*867d70fcSchristos for calls to symbols with STO_PPC64_LOCAL_MASK bits set to 1. 1397*867d70fcSchristos 1398*867d70fcSchristos2018-07-25 Alan Modra <amodra@gmail.com> 1399*867d70fcSchristos 1400*867d70fcSchristos * elf32-ppc.c (ppc_elf_relax_section): Ignore common or undef locals. 1401*867d70fcSchristos Avoid trashing toff with added when used as a symbol index. 1402*867d70fcSchristos Ignore R_PPC_PLTREL24 addends in unused example code. Avoid 1403*867d70fcSchristos creating unnecessary fixups when relocatable. 1404*867d70fcSchristos 1405*867d70fcSchristos2018-07-25 Alan Modra <amodra@gmail.com> 1406*867d70fcSchristos 1407*867d70fcSchristos * elf32-arm.c (elf32_arm_nabi_write_core_note): Disable 1408*867d70fcSchristos -Wstringop-truncation warning for gcc-8.0 too. 1409*867d70fcSchristos * elf32-ppc.c (ppc_elf_write_core_note): Likewise. 1410*867d70fcSchristos * elf64-ppc.c (ppc64_elf_write_core_note): Likewise. 1411*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise. 1412*867d70fcSchristos * elf32-s390.c (elf_s390_write_core_note): Comment fix. 1413*867d70fcSchristos * elf64-s390.c (elf_s390_write_core_note): Likewise. 1414*867d70fcSchristos 1415*867d70fcSchristos2018-07-24 Alan Modra <amodra@gmail.com> 1416*867d70fcSchristos 1417*867d70fcSchristos PR 23430 1418*867d70fcSchristos * dwarf2.c (dwarf_debug_section_enum): Fix comment typo. 1419*867d70fcSchristos * elf.c (bfd_section_from_shdr, elf_sort_sections): Likewise. 1420*867d70fcSchristos 1421*867d70fcSchristos2018-07-23 Max Filippov <jcmvbkbc@gmail.com> 1422*867d70fcSchristos 1423*867d70fcSchristos * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Move 1424*867d70fcSchristos relocation sections consistency check to always check both 1425*867d70fcSchristos .rela.dyn and .rela.plt when they exist. Rearrange variable 1426*867d70fcSchristos definition and assignment places. 1427*867d70fcSchristos 1428*867d70fcSchristos2018-07-23 Max Filippov <jcmvbkbc@gmail.com> 1429*867d70fcSchristos 1430*867d70fcSchristos * elf32-xtensa.c (shrink_dynamic_reloc_sections): Shrink dynamic 1431*867d70fcSchristos relocations section for dynamic undefined weak symbols when 1432*867d70fcSchristos linking a shared object. 1433*867d70fcSchristos 1434*867d70fcSchristos2018-07-23 Tom Tromey <tom@tromey.com> 1435*867d70fcSchristos 1436*867d70fcSchristos * elf.c (bfd_get_elf_phdrs): Don't call memcpy with size 0. 1437*867d70fcSchristos 1438*867d70fcSchristos2018-07-21 Eric Botcazou <ebotcazou@adacore.com> 1439*867d70fcSchristos 1440*867d70fcSchristos * elf32-arm.c (elf32_arm_final_link_relocate) <R_ARM_GOT32>: Small 1441*867d70fcSchristos cleanup for the case of a global symbol that binds locally. Also 1442*867d70fcSchristos install a value in the GOT slot in the case of a local symbol in 1443*867d70fcSchristos a non-PIC link. 1444*867d70fcSchristos 1445*867d70fcSchristos2018-07-20 H.J. Lu <hongjiu.lu@intel.com> 1446*867d70fcSchristos 1447*867d70fcSchristos PR ld/23428 1448*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): If the 1449*867d70fcSchristos separate code program header is needed, make sure that the first 1450*867d70fcSchristos read-only PT_LOAD segment has no code by adding a 1451*867d70fcSchristos GNU_PROPERTY_X86_ISA_1_USED note. 1452*867d70fcSchristos 1453*867d70fcSchristos2018-07-20 Chenghua Xu <paul.hua.gm@gmail.com> 1454*867d70fcSchristos Maciej W. Rozycki <macro@mips.com> 1455*867d70fcSchristos 1456*867d70fcSchristos * elfxx-mips.c (print_mips_ases): Add MMI extension. 1457*867d70fcSchristos 1458*867d70fcSchristos2018-07-20 Maciej W. Rozycki <macro@mips.com> 1459*867d70fcSchristos 1460*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Do not 1461*867d70fcSchristos create DT_REL, DT_RELSZ or DT_RELENT dynamic entries if the 1462*867d70fcSchristos dynamic relocation section will be discarded from output. 1463*867d70fcSchristos (_bfd_mips_elf_finish_dynamic_sections) <DT_RELSZ>: Assert that 1464*867d70fcSchristos the dynamic relocation section will be retained in output. 1465*867d70fcSchristos 1466*867d70fcSchristos2018-07-18 Maciej W. Rozycki <macro@mips.com> 1467*867d70fcSchristos 1468*867d70fcSchristos * xcofflink.c (xcoff_write_global_symbol): Fix symbol type 1469*867d70fcSchristos checks for defined weak symbols. 1470*867d70fcSchristos 1471*867d70fcSchristos2018-07-17 Maciej W. Rozycki <macro@mips.com> 1472*867d70fcSchristos 1473*867d70fcSchristos * elf32-nds32.c (nds32_elf_relax_loadstore): Use 1474*867d70fcSchristos `bfd_is_abs_symbol' rather than `bfd_is_abs_section' in checking 1475*867d70fcSchristos whether the symbol is absolute. 1476*867d70fcSchristos (nds32_elf_relax_lo12): Likewise. 1477*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Likewise. 1478*867d70fcSchristos (elfNN_aarch64_check_relocs): Likewise. 1479*867d70fcSchristos * xcofflink.c (xcoff_need_ldrel_p): Likewise. 1480*867d70fcSchristos (bfd_xcoff_import_symbol): Likewise. 1481*867d70fcSchristos (xcoff_write_global_symbol): Likewise. 1482*867d70fcSchristos 1483*867d70fcSchristos2018-07-17 Maciej W. Rozycki <macro@mips.com> 1484*867d70fcSchristos 1485*867d70fcSchristos * linker.c (bfd_is_abs_symbol): New macro. 1486*867d70fcSchristos * bfd-in2.h: Regenerate. 1487*867d70fcSchristos 1488*867d70fcSchristos2018-07-16 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com> 1489*867d70fcSchristos 1490*867d70fcSchristos * elf-bfd.h (elfcore_write_ppc_tar): Add prototype. 1491*867d70fcSchristos (elfcore_write_ppc_ppr): Likewise. 1492*867d70fcSchristos (elfcore_write_ppc_dscr): Likewise. 1493*867d70fcSchristos (elfcore_write_ppc_ebb): Likewise. 1494*867d70fcSchristos (elfcore_write_ppc_pmu): Likewise. 1495*867d70fcSchristos (elfcore_write_ppc_tm_cgpr): Likewise. 1496*867d70fcSchristos (elfcore_write_ppc_tm_cfpr): Likewise. 1497*867d70fcSchristos (elfcore_write_ppc_tm_cvmx): Likewise. 1498*867d70fcSchristos (elfcore_write_ppc_tm_cvsx): Likewise. 1499*867d70fcSchristos (elfcore_write_ppc_tm_spr): Likewise. 1500*867d70fcSchristos (elfcore_write_ppc_tm_ctar): Likewise. 1501*867d70fcSchristos (elfcore_write_ppc_tm_cppr): Likewise. 1502*867d70fcSchristos (elfcore_write_ppc_tm_cdscr): Likewise. 1503*867d70fcSchristos * elf.c (elfcore_write_ppc_tar): New function. 1504*867d70fcSchristos (elfcore_write_ppc_ppr): Likewise. 1505*867d70fcSchristos (elfcore_write_ppc_dscr): Likewise. 1506*867d70fcSchristos (elfcore_write_ppc_ebb): Likewise. 1507*867d70fcSchristos (elfcore_write_ppc_pmu): Likewise. 1508*867d70fcSchristos (elfcore_write_ppc_tm_cgpr): Likewise. 1509*867d70fcSchristos (elfcore_write_ppc_tm_cfpr): Likewise. 1510*867d70fcSchristos (elfcore_write_ppc_tm_cvmx): Likewise. 1511*867d70fcSchristos (elfcore_write_ppc_tm_cvsx): Likewise. 1512*867d70fcSchristos (elfcore_write_ppc_tm_spr): Likewise. 1513*867d70fcSchristos (elfcore_write_ppc_tm_ctar): Likewise. 1514*867d70fcSchristos (elfcore_write_ppc_tm_cppr): Likewise. 1515*867d70fcSchristos (elfcore_write_ppc_tm_cdscr): Likewise. 1516*867d70fcSchristos (elfcore_write_register_note): Call them. 1517*867d70fcSchristos (elfcore_grok_ppc_tar): New function. 1518*867d70fcSchristos (elfcore_grok_ppc_ppr): Likewise. 1519*867d70fcSchristos (elfcore_grok_ppc_dscr): Likewise. 1520*867d70fcSchristos (elfcore_grok_ppc_ebb): Likewise. 1521*867d70fcSchristos (elfcore_grok_ppc_pmu): Likewise. 1522*867d70fcSchristos (elfcore_grok_ppc_tm_cgpr): Likewise. 1523*867d70fcSchristos (elfcore_grok_ppc_tm_cfpr): Likewise. 1524*867d70fcSchristos (elfcore_grok_ppc_tm_cvmx): Likewise. 1525*867d70fcSchristos (elfcore_grok_ppc_tm_cvsx): Likewise. 1526*867d70fcSchristos (elfcore_grok_ppc_tm_spr): Likewise. 1527*867d70fcSchristos (elfcore_grok_ppc_tm_ctar): Likewise. 1528*867d70fcSchristos (elfcore_grok_ppc_tm_cppr): Likewise. 1529*867d70fcSchristos (elfcore_grok_ppc_tm_cdscr): Likewise. 1530*867d70fcSchristos (elfcore_grok_note): Call them. 1531*867d70fcSchristos 1532*867d70fcSchristos2018-07-11 Maciej W. Rozycki <macro@mips.com> 1533*867d70fcSchristos 1534*867d70fcSchristos * elfxx-mips.c (mips_tls_got_relocs): Use `bfd_link_dll' rather 1535*867d70fcSchristos than `!bfd_link_pic' in determining the dynamic symbol index. 1536*867d70fcSchristos Avoid the index of -1. 1537*867d70fcSchristos (mips_elf_initialize_tls_slots): Likewise. Flatten code by 1538*867d70fcSchristos moving `dyn' to the beginning of the function block. 1539*867d70fcSchristos 1540*867d70fcSchristos2018-07-11 Maciej W. Rozycki <macro@mips.com> 1541*867d70fcSchristos Rich Felker <bugdal@aerifal.cx> 1542*867d70fcSchristos 1543*867d70fcSchristos PR ld/22570 1544*867d70fcSchristos * elfxx-mips.c (mips_tls_got_relocs): Use `bfd_link_dll' rather 1545*867d70fcSchristos than `bfd_link_pic' to determine whether dynamic relocations are 1546*867d70fcSchristos to be produced. 1547*867d70fcSchristos (mips_elf_initialize_tls_slots): Likewise. 1548*867d70fcSchristos 1549*867d70fcSchristos2018-07-10 Maciej W. Rozycki <macro@mips.com> 1550*867d70fcSchristos 1551*867d70fcSchristos * elflink.c (bfd_elf_final_link): Rename `remove' local variable 1552*867d70fcSchristos to `remove_section'. 1553*867d70fcSchristos 1554*867d70fcSchristos2018-07-10 Alan Modra <amodra@gmail.com> 1555*867d70fcSchristos 1556*867d70fcSchristos * elf32-xgate.h: Delete. 1557*867d70fcSchristos * elf32-xgate.c: Delete unnecessary forward declarations, add two 1558*867d70fcSchristos that are now needed. 1559*867d70fcSchristos (xgate_elf_bfd_link_hash_table_create) 1560*867d70fcSchristos (xgate_elf_bfd_link_hash_table_free) 1561*867d70fcSchristos (xgate_elf_set_mach_from_flags, struct xgate_scan_param) 1562*867d70fcSchristos (stub_hash_newfunc, elf32_xgate_add_symbol_hook) 1563*867d70fcSchristos (elf32_xgate_setup_section_lists, elf32_xgate_size_stubs) 1564*867d70fcSchristos (elf32_xgate_build_stubs, elf32_xgate_check_relocs) 1565*867d70fcSchristos (elf32_xgate_relocate_section, _bfd_xgate_elf_set_private_flags) 1566*867d70fcSchristos (elf32_xgate_post_process_headers): Delete. 1567*867d70fcSchristos (elf32_xgate_backend_symbol_processing): New function. 1568*867d70fcSchristos (xgate_elf_ignore_reloc, xgate_elf_special_reloc) 1569*867d70fcSchristos (_bfd_xgate_elf_print_private_bfd_data): Make static. 1570*867d70fcSchristos (ELF_TARGET_ID, elf_info_to_howto, elf_backend_check_relocs) 1571*867d70fcSchristos (elf_backend_relocate_section, elf_backend_object_p) 1572*867d70fcSchristos (elf_backend_final_write_processing, elf_backend_can_gc_sections) 1573*867d70fcSchristos (elf_backend_post_process_headers, elf_backend_add_symbol_hook) 1574*867d70fcSchristos (bfd_elf32_bfd_link_hash_table_create) 1575*867d70fcSchristos (bfd_elf32_bfd_set_private_flags) 1576*867d70fcSchristos (xgate_stub_hash_lookup): Don't define. 1577*867d70fcSchristos (elf_backend_symbol_processing): Define. 1578*867d70fcSchristos * elf-bfd.h (elf_target_id): Delete XGATE_ELF_DATA. 1579*867d70fcSchristos 1580*867d70fcSchristos2018-07-09 Maciej W. Rozycki <macro@mips.com> 1581*867d70fcSchristos 1582*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Don't set 1583*867d70fcSchristos `->needs_lazy_stub' if the stubs output section is the absolute 1584*867d70fcSchristos section. 1585*867d70fcSchristos 1586*867d70fcSchristos2018-07-09 H.J. Lu <hongjiu.lu@intel.com> 1587*867d70fcSchristos 1588*867d70fcSchristos PR ld/23388 1589*867d70fcSchristos * configure.ac: Use changequote for "i[3-7]86-*-linux-*". 1590*867d70fcSchristos * configure: Regenerated. 1591*867d70fcSchristos 1592*867d70fcSchristos2018-07-09 Alan Modra <amodra@gmail.com> 1593*867d70fcSchristos 1594*867d70fcSchristos * elf32-m68hc1x.c (elf32_m68hc11_post_process_headers): Call 1595*867d70fcSchristos _bfd_elf_post_process_headers. 1596*867d70fcSchristos 1597*867d70fcSchristos2018-07-06 Max Filippov <jcmvbkbc@gmail.com> 1598*867d70fcSchristos 1599*867d70fcSchristos * elf32-xtensa.c (elf_xtensa_allocate_dynrelocs): Don't allocate 1600*867d70fcSchristos space for dynamic relocation for undefined weak symbol. 1601*867d70fcSchristos (elf_xtensa_relocate_section): Don't emit R_XTENSA_RELATIVE 1602*867d70fcSchristos relocation for undefined weak symbols. 1603*867d70fcSchristos (shrink_dynamic_reloc_sections): Don't shrink dynamic relocation 1604*867d70fcSchristos section for relocations against undefined weak symbols. 1605*867d70fcSchristos 1606*867d70fcSchristos2018-07-06 Alan Hayward <alan.hayward@arm.com> 1607*867d70fcSchristos 1608*867d70fcSchristos * elf.c (elfcore_grok_aarch_sve): New function. 1609*867d70fcSchristos (elfcore_grok_note): Check for Aarch64 SVE. 1610*867d70fcSchristos (elfcore_write_aarch_sve): New function. 1611*867d70fcSchristos (elfcore_write_register_note): Check for Aarch64 SVE. 1612*867d70fcSchristos * elf-bfd.h(elfcore_grok_aarch_sve): New declaration. 1613*867d70fcSchristos 1614*867d70fcSchristos2018-07-06 Alan Modra <amodra@gmail.com> 1615*867d70fcSchristos 1616*867d70fcSchristos * elf32-arm.c (elf32_arm_nabi_write_core_note): Don't use 1617*867d70fcSchristos DIAGNOTIC_PUSH and DIAGNOSTIC_POP unconditionally. 1618*867d70fcSchristos * elf32-ppc.c (ppc_elf_write_core_note): Likewise. 1619*867d70fcSchristos * elf32-s390.c (elf_s390_write_core_note): Likewise. 1620*867d70fcSchristos * elf64-ppc.c (ppc64_elf_write_core_note): Likewise. 1621*867d70fcSchristos * elf64-s390.c (elf_s390_write_core_note): Likewise. 1622*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise. 1623*867d70fcSchristos 1624*867d70fcSchristos2018-07-05 Jim Wilson <jimw@sifive.com> 1625*867d70fcSchristos 1626*867d70fcSchristos * config.bfd (riscv32*-*-*): Renamed from riscv32-*-*. 1627*867d70fcSchristos (riscv64*-*-*): Likewise. 1628*867d70fcSchristos (riscv-*-*): Add as an alias for riscv32*-*-*. 1629*867d70fcSchristos 1630*867d70fcSchristos2018-07-05 H.J. Lu <hongjiu.lu@intel.com> 1631*867d70fcSchristos 1632*867d70fcSchristos PR ld/23372 1633*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove x86 1634*867d70fcSchristos ISA properties with empty bits. 1635*867d70fcSchristos 1636*867d70fcSchristos2018-07-05 Nick Clifton <nickc@redhat.com> 1637*867d70fcSchristos 1638*867d70fcSchristos * po/ru.po: Updated Russian translation. 1639*867d70fcSchristos 1640*867d70fcSchristos2018-07-05 Alan Modra <amodra@gmail.com> 1641*867d70fcSchristos 1642*867d70fcSchristos * elf-bfd.h (_bfd_elf_ppc_merge_fp_attributes): Update prototype. 1643*867d70fcSchristos * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Return error 1644*867d70fcSchristos on mismatch. Remove "warning: " from messages. Track last bfd 1645*867d70fcSchristos used to set tags. 1646*867d70fcSchristos (ppc_elf_merge_obj_attributes): Likewise. Handle status from 1647*867d70fcSchristos _bfd_elf_ppc_merge_fp_attributes. 1648*867d70fcSchristos * elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Handle status 1649*867d70fcSchristos from _bfd_elf_ppc_merge_fp_attributes. 1650*867d70fcSchristos 1651*867d70fcSchristos2018-07-04 H.J. Lu <hongjiu.lu@intel.com> 1652*867d70fcSchristos 1653*867d70fcSchristos * Makefile.am (bfdinclude_HEADERS): Add $(INCDIR)/diagnostics.h. 1654*867d70fcSchristos * Makefile.in: Regenerated. 1655*867d70fcSchristos 1656*867d70fcSchristos2018-07-03 Alan Modra <amodra@gmail.com> 1657*867d70fcSchristos 1658*867d70fcSchristos * elflink.c (bfd_elf_final_link): Remove zero size .gnu.attributes 1659*867d70fcSchristos sections. 1660*867d70fcSchristos 1661*867d70fcSchristos2018-07-03 Alan Modra <amodra@gmail.com> 1662*867d70fcSchristos 1663*867d70fcSchristos * elf-bfd.h (ATTR_TYPE_FLAG_ERROR, ATTR_TYPE_HAS_ERROR): Define. 1664*867d70fcSchristos * elf-attrs.c (is_default_attr): Handle ATTR_TYPE_HAS_ERROR. 1665*867d70fcSchristos * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Use 1666*867d70fcSchristos ATTR_TYPE_FLAG_INT_VAL. Set ATTR_TYPE_HAS_ERROR on finding 1667*867d70fcSchristos incompatible attribute. 1668*867d70fcSchristos (ppc_elf_merge_obj_attributes): Likewise. Return 1669*867d70fcSchristos _bfd_elf_merge_object_attributes result. 1670*867d70fcSchristos * elf64-ppc.c (ppc64_elf_merge_private_bfd_data): Return 1671*867d70fcSchristos _bfd_elf_merge_object_attributes result. 1672*867d70fcSchristos 1673*867d70fcSchristos2018-07-03 Alan Modra <amodra@gmail.com> 1674*867d70fcSchristos 1675*867d70fcSchristos PR 17550 1676*867d70fcSchristos * elflink.c (_bfd_elf_fix_symbol_flags): Hide dynamic symbols 1677*867d70fcSchristos in discarded sections. 1678*867d70fcSchristos 1679*867d70fcSchristos2018-07-02 Maciej W. Rozycki <macro@mips.com> 1680*867d70fcSchristos 1681*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Set 1682*867d70fcSchristos `mark' for symbols created from `mips_elf_dynsym_rtproc_names' 1683*867d70fcSchristos list. 1684*867d70fcSchristos 1685*867d70fcSchristos2018-07-02 Maciej W. Rozycki <macro@mips.com> 1686*867d70fcSchristos 1687*867d70fcSchristos * elf64-mips.c (micromips_elf64_howto_table_rel): Add 1688*867d70fcSchristos R_MICROMIPS_HI0_LO16, R_MICROMIPS_TLS_GD, R_MICROMIPS_TLS_LDM, 1689*867d70fcSchristos R_MICROMIPS_TLS_DTPREL_HI16, R_MICROMIPS_TLS_DTPREL_LO16, 1690*867d70fcSchristos R_MICROMIPS_TLS_GOTTPREL, R_MICROMIPS_TLS_TPREL_HI16, 1691*867d70fcSchristos R_MICROMIPS_TLS_TPREL_LO16, R_MICROMIPS_GPREL7_S2 and 1692*867d70fcSchristos R_MICROMIPS_PC23_S2 relocation entries. 1693*867d70fcSchristos (micromips_elf64_howto_table_rela): Likewise. 1694*867d70fcSchristos (micromips_reloc_map): Likewise. 1695*867d70fcSchristos * elfn32-mips.c (elf_micromips_howto_table_rel): Likewise. 1696*867d70fcSchristos (elf_micromips_howto_table_rela): Likewise. 1697*867d70fcSchristos (micromips_reloc_map): Likewise. 1698*867d70fcSchristos 1699*867d70fcSchristos2018-07-02 H.J. Lu <hongjiu.lu@intel.com> 1700*867d70fcSchristos 1701*867d70fcSchristos PR ld/23324 1702*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_relocate_section): Clear the 1703*867d70fcSchristos R_X86_64_converted_reloc_bit bit. 1704*867d70fcSchristos 1705*867d70fcSchristos2018-07-02 Jeff Muizelaar <jrmuizel@gmail.com> 1706*867d70fcSchristos Tom Tromey <tom@tromey.com> 1707*867d70fcSchristos 1708*867d70fcSchristos PR 13157 1709*867d70fcSchristos PR 21787 1710*867d70fcSchristos * mach-o.c (bfd_mach_o_fat_close_and_cleanup): New function. 1711*867d70fcSchristos (bfd_mach_o_close_and_cleanup): Redefine. 1712*867d70fcSchristos * archive.c (_bfd_unlink_from_archive_parent): New function, 1713*867d70fcSchristos extracted from.. 1714*867d70fcSchristos (_bfd_archive_close_and_cleanup): ..here. 1715*867d70fcSchristos (bfd_generic_archive_p): Do not clear archive's format. 1716*867d70fcSchristos * libbfd-in.h (_bfd_unlink_from_archive_parent): Declare. 1717*867d70fcSchristos * libbfd.h: Regenerate. 1718*867d70fcSchristos 1719*867d70fcSchristos2018-07-02 Thomas Preud'homme <thomas.preudhomme@arm.com> 1720*867d70fcSchristos 1721*867d70fcSchristos * archures.c (bfd_mach_arm_5TEJ, bfd_mach_arm_6, bfd_mach_arm_6KZ, 1722*867d70fcSchristos bfd_mach_arm_6T2, bfd_mach_arm_6K, bfd_mach_arm_7, bfd_mach_arm_6M, 1723*867d70fcSchristos bfd_mach_arm_6SM, bfd_mach_arm_7EM, bfd_mach_arm_8, bfd_mach_arm_8R, 1724*867d70fcSchristos bfd_mach_arm_8M_BASE, bfd_mach_arm_8M_MAIN): Define. 1725*867d70fcSchristos * bfd-in2.h: Regenerate. 1726*867d70fcSchristos * cpu-arm.c (arch_info_struct): Add entries for above new 1727*867d70fcSchristos bfd_mach_arm values. 1728*867d70fcSchristos * elf32-arm.c (bfd_arm_get_mach_from_attributes): Add Tag_CPU_arch to 1729*867d70fcSchristos bfd_mach_arm mapping logic for pre Armv4 and Armv5TEJ and later 1730*867d70fcSchristos architectures. Force assert failure for any new Tag_CPU_arch value. 1731*867d70fcSchristos 1732*867d70fcSchristos2018-07-02 Thomas Preud'homme <thomas.preudhomme@arm.com> 1733*867d70fcSchristos 1734*867d70fcSchristos * doc/bfdint.texi: Use command-line consistently when used in a 1735*867d70fcSchristos compount word. 1736*867d70fcSchristos * doc/bfdsumm.texi: Likewise. 1737*867d70fcSchristos 1738*867d70fcSchristos2018-06-29 Maciej W. Rozycki <macro@mips.com> 1739*867d70fcSchristos 1740*867d70fcSchristos * elfxx-mips.c (allocate_dynrelocs): Remove extraneous symbol 1741*867d70fcSchristos visibility check made for undefined weak symbols. 1742*867d70fcSchristos 1743*867d70fcSchristos2018-06-26 Nick Clifton <nickc@redhat.com> 1744*867d70fcSchristos 1745*867d70fcSchristos * po/uk.po: Updated Ukranian translation. 1746*867d70fcSchristos 1747*867d70fcSchristos2018-06-25 Nick Clifton <nickc@redhat.com> 1748*867d70fcSchristos 1749*867d70fcSchristos * elfnn-aarch64.c (_bfd_aarch64_erratum_835769_stub_name): Check 1750*867d70fcSchristos for malloc returning NULL. 1751*867d70fcSchristos (_bfd_aarch64_erratum_843419_fixup): Check for 1752*867d70fcSchristos _bfd_aarch64_erratum_835769_stub_name returning NULL. 1753*867d70fcSchristos 1754*867d70fcSchristos2018-06-24 Nick Clifton <nickc@redhat.com> 1755*867d70fcSchristos 1756*867d70fcSchristos * po/bfd.pot: Regenerate. 1757*867d70fcSchristos 1758*867d70fcSchristos2018-06-24 Nick Clifton <nickc@redhat.com> 1759*867d70fcSchristos 1760*867d70fcSchristos * version.m4: Update version string to 2.31.51. 1761*867d70fcSchristos * configure: Regenerate. 1762*867d70fcSchristos 1763*867d70fcSchristos2018-06-24 Nick Clifton <nickc@redhat.com> 1764*867d70fcSchristos 1765*867d70fcSchristos 2.31 branch created. 1766*867d70fcSchristos 1767*867d70fcSchristos2018-06-21 Maciej W. Rozycki <macro@mips.com> 1768*867d70fcSchristos 1769*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_compact_eh_encoding) 1770*867d70fcSchristos (_bfd_mips_elf_cant_unwind_opcode): Correct formatting. 1771*867d70fcSchristos 1772*867d70fcSchristos2018-06-21 Maciej W. Rozycki <macro@mips.com> 1773*867d70fcSchristos 1774*867d70fcSchristos * elfxx-mips.c (_bfd_mips_post_process_headers): Keep 1775*867d70fcSchristos EI_ABIVERSION setting together. 1776*867d70fcSchristos 1777*867d70fcSchristos2018-06-21 Maciej W. Rozycki <macro@mips.com> 1778*867d70fcSchristos 1779*867d70fcSchristos * elfxx-mips.c (MIPS_LIBC_ABI_DEFAULT, MIPS_LIBC_ABI_MIPS_PLT) 1780*867d70fcSchristos (MIPS_LIBC_ABI_UNIQUE, MIPS_LIBC_ABI_MIPS_O32_FP64) 1781*867d70fcSchristos (MIPS_LIBC_ABI_MAX): New enumeration constants. 1782*867d70fcSchristos (_bfd_mips_post_process_headers): Use them in place of magic 1783*867d70fcSchristos numbers. 1784*867d70fcSchristos 1785*867d70fcSchristos2018-06-21 Jim Wilson <jimw@sifive.com> 1786*867d70fcSchristos 1787*867d70fcSchristos * elfnn-riscv.c (riscv_elf_finish_dynamic_symbol): Update comment. 1788*867d70fcSchristos Use SYMBOL_REFERENCES_LOCAL. Add asserts for h->got.offset. 1789*867d70fcSchristos 1790*867d70fcSchristos2018-06-21 Alan Modra <amodra@gmail.com> 1791*867d70fcSchristos 1792*867d70fcSchristos * doc/Makefile.am (AUTOMAKE_OPTIONS): Add "foreign". 1793*867d70fcSchristos * doc/Makefile.in: Regenerate. 1794*867d70fcSchristos 1795*867d70fcSchristos2018-06-20 Renlin Li <renlin.li@arm.com> 1796*867d70fcSchristos 1797*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_resolve_relocation): Use PG_OFFSET 1798*867d70fcSchristos to resolve BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, 1799*867d70fcSchristos BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, 1800*867d70fcSchristos BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, 1801*867d70fcSchristos BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, 1802*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 1803*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 1804*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 1805*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC. 1806*867d70fcSchristos 1807*867d70fcSchristos2018-06-20 Nick Clifton <nickc@redhat.com> 1808*867d70fcSchristos 1809*867d70fcSchristos PR 23316 1810*867d70fcSchristos * opncls.c (get_build_id): Check for a negative or excessive data 1811*867d70fcSchristos size in the build-id note. 1812*867d70fcSchristos 1813*867d70fcSchristos2018-06-20 Nick Clifton <nickc@redhat.com> 1814*867d70fcSchristos 1815*867d70fcSchristos PR 23299 1816*867d70fcSchristos * mach-o.c (cputype): New function. 1817*867d70fcSchristos (cpusubtype): New function. 1818*867d70fcSchristos (bfd_mach_o_bfd_print_private_data): New function. Dispalys the 1819*867d70fcSchristos values in the MACH-O file header. 1820*867d70fcSchristos (bfd_mach_o_bfd_copy_private_header_data): Copy the cputype and 1821*867d70fcSchristos cpusubtype fields from the input bfd's mach-o header to the output 1822*867d70fcSchristos bfd. 1823*867d70fcSchristos * mach-o-target.c (bfd_mach_o_bfd_print_private_bfd_data): 1824*867d70fcSchristos Redefine to bfd_mach_o_bfd_print_private_data. 1825*867d70fcSchristos * mach-o.h (bfd_mach_o_bfd_print_private_bfd_data): Prototype. 1826*867d70fcSchristos 1827*867d70fcSchristos2018-06-19 Maciej W. Rozycki <macro@mips.com> 1828*867d70fcSchristos 1829*867d70fcSchristos PR ld/22966 1830*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Verify the 1831*867d70fcSchristos `.got.plt' entry referred is in range. 1832*867d70fcSchristos (mips_finish_exec_plt): Correct the range check for `.got.plt' 1833*867d70fcSchristos start. Replace the assertion used for that with a proper error 1834*867d70fcSchristos message. 1835*867d70fcSchristos 1836*867d70fcSchristos2018-06-19 Maciej W. Rozycki <macro@mips.com> 1837*867d70fcSchristos 1838*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Fix 1839*867d70fcSchristos formatting. 1840*867d70fcSchristos 1841*867d70fcSchristos2018-06-19 Simon Marchi <simon.marchi@ericsson.com> 1842*867d70fcSchristos 1843*867d70fcSchristos * Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11. 1844*867d70fcSchristos (INCLUDES): Rename to ... 1845*867d70fcSchristos (AM_CPPFLAGS): ... this. 1846*867d70fcSchristos * configure.ac: Remove AC_PREREQ. 1847*867d70fcSchristos * doc/Makefile.am (AUTOMAKE_OPTIONS): Remove 1.9, cygnus, add 1848*867d70fcSchristos info-in-builddir no-texinfo.tex. 1849*867d70fcSchristos (info_TEXINFOS): Rename bfd.texinfo to bfd.texi. 1850*867d70fcSchristos * doc/bfd.texinfo: Rename to ... 1851*867d70fcSchristos * doc/bfd.texi: ... this. 1852*867d70fcSchristos * Makefile.in: Re-generate. 1853*867d70fcSchristos * aclocal.m4: Re-generate. 1854*867d70fcSchristos * config.in: Re-generate. 1855*867d70fcSchristos * configure: Re-generate. 1856*867d70fcSchristos * doc/Makefile.in: Re-generate. 1857*867d70fcSchristos 1858*867d70fcSchristos2018-06-18 Mephi <mephi42@gmail.com> 1859*867d70fcSchristos 1860*867d70fcSchristos PR 23297 1861*867d70fcSchristos * mach-o-x86-64.c (x86_64_howto_table): Add entry for 1862*867d70fcSchristos BFD_RELOC_MACH_O_X86_64_RELOC_TLV. 1863*867d70fcSchristos (bfd_mach_o_x86_64_canonicalize_one_reloc): Handle the new reloc. 1864*867d70fcSchristos (bfd_mach_o_x86_64_swap_reloc_out): Likewise. 1865*867d70fcSchristos * reloc.c (BFD_RELOC_MACH_O_X86_64_TV): New entry. 1866*867d70fcSchristos * bfd-in2.h: Regenerate. 1867*867d70fcSchristos * libbfd.h: Regenerate. 1868*867d70fcSchristos 1869*867d70fcSchristos2018-06-14 Faraz Shahbazker <Faraz.Shahbazker@mips.com> 1870*867d70fcSchristos 1871*867d70fcSchristos * elfxx-mips.c (print_mips_ases): Add GINV extension. 1872*867d70fcSchristos 1873*867d70fcSchristos2018-06-14 H.J. Lu <hongjiu.lu@intel.com> 1874*867d70fcSchristos 1875*867d70fcSchristos PR binutils/23267 1876*867d70fcSchristos * elf.c (_bfd_elf_get_symbol_version_string): Check if the first 1877*867d70fcSchristos symbol version is base version. 1878*867d70fcSchristos 1879*867d70fcSchristos2018-06-14 Alan Modra <amodra@gmail.com> 1880*867d70fcSchristos 1881*867d70fcSchristos * elf-bfd.h (struct elf_link_hash_table): Add "dynamic_relocs". 1882*867d70fcSchristos * elflink.c (_bfd_elf_init_2_index_sections): Comment fix. 1883*867d70fcSchristos (_bfd_elf_add_dynamic_entry): Set "dynamic_relocs". 1884*867d70fcSchristos (_bfd_elf_link_renumber_dynsyms): Exclude all section symbols when 1885*867d70fcSchristos "dynamic_relocs" is not set. 1886*867d70fcSchristos * elfxx-mips.c (count_section_dynsyms): Likewise. 1887*867d70fcSchristos 1888*867d70fcSchristos2018-06-14 Alan Modra <amodra@gmail.com> 1889*867d70fcSchristos 1890*867d70fcSchristos PR 23282 1891*867d70fcSchristos * bfdio.c (bfd_seek): Optimize away seeks to current position. 1892*867d70fcSchristos 1893*867d70fcSchristos2018-06-13 Scott Egerton <scott.egerton@imgtec.com> 1894*867d70fcSchristos Faraz Shahbazker <Faraz.Shahbazker@mips.com> 1895*867d70fcSchristos 1896*867d70fcSchristos * elfxx-mips.c (print_mips_ases): Add CRC. 1897*867d70fcSchristos 1898*867d70fcSchristos2018-06-08 H.J. Lu <hongjiu.lu@intel.com> 1899*867d70fcSchristos 1900*867d70fcSchristos PR ld/23161 1901*867d70fcSchristos * elfxx-x86.c (elf_x86_hide_linker_defined): New function. 1902*867d70fcSchristos (_bfd_x86_elf_link_check_relocs): Use it to hide hidden 1903*867d70fcSchristos __bss_start, _end and _edata in shared libraries. 1904*867d70fcSchristos 1905*867d70fcSchristos2018-06-07 Alan Modra <amodra@gmail.com> 1906*867d70fcSchristos 1907*867d70fcSchristos * elf32-tic6x.c (elf32_tic6x_check_relocs): Reference 1908*867d70fcSchristos __c6xabi_DSBT_BASE explicitly for R_C6000_SBR_* relocs. 1909*867d70fcSchristos 1910*867d70fcSchristos2018-06-05 Alan Modra <amodra@gmail.com> 1911*867d70fcSchristos 1912*867d70fcSchristos * bfd.c (struct bfd): Update comment on "where" usage. 1913*867d70fcSchristos * bfdio.c (bfd_bwrite, bfd_stat): Use and update "iovec", 1914*867d70fcSchristos "iostream", and "where" from containing archive file. Return 1915*867d70fcSchristos error on NULL iovec. 1916*867d70fcSchristos (bfd_bread): Similarly, and return error attempted out of 1917*867d70fcSchristos bounds archive element access. 1918*867d70fcSchristos (bfd_tell, bfd_flush): Use and update "iovec", "iostream", and 1919*867d70fcSchristos "where" from containing archive file. 1920*867d70fcSchristos (bfd_seek): Likewise. Return error on NULL iovec. Don't 1921*867d70fcSchristos attempt to optimize away seeks. Don't paper over errors by 1922*867d70fcSchristos calling bfd_tell. 1923*867d70fcSchristos (bfd_get_mtime): Call bfd_stat rather than iovec->bstat. 1924*867d70fcSchristos (bfd_get_size): Likewise. 1925*867d70fcSchristos (bfd_mmap): Operate on and use iovec of containing archive 1926*867d70fcSchristos file. Return error on NULL iovec. 1927*867d70fcSchristos * cache.c (bfd_cache_lookup_worker): Abort if working on 1928*867d70fcSchristos archive element bfd. 1929*867d70fcSchristos (cache_bread_1): Delete bfd parameter, add FILE* parameter. 1930*867d70fcSchristos Don't ignore zero byte reads. 1931*867d70fcSchristos (cache_bread): Look up FILE* in cache here. Error on NULL 1932*867d70fcSchristos lookup. 1933*867d70fcSchristos (cache_bwrite): Rename "where" to "from". 1934*867d70fcSchristos (cache_bmmap): Don't handle archive elements. 1935*867d70fcSchristos * coffcode.h (coff_slurp_line_table): Exit early on zero 1936*867d70fcSchristos lineno count. 1937*867d70fcSchristos * bfd-in2.h: Regenerate. 1938*867d70fcSchristos 1939*867d70fcSchristos2018-06-05 Alan Modra <amodra@gmail.com> 1940*867d70fcSchristos 1941*867d70fcSchristos PR 23254 1942*867d70fcSchristos * plugin.c (bfd_plugin_open_input): Allow for possibility of 1943*867d70fcSchristos nested archives. Open file again for plugin. 1944*867d70fcSchristos (try_claim): Don't save and restore file position. Close file 1945*867d70fcSchristos if not claimed. 1946*867d70fcSchristos * sysdep.h (O_BINARY): Define. 1947*867d70fcSchristos 1948*867d70fcSchristos2018-06-04 Max Filippov <jcmvbkbc@gmail.com> 1949*867d70fcSchristos 1950*867d70fcSchristos * elf32-xtensa.c (xtensa_read_table_entries): Make global. 1951*867d70fcSchristos (compute_fill_extra_space): Drop declaration. Rename function to 1952*867d70fcSchristos xtensa_compute_fill_extra_space. 1953*867d70fcSchristos (compute_ebb_actions, remove_dead_literal): Update references to 1954*867d70fcSchristos compute_fill_extra_space. 1955*867d70fcSchristos 1956*867d70fcSchristos2018-06-04 Volodymyr Arbatov <arbatov@cadence.com> 1957*867d70fcSchristos 1958*867d70fcSchristos * elf32-xtensa.c (elf32xtensa_separate_props): New global 1959*867d70fcSchristos variable. 1960*867d70fcSchristos (xtensa_add_names): New function. 1961*867d70fcSchristos (xtensa_property_section_name): Add new parameter 1962*867d70fcSchristos separate_sections, use it to choose property section name. 1963*867d70fcSchristos (xtensa_get_separate_property_section): New function. 1964*867d70fcSchristos (xtensa_get_property_section): Invoke 1965*867d70fcSchristos xtensa_get_separate_property_section to get individual property 1966*867d70fcSchristos section if it exists, common property section otherwise. 1967*867d70fcSchristos (xtensa_make_property_section): Pass elf32xtensa_separate_props 1968*867d70fcSchristos to xtensa_property_section_name. 1969*867d70fcSchristos 1970*867d70fcSchristos2018-06-04 H.J. Lu <hongjiu.lu@intel.com> 1971*867d70fcSchristos 1972*867d70fcSchristos PR binutils/23146 1973*867d70fcSchristos * bfd-in.h: Include "diagnostics.h". 1974*867d70fcSchristos * bfd-in2.h: Regenerated. 1975*867d70fcSchristos * elf32-arm.c (elf32_arm_nabi_write_core_note): Use 1976*867d70fcSchristos DIAGNOSTIC_PUSH, DIAGNOSTIC_IGNORE_STRINGOP_TRUNCATION and 1977*867d70fcSchristos DIAGNOSTIC_POP to silence GCC 8.1 warnings with 1978*867d70fcSchristos -Wstringop-truncation. 1979*867d70fcSchristos * elf32-ppc.c (ppc_elf_write_core_note): Likewse. 1980*867d70fcSchristos * elf32-s390.c (elf_s390_write_core_note): Likewse. 1981*867d70fcSchristos * elf64-ppc.c (ppc64_elf_write_core_note): Likewse. 1982*867d70fcSchristos * elf64-s390.c (elf_s390_write_core_note): Likewse. 1983*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewse. 1984*867d70fcSchristos 1985*867d70fcSchristos2018-06-03 Jim Wilson <jimw@sifive.com> 1986*867d70fcSchristos 1987*867d70fcSchristos PR ld/23244 1988*867d70fcSchristos * elfnn-riscv.c (riscv_elf_relocate_section) <R_RISCV_CALL>: Check 1989*867d70fcSchristos for and handle an undefined weak with no PLT. 1990*867d70fcSchristos 1991*867d70fcSchristos PR ld/22756 1992*867d70fcSchristos * elfnn-riscv.c (riscv_relax_delete_bytes): Add versioned_hidden check 1993*867d70fcSchristos to code that ignores duplicate symbols. 1994*867d70fcSchristos 1995*867d70fcSchristos2018-06-01 H.J. Lu <hongjiu.lu@intel.com> 1996*867d70fcSchristos 1997*867d70fcSchristos * version.m4: Bump version to 2.30.52 1998*867d70fcSchristos * configure: Regenerated. 1999*867d70fcSchristos 2000*867d70fcSchristos2018-06-01 Alan Modra <amodra@gmail.com> 2001*867d70fcSchristos 2002*867d70fcSchristos * bfd.c (_bfd_error_handler): Arrange for this function to be 2003*867d70fcSchristos declared in bfd-in2.h. 2004*867d70fcSchristos * libbfd-in.h (_bfd_error_handler): Don't declare. 2005*867d70fcSchristos * libbfd.h: Regenerate. 2006*867d70fcSchristos * bfd-in2.h: Regenerate. 2007*867d70fcSchristos 2008*867d70fcSchristos2018-05-30 Amaan Cheval <amaan.cheval@gmail.com> 2009*867d70fcSchristos 2010*867d70fcSchristos * config.bfd (x86_64-*-*): Add pei-x86-64 target to x86_64-*-rtems* 2011*867d70fcSchristos This is needed to generate UEFI application image files from ELFs. 2012*867d70fcSchristos 2013*867d70fcSchristos2018-05-28 H.J. Lu <hongjiu.lu@intel.com> 2014*867d70fcSchristos 2015*867d70fcSchristos * elf32-i386.c (elf_i386_lazy_plt): Add plt_tlsdesc_entry, 2016*867d70fcSchristos plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset, 2017*867d70fcSchristos plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and 2018*867d70fcSchristos plt_tlsdesc_got2_insn_end for TLSDESC entry. 2019*867d70fcSchristos (elf_i386_lazy_ibt_plt): Likewise. 2020*867d70fcSchristos (elf_i386_nacl_plt): Likewise. 2021*867d70fcSchristos * elf64-x86-64.c (tlsdesc_plt_entry): Moved and renamed to ... 2022*867d70fcSchristos (elf_x86_64_tlsdesc_plt_entry): This. 2023*867d70fcSchristos (elf_x86_64_lazy_plt): Add plt_tlsdesc_entry, 2024*867d70fcSchristos plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset, 2025*867d70fcSchristos plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and 2026*867d70fcSchristos plt_tlsdesc_got2_insn_end for TLSDESC entry. 2027*867d70fcSchristos (elf_x86_64_lazy_bnd_plt): Likewise. 2028*867d70fcSchristos (elf_x86_64_lazy_ibt_plt): Likewise. 2029*867d70fcSchristos (elf_x32_lazy_ibt_plt): Likewise. 2030*867d70fcSchristos (elf_x86_64_nacl_plt): Likewise. 2031*867d70fcSchristos (elf_x86_64_finish_dynamic_sections): Use plt_tlsdesc_entry, 2032*867d70fcSchristos plt_tlsdesc_entry_size, plt_tlsdesc_got1_offset, 2033*867d70fcSchristos plt_tlsdesc_got2_offset, plt_tlsdesc_got1_insn_end and 2034*867d70fcSchristos plt_tlsdesc_got2_insn_end to update TLSDESC entry. 2035*867d70fcSchristos * elfxx-x86.h (elf_x86_lazy_plt_layout): Update comments. 2036*867d70fcSchristos Add plt_tlsdesc_entry, plt_tlsdesc_entry_size, 2037*867d70fcSchristos plt_tlsdesc_got1_offset, plt_tlsdesc_got2_offset, 2038*867d70fcSchristos plt_tlsdesc_got1_insn_end and plt_tlsdesc_got2_insn_end. 2039*867d70fcSchristos (elf_x86_non_lazy_plt_layout): Update comments. 2040*867d70fcSchristos (elf_x86_plt_layout): Likewise. 2041*867d70fcSchristos 2042*867d70fcSchristos2018-05-28 H.J. Lu <hongjiu.lu@intel.com> 2043*867d70fcSchristos 2044*867d70fcSchristos PR ld/23238 2045*867d70fcSchristos * elf-s390-common.c (elf_s390_add_symbol_hook): Removed. 2046*867d70fcSchristos * elf32-arc.c (elf_arc_add_symbol_hook): Likewise. 2047*867d70fcSchristos (elf_backend_add_symbol_hook): Likewise. 2048*867d70fcSchristos * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise. 2049*867d70fcSchristos (elf_backend_add_symbol_hook): Likewise. 2050*867d70fcSchristos * elf32-s390.c (elf_backend_add_symbol_hook): Likewise. 2051*867d70fcSchristos * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise. 2052*867d70fcSchristos (elf_backend_add_symbol_hook): Likewise. 2053*867d70fcSchristos * elf64-s390.c (elf_backend_add_symbol_hook): Likewise. 2054*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise. 2055*867d70fcSchristos * elfxx-aarch64.h (_bfd_aarch64_elf_add_symbol_hook): Likewise. 2056*867d70fcSchristos (elf_backend_add_symbol_hook): Likewise. 2057*867d70fcSchristos * elf32-arm.c (elf32_arm_add_symbol_hook): Remove STT_GNU_IFUNC 2058*867d70fcSchristos handling. 2059*867d70fcSchristos * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. 2060*867d70fcSchristos * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise. 2061*867d70fcSchristos * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise. 2062*867d70fcSchristos * elflink.c (elf_link_add_object_symbols): Set 2063*867d70fcSchristos elf_gnu_symbol_ifunc for STT_GNU_IFUNC symbols. 2064*867d70fcSchristos 2065*867d70fcSchristos2018-05-26 H.J. Lu <hongjiu.lu@intel.com> 2066*867d70fcSchristos 2067*867d70fcSchristos PR ld/23194 2068*867d70fcSchristos * elf-bfd.h (_bfd_elf_link_hide_sym_by_version): New. 2069*867d70fcSchristos * elflink.c (_bfd_elf_link_hide_versioned_symbol): New function. 2070*867d70fcSchristos Extracted from _bfd_elf_link_assign_sym_version. 2071*867d70fcSchristos (_bfd_elf_link_hide_sym_by_version): New function. 2072*867d70fcSchristos (_bfd_elf_link_assign_sym_version): Use 2073*867d70fcSchristos _bfd_elf_link_hide_versioned_symbol. 2074*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Call 2075*867d70fcSchristos _bfd_elf_link_hide_sym_by_version instead of 2076*867d70fcSchristos bfd_hide_sym_by_version. Don't check unversioned symbol. 2077*867d70fcSchristos 2078*867d70fcSchristos2018-05-25 Alan Modra <amodra@gmail.com> 2079*867d70fcSchristos 2080*867d70fcSchristos * Makefile.in: Regenerate. 2081*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2082*867d70fcSchristos 2083*867d70fcSchristos2018-05-25 Alan Modra <amodra@gmail.com> 2084*867d70fcSchristos 2085*867d70fcSchristos * configure.ac (bfd_cv_hidden): Run test with -Werror in CFLAGS. 2086*867d70fcSchristos * configure: Regenerate. 2087*867d70fcSchristos 2088*867d70fcSchristos2018-05-23 H.J. Lu <hongjiu.lu@intel.com> 2089*867d70fcSchristos 2090*867d70fcSchristos * elf64-ppc.c (ppc64_elf_write_core_note): Add ATTRIBUTE_NONSTRING 2091*867d70fcSchristos to data. 2092*867d70fcSchristos 2093*867d70fcSchristos2018-05-22 Alan Modra <amodra@gmail.com> 2094*867d70fcSchristos 2095*867d70fcSchristos PR 23207 2096*867d70fcSchristos * elf32-hppa.c (hppa_get_stub_entry): Return NULL when link_sec 2097*867d70fcSchristos is NULL. 2098*867d70fcSchristos (elf32_hppa_size_stubs): Only create stubs for load, alloc, code 2099*867d70fcSchristos sections. 2100*867d70fcSchristos (final_link_relocate): Revert last change. 2101*867d70fcSchristos 2102*867d70fcSchristos2018-05-22 Alan Modra <amodra@gmail.com> 2103*867d70fcSchristos 2104*867d70fcSchristos PR 23207 2105*867d70fcSchristos * elf32-hppa.c (final_link_relocate): Don't look for plt call 2106*867d70fcSchristos stubs in non-alloc sections. 2107*867d70fcSchristos 2108*867d70fcSchristos2018-05-21 H.J. Lu <hongjiu.lu@intel.com> 2109*867d70fcSchristos 2110*867d70fcSchristos PR ld/23201 2111*867d70fcSchristos * aout-target.h (MY_bfd_link_hide_symbol): New. 2112*867d70fcSchristos * aout-tic30.c (MY_bfd_link_hide_symbol): Likewise. 2113*867d70fcSchristos * binary.c (binary_bfd_link_hide_symbol): Likewise. 2114*867d70fcSchristos * coff-alpha.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise. 2115*867d70fcSchristos * coff-mips.c (_bfd_ecoff_bfd_link_hide_symbol): Likewise. 2116*867d70fcSchristos * coff-rs6000.c (_bfd_xcoff_bfd_link_hide_symbol): Likewise. 2117*867d70fcSchristos * coffcode.h (coff_bfd_link_hide_symbol): Likewise. 2118*867d70fcSchristos * elf-bfd.h (_bfd_elf_link_hide_symbol): Likewise. 2119*867d70fcSchristos * elfxx-target.h (bfd_elfNN_bfd_link_hide_symbol): Likewise. 2120*867d70fcSchristos * i386msdos.c (msdos_bfd_link_hide_symbol): Likewise. 2121*867d70fcSchristos * ihex.c (ihex_bfd_link_hide_symbol): Likewise. 2122*867d70fcSchristos * libbfd-in.h (_bfd_nolink_bfd_link_hide_symbol): Likewise. 2123*867d70fcSchristos * linker.c (_bfd_generic_link_hide_symbol): Likewise. 2124*867d70fcSchristos (bfd_link_hide_symbol): Likewise. 2125*867d70fcSchristos * mach-o-target.c (bfd_mach_o_bfd_link_hide_symbol): Likewise. 2126*867d70fcSchristos * mmo.c (mmo_bfd_link_hide_symbol): Likewise. 2127*867d70fcSchristos * pef.c (bfd_pef_bfd_link_hide_symbol): Likewise. 2128*867d70fcSchristos * plugin.c (bfd_plugin_bfd_link_hide_symbol): Likewise. 2129*867d70fcSchristos * ppcboot.c (ppcboot_bfd_link_hide_symbol): Likewise. 2130*867d70fcSchristos * som.c (som_bfd_link_hide_symbol): Likewise. 2131*867d70fcSchristos * srec.c (srec_bfd_link_hide_symbol): Likewise. 2132*867d70fcSchristos * tekhex.c (tekhex_bfd_link_hide_symbol): Likewise. 2133*867d70fcSchristos * vms-alpha.c (vms_bfd_link_hide_symbol): Likewise. 2134*867d70fcSchristos (alpha_vms_bfd_link_hide_symbol): Likewise. 2135*867d70fcSchristos * xsym.c (bfd_sym_bfd_link_hide_symbol): Likewise. 2136*867d70fcSchristos * coff64-rs6000.c (rs6000_xcoff64_vec): Add 2137*867d70fcSchristos _bfd_generic_link_hide_symbol. 2138*867d70fcSchristos (rs6000_xcoff64_aix_vec): Likewise. 2139*867d70fcSchristos * elflink.c (bfd_elf_record_link_assignment): Don't make forced 2140*867d70fcSchristos local symbol dynamic. 2141*867d70fcSchristos (_bfd_elf_link_hide_symbol): New function. 2142*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't 2143*867d70fcSchristos check root.ldscript_def. 2144*867d70fcSchristos * targets.c (bfd_target): Add _bfd_link_hide_symbol. 2145*867d70fcSchristos (BFD_JUMP_TABLE_LINK): Add NAME##_bfd_link_hide_symbol. 2146*867d70fcSchristos * bfd-in2.h: Regenerated. 2147*867d70fcSchristos * libbfd.h: Likewise. 2148*867d70fcSchristos 2149*867d70fcSchristos2018-05-21 H.J. Lu <hongjiu.lu@intel.com> 2150*867d70fcSchristos 2151*867d70fcSchristos PR binutils/23199 2152*867d70fcSchristos * elf.c (setup_group): Mark section in a section group with 2153*867d70fcSchristos SHF_GROUP. 2154*867d70fcSchristos 2155*867d70fcSchristos2018-05-18 H.J. Lu <hongjiu.lu@intel.com> 2156*867d70fcSchristos 2157*867d70fcSchristos PR ld/23194 2158*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't 2159*867d70fcSchristos set eh->local_ref to 1 if a symbol is versioned and there is a 2160*867d70fcSchristos version script. 2161*867d70fcSchristos 2162*867d70fcSchristos2018-05-18 Kito Cheng <kito.cheng@gmail.com> 2163*867d70fcSchristos 2164*867d70fcSchristos * elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Handle 2165*867d70fcSchristos EF_RISCV_RVE. 2166*867d70fcSchristos 2167*867d70fcSchristos2018-05-18 Jim Wilson <jimw@sifive.com> 2168*867d70fcSchristos 2169*867d70fcSchristos * elfnn-riscv.c (allocate_dynrelocs): Discard dynamic relocations if 2170*867d70fcSchristos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 2171*867d70fcSchristos (riscv_elf_relocate_section): Don't generate dynamic relocation if 2172*867d70fcSchristos UNDEFWEAK_NO_DYNAMIC_RELOC is true. 2173*867d70fcSchristos (riscv_elf_finish_dynamic_symbol): Likewise. 2174*867d70fcSchristos 2175*867d70fcSchristos2018-05-18 John Darrington <john@darrington.wattle.id.au> 2176*867d70fcSchristos 2177*867d70fcSchristos * Makefile.am: Add s12z files. 2178*867d70fcSchristos * Makefile.in: Regenerate. 2179*867d70fcSchristos * archures.c: Add bfd_s12z_arch. 2180*867d70fcSchristos * bfd-in.h: Add exports of bfd_putb24 and bfd_putl24. 2181*867d70fcSchristos * bfd-in2.h: Regenerate. 2182*867d70fcSchristos * config.bfd: Add s12z target. 2183*867d70fcSchristos * configure.ac: Add s12z target. 2184*867d70fcSchristos * configure: Regenerate. 2185*867d70fcSchristos * cpu-s12z.c: New file. 2186*867d70fcSchristos * elf32-s12z.c: New file. 2187*867d70fcSchristos * libbfd.c (bfd_putb24): New function. 2188*867d70fcSchristos (bfd_putl24): New function. 2189*867d70fcSchristos * libbfd.h: Regenerate. 2190*867d70fcSchristos * reloc.c: Add s12z relocations. 2191*867d70fcSchristos (bfd_get_reloc_size): Handle size 5 relocs. 2192*867d70fcSchristos * targets.c: Add s12z_elf32_vec. 2193*867d70fcSchristos 2194*867d70fcSchristos2018-05-18 H.J. Lu <hongjiu.lu@intel.com> 2195*867d70fcSchristos 2196*867d70fcSchristos PR ld/23189 2197*867d70fcSchristos * elf32-i386.c (elf_i386_relocate_section): Handle R_386_GOT32X 2198*867d70fcSchristos like R_386_GOT32. 2199*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_symbol_references_local): Don't 2200*867d70fcSchristos set eh->local_ref to 1 for linker defined symbols. 2201*867d70fcSchristos 2202*867d70fcSchristos2018-05-18 Alan Modra <amodra@gmail.com> 2203*867d70fcSchristos 2204*867d70fcSchristos PR 23199 2205*867d70fcSchristos * elf.c (setup_group): Formatting. Check that SHT_GROUP entries 2206*867d70fcSchristos don't point at other SHT_GROUP sections. Set shdr corresponding 2207*867d70fcSchristos to invalid entry, to NULL rather than section 0. Identify 2208*867d70fcSchristos SHT_GROUP section index when reporting an error. Cope with NULL 2209*867d70fcSchristos shdr pointer. 2210*867d70fcSchristos 2211*867d70fcSchristos2018-05-18 Alan Modra <amodra@gmail.com> 2212*867d70fcSchristos 2213*867d70fcSchristos * libbfd-in.h (ATTRIBUTE_HIDDEN): Define and use throughout. 2214*867d70fcSchristos * configure.ac (HAVE_HIDDEN): Check compiler support for hidden 2215*867d70fcSchristos visibility. 2216*867d70fcSchristos * libbfd.h: Regenerate. 2217*867d70fcSchristos * configure: Regenerate. 2218*867d70fcSchristos * config.in: Regenerate. 2219*867d70fcSchristos 2220*867d70fcSchristos2018-05-18 Alan Modra <amodra@gmail.com> 2221*867d70fcSchristos 2222*867d70fcSchristos * libbfd-in.h: Add include guard. 2223*867d70fcSchristos * libcoff-in.h: Likewise. 2224*867d70fcSchristos * doc/Makefile.am (libbfd.h, libcoff.h): Append another #endif. 2225*867d70fcSchristos * doc/Makefile.in: Regenerate. 2226*867d70fcSchristos * libbfd.h: Regenerate. 2227*867d70fcSchristos * libcoff.h: Regenerate. 2228*867d70fcSchristos 2229*867d70fcSchristos2018-05-16 Maciej W. Rozycki <macro@mips.com> 2230*867d70fcSchristos 2231*867d70fcSchristos * elf32-nds32.c (nds32_convert_32_to_16): Preset `insn_type'. 2232*867d70fcSchristos 2233*867d70fcSchristos2018-05-16 Alan Modra <amodra@gmail.com> 2234*867d70fcSchristos 2235*867d70fcSchristos PR 22458 2236*867d70fcSchristos * format.c (struct bfd_preserve): Add section_id. 2237*867d70fcSchristos (bfd_preserve_save, bfd_preserve_restore): Save and restore 2238*867d70fcSchristos _bfd_section_id. 2239*867d70fcSchristos (bfd_reinit): Set _bfd_section_id. 2240*867d70fcSchristos (bfd_check_format_matches): Put all matches of any priority into 2241*867d70fcSchristos matching_vector. Save initial section id and start each attempted 2242*867d70fcSchristos match at that section id. 2243*867d70fcSchristos * libbfd-in.h (_bfd_section_id): Declare. 2244*867d70fcSchristos * section.c (_bfd_section_id): Rename from section_id and make 2245*867d70fcSchristos global. Adjust uses. 2246*867d70fcSchristos (bfd_get_next_section_id): Delete. 2247*867d70fcSchristos * elf64-ppc.c (ppc64_elf_setup_section_lists): Replace use of 2248*867d70fcSchristos bfd_get_section_id with _bfd_section_id. 2249*867d70fcSchristos * libbfd.h: Regenerate. 2250*867d70fcSchristos * bfd-in2.h: Regenerate. 2251*867d70fcSchristos 2252*867d70fcSchristos2018-05-15 Christophe Guillon <christophe.guillon@st.com> 2253*867d70fcSchristos 2254*867d70fcSchristos * coffcode.h (coff_bigobj_swap_aux_in): Make sure that all fields 2255*867d70fcSchristos of the aux structure are initialised. 2256*867d70fcSchristos 2257*867d70fcSchristos2018-05-15 Francois H. Theron <francois.theron@netronome.com> 2258*867d70fcSchristos 2259*867d70fcSchristos * targets.c: Wrap nfp_elf64_vec in BFD64 ifdef. 2260*867d70fcSchristos 2261*867d70fcSchristos2018-05-15 Nick Clifton <nickc@redhat.com> 2262*867d70fcSchristos 2263*867d70fcSchristos * po/pt.po: New Portuguese translation. 2264*867d70fcSchristos * configure.ac (ALL_LINGUAS): Add pt. 2265*867d70fcSchristos * configure: Regenerate. 2266*867d70fcSchristos 2267*867d70fcSchristos2018-05-14 H.J. Lu <hongjiu.lu@intel.com> 2268*867d70fcSchristos 2269*867d70fcSchristos PR ld/23169 2270*867d70fcSchristos * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Don't issue 2271*867d70fcSchristos an error on IFUNC pointer defined in PDE. 2272*867d70fcSchristos * elf32-i386.c (elf_i386_finish_dynamic_symbol): Call 2273*867d70fcSchristos _bfd_x86_elf_link_fixup_ifunc_symbol. 2274*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise. 2275*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): New 2276*867d70fcSchristos function. 2277*867d70fcSchristos * elfxx-x86.h (_bfd_x86_elf_link_fixup_ifunc_symbol): New. 2278*867d70fcSchristos 2279*867d70fcSchristos2018-05-14 H.J. Lu <hongjiu.lu@intel.com> 2280*867d70fcSchristos 2281*867d70fcSchristos PR ld/23162 2282*867d70fcSchristos * elfxx-x86.c (elf_x86_linker_defined): New function. 2283*867d70fcSchristos (_bfd_x86_elf_link_check_relocs): Use it to mark __bss_start, 2284*867d70fcSchristos _end and _edata locally defined within executables. 2285*867d70fcSchristos 2286*867d70fcSchristos2018-05-12 Alan Modra <amodra@gmail.com> 2287*867d70fcSchristos 2288*867d70fcSchristos PR 20659 2289*867d70fcSchristos * elf.c (rewrite_elf_program_header): Use segment_mark only for 2290*867d70fcSchristos PT_LOAD headers. Delete first_matching_lma and first_suggested_lma. 2291*867d70fcSchristos Instead make matching_lma and suggested_lma pointers to the 2292*867d70fcSchristos sections. Align section vma and lma calculated from segment. 2293*867d70fcSchristos Don't clear includes_phdrs or includes_filehdr based on p_paddr 2294*867d70fcSchristos test. Try to handle alignment padding before first section by 2295*867d70fcSchristos adjusting new segment lma down. Adjust PT_PHDR map p_paddr. 2296*867d70fcSchristos 2297*867d70fcSchristos2018-05-09 Dimitar Dimitrov <dimitar@dinux.eu> 2298*867d70fcSchristos 2299*867d70fcSchristos * elf32-pru.c (pru_elf32_do_ldi32_relocate): Make LDI32 relocation 2300*867d70fcSchristos conformant to TI ABI. 2301*867d70fcSchristos (pru_elf32_relax_section): Likewise. 2302*867d70fcSchristos (pru_elf_relax_delete_bytes): Fix offsets for new LDI32 code. 2303*867d70fcSchristos * elf32-pru.c (pru_elf32_do_ldi32_relocate): Ignore addend. 2304*867d70fcSchristos (pru_elf32_pmem_relocate): Trap - should not get here. 2305*867d70fcSchristos (pru_elf32_relocate_section): Add support for REL relocations. 2306*867d70fcSchristos (elf_info_to_howto_rel): Enable REL. 2307*867d70fcSchristos (elf_backend_may_use_rel_p): Likewise. 2308*867d70fcSchristos (elf_backend_may_use_rela_p): Likewise. 2309*867d70fcSchristos (elf_backend_default_use_rela_p): Likewise. 2310*867d70fcSchristos 2311*867d70fcSchristos2018-05-09 Alan Modra <amodra@gmail.com> 2312*867d70fcSchristos 2313*867d70fcSchristos PR 23148 2314*867d70fcSchristos * peXXigen.c (pe_print_edata): Correct minimum size. 2315*867d70fcSchristos 2316*867d70fcSchristos2018-05-09 Alan Modra <amodra@gmail.com> 2317*867d70fcSchristos 2318*867d70fcSchristos PR 23147 2319*867d70fcSchristos * peXXigen.c (pe_print_idata): Bound check hint_addr. 2320*867d70fcSchristos 2321*867d70fcSchristos2018-05-08 Nick Clifton <nickc@redhat.com> 2322*867d70fcSchristos 2323*867d70fcSchristos PR 22809 2324*867d70fcSchristos * elf.c (bfd_elf_get_str_section): Check for an excessively large 2325*867d70fcSchristos string section. 2326*867d70fcSchristos * elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the 2327*867d70fcSchristos attribute section is larger than the size of the file. 2328*867d70fcSchristos 2329*867d70fcSchristos2018-05-07 Alan Modra <amodra@gmail.com> 2330*867d70fcSchristos 2331*867d70fcSchristos * cofflink.c (_bfd_coff_link_input_bfd): Use memcmp rather than 2332*867d70fcSchristos strncmp when checking for ".bf" special symbol. 2333*867d70fcSchristos * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Make pe_required_section_flags 2334*867d70fcSchristos section name a char array, remove sentinal known_sections entry, 2335*867d70fcSchristos and adjust loop over known_sections to suit. Use memcmp rather 2336*867d70fcSchristos than strncmp. 2337*867d70fcSchristos 2338*867d70fcSchristos2018-05-04 Alan Modra <amodra@gmail.com> 2339*867d70fcSchristos 2340*867d70fcSchristos * elf-linux-core.h (struct elf_external_linux_prpsinfo32_ugid32), 2341*867d70fcSchristos (struct elf_external_linux_prpsinfo32_ugid16), 2342*867d70fcSchristos (struct elf_external_linux_prpsinfo64_ugid32), 2343*867d70fcSchristos (struct elf_external_linux_prpsinfo64_ugid16): Add ATTRIBUTE_NONSTRING 2344*867d70fcSchristos to pr_fname and pr_psargs fields. Remove GCC diagnostic pragmas. 2345*867d70fcSchristos Move comment to.. 2346*867d70fcSchristos * elf.c (elfcore_write_prpsinfo): ..here. Indent nested preprocessor 2347*867d70fcSchristos directives. 2348*867d70fcSchristos * elf32-arm.c (elf32_arm_nabi_write_core_note): Add ATTRIBUTE_NONSTRING 2349*867d70fcSchristos to data. 2350*867d70fcSchristos * elf32-ppc.c (ppc_elf_write_core_note): Likewise. 2351*867d70fcSchristos * elf32-s390.c (elf_s390_write_core_note): Likewise. 2352*867d70fcSchristos * elf64-s390.c (elf_s390_write_core_note): Likewise. 2353*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Likewise. 2354*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_write_core_note): Add GCC diagnostic 2355*867d70fcSchristos pragmas. 2356*867d70fcSchristos * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Use strnlen to avoid 2357*867d70fcSchristos false positive gcc-8 warning. 2358*867d70fcSchristos * cofflink.c (_bfd_coff_link_input_bfd): Likewise. 2359*867d70fcSchristos 2360*867d70fcSchristos2018-05-04 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com> 2361*867d70fcSchristos 2362*867d70fcSchristos * elf32-ppc.c (_bfd_elf_ppc_merge_fp_attributes): Fix the order 2363*867d70fcSchristos of arguments when warning about different long double types. 2364*867d70fcSchristos 2365*867d70fcSchristos2018-05-03 Simon Atanasyan <simon@atanasyan.com> 2366*867d70fcSchristos 2367*867d70fcSchristos * elf32-mips.c: (elf32_mips_fixup_symbol): New function. 2368*867d70fcSchristos (elf_backend_fixup_symbol): New macro. 2369*867d70fcSchristos * elfxx-mips.c: (mips_elf_output_extsym): Discard _gp_disp 2370*867d70fcSchristos handling. 2371*867d70fcSchristos (_bfd_mips_elf_finish_dynamic_symbol): Likewise. 2372*867d70fcSchristos 2373*867d70fcSchristos2018-04-30 Francois H. Theron <francois.theron@netronome.com> 2374*867d70fcSchristos 2375*867d70fcSchristos * Makefile.am: Added NFP files to build. 2376*867d70fcSchristos * archures.c: Added bfd_arch_nfp 2377*867d70fcSchristos * config.bfd: Added NFP support. 2378*867d70fcSchristos * configure.ac: Added NFP support. 2379*867d70fcSchristos * cpu-nfp.c: New, for NFP support. 2380*867d70fcSchristos * elf-bfd.h: Added elf_section_info() 2381*867d70fcSchristos * elf64-nfp.c: New, for NFP support. 2382*867d70fcSchristos * po/SRC-POTFILES.in: Added NFP source files. 2383*867d70fcSchristos * targets.c: Added nfp_elf64_vec 2384*867d70fcSchristos * bfd-in2.h: Regenerate. 2385*867d70fcSchristos * Makefile.in: Regenerate. 2386*867d70fcSchristos * configure: Regenerate. 2387*867d70fcSchristos 2388*867d70fcSchristos2018-04-27 Alan Modra <amodra@gmail.com> 2389*867d70fcSchristos 2390*867d70fcSchristos * bfd-in2.h: Regenerate. 2391*867d70fcSchristos * libbfd.h: Regenerate. 2392*867d70fcSchristos 2393*867d70fcSchristos2018-04-27 Alan Modra <amodra@gmail.com> 2394*867d70fcSchristos 2395*867d70fcSchristos PR 23123 2396*867d70fcSchristos PR 22374 2397*867d70fcSchristos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't drop plt 2398*867d70fcSchristos relocs for ifuncs. 2399*867d70fcSchristos * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Comment fixes. 2400*867d70fcSchristos 2401*867d70fcSchristos2018-04-26 Pedro Alves <palves@redhat.com> 2402*867d70fcSchristos 2403*867d70fcSchristos * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't consider 2404*867d70fcSchristos ifunc and non-ifunc symbols duplicates. 2405*867d70fcSchristos 2406*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2407*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2408*867d70fcSchristos 2409*867d70fcSchristos * elf32-arm.c (elf32_arm_fdpic_thumb_plt_entry): New. 2410*867d70fcSchristos (elf32_arm_plt_needs_thumb_stub_p): Handle thumb-only case. 2411*867d70fcSchristos (elf32_arm_populate_plt_entry): Likewise. 2412*867d70fcSchristos (elf32_arm_output_plt_map_1): Likewise. 2413*867d70fcSchristos (elf32_arm_output_arch_local_syms): Likewise. 2414*867d70fcSchristos 2415*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2416*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2417*867d70fcSchristos 2418*867d70fcSchristos * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Handle 2419*867d70fcSchristos _GLOBAL_OFFSET_TABLE_ in FDPIC mode. 2420*867d70fcSchristos 2421*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2422*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2423*867d70fcSchristos 2424*867d70fcSchristos * elf32-arm.c (bfd_elf32_arm_set_target_params): Handle FDPIC case 2425*867d70fcSchristos for R_ARM_TARGET2. 2426*867d70fcSchristos 2427*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2428*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2429*867d70fcSchristos 2430*867d70fcSchristos * elf32-arm.c (DEFAULT_STACK_SIZE): New. 2431*867d70fcSchristos (elf32_arm_always_size_sections): Create stack segment. 2432*867d70fcSchristos 2433*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2434*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2435*867d70fcSchristos 2436*867d70fcSchristos * bfd-in2.h (BFD_RELOC_ARM_TLS_GD32_FDPIC) 2437*867d70fcSchristos (BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC): New 2438*867d70fcSchristos relocations. 2439*867d70fcSchristos * elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_TLS_GD32_FDPIC, 2440*867d70fcSchristos R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC relocations. 2441*867d70fcSchristos (elf32_arm_reloc_map): Add R_ARM_TLS_GD32_FDPIC, 2442*867d70fcSchristos R_ARM_TLS_LDM32_FDPIC, R_ARM_TLS_IE32_FDPIC. 2443*867d70fcSchristos (struct elf32_arm_link_hash_table): Update comment. 2444*867d70fcSchristos (elf32_arm_final_link_relocate): Handle TLS FDPIC relocations. 2445*867d70fcSchristos (IS_ARM_TLS_RELOC): Likewise. 2446*867d70fcSchristos (elf32_arm_check_relocs): Likewise. 2447*867d70fcSchristos (allocate_dynrelocs_for_symbol): Likewise. 2448*867d70fcSchristos (elf32_arm_size_dynamic_sections): Update comment. 2449*867d70fcSchristos * reloc.c: Add BFD_RELOC_ARM_TLS_GD32_FDPIC, 2450*867d70fcSchristos BFD_RELOC_ARM_TLS_LDM32_FDPIC, BFD_RELOC_ARM_TLS_IE32_FDPIC. 2451*867d70fcSchristos 2452*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2453*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2454*867d70fcSchristos 2455*867d70fcSchristos * elf32-arm.c (elf32_arm_fdpic_plt_entry): New. 2456*867d70fcSchristos (elf32_arm_create_dynamic_sections): Handle FDPIC. 2457*867d70fcSchristos (elf32_arm_allocate_plt_entry): Likewise. 2458*867d70fcSchristos (elf32_arm_populate_plt_entry): Likewise. 2459*867d70fcSchristos (elf32_arm_output_plt_map_1): Likewise. 2460*867d70fcSchristos 2461*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2462*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2463*867d70fcSchristos 2464*867d70fcSchristos * elf32-arm.c (struct fdpic_local): New. 2465*867d70fcSchristos (elf_arm_obj_tdata): Add local_fdpic_cnts field. 2466*867d70fcSchristos (elf32_arm_local_fdpic_cnts): New. 2467*867d70fcSchristos (struct fdpic_global): New. 2468*867d70fcSchristos (elf32_arm_link_hash_entry): Add fdpic_cnts field. 2469*867d70fcSchristos (elf32_arm_link_hash_table): Add srofixup field. 2470*867d70fcSchristos (arm_elf_add_rofixup): New. 2471*867d70fcSchristos (arm_elf_fill_funcdesc): New. 2472*867d70fcSchristos (elf32_arm_link_hash_newfunc): Handle fdpic_cnts. 2473*867d70fcSchristos (elf32_arm_allocate_local_sym_info): Likewise. 2474*867d70fcSchristos (create_got_section): Create .rofixup section. 2475*867d70fcSchristos (elf32_arm_copy_indirect_symbol): Handle fdpic_cnts. 2476*867d70fcSchristos (bfd_elf32_arm_set_target_params): Handle FDPIC. 2477*867d70fcSchristos (elf32_arm_final_link_relocate): Likewise. 2478*867d70fcSchristos (elf32_arm_check_relocs): Likewise. 2479*867d70fcSchristos (allocate_dynrelocs_for_symbol): Likewise. 2480*867d70fcSchristos (elf32_arm_size_dynamic_sections): Likewise. 2481*867d70fcSchristos (elf32_arm_finish_dynamic_sections): Likewise. 2482*867d70fcSchristos (elf32_arm_output_arch_local_syms): Likewise. 2483*867d70fcSchristos (elf32_arm_fdpic_omit_section_dynsym): New. 2484*867d70fcSchristos 2485*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2486*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2487*867d70fcSchristos 2488*867d70fcSchristos * bfd-in2.c (BFD_RELOC_ARM_GOTFUNCDESC) 2489*867d70fcSchristos (BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC) 2490*867d70fcSchristos (BFD_RELOC_ARM_FUNCDESC_VALUE): New. 2491*867d70fcSchristos * elf32-arm.c (elf32_arm_howto_table_2): Add R_ARM_GOTFUNCDESC, 2492*867d70fcSchristos R_ARM_GOTOFFFUNCDESC, R_ARM_FUNCDESC, R_ARM_FUNCDESC_VALUE. 2493*867d70fcSchristos (elf32_arm_howto_from_type): Take new members of 2494*867d70fcSchristos elf32_arm_howto_table_2 into account. 2495*867d70fcSchristos (elf32_arm_reloc_map): Add BFD_RELOC_ARM_GOTFUNCDESC, 2496*867d70fcSchristos BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC, 2497*867d70fcSchristos BFD_RELOC_ARM_FUNCDESC_VALUE. 2498*867d70fcSchristos * reloc.c: Add BFD_RELOC_ARM_GOTFUNCDESC, 2499*867d70fcSchristos BFD_RELOC_ARM_GOTOFFFUNCDESC, BFD_RELOC_ARM_FUNCDESC, 2500*867d70fcSchristos BFD_RELOC_ARM_FUNCDESC_VALUE. 2501*867d70fcSchristos 2502*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2503*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2504*867d70fcSchristos 2505*867d70fcSchristos * elf32-arm.c (elf32_arm_print_private_bfd_data): Support 2506*867d70fcSchristos EF_ARM_PIC and ELFOSABI_ARM_FDPIC. 2507*867d70fcSchristos (elf32_arm_post_process_headers): Support ELFOSABI_ARM_FDPIC. 2508*867d70fcSchristos (ELF_OSABI): Define to ELFOSABI_ARM_FDPIC. 2509*867d70fcSchristos 2510*867d70fcSchristos2018-04-25 Christophe Lyon <christophe.lyon@st.com> 2511*867d70fcSchristos Mickaël Guêné <mickael.guene@st.com> 2512*867d70fcSchristos 2513*867d70fcSchristos * config.bfd (arm*-*-linux-*): Add arm_elf32_fdpic_be_vec and 2514*867d70fcSchristos arm_elf32_fdpic_le_vec to targ_selvecs. Accept 2515*867d70fcSchristos arm*-*-uclinuxfdpiceabi. 2516*867d70fcSchristos * configure.ac: Add support for arm_elf32_fdpic_be_vec and 2517*867d70fcSchristos arm_elf32_fdpic_le_vec. 2518*867d70fcSchristos * configure: Regenerate. 2519*867d70fcSchristos * elf32-arm.c (struct elf32_arm_link_hash_table): Add fdpic_p. 2520*867d70fcSchristos (elf32_arm_link_hash_table_create): Initialize fdpic_p. 2521*867d70fcSchristos (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM) 2522*867d70fcSchristos (TARGET_BIG_NAME, elf_match_priority): Define for FDPIC targets. 2523*867d70fcSchristos (elf32_arm_fdpic_link_hash_table_create): New. 2524*867d70fcSchristos * targets.c (_bfd_target_vector): Add arm_elf32_fdpic_be_vec and 2525*867d70fcSchristos arm_elf32_fdpic_le_vec. 2526*867d70fcSchristos 2527*867d70fcSchristos2018-04-25 Alan Modra <amodra@gmail.com> 2528*867d70fcSchristos 2529*867d70fcSchristos * elf-linux-core.h: Disable gcc-8 string truncation warning. 2530*867d70fcSchristos * elf.c (elfcore_write_prpsinfo): Likewise. 2531*867d70fcSchristos 2532*867d70fcSchristos2018-04-25 Alan Modra <amodra@gmail.com> 2533*867d70fcSchristos 2534*867d70fcSchristos * Makefile.am: Remove arm-aout and arm-coff support. 2535*867d70fcSchristos * config.bfd: Likewise. 2536*867d70fcSchristos * configure.ac: Likewise. 2537*867d70fcSchristos * targets.c: Likewise. 2538*867d70fcSchristos * aout-arm.c: Delete. 2539*867d70fcSchristos * armnetbsd.c: Delete. 2540*867d70fcSchristos * riscix.c: Delete. 2541*867d70fcSchristos * Makefile.in: Regenerate. 2542*867d70fcSchristos * configure: Regenerate. 2543*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2544*867d70fcSchristos 2545*867d70fcSchristos2018-04-24 Nick Clifton <nickc@redhat.com> 2546*867d70fcSchristos 2547*867d70fcSchristos PR 23113 2548*867d70fcSchristos * elf.c (ignore_section_sym): Check for the output_section pointer 2549*867d70fcSchristos being NULL before dereferencing it. 2550*867d70fcSchristos 2551*867d70fcSchristos PR 23110 2552*867d70fcSchristos * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check for 2553*867d70fcSchristos a negative PE_DEBUG_DATA size before iterating over the debug data. 2554*867d70fcSchristos 2555*867d70fcSchristos2018-04-23 Alan Modra <amodra@gmail.com> 2556*867d70fcSchristos 2557*867d70fcSchristos * elf-linux-core.h: Revert last change. 2558*867d70fcSchristos * elf.c: Likewise. 2559*867d70fcSchristos 2560*867d70fcSchristos2018-04-23 Nick Clifton <nickc@redhat.com> 2561*867d70fcSchristos 2562*867d70fcSchristos PR 23056 2563*867d70fcSchristos * aoutx.h (aout_get_external_symbols): Allocate an extra byte at 2564*867d70fcSchristos the end of the string table, and zero it. 2565*867d70fcSchristos 2566*867d70fcSchristos2018-04-23 Alan Modra <amodra@gmail.com> 2567*867d70fcSchristos 2568*867d70fcSchristos * elf-linux-core.h (swap_linux_prpsinfo32_ugid32_out): Disable 2569*867d70fcSchristos gcc-8 string truncation warning. 2570*867d70fcSchristos (swap_linux_prpsinfo32_ugid16_out): Likewise. 2571*867d70fcSchristos (swap_linux_prpsinfo64_ugid32_out): Likewise. 2572*867d70fcSchristos (swap_linux_prpsinfo64_ugid16_out): Likewise. 2573*867d70fcSchristos * elf.c (elfcore_write_prpsinfo): Likewise. 2574*867d70fcSchristos 2575*867d70fcSchristos2018-04-23 Nick Clifton <nickc@redhat.com> 2576*867d70fcSchristos 2577*867d70fcSchristos PR 23056 2578*867d70fcSchristos * aoutx.h (aout_get_external_symbols): Allocate an extra byte at 2579*867d70fcSchristos the end of the string table, and zero it. 2580*867d70fcSchristos 2581*867d70fcSchristos2018-04-20 Alan Modra <amodra@gmail.com> 2582*867d70fcSchristos 2583*867d70fcSchristos PR 22978 2584*867d70fcSchristos * elf32-hppa.c (got_relocs_needed): Add extra param to special 2585*867d70fcSchristos case both dtprel and tprel relocs. 2586*867d70fcSchristos (allocate_dynrelocs): Adjust conditions for got relocs. 2587*867d70fcSchristos (elf32_hppa_relocate_section): Likewise for local sym got relocs. 2588*867d70fcSchristos Emit dynamic relocs on TLS GOT entries for shared libraries, 2589*867d70fcSchristos not when pic. Omit dynamic reloc on dtprel entry when local, 2590*867d70fcSchristos and on tprel entry when local and executable. 2591*867d70fcSchristos 2592*867d70fcSchristos2018-04-19 Alan Modra <amodra@gmail.com> 2593*867d70fcSchristos 2594*867d70fcSchristos PR 22537 2595*867d70fcSchristos * elf32-hppa.c (elf32_hppa_size_stubs): Init "destination" to -1. 2596*867d70fcSchristos (hppa_type_of_stub): Don't return a long branch stub for 2597*867d70fcSchristos symbols other than those defined statically. 2598*867d70fcSchristos 2599*867d70fcSchristos2018-04-19 Alan Modra <amodra@gmail.com> 2600*867d70fcSchristos 2601*867d70fcSchristos * Makefile.am: Revert 2018-04-18 coff-mips changes. 2602*867d70fcSchristos * config.bfd: Add back mips_ecoff_le_vec and mips_ecoff_be_vec 2603*867d70fcSchristos to selvecs for mips targets change 2018-04-18. 2604*867d70fcSchristos * configure.ac: Reinstate mips_ecoff_le_vec, mips_ecoff_be_vec 2605*867d70fcSchristos and mips_ecoff_bele_vec. 2606*867d70fcSchristos * targets.c: Likewise. 2607*867d70fcSchristos * coff-mips.c: Resurrect. 2608*867d70fcSchristos * Makefile.in: Regenerate. 2609*867d70fcSchristos * configure: Regenerate. 2610*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2611*867d70fcSchristos 2612*867d70fcSchristos2018-04-18 Alan Modra <amodra@gmail.com> 2613*867d70fcSchristos 2614*867d70fcSchristos * Makefile.am: Remove mips aout and coff support. 2615*867d70fcSchristos * config.bfd: Likewise. 2616*867d70fcSchristos * configure.ac: Likewise. 2617*867d70fcSchristos * targets.c: Likewise. 2618*867d70fcSchristos * coff-mips.c: Delete 2619*867d70fcSchristos * mipsbsd.c: Delete 2620*867d70fcSchristos * pe-mips.c: Delete 2621*867d70fcSchristos * pei-mips.c: Delete 2622*867d70fcSchristos * Makefile.in: Regenerate. 2623*867d70fcSchristos * configure: Regenerate. 2624*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2625*867d70fcSchristos 2626*867d70fcSchristos2018-04-17 H.J. Lu <hongjiu.lu@intel.com> 2627*867d70fcSchristos 2628*867d70fcSchristos * elf32-i386.c (elf32_bed): Define before including 2629*867d70fcSchristos "elf32-target.h". 2630*867d70fcSchristos * elf64-x86-64.c (elf64_bed): Define before including 2631*867d70fcSchristos "elf64-target.h". 2632*867d70fcSchristos (elf32_bed): Define before including "elf32-target.h". 2633*867d70fcSchristos 2634*867d70fcSchristos2018-04-17 H.J. Lu <hongjiu.lu@intel.com> 2635*867d70fcSchristos 2636*867d70fcSchristos PR ld/23055 2637*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Use a 2638*867d70fcSchristos normal input file with compatible relocation. 2639*867d70fcSchristos 2640*867d70fcSchristos2018-04-18 Alan Modra <amodra@gmail.com> 2641*867d70fcSchristos 2642*867d70fcSchristos * Makefile.am: Remove support for assorted i386 aout and coff targets. 2643*867d70fcSchristos * config.bfd: Likewise. 2644*867d70fcSchristos * configure.ac: Likewise. 2645*867d70fcSchristos * doc/bfdint.texi: Likewise. 2646*867d70fcSchristos * targets.c: Likewise. 2647*867d70fcSchristos * freebsd.h: Delete. 2648*867d70fcSchristos * i386dynix.c: Delete. 2649*867d70fcSchristos * i386freebsd.c: Delete. 2650*867d70fcSchristos * i386linux.c: Delete. 2651*867d70fcSchristos * i386mach3.c: Delete. 2652*867d70fcSchristos * i386netbsd.c: Delete. 2653*867d70fcSchristos * i386os9k.c: Delete. 2654*867d70fcSchristos * Makefile.in: Regenerate. 2655*867d70fcSchristos * configure: Regenerate. 2656*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2657*867d70fcSchristos 2658*867d70fcSchristos2018-04-17 Andrew Sadek <andrew.sadek.se@gmail.com> 2659*867d70fcSchristos 2660*867d70fcSchristos Microblaze Target: PIC data text relative 2661*867d70fcSchristos 2662*867d70fcSchristos * bfd/reloc.c (2 new BFD relocations): 2663*867d70fcSchristos BFD_RELOC_MICROBLAZE_64_TEXTPCREL & 2664*867d70fcSchristos BFD_RELOC_MICROBLAZE_64_TEXTPCREL 2665*867d70fcSchristos * bfd/bfd-in2.h: Regenerate 2666*867d70fcSchristos * bfd/libbfd.h: Regenerate 2667*867d70fcSchristos * bfd/elf32-microblaze.c (Handle new relocs): define 'HOWTO' of 3 2668*867d70fcSchristos new relocs and handle them in both relocate and relax functions. 2669*867d70fcSchristos (microblaze_elf_reloc_type_lookup): add mapping between for new 2670*867d70fcSchristos bfd relocs. 2671*867d70fcSchristos (microblaze_elf_relocate_section): Handle new relocs in case of 2672*867d70fcSchristos elf relocation. 2673*867d70fcSchristos (microblaze_elf_relax_section): Handle new relocs for elf relaxation. 2674*867d70fcSchristos 2675*867d70fcSchristos2018-04-17 Nick Clifton <nickc@redhat.com> 2676*867d70fcSchristos 2677*867d70fcSchristos PR 23055 2678*867d70fcSchristos * aoutx.h (find_nearest_line): Check that the symbol name exists 2679*867d70fcSchristos and is long enough, before attempting to see if it is for a .o 2680*867d70fcSchristos file. 2681*867d70fcSchristos * hash.c (bfd_hash_hash): Add an assertion that the string is not 2682*867d70fcSchristos NULL. 2683*867d70fcSchristos * linker.c (bfd_link_hash_lookup): Fail if the table or string are 2684*867d70fcSchristos NULL. 2685*867d70fcSchristos (_bfd_generic_link_add_archive_symbols): Fail if an archive entry 2686*867d70fcSchristos has no name. 2687*867d70fcSchristos 2688*867d70fcSchristos PR 23065 2689*867d70fcSchristos * dwarf2.c (concat_filename): Check for a NULL table pointer. 2690*867d70fcSchristos 2691*867d70fcSchristos2018-04-16 Nick Clifton <nickc@redhat.com> 2692*867d70fcSchristos 2693*867d70fcSchristos PR 23061 2694*867d70fcSchristos * coffgen.c (coff_pointerize_aux): Check for an out of range 2695*867d70fcSchristos fixup. 2696*867d70fcSchristos 2697*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2698*867d70fcSchristos 2699*867d70fcSchristos * Makefile.am: Remove arm-epoc-pe support. 2700*867d70fcSchristos * coff-arm.c: Likewise. 2701*867d70fcSchristos * config.bfd: Likewise. 2702*867d70fcSchristos * configure.ac: Likewise. 2703*867d70fcSchristos * targets.c: Likewise. 2704*867d70fcSchristos * epoc-pe-arm.c: Delete. 2705*867d70fcSchristos * epoc-pei-arm.c: Delete. 2706*867d70fcSchristos * Makefile.in: Regenerate. 2707*867d70fcSchristos * configure: Regenerate. 2708*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2709*867d70fcSchristos 2710*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2711*867d70fcSchristos 2712*867d70fcSchristos * Makefile.am: Remove sparc-aout and sparc-coff support. 2713*867d70fcSchristos * config.bfd: Likewise. 2714*867d70fcSchristos * configure.ac: Likewise. 2715*867d70fcSchristos * targets.c: Likewise. 2716*867d70fcSchristos * aout-sparcle.c: Delete. 2717*867d70fcSchristos * aoutf1.h: Delete. 2718*867d70fcSchristos * cf-sparclynx.c: Delete. 2719*867d70fcSchristos * coff-sparc.c: Delete. 2720*867d70fcSchristos * demo64.c: Delete. 2721*867d70fcSchristos * sparclinux.c: Delete. 2722*867d70fcSchristos * sparclynx.c: Delete. 2723*867d70fcSchristos * sparcnetbsd.c: Delete. 2724*867d70fcSchristos * sunos.c: Delete. 2725*867d70fcSchristos * Makefile.in: Regenerate. 2726*867d70fcSchristos * configure: Regenerate. 2727*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2728*867d70fcSchristos 2729*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2730*867d70fcSchristos 2731*867d70fcSchristos * Makefile.am: Remove m68k-aout and m68k-coff support. 2732*867d70fcSchristos * aoutf1.h: Likewise. 2733*867d70fcSchristos * aoutx.h: Likewise. 2734*867d70fcSchristos * archive.c: Likewise. 2735*867d70fcSchristos * bfd-in.h: Likewise. 2736*867d70fcSchristos * bfd.c: Likewise. 2737*867d70fcSchristos * coffcode.h: Likewise. 2738*867d70fcSchristos * coffswap.h: Likewise. 2739*867d70fcSchristos * config.bfd: Likewise. 2740*867d70fcSchristos * configure.ac: Likewise. 2741*867d70fcSchristos * configure.host: Likewise. 2742*867d70fcSchristos * doc/bfd.texinfo: Likewise. 2743*867d70fcSchristos * doc/bfdint.texi: Likewise. 2744*867d70fcSchristos * freebsd.h: Likewise. 2745*867d70fcSchristos * gen-aout.c: Likewise. 2746*867d70fcSchristos * hpux-core.c: Likewise. 2747*867d70fcSchristos * libaout.h: Likewise. 2748*867d70fcSchristos * libbfd-in.h: Likewise. 2749*867d70fcSchristos * pdp11.c: Likewise. 2750*867d70fcSchristos * peicode.h: Likewise. 2751*867d70fcSchristos * riscix.c: Likewise. 2752*867d70fcSchristos * targets.c: Likewise. 2753*867d70fcSchristos * aout0.c: Delete. 2754*867d70fcSchristos * coff-apollo.c: Delete. 2755*867d70fcSchristos * coff-aux.c: Delete. 2756*867d70fcSchristos * coff-m68k.c: Delete. 2757*867d70fcSchristos * coff-svm68k.c: Delete. 2758*867d70fcSchristos * coff-u68k.c: Delete. 2759*867d70fcSchristos * hosts/delta68.h: Delete. 2760*867d70fcSchristos * hosts/hp300bsd.h: Delete. 2761*867d70fcSchristos * hosts/m68kaux.h: Delete. 2762*867d70fcSchristos * hosts/news.h: Delete. 2763*867d70fcSchristos * hp300bsd.c: Delete. 2764*867d70fcSchristos * hp300hpux.c: Delete. 2765*867d70fcSchristos * liboasys.h: Delete. 2766*867d70fcSchristos * m68k4knetbsd.c: Delete. 2767*867d70fcSchristos * m68klinux.c: Delete. 2768*867d70fcSchristos * m68knetbsd.c: Delete. 2769*867d70fcSchristos * oasys.c: Delete. 2770*867d70fcSchristos * versados.c: Delete. 2771*867d70fcSchristos * Makefile.in: Regenerate. 2772*867d70fcSchristos * bfd-in2.h: Regenerate. 2773*867d70fcSchristos * configure: Regenerate. 2774*867d70fcSchristos * libbfd.h: Regenerate. 2775*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2776*867d70fcSchristos 2777*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2778*867d70fcSchristos 2779*867d70fcSchristos * Makefile.am: Remove sh5 and sh64 support. 2780*867d70fcSchristos * archures.c: Likewise. 2781*867d70fcSchristos * config.bfd: Likewise. 2782*867d70fcSchristos * configure.ac: Likewise. 2783*867d70fcSchristos * cpu-sh.c: Likewise. 2784*867d70fcSchristos * elf32-sh-relocs.h: Likewise. 2785*867d70fcSchristos * elf32-sh.c: Likewise. 2786*867d70fcSchristos * targets.c: Likewise. 2787*867d70fcSchristos * elf32-sh64-com.c: Delete. 2788*867d70fcSchristos * elf32-sh64.c: Delete. 2789*867d70fcSchristos * elf32-sh64.h: Delete. 2790*867d70fcSchristos * elf64-sh64.c: Delete. 2791*867d70fcSchristos * Makefile.in: Regenerate. 2792*867d70fcSchristos * bfd-in2.h: Regenerate. 2793*867d70fcSchristos * configure: Regenerate. 2794*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2795*867d70fcSchristos 2796*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2797*867d70fcSchristos 2798*867d70fcSchristos * Makefile.am: Remove sh-symbianelf support. 2799*867d70fcSchristos * config.bfd: Likewise. 2800*867d70fcSchristos * configure.ac: Likewise. 2801*867d70fcSchristos * targets.c: Likewise. 2802*867d70fcSchristos * elf32-sh-symbian.c: Delete. 2803*867d70fcSchristos * Makefile.in: Regenerate. 2804*867d70fcSchristos * configure: Regenerate. 2805*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2806*867d70fcSchristos 2807*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2808*867d70fcSchristos 2809*867d70fcSchristos * Makefile.am: Remove vax-bsd and vax-ultrix support. 2810*867d70fcSchristos * config.bfd: Likewise. 2811*867d70fcSchristos * configure.ac: Likewise. 2812*867d70fcSchristos * targets.c: Likewise. 2813*867d70fcSchristos * vaxbsd.c: Delete. 2814*867d70fcSchristos * Makefile.in: Regenerate. 2815*867d70fcSchristos * configure: Regenerate. 2816*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2817*867d70fcSchristos 2818*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2819*867d70fcSchristos 2820*867d70fcSchristos * Makefile.am: Remove w65 support. 2821*867d70fcSchristos * archures.c: Likewise. 2822*867d70fcSchristos * coffcode.h: Likewise. 2823*867d70fcSchristos * config.bfd: Likewise. 2824*867d70fcSchristos * configure.ac: Likewise. 2825*867d70fcSchristos * targets.c: Likewise. 2826*867d70fcSchristos * coff-w65.c: Delete. 2827*867d70fcSchristos * cpu-w65.c: Delete. 2828*867d70fcSchristos * Makefile.in: Regenerate. 2829*867d70fcSchristos * bfd-in2.h: Regenerate. 2830*867d70fcSchristos * configure: Regenerate. 2831*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2832*867d70fcSchristos 2833*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2834*867d70fcSchristos 2835*867d70fcSchristos * Makefile.am: Remove we32k support. 2836*867d70fcSchristos * archures.c: Likewise. 2837*867d70fcSchristos * coffcode.h: Likewise. 2838*867d70fcSchristos * config.bfd: Likewise. 2839*867d70fcSchristos * configure.ac: Likewise. 2840*867d70fcSchristos * targets.c: Likewise. 2841*867d70fcSchristos * coff-we32k.c: Delete. 2842*867d70fcSchristos * cpu-we32k.c: Delete. 2843*867d70fcSchristos * Makefile.in: Regenerate. 2844*867d70fcSchristos * bfd-in2.h: Regenerate. 2845*867d70fcSchristos * configure: Regenerate. 2846*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2847*867d70fcSchristos 2848*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2849*867d70fcSchristos 2850*867d70fcSchristos * Makefile.am: Remove m88k support. 2851*867d70fcSchristos * aoutx.h: Likewise. 2852*867d70fcSchristos * archures.c: Likewise. 2853*867d70fcSchristos * coffcode.h: Likewise. 2854*867d70fcSchristos * coffswap.h: Likewise. 2855*867d70fcSchristos * config.bfd: Likewise. 2856*867d70fcSchristos * configure.ac: Likewise. 2857*867d70fcSchristos * cpu-ns32k.c: Likewise. 2858*867d70fcSchristos * elf32-nds32.c: Likewise. 2859*867d70fcSchristos * mach-o.c: Likewise. 2860*867d70fcSchristos * netbsd-core.c: Likewise. 2861*867d70fcSchristos * reloc.c: Likewise. 2862*867d70fcSchristos * targets.c: Likewise. 2863*867d70fcSchristos * coff-m88k.c: Delete. 2864*867d70fcSchristos * cpu-m88k.c: Delete. 2865*867d70fcSchristos * elf32-m88k.c: Delete. 2866*867d70fcSchristos * hosts/m88kmach3.h: Delete. 2867*867d70fcSchristos * m88kmach3.c: Delete. 2868*867d70fcSchristos * m88kopenbsd.c: Delete. 2869*867d70fcSchristos * Makefile.in: Regenerate. 2870*867d70fcSchristos * bfd-in2.h: Regenerate. 2871*867d70fcSchristos * configure: Regenerate. 2872*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2873*867d70fcSchristos 2874*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2875*867d70fcSchristos 2876*867d70fcSchristos * Makefile.am: Remove i370 support. 2877*867d70fcSchristos * archures.c: Likewise. 2878*867d70fcSchristos * config.bfd: Likewise. 2879*867d70fcSchristos * configure.ac: Likewise. 2880*867d70fcSchristos * targets.c: Likewise. 2881*867d70fcSchristos * cpu-i370.c: Delete. 2882*867d70fcSchristos * elf32-i370.c: Delete. 2883*867d70fcSchristos * Makefile.in: Regenerate. 2884*867d70fcSchristos * bfd-in2.h: Regenerate. 2885*867d70fcSchristos * configure: Regenerate. 2886*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2887*867d70fcSchristos 2888*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2889*867d70fcSchristos 2890*867d70fcSchristos * Makefile.am: Remove h8500 support. 2891*867d70fcSchristos * archures.c: Likewise. 2892*867d70fcSchristos * coffcode.h: Likewise. 2893*867d70fcSchristos * config.bfd: Likewise. 2894*867d70fcSchristos * configure.ac: Likewise. 2895*867d70fcSchristos * targets.c: Likewise. 2896*867d70fcSchristos * coff-h8500.c: Delete. 2897*867d70fcSchristos * cpu-h8500.c: Delete. 2898*867d70fcSchristos * Makefile.in: Regenerate. 2899*867d70fcSchristos * bfd-in2.h: Regenerate. 2900*867d70fcSchristos * configure: Regenerate. 2901*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2902*867d70fcSchristos 2903*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2904*867d70fcSchristos 2905*867d70fcSchristos * Makefile.am: Remove h8300-coff support. 2906*867d70fcSchristos * coffcode.h: Likewise. 2907*867d70fcSchristos * config.bfd: Likewise. 2908*867d70fcSchristos * configure.ac: Likewise. 2909*867d70fcSchristos * reloc16.c: Likewise. 2910*867d70fcSchristos * targets.c: Likewise. 2911*867d70fcSchristos * coff-h8300.c: Delete. 2912*867d70fcSchristos * Makefile.in: Regenerate. 2913*867d70fcSchristos * configure: Regenerate. 2914*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2915*867d70fcSchristos 2916*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2917*867d70fcSchristos 2918*867d70fcSchristos * Makefile.am: Remove IEEE 695 support. 2919*867d70fcSchristos * archures.c: Likewise. 2920*867d70fcSchristos * bfd.c: Likewise. 2921*867d70fcSchristos * config.bfd: Likewise. 2922*867d70fcSchristos * configure.ac: Likewise. 2923*867d70fcSchristos * doc/bfd.texinfo: Likewise. 2924*867d70fcSchristos * doc/bfdint.texi: Likewise. 2925*867d70fcSchristos * doc/bfdsumm.texi: Likewise. 2926*867d70fcSchristos * section.c: Likewise. 2927*867d70fcSchristos * targets.c: Likewise. 2928*867d70fcSchristos * ieee.c: Delete. 2929*867d70fcSchristos * libieee.h: Delete. 2930*867d70fcSchristos * Makefile.in: Regenerate. 2931*867d70fcSchristos * bfd-in2.h: Regenerate. 2932*867d70fcSchristos * configure: Regenerate. 2933*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2934*867d70fcSchristos 2935*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2936*867d70fcSchristos 2937*867d70fcSchristos * config.bfd: Remove tandem support. 2938*867d70fcSchristos 2939*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2940*867d70fcSchristos 2941*867d70fcSchristos * Makefile.am: Remove newsos3 support. 2942*867d70fcSchristos * aoutx.h: Likewise. 2943*867d70fcSchristos * config.bfd: Likewise. 2944*867d70fcSchristos * configure.ac: Likewise. 2945*867d70fcSchristos * targets.c: Likewise. 2946*867d70fcSchristos * newsos3.c: Delete. 2947*867d70fcSchristos * Makefile.in: Regenerate. 2948*867d70fcSchristos * configure: Regenerate. 2949*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2950*867d70fcSchristos 2951*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2952*867d70fcSchristos 2953*867d70fcSchristos * Makefile.am: Remove netware support. 2954*867d70fcSchristos * bfd-in.h: Likewise. 2955*867d70fcSchristos * bfd.c: Likewise. 2956*867d70fcSchristos * config.bfd: Likewise. 2957*867d70fcSchristos * configure.ac: Likewise. 2958*867d70fcSchristos * doc/bfdint.texi: Likewise. 2959*867d70fcSchristos * ecoff.c: Likewise. 2960*867d70fcSchristos * targets.c: Likewise. 2961*867d70fcSchristos * libnlm.h: Delete. 2962*867d70fcSchristos * nlm-target.h: Delete. 2963*867d70fcSchristos * nlm.c: Delete. 2964*867d70fcSchristos * nlm32-alpha.c: Delete. 2965*867d70fcSchristos * nlm32-i386.c: Delete. 2966*867d70fcSchristos * nlm32-ppc.c: Delete. 2967*867d70fcSchristos * nlm32-sparc.c: Delete. 2968*867d70fcSchristos * nlm32.c: Delete. 2969*867d70fcSchristos * nlm64.c: Delete. 2970*867d70fcSchristos * nlmcode.h: Delete. 2971*867d70fcSchristos * nlmswap.h: Delete. 2972*867d70fcSchristos * Makefile.in: Regenerate. 2973*867d70fcSchristos * bfd-in2.h: Regenerate. 2974*867d70fcSchristos * configure: Regenerate. 2975*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 2976*867d70fcSchristos 2977*867d70fcSchristos2018-04-16 Alan Modra <amodra@gmail.com> 2978*867d70fcSchristos 2979*867d70fcSchristos * archures.c: Remove tahoe support. 2980*867d70fcSchristos * config.bfd: Likewise. 2981*867d70fcSchristos * configure.ac: Likewise. 2982*867d70fcSchristos * hosts/tahoe.h: Delete. 2983*867d70fcSchristos * bfd-in2.h: Regenerate. 2984*867d70fcSchristos * configure: Regenerate. 2985*867d70fcSchristos 2986*867d70fcSchristos2018-04-14 Alan Modra <amodra@gmail.com> 2987*867d70fcSchristos 2988*867d70fcSchristos * elf-bfd.h (struct elf_backend_data): Add relropagesize. 2989*867d70fcSchristos * elfxx-target.h (ELF_RELROPAGESIZE): Provide default and 2990*867d70fcSchristos sanity test. 2991*867d70fcSchristos (elfNN_bed): Init relropagesize. 2992*867d70fcSchristos * bfd.c (bfd_emul_get_commonpagesize): Add boolean param to 2993*867d70fcSchristos select relropagesize. 2994*867d70fcSchristos * elf32-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000. 2995*867d70fcSchristos (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE. 2996*867d70fcSchristos (ELF_MINPAGESIZE): Don't define. 2997*867d70fcSchristos * elf64-ppc.c (ELF_COMMONPAGESIZE): Define as 0x1000. 2998*867d70fcSchristos (ELF_RELROPAGESIZE): Define as ELF_MAXPAGESIZE. 2999*867d70fcSchristos * bfd-in2.h: Regenerate. 3000*867d70fcSchristos 3001*867d70fcSchristos2018-04-14 Alan Modra <amodra@gmail.com> 3002*867d70fcSchristos 3003*867d70fcSchristos * elf32-ppc.c (ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Don't depend 3004*867d70fcSchristos on __QNXTARGET__ define. 3005*867d70fcSchristos 3006*867d70fcSchristos2018-04-14 Alan Modra <amodra@gmail.com> 3007*867d70fcSchristos 3008*867d70fcSchristos * config.bfd: Add powerpc-*-lynxos* and powerpc-*-windiss* 3009*867d70fcSchristos to obsolete list. 3010*867d70fcSchristos 3011*867d70fcSchristos2018-04-11 Alan Modra <amodra@gmail.com> 3012*867d70fcSchristos 3013*867d70fcSchristos * aout-adobe.c: Delete. 3014*867d70fcSchristos * bout.c: Delete. 3015*867d70fcSchristos * coff-i860.c: Delete. 3016*867d70fcSchristos * coff-i960.c: Delete. 3017*867d70fcSchristos * cpu-i860.c: Delete. 3018*867d70fcSchristos * cpu-i960.c: Delete. 3019*867d70fcSchristos * elf32-i860.c: Delete. 3020*867d70fcSchristos * elf32-i960.c: Delete. 3021*867d70fcSchristos * hosts/i860mach3.h: Delete. 3022*867d70fcSchristos * Makefile.am: Remove i860, i960, bout, and adobe support. 3023*867d70fcSchristos * archures.c: Remove i860 and i960 support. 3024*867d70fcSchristos * coffcode.h: Likewise. 3025*867d70fcSchristos * reloc.c: Likewise. 3026*867d70fcSchristos * aoutx.h: Comment updates. 3027*867d70fcSchristos * archive.c: Remove BOUT and i960 support. 3028*867d70fcSchristos * bfd.c: Remove BOUT support. 3029*867d70fcSchristos * coffswap.h: Remove i960 support. 3030*867d70fcSchristos * config.bfd: Remove i860, i960 and adobe targets. 3031*867d70fcSchristos * configure.ac: Remove adode, bout, i860, i960, icoff targets. 3032*867d70fcSchristos * targets.c: Likewise. 3033*867d70fcSchristos * ieee.c: Remove i960 support. 3034*867d70fcSchristos * mach-o.c: Remove i860 support. 3035*867d70fcSchristos * Makefile.in: Regenerate. 3036*867d70fcSchristos * bfd-in2.h: Regenerate. 3037*867d70fcSchristos * configure: Regenerate. 3038*867d70fcSchristos * libbfd.h: Regenerate. 3039*867d70fcSchristos * po/SRC-POTFILES.in: Regenerate. 3040*867d70fcSchristos 3041*867d70fcSchristos2018-04-09 Maciej W. Rozycki <macro@mips.com> 3042*867d70fcSchristos 3043*867d70fcSchristos * elf64-mips.c (mips_elf64_write_rel): Handle a NULL BFD pointer 3044*867d70fcSchristos in the BFD symbol referred by the relocation. 3045*867d70fcSchristos (mips_elf64_write_rela): Likewise. 3046*867d70fcSchristos 3047*867d70fcSchristos2018-04-09 Maciej W. Rozycki <macro@mips.com> 3048*867d70fcSchristos 3049*867d70fcSchristos * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Issue an 3050*867d70fcSchristos error for out-of-range `r_sym' values. 3051*867d70fcSchristos 3052*867d70fcSchristos2018-04-09 Alan Modra <amodra@gmail.com> 3053*867d70fcSchristos 3054*867d70fcSchristos * elf64-ppc.c (struct _ppc64_elf_section_data): Add has_pltcall field. 3055*867d70fcSchristos (struct ppc_link_hash_table): Add can_convert_all_inline_plt. 3056*867d70fcSchristos (ppc64_elf_check_relocs): Set has_pltcall. 3057*867d70fcSchristos (ppc64_elf_adjust_dynamic_symbol): Discard some PLT entries. 3058*867d70fcSchristos (ppc64_elf_inline_plt): New function. 3059*867d70fcSchristos (ppc64_elf_size_dynamic_sections): Discard some PLT entries for locals. 3060*867d70fcSchristos * elf64-ppc.h (ppc64_elf_inline_plt): Declare. 3061*867d70fcSchristos * elf32-ppc.c (has_pltcall): Define. 3062*867d70fcSchristos (struct ppc_elf_link_hash_table): Add can_convert_all_inline_plt. 3063*867d70fcSchristos (ppc_elf_check_relocs): Set has_pltcall. 3064*867d70fcSchristos (ppc_elf_inline_plt): New function. 3065*867d70fcSchristos (ppc_elf_adjust_dynamic_symbol): Discard some PLT entries. 3066*867d70fcSchristos (ppc_elf_size_dynamic_sections): Likewise. 3067*867d70fcSchristos * elf32-ppc.h (ppc_elf_inline_plt): Declare. 3068*867d70fcSchristos 3069*867d70fcSchristos2018-04-09 Alan Modra <amodra@gmail.com> 3070*867d70fcSchristos 3071*867d70fcSchristos * elf32-ppc.c (ppc_elf_howto_raw): Add PLTSEQ and PLTCALL howtos. 3072*867d70fcSchristos (is_plt_seq_reloc): New function. 3073*867d70fcSchristos (ppc_elf_check_relocs): Handle PLTSEQ and PLTCALL relocs. 3074*867d70fcSchristos (ppc_elf_tls_optimize): Handle inline plt call sequence. 3075*867d70fcSchristos (ppc_elf_relax_section): Handle PLTCALL reloc. 3076*867d70fcSchristos (ppc_elf_relocate_section): Nop out inline plt call sequence when 3077*867d70fcSchristos resolving locally. 3078*867d70fcSchristos * elf64-ppc.c (ppc64_elf_howto_raw): Add R_PPC64_PLTSEQ and 3079*867d70fcSchristos R_PPC64_PLTCALL entries. Comment R_PPC64_TOCSAVE. 3080*867d70fcSchristos (has_tls_get_addr_call): Correct comment. 3081*867d70fcSchristos (is_branch_reloc): Add PLTCALL. 3082*867d70fcSchristos (is_plt_seq_reloc): New function. 3083*867d70fcSchristos (ppc64_elf_check_relocs): Handle PLT16_LO_DS reloc. Set 3084*867d70fcSchristos has_tls_reloc for R_PPC64_TLSGD and R_PPC64_TLSLD. Create plt 3085*867d70fcSchristos entry for R_PPC64_PLTCALL. 3086*867d70fcSchristos (ppc64_elf_tls_optimize): Handle inline plt call sequence. 3087*867d70fcSchristos (ppc_type_of_stub): Handle PLTCALL reloc. 3088*867d70fcSchristos (toc_adjusting_stub_needed): Likewise. 3089*867d70fcSchristos (ppc64_elf_relocate_section): Set "can_plt_call" for PLTCALL 3090*867d70fcSchristos reloc insn. Nop out inline plt call sequence when resolving 3091*867d70fcSchristos locally. Handle __tls_get_addr inline plt call optimization. 3092*867d70fcSchristos 3093*867d70fcSchristos2018-04-09 Alan Modra <amodra@gmail.com> 3094*867d70fcSchristos 3095*867d70fcSchristos * elf64-ppc.c (LOCAL_PLT_ENTRY_SIZE): Define. 3096*867d70fcSchristos (struct ppc_stub_hash_entry): Add symtype field. 3097*867d70fcSchristos (PLT_KEEP): Define. 3098*867d70fcSchristos (struct ppc_link_hash_table): Add pltlocal and relpltlocal. 3099*867d70fcSchristos (create_linkage_sections): Create pltlocal and relpltlocal. 3100*867d70fcSchristos (ppc64_elf_check_relocs): Allow PLT relocs on local symbols. 3101*867d70fcSchristos Set PLT_KEEP. 3102*867d70fcSchristos (ppc64_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls. 3103*867d70fcSchristos (allocate_dynrelocs): Allocate pltlocal and relpltlocal. 3104*867d70fcSchristos (ppc64_elf_size_dynamic_sections): Size pltlocal and relpltlocal. 3105*867d70fcSchristos Keep PLT entries for inline calls against locals. 3106*867d70fcSchristos (ppc_build_one_stub): Use pltlocal as appropriate. 3107*867d70fcSchristos (ppc_size_one_stub): Likewise. 3108*867d70fcSchristos (ppc64_elf_size_stubs): Set symtype. 3109*867d70fcSchristos (build_global_entry_stubs_and_plt): Init pltlocal and write 3110*867d70fcSchristos relpltlocal for globals. 3111*867d70fcSchristos (write_plt_relocs_for_local_syms): Likewise for local syms. 3112*867d70fcSchristos (ppc64_elf_relocate_section): Support PLT for local syms. 3113*867d70fcSchristos * elf32-ppc.c (PLT_KEEP): Define. 3114*867d70fcSchristos (struct ppc_elf_link_hash_table): Add pltlocal and relpltlocal. 3115*867d70fcSchristos (ppc_elf_create_glink): Create pltlocal and relpltlocal. 3116*867d70fcSchristos (ppc_elf_check_relocs): Allow PLT relocs on local symbols. 3117*867d70fcSchristos Set PLT_KEEP. Adjust update_local_sym_info call. 3118*867d70fcSchristos (ppc_elf_adjust_dynamic_symbol): Keep PLT entries for inline calls. 3119*867d70fcSchristos (allocate_dynrelocs): Allocate pltlocal and relpltlocal. 3120*867d70fcSchristos (ppc_elf_size_dynamic_sections): Size pltlocal and relpltlocal. 3121*867d70fcSchristos (ppc_elf_relocate_section): Support PLT16 relocs for local syms. 3122*867d70fcSchristos (write_global_sym_plt): Init pltlocal and write relpltlocal. 3123*867d70fcSchristos (ppc_finish_symbols): Likewise for locals. 3124*867d70fcSchristos 3125*867d70fcSchristos2018-04-09 Alan Modra <amodra@gmail.com> 3126*867d70fcSchristos 3127*867d70fcSchristos * elf64-ppc.c (ppc_build_one_stub): Move output of PLT relocs 3128*867d70fcSchristos for local symbols to.. 3129*867d70fcSchristos (write_plt_relocs_for_local_syms): ..here. New function. 3130*867d70fcSchristos (ppc64_elf_finish_dynamic_symbol): Move output of PLT relocs for 3131*867d70fcSchristos global symbols to.. 3132*867d70fcSchristos (build_global_entry_stubs_and_plt): ..here. Rename from 3133*867d70fcSchristos build_global_entry_stubs. 3134*867d70fcSchristos (ppc64_elf_build_stubs): Always call build_global_entry_stubs_and_plt. 3135*867d70fcSchristos Call write_plt_relocs_for_local_syms. 3136*867d70fcSchristos * elf32-ppc.c (get_sym_h): New function. 3137*867d70fcSchristos (ppc_elf_relax_section): Use get_sym_h. 3138*867d70fcSchristos (ppc_elf_relocate_section): Move output of PLT relocs and glink 3139*867d70fcSchristos stubs for local symbols to.. 3140*867d70fcSchristos (ppc_finish_symbols): ..here. New function. 3141*867d70fcSchristos (ppc_elf_finish_dynamic_symbol): Move output of PLT relocs for 3142*867d70fcSchristos global syms to.. 3143*867d70fcSchristos (write_global_sym_plt): ..here. New function. 3144*867d70fcSchristos * elf32-ppc.h (ppc_elf_modify_segment_map): Delete attribute. 3145*867d70fcSchristos (ppc_finish_symbols): Declare. 3146*867d70fcSchristos 3147*867d70fcSchristos2018-04-09 Alan Modra <amodra@gmail.com> 3148*867d70fcSchristos 3149*867d70fcSchristos * elf32-ppc.c (ppc_elf_check_relocs): Handle PLT16 relocs. 3150*867d70fcSchristos (ppc_elf_relocate_section): Likewise. 3151*867d70fcSchristos * elf64-ppc.c (ppc64_elf_check_relocs): Handle PLT16_LO_DS. 3152*867d70fcSchristos (ppc64_elf_relocate_section): Likewise. Correct PLT16 3153*867d70fcSchristos resolution to plt entry relative to toc pointer. 3154*867d70fcSchristos 3155*867d70fcSchristos2018-04-09 Alan Modra <amodra@gmail.com> 3156*867d70fcSchristos 3157*867d70fcSchristos * elf64-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, 3158*867d70fcSchristos TLS_TPRELGD, TLS_EXPLICIT): Renumber. Test TLS_TLS throughout 3159*867d70fcSchristos file when other TLS flags are tested in a mask. 3160*867d70fcSchristos (TLS_MARK, NON_GOT): Define. 3161*867d70fcSchristos (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well. 3162*867d70fcSchristos (update_local_sym_info): Don't create got entry when NON_GOT. 3163*867d70fcSchristos (ppc64_elf_check_relocs): Pass NON_GOT with PLT_IFUNC. 3164*867d70fcSchristos Set TLS_MARK. 3165*867d70fcSchristos (get_tls_mask): Do toc lookup if tls_mask is just TLS_MARK. 3166*867d70fcSchristos (ppc64_elf_relocate_section): Likewise. 3167*867d70fcSchristos (ppc64_elf_tls_optimize): Don't attempt to optimize indirect 3168*867d70fcSchristos __tls_get_addr calls lacking a marker reloc. 3169*867d70fcSchristos * elf32-ppc.c (TLS_TLS, TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, 3170*867d70fcSchristos TLS_TPRELGD): Renumber. Update comment. 3171*867d70fcSchristos (TLS_MARK, NON_GOT): Define. 3172*867d70fcSchristos (PLT_IFUNC): Redefine, and test TLS_TLS throughout file as well. 3173*867d70fcSchristos (update_local_sym_info): Don't create got entry when NON_GOT. 3174*867d70fcSchristos (ppc_elf_check_relocs): Pass NON_GOT with PLT_IFUNC. 3175*867d70fcSchristos Set TLS_MARK. 3176*867d70fcSchristos (ppc_elf_tls_optimize): Don't attempt to optimize indirect 3177*867d70fcSchristos __tls_get_addr calls lacking a marker reloc. 3178*867d70fcSchristos 3179*867d70fcSchristos2018-04-06 H.J. Lu <hongjiu.lu@intel.com> 3180*867d70fcSchristos 3181*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_info_to_howto): Don't mask out 3182*867d70fcSchristos R_X86_64_converted_reloc_bit. 3183*867d70fcSchristos 3184*867d70fcSchristos2018-04-05 H.J. Lu <hongjiu.lu@intel.com> 3185*867d70fcSchristos 3186*867d70fcSchristos PR gas/22318 3187*867d70fcSchristos * configure: Regenerated. 3188*867d70fcSchristos 3189*867d70fcSchristos2018-04-05 Alan Modra <amodra@gmail.com> 3190*867d70fcSchristos 3191*867d70fcSchristos * elf-hppa.h (elf_hppa_info_to_howto): Init howto to NULL. 3192*867d70fcSchristos (elf_hppa_info_to_howto_rel): Likewise. 3193*867d70fcSchristos 3194*867d70fcSchristos2018-04-04 Maciej W. Rozycki <macro@mips.com> 3195*867d70fcSchristos 3196*867d70fcSchristos * elf-hppa.h (elf_hppa_info_to_howto): Also return 3197*867d70fcSchristos unsuccessfully for unimplemented relocations. 3198*867d70fcSchristos (elf_hppa_info_to_howto_rel): Likewise. 3199*867d70fcSchristos 3200*867d70fcSchristos2018-04-04 Maciej W. Rozycki <macro@mips.com> 3201*867d70fcSchristos 3202*867d70fcSchristos * elf32-i860.c (lookup_howto): Add `abfd' parameter. Set the 3203*867d70fcSchristos `bfd_error_bad_value' error and call `_bfd_error_handler' on a 3204*867d70fcSchristos howto lookup failure. 3205*867d70fcSchristos (elf32_i860_reloc_type_lookup): Adjust `lookup_howto' call 3206*867d70fcSchristos accordingly. 3207*867d70fcSchristos (elf32_i860_info_to_howto_rela): Likewise. 3208*867d70fcSchristos (elf32_i860_relocate_splitn): Likewise. 3209*867d70fcSchristos (elf32_i860_relocate_pc16): Likewise. 3210*867d70fcSchristos (elf32_i860_relocate_pc26): Likewise. 3211*867d70fcSchristos (elf32_i860_relocate_section): Likewise. 3212*867d70fcSchristos 3213*867d70fcSchristos2018-04-04 Maciej W. Rozycki <macro@mips.com> 3214*867d70fcSchristos 3215*867d70fcSchristos * elf32-visium.c (visium_info_to_howto_rela): Correct the range 3216*867d70fcSchristos check for `visium_elf_howto_table' table access. 3217*867d70fcSchristos 3218*867d70fcSchristos2018-04-04 Maciej W. Rozycki <macro@mips.com> 3219*867d70fcSchristos 3220*867d70fcSchristos * elf32-iq2000.c (iq2000_info_to_howto_rela): Correct the range 3221*867d70fcSchristos check for `iq2000_elf_howto_table' table access. 3222*867d70fcSchristos 3223*867d70fcSchristos2018-04-04 Maciej W. Rozycki <macro@mips.com> 3224*867d70fcSchristos 3225*867d70fcSchristos * elf32-frv.c (frv_info_to_howto_rela): Correct the range check 3226*867d70fcSchristos for `elf32_frv_howto_table' table access. 3227*867d70fcSchristos 3228*867d70fcSchristos2018-04-04 Maciej W. Rozycki <macro@mips.com> 3229*867d70fcSchristos 3230*867d70fcSchristos * elf32-mips.c (mips_elf32_rtype_to_howto): Also return 3231*867d70fcSchristos unsuccessfully for placeholder howtos. 3232*867d70fcSchristos * elf64-mips.c (mips_elf64_rtype_to_howto): Likewise. 3233*867d70fcSchristos * elfn32-mips.c (mips_elf_n32_rtype_to_howto): Likewise. 3234*867d70fcSchristos 3235*867d70fcSchristos2018-03-29 Maciej W. Rozycki <macro@mips.com> 3236*867d70fcSchristos 3237*867d70fcSchristos * elf32-mips.c (mips_info_to_howto_rel): Remove the calls to 3238*867d70fcSchristos `_bfd_error_handler' and to set the `bfd_error_bad_value' error. 3239*867d70fcSchristos 3240*867d70fcSchristos2018-03-28 Maciej W. Rozycki <macro@mips.com> 3241*867d70fcSchristos 3242*867d70fcSchristos * elf-hppa.h (elf_hppa_info_to_howto_rel): Remove 3243*867d70fcSchristos ATTRIBUTE_UNUSED from `abfd'. 3244*867d70fcSchristos 3245*867d70fcSchristos2018-03-28 Maciej W. Rozycki <macro@mips.com> 3246*867d70fcSchristos 3247*867d70fcSchristos * elf-hppa.h (elf_hppa_info_to_howto_rel): Correct 3248*867d70fcSchristos `_bfd_error_handler' call formatting. 3249*867d70fcSchristos 3250*867d70fcSchristos2018-03-28 Maciej W. Rozycki <macro@mips.com> 3251*867d70fcSchristos 3252*867d70fcSchristos * elf32-mips.c (mips_info_to_howto_rel): Call 3253*867d70fcSchristos `mips_elf32_rtype_to_howto' directly rather than via 3254*867d70fcSchristos `->elf_backend_mips_rtype_to_howto'. 3255*867d70fcSchristos 3256*867d70fcSchristos2018-03-28 Renlin Li <renlin.li@arm.com> 3257*867d70fcSchristos 3258*867d70fcSchristos PR ld/22970 3259*867d70fcSchristos * elfnn-aarch64.c (IS_AARCH64_TLS_RELOC): Add cases for 3260*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12, 3261*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 3262*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12, 3263*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 3264*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12, 3265*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 3266*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12, 3267*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC. 3268*867d70fcSchristos (elfNN_aarch64_final_link_relocate): Support new relocations. 3269*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Support new 3270*867d70fcSchristos relocations. 3271*867d70fcSchristos (_bfd_aarch64_elf_resolve_relocation): Support new relocations. 3272*867d70fcSchristos 3273*867d70fcSchristos2018-03-28 Renlin Li <renlin.li@arm.com> 3274*867d70fcSchristos 3275*867d70fcSchristos PR ld/22970 3276*867d70fcSchristos * reloc.c: Add BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12 3277*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12_NC, 3278*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12, 3279*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 3280*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12, 3281*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 3282*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12, 3283*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 3284*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12, 3285*867d70fcSchristos BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC. 3286*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add table entry for 3287*867d70fcSchristos TLSLE_LDST16_TPREL_LO12, 3288*867d70fcSchristos TLSLE_LDST16_TPREL_LO12_NC, 3289*867d70fcSchristos TLSLE_LDST32_TPREL_LO12, 3290*867d70fcSchristos TLSLE_LDST32_TPREL_LO12_NC, 3291*867d70fcSchristos TLSLE_LDST64_TPREL_LO12, 3292*867d70fcSchristos TLSLE_LDST64_TPREL_LO12_NC, 3293*867d70fcSchristos TLSLE_LDST8_TPREL_LO12, 3294*867d70fcSchristos TLSLE_LDST8_TPREL_LO12_NC. 3295*867d70fcSchristos * bfd-in2.h: Regenerated. 3296*867d70fcSchristos * libbfd.h: Regenerated. 3297*867d70fcSchristos 3298*867d70fcSchristos2018-03-28 Eric Botcazou <ebotcazou@adacore.com> 3299*867d70fcSchristos 3300*867d70fcSchristos PR ld/22972 3301*867d70fcSchristos * elfxx-sparc.c (struct _bfd_sparc_elf_link_hash_entry): Add new flag 3302*867d70fcSchristos has_old_style_got_reloc. 3303*867d70fcSchristos (_bfd_sparc_elf_check_relocs) <GOT relocations>: Set it for old-style 3304*867d70fcSchristos relocations. Fix a couple of long lines. 3305*867d70fcSchristos (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: Do not generate 3306*867d70fcSchristos a R_SPARC_NONE for the GOT slot if the symbol is also subject to old-style 3307*867d70fcSchristos GOT relocations. 3308*867d70fcSchristos 3309*867d70fcSchristos2018-03-25 H.J. Lu <hongjiu.lu@intel.com> 3310*867d70fcSchristos 3311*867d70fcSchristos PR ld/23000 3312*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_finish_dynamic_sections): Add 3313*867d70fcSchristos ENDBR64 to the TLSDESC PLT entry. 3314*867d70fcSchristos 3315*867d70fcSchristos2018-03-21 Alan Modra <amodra@gmail.com> 3316*867d70fcSchristos 3317*867d70fcSchristos * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Trim uninteresting 3318*867d70fcSchristos symbols. Use size_t counts. Delete redundant opd test. 3319*867d70fcSchristos 3320*867d70fcSchristos2018-03-21 Alan Modra <amodra@gmail.com> 3321*867d70fcSchristos 3322*867d70fcSchristos * elf32-ppc.c (ppc_elf_tls_optimize): Delete locsyms. 3323*867d70fcSchristos 3324*867d70fcSchristos2018-03-21 Alan Modra <amodra@gmail.com> 3325*867d70fcSchristos 3326*867d70fcSchristos * elf32-ppc.c (struct ppc_elf_link_hash_entry): Make tls_mask 3327*867d70fcSchristos field unsigned. 3328*867d70fcSchristos (update_local_sym_info): Likewise for local_got_tls_masks. 3329*867d70fcSchristos (ppc_elf_tls_optimize): Likewise for lgot_masks. 3330*867d70fcSchristos 3331*867d70fcSchristos2018-03-21 Alan Modra <amodra@gmail.com> 3332*867d70fcSchristos 3333*867d70fcSchristos * elf64-ppc.c (ppc_size_one_stub): Fix comment typo. 3334*867d70fcSchristos (ppc64_elf_layout_multitoc): Allocate relocs for tprel as we 3335*867d70fcSchristos do in size_dynamic_sections. 3336*867d70fcSchristos 3337*867d70fcSchristos2018-03-21 Alan Modra <amodra@gmail.com> 3338*867d70fcSchristos 3339*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section): Don't access rel[1] 3340*867d70fcSchristos without first checking array bounds. 3341*867d70fcSchristos * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 3342*867d70fcSchristos 3343*867d70fcSchristos2018-03-20 H.J. Lu <hongjiu.lu@intel.com> 3344*867d70fcSchristos 3345*867d70fcSchristos PR ld/22983 3346*867d70fcSchristos * elflink.c (bfd_elf_link_mark_dynamic_symbol): Set 3347*867d70fcSchristos non_ir_ref_dynamic if a symbol is made dynamic by --dynamic-list. 3348*867d70fcSchristos 3349*867d70fcSchristos2018-03-19 Nick Clifton <nickc@redhat.com> 3350*867d70fcSchristos 3351*867d70fcSchristos * po/es.po: Updated Spanish translation. 3352*867d70fcSchristos 3353*867d70fcSchristos2018-03-15 Max Filippov <jcmvbkbc@gmail.com> 3354*867d70fcSchristos 3355*867d70fcSchristos * elf32-xtensa.c (xlate_map_entry): Change types of address 3356*867d70fcSchristos fields from 'unsigned' to 'bfd_vma'. 3357*867d70fcSchristos (xlate_offset_with_removed_text): Use struct xlate_map_entry as 3358*867d70fcSchristos the key argument to bsearch. Allow offsets past the end of a 3359*867d70fcSchristos section, use the last map entry for translation of such offsets. 3360*867d70fcSchristos 3361*867d70fcSchristos2018-03-15 Kuan-Lin Chen <kuanlinchentw@gmail.com> 3362*867d70fcSchristos 3363*867d70fcSchristos * elf32-nds32.c (nds32_elf_ex9_build_hash_table): Removed. 3364*867d70fcSchristos Not support the target feature. 3365*867d70fcSchristos (nds32_elf_ex9_itb_base): Likewise. 3366*867d70fcSchristos (nds32_elf_ex9_import_table): Likewise. 3367*867d70fcSchristos (nds32_elf_ex9_finish): Likewise. 3368*867d70fcSchristos (nds32_elf_ex9_reloc_jmp): Likewise. 3369*867d70fcSchristos (nds32_elf_get_insn_with_reg): Likewise. 3370*867d70fcSchristos (nds32_get_local_syms): Likewise. 3371*867d70fcSchristos (nds32_elf_ex9_replace_instruction): Likewise. 3372*867d70fcSchristos (nds32_elf_ifc_calc): Likewise. 3373*867d70fcSchristos (nds32_elf_ifc_finish): Likewise. 3374*867d70fcSchristos (nds32_elf_ifc_replace): Likewise. 3375*867d70fcSchristos (nds32_elf_ifc_reloc): Likewise. 3376*867d70fcSchristos 3377*867d70fcSchristos2018-03-14 Alan Modra <amodra@gmail.com> 3378*867d70fcSchristos 3379*867d70fcSchristos * elf64-ppc.c (sfpr_define): Adjust for stub_sec size having 3380*867d70fcSchristos sfpr size added before defining alias symbols. 3381*867d70fcSchristos (ppc64_elf_build_stubs): Add stub section padding before 3382*867d70fcSchristos copying sfpr contents and defining save/restore alias symbols. 3383*867d70fcSchristos 3384*867d70fcSchristos2018-03-14 H.J. Lu <hongjiu.lu@intel.com> 3385*867d70fcSchristos 3386*867d70fcSchristos PR ld/20882 3387*867d70fcSchristos * elflink.c (elf_gc_mark_debug_section): Also check the local 3388*867d70fcSchristos debug definition section. 3389*867d70fcSchristos 3390*867d70fcSchristos2018-03-13 Nick Clifton <nickc@redhat.com> 3391*867d70fcSchristos 3392*867d70fcSchristos PR 22113 3393*867d70fcSchristos * pei-x86_64.c (pex64_get_unwind_info): Change to a boolean 3394*867d70fcSchristos function. Add an end address parameter. Check access of the data 3395*867d70fcSchristos pointer to make sure that they do not extend beyond the end 3396*867d70fcSchristos address. Return FALSE if any check fails. Add the end address 3397*867d70fcSchristos pointer to the ui structure. 3398*867d70fcSchristos (pex64_xdata_print_uwd_codes): Check accesses of the raw unwind 3399*867d70fcSchristos codes to make sure that they do not extend beyond the end address 3400*867d70fcSchristos pointer. Print an error message and return immediately if any 3401*867d70fcSchristos check fails. 3402*867d70fcSchristos 3403*867d70fcSchristos2018-03-09 Nick Clifton <nickc@redhat.com> 3404*867d70fcSchristos 3405*867d70fcSchristos * elf64-s390.c (elf_s390_relocate_section): Move check for 3406*867d70fcSchristos relocations against non-allocated sections to before the code that 3407*867d70fcSchristos handles ifunc relocations. 3408*867d70fcSchristos * elf32-s390.c (elf_s390_relocate_section): Likewise. 3409*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Treat 3410*867d70fcSchristos relocs against IFUNC symbols in non-allocated sections as relocs 3411*867d70fcSchristos against FUNC symbols. 3412*867d70fcSchristos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 3413*867d70fcSchristos 3414*867d70fcSchristos2018-03-08 H.J. Lu <hongjiu.lu@intel.com> 3415*867d70fcSchristos 3416*867d70fcSchristos PR ld/22929 3417*867d70fcSchristos * elf32-i386.c (elf_i386_relocate_section): Treat relocation 3418*867d70fcSchristos against IFUNC symbol in SHT_NOTE section without SHF_ALLOC as 3419*867d70fcSchristos relocation against FUNC symbol. 3420*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise. 3421*867d70fcSchristos 3422*867d70fcSchristos2018-03-07 Renlin Li <renlin.li@arm.com> 3423*867d70fcSchristos 3424*867d70fcSchristos PR ld/20402 3425*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Check absolute 3426*867d70fcSchristos symbol, and don't emit relocation in specific case. 3427*867d70fcSchristos 3428*867d70fcSchristos2018-03-07 Alan Modra <amodra@gmail.com> 3429*867d70fcSchristos 3430*867d70fcSchristos * elf64-mips.c (mips_elf64_rtype_to_howto): Return NULL on error. 3431*867d70fcSchristos (mips_elf64_slurp_one_reloc_table): Pass on error. 3432*867d70fcSchristos 3433*867d70fcSchristos2018-03-03 James Cowgill <james.cowgill@mips.com> 3434*867d70fcSchristos Maciej W. Rozycki <macro@mips.com> 3435*867d70fcSchristos 3436*867d70fcSchristos PR ld/21900 3437*867d70fcSchristos * elfxx-mips.c (mips_elf_calculate_relocation): Only return 3438*867d70fcSchristos after calling `undefined_symbol' hook if this is an error 3439*867d70fcSchristos condition. Assume the value of 0 for the symbol requested 3440*867d70fcSchristos otherwise. 3441*867d70fcSchristos 3442*867d70fcSchristos2018-03-02 Jim Wilson <jimw@sifive.com> 3443*867d70fcSchristos 3444*867d70fcSchristos PR 22903 3445*867d70fcSchristos * elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Add 8 bytes for branch 3446*867d70fcSchristos and nop instead of 4. 3447*867d70fcSchristos (elfNN_arch64_build_stubs): Add nop after branch. Increase size by 3448*867d70fcSchristos 8 instead of 4. 3449*867d70fcSchristos 3450*867d70fcSchristos2018-03-01 Jim Wilson <jimw@sifive.com> 3451*867d70fcSchristos 3452*867d70fcSchristos PR 22756 3453*867d70fcSchristos * elfnn-riscv.c (riscv_relax_delete_bytes): When adjust st_size, use 3454*867d70fcSchristos else if instead of if. 3455*867d70fcSchristos 3456*867d70fcSchristos2018-03-01 Alan Modra <amodra@gmail.com> 3457*867d70fcSchristos 3458*867d70fcSchristos * elf32-ft32.c (ft32_info_to_howto_rela): Correct range test. 3459*867d70fcSchristos 3460*867d70fcSchristos2018-02-28 Alan Modra <amodra@gmail.com> 3461*867d70fcSchristos 3462*867d70fcSchristos PR 22887 3463*867d70fcSchristos * aoutx.h (swap_std_reloc_in): Correct r_index bound check. 3464*867d70fcSchristos 3465*867d70fcSchristos2018-02-28 Nick Clifton <nickc@redhat.com> 3466*867d70fcSchristos 3467*867d70fcSchristos PR 22895 3468*867d70fcSchristos PR 22893 3469*867d70fcSchristos * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block 3470*867d70fcSchristos pointer. Drop unused abfd parameter. Check the size of the block 3471*867d70fcSchristos before initialising the data field. Return the end pointer if the 3472*867d70fcSchristos size is invalid. 3473*867d70fcSchristos (read_attribute_value): Adjust invocations of read_n_bytes. 3474*867d70fcSchristos 3475*867d70fcSchristos PR 22894 3476*867d70fcSchristos * dwarf1.c (parse_die): Check the length of form blocks before 3477*867d70fcSchristos advancing the data pointer. 3478*867d70fcSchristos 3479*867d70fcSchristos2018-02-28 Alan Modra <amodra@gmail.com> 3480*867d70fcSchristos 3481*867d70fcSchristos PR 22887 3482*867d70fcSchristos * aoutx.h (translate_symbol_table): Print an error message and set 3483*867d70fcSchristos bfd_error on finding an invalid name string offset. 3484*867d70fcSchristos 3485*867d70fcSchristos2018-02-27 H.J. Lu <hongjiu.lu@intel.com> 3486*867d70fcSchristos 3487*867d70fcSchristos * config.in: Regenerated. 3488*867d70fcSchristos * configure: Likewise. 3489*867d70fcSchristos * configure.ac: Add --enable-separate-code. 3490*867d70fcSchristos (DEFAULT_LD_Z_SEPARATE_CODE): New AC_DEFINE_UNQUOTED. Default 3491*867d70fcSchristos to 1 for Linux/x86 targets, 3492*867d70fcSchristos * elf64-x86-64.c (ELF_MAXPAGESIZE): Set to 0x1000 if 3493*867d70fcSchristos DEFAULT_LD_Z_SEPARATE_CODE is 1. 3494*867d70fcSchristos 3495*867d70fcSchristos2018-02-27 Nick Clifton <nickc@redhat.com> 3496*867d70fcSchristos 3497*867d70fcSchristos * aout-cris.c (swap_ext_reloc_out): Standadize error/warning 3498*867d70fcSchristos message. 3499*867d70fcSchristos * elf-hppa.h (elf_hppa_info_to_howto_rel): Likewise. 3500*867d70fcSchristos * elf32-i386.c (elf_i386_reloc_type_lookup): Likewise. 3501*867d70fcSchristos * elf32-xtensa.c (elf_xtensa_reloc_type_lookup): Likewise. 3502*867d70fcSchristos * elf64-ppc.c (ppc64_elf_reloc_type_lookup): Likewise. 3503*867d70fcSchristos * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise. 3504*867d70fcSchristos * elf64-sh64.c (sh_elf64_info_to_howto): Likewise. 3505*867d70fcSchristos * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise. 3506*867d70fcSchristos * elfxx-sparc.c (_bfd_sparc_elf_reloc_type_lookup): Likewise. 3507*867d70fcSchristos * elfxx-tilegx.c (tilegx_reloc_type_lookup): Likewise. 3508*867d70fcSchristos 3509*867d70fcSchristos PR 22875 3510*867d70fcSchristos * elf-bfd.h (struct elf_backend_data): Change the return type of 3511*867d70fcSchristos the elf_info_to_howto and elf_info_to_howto_rel function pointers 3512*867d70fcSchristos to bfd_boolean. 3513*867d70fcSchristos * elfcode.h (elf_slurp_reloc_table_from_section): Check the return 3514*867d70fcSchristos value from the info_to_howto function and fail if that function 3515*867d70fcSchristos failed. 3516*867d70fcSchristos * elf32-h8300.c (elf32_h8_relocate_section): Check return value 3517*867d70fcSchristos from the info_to_howto function. 3518*867d70fcSchristos (elf32_h8_relax_section): Likewise. 3519*867d70fcSchristos * elf32-lm32.c (lm32_elf_relocate_section): Likewise. 3520*867d70fcSchristos * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise. 3521*867d70fcSchristos * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. 3522*867d70fcSchristos * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. 3523*867d70fcSchristos * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. 3524*867d70fcSchristos * elf64-ia64-vms.c (elf64_ia64_relocate_section): Likewise. 3525*867d70fcSchristos * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Likewise. 3526*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_tls_transition): Likewise. 3527*867d70fcSchristos * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise. 3528*867d70fcSchristos * elfnn-riscv.c (riscv_elf_check_relocs): Likewise. 3529*867d70fcSchristos (riscv_elf_relocate_section): Likewise. 3530*867d70fcSchristos * elf-hppa.h (elf_hppa_info_to_howto): Change return type to 3531*867d70fcSchristos bfd_boolean. Issue an error message, set an error value and 3532*867d70fcSchristos return FALSE if the reloc is not recognized. 3533*867d70fcSchristos (elf_hppa_info_to_howto_rel): Likewise. 3534*867d70fcSchristos * elf-m10200.c (mn10200_info_to_howto): Likewise. 3535*867d70fcSchristos * elf-m10300.c (mn10300_info_to_howto): Likewise. 3536*867d70fcSchristos * elf.c (_bfd_elf_no_info_to_howto): Likewise. 3537*867d70fcSchristos * elf32-arc.c (arc_info_to_howto_rel): Likewise. 3538*867d70fcSchristos * elf32-arm.c (elf32_arm_info_to_howto): Likewise. 3539*867d70fcSchristos * elf32-avr.c (avr_info_to_howto_rela): Likewise. 3540*867d70fcSchristos * elf32-bfin.c (bfin_info_to_howto): Likewise. 3541*867d70fcSchristos * elf32-cr16.c (elf_cr16_info_to_howto): Likewise. 3542*867d70fcSchristos * elf32-cr16c.c (elf_cr16c_info_to_howto): Likewise. 3543*867d70fcSchristos * elf32-cris.c (elf_cr16c_info_to_howto_rel) 3544*867d70fcSchristos (cris_info_to_howto_rela): Likewise. 3545*867d70fcSchristos * elf32-crx.c (elf_crx_info_to_howto): Likewise. 3546*867d70fcSchristos * elf32-d10v.c (d10v_info_to_howto_rel): Likewise. 3547*867d70fcSchristos * elf32-d30v.c (d30v_info_to_howto_rel, d30v_info_to_howto_rela): 3548*867d70fcSchristos Likewise. 3549*867d70fcSchristos * elf32-dlx.c (dlx_rtype_to_howto, elf32_dlx_info_to_howto) 3550*867d70fcSchristos (elf32_dlx_info_to_howto_rel): Likewise. 3551*867d70fcSchristos * elf32-epiphany.c (epiphany_info_to_howto_rela): Likewise. 3552*867d70fcSchristos * elf32-fr30.c (fr30_info_to_howto_rela): Likewise. 3553*867d70fcSchristos * elf32-frv.c (frv_info_to_howto_rela) 3554*867d70fcSchristos (frvfdpic_info_to_howto_rel): Likewise. 3555*867d70fcSchristos * elf32-ft32.c (ft32_info_to_howto_rela): Likewise. 3556*867d70fcSchristos * elf32-gen.c (elf_generic_info_to_howto) 3557*867d70fcSchristos (elf_generic_info_to_howto_rel): Likewise. 3558*867d70fcSchristos * elf32-h8300.c (elf32_h8_info_to_howto) 3559*867d70fcSchristos (elf32_h8_info_to_howto_rel): Likewise. 3560*867d70fcSchristos * elf32-i370.c (i370_elf_info_to_howto): Likewise. 3561*867d70fcSchristos * elf32-i386.c (elf_i386_reloc_type_lookup) 3562*867d70fcSchristos (elf_i386_rtype_to_howto, elf_i386_info_to_howto_rel): Likewise. 3563*867d70fcSchristos * elf32-i860.c (lookup_howto, elf32_i860_info_to_howto_rela): 3564*867d70fcSchristos Likewise. 3565*867d70fcSchristos * elf32-i960.c (elf32_i960_info_to_howto_rel): Likewise. 3566*867d70fcSchristos * elf32-ip2k.c (ip2k_info_to_howto_rela): Likewise. 3567*867d70fcSchristos * elf32-iq2000.c (iq2000_info_to_howto_rela): Likewise. 3568*867d70fcSchristos * elf32-lm32.c (lm32_info_to_howto_rela): Likewise. 3569*867d70fcSchristos * elf32-m32c.c (m32c_info_to_howto_rela): Likewise. 3570*867d70fcSchristos * elf32-m32r.c (m32r_info_to_howto_rel, m32r_info_to_howto): 3571*867d70fcSchristos Likewise. 3572*867d70fcSchristos * elf32-m68hc11.c (m68hc11_info_to_howto_rel): Likewise. 3573*867d70fcSchristos * elf32-m68hc12.c (m68hc11_info_to_howto_rel): Likewise. 3574*867d70fcSchristos * elf32-m68k.c (rtype_to_howto): Likewise. 3575*867d70fcSchristos * elf32-mcore.c (mcore_elf_info_to_howto): Likewise. 3576*867d70fcSchristos * elf32-mep.c (mep_info_to_howto_rela): Likewise. 3577*867d70fcSchristos * elf32-metag.c (metag_info_to_howto_rela): Likewise. 3578*867d70fcSchristos * elf32-microblaze.c (microblaze_elf_info_to_howto): Likewise. 3579*867d70fcSchristos * elf32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela): 3580*867d70fcSchristos Likewise. 3581*867d70fcSchristos * elf32-moxie.c (moxie_info_to_howto_rela): Likewise. 3582*867d70fcSchristos * elf32-msp430.c (msp430_info_to_howto_rela): Likewise. 3583*867d70fcSchristos * elf32-mt.c (mt_info_to_howto_rela): Likewise. 3584*867d70fcSchristos * elf32-nds32.c (nds32_info_to_howto_rel, nds32_info_to_howto): 3585*867d70fcSchristos Likewise. 3586*867d70fcSchristos * elf32-nios2.c (nios2_elf32_info_to_howto): Likewise. 3587*867d70fcSchristos * elf32-or1k.c (or1k_info_to_howto_rela): Likewise. 3588*867d70fcSchristos * elf32-pj.c (pj_elf_info_to_howto): Likewise. 3589*867d70fcSchristos * elf32-ppc.c (ppc_elf_info_to_howto): Likewise. 3590*867d70fcSchristos * elf32-pru.c (pru_elf32_info_to_howto): Likewise. 3591*867d70fcSchristos * elf32-rl78.c (rl78_info_to_howto_rela): Likewise. 3592*867d70fcSchristos * elf32-rx.c (rx_info_to_howto_rela): Likewise. 3593*867d70fcSchristos * elf32-s390.c (elf_s390_info_to_howto): Likewise. 3594*867d70fcSchristos * elf32-score.c (s3_bfd_score_info_to_howto) 3595*867d70fcSchristos (_bfd_score_info_to_howto): Likewise. 3596*867d70fcSchristos * elf32-score7.c (s7_bfd_score_info_to_howto): Likewise. 3597*867d70fcSchristos * elf32-sh.c (sh_elf_info_to_howto): Likewise. 3598*867d70fcSchristos * elf32-spu.c (spu_elf_info_to_howto): Likewise. 3599*867d70fcSchristos * elf32-tic6x.c (elf32_tic6x_info_to_howto) 3600*867d70fcSchristos (elf32_tic6x_info_to_howto_rel): Likewise. 3601*867d70fcSchristos * elf32-tilepro.c (tilepro_info_to_howto_rela): Likewise. 3602*867d70fcSchristos * elf32-v850.c (v850_elf_info_to_howto_rel) 3603*867d70fcSchristos (v850_elf_info_to_howto_rela, v800_elf_info_to_howto): Likewise. 3604*867d70fcSchristos * elf32-vax.c (rtype_to_howto): Likewise. 3605*867d70fcSchristos * elf32-visium.c (visium_info_to_howto_rela): Likewise. 3606*867d70fcSchristos * elf32-wasm32.c (elf32_wasm32_rtype_to_howto) 3607*867d70fcSchristos (elf32_wasm32_info_to_howto_rela): Likewise. 3608*867d70fcSchristos * elf32-xc16x.c (elf32_xc16x_info_to_howto): Likewise. 3609*867d70fcSchristos * elf32-xgate.c (xgate_info_to_howto_rel): Likewise. 3610*867d70fcSchristos * elf32-xstormy16.c (xstormy16_info_to_howto_rela): Likewise. 3611*867d70fcSchristos * elf32-xtensa.c (elf_xtensa_info_to_howto_rela): Likewise. 3612*867d70fcSchristos * elf64-alpha.c (elf64_alpha_info_to_howto): Likewise. 3613*867d70fcSchristos * elf64-gen.c (elf_generic_info_to_howto) 3614*867d70fcSchristos (elf_generic_info_to_howto_rel): Likewise. 3615*867d70fcSchristos * elf64-ia64-vms.c (elf64_ia64_info_to_howto): Likewise. 3616*867d70fcSchristos * elf64-mips.c (mips_elf64_info_to_howto_rela): Likewise. 3617*867d70fcSchristos * elf64-mmix.c (mmix_info_to_howto_rela): Likewise. 3618*867d70fcSchristos * elf64-ppc.c (ppc64_elf_info_to_howto): Likewise. 3619*867d70fcSchristos * elf64-s390.c (elf_s390_reloc_type_lookup): Likewise. 3620*867d70fcSchristos * elf64-sh64.c (elf_s390_info_to_howto, sh_elf64_info_to_howto): 3621*867d70fcSchristos Likewise. 3622*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_info_to_howto): Likewise. 3623*867d70fcSchristos * elfn32-mips.c (mips_info_to_howto_rel, mips_info_to_howto_rela): 3624*867d70fcSchristos Likewise. 3625*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_info_to_howto): Likewise. 3626*867d70fcSchristos * elfnn-ia64.c (elfNN_ia64_info_to_howto): Likewise. 3627*867d70fcSchristos * elfnn-riscv.c (riscv_info_to_howto_rela): Likewise. 3628*867d70fcSchristos * elfxx-ia64.c (ia64_elf_reloc_type_lookup): Likewise. 3629*867d70fcSchristos * elfxx-sparc.c (_bfd_sparc_elf_info_to_howto): Likewise. 3630*867d70fcSchristos * elfxx-tilegx.c (tilegx_info_to_howto_rela): Likewise. 3631*867d70fcSchristos * elf32-score.h (s7_bfd_score_info_to_howto): Update prototype. 3632*867d70fcSchristos * elfxx-sparc.h (_bfd_sparc_elf_info_to_howto): Update prototype. 3633*867d70fcSchristos * elfxx-tilegx.h (tilegx_info_to_howto_rela): Update prototype. 3634*867d70fcSchristos * elfxx-target.h (elf_info_to_howto, elf_info_to_howto_rel): 3635*867d70fcSchristos Default to NULL. 3636*867d70fcSchristos 3637*867d70fcSchristos2018-02-26 Jim Wilson <jimw@sifive.com> 3638*867d70fcSchristos Stephan Schreiber <info@fs-driver.org> 3639*867d70fcSchristos 3640*867d70fcSchristos PR 15904 3641*867d70fcSchristos * elfnn-ia64.c (elfNN_ia64_relax_section): After ia64_elf_relax_brl 3642*867d70fcSchristos call, set changed_contents and changed_relocs. Likewise after 3643*867d70fcSchristos successful ia64_elf_relax_br call. 3644*867d70fcSchristos 3645*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3646*867d70fcSchristos 3647*867d70fcSchristos * elf.c (assign_file_positions_except_relocs): Don't segfault 3648*867d70fcSchristos when actual number of phdrs is less than allocated. Delete 3649*867d70fcSchristos outdated comment. Formatting. 3650*867d70fcSchristos 3651*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3652*867d70fcSchristos 3653*867d70fcSchristos * elf-m10300.c, * elf-s390-common.c, * elf32-arc.c, * elf32-cris.c, 3654*867d70fcSchristos * elf32-dlx.c, * elf32-frv.c, * elf32-i370.c, * elf32-lm32.c, 3655*867d70fcSchristos * elf32-m32r.c, * elf32-m68hc1x.c, * elf32-m68k.c, 3656*867d70fcSchristos * elf32-microblaze.c, * elf32-msp430.c, * elf32-nds32.c, 3657*867d70fcSchristos * elf32-nios2.c, * elf32-or1k.c, * elf32-rl78.c, * elf32-rx.c, 3658*867d70fcSchristos * elf32-score.c, * elf32-score7.c, * elf32-sh-symbian.c, 3659*867d70fcSchristos * elf32-sh.c, * elf32-spu.c, * elf32-v850.c, * elf32-xtensa.c, 3660*867d70fcSchristos * elf64-alpha.c, * elf64-ia64-vms.c, * elf64-mmix.c, 3661*867d70fcSchristos * elf64-sh64.c, * elf64-sparc.c, * elfnn-ia64.c, * elfxx-tilegx.c, 3662*867d70fcSchristos * mmo.c, * osf-core.c, * srec.c, * vms-alpha.c: Standardize 3663*867d70fcSchristos error/warning messages. 3664*867d70fcSchristos 3665*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3666*867d70fcSchristos 3667*867d70fcSchristos * archive.c, * bfd.c, * linker.c, * reloc.c, * stabs.c, 3668*867d70fcSchristos * syms.c: Standardize error/warning messages. 3669*867d70fcSchristos 3670*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3671*867d70fcSchristos 3672*867d70fcSchristos * aout-adobe.c, * aout-cris.c, * i386linux.c, * m68klinux.c, 3673*867d70fcSchristos * sparclinux.c, * coff-alpha.c, * coff-arm.c, * coff-mcore.c, 3674*867d70fcSchristos * coffcode.h, * coffgen.c, * cofflink.c, * ecoff.c, * pe-mips.c, 3675*867d70fcSchristos * peXXigen.c, * peicode.h: Standardize error/warning messages. 3676*867d70fcSchristos 3677*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3678*867d70fcSchristos 3679*867d70fcSchristos * elf32-arm.c, * elfnn-aarch64.c: Standardize error/warning messages. 3680*867d70fcSchristos 3681*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3682*867d70fcSchristos 3683*867d70fcSchristos * elfxx-mips.c: Standardize error/warning messages. 3684*867d70fcSchristos 3685*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3686*867d70fcSchristos 3687*867d70fcSchristos * dwarf2.c, * elf-attrs.c, * elf-eh-frame.c, * elf.c, * elf32-gen.c, 3688*867d70fcSchristos * elflink.c: Standardize error/warning messages. Replace use of 3689*867d70fcSchristos linker callback einfo with _bfd_error_handler when possible. 3690*867d70fcSchristos 3691*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3692*867d70fcSchristos 3693*867d70fcSchristos * aoutx.h, * coff-alpha.c, * coff-i860.c, * coff-m68k.c, 3694*867d70fcSchristos * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c, * coff-sh.c, 3695*867d70fcSchristos * coff-tic4x.c, * coff-tic54x.c, * coff-tic80.c, * coff-w65.c, 3696*867d70fcSchristos * elf-bfd.h, * elf-m10300.c, * elf.c, * elf32-avr.c, * elf32-bfin.c, 3697*867d70fcSchristos * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c, * elf32-crx.c, 3698*867d70fcSchristos * elf32-d10v.c, * elf32-d30v.c, * elf32-dlx.c, * elf32-epiphany.c, 3699*867d70fcSchristos * elf32-fr30.c, * elf32-frv.c, * elf32-i370.c, * elf32-i386.c, 3700*867d70fcSchristos * elf32-i960.c, * elf32-ip2k.c, * elf32-iq2000.c, * elf32-lm32.c, 3701*867d70fcSchristos * elf32-m32c.c, * elf32-m32r.c, * elf32-m68hc11.c, * elf32-m68hc12.c, 3702*867d70fcSchristos * elf32-m68k.c, * elf32-mcore.c, * elf32-mep.c, * elf32-metag.c, 3703*867d70fcSchristos * elf32-microblaze.c, * elf32-mips.c, * elf32-moxie.c, 3704*867d70fcSchristos * elf32-msp430.c, * elf32-mt.c, * elf32-nds32.c, * elf32-or1k.c, 3705*867d70fcSchristos * elf32-pj.c, * elf32-ppc.c, * elf32-rl78.c, * elf32-rx.c, 3706*867d70fcSchristos * elf32-s390.c, * elf32-sh.c, * elf32-spu.c, * elf32-tic6x.c, 3707*867d70fcSchristos * elf32-v850.c, * elf32-vax.c, * elf32-visium.c, * elf32-wasm32.c, 3708*867d70fcSchristos * elf32-xgate.c, * elf32-xtensa.c, * elf64-alpha.c, 3709*867d70fcSchristos * elf64-ia64-vms.c, * elf64-mips.c, * elf64-mmix.c, 3710*867d70fcSchristos * elf64-ppc.c, * elf64-s390.c, * elf64-sparc.c, * elf64-x86-64.c, 3711*867d70fcSchristos * elfn32-mips.c, * elfnn-aarch64.c, * elfnn-ia64.c, 3712*867d70fcSchristos * elfnn-riscv.c, * elfxx-mips.c, * elfxx-riscv.c, * elfxx-riscv.h, 3713*867d70fcSchristos * elfxx-sparc.c, * elfxx-sparc.h, * reloc.c: Standardize 3714*867d70fcSchristos unrecognized/unsupported reloc message. 3715*867d70fcSchristos 3716*867d70fcSchristos2018-02-26 Alan Modra <amodra@gmail.com> 3717*867d70fcSchristos 3718*867d70fcSchristos * elf32-ppc.c: Standardize error/warning messages. Use 3719*867d70fcSchristos _bfd_error_handler rather than einfo when einfo features not used. 3720*867d70fcSchristos * elf64-ppc.c: Likewise. 3721*867d70fcSchristos 3722*867d70fcSchristos2018-02-23 Alan Modra <amodra@gmail.com> 3723*867d70fcSchristos 3724*867d70fcSchristos PR 22881 3725*867d70fcSchristos * elf.c (assign_file_positions_for_non_load_sections): Remove RELRO 3726*867d70fcSchristos segment if no matching LOAD segment. 3727*867d70fcSchristos 3728*867d70fcSchristos2018-02-23 Kuan-Lin Chen <kuanlinchentw@gmail.com> 3729*867d70fcSchristos 3730*867d70fcSchristos * elf32-nds32.h: Define mask for ict_model. 3731*867d70fcSchristos 3732*867d70fcSchristos2018-02-20 Jason Duerstock <jason.duerstock@gmail.com> 3733*867d70fcSchristos 3734*867d70fcSchristos * elfnn-ia64.c (elf_backend_can_gc_sections): Enable. 3735*867d70fcSchristos 3736*867d70fcSchristos2018-02-19 Maciej W. Rozycki <macro@mips.com> 3737*867d70fcSchristos 3738*867d70fcSchristos Revert 3739*867d70fcSchristos 2018-01-12 Vlad Ivanov <vlad@ivanov.email> 3740*867d70fcSchristos 3741*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when 3742*867d70fcSchristos .reginfo section has wrong size. 3743*867d70fcSchristos 3744*867d70fcSchristos2018-02-19 Maciej W. Rozycki <macro@mips.com> 3745*867d70fcSchristos 3746*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_always_size_sections): Set 3747*867d70fcSchristos SEC_FIXED_SIZE and SEC_HAS_CONTENTS flags for `.reginfo' and 3748*867d70fcSchristos `.MIPS.abiflags' sections. 3749*867d70fcSchristos (_bfd_mips_elf_final_link): Avoid reading beyond `.reginfo' 3750*867d70fcSchristos section's end. 3751*867d70fcSchristos 3752*867d70fcSchristos2018-02-19 Maciej W. Rozycki <macro@mips.com> 3753*867d70fcSchristos 3754*867d70fcSchristos * section.c (SEC_FIXED_SIZE): New macro. 3755*867d70fcSchristos * bfd-in2.h: Regenerate. 3756*867d70fcSchristos 3757*867d70fcSchristos2018-02-19 Maciej W. Rozycki <macro@mips.com> 3758*867d70fcSchristos 3759*867d70fcSchristos * section.c (SEC_HAS_GOT_REF): Remove macro. 3760*867d70fcSchristos * bfd-in2.h: Regenerate. 3761*867d70fcSchristos 3762*867d70fcSchristos2018-02-19 Alan Modra <amodra@gmail.com> 3763*867d70fcSchristos 3764*867d70fcSchristos * elf-attrs.c (_bfd_elf_parse_attributes): Correct _bfd_error_handler 3765*867d70fcSchristos arguments. 3766*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_final_link): Likewise. 3767*867d70fcSchristos * elfnn-riscv.c (_bfd_riscv_relax_align): Likewise. 3768*867d70fcSchristos (_bfd_riscv_relax_pc): Likewise and fix typos. 3769*867d70fcSchristos * libbfd-in.h (_bfd_error_handler): Add attribute printf. 3770*867d70fcSchristos * libbfd.h: Regenerate. 3771*867d70fcSchristos 3772*867d70fcSchristos2018-02-19 Alan Modra <amodra@gmail.com> 3773*867d70fcSchristos 3774*867d70fcSchristos * dwarf2.c (read_section): Don't use 'll' format modifier. 3775*867d70fcSchristos (find_abstract_instance): Likewise. 3776*867d70fcSchristos * elfcore.h (elf_core_file_p): Likewise. 3777*867d70fcSchristos 3778*867d70fcSchristos2018-02-19 Alan Modra <amodra@gmail.com> 3779*867d70fcSchristos 3780*867d70fcSchristos * bfd-in.h: Include inttypes.h or if not available define 3781*867d70fcSchristos PRId64, PRIu64 and PRIx64. 3782*867d70fcSchristos * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Remove support for L 3783*867d70fcSchristos modifier to print bfd_vma. 3784*867d70fcSchristos * coff-arm.c, * coff-mcore.c, * coff-ppc.c, * coff-rs6000.c, 3785*867d70fcSchristos * coff-sh.c, * coff-tic80.c, * coffcode.h, * coffgen.c, * cofflink.c, 3786*867d70fcSchristos * compress.c, * dwarf2.c, * elf-m10300.c, * elf.c, * elf32-arc.c, 3787*867d70fcSchristos * elf32-arm.c, * elf32-bfin.c, * elf32-cris.c, * elf32-hppa.c, 3788*867d70fcSchristos * elf32-i386.c, * elf32-ip2k.c, * elf32-lm32.c, * elf32-m32r.c, 3789*867d70fcSchristos * elf32-m68k.c, * elf32-metag.c, * elf32-nds32.c, * elf32-nios2.c, 3790*867d70fcSchristos * elf32-ppc.c, * elf32-rx.c, * elf32-s390.c, * elf32-score.c, 3791*867d70fcSchristos * elf32-score7.c, * elf32-sh.c, * elf32-sh64.c, * elf32-spu.c, 3792*867d70fcSchristos * elf32-tic6x.c, * elf32-tilepro.c, * elf32-v850.c, * elf32-vax.c, 3793*867d70fcSchristos * elf32-xtensa.c, * elf64-alpha.c, * elf64-hppa.c, * elf64-ia64-vms.c, 3794*867d70fcSchristos * elf64-mmix.c, * elf64-s390.c, * elf64-sh64.c, * elf64-x86-64.c, 3795*867d70fcSchristos * elfcode.h, * elfcore.h, * elflink.c, * elfnn-aarch64.c, 3796*867d70fcSchristos * elfnn-ia64.c, * elfnn-riscv.c, * elfxx-mips.c, * elfxx-sparc.c, 3797*867d70fcSchristos * elfxx-tilegx.c, * ieee.c, * ihex.c, * mach-o.c, * merge.c, * mmo.c, 3798*867d70fcSchristos * peXXigen.c, * xcofflink.c: Replace use of Lx modifier with PRIx64, 3799*867d70fcSchristos and cast input to uint64_t, and similarly for Ld and Lu. 3800*867d70fcSchristos * bfd-in2.h: Regenerate. 3801*867d70fcSchristos 3802*867d70fcSchristos2018-02-19 Alan Modra <amodra@gmail.com> 3803*867d70fcSchristos 3804*867d70fcSchristos * elf32-arm.c, * elf32-hppa.c, * elf32-lm32.c, * elf32-m32r.c, 3805*867d70fcSchristos * elf32-metag.c, * elf32-nds32.c, * elf32-or1k.c, * elf32-ppc.c, 3806*867d70fcSchristos * elf32-s390.c, * elf32-sh.c, * elf32-tic6x.c, * elf32-tilepro.c, 3807*867d70fcSchristos * elf64-ppc.c, * elf64-s390.c, * elflink.c, * elfnn-aarch64.c, 3808*867d70fcSchristos * elfnn-riscv.c, * elfxx-sparc.c, * elfxx-tilegx.c, * elfxx-x86.c, 3809*867d70fcSchristos * reloc.c: Replace use of %R and %T in format strings passed to 3810*867d70fcSchristos einfo and friends by %pR and %pT. 3811*867d70fcSchristos 3812*867d70fcSchristos2018-02-19 Alan Modra <amodra@gmail.com> 3813*867d70fcSchristos 3814*867d70fcSchristos * bfd.c (_bfd_doprnt, _bfd_doprnt_scan): Handle %pA and %pB in place 3815*867d70fcSchristos of %A and %B. 3816*867d70fcSchristos * aout-adobe.c: Update all messages using %A and %B. 3817*867d70fcSchristos * aout-cris.c: Likewise. 3818*867d70fcSchristos * aoutx.h: Likewise. 3819*867d70fcSchristos * archive.c: Likewise. 3820*867d70fcSchristos * binary.c: Likewise. 3821*867d70fcSchristos * cache.c: Likewise. 3822*867d70fcSchristos * coff-alpha.c: Likewise. 3823*867d70fcSchristos * coff-arm.c: Likewise. 3824*867d70fcSchristos * coff-i860.c: Likewise. 3825*867d70fcSchristos * coff-mcore.c: Likewise. 3826*867d70fcSchristos * coff-ppc.c: Likewise. 3827*867d70fcSchristos * coff-rs6000.c: Likewise. 3828*867d70fcSchristos * coff-sh.c: Likewise. 3829*867d70fcSchristos * coff-tic4x.c: Likewise. 3830*867d70fcSchristos * coff-tic54x.c: Likewise. 3831*867d70fcSchristos * coff-tic80.c: Likewise. 3832*867d70fcSchristos * coff64-rs6000.c: Likewise. 3833*867d70fcSchristos * coffcode.h: Likewise. 3834*867d70fcSchristos * coffgen.c: Likewise. 3835*867d70fcSchristos * cofflink.c: Likewise. 3836*867d70fcSchristos * coffswap.h: Likewise. 3837*867d70fcSchristos * compress.c: Likewise. 3838*867d70fcSchristos * cpu-arm.c: Likewise. 3839*867d70fcSchristos * ecoff.c: Likewise. 3840*867d70fcSchristos * elf-attrs.c: Likewise. 3841*867d70fcSchristos * elf-eh-frame.c: Likewise. 3842*867d70fcSchristos * elf-ifunc.c: Likewise. 3843*867d70fcSchristos * elf-m10300.c: Likewise. 3844*867d70fcSchristos * elf-properties.c: Likewise. 3845*867d70fcSchristos * elf-s390-common.c: Likewise. 3846*867d70fcSchristos * elf.c: Likewise. 3847*867d70fcSchristos * elf32-arc.c: Likewise. 3848*867d70fcSchristos * elf32-arm.c: Likewise. 3849*867d70fcSchristos * elf32-avr.c: Likewise. 3850*867d70fcSchristos * elf32-bfin.c: Likewise. 3851*867d70fcSchristos * elf32-cr16.c: Likewise. 3852*867d70fcSchristos * elf32-cr16c.c: Likewise. 3853*867d70fcSchristos * elf32-cris.c: Likewise. 3854*867d70fcSchristos * elf32-crx.c: Likewise. 3855*867d70fcSchristos * elf32-d10v.c: Likewise. 3856*867d70fcSchristos * elf32-d30v.c: Likewise. 3857*867d70fcSchristos * elf32-epiphany.c: Likewise. 3858*867d70fcSchristos * elf32-fr30.c: Likewise. 3859*867d70fcSchristos * elf32-frv.c: Likewise. 3860*867d70fcSchristos * elf32-gen.c: Likewise. 3861*867d70fcSchristos * elf32-hppa.c: Likewise. 3862*867d70fcSchristos * elf32-i370.c: Likewise. 3863*867d70fcSchristos * elf32-i386.c: Likewise. 3864*867d70fcSchristos * elf32-i960.c: Likewise. 3865*867d70fcSchristos * elf32-ip2k.c: Likewise. 3866*867d70fcSchristos * elf32-iq2000.c: Likewise. 3867*867d70fcSchristos * elf32-lm32.c: Likewise. 3868*867d70fcSchristos * elf32-m32c.c: Likewise. 3869*867d70fcSchristos * elf32-m32r.c: Likewise. 3870*867d70fcSchristos * elf32-m68hc11.c: Likewise. 3871*867d70fcSchristos * elf32-m68hc12.c: Likewise. 3872*867d70fcSchristos * elf32-m68hc1x.c: Likewise. 3873*867d70fcSchristos * elf32-m68k.c: Likewise. 3874*867d70fcSchristos * elf32-mcore.c: Likewise. 3875*867d70fcSchristos * elf32-mep.c: Likewise. 3876*867d70fcSchristos * elf32-metag.c: Likewise. 3877*867d70fcSchristos * elf32-microblaze.c: Likewise. 3878*867d70fcSchristos * elf32-moxie.c: Likewise. 3879*867d70fcSchristos * elf32-msp430.c: Likewise. 3880*867d70fcSchristos * elf32-mt.c: Likewise. 3881*867d70fcSchristos * elf32-nds32.c: Likewise. 3882*867d70fcSchristos * elf32-nios2.c: Likewise. 3883*867d70fcSchristos * elf32-or1k.c: Likewise. 3884*867d70fcSchristos * elf32-pj.c: Likewise. 3885*867d70fcSchristos * elf32-ppc.c: Likewise. 3886*867d70fcSchristos * elf32-rl78.c: Likewise. 3887*867d70fcSchristos * elf32-rx.c: Likewise. 3888*867d70fcSchristos * elf32-s390.c: Likewise. 3889*867d70fcSchristos * elf32-score.c: Likewise. 3890*867d70fcSchristos * elf32-score7.c: Likewise. 3891*867d70fcSchristos * elf32-sh-symbian.c: Likewise. 3892*867d70fcSchristos * elf32-sh.c: Likewise. 3893*867d70fcSchristos * elf32-sh64.c: Likewise. 3894*867d70fcSchristos * elf32-sparc.c: Likewise. 3895*867d70fcSchristos * elf32-spu.c: Likewise. 3896*867d70fcSchristos * elf32-tic6x.c: Likewise. 3897*867d70fcSchristos * elf32-tilepro.c: Likewise. 3898*867d70fcSchristos * elf32-v850.c: Likewise. 3899*867d70fcSchristos * elf32-vax.c: Likewise. 3900*867d70fcSchristos * elf32-visium.c: Likewise. 3901*867d70fcSchristos * elf32-wasm32.c: Likewise. 3902*867d70fcSchristos * elf32-xgate.c: Likewise. 3903*867d70fcSchristos * elf32-xtensa.c: Likewise. 3904*867d70fcSchristos * elf64-alpha.c: Likewise. 3905*867d70fcSchristos * elf64-gen.c: Likewise. 3906*867d70fcSchristos * elf64-hppa.c: Likewise. 3907*867d70fcSchristos * elf64-ia64-vms.c: Likewise. 3908*867d70fcSchristos * elf64-mmix.c: Likewise. 3909*867d70fcSchristos * elf64-ppc.c: Likewise. 3910*867d70fcSchristos * elf64-s390.c: Likewise. 3911*867d70fcSchristos * elf64-sh64.c: Likewise. 3912*867d70fcSchristos * elf64-sparc.c: Likewise. 3913*867d70fcSchristos * elf64-x86-64.c: Likewise. 3914*867d70fcSchristos * elfcode.h: Likewise. 3915*867d70fcSchristos * elfcore.h: Likewise. 3916*867d70fcSchristos * elflink.c: Likewise. 3917*867d70fcSchristos * elfnn-aarch64.c: Likewise. 3918*867d70fcSchristos * elfnn-ia64.c: Likewise. 3919*867d70fcSchristos * elfnn-riscv.c: Likewise. 3920*867d70fcSchristos * elfxx-mips.c: Likewise. 3921*867d70fcSchristos * elfxx-sparc.c: Likewise. 3922*867d70fcSchristos * elfxx-tilegx.c: Likewise. 3923*867d70fcSchristos * elfxx-x86.c: Likewise. 3924*867d70fcSchristos * hpux-core.c: Likewise. 3925*867d70fcSchristos * ieee.c: Likewise. 3926*867d70fcSchristos * ihex.c: Likewise. 3927*867d70fcSchristos * libbfd.c: Likewise. 3928*867d70fcSchristos * linker.c: Likewise. 3929*867d70fcSchristos * mach-o.c: Likewise. 3930*867d70fcSchristos * merge.c: Likewise. 3931*867d70fcSchristos * mmo.c: Likewise. 3932*867d70fcSchristos * oasys.c: Likewise. 3933*867d70fcSchristos * pdp11.c: Likewise. 3934*867d70fcSchristos * pe-mips.c: Likewise. 3935*867d70fcSchristos * peXXigen.c: Likewise. 3936*867d70fcSchristos * peicode.h: Likewise. 3937*867d70fcSchristos * reloc.c: Likewise. 3938*867d70fcSchristos * rs6000-core.c: Likewise. 3939*867d70fcSchristos * srec.c: Likewise. 3940*867d70fcSchristos * stabs.c: Likewise. 3941*867d70fcSchristos * vms-alpha.c: Likewise. 3942*867d70fcSchristos * xcofflink.c: Likewise. 3943*867d70fcSchristos 3944*867d70fcSchristos2018-02-19 Alan Modra <amodra@gmail.com> 3945*867d70fcSchristos 3946*867d70fcSchristos PR 22845 3947*867d70fcSchristos * elf.c (IS_TBSS): Define. 3948*867d70fcSchristos (_bfd_elf_map_sections_to_segments): Use IS_TBSS. 3949*867d70fcSchristos (assign_file_positions_for_non_load_sections): Revert last change. 3950*867d70fcSchristos Properly calculate load segment limits to compare against relro limits. 3951*867d70fcSchristos 3952*867d70fcSchristos2018-02-17 Alan Modra <amodra@gmail.com> 3953*867d70fcSchristos 3954*867d70fcSchristos PR 22845 3955*867d70fcSchristos * elf.c (assign_file_positions_for_non_load_sections): Ignore 3956*867d70fcSchristos degenerate zero size PT_LOAD segments when finding one overlapping 3957*867d70fcSchristos the PT_GNU_RELRO segment. 3958*867d70fcSchristos 3959*867d70fcSchristos2018-02-16 Alan Modra <amodra@gmail.com> 3960*867d70fcSchristos 3961*867d70fcSchristos * libbfd.c (_bfd_bool_bfd_false_error): Rename from bfd_false. 3962*867d70fcSchristos (_bfd_bool_bfd_true): Rename from bfd_true. 3963*867d70fcSchristos (_bfd_ptr_bfd_null_error): Rename from bfd_nullvoidptr. 3964*867d70fcSchristos (_bfd_int_bfd_0): Rename from bfd_0. 3965*867d70fcSchristos (_bfd_uint_bfd_0): Rename from bfd_0u. 3966*867d70fcSchristos (_bfd_long_bfd_0): Rename from bfd_0l. 3967*867d70fcSchristos (_bfd_long_bfd_n1_error): Rename from _bfd_n1. 3968*867d70fcSchristos (_bfd_void_bfd): Rename from bfd_void. 3969*867d70fcSchristos (_bfd_bool_bfd_false, _bfd_bool_bfd_asymbol_false), 3970*867d70fcSchristos (_bfd_bool_bfd_link_false_error), 3971*867d70fcSchristos (_bfd_bool_bfd_link_true, _bfd_bool_bfd_bfd_true), 3972*867d70fcSchristos (_bfd_bool_bfd_uint_true, _bfd_bool_bfd_ptr_true), 3973*867d70fcSchristos (_bfd_bool_bfd_asection_bfd_asection_true), 3974*867d70fcSchristos (_bfd_bool_bfd_asymbol_bfd_asymbol_true), 3975*867d70fcSchristos (_bfd_void_bfd_link, _bfd_void_bfd_asection): New functions. 3976*867d70fcSchristos * archive.c (_bfd_noarchive_get_elt_at_index), 3977*867d70fcSchristos (_bfd_noarchive_openr_next_archived_file), 3978*867d70fcSchristos (_bfd_noarchive_construct_extended_name_table), 3979*867d70fcSchristos (_bfd_noarchive_write_ar_hdr, _bfd_noarchive_truncate_arname), 3980*867d70fcSchristos (_bfd_noarchive_write_armap): New functions. 3981*867d70fcSchristos * archures.c (_bfd_nowrite_set_arch_mach): New function. 3982*867d70fcSchristos * coff-alpha.c (alpha_ecoff_swap_coff_aux_in), 3983*867d70fcSchristos (alpha_ecoff_swap_coff_sym_in, alpha_ecoff_swap_coff_lineno_in), 3984*867d70fcSchristos (alpha_ecoff_swap_coff_aux_out, alpha_ecoff_swap_coff_sym_out), 3985*867d70fcSchristos (alpha_ecoff_swap_coff_lineno_out), 3986*867d70fcSchristos (alpha_ecoff_swap_coff_reloc_out): New functions. 3987*867d70fcSchristos * coff-mips.c (mips_ecoff_swap_coff_aux_in), 3988*867d70fcSchristos (mips_ecoff_swap_coff_sym_in, mips_ecoff_swap_coff_lineno_in), 3989*867d70fcSchristos (mips_ecoff_swap_coff_aux_out, mips_ecoff_swap_coff_sym_out), 3990*867d70fcSchristos (mips_ecoff_swap_coff_lineno_out), 3991*867d70fcSchristos (mips_ecoff_swap_coff_reloc_out): New functions. 3992*867d70fcSchristos * coffcode.h (coff_set_alignment_hook): Replace define with 3993*867d70fcSchristos new function. 3994*867d70fcSchristos (symname_in_debug_hook): Likewise. 3995*867d70fcSchristos * ecoff.c (_bfd_ecoff_set_alignment_hook): New function. 3996*867d70fcSchristos * elfxx-target.h (elf_backend_allow_non_load_phdr): Default to 0. 3997*867d70fcSchristos * elf.c (assign_file_positions_except_relocs): Test 3998*867d70fcSchristos elf_backend_allow_non_load_phdr for NULL. 3999*867d70fcSchristos * elflink.c (_bfd_elf_omit_section_dynsym_default): Rename from 4000*867d70fcSchristos _bfd_elf_link_omit_section_dynsym. Update uses. 4001*867d70fcSchristos (_bfd_elf_omit_section_dynsym_all): New function. 4002*867d70fcSchristos * elf-bfd.h (_bfd_elf_link_omit_section_dynsym): Delete. 4003*867d70fcSchristos (_bfd_elf_omit_section_dynsym_default): Declare. 4004*867d70fcSchristos (_bfd_elf_omit_section_dynsym_all): Declare. 4005*867d70fcSchristos * linker.c (_bfd_nolink_sizeof_headers, _bfd_nolink_bfd_relax_section), 4006*867d70fcSchristos (_bfd_nolink_bfd_get_relocated_section_contents), 4007*867d70fcSchristos (_bfd_nolink_bfd_lookup_section_flags), 4008*867d70fcSchristos (_bfd_nolink_bfd_is_group_section, _bfd_nolink_bfd_discard_group), 4009*867d70fcSchristos (_bfd_nolink_bfd_link_hash_table_create), 4010*867d70fcSchristos (_bfd_nolink_bfd_link_just_syms), 4011*867d70fcSchristos (_bfd_nolink_bfd_copy_link_hash_symbol_type), 4012*867d70fcSchristos (_bfd_nolink_bfd_link_split_section), 4013*867d70fcSchristos (_bfd_nolink_section_already_linked), 4014*867d70fcSchristos (_bfd_nolink_bfd_define_common_symbol), 4015*867d70fcSchristos (_bfd_nolink_bfd_define_start_stop): New functions. 4016*867d70fcSchristos * reloc.c (_bfd_norelocs_bfd_reloc_type_lookup), 4017*867d70fcSchristos (_bfd_norelocs_bfd_reloc_name_lookup), 4018*867d70fcSchristos (_bfd_nodynamic_canonicalize_dynamic_reloc): New functions. 4019*867d70fcSchristos * section.c (_bfd_nowrite_set_section_contents): New function. 4020*867d70fcSchristos * syms.c (_bfd_nosymbols_canonicalize_symtab), 4021*867d70fcSchristos (_bfd_nosymbols_print_symbol, _bfd_nosymbols_get_symbol_info), 4022*867d70fcSchristos (_bfd_nosymbols_get_symbol_version_string), 4023*867d70fcSchristos (_bfd_nosymbols_bfd_is_local_label_name), 4024*867d70fcSchristos (_bfd_nosymbols_get_lineno, _bfd_nosymbols_find_nearest_line), 4025*867d70fcSchristos (_bfd_nosymbols_find_line, _bfd_nosymbols_find_inliner_info), 4026*867d70fcSchristos (_bfd_nosymbols_bfd_make_debug_symbol), 4027*867d70fcSchristos ( _bfd_nosymbols_read_minisymbols), 4028*867d70fcSchristos ( _bfd_nosymbols_minisymbol_to_symbol), 4029*867d70fcSchristos (_bfd_nodynamic_get_synthetic_symtab): New functions. 4030*867d70fcSchristos * libbfd-in.h: Declare new functions. Update existing defines, 4031*867d70fcSchristos removing casts. 4032*867d70fcSchristos * aix386-core.c: Update to use new hooks. Formatting. 4033*867d70fcSchristos * aout-adobe.c: Likewise. 4034*867d70fcSchristos * aout-arm.c: Likewise. 4035*867d70fcSchristos * aout-target.h: Likewise. 4036*867d70fcSchristos * aout-tic30.c: Likewise. 4037*867d70fcSchristos * aoutf1.h: Likewise. 4038*867d70fcSchristos * binary.c: Likewise. 4039*867d70fcSchristos * bout.c: Likewise. 4040*867d70fcSchristos * cisco-core.c: Likewise. 4041*867d70fcSchristos * coff-alpha.c: Likewise. 4042*867d70fcSchristos * coff-i386.c: Likewise. 4043*867d70fcSchristos * coff-i860.c: Likewise. 4044*867d70fcSchristos * coff-i960.c: Likewise. 4045*867d70fcSchristos * coff-ia64.c: Likewise. 4046*867d70fcSchristos * coff-mips.c: Likewise. 4047*867d70fcSchristos * coff-ppc.c: Likewise. 4048*867d70fcSchristos * coff-rs6000.c: Likewise. 4049*867d70fcSchristos * coff-sh.c: Likewise. 4050*867d70fcSchristos * coff-tic30.c: Likewise. 4051*867d70fcSchristos * coff-tic54x.c: Likewise. 4052*867d70fcSchristos * coff-x86_64.c: Likewise. 4053*867d70fcSchristos * coff64-rs6000.c: Likewise. 4054*867d70fcSchristos * coffcode.h: Likewise. 4055*867d70fcSchristos * elf-m10300.c: Likewise. 4056*867d70fcSchristos * elf32-cr16.c: Likewise. 4057*867d70fcSchristos * elf32-lm32.c: Likewise. 4058*867d70fcSchristos * elf32-m32r.c: Likewise. 4059*867d70fcSchristos * elf32-metag.c: Likewise. 4060*867d70fcSchristos * elf32-score.c: Likewise. 4061*867d70fcSchristos * elf32-score7.c: Likewise. 4062*867d70fcSchristos * elf32-tilepro.c: Likewise. 4063*867d70fcSchristos * elf32-xstormy16.c: Likewise. 4064*867d70fcSchristos * elf32-xtensa.c: Likewise. 4065*867d70fcSchristos * elf64-alpha.c: Likewise. 4066*867d70fcSchristos * elf64-hppa.c: Likewise. 4067*867d70fcSchristos * elf64-ia64-vms.c: Likewise. 4068*867d70fcSchristos * elf64-mmix.c: Likewise. 4069*867d70fcSchristos * elf64-sh64.c: Likewise. 4070*867d70fcSchristos * elfnn-ia64.c: Likewise. 4071*867d70fcSchristos * elfxx-sparc.c: Likewise. 4072*867d70fcSchristos * elfxx-target.h: Likewise. 4073*867d70fcSchristos * elfxx-tilegx.c: Likewise. 4074*867d70fcSchristos * elfxx-x86.h: Likewise. 4075*867d70fcSchristos * hp300hpux.c: Likewise. 4076*867d70fcSchristos * hppabsd-core.c: Likewise. 4077*867d70fcSchristos * hpux-core.c: Likewise. 4078*867d70fcSchristos * i386msdos.c: Likewise. 4079*867d70fcSchristos * i386os9k.c: Likewise. 4080*867d70fcSchristos * ieee.c: Likewise. 4081*867d70fcSchristos * ihex.c: Likewise. 4082*867d70fcSchristos * irix-core.c: Likewise. 4083*867d70fcSchristos * libaout.h: Likewise. 4084*867d70fcSchristos * libecoff.h: Likewise. 4085*867d70fcSchristos * mach-o-target.c: Likewise. 4086*867d70fcSchristos * mach-o.c: Likewise. 4087*867d70fcSchristos * mipsbsd.c: Likewise. 4088*867d70fcSchristos * mmo.c: Likewise. 4089*867d70fcSchristos * netbsd-core.c: Likewise. 4090*867d70fcSchristos * nlm-target.h: Likewise. 4091*867d70fcSchristos * oasys.c: Likewise. 4092*867d70fcSchristos * osf-core.c: Likewise. 4093*867d70fcSchristos * pdp11.c: Likewise. 4094*867d70fcSchristos * pe-mips.c: Likewise. 4095*867d70fcSchristos * pe-x86_64.c: Likewise. 4096*867d70fcSchristos * pef.c: Likewise. 4097*867d70fcSchristos * plugin.c: Likewise. 4098*867d70fcSchristos * ppcboot.c: Likewise. 4099*867d70fcSchristos * ptrace-core.c: Likewise. 4100*867d70fcSchristos * sco5-core.c: Likewise. 4101*867d70fcSchristos * som.c: Likewise. 4102*867d70fcSchristos * sparclynx.c: Likewise. 4103*867d70fcSchristos * srec.c: Likewise. 4104*867d70fcSchristos * tekhex.c: Likewise. 4105*867d70fcSchristos * trad-core.c: Likewise. 4106*867d70fcSchristos * verilog.c: Likewise. 4107*867d70fcSchristos * versados.c: Likewise. 4108*867d70fcSchristos * vms-alpha.c: Likewise. 4109*867d70fcSchristos * vms-lib.c: Likewise. 4110*867d70fcSchristos * wasm-module.c: Likewise. 4111*867d70fcSchristos * xsym.c: Likewise. 4112*867d70fcSchristos * libbfd.h: Regenerate. 4113*867d70fcSchristos 4114*867d70fcSchristos2018-02-15 Jim Wilson <jimw@sifive.com> 4115*867d70fcSchristos 4116*867d70fcSchristos * elfnn-riscv.c (_bfd_riscv_relax_section): Ifdef out check to ignore 4117*867d70fcSchristos symbols whose section address is zero. 4118*867d70fcSchristos 4119*867d70fcSchristos * elfnn-riscv.c (riscv_elf_relocate_section): Use bfd_reloc_dangerous 4120*867d70fcSchristos when pcrel_lo reloc has an addend. Use reloc_dangerous callback for 4121*867d70fcSchristos bfd_reloc_dangerous. Use einfo instead of warning callback for errors. 4122*867d70fcSchristos Add %X%P to error messages. 4123*867d70fcSchristos 4124*867d70fcSchristos2018-02-15 Eric Botcazou <ebotcazou@adacore.com> 4125*867d70fcSchristos 4126*867d70fcSchristos PR ld/22832 4127*867d70fcSchristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>: 4128*867d70fcSchristos Pass FALSE instead of TRUE as 'create' argument to bfd_link_hash_lookup 4129*867d70fcSchristos and assert that the result of the call is not NULL. 4130*867d70fcSchristos 4131*867d70fcSchristos2018-02-14 Nick Clifton <nickc@redhat.com> 4132*867d70fcSchristos 4133*867d70fcSchristos PR 22823 4134*867d70fcSchristos Revert previous delta. Add extra casts to avoid compile time 4135*867d70fcSchristos warnings instead. 4136*867d70fcSchristos * libbfd-in.h (_bfd_generic_bfd_copy_private_bfd_data): Add extra 4137*867d70fcSchristos cast to avoid warning from gcc v8 compiler. 4138*867d70fcSchristos (_bfd_generic_bfd_merge_private_bfd_data): Likewise. 4139*867d70fcSchristos (_bfd_generic_bfd_set_private_flags): Likewise. 4140*867d70fcSchristos (_bfd_generic_bfd_copy_private_section_data): Likewise. 4141*867d70fcSchristos (_bfd_generic_bfd_copy_private_symbol_data): Likewise. 4142*867d70fcSchristos (_bfd_generic_bfd_copy_private_header_data): Likewise. 4143*867d70fcSchristos (_bfd_generic_bfd_print_private_bfd_data): Likewise. 4144*867d70fcSchristos (_bfd_noarchive_construct_extended_name_table): Likewise. 4145*867d70fcSchristos (_bfd_noarchive_truncate_arname): Likewise. 4146*867d70fcSchristos (_bfd_noarchive_write_ar_hdr): Likewise. 4147*867d70fcSchristos (_bfd_noarchive_get_elt_at_index): Likewise. 4148*867d70fcSchristos (_bfd_nosymbols_canonicalize_symtab): Likewise. 4149*867d70fcSchristos (_bfd_nosymbols_print_symbol): Likewise. 4150*867d70fcSchristos (_bfd_nosymbols_get_symbol_info): Likewise. 4151*867d70fcSchristos (_bfd_nosymbols_get_symbol_version_string): Likewise. 4152*867d70fcSchristos (_bfd_nosymbols_bfd_is_local_label_name): Likewise. 4153*867d70fcSchristos (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise. 4154*867d70fcSchristos (_bfd_nosymbols_get_lineno): Likewise. 4155*867d70fcSchristos (_bfd_nosymbols_find_nearest_line): Likewise. 4156*867d70fcSchristos (_bfd_nosymbols_find_line): Likewise. 4157*867d70fcSchristos (_bfd_nosymbols_find_inliner_info): Likewise. 4158*867d70fcSchristos (_bfd_nosymbols_bfd_make_debug_symbol): Likewise. 4159*867d70fcSchristos (_bfd_nosymbols_read_minisymbols): Likewise. 4160*867d70fcSchristos (_bfd_nosymbols_minisymbol_to_symbol): Likewise. 4161*867d70fcSchristos (_bfd_norelocs_bfd_reloc_type_lookup): Likewise. 4162*867d70fcSchristos (_bfd_norelocs_bfd_reloc_name_lookup): Likewise. 4163*867d70fcSchristos (_bfd_nowrite_set_arch_mach): Likewise. 4164*867d70fcSchristos (_bfd_nowrite_set_section_contents): Likewise. 4165*867d70fcSchristos (_bfd_nolink_sizeof_headers): Likewise. 4166*867d70fcSchristos (_bfd_nolink_bfd_get_relocated_section_contents): Likewise. 4167*867d70fcSchristos (_bfd_nolink_bfd_relax_section): Likewise. 4168*867d70fcSchristos (_bfd_nolink_bfd_gc_sections): Likewise. 4169*867d70fcSchristos (_bfd_nolink_bfd_lookup_section_flags): Likewise. 4170*867d70fcSchristos (_bfd_nolink_bfd_merge_sections): Likewise. 4171*867d70fcSchristos (_bfd_nolink_bfd_is_group_section): Likewise. 4172*867d70fcSchristos (_bfd_nolink_bfd_discard_group): Likewise. 4173*867d70fcSchristos (_bfd_nolink_bfd_link_hash_table_create): Likewise. 4174*867d70fcSchristos (_bfd_nolink_bfd_link_add_symbols): Likewise. 4175*867d70fcSchristos (_bfd_nolink_bfd_link_just_syms): Likewise. 4176*867d70fcSchristos (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise. 4177*867d70fcSchristos (_bfd_nolink_bfd_final_link): Likewise. 4178*867d70fcSchristos (_bfd_nolink_bfd_link_split_section): Likewise. 4179*867d70fcSchristos (_bfd_nolink_section_already_linked): Likewise. 4180*867d70fcSchristos (_bfd_nolink_bfd_define_common_symbol): Likewise. 4181*867d70fcSchristos (_bfd_nolink_bfd_define_start_stop): Likewise. 4182*867d70fcSchristos (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise. 4183*867d70fcSchristos (_bfd_nodynamic_get_synthetic_symtab): Likewise. 4184*867d70fcSchristos (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise. 4185*867d70fcSchristos (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise. 4186*867d70fcSchristos * libbfd.c (bfd_false_any): Delete. 4187*867d70fcSchristos (bfd_true_any, bfd_nullvoidptr_any, bfd_0_any): Delete. 4188*867d70fcSchristos (bfd_0u_any, bfd_0l_any, _bfd_n1_any, bfd_void_any): Delete. 4189*867d70fcSchristos * libbfd.h (extern): Regenerate 4190*867d70fcSchristos * aout-target.h (MY_bfd_is_target_special_symbol): Add extra 4191*867d70fcSchristos cast to avoid warning from gcc v8 compiler. 4192*867d70fcSchristos * aout-tic30.c (tic30_aout_set_arch_mach): Likewise. 4193*867d70fcSchristos * binary.c (binary_get_symbol_info): Likewise. 4194*867d70fcSchristos * coff-alpha.c (alpha_ecoff_backend_data): Likewise. 4195*867d70fcSchristos * coff-mips.c (mips_ecoff_backend_data): Likewise. 4196*867d70fcSchristos * coffcode.h (coff_set_alignment_hook): Likewise. 4197*867d70fcSchristos (symname_in_debug_hook): Likewise. 4198*867d70fcSchristos (bfd_coff_backend_data bigobj_swap_table): Likewise. 4199*867d70fcSchristos * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise. 4200*867d70fcSchristos * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise. 4201*867d70fcSchristos * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise. 4202*867d70fcSchristos * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise. 4203*867d70fcSchristos * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise. 4204*867d70fcSchristos * elf32-score.c (elf_backend_omit_section_dynsym): Likewise. 4205*867d70fcSchristos * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise. 4206*867d70fcSchristos * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise. 4207*867d70fcSchristos * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise. 4208*867d70fcSchristos * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise. 4209*867d70fcSchristos * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise. 4210*867d70fcSchristos * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise. 4211*867d70fcSchristos * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise. 4212*867d70fcSchristos * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise. 4213*867d70fcSchristos * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise. 4214*867d70fcSchristos * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise. 4215*867d70fcSchristos (bfd_elfNN_bfd_make_debug_symbol): Likewise. 4216*867d70fcSchristos (bfd_elfNN_bfd_merge_private_bfd_data): Likewise. 4217*867d70fcSchristos (bfd_elfNN_bfd_set_private_flags): Likewise. 4218*867d70fcSchristos (bfd_elfNN_bfd_is_target_special_symbol): Likewise. 4219*867d70fcSchristos (elf_backend_init_index_section): Likewise. 4220*867d70fcSchristos (elf_backend_allow_non_load_phdr): Likewise. 4221*867d70fcSchristos * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise. 4222*867d70fcSchristos * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise. 4223*867d70fcSchristos * ieee.c (ieee_construct_extended_name_table): Likewise. 4224*867d70fcSchristos (ieee_write_armap): Likewise. 4225*867d70fcSchristos (ieee_write_ar_hdr): Likewise. 4226*867d70fcSchristos (ieee_bfd_is_target_special_symbol): Likewise. 4227*867d70fcSchristos * ihex.c (ihex_canonicalize_symtab): Likewise. 4228*867d70fcSchristos (ihex_bfd_is_target_special_symbol): Likewise. 4229*867d70fcSchristos * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise. 4230*867d70fcSchristos * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise. 4231*867d70fcSchristos (_bfd_ecoff_set_alignment_hook): Likewise. 4232*867d70fcSchristos * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise. 4233*867d70fcSchristos * mmo.c (mmo_bfd_is_target_special_symbol): Likewise. 4234*867d70fcSchristos * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise. 4235*867d70fcSchristos * oasys.c (oasys_construct_extended_name_table): Likewise. 4236*867d70fcSchristos (oasys_write_armap): Likewise. 4237*867d70fcSchristos (oasys_write_ar_hdr): Likewise. 4238*867d70fcSchristos (oasys_bfd_is_target_special_symbol): Likewise. 4239*867d70fcSchristos * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise. 4240*867d70fcSchristos * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise. 4241*867d70fcSchristos * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise. 4242*867d70fcSchristos * som.c (som_bfd_is_target_special_symbol): Likewise. 4243*867d70fcSchristos * srec.c (srec_bfd_is_target_special_symbol): Likewise. 4244*867d70fcSchristos * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise. 4245*867d70fcSchristos * verilog.c (verilog_bfd_is_target_special_symbol): Likewise. 4246*867d70fcSchristos * versados.c (versados_bfd_is_target_special_symbol): Likewise. 4247*867d70fcSchristos (versados_bfd_reloc_name_lookup): Likewise. 4248*867d70fcSchristos * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise. 4249*867d70fcSchristos (vms_bfd_define_start_stop): Likewise. 4250*867d70fcSchristos (alpha_vms_bfd_is_target_special_symbol): Likewise. 4251*867d70fcSchristos * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise. 4252*867d70fcSchristos * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise. 4253*867d70fcSchristos 4254*867d70fcSchristos2018-02-14 H.J. Lu <hongjiu.lu@intel.com> 4255*867d70fcSchristos 4256*867d70fcSchristos PR ld/22842 4257*867d70fcSchristos * elf32-i386.c (elf_i386_check_relocs): Pass FALSE for non 4258*867d70fcSchristos PC-relative PLT to NEED_DYNAMIC_RELOCATION_P. 4259*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_check_relocs): Create PLT for 4260*867d70fcSchristos R_X86_64_PC32 reloc against dynamic function in data section. 4261*867d70fcSchristos Pass TRUE for PC-relative PLT to NEED_DYNAMIC_RELOCATION_P. 4262*867d70fcSchristos (elf_x86_64_relocate_section): Use PLT for R_X86_64_PC32 reloc 4263*867d70fcSchristos against dynamic function in data section. 4264*867d70fcSchristos * elfxx-x86.c (elf_x86_allocate_dynrelocs): Use PLT in PIE as 4265*867d70fcSchristos function address only if pcrel_plt is true. 4266*867d70fcSchristos (_bfd_x86_elf_link_hash_table_create): Set pcrel_plt. 4267*867d70fcSchristos * elfxx-x86.h (NEED_DYNAMIC_RELOCATION_P): Add PCREL_PLT for 4268*867d70fcSchristos PC-relative PLT. If PLT is PC-relative, don't generate dynamic 4269*867d70fcSchristos PC-relative relocation against a function definition in data 4270*867d70fcSchristos secton in PIE. Remove the obsolete comments. 4271*867d70fcSchristos (elf_x86_link_hash_table): Add pcrel_plt. 4272*867d70fcSchristos 4273*867d70fcSchristos2018-02-13 H.J. Lu <hongjiu.lu@intel.com> 4274*867d70fcSchristos 4275*867d70fcSchristos * elfxx-x86.c (elf_x86_allocate_dynrelocs): Check bfd_link_dll, 4276*867d70fcSchristos instead of bfd_link_pic, for building shared library. 4277*867d70fcSchristos 4278*867d70fcSchristos2018-02-13 H.J. Lu <hongjiu.lu@intel.com> 4279*867d70fcSchristos 4280*867d70fcSchristos PR gas/22791 4281*867d70fcSchristos * elf64-x86-64.c (is_32bit_relative_branch): Removed. 4282*867d70fcSchristos (elf_x86_64_relocate_section): Check PIC relocations in PIE. 4283*867d70fcSchristos Remove is_32bit_relative_branch usage. Disallow PC32 reloc 4284*867d70fcSchristos against protected function in shared object. 4285*867d70fcSchristos 4286*867d70fcSchristos2018-02-13 Sergei Trofimovich <slyfox@inbox.ru> 4287*867d70fcSchristos 4288*867d70fcSchristos PR 22828 4289*867d70fcSchristos * po/ru.po: Fix typo in Russian translation. 4290*867d70fcSchristos 4291*867d70fcSchristos2018-02-13 Maciej W. Rozycki <macro@mips.com> 4292*867d70fcSchristos 4293*867d70fcSchristos * wasm-module.c (wasm_scan_name_function_section): Rename 4294*867d70fcSchristos `index' local variable to `idx'. 4295*867d70fcSchristos 4296*867d70fcSchristos2018-02-13 Nick Clifton <nickc@redhat.com> 4297*867d70fcSchristos 4298*867d70fcSchristos PR 22823 4299*867d70fcSchristos Fix compile time warnings generated by gcc version 8. 4300*867d70fcSchristos * libbfd-in.h: Remove extraneous text from prototypes. 4301*867d70fcSchristos Add prototypes for bfd_false_any, bfd_true_any, 4302*867d70fcSchristos bfd_nullvoidptr_any, bfd_0_any, bfd_0u_any, bfd_0l_any, 4303*867d70fcSchristos bfd_n1_any, bfd_void_any. 4304*867d70fcSchristos (_bfd_generic_bfd_copy_private_bfd_data): Use vararg based dummy 4305*867d70fcSchristos function. 4306*867d70fcSchristos (_bfd_generic_bfd_merge_private_bfd_data): Likewise. 4307*867d70fcSchristos (_bfd_generic_bfd_set_private_flags): Likewise. 4308*867d70fcSchristos (_bfd_generic_bfd_copy_private_section_data): Likewise. 4309*867d70fcSchristos (_bfd_generic_bfd_copy_private_symbol_data): Likewise. 4310*867d70fcSchristos (_bfd_generic_bfd_copy_private_header_data): Likewise. 4311*867d70fcSchristos (_bfd_generic_bfd_print_private_bfd_data): Likewise. 4312*867d70fcSchristos (_bfd_noarchive_construct_extended_name_table): Likewise. 4313*867d70fcSchristos (_bfd_noarchive_truncate_arname): Likewise. 4314*867d70fcSchristos (_bfd_noarchive_write_ar_hdr): Likewise. 4315*867d70fcSchristos (_bfd_noarchive_get_elt_at_index): Likewise. 4316*867d70fcSchristos (_bfd_nosymbols_canonicalize_symtab): Likewise. 4317*867d70fcSchristos (_bfd_nosymbols_print_symbol): Likewise. 4318*867d70fcSchristos (_bfd_nosymbols_get_symbol_info): Likewise. 4319*867d70fcSchristos (_bfd_nosymbols_get_symbol_version_string): Likewise. 4320*867d70fcSchristos (_bfd_nosymbols_bfd_is_local_label_name): Likewise. 4321*867d70fcSchristos (_bfd_nosymbols_bfd_is_target_special_symbol): Likewise. 4322*867d70fcSchristos (_bfd_nosymbols_get_lineno): Likewise. 4323*867d70fcSchristos (_bfd_nosymbols_find_nearest_line): Likewise. 4324*867d70fcSchristos (_bfd_nosymbols_find_line): Likewise. 4325*867d70fcSchristos (_bfd_nosymbols_find_inliner_info): Likewise. 4326*867d70fcSchristos (_bfd_nosymbols_bfd_make_debug_symbol): Likewise. 4327*867d70fcSchristos (_bfd_nosymbols_read_minisymbols): Likewise. 4328*867d70fcSchristos (_bfd_nosymbols_minisymbol_to_symbol): Likewise. 4329*867d70fcSchristos (_bfd_norelocs_bfd_reloc_type_lookup): Likewise. 4330*867d70fcSchristos (_bfd_norelocs_bfd_reloc_name_lookup): Likewise. 4331*867d70fcSchristos (_bfd_nowrite_set_arch_mach): Likewise. 4332*867d70fcSchristos (_bfd_nowrite_set_section_contents): Likewise. 4333*867d70fcSchristos (_bfd_nolink_sizeof_headers): Likewise. 4334*867d70fcSchristos (_bfd_nolink_bfd_get_relocated_section_contents): Likewise. 4335*867d70fcSchristos (_bfd_nolink_bfd_relax_section): Likewise. 4336*867d70fcSchristos (_bfd_nolink_bfd_gc_sections): Likewise. 4337*867d70fcSchristos (_bfd_nolink_bfd_lookup_section_flags): Likewise. 4338*867d70fcSchristos (_bfd_nolink_bfd_merge_sections): Likewise. 4339*867d70fcSchristos (_bfd_nolink_bfd_is_group_section): Likewise. 4340*867d70fcSchristos (_bfd_nolink_bfd_discard_group): Likewise. 4341*867d70fcSchristos (_bfd_nolink_bfd_link_hash_table_create): Likewise. 4342*867d70fcSchristos (_bfd_nolink_bfd_link_add_symbols): Likewise. 4343*867d70fcSchristos (_bfd_nolink_bfd_link_just_syms): Likewise. 4344*867d70fcSchristos (_bfd_nolink_bfd_copy_link_hash_symbol_type): Likewise. 4345*867d70fcSchristos (_bfd_nolink_bfd_final_link): Likewise. 4346*867d70fcSchristos (_bfd_nolink_bfd_link_split_section): Likewise. 4347*867d70fcSchristos (_bfd_nolink_section_already_linked): Likewise. 4348*867d70fcSchristos (_bfd_nolink_bfd_define_common_symbol): Likewise. 4349*867d70fcSchristos (_bfd_nolink_bfd_define_start_stop): Likewise. 4350*867d70fcSchristos (_bfd_nodynamic_canonicalize_dynamic_symtab): Likewise. 4351*867d70fcSchristos (_bfd_nodynamic_get_synthetic_symtab): Likewise. 4352*867d70fcSchristos (_bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_): Likewise. 4353*867d70fcSchristos (_bfd_nodynamic_canonicalize_dynamic_reloc): Likewise. 4354*867d70fcSchristos * libbfd.c (bfd_false_any): New function. Like bfd_false but 4355*867d70fcSchristos accepts one or more arguments. 4356*867d70fcSchristos (bfd_true_any): Likewise. 4357*867d70fcSchristos (bfd_nullvoidptr_any): Likewise. 4358*867d70fcSchristos (bfd_0_any): Likewise. 4359*867d70fcSchristos (bfd_0u_any): Likewise. 4360*867d70fcSchristos (bfd_0l_any): Likewise. 4361*867d70fcSchristos (_bfd_n1_any): Likewise. 4362*867d70fcSchristos (bfd_void_any): Likewise. 4363*867d70fcSchristos * libbfd.h (extern): Regenerate 4364*867d70fcSchristos * aout-target.h (MY_bfd_is_target_special_symbol): Use vararg 4365*867d70fcSchristos based dummy function. 4366*867d70fcSchristos * aout-tic30.c (tic30_aout_set_arch_mach): Likewise. 4367*867d70fcSchristos * binary.c (binary_get_symbol_info): Likewise. 4368*867d70fcSchristos * coff-alpha.c (alpha_ecoff_backend_data): Likewise. 4369*867d70fcSchristos * coff-mips.c (mips_ecoff_backend_data): Likewise. 4370*867d70fcSchristos * coffcode.h (coff_set_alignment_hook): Likewise. 4371*867d70fcSchristos (symname_in_debug_hook): Likewise. 4372*867d70fcSchristos (bfd_coff_backend_data bigobj_swap_table): Likewise. 4373*867d70fcSchristos * elf-m10300.c (elf_backend_omit_section_dynsym): Likewise. 4374*867d70fcSchristos * elf32-cr16.c (elf_backend_omit_section_dynsym): Likewise. 4375*867d70fcSchristos * elf32-lm32.c (elf_backend_omit_section_dynsym): Likewise. 4376*867d70fcSchristos * elf32-m32r.c (elf_backend_omit_section_dynsym): Likewise. 4377*867d70fcSchristos * elf32-metag.c (elf_backend_omit_section_dynsym): Likewise. 4378*867d70fcSchristos * elf32-score.c (elf_backend_omit_section_dynsym): Likewise. 4379*867d70fcSchristos * elf32-score7.c (elf_backend_omit_section_dynsym): Likewise. 4380*867d70fcSchristos * elf32-xstormy16.c (elf_backend_omit_section_dynsym): Likewise. 4381*867d70fcSchristos * elf32-xtensa.c (elf_backend_omit_section_dynsym): Likewise. 4382*867d70fcSchristos * elf64-alpha.c (elf_backend_omit_section_dynsym): Likewise. 4383*867d70fcSchristos * elf64-hppa.c (elf_backend_omit_section_dynsym): Likewise. 4384*867d70fcSchristos * elf64-ia64-vms.c (elf_backend_omit_section_dynsym): Likewise. 4385*867d70fcSchristos * elf64-mmix.c (elf_backend_omit_section_dynsym): Likewise. 4386*867d70fcSchristos * elf64-sh64.c (elf_backend_omit_section_dynsym): Likewise. 4387*867d70fcSchristos * elfnn-ia64.c (elf_backend_omit_section_dynsym): Likewise. 4388*867d70fcSchristos * elfxx-target.h (bfd_elfNN_bfd_debug_info_accumulate): Likewise. 4389*867d70fcSchristos (bfd_elfNN_bfd_make_debug_symbol): Likewise. 4390*867d70fcSchristos (bfd_elfNN_bfd_merge_private_bfd_data): Likewise. 4391*867d70fcSchristos (bfd_elfNN_bfd_set_private_flags): Likewise. 4392*867d70fcSchristos (bfd_elfNN_bfd_is_target_special_symbol): Likewise. 4393*867d70fcSchristos (elf_backend_init_index_section): Likewise. 4394*867d70fcSchristos (elf_backend_allow_non_load_phdr): Likewise. 4395*867d70fcSchristos * elfxx-x86.h (elf_backend_omit_section_dynsym): Likewise. 4396*867d70fcSchristos * i386msdos.c (msdos_bfd_is_target_special_symbol): Likewise. 4397*867d70fcSchristos * ieee.c (ieee_construct_extended_name_table): Likewise. 4398*867d70fcSchristos (ieee_write_armap): Likewise. 4399*867d70fcSchristos (ieee_write_ar_hdr): Likewise. 4400*867d70fcSchristos (ieee_bfd_is_target_special_symbol): Likewise. 4401*867d70fcSchristos * ihex.c (ihex_canonicalize_symtab): Likewise. 4402*867d70fcSchristos (ihex_bfd_is_target_special_symbol): Likewise. 4403*867d70fcSchristos * libaout.h (aout_32_bfd_is_target_special_symbol): Likewise. 4404*867d70fcSchristos * libecoff.h (_bfd_ecoff_bfd_is_target_special_symbol): Likewise. 4405*867d70fcSchristos (_bfd_ecoff_set_alignment_hook): Likewise. 4406*867d70fcSchristos * mach-o-target.c (bfd_mach_o_bfd_is_target_special_symbol): Likewise. 4407*867d70fcSchristos * mmo.c (mmo_bfd_is_target_special_symbol): Likewise. 4408*867d70fcSchristos * nlm-target.h (nlm_bfd_is_target_special_symbol): Likewise. 4409*867d70fcSchristos * oasys.c (oasys_construct_extended_name_table): Likewise. 4410*867d70fcSchristos (oasys_write_armap): Likewise. 4411*867d70fcSchristos (oasys_write_ar_hdr): Likewise. 4412*867d70fcSchristos (oasys_bfd_is_target_special_symbol): Likewise. 4413*867d70fcSchristos * pef.c (bfd_pef_bfd_is_target_special_symbol): Likewise. 4414*867d70fcSchristos * plugin.c (bfd_plugin_bfd_is_target_special_symbol): Likewise. 4415*867d70fcSchristos * ppcboot.c (ppcboot_bfd_is_target_special_symbol): Likewise. 4416*867d70fcSchristos * som.c (som_bfd_is_target_special_symbol): Likewise. 4417*867d70fcSchristos * srec.c (srec_bfd_is_target_special_symbol): Likewise. 4418*867d70fcSchristos * tekhex.c (tekhex_bfd_is_target_special_symbol): Likewise. 4419*867d70fcSchristos * verilog.c (verilog_bfd_is_target_special_symbol): Likewise. 4420*867d70fcSchristos * versados.c (versados_bfd_is_target_special_symbol): Likewise. 4421*867d70fcSchristos (versados_bfd_reloc_name_lookup): Likewise. 4422*867d70fcSchristos * vms-alpha.c (vms_bfd_is_target_special_symbol): Likewise. 4423*867d70fcSchristos (vms_bfd_define_start_stop): Likewise. 4424*867d70fcSchristos (alpha_vms_bfd_is_target_special_symbol): Likewise. 4425*867d70fcSchristos * wasm-module.c (wasm_bfd_is_target_special_symbol): Likewise. 4426*867d70fcSchristos * xsym.c (bfd_sym_bfd_is_target_special_symbol): Likewise. 4427*867d70fcSchristos * elf32-arc.c (get_replace_function): Assign replacement function 4428*867d70fcSchristos to func pointer. 4429*867d70fcSchristos * elf32-i370.c (i370_noop): Update prototype. 4430*867d70fcSchristos 4431*867d70fcSchristos2018-02-13 Alan Modra <amodra@gmail.com> 4432*867d70fcSchristos 4433*867d70fcSchristos PR 22836 4434*867d70fcSchristos * elf.c (_bfd_elf_fixup_group_sections): Account for removed 4435*867d70fcSchristos relocation sections. If size reduces to just the flag word, 4436*867d70fcSchristos remove that too and mark with SEC_EXCLUDE. 4437*867d70fcSchristos * elflink.c (bfd_elf_final_link): Strip empty group sections. 4438*867d70fcSchristos 4439*867d70fcSchristos2018-02-13 Alan Modra <amodra@gmail.com> 4440*867d70fcSchristos 4441*867d70fcSchristos PR 22829 4442*867d70fcSchristos * elf.c (assign_file_positions_for_non_load_sections): Rewrite 4443*867d70fcSchristos PT_GNU_RELRO setup. 4444*867d70fcSchristos 4445*867d70fcSchristos2018-02-12 Zebediah Figura <z.figura12@gmail.com> 4446*867d70fcSchristos 4447*867d70fcSchristos * i386msdos.c (msdos_mkobject); New function. 4448*867d70fcSchristos (msdos_object_p): New function. 4449*867d70fcSchristos (i386_msdos_vec): Use msdos_object_p as the check_format 4450*867d70fcSchristos function. 4451*867d70fcSchristos * peicode.h: Rename external_PEI_DOS_hdr, DOSMAGIC, and 4452*867d70fcSchristos NT_SIGNATURE to external_DOS_hdr, IMAGE_DOS_SIGNATURE, and 4453*867d70fcSchristos IMAGE_NT_SIGNATURE. 4454*867d70fcSchristos * peXXigen.c: Likewise. 4455*867d70fcSchristos * coff-ia64.c: Likewise. 4456*867d70fcSchristos 4457*867d70fcSchristos2018-02-12 Nick Clifton <nickc@redhat.com> 4458*867d70fcSchristos 4459*867d70fcSchristos * elf32-nds32.c (nds32_elf_relax_longjump3): Remove redundant 4460*867d70fcSchristos assignment. 4461*867d70fcSchristos * elf32-arc.c (elf_arc_relocate_section): Likewise. 4462*867d70fcSchristos 4463*867d70fcSchristos2018-02-09 Eric Botcazou <ebotcazou@adacore.com> 4464*867d70fcSchristos 4465*867d70fcSchristos * elfxx-sparc.c (UNDEFINED_WEAK_RESOLVED_TO_ZERO): Reorder conditions. 4466*867d70fcSchristos (sparc_elf_append_rela): Assert that there is enough room in section. 4467*867d70fcSchristos (_bfd_sparc_elf_copy_indirect_symbol): Fix formatting. 4468*867d70fcSchristos (_bfd_sparc_elf_adjust_dynamic_symbol): Minor tweak. 4469*867d70fcSchristos (allocate_dynrelocs): Remove outdated comments and reorder conditions. 4470*867d70fcSchristos For a symbol subject to a GOT relocation, reserve a slot in the 4471*867d70fcSchristos relocation section if the symbol isn't dynamic and we are in PIC mode. 4472*867d70fcSchristos (_bfd_sparc_elf_relocate_section) <R_SPARC_GOTDATA_OP>: If relocation 4473*867d70fcSchristos is relaxed and a slot was reserved, generate a R_SPARC_NONE relocation. 4474*867d70fcSchristos <R_SPARC_GOTDATA_OP_HIX22>: Adjust comments. 4475*867d70fcSchristos <R_SPARC_PC10>: Reorder conditions. Remove always-false assertion. 4476*867d70fcSchristos (_bfd_sparc_elf_finish_dynamic_symbol): Rename local_undefweak into 4477*867d70fcSchristos resolved_to_zero. Do not generate a dynamic GOT relocation for an 4478*867d70fcSchristos undefined weak symbol with non-default visibility. Remove superfluous 4479*867d70fcSchristos 'else' and fix formatting. 4480*867d70fcSchristos 4481*867d70fcSchristos2018-02-09 H.J. Lu <hongjiu.lu@intel.com> 4482*867d70fcSchristos 4483*867d70fcSchristos * elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle 4484*867d70fcSchristos is_solaris. 4485*867d70fcSchristos (i386_elf32_sol2_vec): Don't declare. 4486*867d70fcSchristos (elf_i386_link_setup_gnu_properties): Also handle is_solaris. 4487*867d70fcSchristos Don't set need_global_offset_table. 4488*867d70fcSchristos (elf_i386_solaris_arch_bed): New. 4489*867d70fcSchristos (elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for 4490*867d70fcSchristos Solaris. 4491*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check 4492*867d70fcSchristos target_os != is_nacl instead of target_os == is_normal. 4493*867d70fcSchristos (x86_64_elf64_sol2_vec): Don't declare. 4494*867d70fcSchristos (elf_x86_64_link_setup_gnu_properties): Check target_os != 4495*867d70fcSchristos is_nacl instead of target_os == is_normal. Don't set 4496*867d70fcSchristos need_global_offset_table. 4497*867d70fcSchristos (elf_x86_64_solaris_arch_bed): New. 4498*867d70fcSchristos (elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for 4499*867d70fcSchristos Solaris. 4500*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep 4501*867d70fcSchristos _GLOBAL_OFFSET_TABLE_ for Solaris. 4502*867d70fcSchristos (_bfd_x86_elf_link_setup_gnu_properties): Don't copy 4503*867d70fcSchristos need_global_offset_table. 4504*867d70fcSchristos * elfxx-x86.h (elf_x86_target_os): Add is_solaris. 4505*867d70fcSchristos (elf_x86_link_hash_table): Remove need_global_offset_table. 4506*867d70fcSchristos (elf_x86_init_table): Likewise. 4507*867d70fcSchristos 4508*867d70fcSchristos2018-02-08 H.J. Lu <hongjiu.lu@intel.com> 4509*867d70fcSchristos 4510*867d70fcSchristos * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields): 4511*867d70fcSchristos Remove prototype. 4512*867d70fcSchristos (i386_elf32_sol2_vec): Declared. 4513*867d70fcSchristos (elf_i386_link_setup_gnu_properties): Set 4514*867d70fcSchristos need_global_offset_table with info->output_bfd->xvec. 4515*867d70fcSchristos * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields): 4516*867d70fcSchristos Remove prototype. 4517*867d70fcSchristos (x86_64_elf64_sol2_vec): Declared. 4518*867d70fcSchristos (elf_x86_64_link_setup_gnu_properties): Set 4519*867d70fcSchristos need_global_offset_table with info->output_bfd->xvec. 4520*867d70fcSchristos 4521*867d70fcSchristos2018-02-08 H.J. Lu <hongjiu.lu@intel.com> 4522*867d70fcSchristos 4523*867d70fcSchristos * elf32-i386.c (elf32_i386_copy_solaris_special_section_fields): 4524*867d70fcSchristos New prototype. 4525*867d70fcSchristos (elf_i386_link_setup_gnu_properties): Set need_global_offset_table 4526*867d70fcSchristos for Solaris. 4527*867d70fcSchristos * elf64-x86-64.c (elf64_x86_64_copy_solaris_special_section_fields): 4528*867d70fcSchristos New prototype. 4529*867d70fcSchristos (elf_x86_64_link_setup_gnu_properties): Set 4530*867d70fcSchristos need_global_offset_table for Solaris. 4531*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep the 4532*867d70fcSchristos unused _GLOBAL_OFFSET_TABLE_ for Solaris. 4533*867d70fcSchristos (_bfd_x86_elf_link_setup_gnu_properties): Copy 4534*867d70fcSchristos need_global_offset_table. 4535*867d70fcSchristos * elfxx-x86.h (elf_x86_link_hash_table): Add 4536*867d70fcSchristos need_global_offset_table. 4537*867d70fcSchristos (elf_x86_init_table): Likewise. 4538*867d70fcSchristos 4539*867d70fcSchristos2018-02-08 Jim Wilson <jimw@sifive.com> 4540*867d70fcSchristos 4541*867d70fcSchristos * elfnn-riscv.c (riscv_elf_relocate_section): Add comment for previous 4542*867d70fcSchristos change. 4543*867d70fcSchristos 4544*867d70fcSchristos2018-02-08 Nick Clifton <nickc@redhat.com> 4545*867d70fcSchristos 4546*867d70fcSchristos PR 22788 4547*867d70fcSchristos * elf.c (elf_parse_notes): Reject notes with excessuively large 4548*867d70fcSchristos alignments. 4549*867d70fcSchristos 4550*867d70fcSchristos2018-02-07 Alan Modra <amodra@gmail.com> 4551*867d70fcSchristos 4552*867d70fcSchristos Revert 2018-01-17 Alan Modra <amodra@gmail.com> 4553*867d70fcSchristos * elf32-ppc.c: Remove speculation barrier support. 4554*867d70fcSchristos * elf32-ppc.h: Likewise. 4555*867d70fcSchristos * elf64-ppc.c: Likewise. 4556*867d70fcSchristos * elf64-ppc.h: Likewise. 4557*867d70fcSchristos 4558*867d70fcSchristos2018-02-06 Jim Wilson <jimw@sifive.com> 4559*867d70fcSchristos 4560*867d70fcSchristos * elfnn-riscv.c (riscv_elf_relocate_section): Return TRUE if used 4561*867d70fcSchristos callback to report an error. 4562*867d70fcSchristos 4563*867d70fcSchristos2018-02-06 Eric Botcazou <ebotcazou@adacore.com> 4564*867d70fcSchristos 4565*867d70fcSchristos PR ld/22263 4566*867d70fcSchristos * elfxx-sparc.c (sparc_elf_tls_transition): Turn call to bfd_link_pic 4567*867d70fcSchristos into call to !bfd_link_executable and tidy up. 4568*867d70fcSchristos (_bfd_sparc_elf_check_relocs): Fix formatting and tidy up. 4569*867d70fcSchristos <R_SPARC_TLS_LE_HIX22>: Turn call to bfd_link_pic into call to 4570*867d70fcSchristos !bfd_link_executable. 4571*867d70fcSchristos <R_SPARC_TLS_IE_HI22>: Likewise. 4572*867d70fcSchristos <GOT relocations>: Remove useless code, tidy and merge related blocks. 4573*867d70fcSchristos <R_SPARC_TLS_GD_CALL>: Turn call to bfd_link_pic into call to 4574*867d70fcSchristos !bfd_link_executable. 4575*867d70fcSchristos <R_SPARC_WPLT30>: Tidy up. 4576*867d70fcSchristos (_bfd_sparc_elf_gc_mark_hook): Turn call to bfd_link_pic into call to 4577*867d70fcSchristos !bfd_link_executable. 4578*867d70fcSchristos (allocate_dynrelocs): Likewise. 4579*867d70fcSchristos (_bfd_sparc_elf_relocate_section): Fix formatting and tidy up. 4580*867d70fcSchristos <R_SPARC_TLS_GD_HI22>: Merge into... 4581*867d70fcSchristos <R_SPARC_TLS_GD_LO10>: ...this. Adjust 4th argument in call to 4582*867d70fcSchristos sparc_elf_tls_transition and remove redundant code. 4583*867d70fcSchristos <R_SPARC_TLS_LDM_HI22>: Turn call to bfd_link_pic into call to 4584*867d70fcSchristos !bfd_link_executable. 4585*867d70fcSchristos <R_SPARC_TLS_LDO_HIX22>: Likewise. 4586*867d70fcSchristos <R_SPARC_TLS_LE_HIX22>: Likewise. Tidy up. 4587*867d70fcSchristos <R_SPARC_TLS_LDM_CALL>: Likewise. 4588*867d70fcSchristos <R_SPARC_TLS_GD_CALL>: Likewise. Tidy up. 4589*867d70fcSchristos <R_SPARC_TLS_GD_ADD>: Likewise. 4590*867d70fcSchristos <R_SPARC_TLS_LDM_ADD>: Likewise. 4591*867d70fcSchristos <R_SPARC_TLS_LDO_ADD>: Likewise. 4592*867d70fcSchristos <R_SPARC_TLS_IE_LD>: Likewise. 4593*867d70fcSchristos 4594*867d70fcSchristos2018-02-06 Miloš Stojanović <milos.stojanovic@rt-rk.com> 4595*867d70fcSchristos 4596*867d70fcSchristos PR 22789 4597*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): If the dwarf 4598*867d70fcSchristos functions failed to find the function name, try the generic elf 4599*867d70fcSchristos find function instead. 4600*867d70fcSchristos 4601*867d70fcSchristos2018-02-06 Sergio Durigan Junior <sergiodj@redhat.com> 4602*867d70fcSchristos 4603*867d70fcSchristos * coff-rs6000.c (xcoff_write_archive_contents_old): Use 4604*867d70fcSchristos 'memcpy' instead of 'strncpy' when writing the magic number. 4605*867d70fcSchristos 4606*867d70fcSchristos2018-02-06 Nick Clifton <nickc@redhat.com> 4607*867d70fcSchristos 4608*867d70fcSchristos PR 22794 4609*867d70fcSchristos * opncls.c (bfd_get_debug_link_info_1): Check the size of the 4610*867d70fcSchristos section before attempting to read it in. 4611*867d70fcSchristos (bfd_get_alt_debug_link_info): Likewise. 4612*867d70fcSchristos 4613*867d70fcSchristos2018-02-06 Paul Carroll <pcarroll@codesourcery.com> 4614*867d70fcSchristos 4615*867d70fcSchristos * bfd/dwarf2.c (find_abstract_name): Modified to return file and 4616*867d70fcSchristos line information in addition to name, if they can be found. 4617*867d70fcSchristos 4618*867d70fcSchristos2018-02-05 Renlin Li <renlin.li@arm.com> 4619*867d70fcSchristos 4620*867d70fcSchristos PR ld/22764 4621*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Relax the 4622*867d70fcSchristos R_AARCH64_ABS32 and R_AARCH64_ABS16 for absolute symbol. Apply the 4623*867d70fcSchristos check for writeable section as well. 4624*867d70fcSchristos 4625*867d70fcSchristos2018-02-05 H.J. Lu <hongjiu.lu@intel.com> 4626*867d70fcSchristos 4627*867d70fcSchristos PR ld/22782 4628*867d70fcSchristos * elf32-i386.c (elf_i386_check_relocs): Set got_referenced if 4629*867d70fcSchristos _GLOBAL_OFFSET_TABLE_ is referenced or GOT is needed to resolve 4630*867d70fcSchristos undefined weak symbol to 0. 4631*867d70fcSchristos * elf64-x86-64.c (elf_x86_64_check_relocs): Set got_referenced 4632*867d70fcSchristos if _GLOBAL_OFFSET_TABLE_ is referenced. 4633*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Check 4634*867d70fcSchristos got_referenced instead of ref_regular_nonweak. Remove the 4635*867d70fcSchristos unused _GLOBAL_OFFSET_TABLE_ from symbol table. 4636*867d70fcSchristos * elfxx-x86.h (elf_x86_link_hash_table): Add got_referenced. 4637*867d70fcSchristos 4638*867d70fcSchristos2018-02-05 Maciej W. Rozycki <macro@mips.com> 4639*867d70fcSchristos 4640*867d70fcSchristos * elfnn-riscv.c (_bfd_riscv_relax_pc): Use `memset' to 4641*867d70fcSchristos initialize `hi_reloc'. 4642*867d70fcSchristos 4643*867d70fcSchristos2018-02-05 Maciej W. Rozycki <macro@mips.com> 4644*867d70fcSchristos 4645*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_section_processing): For 4646*867d70fcSchristos SHT_MIPS_REGINFO sections don't assert the correct size and 4647*867d70fcSchristos report an error instead. 4648*867d70fcSchristos 4649*867d70fcSchristos2018-02-05 Maciej W. Rozycki <macro@mips.com> 4650*867d70fcSchristos 4651*867d70fcSchristos * elf.c (_bfd_elf_write_object_contents): Propagate a failure 4652*867d70fcSchristos status from `->elf_backend_section_processing'. 4653*867d70fcSchristos 4654*867d70fcSchristos2018-02-02 Jim Wilson <jimw@sifive.com> 4655*867d70fcSchristos 4656*867d70fcSchristos PR ld/22756 4657*867d70fcSchristos * elfnn-riscv.c (riscv_relax_delete_bytes): New parameter link_info. 4658*867d70fcSchristos If link_info->wrap_hash, check for a duplicate symbol and ignore. 4659*867d70fcSchristos (_bfd_riscv_relax_call, bfd_riscv_relax_lui, _bfd_riscv_relax_tls_le): 4660*867d70fcSchristos Pass new argument to riscv_relax_delete_bytes. 4661*867d70fcSchristos (_bfd_riscv_relax_align, _bfd_riscv_relax_delete): Likewise. Remove 4662*867d70fcSchristos ATTRIBUTE_UNUSED from link_info parameter. 4663*867d70fcSchristos 4664*867d70fcSchristos2018-02-02 Alan Modra <amodra@gmail.com> 4665*867d70fcSchristos 4666*867d70fcSchristos * elf64-ppc.c (ppc64_elf_relocate_section): Don't relocate nops 4667*867d70fcSchristos emitted for toc sequence optimization. Set and use "howto" later. 4668*867d70fcSchristos 4669*867d70fcSchristos2018-02-01 Simon Marchi <simon.marchi@ericsson.com> 4670*867d70fcSchristos 4671*867d70fcSchristos * elf64-ppc.c (ppc64_elf_archive_symbol_lookup): Avoid pointer 4672*867d70fcSchristos arithmetic on NULL pointer. 4673*867d70fcSchristos * elflink.c (_bfd_elf_archive_symbol_lookup, 4674*867d70fcSchristos elf_link_add_archive_symbols): Likewise. 4675*867d70fcSchristos 4676*867d70fcSchristos2018-01-31 Michael Matz <matz@suse.de> 4677*867d70fcSchristos 4678*867d70fcSchristos * elflink.c (bfd_elf_define_start_stop): Fix check of 4679*867d70fcSchristos def_dynamic. 4680*867d70fcSchristos 4681*867d70fcSchristos2018-01-31 H.J. Lu <hongjiu.lu@intel.com> 4682*867d70fcSchristos 4683*867d70fcSchristos PR ld/21964 4684*867d70fcSchristos * elflink.c (bfd_elf_define_start_stop): Check if __start and 4685*867d70fcSchristos __stop symbols are referenced by shared objects. 4686*867d70fcSchristos 4687*867d70fcSchristos2018-01-30 Alan Modra <amodra@gmail.com> 4688*867d70fcSchristos 4689*867d70fcSchristos PR 22758 4690*867d70fcSchristos * elf.c (_bfd_elf_map_sections_to_segments): Don't start a new 4691*867d70fcSchristos segment when demand paged with lma on the same page. Test this 4692*867d70fcSchristos before load/non-load, executable/non-executable, 4693*867d70fcSchristos writable/non-writable tests and simplify. Delete bogus relro 4694*867d70fcSchristos condition in writable/non-writable test. Delete outdated 4695*867d70fcSchristos comment. Formatting. 4696*867d70fcSchristos 4697*867d70fcSchristos2018-01-30 Alan Modra <amodra@gmail.com> 4698*867d70fcSchristos 4699*867d70fcSchristos * elflink.c (bfd_elf_define_start_stop): Make __start and __stop 4700*867d70fcSchristos symbols dynamic. 4701*867d70fcSchristos 4702*867d70fcSchristos2018-01-29 Alan Modra <amodra@gmail.com> 4703*867d70fcSchristos 4704*867d70fcSchristos PR 22741 4705*867d70fcSchristos * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in 4706*867d70fcSchristos range before converting to a symbol table pointer. 4707*867d70fcSchristos 4708*867d70fcSchristos2018-01-27 Nick Clifton <nickc@redhat.com> 4709*867d70fcSchristos 4710*867d70fcSchristos * po/ru.po: Updated Russian translation. 4711*867d70fcSchristos 4712*867d70fcSchristos2018-01-26 Alan Modra <amodra@gmail.com> 4713*867d70fcSchristos 4714*867d70fcSchristos * elflink.c (bfd_elf_define_start_stop): Override symbols when 4715*867d70fcSchristos they are defined dynamically. 4716*867d70fcSchristos 4717*867d70fcSchristos2018-01-26 Alan Modra <amodra@gmail.com> 4718*867d70fcSchristos 4719*867d70fcSchristos * elf64-ppc.c (ppc64_elf_size_stubs): Iterate sizing when 4720*867d70fcSchristos .branch_lt changes size. 4721*867d70fcSchristos 4722*867d70fcSchristos2018-01-25 Alan Modra <amodra@gmail.com> 4723*867d70fcSchristos 4724*867d70fcSchristos PR 22746 4725*867d70fcSchristos * elfcode.h (elf_object_p): Avoid integer overflow. 4726*867d70fcSchristos 4727*867d70fcSchristos2018-01-25 Eric Botcazou <ebotcazou@adacore.com> 4728*867d70fcSchristos 4729*867d70fcSchristos PR ld/22727 4730*867d70fcSchristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs) <R_SPARC_TLS_GD_CALL>: 4731*867d70fcSchristos Do a mere lookup of the __tls_get_addr symbol instead of adding it. 4732*867d70fcSchristos 4733*867d70fcSchristos Revert 4734*867d70fcSchristos 2017-10-19 H.J. Lu <hongjiu.lu@intel.com> 4735*867d70fcSchristos 4736*867d70fcSchristos PR ld/22263 4737*867d70fcSchristos * elfxx-sparc.c (sparc_elf_tls_transition): Replace 4738*867d70fcSchristos bfd_link_pic with !bfd_link_executable, !bfd_link_pic with 4739*867d70fcSchristos bfd_link_executable for TLS check. 4740*867d70fcSchristos (_bfd_sparc_elf_check_relocs): Likewise. 4741*867d70fcSchristos (allocate_dynrelocs): Likewise. 4742*867d70fcSchristos (_bfd_sparc_elf_relocate_section): Likewise. 4743*867d70fcSchristos 4744*867d70fcSchristos2018-01-24 Renlin Li <renlin.li@arm.com> 4745*867d70fcSchristos 4746*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_final_link_relocate): Add support for 4747*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, 4748*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, 4749*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, 4750*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G3. 4751*867d70fcSchristos * elfxx-aarch64.c (_bfd_aarch64_elf_put_addend): Likewise. 4752*867d70fcSchristos (_bfd_aarch64_elf_resolve_relocation): Likewise. 4753*867d70fcSchristos 4754*867d70fcSchristos2018-01-24 Renlin Li <renlin.li@arm.com> 4755*867d70fcSchristos 4756*867d70fcSchristos * reloc.c: Add BFD_RELOC_AARCH64_MOVW_PREL_G0, 4757*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, BFD_RELOC_AARCH64_MOVW_PREL_G1, 4758*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, BFD_RELOC_AARCH64_MOVW_PREL_G2, 4759*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, BFD_RELOC_AARCH64_MOVW_PREL_G3. 4760*867d70fcSchristos * elfnn-aarch64.c (elfNN_aarch64_howto_table): Add entries for 4761*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G0, BFD_RELOC_AARCH64_MOVW_PREL_G0_NC, 4762*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G1, BFD_RELOC_AARCH64_MOVW_PREL_G1_NC, 4763*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G2, BFD_RELOC_AARCH64_MOVW_PREL_G2_NC, 4764*867d70fcSchristos BFD_RELOC_AARCH64_MOVW_PREL_G3. 4765*867d70fcSchristos * bfd-in2.h: Regenerate. 4766*867d70fcSchristos * libbfd.h: Regenerate. 4767*867d70fcSchristos 4768*867d70fcSchristos2018-01-23 Maciej W. Rozycki <macro@mips.com> 4769*867d70fcSchristos 4770*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_final_link): Update a stale 4771*867d70fcSchristos `mips_elf32_section_processing' comment reference. 4772*867d70fcSchristos 4773*867d70fcSchristos2018-01-20 H.J. Lu <hongjiu.lu@intel.com> 4774*867d70fcSchristos 4775*867d70fcSchristos PR ld/22721 4776*867d70fcSchristos * elfxx-x86.c (_bfd_x86_elf_link_check_relocs): Check the 4777*867d70fcSchristos versioned __tls_get_addr symbol. 4778*867d70fcSchristos 4779*867d70fcSchristos2018-01-19 Nick Clifton <nickc@redhat.com> 4780*867d70fcSchristos 4781*867d70fcSchristos * po/fr.po: Updated French translation. 4782*867d70fcSchristos 4783*867d70fcSchristos2018-01-18 Alan Modra <amodra@gmail.com> 4784*867d70fcSchristos 4785*867d70fcSchristos * elf32-ppc.c (ppc_elf_create_glink): Correct alignment of .glink. 4786*867d70fcSchristos * elf64-ppc.c (ppc64_elf_size_stubs): Handle negative plt_stub_align. 4787*867d70fcSchristos (ppc64_elf_build_stubs): Likewise. 4788*867d70fcSchristos 4789*867d70fcSchristos2018-01-17 Nick Clifton <nickc@redhat.com> 4790*867d70fcSchristos 4791*867d70fcSchristos * po/ru.po: Updated Russian translation. 4792*867d70fcSchristos * po/uk/po: Updated Ukranian translation. 4793*867d70fcSchristos 4794*867d70fcSchristos2018-01-17 Alan Modra <amodra@gmail.com> 4795*867d70fcSchristos 4796*867d70fcSchristos * elf64-ppc.c (ppc64_elf_build_stubs): Silence gcc warning. 4797*867d70fcSchristos 4798*867d70fcSchristos2018-01-17 Alan Modra <amodra@gmail.com> 4799*867d70fcSchristos 4800*867d70fcSchristos * elf32-ppc.c (GLINK_ENTRY_SIZE): Handle speculation barrier. 4801*867d70fcSchristos (CRSETEQ, BEQCTRM): Define. 4802*867d70fcSchristos (is_nonpic_glink_stub): Don't check bctr. 4803*867d70fcSchristos (ppc_elf_link_hash_table_create): Init new ppc_elf_params field. 4804*867d70fcSchristos (ppc_elf_relax_section): Size speculation barrier. 4805*867d70fcSchristos (output_bctr): New function. 4806*867d70fcSchristos (write_glink_stub): Use output_bctr. 4807*867d70fcSchristos (ppc_elf_relocate_section): Use output_bctr for long branch stub. 4808*867d70fcSchristos (ppc_elf_finish_dynamic_symbol): Likewise. 4809*867d70fcSchristos (ppc_elf_finish_dynamic_sections): Use output_bctr. 4810*867d70fcSchristos * elf32-ppc.h (struct ppc_elf_params): Add speculate_indirect_jumps. 4811*867d70fcSchristos * elf64-ppc.c (CRSETEQ, BEQCTRM, BEQCTRLM): Define. 4812*867d70fcSchristos (GLINK_PLTRESOLVE_SIZE): Size speculation barrier. 4813*867d70fcSchristos (size_global_entry_stubs): Handle speculation barrier sizing. 4814*867d70fcSchristos (plt_stub_size): Likewise. 4815*867d70fcSchristos (output_bctr): New function. 4816*867d70fcSchristos (build_plt_stub, build_tls_get_addr_stub): Output speculation 4817*867d70fcSchristos barrier. 4818*867d70fcSchristos (ppc_build_one_stub): Likewise for ppc_stub_plt_branch. 4819*867d70fcSchristos (ppc_size_one_stub): Size speculation barrier in ppc_stub_plt_branch. 4820*867d70fcSchristos (build_global_entry_stubs): Output speculation barrier. 4821*867d70fcSchristos (ppc64_elf_build_stubs): Likewise in __glink_PLTresolve stub. 4822*867d70fcSchristos * elf64-ppc.h (struct ppc64_elf_params): Add speculate_indirect_jumps. 4823*867d70fcSchristos 4824*867d70fcSchristos2018-01-17 Alan Modra <amodra@gmail.com> 4825*867d70fcSchristos 4826*867d70fcSchristos * elf32-ppc.c (GLINK_ENTRY_SIZE): Add parameters, handle 4827*867d70fcSchristos __tls_get_addr_opt, and alignment sizing. 4828*867d70fcSchristos (TLS_GET_ADDR_GLINK_SIZE): Delete. 4829*867d70fcSchristos (is_nonpic_glink_stub): Don't use GLINK_ENTRY_SIZE. 4830*867d70fcSchristos (ppc_elf_get_synthetic_symtab): Recognize stubs spaced at 4, 6, 4831*867d70fcSchristos or 8 insns. 4832*867d70fcSchristos (ppc_elf_link_hash_table_create): Init new ppc_elf_params field. 4833*867d70fcSchristos (allocate_dynrelocs): Use new GLINK_ENTRY_SIZE. 4834*867d70fcSchristos (ppc_elf_size_dynamic_sections): Likewise. Size branch table 4835*867d70fcSchristos by PLT reloc count. 4836*867d70fcSchristos (write_glink_stub): Handle __tls_get_addr_opt stub. 4837*867d70fcSchristos Pad out to size given by GLINK_ENTRY_SIZE. 4838*867d70fcSchristos (ppc_elf_relocate_section): Adjust write_glink_stub call. 4839*867d70fcSchristos (ppc_elf_finish_dynamic_symbol): Likewise. 4840*867d70fcSchristos (ppc_elf_finish_dynamic_sections): Write PLTresolve without using 4841*867d70fcSchristos insn array since so many need rewriting. 4842*867d70fcSchristos * elf32-ppc.h (struct ppc_elf_params): Add plt_stub_align. 4843*867d70fcSchristos * elf64-ppc.c (GLINK_PLTRESOLVE_SIZE): Rename from 4844*867d70fcSchristos GLINK_CALL_STUB_SIZE. Add htab param and evaluate to size without 4845*867d70fcSchristos nops. Adjust all uses. 4846*867d70fcSchristos (ppc64_elf_get_synthetic_symtab): Don't use GLINK_CALL_STUB_SIZE 4847*867d70fcSchristos in glink_vma calculation. 4848*867d70fcSchristos (struct ppc_link_hash_table): Add global_entry section pointer. 4849*867d70fcSchristos (create_linkage_sections): Create separate section for global 4850*867d70fcSchristos entry stubs. 4851*867d70fcSchristos (PPC_LO, PPC_HI, PPC_HA): Move earlier. 4852*867d70fcSchristos (size_global_entry_stubs): Handle sizing for aligned stubs. 4853*867d70fcSchristos (ppc64_elf_size_dynamic_sections): Handle global_entry alloc, 4854*867d70fcSchristos and don't stash end of glink branch table in rawsize. 4855*867d70fcSchristos (ppc_build_one_stub): Rewrite stub size calculations. 4856*867d70fcSchristos (build_global_entry_stubs): Use new section. 4857*867d70fcSchristos (ppc64_elf_build_stubs): Don't pad __glink_PLTresolve with nops. 4858*867d70fcSchristos Build lazy link stubs out to end of section. Build global entry 4859*867d70fcSchristos stubs in new section. 4860*867d70fcSchristos 4861*867d70fcSchristos2018-01-15 Nick Clifton <nickc@redhat.com> 4862*867d70fcSchristos 4863*867d70fcSchristos * po/uk.po: Updated Ukranian translation. 4864*867d70fcSchristos 4865*867d70fcSchristos2018-01-13 Nick Clifton <nickc@redhat.com> 4866*867d70fcSchristos 4867*867d70fcSchristos * po/bfd.pot: Regenerated. 4868*867d70fcSchristos 4869*867d70fcSchristos2018-01-13 Nick Clifton <nickc@redhat.com> 4870*867d70fcSchristos 4871*867d70fcSchristos * version.m4: Bump version to 2.30.51 4872*867d70fcSchristos * configure: Regenerate. 4873*867d70fcSchristos 4874*867d70fcSchristos2018-01-13 Nick Clifton <nickc@redhat.com> 4875*867d70fcSchristos 4876*867d70fcSchristos 2.30 branch created. 4877*867d70fcSchristos 4878*867d70fcSchristos2018-01-12 Jens Widell <jl@opera.com> 4879*867d70fcSchristos 4880*867d70fcSchristos * elf.c (setup_group): Optimize search for group by remembering 4881*867d70fcSchristos last found group and restarting search at that index. 4882*867d70fcSchristos * elf-bfd.h (struct elf_obj_tdata): Add group_search_offset field. 4883*867d70fcSchristos 4884*867d70fcSchristos2018-01-12 Gunther Nikl <gnikl@users.sourceforge.net> 4885*867d70fcSchristos 4886*867d70fcSchristos * aoutx.h (aout_link_check_ar_symbols): Remove default and handle 4887*867d70fcSchristos bfd_link_common_skip_none in switch. 4888*867d70fcSchristos 4889*867d70fcSchristos2018-01-12 Alan Modra <amodra@gmail.com> 4890*867d70fcSchristos 4891*867d70fcSchristos PR ld/22649 4892*867d70fcSchristos * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Ignore dynamic 4893*867d70fcSchristos references on forced local symbols. 4894*867d70fcSchristos 4895*867d70fcSchristos2018-01-12 Vlad Ivanov <vlad@ivanov.email> 4896*867d70fcSchristos 4897*867d70fcSchristos * elfxx-mips.c (_bfd_mips_elf_final_link): Notify user when 4898*867d70fcSchristos .reginfo section has wrong size. 4899*867d70fcSchristos 4900*867d70fcSchristos2018-01-11 H.J. Lu <hongjiu.lu@intel.com> 4901*867d70fcSchristos 4902*867d70fcSchristos PR ld/22393 4903*867d70fcSchristos * elf.c (_bfd_elf_map_sections_to_segments): When generating 4904*867d70fcSchristos separate code and read-only data LOAD segments, create a new 4905*867d70fcSchristos LOAD segment if the previous section contains text and the 4906*867d70fcSchristos current section doesn't or vice versa. Don't put a writable 4907*867d70fcSchristos section in a read-only segment if there is a RELRO segment. 4908*867d70fcSchristos 4909*867d70fcSchristos2018-01-11 H.J. Lu <hongjiu.lu@intel.com> 4910*867d70fcSchristos 4911*867d70fcSchristos PR ld/22649 4912*867d70fcSchristos * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Ignore dynamic 4913*867d70fcSchristos references on forced local symbols. 4914*867d70fcSchristos 4915*867d70fcSchristos2018-01-11 H.J. Lu <hongjiu.lu@intel.com> 4916*867d70fcSchristos 4917*867d70fcSchristos PR ld/22677 4918*867d70fcSchristos * elflink.c (bfd_elf_gc_sections): Keep all PREINIT_ARRAY, 4919*867d70fcSchristos INIT_ARRAY as well as FINI_ARRAY sections for ld -r --gc-section. 4920*867d70fcSchristos 4921*867d70fcSchristos2018-01-09 Kuan-Lin Chen <kuanlinchentw@gmail.com> 4922*867d70fcSchristos 4923*867d70fcSchristos PR 22662 4924*867d70fcSchristos * elf32-nds32.c (nds32_elf_relax_loadstore): Fix a typographical error. 4925*867d70fcSchristos 4926*867d70fcSchristos2018-01-03 John Baldwin <jhb@FreeBSD.org> 4927*867d70fcSchristos 4928*867d70fcSchristos * elf.c (elfcore_grok_freebsd_note): Handle 4929*867d70fcSchristos NT_FREEBSD_PROCSTAT_PROC, NT_FREEBSD_PROCSTAT_FILES, and 4930*867d70fcSchristos NT_FREEBSD_PROCSTAT_VMMAP. 4931*867d70fcSchristos 4932*867d70fcSchristos2018-01-03 Alan Modra <amodra@gmail.com> 4933*867d70fcSchristos 4934*867d70fcSchristos Update year range in copyright notice of all files. 4935*867d70fcSchristos 4936*867d70fcSchristosFor older changes see ChangeLog-2017 4937*867d70fcSchristos 4938*867d70fcSchristosCopyright (C) 2018 Free Software Foundation, Inc. 4939*867d70fcSchristos 4940*867d70fcSchristosCopying and distribution of this file, with or without modification, 4941*867d70fcSchristosare permitted in any medium without royalty provided the copyright 4942*867d70fcSchristosnotice and this notice are preserved. 4943*867d70fcSchristos 4944*867d70fcSchristosLocal Variables: 4945*867d70fcSchristosmode: change-log 4946*867d70fcSchristosleft-margin: 8 4947*867d70fcSchristosfill-column: 74 4948*867d70fcSchristosversion-control: never 4949*867d70fcSchristosEnd: 4950