1*75fd0b74Schristos2010-12-31 Robert Millan <rmh@gnu.org> 2*75fd0b74Schristos 3*75fd0b74Schristos * config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu. 4*75fd0b74Schristos * configure.host: Likewise. 5*75fd0b74Schristos * configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec', 6*75fd0b74Schristos `bfd_elf32_ntradlittlemips_freebsd_vec', 7*75fd0b74Schristos `bfd_elf32_tradbigmips_freebsd_vec', 8*75fd0b74Schristos `bfd_elf32_tradlittlemips_freebsd_vec', 9*75fd0b74Schristos `bfd_elf64_tradbigmips_freebsd_vec' and 10*75fd0b74Schristos `bfd_elf64_tradlittlemips_freebsd_vec'. 11*75fd0b74Schristos * configure: Regenerate. 12*75fd0b74Schristos * elf32-mips.c: New target for FreeBSD support 13*75fd0b74Schristos (same as traditional MIPS but overrides ELF_OSABI 14*75fd0b74Schristos with ELFOSABI_FREEBSD). 15*75fd0b74Schristos * elf64-mips.c: Likewise. 16*75fd0b74Schristos * elfn32-mips.c: Likewise. 17*75fd0b74Schristos * targets.c (_bfd_target_vector): Add 18*75fd0b74Schristos `bfd_elf32_ntradbigmips_freebsd_vec', 19*75fd0b74Schristos `bfd_elf32_ntradlittlemips_freebsd_vec', 20*75fd0b74Schristos `bfd_elf32_tradbigmips_freebsd_vec', 21*75fd0b74Schristos `bfd_elf32_tradlittlemips_freebsd_vec', 22*75fd0b74Schristos `bfd_elf64_tradbigmips_freebsd_vec' and 23*75fd0b74Schristos `bfd_elf64_tradlittlemips_freebsd_vec'. 24*75fd0b74Schristos 25*75fd0b74Schristos2010-12-30 H.J. Lu <hongjiu.lu@intel.com> 26*75fd0b74Schristos 27*75fd0b74Schristos * elfcode.h (NAME(elf,r_info)): New. 28*75fd0b74Schristos (NAME(elf,r_sym)): Likewise. 29*75fd0b74Schristos 30*75fd0b74Schristos * elflink.c (elf64_r_info): Removed. 31*75fd0b74Schristos (elf32_r_info): Likewise. 32*75fd0b74Schristos (elf64_r_sym): Likewise. 33*75fd0b74Schristos (elf32_r_sym): Likewise. 34*75fd0b74Schristos 35*75fd0b74Schristos2010-12-30 H.J. Lu <hongjiu.lu@intel.com> 36*75fd0b74Schristos 37*75fd0b74Schristos * elf64-x86-64.c (elf_x86_64_relocs_compatible): New. 38*75fd0b74Schristos (elf_backend_relocs_compatible): Defined to 39*75fd0b74Schristos elf_x86_64_relocs_compatible. 40*75fd0b74Schristos 41*75fd0b74Schristos2010-12-30 H.J. Lu <hongjiu.lu@intel.com> 42*75fd0b74Schristos 43*75fd0b74Schristos * archures.c (bfd_mach_x64_32): New. 44*75fd0b74Schristos (bfd_mach_x64_32_intel_syntax): Likewise. 45*75fd0b74Schristos * bfd-in2.h: Regenerated. 46*75fd0b74Schristos 47*75fd0b74Schristos * config.bfd (targ64_selvecs): Add bfd_elf32_x86_64_vec for 48*75fd0b74Schristos i[3-7]86-*-linux-*. 49*75fd0b74Schristos (targ_selvecs): Add bfd_elf32_x86_64_vec for x86_64-*-linux-*. 50*75fd0b74Schristos 51*75fd0b74Schristos * configure.in: Support bfd_elf32_x86_64_vec. 52*75fd0b74Schristos * configure: Regenerated. 53*75fd0b74Schristos 54*75fd0b74Schristos * cpu-i386.c (bfd_x64_32_arch_intel_syntax): New. 55*75fd0b74Schristos (bfd_x64_32_arch): Likewise. 56*75fd0b74Schristos 57*75fd0b74Schristos * elf-bfd.h (elf_append_rela): New prototype. 58*75fd0b74Schristos (elf_append_rel): Likewise. 59*75fd0b74Schristos (elf64_r_info): Likewise. 60*75fd0b74Schristos (elf32_r_info): Likewise. 61*75fd0b74Schristos (elf64_r_sym): Likewise. 62*75fd0b74Schristos (elf32_r_sym): Likewise. 63*75fd0b74Schristos 64*75fd0b74Schristos * elf64-x86-64.c (ABI_64_P): New. 65*75fd0b74Schristos (elf_x86_64_info_to_howto): Replace ELF64_R_TYPE with 66*75fd0b74Schristos ELF32_R_TYPE. Replace ELF64_ST_TYPE with ELF_ST_TYPE. 67*75fd0b74Schristos (elf_x86_64_check_tls_transition):Likewise. 68*75fd0b74Schristos (elf_x86_64_check_relocs): Likewise. 69*75fd0b74Schristos (elf_x86_64_gc_mark_hook):Likewise. 70*75fd0b74Schristos (elf_x86_64_gc_sweep_hook): Likewise. 71*75fd0b74Schristos (elf_x86_64_relocate_section): Likewise. 72*75fd0b74Schristos (elf_x86_64_reloc_type_class): Likewise. 73*75fd0b74Schristos (ELF_DYNAMIC_INTERPRETER): Renamed to ... 74*75fd0b74Schristos (ELF64_DYNAMIC_INTERPRETER): This. 75*75fd0b74Schristos (ELF32_DYNAMIC_INTERPRETER): New. 76*75fd0b74Schristos (elf_x86_64_link_hash_table): Add r_info, r_sym, swap_reloca_out, 77*75fd0b74Schristos dynamic_interpreter and dynamic_interpreter_size. 78*75fd0b74Schristos (elf_x86_64_get_local_sym_hash): Replace ELF64_R_SYM with 79*75fd0b74Schristos htab->r_sym. Replace ELF64_R_INFO with htab->r_info. 80*75fd0b74Schristos (elf_x86_64_get_local_sym_hash): Likewise. 81*75fd0b74Schristos (elf_x86_64_check_tls_transition):Likewise. 82*75fd0b74Schristos (elf_x86_64_check_relocs): Likewise. 83*75fd0b74Schristos (elf_x86_64_gc_mark_hook):Likewise. 84*75fd0b74Schristos (elf_x86_64_gc_sweep_hook): Likewise. 85*75fd0b74Schristos (elf_x86_64_relocate_section): Likewise. 86*75fd0b74Schristos (elf_x86_64_finish_dynamic_symbol): Likewise. 87*75fd0b74Schristos (elf_x86_64_finish_local_dynamic_symbol): Likewise. 88*75fd0b74Schristos (elf_x86_64_link_hash_table_create): Initialize r_info, r_sym, 89*75fd0b74Schristos swap_reloca_out, dynamic_interpreter and dynamic_interpreter_size. 90*75fd0b74Schristos (elf_x86_64_check_relocs): Check ABI_64_P when requesting for 91*75fd0b74Schristos PIC. 92*75fd0b74Schristos (elf_x86_64_relocate_section): Likewise. 93*75fd0b74Schristos (elf64_x86_64_adjust_dynamic_symbol): Replace sizeof 94*75fd0b74Schristos (Elf64_External_Rela) with bed->s->sizeof_rela. 95*75fd0b74Schristos (elf64_x86_64_allocate_dynrelocs): Likewise. 96*75fd0b74Schristos (elf64_x86_64_size_dynamic_sections): Likewise. 97*75fd0b74Schristos (elf64_x86_64_finish_dynamic_symbol): Likewise. 98*75fd0b74Schristos (elf64_x86_64_append_rela): Removed. 99*75fd0b74Schristos (elf32_x86_64_elf_object_p): New. 100*75fd0b74Schristos Add bfd_elf32_x86_64_vec. 101*75fd0b74Schristos 102*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_xxx): Renamed to ... 103*75fd0b74Schristos (elf_x86_64_xxx): This. 104*75fd0b74Schristos 105*75fd0b74Schristos * elflink.c (bfd_elf_final_link): Check ELF file class on error. 106*75fd0b74Schristos (elf_append_rela): New. 107*75fd0b74Schristos (elf_append_rel): Likewise. 108*75fd0b74Schristos (elf64_r_info): Likewise. 109*75fd0b74Schristos (elf32_r_info): Likewise. 110*75fd0b74Schristos (elf64_r_sym): Likewise. 111*75fd0b74Schristos (elf32_r_sym): Likewise. 112*75fd0b74Schristos 113*75fd0b74Schristos * targets.c (bfd_elf32_x86_64_vec): New. 114*75fd0b74Schristos (_bfd_target_vector): Add bfd_elf32_x86_64_vec. 115*75fd0b74Schristos 116*75fd0b74Schristos2010-12-24 Alan Modra <amodra@gmail.com> 117*75fd0b74Schristos 118*75fd0b74Schristos * compress.c (decompress_contents): Style. 119*75fd0b74Schristos (bfd_get_full_section_contents): Do not decompress directly into 120*75fd0b74Schristos caller buffer or directly return cached section contents. 121*75fd0b74Schristos Check malloc return for compressed_buffer. 122*75fd0b74Schristos 123*75fd0b74Schristos2010-12-21 Kai Tietz <kai.tietz@onevision.com> 124*75fd0b74Schristos 125*75fd0b74Schristos * peXXigen.c (_bfd_XXi_final_link_postscript): Use 126*75fd0b74Schristos bfd_get_symbol_leading_char to determine "_tls_used" name. 127*75fd0b74Schristos 128*75fd0b74Schristos2010-12-21 Pierre Muller <muller@ics.u-strasbg.fr> 129*75fd0b74Schristos 130*75fd0b74Schristos * peXXigen.c (_bfd_XXi_final_link_postscript): Use correct size 131*75fd0b74Schristos for windows 64-bit TLS table size. 132*75fd0b74Schristos 133*75fd0b74Schristos2010-12-16 DJ Delorie <dj@redhat.com> 134*75fd0b74Schristos 135*75fd0b74Schristos * reloc.c (BFD_RELOC_RX_ABS16_REV): Add. 136*75fd0b74Schristos (BFD_RELOC_RX_ABS32_REV): Add. 137*75fd0b74Schristos * bfd-in2.h: Regenerate. 138*75fd0b74Schristos * libbfd.h: Regenerate. 139*75fd0b74Schristos * elf32-rx.c (rx_reloc_map): Add them. 140*75fd0b74Schristos 141*75fd0b74Schristos2010-12-15 H.J. Lu <hongjiu.lu@intel.com> 142*75fd0b74Schristos 143*75fd0b74Schristos * elf.c (_bfd_elf_new_section_hook): Special handling for 144*75fd0b74Schristos .init_array/.fini_array output sections. 145*75fd0b74Schristos 146*75fd0b74Schristos2010-12-13 Alan Modra <amodra@gmail.com> 147*75fd0b74Schristos 148*75fd0b74Schristos * aoutx.h (aout_link_check_ar_symbols): Formatting. 149*75fd0b74Schristos * cofflink.c (coff_link_check_ar_symbols): Likewise. 150*75fd0b74Schristos * elflink.c (elf_link_add_archive_symbols): Likewise. 151*75fd0b74Schristos * pdp11.c (aout_link_check_ar_symbols): Likewise. 152*75fd0b74Schristos * xcofflink.c (xcoff_link_check_dynamic_ar_symbols, 153*75fd0b74Schristos xcoff_link_check_dynamic_ar_symbols): Likewise. 154*75fd0b74Schristos 155*75fd0b74Schristos * aoutx.h (aout_link_check_archive_element): Simplify code dealing 156*75fd0b74Schristos with add_archive_element substitute BFD. 157*75fd0b74Schristos * cofflink.c (coff_link_check_archive_element): Likewise. 158*75fd0b74Schristos * ecoff.c (ecoff_link_check_archive_element): Likewise. 159*75fd0b74Schristos (ecoff_link_add_archive_symbols): Likewise. 160*75fd0b74Schristos * linker.c (generic_link_check_archive_element): Likewise. 161*75fd0b74Schristos * pdp11.c (aout_link_check_archive_element): Likewise. 162*75fd0b74Schristos * vms-alpha.c (alpha_vms_link_add_archive_symbols): Likewise. 163*75fd0b74Schristos * xcofflink.c (xcoff_link_check_archive_element): Likewise. 164*75fd0b74Schristos 165*75fd0b74Schristos * aoutx.h (aout_link_check_archive_element): Free symbols from old 166*75fd0b74Schristos bfd if !keep_memory. 167*75fd0b74Schristos * cofflink.c (coff_link_check_archive_element): Likewise. 168*75fd0b74Schristos * pdp11.c (aout_link_check_archive_element): Likewise. 169*75fd0b74Schristos * xcofflink.c (xcoff_link_check_archive_element): Likewise. 170*75fd0b74Schristos 171*75fd0b74Schristos2010-12-13 Alan Modra <amodra@gmail.com> 172*75fd0b74Schristos 173*75fd0b74Schristos * plugin.c (bfd_plugin_mkobject): Delete. 174*75fd0b74Schristos (plugin_vec): Use bfd_false instead. 175*75fd0b74Schristos 176*75fd0b74Schristos2010-12-12 H.J. Lu <hongjiu.lu@intel.com> 177*75fd0b74Schristos 178*75fd0b74Schristos * elflink.c (elf_link_add_archive_symbols): Remove subsbfd. 179*75fd0b74Schristos 180*75fd0b74Schristos2010-12-12 H.J. Lu <hongjiu.lu@intel.com> 181*75fd0b74Schristos 182*75fd0b74Schristos * elf.c (special_sections_g): Add ".gnu.lto_". 183*75fd0b74Schristos 184*75fd0b74Schristos2010-12-10 Alan Modra <amodra@gmail.com> 185*75fd0b74Schristos 186*75fd0b74Schristos * config.bfd: Configure rs6000-*-aix* as for powerpc-*-aix*. 187*75fd0b74Schristos Add aix5coff64_vec to powerpc ELF entries. 188*75fd0b74Schristos 189*75fd0b74Schristos2010-12-09 Mike Frysinger <vapier@gentoo.org> 190*75fd0b74Schristos 191*75fd0b74Schristos * .gitignore: New file. 192*75fd0b74Schristos 193*75fd0b74Schristos2010-12-06 Dmitry Gorbachev <d.g.gorbachev@gmail.com> 194*75fd0b74Schristos 195*75fd0b74Schristos PR ld/12288 196*75fd0b74Schristos * plugin.c (message): Add putchar for the trailing `\n'. 197*75fd0b74Schristos 198*75fd0b74Schristos2010-12-04 Mike Frysinger <vapier@gentoo.org> 199*75fd0b74Schristos 200*75fd0b74Schristos * Makefile.am (!INSTALL_LIBBFD/bfdinclude_HEADERS): Set to nothing. 201*75fd0b74Schristos (PLUGINS/bfdinclude_HEADERS): Append plugin-api.h. 202*75fd0b74Schristos * Makefile.in: Regenerated. 203*75fd0b74Schristos 204*75fd0b74Schristos2010-12-04 Alan Modra <amodra@gmail.com> 205*75fd0b74Schristos 206*75fd0b74Schristos PR ld/12277 207*75fd0b74Schristos * elflink.c (elf_link_output_extsym): Set bfd_error on symbol 208*75fd0b74Schristos and section errors. Allow better translation of error messages. 209*75fd0b74Schristos 210*75fd0b74Schristos2010-12-02 Richard Sandiford <richard.sandiford@linaro.org> 211*75fd0b74Schristos 212*75fd0b74Schristos * elf32-arm.c (elf32_arm_link_hash_table): Remove sgot, sgotplt, 213*75fd0b74Schristos srelgot, splt, srelplt. 214*75fd0b74Schristos (create_got_section, elf32_arm_link_hash_table_create): Don't set them. 215*75fd0b74Schristos (elf32_arm_create_dynamic_sections): Likewise. Use htab->root 216*75fd0b74Schristos fields instead. 217*75fd0b74Schristos (arm_type_of_stub): Use the root fields instead of the removed ones. 218*75fd0b74Schristos (cortex_a8_erratum_scan, elf32_arm_size_stubs): Likewise. 219*75fd0b74Schristos (bfd_elf32_arm_process_before_allocation): Likewise. 220*75fd0b74Schristos (elf32_arm_check_relocs, allocate_dynrelocs): Likewise. 221*75fd0b74Schristos (elf32_arm_size_dynamic_sections): Likewise. 222*75fd0b74Schristos (elf32_arm_output_arch_local_syms): Likewise. 223*75fd0b74Schristos (elf32_arm_final_link_relocate): Set sgot, splt and srelgot from the 224*75fd0b74Schristos htab fields instead of looking them up by name. Consistently use 225*75fd0b74Schristos these local variables instead of htab fields. 226*75fd0b74Schristos (elf32_arm_finish_dynamic_symbol): Likewise sgot, splt and srel. 227*75fd0b74Schristos Use srelbss instead of looking it up by name. 228*75fd0b74Schristos (elf32_arm_finish_dynamic_sections): Use sgotplt, splt and srelplt 229*75fd0b74Schristos instead of looking up the symbols by name. Use the root fields 230*75fd0b74Schristos instead of the removed ones. 231*75fd0b74Schristos 232*75fd0b74Schristos2010-12-02 Richard Sandiford <richard.sandiford@linaro.org> 233*75fd0b74Schristos 234*75fd0b74Schristos * elf32-arm.c (elf32_arm_relocs_copied): Delete. 235*75fd0b74Schristos (elf32_arm_link_hash_entry): Replace relocs_copied with dyn_relocs. 236*75fd0b74Schristos (elf32_arm_link_hash_newfunc): Update accordingly. 237*75fd0b74Schristos (elf32_arm_copy_indirect_symbol, elf32_arm_gc_sweep_hook): Likewise. 238*75fd0b74Schristos (elf32_arm_check_relocs, allocate_dynrelocs): Likewise. 239*75fd0b74Schristos (elf32_arm_readonly_dynrelocs): Likewise. 240*75fd0b74Schristos (elf32_arm_size_dynamic_sections): Likewise. 241*75fd0b74Schristos 242*75fd0b74Schristos2010-12-02 Paul Koning <ni1d@arrl.net> 243*75fd0b74Schristos 244*75fd0b74Schristos * pdp11.c (aout_link_add_symbols): Ignore debug symbols. 245*75fd0b74Schristos 246*75fd0b74Schristos2010-11-30 Joel Sherrill <joel.sherrill@oarcorp.com> 247*75fd0b74Schristos 248*75fd0b74Schristos * config.bfd: Add sparc64-rtems. 249*75fd0b74Schristos 250*75fd0b74Schristos2010-11-25 Alan Modra <amodra@gmail.com> 251*75fd0b74Schristos 252*75fd0b74Schristos * po/es.po: Update. 253*75fd0b74Schristos * po/fi.po: Update. 254*75fd0b74Schristos * po/fr.po: Update. 255*75fd0b74Schristos * po/ja.po: Update. 256*75fd0b74Schristos * po/zh_CN.po: Update. 257*75fd0b74Schristos 258*75fd0b74Schristos2010-11-24 Joel Brobecker <brobecker@adacore.com> 259*75fd0b74Schristos 260*75fd0b74Schristos * Makefile.am (OPTIONAL_BACKENDS): Add rs6000-core.lo. 261*75fd0b74Schristos (OPTIONAL_BACKENDS_CFILES): Add rs6000-core.c. 262*75fd0b74Schristos * Makefile.in: Regenerate. 263*75fd0b74Schristos 264*75fd0b74Schristos2010-11-24 Alan Modra <amodra@gmail.com> 265*75fd0b74Schristos 266*75fd0b74Schristos PR ld/12253 267*75fd0b74Schristos * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Correct 268*75fd0b74Schristos DW_EH_PE_datarel handling. Truncate .eh_frame_hdr address to 269*75fd0b74Schristos ptr_size. 270*75fd0b74Schristos 271*75fd0b74Schristos2010-11-23 Mingming Sun <mingm.sun@gmail.com> 272*75fd0b74Schristos 273*75fd0b74Schristos * elfxx-mips.c (mips_set_isa_flags): Move bfd_mach_loongson_3a 274*75fd0b74Schristos after bfd_mach_mips_sb1. 275*75fd0b74Schristos 276*75fd0b74Schristos2010-11-17 Tristan Gingold <gingold@adacore.com> 277*75fd0b74Schristos 278*75fd0b74Schristos * vms-lib.c (vms_write_index): Add comments. 279*75fd0b74Schristos Partially revert previous patch. Free blocks later. 280*75fd0b74Schristos 281*75fd0b74Schristos2010-11-17 Nick Clifton <nickc@redhat.com> 282*75fd0b74Schristos 283*75fd0b74Schristos PR ld/12161 284*75fd0b74Schristos * elf32-avr.c (elf32_avr_check_relocs): Delete. 285*75fd0b74Schristos (elf_backend_check_relocs): Delete. 286*75fd0b74Schristos 287*75fd0b74Schristos2010-11-16 Jie Zhang <jie.zhang@analog.com> 288*75fd0b74Schristos 289*75fd0b74Schristos * elf32-bfin.c (elf32_bfin_code_in_l1): New variable. 290*75fd0b74Schristos (elf32_bfin_data_in_l1): New variable. 291*75fd0b74Schristos (elf32_bfin_final_write_processing): New. 292*75fd0b74Schristos (elf_backend_final_write_processing): Define. 293*75fd0b74Schristos 294*75fd0b74Schristos2010-11-15 Mike Frysinger <vapier@gentoo.org> 295*75fd0b74Schristos 296*75fd0b74Schristos PR binutils/12177 297*75fd0b74Schristos * elf32-bfin.c (_bfin_create_got_section): Drop unused flags code. 298*75fd0b74Schristos 299*75fd0b74Schristos2010-11-12 H.J. Lu <hongjiu.lu@intel.com> 300*75fd0b74Schristos 301*75fd0b74Schristos * archive.c (_bfd_get_elt_at_filepos): Copy BFD_COMPRESS and 302*75fd0b74Schristos BFD_DECOMPRESS. 303*75fd0b74Schristos (bfd_openr_next_archived_file): Revert the last change. 304*75fd0b74Schristos 305*75fd0b74Schristos2010-11-11 Mingming Sun <mingm.sun@gmail.com> 306*75fd0b74Schristos 307*75fd0b74Schristos * archures.c (bfd_mach_mips_loongson_3a): Defined. 308*75fd0b74Schristos * bfd-in2.h (bfd_mach_mips_loongson_3a): Defined. 309*75fd0b74Schristos * cpu-mips.c (I_loongson_3a): New add. 310*75fd0b74Schristos (arch_info_struct): Add loongson_3a. 311*75fd0b74Schristos * elfxx-mips.c (_bfd_elf_mips_mach): Add loongson_3a. 312*75fd0b74Schristos (mips_set_isa_flags): Add loongson_3a. 313*75fd0b74Schristos (mips_mach_extensions): Add loongson_3a in MIPS64 extensions. 314*75fd0b74Schristos 315*75fd0b74Schristos2010-11-10 Richard Sandiford <richard.sandiford@linaro.org> 316*75fd0b74Schristos 317*75fd0b74Schristos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Remove unused 318*75fd0b74Schristos variables. 319*75fd0b74Schristos 320*75fd0b74Schristos2010-11-10 Nick Clifton <nickc@redhat.com> 321*75fd0b74Schristos 322*75fd0b74Schristos * po/ja.po: Updated Japanese translation. 323*75fd0b74Schristos * po/ru.po: Updated Russian translation. 324*75fd0b74Schristos 325*75fd0b74Schristos2010-11-08 Nick Clifton <nickc@redhat.com> 326*75fd0b74Schristos 327*75fd0b74Schristos * po/ja.po: Updated Japanese translation. 328*75fd0b74Schristos 329*75fd0b74Schristos2010-11-08 Alan Modra <amodra@gmail.com> 330*75fd0b74Schristos 331*75fd0b74Schristos * hash.c (bfd_hash_hash): Extract from.. 332*75fd0b74Schristos (bfd_hash_lookup): ..here. 333*75fd0b74Schristos (bfd_hash_rename): New function. 334*75fd0b74Schristos * section.c (bfd_rename_section): New function. 335*75fd0b74Schristos * bfd-in.h (bfd_hash_rename): Declare. 336*75fd0b74Schristos * bfd-in2.h: Regenerate. 337*75fd0b74Schristos * elf.c (_bfd_elf_make_section_from_shdr): Rename input sections 338*75fd0b74Schristos when compressing or decompressing. Don't assert name match. 339*75fd0b74Schristos * elf64-hppa.c (get_reloc_section): Don't assert name match. 340*75fd0b74Schristos * elfxx-ia64.c (get_reloc_section): Likewise. 341*75fd0b74Schristos 342*75fd0b74Schristos2010-11-05 Joseph Myers <joseph@codesourcery.com> 343*75fd0b74Schristos 344*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_obj_attrs_handle_unknown): New. 345*75fd0b74Schristos (elf32_tic6x_merge_attributes): Use 346*75fd0b74Schristos _bfd_elf_merge_unknown_attribute_low and 347*75fd0b74Schristos _bfd_elf_merge_unknown_attribute_list. 348*75fd0b74Schristos (elf_backend_obj_attrs_handle_unknown): Define. 349*75fd0b74Schristos 350*75fd0b74Schristos2010-11-05 Joseph Myers <joseph@codesourcery.com> 351*75fd0b74Schristos 352*75fd0b74Schristos * elf-attrs.c (_bfd_elf_merge_unknown_attribute_low, 353*75fd0b74Schristos _bfd_elf_merge_unknown_attribute_list): Correct test for matching 354*75fd0b74Schristos string attributes. 355*75fd0b74Schristos 356*75fd0b74Schristos2010-11-05 Tristan Gingold <gingold@adacore.com> 357*75fd0b74Schristos 358*75fd0b74Schristos * po/bfd.pot: Regenerate 359*75fd0b74Schristos 360*75fd0b74Schristos2010-11-05 Tristan Gingold <gingold@adacore.com> 361*75fd0b74Schristos 362*75fd0b74Schristos * configure.in: Bump version to 2.21.51 363*75fd0b74Schristos * configure: Regenerate. 364*75fd0b74Schristos 365*75fd0b74Schristos2010-11-04 Maciej W. Rozycki <macro@codesourcery.com> 366*75fd0b74Schristos 367*75fd0b74Schristos PR ld/10144 368*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_check_relocs) 369*75fd0b74Schristos [R_MIPS_32, R_MIPS_REL32, R_MIPS_64]: Ignore relocs from 370*75fd0b74Schristos SEC_DEBUGGING sections. 371*75fd0b74Schristos 372*75fd0b74Schristos2010-11-04 Tristan Gingold <gingold@adacore.com> 373*75fd0b74Schristos 374*75fd0b74Schristos * vms-lib.c (vms_write_index): Fix thinko: reverse the loop. 375*75fd0b74Schristos Use bfd_zmalloc instead of bfd_malloc. Fix comment. 376*75fd0b74Schristos 377*75fd0b74Schristos2010-11-04 Kai Tietz <kai.tietz@onevision.com> 378*75fd0b74Schristos 379*75fd0b74Schristos * coffcode.h (GNU_LINKONCE_WT): New. 380*75fd0b74Schristos (sec_to_styp_flags): Add handling of new debug 381*75fd0b74Schristos section. 382*75fd0b74Schristos (styp_to_sec_flags): Likewise. 383*75fd0b74Schristos 384*75fd0b74Schristos2010-11-04 Tristan Gingold <gingold@adacore.com> 385*75fd0b74Schristos 386*75fd0b74Schristos * makefile.vms (CFLAGS): Make badalias warnings informational. 387*75fd0b74Schristos * vms-lib.c (vms_lib_bread): Avoid arithmetic on void pointer. 388*75fd0b74Schristos 389*75fd0b74Schristos2010-11-04 Joseph Myers <joseph@codesourcery.com> 390*75fd0b74Schristos 391*75fd0b74Schristos * elf-attrs.c (_bfd_elf_merge_unknown_attribute_low, 392*75fd0b74Schristos _bfd_elf_merge_unknown_attribute_list): New. 393*75fd0b74Schristos * elf-bfd.h (struct elf_backend_data): Add 394*75fd0b74Schristos obj_attrs_handle_unknown. 395*75fd0b74Schristos (_bfd_elf_merge_unknown_attribute_low, 396*75fd0b74Schristos _bfd_elf_merge_unknown_attribute_list): Declare. 397*75fd0b74Schristos * elf32-arm.c (elf32_arm_obj_attrs_handle_unknown): New. Split 398*75fd0b74Schristos out from elf32_arm_merge_eabi_attributes. 399*75fd0b74Schristos (elf32_arm_merge_eabi_attributes): Use 400*75fd0b74Schristos _bfd_elf_merge_unknown_attribute_low and 401*75fd0b74Schristos _bfd_elf_merge_unknown_attribute_list. 402*75fd0b74Schristos (elf_backend_obj_attrs_handle_unknown): Define. 403*75fd0b74Schristos * elfxx-target.h (elf_backend_obj_attrs_handle_unknown): Define. 404*75fd0b74Schristos (elfNN_bed): Update initializer. 405*75fd0b74Schristos 406*75fd0b74Schristos2010-11-02 H.J. Lu <hongjiu.lu@intel.com> 407*75fd0b74Schristos 408*75fd0b74Schristos * bfd.c (BFD_FLAGS_FOR_BFD_USE_MASK): New. 409*75fd0b74Schristos * bfd-in2.h: Regenerated. 410*75fd0b74Schristos 411*75fd0b74Schristos2010-11-02 Joseph Myers <joseph@codesourcery.com> 412*75fd0b74Schristos 413*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type): Except for 414*75fd0b74Schristos Tag_ABI_compatibility, treat odd tags as strings and even ones as 415*75fd0b74Schristos integers. 416*75fd0b74Schristos (elf32_tic6x_obj_attrs_order, elf32_tic6x_tag_to_array_alignment, 417*75fd0b74Schristos elf32_tic6x_array_alignment_to_tag): New. 418*75fd0b74Schristos (elf32_tic6x_merge_attributes): Handle more attributes. Set type 419*75fd0b74Schristos for merged attributes. 420*75fd0b74Schristos (elf_backend_obj_attrs_order): Define. 421*75fd0b74Schristos 422*75fd0b74Schristos2010-10-29 Maciej W. Rozycki <macro@codesourcery.com> 423*75fd0b74Schristos 424*75fd0b74Schristos * elfxx-mips.c (mips_elf_calculate_relocation): Fix a typo. 425*75fd0b74Schristos 426*75fd0b74Schristos2010-10-29 Pawel Sikora <pluto@pld-linux.org> 427*75fd0b74Schristos 428*75fd0b74Schristos PR binutils/12075 429*75fd0b74Schristos * compress.c (bfd_compress_section_contents): Use uLong on 430*75fd0b74Schristos compressed_size. 431*75fd0b74Schristos 432*75fd0b74Schristos2010-10-29 Joseph Myers <joseph@codesourcery.com> 433*75fd0b74Schristos 434*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type): Check 435*75fd0b74Schristos Tag_ABI_compatibility not Tag_compatibility. 436*75fd0b74Schristos (elf32_tic6x_merge_attributes): Update compatibility attribute 437*75fd0b74Schristos name in comment. Return FALSE if merging common attributes fails. 438*75fd0b74Schristos 439*75fd0b74Schristos2010-10-29 Nick Clifton <nickc@redhat.com> 440*75fd0b74Schristos 441*75fd0b74Schristos PR bintils/6962 442*75fd0b74Schristos * coffcode.h (handle_COMDAT): Only check the base type when 443*75fd0b74Schristos looking for a section symbol. 444*75fd0b74Schristos 445*75fd0b74Schristos2010-10-29 H.J. Lu <hongjiu.lu@intel.com> 446*75fd0b74Schristos Cary Coutant <ccoutant@google.com> 447*75fd0b74Schristos 448*75fd0b74Schristos * archive.c (bfd_openr_next_archived_file): Copy BFD_COMPRESS 449*75fd0b74Schristos and BFD_DECOMPRESS. 450*75fd0b74Schristos 451*75fd0b74Schristos * bfd.c (BFD_COMPRESS): New. 452*75fd0b74Schristos (BFD_DECOMPRESS): Likewise. 453*75fd0b74Schristos (BFD_FLAGS_SAVED): Likewise. 454*75fd0b74Schristos (bfd_preserve_save): Replace BFD_IN_MEMORY with BFD_FLAGS_SAVED. 455*75fd0b74Schristos 456*75fd0b74Schristos * compress.c (bfd_uncompress_section_contents): Removed. 457*75fd0b74Schristos (get_uncompressed_size): New. 458*75fd0b74Schristos (decompress_contents): Likewise. 459*75fd0b74Schristos (bfd_compress_section_contents): Likewise. 460*75fd0b74Schristos (bfd_get_full_section_contents): Likewise. 461*75fd0b74Schristos (bfd_is_section_compressed): Likewise. 462*75fd0b74Schristos (bfd_init_section_decompress_status): Likewise. 463*75fd0b74Schristos (bfd_init_section_compress_status): Likewise. 464*75fd0b74Schristos 465*75fd0b74Schristos * dwarf2.c (dwarf_debug_sections): New. 466*75fd0b74Schristos (dwarf_debug_section_enum): Likewise. 467*75fd0b74Schristos (read_section): Remove section_name and compressed_section_name. 468*75fd0b74Schristos Add dwarf_debug_section_enum. Try compressed debug section. 469*75fd0b74Schristos (read_indirect_string): Updated. 470*75fd0b74Schristos (read_abbrevs): Likewise. 471*75fd0b74Schristos (decode_line_info): Likewise. 472*75fd0b74Schristos (read_debug_ranges): Likewise. 473*75fd0b74Schristos (find_line): Updated. 474*75fd0b74Schristos 475*75fd0b74Schristos * ecoff.c (bfd_debug_section): Add compress_status and 476*75fd0b74Schristos compressed_size. 477*75fd0b74Schristos 478*75fd0b74Schristos * elf.c (_bfd_elf_make_section_from_shdr): Call 479*75fd0b74Schristos bfd_is_section_compressed to check if a DWARF debug section is 480*75fd0b74Schristos compressed. Call bfd_init_section_compress_status or 481*75fd0b74Schristos bfd_init_section_decompress_status if needed. 482*75fd0b74Schristos 483*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Replace bfd_get_section_contents 484*75fd0b74Schristos with bfd_get_full_section_contents. 485*75fd0b74Schristos * merge.c (_bfd_add_merge_section): Likewise. 486*75fd0b74Schristos * reloc.c (bfd_generic_get_relocated_section_contents): Likewise. 487*75fd0b74Schristos * simple.c (bfd_simple_get_relocated_section_contents): Likewise. 488*75fd0b74Schristos 489*75fd0b74Schristos * elfxx-target.h (TARGET_BIG_SYM): Allow BFD_COMPRESS and 490*75fd0b74Schristos BFD_DECOMPRESS. 491*75fd0b74Schristos (TARGET_LITTLE_SYM): Likewise. 492*75fd0b74Schristos 493*75fd0b74Schristos * libbfd-in.h (dwarf_debug_section): New. 494*75fd0b74Schristos (dwarf_debug_sections): Likewise. 495*75fd0b74Schristos 496*75fd0b74Schristos * libbfd.c (_bfd_generic_get_section_contents): Issue an error 497*75fd0b74Schristos when getting contents on compressed/decompressed section. 498*75fd0b74Schristos 499*75fd0b74Schristos * section.c (COMPRESS_SECTION_NONE): New. 500*75fd0b74Schristos (COMPRESS_SECTION_DONE): Likewise. 501*75fd0b74Schristos (DECOMPRESS_SECTION_SIZED): Likewise. 502*75fd0b74Schristos (BFD_FAKE_SECTION): Add compress_status and compressed_size. 503*75fd0b74Schristos (bfd_malloc_and_get_section): Replace bfd_get_section_contents 504*75fd0b74Schristos with bfd_get_full_section_contents. 505*75fd0b74Schristos 506*75fd0b74Schristos * bfd-in2.h: Regenerated. 507*75fd0b74Schristos * libbfd.h: Likewise. 508*75fd0b74Schristos 509*75fd0b74Schristos2010-10-29 Bernd Schmidt <bernds@codesourcery.com> 510*75fd0b74Schristos Joseph Myers <joseph@codesourcery.com> 511*75fd0b74Schristos 512*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_merge_attributes): Check for mismatch 513*75fd0b74Schristos of DSBT attributes. 514*75fd0b74Schristos 515*75fd0b74Schristos2010-10-25 Daniel Jacobowitz <dan@codesourcery.com> 516*75fd0b74Schristos 517*75fd0b74Schristos * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Always call 518*75fd0b74Schristos _bfd_clear_contents. Pass it the input section. 519*75fd0b74Schristos * libbfd-in.h (_bfd_clear_contents): Add input_section argument. 520*75fd0b74Schristos * libbfd.h: Regenerate. 521*75fd0b74Schristos * reloc.c (_bfd_clear_contents): Take input_section argument. 522*75fd0b74Schristos Use non-zero for .debug_ranges. 523*75fd0b74Schristos (bfd_generic_get_relocated_section_conten): Update _bfd_clear_contents 524*75fd0b74Schristos call. 525*75fd0b74Schristos 526*75fd0b74Schristos * elf32-arm.c (elf32_arm_relocate_section): Use 527*75fd0b74Schristos RELOC_AGAINST_DISCARDED_SECTION. 528*75fd0b74Schristos * elf-m10200.c (mn10200_elf_relocate_section): Likewise. 529*75fd0b74Schristos * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 530*75fd0b74Schristos * elf32-arm.c (elf32_arm_relocate_section): Likewise. 531*75fd0b74Schristos * elf32-avr.c (elf32_avr_relocate_section): Likewise. 532*75fd0b74Schristos * elf32-bfin.c (bfin_relocate_section): Likewise. 533*75fd0b74Schristos (bfinfdpic_relocate_section): Likewise. 534*75fd0b74Schristos * elf32-cr16.c (elf32_cr16_relocate_section): Likewise. 535*75fd0b74Schristos * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise. 536*75fd0b74Schristos * elf32-cris.c (cris_elf_relocate_section): Likewise. 537*75fd0b74Schristos * elf32-crx.c (elf32_crx_relocate_section): Likewise. 538*75fd0b74Schristos * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 539*75fd0b74Schristos * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 540*75fd0b74Schristos * elf32-frv.c (elf32_frv_relocate_section): Likewise. 541*75fd0b74Schristos * elf32-h8300.c (elf32_h8_relocate_section): Likewise. 542*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 543*75fd0b74Schristos * elf32-i370.c (i370_elf_relocate_section): Likewise. 544*75fd0b74Schristos * elf32-i860.c (elf32_i860_relocate_section): Likewise. 545*75fd0b74Schristos * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. 546*75fd0b74Schristos * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise. 547*75fd0b74Schristos * elf32-lm32.c (lm32_elf_relocate_section): Likewise. 548*75fd0b74Schristos * elf32-m32c.c (m32c_elf_relocate_section): Likewise. 549*75fd0b74Schristos * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 550*75fd0b74Schristos * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise. 551*75fd0b74Schristos * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 552*75fd0b74Schristos * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 553*75fd0b74Schristos * elf32-mep.c (mep_elf_relocate_section): Likewise. 554*75fd0b74Schristos * elf32-moxie.c (moxie_elf_relocate_section): Likewise. 555*75fd0b74Schristos * elf32-msp430.c (elf32_msp430_relocate_section): Likewise. 556*75fd0b74Schristos * elf32-mt.c (mt_elf_relocate_section): Likewise. 557*75fd0b74Schristos * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. 558*75fd0b74Schristos * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 559*75fd0b74Schristos * elf32-rx.c (rx_elf_relocate_section): Likewise. 560*75fd0b74Schristos * elf32-s390.c (elf_s390_relocate_section): Likewise. 561*75fd0b74Schristos * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise. 562*75fd0b74Schristos * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise. 563*75fd0b74Schristos * elf32-sh.c (sh_elf_relocate_section): Likewise. 564*75fd0b74Schristos * elf32-spu.c (spu_elf_relocate_section): Likewise. 565*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise. 566*75fd0b74Schristos * elf32-v850.c (v850_elf_relocate_section): Likewise. 567*75fd0b74Schristos * elf32-vax.c (elf_vax_relocate_section): Likewise. 568*75fd0b74Schristos * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise. 569*75fd0b74Schristos * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. 570*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 571*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise. 572*75fd0b74Schristos (elf64_alpha_relocate_section): Likewise. 573*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. 574*75fd0b74Schristos * elf64-mmix.c (mmix_elf_relocate_section): Likewise. 575*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 576*75fd0b74Schristos * elf64-s390.c (elf_s390_relocate_section): Likewise. 577*75fd0b74Schristos * elf64-sh64.c (sh_elf64_relocate_section): Likewise. 578*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. 579*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise. 580*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 581*75fd0b74Schristos 582*75fd0b74Schristos2010-10-25 Nathan Sidwell <nathan@codesourcery.com> 583*75fd0b74Schristos 584*75fd0b74Schristos * elf32-tic6x.c: Add attribution. 585*75fd0b74Schristos 586*75fd0b74Schristos2010-10-25 Alan Modra <amodra@gmail.com> 587*75fd0b74Schristos 588*75fd0b74Schristos * elf32-arm.c (find_stub_size_and_template): Avoid uninitialized 589*75fd0b74Schristos var warning at -O3. 590*75fd0b74Schristos 591*75fd0b74Schristos2010-10-25 Alan Modra <amodra@gmail.com> 592*75fd0b74Schristos 593*75fd0b74Schristos * opncls.c (bfd_alloc, bfd_zalloc): Don't mark internal. 594*75fd0b74Schristos * libbfd-in.h (bfd_alloc, bfd_zalloc): Don't declare here. 595*75fd0b74Schristos * libbfd.h: Regenerate 596*75fd0b74Schristos * bfd-in2.h: Regenerate. 597*75fd0b74Schristos 598*75fd0b74Schristos2010-10-25 Alan Modra <amodra@gmail.com> 599*75fd0b74Schristos 600*75fd0b74Schristos * opncls.c (_bfd_id_counter): Rename to bfd_id_counter. 601*75fd0b74Schristos (bfd_reserved_id_counter, bfd_use_reserved_id): New vars. 602*75fd0b74Schristos (_bfd_new_bfd): Use negative id when bfd_use_reserved_id. 603*75fd0b74Schristos (bfd_create): Doc fix. 604*75fd0b74Schristos * bfd-in2.h: Regenerate. 605*75fd0b74Schristos 606*75fd0b74Schristos2010-10-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 607*75fd0b74Schristos 608*75fd0b74Schristos * elfxx-sparc.c (tpoff): Define bed, static_tls_size. 609*75fd0b74Schristos Consider static_tls_alignment. 610*75fd0b74Schristos 611*75fd0b74Schristos * elf32-sparc.c (TARGET_BIG_SYM): Redefine to 612*75fd0b74Schristos bfd_elf32_sparc_sol2_vec. 613*75fd0b74Schristos (TARGET_BIG_NAME): Redefine to elf32-sparc-sol2. 614*75fd0b74Schristos (elf32_bed): Redefine to elf32_sparc_sol2_bed. 615*75fd0b74Schristos (elf_backend_static_tls_alignment): Redefine to 8. 616*75fd0b74Schristos Include elf32-target.h. 617*75fd0b74Schristos (elf_backend_static_tls_alignment): Undef again for VxWorks. 618*75fd0b74Schristos 619*75fd0b74Schristos * elf64-sparc.c (TARGET_BIG_SYM): Redefine to 620*75fd0b74Schristos bfd_elf64_sparc_sol2_vec. 621*75fd0b74Schristos (TARGET_BIG_NAME): Redefine to elf64-sparc-sol2. 622*75fd0b74Schristos (ELF_OSABI): Undef. 623*75fd0b74Schristos (elf64_bed): Redefine to elf64_sparc_sol2_bed. 624*75fd0b74Schristos (elf_backend_static_tls_alignment): Redefine to 16. 625*75fd0b74Schristos Include elf64-target.h. 626*75fd0b74Schristos 627*75fd0b74Schristos * config.bfd (sparc-*-solaris2.[0-6]): Split from sparc-*-elf*. 628*75fd0b74Schristos Set targ_defvec to bfd_elf32_sparc_sol2_vec. 629*75fd0b74Schristos [BFD64] (sparc-*-solaris2*): Set targ_defvec to 630*75fd0b74Schristos bfd_elf32_sparc_sol2_vec. 631*75fd0b74Schristos Replace bfd_elf64_sparc_vec by bfd_elf64_sparc_sol2_vec in 632*75fd0b74Schristos targ_selvecs. 633*75fd0b74Schristos 634*75fd0b74Schristos * configure.in: Handle bfd_elf32_sparc_sol2_vec, 635*75fd0b74Schristos bfd_elf64_sparc_sol2_vec. 636*75fd0b74Schristos * configure: Regenerate. 637*75fd0b74Schristos 638*75fd0b74Schristos * targets.c (bfd_elf32_sparc_sol2_vec): Declare. 639*75fd0b74Schristos (bfd_elf64_sparc_sol2_vec): Declare. 640*75fd0b74Schristos (_bfd_target_vector): Add bfd_elf32_sparc_sol2_vec, 641*75fd0b74Schristos bfd_elf64_sparc_sol2_vec. 642*75fd0b74Schristos 643*75fd0b74Schristos2010-10-21 Joseph Myers <joseph@codesourcery.com> 644*75fd0b74Schristos 645*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_merge_arch_attributes): Update for 646*75fd0b74Schristos attribute renaming. 647*75fd0b74Schristos (elf_backend_obj_attrs_section): Change to ".c6xabi.attributes". 648*75fd0b74Schristos 649*75fd0b74Schristos2010-10-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 650*75fd0b74Schristos 651*75fd0b74Schristos * elf-bfd.h (struct elf_backend_data): New member 652*75fd0b74Schristos static_tls_alignment. 653*75fd0b74Schristos * elfxx-target.h (elf_backend_static_tls_alignment): Provide 654*75fd0b74Schristos default. 655*75fd0b74Schristos (elfNN_bed): Initialize static_tls_alignment. 656*75fd0b74Schristos * elflink.c (bfd_elf_final_link): Don't round end of TLS section 657*75fd0b74Schristos if static TLS has special alignment requirements. 658*75fd0b74Schristos * elf32-i386.c (elf_i386_tpoff): Define bed, static_tls_size. 659*75fd0b74Schristos Consider static_tls_alignment. 660*75fd0b74Schristos (elf_backend_static_tls_alignment): Redefine for Solaris 2. 661*75fd0b74Schristos Undef again for VxWorks. 662*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_tpoff): Define bed, 663*75fd0b74Schristos static_tls_size. 664*75fd0b74Schristos Consider static_tls_alignment. 665*75fd0b74Schristos (elf_backend_static_tls_alignment): Redefine for Solaris 2. 666*75fd0b74Schristos Undef again for Intel L1OM. 667*75fd0b74Schristos 668*75fd0b74Schristos2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com> 669*75fd0b74Schristos 670*75fd0b74Schristos Apply LD plugin patch series (part 6/6). 671*75fd0b74Schristos * aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference 672*75fd0b74Schristos parameter and pass it when invoking add_archive_element callback. 673*75fd0b74Schristos (aout_link_check_archive_element): Handle substitute bfd if it 674*75fd0b74Schristos was set during add_archive_element callback in the above. 675*75fd0b74Schristos * cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference 676*75fd0b74Schristos parameter and pass it when invoking add_archive_element callback. 677*75fd0b74Schristos (coff_link_check_archive_element): Handle substitute bfd if it 678*75fd0b74Schristos was set during add_archive_element callback in the above. 679*75fd0b74Schristos * ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading 680*75fd0b74Schristos code factored-out from ecoff_link_check_archive_element. 681*75fd0b74Schristos (reread_ext_syms_and_strs): Clear old symbols and call it. 682*75fd0b74Schristos (ecoff_link_check_archive_element): Use the above. Handle substitute 683*75fd0b74Schristos BFD if one is set by add_archive_element callback. 684*75fd0b74Schristos (ecoff_link_add_archive_symbols): Likewise allow bfd substitution. 685*75fd0b74Schristos * elflink.c (elf_link_add_archive_symbols): Likewise. 686*75fd0b74Schristos * linker.c (generic_link_check_archive_element): Likewise. 687*75fd0b74Schristos * pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference 688*75fd0b74Schristos parameter and pass it when invoking add_archive_element callback. 689*75fd0b74Schristos (aout_link_check_archive_element): Handle substitute bfd if it was 690*75fd0b74Schristos set during add_archive_element callback in the above. 691*75fd0b74Schristos * vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute 692*75fd0b74Schristos BFD if one is set by add_archive_element callback. 693*75fd0b74Schristos * xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd" 694*75fd0b74Schristos reference parameter and pass it when invoking add_archive_element 695*75fd0b74Schristos callback. 696*75fd0b74Schristos (xcoff_link_check_ar_symbols): Likewise. 697*75fd0b74Schristos (xcoff_link_check_archive_element): Handle bfd substitution if it was 698*75fd0b74Schristos set by callback in the above. 699*75fd0b74Schristos 700*75fd0b74Schristos2010-10-11 Alan Modra <amodra@gmail.com> 701*75fd0b74Schristos 702*75fd0b74Schristos * elf32-frv.c (elf32_frv_relocate_section): Set "name" for global syms. 703*75fd0b74Schristos (elf32_frvfdpic_finish_dynamic_sections): Don't crash on 704*75fd0b74Schristos __ROFIXUP_END__ defined in shared lib. 705*75fd0b74Schristos 706*75fd0b74Schristos2010-10-11 Thomas Schwinge <thomas@codesourcery.com> 707*75fd0b74Schristos 708*75fd0b74Schristos * elf32-arm.c (elf32_arm_final_link_relocate) 709*75fd0b74Schristos (elf32_arm_relocate_section): Handle relocations against STN_UNDEF. 710*75fd0b74Schristos 711*75fd0b74Schristos2010-10-11 Dave Korn <dave.korn.cygwin@gmail.com> 712*75fd0b74Schristos 713*75fd0b74Schristos * elflink.c (_bfd_elf_link_output_relocs): Delete unused variable 714*75fd0b74Schristos "output_rel_hdr". 715*75fd0b74Schristos 716*75fd0b74Schristos2010-10-09 John Tytgat <john@bass-software.com> 717*75fd0b74Schristos 718*75fd0b74Schristos * reloc.c (BFD_RELOC_ARM_HVC): Add. 719*75fd0b74Schristos * libbfd.h: Regenerate. 720*75fd0b74Schristos 721*75fd0b74Schristos2010-10-08 Kai Tietz <kai.tietz@onevision.com> 722*75fd0b74Schristos 723*75fd0b74Schristos * pei-x86_64.c (find_next_xdata_or_end): Removed. 724*75fd0b74Schristos (pex64_dump_xdata): Remove arguments stop, onaline, 725*75fd0b74Schristos and pdata. New argument endx. Print term "none" 726*75fd0b74Schristos instead of misleading "CFA". 727*75fd0b74Schristos (sort_xdata_arr): New function. 728*75fd0b74Schristos (pex64_bfd_print_pdata): Use binary search/sort for unwind-RVAs 729*75fd0b74Schristos instead of searching quadratic. 730*75fd0b74Schristos 731*75fd0b74Schristos2010-10-08 Pierre Muller <muller@ics.u-strasbg.fr> 732*75fd0b74Schristos Alan Modra <amodra@gmail.com> 733*75fd0b74Schristos 734*75fd0b74Schristos Fix build with -DDEBUG=7 735*75fd0b74Schristos * elf.c (_bfd_elf_symbol_from_bfd_symbol): Remove call 736*75fd0b74Schristos to deleted function elf_symbol_flags. Add typecast to avoid warning. 737*75fd0b74Schristos * elf32-rx.c (dump_symbol) : Rename to.. 738*75fd0b74Schristos (rx_dump_symbol): ..this to avoid link errors. 739*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Add typecast to avoid warnings. 740*75fd0b74Schristos (bfd_elf_perform_complex_relocation): Likewise. 741*75fd0b74Schristos * elf32-xtensa.c (print_action_list): Likewise. 742*75fd0b74Schristos 743*75fd0b74Schristos2010-10-06 Nathan Sidwell <nathan@codesourcery.com> 744*75fd0b74Schristos 745*75fd0b74Schristos * elf32-arm.c (elf32_arm_stub_long_branch_any_arm_pic, 746*75fd0b74Schristos elf32_arm_stub_long_branch_any_arm_pic): Use a consistent name for 747*75fd0b74Schristos ip/r12. 748*75fd0b74Schristos (arm_type_of_stub): Remove superfluous braces. 749*75fd0b74Schristos 750*75fd0b74Schristos2010-10-04 Bernd Schmidt <bernds@codesourcery.com> 751*75fd0b74Schristos 752*75fd0b74Schristos * elf-bfd.h (struct bfd_elf_section_reloc_data): New structure. 753*75fd0b74Schristos (struct bfd_elf_section_data): New members REL and RELA; delete 754*75fd0b74Schristos members REL_HDR, REL_HDR2, REL_COUNT, REL_COUNT2, REL_IDX, 755*75fd0b74Schristos REL_IDX2, REL_HASHES. 756*75fd0b74Schristos (_bfd_elf_init_reloc_shdr): Adjust declaration. 757*75fd0b74Schristos (_bfd_elf_single_rel_hdr): Declare. 758*75fd0b74Schristos (RELOC_AGAINST_DISCARDED_SECTION): Use it. 759*75fd0b74Schristos * elf.c (bfd_section_from_shdr): Adjusted to match changes in 760*75fd0b74Schristos data structures. 761*75fd0b74Schristos (_bfd_elf_init_reloc_shdr): New arg RELDATA. Remove arg REL_HDR. 762*75fd0b74Schristos All callers changed. Allocate memory for the Elf_Internal_Shdr 763*75fd0b74Schristos structure. 764*75fd0b74Schristos (_bfd_elf_single_rel_hdr): New function. 765*75fd0b74Schristos (struct fake_section_arg): New structure. 766*75fd0b74Schristos (elf_fake_section): Expect to see a pointer to it in the third 767*75fd0b74Schristos argument. If doing a relocatable link, allocate both REL and RELA 768*75fd0b74Schristos sections as needed. 769*75fd0b74Schristos (assign_section_numbers): Adjusted to match changes in 770*75fd0b74Schristos data structures. 771*75fd0b74Schristos (_bfd_elf_compute_section_file_positions): Call elf_fake_sections 772*75fd0b74Schristos with a struct fake_section_args argument. 773*75fd0b74Schristos * elfcode.h (elf_write_relocs): Adjusted to match changes in 774*75fd0b74Schristos data structures. 775*75fd0b74Schristos (elf_slurp_reloc_table): Likewise. 776*75fd0b74Schristos * elflink.c (_bfd_elf_link_read_relocs): Likewise. 777*75fd0b74Schristos (_bfd_elf_link_size_reloc_section): Remove arg REL_HDR, replace with 778*75fd0b74Schristos RELDATA. Remove argument O. All callers changed. Remove code to 779*75fd0b74Schristos discover the right rel_hdr and count. 780*75fd0b74Schristos (_bfd_elf_link_output_relocs): Adjusted to match changes in 781*75fd0b74Schristos data structures. 782*75fd0b74Schristos (elf_link_adjust_relocs): Remove args REL_HDR, COUNT and REL_HASH; 783*75fd0b74Schristos replace with RELDATA. All callers changed. 784*75fd0b74Schristos (elf_link_input_bfd): Correctly generate rel_hash data when both 785*75fd0b74Schristos REL and RELA sections are present. 786*75fd0b74Schristos (elf_reloc_link_order): Adjusted to match changes in 787*75fd0b74Schristos data structures. 788*75fd0b74Schristos (bfd_elf_final_link): Simplify code to count relocs. Free the 789*75fd0b74Schristos hashes array for both REL and RELA. 790*75fd0b74Schristos (get_dynamic_reloc_section_name): Use _bfd_elf_single_reloc_hdr 791*75fd0b74Schristos * elf32-m32r.c (m32r_elf_fake_sections, elf_backend_fake_sections): 792*75fd0b74Schristos Delete. 793*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_fake_sections, elf_backend_fake_sections): 794*75fd0b74Schristos Delete. 795*75fd0b74Schristos (elf32_tic6x_rel_relocation_p): Adjusted to match changes in 796*75fd0b74Schristos data structures. 797*75fd0b74Schristos * elf32-microblaze.c (microblaze_elf_check_relocs): Use 798*75fd0b74Schristos _bfd_elf_single_rel_hdr. 799*75fd0b74Schristos * elf32-ppc.c (ppc_elf_relax_section): Likewise. 800*75fd0b74Schristos * elf32-spu.c (spu_elf_relocate_section): Likewise. 801*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 802*75fd0b74Schristos * elf64-hppa.c (get_reloc_section): Likewise. 803*75fd0b74Schristos * elf64-mips.c (mips_elf64_slurp_reloc_table): Adjusted to match 804*75fd0b74Schristos changes in data structures. 805*75fd0b74Schristos (mips_elf64_write_relocs): Use _bfd_elf_single_rel_hdr. 806*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_opd): Likewise. 807*75fd0b74Schristos (ppc64_elf_edit_toc): Likewise. 808*75fd0b74Schristos (get_relocs): Adjusted to match changes in data structures. 809*75fd0b74Schristos Allocate an Elf_Internal_Shdr structure if necessary. 810*75fd0b74Schristos (ppc64_elf_finish_dynamic_sections): Use _bfd_elf_single_rel_hdr. 811*75fd0b74Schristos * elf64-sparc.c (elf64_sparc_slurp_reloc_table): Adjusted to match 812*75fd0b74Schristos changes in data structures. 813*75fd0b74Schristos * elfxx-ia64.c (get_reloc_section): Use _bfd_elf_single_rel_hdr. 814*75fd0b74Schristos * elfxx-mips.c (MIPS_RELOC_RELA_P): Remove macro. 815*75fd0b74Schristos (mips_elf_rel_relocation_p): Adjusted to match changes in data 816*75fd0b74Schristos structures. 817*75fd0b74Schristos (_bfd_mips_elf_relocate_section): Use mips_elf_rel_relocation_p rather 818*75fd0b74Schristos than MIPS_RELOC_RELOCA_P. 819*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Use 820*75fd0b74Schristos _bfd_elf_single_rel_hdr. 821*75fd0b74Schristos (_bfd_sparc_elf_relocate_section): Likewise. 822*75fd0b74Schristos 823*75fd0b74Schristos2010-10-01 Thomas Schwinge <thomas@codesourcery.com> 824*75fd0b74Schristos 825*75fd0b74Schristos * elf32-arm.c (elf32_arm_size_stubs): Don't choke on local symbols in 826*75fd0b74Schristos SHN_UNDEF, SHN_ABS, SHN_COMMON. 827*75fd0b74Schristos 828*75fd0b74Schristos2010-09-30 H.J. Lu <hongjiu.lu@intel.com> 829*75fd0b74Schristos 830*75fd0b74Schristos PR ld/11812 831*75fd0b74Schristos * elf32-i386.c (elf_i386_size_dynamic_sections): Don't 832*75fd0b74Schristos allocate .got.plt section if there are no GOT nor PLT 833*75fd0b74Schristos entries and there is no refeence to _GLOBAL_OFFSET_TABLE_. 834*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Li.kewise. 835*75fd0b74Schristos 836*75fd0b74Schristos * elflink.c (_bfd_elf_define_linkage_sym): Clear non_elf. 837*75fd0b74Schristos 838*75fd0b74Schristos2010-09-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 839*75fd0b74Schristos 840*75fd0b74Schristos * configure: Regenerate. 841*75fd0b74Schristos 842*75fd0b74Schristos2010-09-24 Thomas Schwinge <thomas@codesourcery.com> 843*75fd0b74Schristos 844*75fd0b74Schristos * elf32-arm.c, elf32-cris.c, elf32-hppa.c, elf32-i370.c, elf32-m32r.c, 845*75fd0b74Schristos elf32-m68k.c, elf32-microblaze.c, elf32-ppc.c, elf32-score.c, 846*75fd0b74Schristos elf32-score7.c, elf32-sh.c, elf32-vax.c, elf32-xtensa.c, elf64-alpha.c, 847*75fd0b74Schristos elf64-hppa.c, elf64-mips.c, elf64-ppc.c, elf64-sparc.c, elfcode.h, 848*75fd0b74Schristos elflink.c, elfxx-ia64.c, elfxx-mips.c: Use STN_UNDEF when referring to 849*75fd0b74Schristos the zero symbol index. 850*75fd0b74Schristos 851*75fd0b74Schristos * elflink.c (bfd_elf_reloc_symbol_deleted_p): Compare the symbol index 852*75fd0b74Schristos to STN_UNDEF, not SHN_UNDEF. 853*75fd0b74Schristos 854*75fd0b74Schristos2010-09-23 Bernd Schmidt <bernds@codesourcery.com> 855*75fd0b74Schristos 856*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_fake_sections): New function. 857*75fd0b74Schristos (elf_backend_fake_sections): Define. 858*75fd0b74Schristos 859*75fd0b74Schristos2010-09-23 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> 860*75fd0b74Schristos 861*75fd0b74Schristos * bfd-in2.h (BFD_RELOC_ARM_HVC): New enum value. 862*75fd0b74Schristos 863*75fd0b74Schristos2010-09-23 Alan Modra <amodra@gmail.com> 864*75fd0b74Schristos 865*75fd0b74Schristos * cpu-d10v.c: Make bits_per_address 18 for all arch_info entries. 866*75fd0b74Schristos 867*75fd0b74Schristos2010-09-23 Alan Modra <amodra@gmail.com> 868*75fd0b74Schristos 869*75fd0b74Schristos * elf.c (_bfd_elf_init_private_section_data): Allow for SEC_RELOC 870*75fd0b74Schristos difference between input and output section. 871*75fd0b74Schristos 872*75fd0b74Schristos2010-09-22 Kai Tietz <kai.tietz@onevision.com> 873*75fd0b74Schristos 874*75fd0b74Schristos * coffcode.h (sec_to_styp_flags): Adjust debug 875*75fd0b74Schristos sections to be conform to pe-coff specification 876*75fd0b74Schristos and avoid marking them as excluded. 877*75fd0b74Schristos (styp_to_sec_flags): Doing reverse mapping. 878*75fd0b74Schristos 879*75fd0b74Schristos * peXXigen.c (_bfd_XXi_final_link_postscript): Add handling for 880*75fd0b74Schristos setting IAT directory entry. 881*75fd0b74Schristos 882*75fd0b74Schristos2010-09-20 Richard Henderson <rth@redhat.com> 883*75fd0b74Schristos 884*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_howto_table): Use bfd_elf_generic_reloc. 885*75fd0b74Schristos 886*75fd0b74Schristos2010-09-19 Richard Sandiford <rdsandiford@googlemail.com> 887*75fd0b74Schristos 888*75fd0b74Schristos * elfxx-mips.c (mips_elf_link_hash_entry): Add got_only_for_calls. 889*75fd0b74Schristos (mips_elf_link_hash_newfunc): Initialize it. 890*75fd0b74Schristos (mips_elf_record_global_got_symbol): Add a for_call parameter. 891*75fd0b74Schristos (mips_elf_count_got_symbols): Check SYMBOL_CALLS_LOCAL rather 892*75fd0b74Schristos than SYMBOL_REFERENCES_LOCAL if the GOT entry is only used for calls. 893*75fd0b74Schristos Try to remove .got entries in favour of .got.plt entries on VxWorks. 894*75fd0b74Schristos (_bfd_mips_elf_check_relocs): Do not try to avoid allocating 895*75fd0b74Schristos a global GOT entry for VxWorks calls. Update uses of 896*75fd0b74Schristos mips_elf_record_global_got_symbol. 897*75fd0b74Schristos (allocate_dynrelocs): Set got_only_for_calls to false if the GOT 898*75fd0b74Schristos entry is used for dynamic relocations. 899*75fd0b74Schristos 900*75fd0b74Schristos2010-09-19 Richard Sandiford <rdsandiford@googlemail.com> 901*75fd0b74Schristos 902*75fd0b74Schristos * elfxx-mips.c (mips_got_entry): Adjust commentary. 903*75fd0b74Schristos (mips_elf_create_local_got_entry): If given a symbol, check that it 904*75fd0b74Schristos has been assigned to the local part of the GOT. 905*75fd0b74Schristos (mips_elf_count_got_symbols): Take the bfd_link_info as argument 906*75fd0b74Schristos instead of the master GOT. Put all locally-binding symbols in 907*75fd0b74Schristos the local area. 908*75fd0b74Schristos (mips_elf_make_got_per_bfd): Use global_got_area to decide whether 909*75fd0b74Schristos a symbol lives in the local or global area. 910*75fd0b74Schristos (mips_elf_local_relocation_p): Remove check_forced argument and 911*75fd0b74Schristos retain only the !check_forced behavior. 912*75fd0b74Schristos (mips_elf_calculate_relocation): Adjust call accordingly. 913*75fd0b74Schristos Use global_got_area to decide whether an output relocation 914*75fd0b74Schristos should be local or global. Explicitly decay R_MIPS_GOT_PAGE 915*75fd0b74Schristos into R_MIPS_GOT_DISP where appropriate. Fix selection of 916*75fd0b74Schristos local vs. global semantics for R_MIPS*_26. Remove redundant 917*75fd0b74Schristos reevaluation of what is stored in was_local_p. 918*75fd0b74Schristos (mips_elf_create_dynamic_relocation): Use global_got_area to decide 919*75fd0b74Schristos whether the relocation should be against a global or local symbol. 920*75fd0b74Schristos (mips_elf_lay_out_got): Update the GOT traversal after the above 921*75fd0b74Schristos change to mips_elf_count_got_symbols. 922*75fd0b74Schristos (mips_elf_adjust_addend): Adjust call to mips_elf_local_relocation_p. 923*75fd0b74Schristos (_bfd_mips_elf_relocate_section): Likewise. 924*75fd0b74Schristos (_bfd_mips_elf_finish_dynamic_symbol): Use global_got_area to decide 925*75fd0b74Schristos whether the symbol has a global got entry. 926*75fd0b74Schristos (_bfd_mips_vxworks_finish_dynamic_symbol): Likewise. 927*75fd0b74Schristos 928*75fd0b74Schristos2010-09-19 Richard Sandiford <rdsandiford@googlemail.com> 929*75fd0b74Schristos 930*75fd0b74Schristos * elfxx-mips.c (allocate_dynrelocs): Don't add relocation symbols 931*75fd0b74Schristos to the global GOT on VxWorks. 932*75fd0b74Schristos 933*75fd0b74Schristos2010-09-19 Richard Sandiford <rdsandiford@googlemail.com> 934*75fd0b74Schristos 935*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_check_relocs): On VxWorks, 936*75fd0b74Schristos exclude __GOTT_BASE__ and __GOTT_INDEX__ from the warning 937*75fd0b74Schristos about HI/LO relocations in shared objects. 938*75fd0b74Schristos 939*75fd0b74Schristos2010-09-16 Alan Modra <amodra@gmail.com> 940*75fd0b74Schristos 941*75fd0b74Schristos * elf32-spu.c (spu_elf_size_sections): Omit fixups for non-alloc 942*75fd0b74Schristos sections. 943*75fd0b74Schristos (spu_elf_create_sections): Mark .fixup with SEC_LINKER_CREATED and 944*75fd0b74Schristos set dynobj. 945*75fd0b74Schristos (spu_elf_finish_dynamic_sections): New function. 946*75fd0b74Schristos (elf_backend_finish_dynamic_sections): Define. 947*75fd0b74Schristos 948*75fd0b74Schristos2010-09-16 Alan Modra <amodra@gmail.com> 949*75fd0b74Schristos 950*75fd0b74Schristos * elf.c (bfd_elf_get_default_section_type): Don't test SEC_NEVER_LOAD. 951*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Likewise. 952*75fd0b74Schristos 953*75fd0b74Schristos2010-09-15 Kai Tietz <kai.tietz@onevision.com> 954*75fd0b74Schristos 955*75fd0b74Schristos * pei-x86_64.c (pex64_get_unwind_info): Reorgnized. 956*75fd0b74Schristos (pex64_get_scope_entry): Removed. 957*75fd0b74Schristos (find_next_xdata_or_end): New helper. 958*75fd0b74Schristos (pex64_dump_xdata): Reworked. 959*75fd0b74Schristos (pex64_bfd_print_pdata): Add checking for 960*75fd0b74Schristos valid pdata sorting and values. Reworked 961*75fd0b74Schristos output. 962*75fd0b74Schristos 963*75fd0b74Schristos2010-09-15 H.J. Lu <hongjiu.lu@intel.com> 964*75fd0b74Schristos 965*75fd0b74Schristos PR binutils/12004 966*75fd0b74Schristos * plugin.c (bfd_plugin_object_p): Handle NULL iostream. 967*75fd0b74Schristos 968*75fd0b74Schristos2010-09-14 Kai Tietz <kai.tietz@onevision.com> 969*75fd0b74Schristos 970*75fd0b74Schristos * pe-x86_64.c (COFF_SECTION_ALIGNMENT_ENTRIES): Make 971*75fd0b74Schristos .rdata, .data, and .text partial matched section names. 972*75fd0b74Schristos * pei-x86_64.c: Likewise. 973*75fd0b74Schristos 974*75fd0b74Schristos * peXXigen.c (sort_x64_pdata): New helper. 975*75fd0b74Schristos (_bfd_XXi_final_link_postscript): Do pdata sorting. 976*75fd0b74Schristos 977*75fd0b74Schristos2010-09-09 H.J. Lu <hongjiu.lu@intel.com> 978*75fd0b74Schristos 979*75fd0b74Schristos PR ld/11998 980*75fd0b74Schristos * elf.c (assign_file_positions_for_load_sections): Don't warn 981*75fd0b74Schristos zero LMA adjustment. 982*75fd0b74Schristos 983*75fd0b74Schristos2010-09-09 Bernd Schmidt <bernds@codesourcery.com> 984*75fd0b74Schristos 985*75fd0b74Schristos * elflink.c (bfd_elf_final_link): Correct calculation of 986*75fd0b74Schristos max_external_reloc_size. 987*75fd0b74Schristos 988*75fd0b74Schristos2010-09-07 Alan Modra <amodra@gmail.com> 989*75fd0b74Schristos Marcus Brinkmann <marcus.brinkmann@ruhr-uni-bochum.de> 990*75fd0b74Schristos 991*75fd0b74Schristos * peXXigen.c: Whitespace. 992*75fd0b74Schristos (pe_print_idata): Correct section limit calculations. Tidy array 993*75fd0b74Schristos indexing. 994*75fd0b74Schristos (_bfd_XX_print_ce_compressed_pdata): Don't leak memory. 995*75fd0b74Schristos 996*75fd0b74Schristos2010-09-02 Richard Henderson <rth@redhat.com> 997*75fd0b74Schristos 998*75fd0b74Schristos * config.bfd (x86_64-*-mingw*): Select 32-bit pei vectors too. 999*75fd0b74Schristos 1000*75fd0b74Schristos2010-09-01 Pedro Alves <pedro@codesourcery.com> 1001*75fd0b74Schristos 1002*75fd0b74Schristos * netbsd-core.c (netbsd_core_core_file_pid): Renamed to ... 1003*75fd0b74Schristos (netbsd_core_file_pid): ... this. 1004*75fd0b74Schristos 1005*75fd0b74Schristos2010-09-01 Tristan Gingold <gingold@adacore.com> 1006*75fd0b74Schristos 1007*75fd0b74Schristos * coffcode.h (coff_slurp_line_table): Add a cast. 1008*75fd0b74Schristos (coff_slurp_reloc_table): Ditto. 1009*75fd0b74Schristos 1010*75fd0b74Schristos2010-08-30 Gunther Nikl <gnikl@users.sourceforge.net> 1011*75fd0b74Schristos 1012*75fd0b74Schristos * cisco-core.c (cisco_core_file_pid): Define. 1013*75fd0b74Schristos 1014*75fd0b74Schristos2010-08-30 Alan Modra <amodra@gmail.com> 1015*75fd0b74Schristos 1016*75fd0b74Schristos PR binutils/11953 1017*75fd0b74Schristos * elf.c (copy_elf_program_header): Calculate map->header_size 1018*75fd0b74Schristos from lowest_section, not first_section. Validate program 1019*75fd0b74Schristos header p_paddr against section lma. Find lowest_section in 1020*75fd0b74Schristos second loop over headers. 1021*75fd0b74Schristos 1022*75fd0b74Schristos2010-08-28 Alan Modra <amodra@gmail.com> 1023*75fd0b74Schristos 1024*75fd0b74Schristos * elflink.c (_bfd_elf_dynamic_symbol_p): Rename param. Make 1025*75fd0b74Schristos common syms local. 1026*75fd0b74Schristos (_bfd_elf_symbol_refs_local_p): Expand comment. 1027*75fd0b74Schristos (elf_link_output_extsym): Fix style nit. 1028*75fd0b74Schristos 1029*75fd0b74Schristos2010-08-26 Nathan Sidwell <nathan@codesourcery.com> 1030*75fd0b74Schristos 1031*75fd0b74Schristos * elf32-arm.c (elf32_arm_final_link): Process stub sections 1032*75fd0b74Schristos exactly once. 1033*75fd0b74Schristos 1034*75fd0b74Schristos2010-08-25 H.J. Lu <hongjiu.lu@intel.com> 1035*75fd0b74Schristos 1036*75fd0b74Schristos PR ld/11939 1037*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Don't set 1038*75fd0b74Schristos unique_global for non-ELF hash link table. 1039*75fd0b74Schristos 1040*75fd0b74Schristos2010-08-25 H.J. Lu <hongjiu.lu@intel.com> 1041*75fd0b74Schristos 1042*75fd0b74Schristos PR ld/11944 1043*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Add target_id. 1044*75fd0b74Schristos (bfd_elf_make_generic_object): Renamed to ... 1045*75fd0b74Schristos (bfd_elf_make_object): This. 1046*75fd0b74Schristos 1047*75fd0b74Schristos * elf.c (bfd_elf_make_generic_object): Removed. 1048*75fd0b74Schristos (bfd_elf_make_object): New. 1049*75fd0b74Schristos (bfd_elf_mkcorefile): Really treat it as an object file. 1050*75fd0b74Schristos 1051*75fd0b74Schristos * elf-m10300.c (ELF_TARGET_ID): New. 1052*75fd0b74Schristos * elf32-arm.c (ELF_TARGET_ID): Likewise. 1053*75fd0b74Schristos * elf32-bfin.c (ELF_TARGET_ID): Likewise. 1054*75fd0b74Schristos * elf32-cris.c (ELF_TARGET_ID): Likewise. 1055*75fd0b74Schristos * elf32-frv.c (ELF_TARGET_ID): Likewise. 1056*75fd0b74Schristos * elf32-i386.c (ELF_TARGET_ID): Likewise. 1057*75fd0b74Schristos * elf32-lm32.c (ELF_TARGET_ID): Likewise. 1058*75fd0b74Schristos * elf32-m32r.c (ELF_TARGET_ID): Likewise. 1059*75fd0b74Schristos * elf32-m68hc11.c (ELF_TARGET_ID): Likewise. 1060*75fd0b74Schristos * elf32-m68hc12.c (ELF_TARGET_ID): Likewise. 1061*75fd0b74Schristos * elf32-m68k.c (ELF_TARGET_ID): Likewise. 1062*75fd0b74Schristos * elf32-microblaze.c (ELF_TARGET_ID): Likewise. 1063*75fd0b74Schristos * elf32-ppc.c (ELF_TARGET_ID): Likewise. 1064*75fd0b74Schristos * elf32-s390.c (ELF_TARGET_ID): Likewise. 1065*75fd0b74Schristos * elf32-sh.c (ELF_TARGET_ID): Likewise. 1066*75fd0b74Schristos * elf32-sparc.c (ELF_TARGET_ID): Likewise. 1067*75fd0b74Schristos * elf32-spu.c (ELF_TARGET_ID): Likewise. 1068*75fd0b74Schristos * elf32-tic6x.c (ELF_TARGET_ID): Likewise. 1069*75fd0b74Schristos * elf32-xtensa.c (ELF_TARGET_ID): Likewise. 1070*75fd0b74Schristos * elf64-alpha.c (ELF_TARGET_ID): Likewise. 1071*75fd0b74Schristos * elf64-hppa.c (ELF_TARGET_ID): Likewise. 1072*75fd0b74Schristos * elf64-ppc.c (ELF_TARGET_ID): Likewise. 1073*75fd0b74Schristos * elf64-s390.c (ELF_TARGET_ID): Likewise. 1074*75fd0b74Schristos * elf64-x86-64.c (ELF_TARGET_ID): Likewise. 1075*75fd0b74Schristos * elfxx-ia64.c (ELF_TARGET_ID): Likewise. 1076*75fd0b74Schristos 1077*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_mkobject): Removed. 1078*75fd0b74Schristos (bfd_elf32_mkobject): Likewise. 1079*75fd0b74Schristos (ELF_TARGET_ID): New. 1080*75fd0b74Schristos 1081*75fd0b74Schristos * elf32-mips.c (ELF_TARGET_ID): New. 1082*75fd0b74Schristos (bfd_elf32_mkobject): Removed. 1083*75fd0b74Schristos 1084*75fd0b74Schristos * elf64-mips.c (ELF_TARGET_ID): New. 1085*75fd0b74Schristos (bfd_elf64_mkobject): Removed. 1086*75fd0b74Schristos 1087*75fd0b74Schristos * elfn32-mips.c (ELF_TARGET_ID): New. 1088*75fd0b74Schristos (bfd_elf32_mkobject): Removed. 1089*75fd0b74Schristos 1090*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_mkobject): Removed. 1091*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_mkobject): Likewise. 1092*75fd0b74Schristos 1093*75fd0b74Schristos * elfxx-target.h (bfd_elfNN_mkobject): Default to 1094*75fd0b74Schristos bfd_elf_make_object. 1095*75fd0b74Schristos (ELF_TARGET_ID): New. Default to GENERIC_ELF_DATA. 1096*75fd0b74Schristos (elfNN_bed): Initialize target_id. 1097*75fd0b74Schristos 1098*75fd0b74Schristos2010-08-25 Julian Brown <julian@codesourcery.com> 1099*75fd0b74Schristos 1100*75fd0b74Schristos * elf32-arm.c (arm_stub_required_alignment): New. 1101*75fd0b74Schristos (arm_build_one_stub): Use above to partition stubs. 1102*75fd0b74Schristos (make_branch_to_a8_stub): Use arm_stub_a8_veneer_lwm not 1103*75fd0b74Schristos arm_stub_a8_veneer_b_cond. 1104*75fd0b74Schristos 1105*75fd0b74Schristos2010-08-25 Alan Modra <amodra@gmail.com> 1106*75fd0b74Schristos 1107*75fd0b74Schristos * aout-arm.c (MY(bfd_reloc_type_lookup)): Use bfd_arch_bits_per_address. 1108*75fd0b74Schristos * aout-ns32k.c (MY(bfd_reloc_type_lookup)): Likewise. 1109*75fd0b74Schristos * aoutx.h (NAME(aout,reloc_type_lookup)): Likewise. 1110*75fd0b74Schristos * coff-arm.c (coff_arm_reloc_type_lookup): Likewise. 1111*75fd0b74Schristos * elf-hppa.h (elf_hppa_reloc_final_type): Likewise. 1112*75fd0b74Schristos * reloc.c (bfd_default_reloc_type_lookup): Likewise. 1113*75fd0b74Schristos * riscix.c (riscix_reloc_type_lookup): Likewise. 1114*75fd0b74Schristos 1115*75fd0b74Schristos2010-08-25 Alan Modra <amodra@gmail.com> 1116*75fd0b74Schristos 1117*75fd0b74Schristos * elf.c (_bfd_elf_map_sections_to_segments): Don't load program 1118*75fd0b74Schristos headers if any loaded section wraps the address space. Simplify 1119*75fd0b74Schristos ~(m-1) to -m. Use lma rather than vma when determining whether 1120*75fd0b74Schristos note sections are adjacent. 1121*75fd0b74Schristos 1122*75fd0b74Schristos2010-08-22 H.J. Lu <hongjiu.lu@intel.com> 1123*75fd0b74Schristos 1124*75fd0b74Schristos PR ld/11933 1125*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Don't check relocation 1126*75fd0b74Schristos if input ELF object ID doesn't match output. 1127*75fd0b74Schristos 1128*75fd0b74Schristos2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 1129*75fd0b74Schristos 1130*75fd0b74Schristos * configure: Regenerate. 1131*75fd0b74Schristos 1132*75fd0b74Schristos2010-08-20 H.J. Lu <hongjiu.lu@intel.com> 1133*75fd0b74Schristos 1134*75fd0b74Schristos * merge.c (sec_merge_emit): Revert the last checkin. 1135*75fd0b74Schristos 1136*75fd0b74Schristos2010-08-20 Maciej W. Rozycki <macro@codesourcery.com> 1137*75fd0b74Schristos 1138*75fd0b74Schristos * elf32-sh.c (sh_elf_relocate_section): Handle non-ELF output 1139*75fd0b74Schristos BFD. 1140*75fd0b74Schristos 1141*75fd0b74Schristos2010-08-20 Maciej W. Rozycki <macro@codesourcery.com> 1142*75fd0b74Schristos 1143*75fd0b74Schristos * elf32-m68k.c (bfd_elf_m68k_set_target_options): Don't set GOT 1144*75fd0b74Schristos options unless an m68k hash table has been found. 1145*75fd0b74Schristos 1146*75fd0b74Schristos2010-08-20 Nick Clifton <nickc@redhat.com> 1147*75fd0b74Schristos 1148*75fd0b74Schristos * merge.c (sec_merge_emit): Do not zero pad sections that do not 1149*75fd0b74Schristos have an alignment. 1150*75fd0b74Schristos 1151*75fd0b74Schristos2010-08-18 Pedro Alves <pedro@codesourcery.com> 1152*75fd0b74Schristos 1153*75fd0b74Schristos PR corefile/8210 1154*75fd0b74Schristos 1155*75fd0b74Schristos * bfd-in2.h: Regenerate. 1156*75fd0b74Schristos * corefile.c (bfd_core_file_pid): New. 1157*75fd0b74Schristos 1158*75fd0b74Schristos * targets.c (BFD_JUMP_TABLE_CORE): Add NAME##_core_file_pid. 1159*75fd0b74Schristos (struct bfd_target) <_core_file_pid>: New. 1160*75fd0b74Schristos 1161*75fd0b74Schristos * libbfd-in.h (_bfd_nocore_core_file_pid): Declare. 1162*75fd0b74Schristos * libbfd.c (_bfd_nocore_core_file_pid): New. 1163*75fd0b74Schristos 1164*75fd0b74Schristos * elf-bfd.h (bfd_elf32_core_file_pid, bfd_elf64_core_file_pid): 1165*75fd0b74Schristos Declare. 1166*75fd0b74Schristos * elfcode.h (elf_core_file_pid): New define. 1167*75fd0b74Schristos * elfcore.h (elf_core_file_pid): New function. 1168*75fd0b74Schristos 1169*75fd0b74Schristos * elf.c (elfcore_make_pid): Rewrite. 1170*75fd0b74Schristos (elfcore_grok_prstatus): Only set core_pid if not set yet. 1171*75fd0b74Schristos (elfcore_grok_prstatus) [!HAVE_PRSTATUS_T_PR_WHO]: Fallback to 1172*75fd0b74Schristos getting the lwpid from prstat.pr_pid. 1173*75fd0b74Schristos 1174*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Write the LWPID to 1175*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1176*75fd0b74Schristos (elf64_x86_64_grok_psinfo): Extract the main process's PID, 1177*75fd0b74Schristos and store it in elf_tdata's core_pid field. 1178*75fd0b74Schristos * elf32-i386.c (elf_i386_grok_prstatus): Write the LWPID to 1179*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1180*75fd0b74Schristos (elf_i386_grok_psinfo): Extract the main process's PID, and 1181*75fd0b74Schristos store it in elf_tdata's core_pid field. 1182*75fd0b74Schristos 1183*75fd0b74Schristos * elf32-am33lin.c (elf32_am33lin_grok_prstatus): Write the LWPID 1184*75fd0b74Schristos to elf_tdata's core_lwpid instead of to core_pid. 1185*75fd0b74Schristos * elf32-arm.c (elf32_arm_nabi_grok_prstatus): Write the LWPID to 1186*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1187*75fd0b74Schristos * elf32-cris.c (cris_elf_grok_prstatus): Write the LWPID to 1188*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1189*75fd0b74Schristos * elf32-frv.c (elf32_frv_grok_prstatus): Write the LWPID to 1190*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1191*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_grok_prstatus): Write the LWPID to 1192*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1193*75fd0b74Schristos * elf32-mips.c (elf32_mips_grok_prstatus): Write the LWPID to 1194*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1195*75fd0b74Schristos * elf32-ppc.c (ppc_elf_grok_prstatus): Write the LWPID to 1196*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1197*75fd0b74Schristos * elf32-s390.c (elf_s390_grok_prstatus): Write the LWPID to 1198*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1199*75fd0b74Schristos * elf32-score.c (s3_bfd_score_elf_grok_prstatus): Write the LWPID 1200*75fd0b74Schristos to elf_tdata's core_lwpid instead of to core_pid. 1201*75fd0b74Schristos * elf32-score7.c (s7_bfd_score_elf_grok_prstatus): Write the LWPID 1202*75fd0b74Schristos to elf_tdata's core_lwpid instead of to core_pid. 1203*75fd0b74Schristos * elf32-sh.c (elf32_shlin_grok_prstatus): Write the LWPID to 1204*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1205*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_grok_prstatus): Write the LWPID to 1206*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1207*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_grok_prstatus): Write the LWPID to 1208*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1209*75fd0b74Schristos * elf64-mips.c (elf64_mips_grok_prstatus): Write the LWPID to 1210*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1211*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_grok_prstatus): Write the LWPID to 1212*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1213*75fd0b74Schristos * elfn32-mips.c (elf32_mips_grok_prstatus): Write the LWPID to 1214*75fd0b74Schristos elf_tdata's core_lwpid instead of to core_pid. 1215*75fd0b74Schristos 1216*75fd0b74Schristos * plugin.c (bfd_plugin_core_file_pid): New function. 1217*75fd0b74Schristos * aout-target.h (MY_core_file_pid): Define. 1218*75fd0b74Schristos * aout-tic30.c (MY_core_file_pid, MY_core_file_p): New defines. 1219*75fd0b74Schristos * coff-rs6000.c (coff_core_file_pid): New define. 1220*75fd0b74Schristos (rs6000coff_vec, pmac_xcoff_vec): Use BFD_JUMP_TABLE_CORE. 1221*75fd0b74Schristos * coff64-rs6000.c (coff_core_file_pid): New define. 1222*75fd0b74Schristos (rs6000coff64_vec): Use BFD_JUMP_TABLE_CORE. 1223*75fd0b74Schristos (xcoff64_core_file_pid): New define. 1224*75fd0b74Schristos (aix5coff64_vec): Use BFD_JUMP_TABLE_CORE. 1225*75fd0b74Schristos * mach-o-target.c (bfd_mach_o_core_file_pid): New define. 1226*75fd0b74Schristos * aix386-core.c (aix386_core_file_pid): New define. 1227*75fd0b74Schristos * hppabsd-core.c (hppabsd_core_core_file_pid): New define. 1228*75fd0b74Schristos * hpux-core.c (hpux_core_core_file_pid): New define. 1229*75fd0b74Schristos * irix-core.c (irix_core_core_file_pid): New define. 1230*75fd0b74Schristos * lynx-core.c (lynx_core_file_pid): New define. 1231*75fd0b74Schristos * osf-core.c (osf_core_core_file_pid): New define. 1232*75fd0b74Schristos * ptrace-core.c (ptrace_unix_core_file_pid): New define. 1233*75fd0b74Schristos * sco5-core.c (sco5_core_file_pid): New define. 1234*75fd0b74Schristos * xcoff-target.h (coff_core_file_pid): New define. 1235*75fd0b74Schristos * netbsd-core.c (netbsd_core_core_file_pid): New define. 1236*75fd0b74Schristos 1237*75fd0b74Schristos2010-08-13 H.J. Lu <hongjiu.lu@intel.com> 1238*75fd0b74Schristos 1239*75fd0b74Schristos PR ld/11913 1240*75fd0b74Schristos * elf32-i386.c (elf_i386_finish_dynamic_sections): Check if 1241*75fd0b74Schristos .got.plt section is discarded. 1242*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Likewise. 1243*75fd0b74Schristos 1244*75fd0b74Schristos2010-08-13 Nathan Sidwell <nathan@codesourcery.com> 1245*75fd0b74Schristos 1246*75fd0b74Schristos * elf32-m69k.c (elf32_m68k_print_private_bfd_data): Detect EMAC_B 1247*75fd0b74Schristos variant. 1248*75fd0b74Schristos 1249*75fd0b74Schristos2010-08-12 H.J. Lu <hongjiu.lu@intel.com> 1250*75fd0b74Schristos 1251*75fd0b74Schristos PR binutils/11909 1252*75fd0b74Schristos * Makefile.am (coff-tic4x.lo): New. Disable -Werror. 1253*75fd0b74Schristos (coff-tic54x.lo): Likewise. 1254*75fd0b74Schristos * Makefile.in: Regenerated. 1255*75fd0b74Schristos 1256*75fd0b74Schristos2010-08-12 Todd Veldhuizen <todd.veldhuizen@logicblox.com> 1257*75fd0b74Schristos 1258*75fd0b74Schristos PR ld/11843 1259*75fd0b74Schristos * elflink.c (compute_bucket_count): Avoid futile long searches for 1260*75fd0b74Schristos the best bucket size. 1261*75fd0b74Schristos 1262*75fd0b74Schristos2010-08-09 Richard Henderson <rth@redhat.com> 1263*75fd0b74Schristos 1264*75fd0b74Schristos PR ld/11891 1265*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_relax_tls_get_addr): Disallow relaxing 1266*75fd0b74Schristos to tlshi/lo until pos0 and pos1 are adjacent. Use the destination 1267*75fd0b74Schristos register from the tldgd insn. 1268*75fd0b74Schristos 1269*75fd0b74Schristos2010-08-09 Catherine Moore <clm@codesourcery.com> 1270*75fd0b74Schristos 1271*75fd0b74Schristos * elfxx-mips.c (mips_elf_perform_relocation): Improve 1272*75fd0b74Schristos interlinking error message. 1273*75fd0b74Schristos 1274*75fd0b74Schristos2010-08-06 Alan Modra <amodra@gmail.com> 1275*75fd0b74Schristos 1276*75fd0b74Schristos * elf64-ppc.c (ha_reloc_match): Allow matches to other than r2. 1277*75fd0b74Schristos (ppc64_elf_relocate_section): Nop out high part insn of large toc 1278*75fd0b74Schristos code sequence when the high part of offset is zero. 1279*75fd0b74Schristos 1280*75fd0b74Schristos2010-08-04 Tristan Gingold <gingold@adacore.com> 1281*75fd0b74Schristos 1282*75fd0b74Schristos * vms-alpha.c (alpha_vms_build_fixups): Write the EICP. 1283*75fd0b74Schristos (alpha_vms_bfd_final_link): Explicitly forbid relocatable links. 1284*75fd0b74Schristos Clear the SEC_RELOC flag. 1285*75fd0b74Schristos 1286*75fd0b74Schristos2010-08-04 Tristan Gingold <gingold@adacore.com> 1287*75fd0b74Schristos 1288*75fd0b74Schristos * vms-alpha.c (alpha_vms_create_eisd_for_section): Make writable 1289*75fd0b74Schristos sections with relocs. 1290*75fd0b74Schristos (alpha_vms_add_fixup_lp): Set SEC_RELOC flag. 1291*75fd0b74Schristos (alpha_vms_add_fixup_ca): Ditto. 1292*75fd0b74Schristos (alpha_vms_add_fixup_qr): Ditto. 1293*75fd0b74Schristos Add comments. 1294*75fd0b74Schristos 1295*75fd0b74Schristos2010-08-04 Tristan Gingold <gingold@adacore.com> 1296*75fd0b74Schristos 1297*75fd0b74Schristos * vms-alpha.c (alpha_vms_create_eisd_for_section): Do not make 1298*75fd0b74Schristos CODE sections writable. 1299*75fd0b74Schristos 1300*75fd0b74Schristos2010-08-04 Tristan Gingold <gingold@adacore.com> 1301*75fd0b74Schristos 1302*75fd0b74Schristos * vms-alpha.c (alpha_vms_add_lw_fixup): Renamed to ... 1303*75fd0b74Schristos (alpha_vms_add_fixup_lr): ... this for consistency. 1304*75fd0b74Schristos (alpha_vms_add_qw_fixup): Removed. 1305*75fd0b74Schristos Fix some comments. 1306*75fd0b74Schristos (vms_get_symbol_info): Adjust type for unknown sections. 1307*75fd0b74Schristos 1308*75fd0b74Schristos2010-08-04 Tristan Gingold <gingold@adacore.com> 1309*75fd0b74Schristos 1310*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_egsd): Use the canonical absolute 1311*75fd0b74Schristos section for any absolute section. Remove some debugging code. 1312*75fd0b74Schristos 1313*75fd0b74Schristos2010-08-03 DJ Delorie <dj@redhat.com> 1314*75fd0b74Schristos 1315*75fd0b74Schristos * elf32-m32c.c (ELF_MAXPAGESIZE): Change page size to 256 bytes. 1316*75fd0b74Schristos 1317*75fd0b74Schristos2010-08-03 Tristan Gingold <gingold@adacore.com> 1318*75fd0b74Schristos 1319*75fd0b74Schristos * vms-misc.c (vms_convert_to_var): Make it static. 1320*75fd0b74Schristos (_bfd_vms_convert_to_var_unix_filename): Make it public. 1321*75fd0b74Schristos 1322*75fd0b74Schristos2010-08-03 Tristan Gingold <gingold@adacore.com> 1323*75fd0b74Schristos 1324*75fd0b74Schristos * makefile.vms (OBJS): Update list. 1325*75fd0b74Schristos 1326*75fd0b74Schristos2010-08-03 Tristan Gingold <gingold@adacore.com> 1327*75fd0b74Schristos 1328*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_egsd): Do not set SEC_HAS_CONTENTS 1329*75fd0b74Schristos nor SEC_RELOC for empty sections. 1330*75fd0b74Schristos 1331*75fd0b74Schristos2010-08-03 Tristan Gingold <gingold@adacore.com> 1332*75fd0b74Schristos 1333*75fd0b74Schristos * vms-alpha.c (evax_section_flags): Fix flags for absolute 1334*75fd0b74Schristos section. Remove useless parenthesis. 1335*75fd0b74Schristos 1336*75fd0b74Schristos2010-08-03 Tristan Gingold <gingold@adacore.com> 1337*75fd0b74Schristos 1338*75fd0b74Schristos * vms-lib.c (vms_lib_bread_raw): Change type of BUF argument. 1339*75fd0b74Schristos (vms_lib_bread, vms_lib_bopen): Adjust. 1340*75fd0b74Schristos 1341*75fd0b74Schristos2010-08-02 Alan Modra <amodra@gmail.com> 1342*75fd0b74Schristos 1343*75fd0b74Schristos PR 11866 1344*75fd0b74Schristos * elf.c (assign_file_positions_for_load_sections): Use p_vaddr to 1345*75fd0b74Schristos calculate off_adjust rather than first section vma. 1346*75fd0b74Schristos 1347*75fd0b74Schristos2010-07-30 H.J. Lu <hongjiu.lu@intel.com> 1348*75fd0b74Schristos 1349*75fd0b74Schristos * elflink.c (compute_bucket_count): Add ATTRIBUTE_UNUSED to info. 1350*75fd0b74Schristos 1351*75fd0b74Schristos2010-07-30 Anthony Green <green@moxielogic.com> 1352*75fd0b74Schristos 1353*75fd0b74Schristos * config.bfd (targ_cpu): Add moxie-*-rtems support. 1354*75fd0b74Schristos 1355*75fd0b74Schristos2010-07-29 Alan Modra <amodra@gmail.com> 1356*75fd0b74Schristos 1357*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_toc): Always adjust local syms in 1358*75fd0b74Schristos .toc section, even when none are used in relocs. 1359*75fd0b74Schristos 1360*75fd0b74Schristos2010-07-27 Maciej W. Rozycki <macro@codesourcery.com> 1361*75fd0b74Schristos 1362*75fd0b74Schristos * elfxx-mips.h: Include "elf/mips.h". 1363*75fd0b74Schristos (gprel16_reloc_p): New static inline function. 1364*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_check_relocs) 1365*75fd0b74Schristos [R_MIPS16_GOT16, R_MIPS_GOT16, R_MIPS_GOT_HI16, R_MIPS_GOT_LO16]: 1366*75fd0b74Schristos Use got16_reloc_p. 1367*75fd0b74Schristos (_bfd_mips_elf_relocate_section)[bfd_reloc_overflow]: Use 1368*75fd0b74Schristos gprel16_reloc_p. 1369*75fd0b74Schristos * elf32-mips.c (mips_info_to_howto_rel): Likewise. 1370*75fd0b74Schristos * elfn32-mips.c (mips_info_to_howto_rel): Likewise. 1371*75fd0b74Schristos 1372*75fd0b74Schristos2010-07-27 Maciej W. Rozycki <macro@codesourcery.com> 1373*75fd0b74Schristos 1374*75fd0b74Schristos * elf64-mips.c (mips_elf64_howto_table_rela) 1375*75fd0b74Schristos [R_MIPS_TLS_DTPMOD64]: Clear partial_inplace. 1376*75fd0b74Schristos [R_MIPS_TLS_DTPREL64, R_MIPS_TLS_GD, R_MIPS_TLS_LDM]: Likewise. 1377*75fd0b74Schristos [R_MIPS_TLS_DTPREL_HI16, R_MIPS_TLS_DTPREL_LO16]: Likewise. 1378*75fd0b74Schristos [R_MIPS_TLS_GOTTPREL, R_MIPS_TLS_TPREL64]: Likewise. 1379*75fd0b74Schristos [R_MIPS_TLS_TPREL_HI16, R_MIPS_TLS_TPREL_LO16]: Likewise. 1380*75fd0b74Schristos * elfn32-mips.c (elf_mips_howto_table_rela) 1381*75fd0b74Schristos [R_MIPS_TLS_DTPMOD32]: Likewise. 1382*75fd0b74Schristos [R_MIPS_TLS_DTPREL32, R_MIPS_TLS_GD, R_MIPS_TLS_LDM]: Likewise. 1383*75fd0b74Schristos [R_MIPS_TLS_DTPREL_HI16, R_MIPS_TLS_DTPREL_LO16]: Likewise. 1384*75fd0b74Schristos [R_MIPS_TLS_GOTTPREL, R_MIPS_TLS_TPREL32]: Likewise. 1385*75fd0b74Schristos [R_MIPS_TLS_TPREL_HI16, R_MIPS_TLS_TPREL_LO16]: Likewise. 1386*75fd0b74Schristos 1387*75fd0b74Schristos2010-07-23 Naveen.H.S <naveen.S@kpitcummins.com> 1388*75fd0b74Schristos Ina Pandit <ina.pandit@kpitcummins.com> 1389*75fd0b74Schristos 1390*75fd0b74Schristos * archures.c (DESCRIPTION): Define bfd_mach_v850e2 and 1391*75fd0b74Schristos bfd_mach_v850e2v3. 1392*75fd0b74Schristos * reloc.c (bfd_architecture): Define bfd_mach_v850e2 and 1393*75fd0b74Schristos bfd_mach_v850e2v3. 1394*75fd0b74Schristos (BFD_RELOC_V850_16_PCREL, BFD_RELOC_V850_17_PCREL, 1395*75fd0b74Schristos BFD_RELOC_V850_22_PCREL, BFD_RELOC_V850_23, 1396*75fd0b74Schristos BFD_RELOC_V850_32_PCREL, BFD_RELOC_V850_32_ABS, 1397*75fd0b74Schristos BFD_RELOC_V850_16_SPLIT_OFFSET, BFD_RELOC_V850_16_S1, 1398*75fd0b74Schristos BFD_RELOC_V850_LO16_SPLIT_OFFSET, BFD_RELOC_V850_SDA_15_16_OFFSET, 1399*75fd0b74Schristos BFD_RELOC_V850_ZDA_16_16_OFFSET, BFD_RELOC_V850_CALLT_15_16_OFFSET, 1400*75fd0b74Schristos BFD_RELOC_V850_32_GOTPCREL, BFD_RELOC_V850_16_GOT, 1401*75fd0b74Schristos BFD_RELOC_V850_32_GOT, BFD_RELOC_V850_22_PLT_PCREL, 1402*75fd0b74Schristos BFD_RELOC_V850_32_PLT_PCREL, BFD_RELOC_V850_COPY, 1403*75fd0b74Schristos BFD_RELOC_V850_GLOB_DAT, BFD_RELOC_V850_JMP_SLOT, 1404*75fd0b74Schristos BFD_RELOC_V850_RELATIVE, BFD_RELOC_V850_16_GOTOFF, 1405*75fd0b74Schristos BFD_RELOC_V850_32_GOTOFF, BFD_RELOC_V850_CODE, 1406*75fd0b74Schristos BFD_RELOC_V850_DATA): New relocations for V850 target. 1407*75fd0b74Schristos * config.bfd: Match all v850 targets. 1408*75fd0b74Schristos * cpu-v850.c (arch_info_struct): Define V850e2 and V850e2v3. 1409*75fd0b74Schristos * elf32-v850.c (v850_elf_check_relocs): Check the newly added 1410*75fd0b74Schristos relocations. 1411*75fd0b74Schristos (v850_elf_perform_relocation ): Update the newly added 1412*75fd0b74Schristos relocations. 1413*75fd0b74Schristos (v850_elf_howto_t): Update the specifications of added 1414*75fd0b74Schristos relocations. 1415*75fd0b74Schristos (v850_elf_reloc_map): Update the relocation mappings. 1416*75fd0b74Schristos (v850_elf_final_link_relocate): Maps added relocation into the 1417*75fd0b74Schristos appropriate howto structure. 1418*75fd0b74Schristos (v850_elf_object_p): Add support for V850E2 and V850E2V3. 1419*75fd0b74Schristos (v850_elf_final_write_processing): Likewise. 1420*75fd0b74Schristos (v850_elf_merge_private_bfd_data): Likewise. 1421*75fd0b74Schristos (v850_elf_print_private_bfd_data): Likewise. 1422*75fd0b74Schristos * libbfd.h: Regenerate. 1423*75fd0b74Schristos * bfd-in2.h: Regenerate. 1424*75fd0b74Schristos 1425*75fd0b74Schristos2010-07-23 Alan Modra <amodra@gmail.com> 1426*75fd0b74Schristos 1427*75fd0b74Schristos * archive.c (_bfd_archive_bsd44_construct_extended_name_table): 1428*75fd0b74Schristos Correct format specifier. 1429*75fd0b74Schristos 1430*75fd0b74Schristos2010-07-22 Alan Modra <amodra@gmail.com> 1431*75fd0b74Schristos 1432*75fd0b74Schristos * ecoff.c: Don't include aout/ranlib.h. 1433*75fd0b74Schristos (_bfd_ecoff_slurp_armap): Use correct struct for ardata->symdefs. 1434*75fd0b74Schristos (_bfd_ecoff_write_armap): Output ar_date and ar_size using 1435*75fd0b74Schristos _bfd_ar_spacepad. 1436*75fd0b74Schristos 1437*75fd0b74Schristos2010-07-22 Alan Modra <amodra@gmail.com> 1438*75fd0b74Schristos 1439*75fd0b74Schristos * aoutx.h (some_aout_object_p): Don't set EXEC_P for files with 1440*75fd0b74Schristos relocs. 1441*75fd0b74Schristos 1442*75fd0b74Schristos2010-07-20 Alan Modra <amodra@gmail.com> 1443*75fd0b74Schristos 1444*75fd0b74Schristos * elf.c (assign_file_positions_for_load_sections): Check that 1445*75fd0b74Schristos zero size sections are allocated in segments too. 1446*75fd0b74Schristos (assign_file_positions_for_non_load_sections): Warn if zero 1447*75fd0b74Schristos size alloc sections are found here. 1448*75fd0b74Schristos (copy_elf_program_header): Don't drop zero size sections from 1449*75fd0b74Schristos segment map. 1450*75fd0b74Schristos (copy_private_bfd_data): Check for changes in zero size sections. 1451*75fd0b74Schristos 1452*75fd0b74Schristos2010-07-17 Alan Modra <amodra@gmail.com> 1453*75fd0b74Schristos 1454*75fd0b74Schristos * elf.c (_bfd_elf_map_sections_to_segments): Force new segment 1455*75fd0b74Schristos for sections with overlapping LMAs. 1456*75fd0b74Schristos (assign_file_positions_for_load_sections): Catch overlap for 1457*75fd0b74Schristos sections that wrap around the address space. Replace a 1458*75fd0b74Schristos warning that duplicates ld's --check-sections error with a 1459*75fd0b74Schristos warning that lma has been adjusted for overlapping sections. 1460*75fd0b74Schristos 1461*75fd0b74Schristos2010-07-14 Cary Coutant <ccoutant@google.com> 1462*75fd0b74Schristos 1463*75fd0b74Schristos PR ld/11817 1464*75fd0b74Schristos * dwarf2.c (read_section): Revert patch for compressed debug sections. 1465*75fd0b74Schristos (find_line): Likewise. 1466*75fd0b74Schristos (read_and_uncompress_section): Remove. 1467*75fd0b74Schristos 1468*75fd0b74Schristos2010-07-13 H.J. Lu <hongjiu.lu@intel.com> 1469*75fd0b74Schristos 1470*75fd0b74Schristos PR ld/11812 1471*75fd0b74Schristos * elf32-i386.c (elf_i386_size_dynamic_sections): Don't 1472*75fd0b74Schristos allocate .got.plt section if there are no GOT nor PLT 1473*75fd0b74Schristos entries. 1474*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise. 1475*75fd0b74Schristos 1476*75fd0b74Schristos2010-07-13 H.J. Lu <hongjiu.lu@intel.com> 1477*75fd0b74Schristos 1478*75fd0b74Schristos PR ld/11791 1479*75fd0b74Schristos * elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Support 1480*75fd0b74Schristos garbage collection against STT_GNU_IFUNC symbols. 1481*75fd0b74Schristos 1482*75fd0b74Schristos * elf32-i386.c (elf_i386_get_local_sym_hash): Don't set 1483*75fd0b74Schristos elf.plt.offset/elf.got.offset to -1. 1484*75fd0b74Schristos (elf_i386_tls_transition): Skip TLS transition for functions. 1485*75fd0b74Schristos (elf_i386_gc_sweep_hook): Support STT_GNU_IFUNC symbols. 1486*75fd0b74Schristos 1487*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_get_local_sym_hash): Don't set 1488*75fd0b74Schristos elf.plt.offset/elf.got.offset to -1. 1489*75fd0b74Schristos (elf64_x86_64_tls_transition): Skip TLS transition for functions. 1490*75fd0b74Schristos (elf64_x86_64_gc_sweep_hook): Support STT_GNU_IFUNC symbols. 1491*75fd0b74Schristos 1492*75fd0b74Schristos2010-07-12 H.J. Lu <hongjiu.lu@intel.com> 1493*75fd0b74Schristos 1494*75fd0b74Schristos * elf32-i386.c (elf_i386_check_relocs): Re-indent. 1495*75fd0b74Schristos (elf_i386_relocate_section): Likewise. 1496*75fd0b74Schristos 1497*75fd0b74Schristos2010-07-06 H.J. Lu <hongjiu.lu@intel.com> 1498*75fd0b74Schristos 1499*75fd0b74Schristos * dwarf2.c (add_line_info): Initialize prev_line. 1500*75fd0b74Schristos 1501*75fd0b74Schristos2010-07-06 Alan Modra <amodra@gmail.com> 1502*75fd0b74Schristos 1503*75fd0b74Schristos * elf32-ppc.c (ppc_elf_relax_section): Insert branch around 1504*75fd0b74Schristos trampolines only for .init and .fini sections. 1505*75fd0b74Schristos 1506*75fd0b74Schristos2010-07-05 Alan Modra <amodra@gmail.com> 1507*75fd0b74Schristos 1508*75fd0b74Schristos * elf32-ppc.c: Formatting. 1509*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): Don't make plt_entry var static. 1510*75fd0b74Schristos 1511*75fd0b74Schristos2010-07-03 Cary Coutant <ccoutant@google.com> 1512*75fd0b74Schristos 1513*75fd0b74Schristos * compress.c (bfd_uncompress_section_contents): Add ATTRIBUTE_UNUSED. 1514*75fd0b74Schristos * dwarf2.c (read_and_uncompress_section): New function. 1515*75fd0b74Schristos (read_section): Call it. 1516*75fd0b74Schristos (find_line): Likewise. 1517*75fd0b74Schristos 1518*75fd0b74Schristos2010-07-01 Alan Modra <amodra@gmail.com> 1519*75fd0b74Schristos 1520*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_toc): Use SYMBOL_CALLS_LOCAL rather 1521*75fd0b74Schristos than SYMBOL_REFERENCES_LOCAL. 1522*75fd0b74Schristos (ppc64_elf_relocate_section): Likewise. 1523*75fd0b74Schristos 1524*75fd0b74Schristos2010-07-01 Alan Modra <amodra@gmail.com> 1525*75fd0b74Schristos 1526*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_toc): Keep toc entries for ifuncs. 1527*75fd0b74Schristos 1528*75fd0b74Schristos2010-06-29 Alan Modra <amodra@gmail.com> 1529*75fd0b74Schristos 1530*75fd0b74Schristos * cpu-maxq.c: Delete file. 1531*75fd0b74Schristos * coff-maxq.c: Delete file. 1532*75fd0b74Schristos * Makefile.am: Remove references to maxq. 1533*75fd0b74Schristos * archures.c: Likewise. 1534*75fd0b74Schristos * coffcode.h: Likewise. 1535*75fd0b74Schristos * configure.in: Likewise. 1536*75fd0b74Schristos * targets.c: Likewise. 1537*75fd0b74Schristos * config.bfd: Move maxq from obsolete to removed. 1538*75fd0b74Schristos * Makefile.in: Regenerate. 1539*75fd0b74Schristos * bfd-in2.h: Regenerate. 1540*75fd0b74Schristos * configure: Regenerate. 1541*75fd0b74Schristos * libbfd.h: Regenerate. 1542*75fd0b74Schristos * po/SRC-POTFILES.in: Regenerate. 1543*75fd0b74Schristos 1544*75fd0b74Schristos2010-06-28 Alan Modra <amodra@gmail.com> 1545*75fd0b74Schristos 1546*75fd0b74Schristos * compress.c (bfd_uncompress_section_contents): Use ATTRIBUTE_UNUSED 1547*75fd0b74Schristos to silence gcc warning. 1548*75fd0b74Schristos 1549*75fd0b74Schristos2010-06-27 Alan Modra <amodra@gmail.com> 1550*75fd0b74Schristos 1551*75fd0b74Schristos * elf64-ppc.c (get_tls_mask): Don't segfault on NULL elf_section_data. 1552*75fd0b74Schristos (group_sections): Likewise. 1553*75fd0b74Schristos 1554*75fd0b74Schristos2010-06-27 Alan Modra <amodra@gmail.com> 1555*75fd0b74Schristos 1556*75fd0b74Schristos * bout.c (aligncode): Delete set but unused variables. 1557*75fd0b74Schristos * coff-mcore.c (coff_mcore_relocate_section): Likewise. 1558*75fd0b74Schristos * coff-ppc.c (ppc_record_toc_entry): Likewise. 1559*75fd0b74Schristos (coff_ppc_relocate_section): Likewise. 1560*75fd0b74Schristos * coff-rs6000.c (xcoff_complain_overflow_bitfield_func): Likewise. 1561*75fd0b74Schristos * elf-m10200.c (mn10200_elf_relax_delete_bytes): Likewise. 1562*75fd0b74Schristos * elf-m10300.c (mn10300_elf_final_link_relocate): Likewise. 1563*75fd0b74Schristos (mn10300_elf_relax_section): Likewise. 1564*75fd0b74Schristos * elf32-arm.c (arm_build_one_stub, arm_size_one_stub): Likewise. 1565*75fd0b74Schristos (record_vfp11_erratum_veneer): Likewise. 1566*75fd0b74Schristos (bfd_elf32_arm_vfp11_erratum_scan): Likewise. 1567*75fd0b74Schristos (elf32_arm_final_link_relocate): Likewise. 1568*75fd0b74Schristos (elf32_arm_check_relocs, arm_map_one_stub): Likewise. 1569*75fd0b74Schristos * elf32-avr.c (elf32_avr_relax_delete_bytes): Likewise. 1570*75fd0b74Schristos (elf32_avr_relax_section): Likewise. 1571*75fd0b74Schristos (avr_mark_stub_not_to_be_necessary): Likewise. 1572*75fd0b74Schristos * elf32-bfin.c (_bfin_create_got_section): Likewise. 1573*75fd0b74Schristos * elf32-cr16.c (cr16_elf_final_link_relocate): Likewise. 1574*75fd0b74Schristos (elf32_cr16_relax_delete_bytes): Likewise. 1575*75fd0b74Schristos * elf32-cr16c.c (cr16c_elf_final_link_relocate): Likewise. 1576*75fd0b74Schristos * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise. 1577*75fd0b74Schristos * elf32-crx.c (elf32_crx_relax_delete_bytes): Likewise. 1578*75fd0b74Schristos * elf32-h8300.c (elf32_h8_relax_section): Likewise. 1579*75fd0b74Schristos (elf32_h8_relax_delete_bytes): Likewise. 1580*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_check_relocs): Likewise. 1581*75fd0b74Schristos * elf32-i370.c (i370_elf_check_relocs): Likewise. 1582*75fd0b74Schristos (elf_relocate_section): Likewise. 1583*75fd0b74Schristos * elf32-ip2k.c (adjust_all_relocations): Likewise. 1584*75fd0b74Schristos (ip2k_elf_relax_section): Likewise. 1585*75fd0b74Schristos * elf32-lm32.c (lm32_elf_relocate_section): Likewise. 1586*75fd0b74Schristos (lm32_elf_check_relocs): Likewise. 1587*75fd0b74Schristos (lm32_elf_finish_dynamic_sections): Likewise. 1588*75fd0b74Schristos (lm32_elf_finish_dynamic_symbol): Likewise. 1589*75fd0b74Schristos * elf32-m32c.c (m32c_offset_for_reloc): Likewise. 1590*75fd0b74Schristos (m32c_elf_relax_delete_bytes): Likewise. 1591*75fd0b74Schristos * elf32-m32r.c (m32r_elf_finish_dynamic_symbol): Likewise. 1592*75fd0b74Schristos (m32r_elf_finish_dynamic_sections): Likewise. 1593*75fd0b74Schristos (m32r_elf_check_relocs, m32r_elf_fake_sections): Likewise. 1594*75fd0b74Schristos * elf32-m68hc11.c (m68hc11_elf_relax_section): Likewise. 1595*75fd0b74Schristos * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise. 1596*75fd0b74Schristos * elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise. 1597*75fd0b74Schristos * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise. 1598*75fd0b74Schristos (microblaze_elf_check_relocs): Likewise. 1599*75fd0b74Schristos (microblaze_elf_finish_dynamic_symbol): Likewise. 1600*75fd0b74Schristos * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise. 1601*75fd0b74Schristos * elf32-ppc.c (ppc_elf_tls_optimize): Likewise. 1602*75fd0b74Schristos * elf32-rx.c (rx_elf_relocate_section): Likewise. 1603*75fd0b74Schristos (elf32_rx_relax_delete_bytes, rx_offset_for_reloc): Likewise. 1604*75fd0b74Schristos (elf32_rx_relax_section): Likewise. 1605*75fd0b74Schristos * elf32-score.c (score_elf_got_offset_from_index): Likewise. 1606*75fd0b74Schristos (score_elf_final_link_relocate): Likewise. 1607*75fd0b74Schristos (s3_bfd_score_elf_relocate_section): Likewise. 1608*75fd0b74Schristos * elf32-score7.c (score_elf_got_offset_from_index): Likewise. 1609*75fd0b74Schristos (s7_bfd_score_elf_relocate_section): Likewise. 1610*75fd0b74Schristos * elf32-sh.c (sh_elf_check_relocs): Likewise. 1611*75fd0b74Schristos * elf32-spu.c (spu_elf_relocate_section): Likewise. 1612*75fd0b74Schristos * elf32-v850.c (v850_elf_check_relocs): Likewise. 1613*75fd0b74Schristos (find_remembered_hi16s_reloc): Likewise. 1614*75fd0b74Schristos * elf32-vax.c (elf32_vax_merge_private_bfd_data): Likewise. 1615*75fd0b74Schristos (elf_vax_relocate_section): Likewise. 1616*75fd0b74Schristos * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise. 1617*75fd0b74Schristos * elf32-xtensa.c (xlate_offset_with_removed_text): Likewise. 1618*75fd0b74Schristos (move_literal): Likewise. 1619*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise. 1620*75fd0b74Schristos (elf64_hppa_check_relocs): Likewise. 1621*75fd0b74Schristos (elf64_hppa_finish_dynamic_symbol): Likewise. 1622*75fd0b74Schristos (elf64_hppa_relocate_section): Likewise. 1623*75fd0b74Schristos * elf64-mmix.c (mmix_elf_reloc, mmix_elf_relax_section): Likewise. 1624*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. 1625*75fd0b74Schristos (ppc64_elf_edit_opd, ppc64_elf_edit_toc): Likewise. 1626*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise. 1627*75fd0b74Schristos (elfNN_vms_section_from_shdr): Likewise. 1628*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. 1629*75fd0b74Schristos (_bfd_sparc_elf_relocate_section): Likewise. 1630*75fd0b74Schristos * hp300hpux.c (slurp_symbol_table): Likewise. 1631*75fd0b74Schristos * i386lynx.c (swap_std_reloc_out, swap_std_reloc_in): Likewise. 1632*75fd0b74Schristos * mach-o.c (bfd_mach_o_write_thread): Likewise. 1633*75fd0b74Schristos * mmo.c (mmo_scan, mmo_write_symbols_and_terminator): Likewise. 1634*75fd0b74Schristos * nlm32-sparc.c (nlm_sparc_read_reloc): Likewise. 1635*75fd0b74Schristos * pdp11.c (pdp11_aout_link_input_section): Likewise. 1636*75fd0b74Schristos (aout_link_input_section, aout_link_input_bfd): Likewise. 1637*75fd0b74Schristos * pe-mips.c (mips_swap_reloc_out): Likewise. 1638*75fd0b74Schristos (coff_pe_mips_relocate_section): Likewise. 1639*75fd0b74Schristos * som.c (som_bfd_ar_write_symbol_stuff): Likewise. 1640*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_egsd): Likewise. 1641*75fd0b74Schristos * xsym.c (bfd_sym_fetch_type_information_table_ent): Likewise. 1642*75fd0b74Schristos 1643*75fd0b74Schristos * coff-i860.c (i860_reloc_processing): Avoid set but unused warning. 1644*75fd0b74Schristos * coffcode.h (coff_compute_section_file_positions): Likewise. 1645*75fd0b74Schristos (coff_slurp_reloc_table): Likewise. 1646*75fd0b74Schristos * cpu-arm.c (arm_check_note): Likewise. 1647*75fd0b74Schristos * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): Likewise. 1648*75fd0b74Schristos * elf32-avr.c (elf32_avr_relocate_section): Likewise. 1649*75fd0b74Schristos * elf32-bfin.c (elf32_bfin_merge_private_bfd_data): Likewise. 1650*75fd0b74Schristos * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. 1651*75fd0b74Schristos * elf32-moxie.c (moxie_elf_relocate_section): Likewise. 1652*75fd0b74Schristos * elf32-msp430.c (elf32_msp430_relocate_section): Likewise. 1653*75fd0b74Schristos * elf32-sh64.c (_bfd_sh_align_load_span): Likewise. 1654*75fd0b74Schristos * ieee.c (parse_expression): Likewise. 1655*75fd0b74Schristos (ieee_slurp_external_symbols, drop_int): Likewise. 1656*75fd0b74Schristos * peXXigen.c (pe_print_pdata): Likewise. 1657*75fd0b74Schristos * versados.c (process_esd): Likewise. 1658*75fd0b74Schristos 1659*75fd0b74Schristos2010-06-25 Tristan Gingold <gingold@adacore.com> 1660*75fd0b74Schristos 1661*75fd0b74Schristos * vms-alpha.c (_bfd_vms_write_egsd): Check absolute section with 1662*75fd0b74Schristos its flags. Create an absolute section if needed. 1663*75fd0b74Schristos 1664*75fd0b74Schristos2010-06-25 Tristan Gingold <gingold@adacore.com> 1665*75fd0b74Schristos 1666*75fd0b74Schristos * vms-alpha.c (_bfd_vms_write_egsd): Set target_index field of 1667*75fd0b74Schristos sections. Mark .vmsdebug section as SEC_DEBUGGING. Do not create 1668*75fd0b74Schristos dummy psect anymore. Adjust. 1669*75fd0b74Schristos (_bfd_vms_write_eeom): Adjust (use target_index instead of index) 1670*75fd0b74Schristos (_bfd_vms_write_etir): Ditto. 1671*75fd0b74Schristos (start_etir_or_etbt_record): Test for SEC_DEBUGGING instead of 1672*75fd0b74Schristos section name. Adjust. 1673*75fd0b74Schristos 1674*75fd0b74Schristos2010-06-25 Tristan Gingold <gingold@adacore.com> 1675*75fd0b74Schristos 1676*75fd0b74Schristos * vms-alpha.c (alpha_vms_write_exec): Set linktime field. 1677*75fd0b74Schristos 1678*75fd0b74Schristos2010-06-25 Alan Modra <amodra@gmail.com> 1679*75fd0b74Schristos 1680*75fd0b74Schristos * elf64-ppc.c (toc_skip_enum): Define. 1681*75fd0b74Schristos (ppc64_elf_edit_toc): Use two low bits of skip array as markers. 1682*75fd0b74Schristos Optimize largetoc sequences. 1683*75fd0b74Schristos (adjust_toc_syms): Update for skip array change. 1684*75fd0b74Schristos (ppc64_elf_relocate_section): Handle R_PPC64_LO_DS_OPT. 1685*75fd0b74Schristos 1686*75fd0b74Schristos2010-06-25 Alan Modra <amodra@gmail.com> 1687*75fd0b74Schristos 1688*75fd0b74Schristos * elf64-ppc.c (is_static_defined): New function. 1689*75fd0b74Schristos (get_tls_mask, ppc_type_of_stub): Use it here. 1690*75fd0b74Schristos (ppc64_elf_edit_opd): Ensure we only attempt to edit ppc64 input. 1691*75fd0b74Schristos (ppc64_elf_tls_setup): Typo fix. 1692*75fd0b74Schristos (adjust_toc_syms): Correctly handle symbols defined past the end 1693*75fd0b74Schristos of the toc. Move syms on removed entries to next entry rather 1694*75fd0b74Schristos than to start of toc. 1695*75fd0b74Schristos (ppc64_elf_edit_toc): Likewise. Ensure we only attempt to 1696*75fd0b74Schristos edit ppc64 input. Allocate one extra word in skip array. 1697*75fd0b74Schristos Honour info->keep_memory when reading relocs if we can. 1698*75fd0b74Schristos Adjust toc relocs after adjusting symbols. 1699*75fd0b74Schristos 1700*75fd0b74Schristos2010-06-23 Nathan Sidwell <nathan@codesourcery.com> 1701*75fd0b74Schristos 1702*75fd0b74Schristos * archive64.c (bfd_elf64_archive_write_armap): Fix buffer overrun 1703*75fd0b74Schristos when scaning map. 1704*75fd0b74Schristos 1705*75fd0b74Schristos2010-06-17 Tristan Gingold <gingold@adacore.com> 1706*75fd0b74Schristos 1707*75fd0b74Schristos * Makefile.am (BFD32_BACKENDS_CFILES): Move vms-alpha.c to ... 1708*75fd0b74Schristos (BFD64_BACKENDS_CFILES): ... here. 1709*75fd0b74Schristos (BFD32_BACKENDS): Move vms-alpha.lo to ... 1710*75fd0b74Schristos (BFD64_BACKENDS): ... here. 1711*75fd0b74Schristos * Makefile.in: Regenerate. 1712*75fd0b74Schristos 1713*75fd0b74Schristos2010-06-15 Joseph Myers <joseph@codesourcery.com> 1714*75fd0b74Schristos 1715*75fd0b74Schristos * elf-bfd.h (LEAST_KNOWN_OBJ_ATTRIBUTE): Decrease to 2. 1716*75fd0b74Schristos * elf32-tic6x.c (elf32_tic6x_obj_attrs_arg_type, 1717*75fd0b74Schristos elf32_tic6x_merge_arch_attributes, elf32_tic6x_merge_attributes, 1718*75fd0b74Schristos elf32_tic6x_merge_private_bfd_data): New. 1719*75fd0b74Schristos (bfd_elf32_bfd_merge_private_bfd_data, 1720*75fd0b74Schristos elf_backend_obj_attrs_arg_type, elf_backend_obj_attrs_section, 1721*75fd0b74Schristos elf_backend_obj_attrs_section_type, elf_backend_obj_attrs_vendor): 1722*75fd0b74Schristos Define. 1723*75fd0b74Schristos * elf32-tic6x.h (elf32_tic6x_merge_arch_attributes): Declare. 1724*75fd0b74Schristos 1725*75fd0b74Schristos2010-06-15 Joseph Myers <joseph@codesourcery.com> 1726*75fd0b74Schristos 1727*75fd0b74Schristos * elf-bfd.h (LEAST_KNOWN_OBJ_ATTRIBUTE): Define. 1728*75fd0b74Schristos (struct elf_backend_data): Update comment on obj_attrs_order. 1729*75fd0b74Schristos * elf-attrs.c (vendor_obj_attr_size, vendor_set_obj_attr_contents, 1730*75fd0b74Schristos _bfd_elf_copy_obj_attributes): Use LEAST_KNOWN_OBJ_ATTRIBUTE 1731*75fd0b74Schristos instead of hardcoded 4. 1732*75fd0b74Schristos * elf32-arm.c (elf32_arm_obj_attrs_order): Use 1733*75fd0b74Schristos LEAST_KNOWN_OBJ_ATTRIBUTE and LEAST_KNOWN_OBJ_ATTRIBUTE + 1 1734*75fd0b74Schristos instead of hardcoded 4 and 5. 1735*75fd0b74Schristos (elf32_arm_merge_eabi_attributes): Use LEAST_KNOWN_OBJ_ATTRIBUTE 1736*75fd0b74Schristos instead of hardcoded 4. 1737*75fd0b74Schristos 1738*75fd0b74Schristos2010-06-14 Kevin Buettner <kevinb@redhat.com> 1739*75fd0b74Schristos 1740*75fd0b74Schristos * elf32-h8300.c (elf_symbol_leading_char): Define. 1741*75fd0b74Schristos 1742*75fd0b74Schristos2010-06-11 Jan Kratochvil <jan.kratochvil@redhat.com> 1743*75fd0b74Schristos 1744*75fd0b74Schristos * vms-alpha.c (_bfd_vms_write_egsd): Make sname const. 1745*75fd0b74Schristos 1746*75fd0b74Schristos2010-06-11 Tristan Gingold <gingold@adacore.com> 1747*75fd0b74Schristos 1748*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_egsd): Always set vma of absolute 1749*75fd0b74Schristos sections to 0. 1750*75fd0b74Schristos 1751*75fd0b74Schristos2010-06-11 Tristan Gingold <gingold@adacore.com> 1752*75fd0b74Schristos 1753*75fd0b74Schristos * vms-alpha.c (evax_bfd_print_etir): Handle ETIR__C_STO_GBL_LW. 1754*75fd0b74Schristos 1755*75fd0b74Schristos2010-06-11 Tristan Gingold <gingold@adacore.com> 1756*75fd0b74Schristos 1757*75fd0b74Schristos * vms-misc.c (_bfd_vms_output_counted): Make VALUE argument const. 1758*75fd0b74Schristos Adjust cast. 1759*75fd0b74Schristos (_bfd_vms_output_dump): Make DATA argument const, adjust cast. 1760*75fd0b74Schristos * vms.h (_bfd_vms_output_counted, _bfd_vms_output_dump): Adjust. 1761*75fd0b74Schristos * vms-alpha.c (evax_section_flags): Make it const. 1762*75fd0b74Schristos (vms_secflag_by_name): Remove unused ABFD argument. 1763*75fd0b74Schristos Make SECTION_FLAGS and NAME arguments const. Clarify comment. 1764*75fd0b74Schristos (vms_esecflag_by_name): Make SECTION_FLAGS and NAME arguments const. 1765*75fd0b74Schristos (_bfd_vms_slurp_egsd): Adjust call to vms_secflag_by_name. 1766*75fd0b74Schristos (_bfd_vms_write_egsd): Remove useless cast. 1767*75fd0b74Schristos 1768*75fd0b74Schristos2010-06-10 Tristan Gingold <gingold@adacore.com> 1769*75fd0b74Schristos 1770*75fd0b74Schristos * config.bfd: Remove #if/#endif so that som can be compiled on any 1771*75fd0b74Schristos host. 1772*75fd0b74Schristos * targets.c (_bfd_target_vector): Remove #if/#endif so that som 1773*75fd0b74Schristos can be used on any host. 1774*75fd0b74Schristos 1775*75fd0b74Schristos2010-06-10 Tristan Gingold <gingold@adacore.com> 1776*75fd0b74Schristos 1777*75fd0b74Schristos * som.c: Can now be compiled on any host. 1778*75fd0b74Schristos Include bfd headers instead of system one. 1779*75fd0b74Schristos (som_compute_checksum): Parameter is now a pointer to a 1780*75fd0b74Schristos som_external_header structure. Adjust. 1781*75fd0b74Schristos (struct section_to_type): Field section is now const. 1782*75fd0b74Schristos (R_DLT_REL, R_AUX_UNWIND, R_SEC_STMT): Removed conditional 1783*75fd0b74Schristos definition. 1784*75fd0b74Schristos (R_LONG_PCREL_MODE, R_N0SEL, R_N1SEL, R_LINETAB): Ditto. 1785*75fd0b74Schristos (R_LINETAB_ESC, R_LTP_OVERRIDE, R_COMMENT): Ditto. 1786*75fd0b74Schristos (som_swap_clock_in, som_swap_clock_out): New functions. 1787*75fd0b74Schristos (som_swap_header_in, som_swap_header_out): Likewise. 1788*75fd0b74Schristos (som_swap_space_dictionary_in): Likewise. 1789*75fd0b74Schristos (som_swap_space_dictionary_out): Likewise. 1790*75fd0b74Schristos (som_swap_subspace_dictionary_in): Likewise. 1791*75fd0b74Schristos (som_swap_subspace_dictionary_record_out): Likewise. 1792*75fd0b74Schristos (som_swap_aux_id_in, som_swap_aux_id_out): Likewise. 1793*75fd0b74Schristos (som_swap_string_auxhdr_out): Likewise. 1794*75fd0b74Schristos (som_swap_compilation_unit_out): Likewise. 1795*75fd0b74Schristos (som_swap_exec_auxhdr_in): Likewise. 1796*75fd0b74Schristos (som_swap_exec_auxhdr_out): Likewise. 1797*75fd0b74Schristos (som_swap_lst_header_in): Likewise. 1798*75fd0b74Schristos (som_object_setup): Adjust parameter type using bfd types. 1799*75fd0b74Schristos (setup_sections): Likewise. Ditto for object file types. 1800*75fd0b74Schristos Use intermediate variables for external representation and use the 1801*75fd0b74Schristos swap functions to convert. 1802*75fd0b74Schristos (som_object_p): Ditto. Remove #ifdef/#endif on always defined 1803*75fd0b74Schristos macros. 1804*75fd0b74Schristos (som_prep_headers): Likewise. 1805*75fd0b74Schristos (som_write_symbol_strings): Likewise. 1806*75fd0b74Schristos (som_begin_writing): Likewise. 1807*75fd0b74Schristos (som_finish_writing): Likewise. 1808*75fd0b74Schristos (som_build_and_write_symbol_table): Likewise. 1809*75fd0b74Schristos (bfd_section_from_som_symbol): Likewise. 1810*75fd0b74Schristos (som_slurp_symbol_table): Likewise. 1811*75fd0b74Schristos (som_bfd_print_private_bfd_data): Likewise. 1812*75fd0b74Schristos (bfd_som_attach_aux_hdr): Likewise. Clear the padding. 1813*75fd0b74Schristos (bfd_som_attach_compilation_unit): Likewise. 1814*75fd0b74Schristos (som_bfd_count_ar_symbols): Likewise. 1815*75fd0b74Schristos (som_bfd_fill_in_ar_symbols): Likewise. 1816*75fd0b74Schristos (som_slurp_armap): Likewise. 1817*75fd0b74Schristos (som_bfd_ar_write_symbol_stuff): Likewise. 1818*75fd0b74Schristos (som_write_armap): Likewise. Use _bfd_ar_spacepad instead of 1819*75fd0b74Schristos sprintf to write header fields. 1820*75fd0b74Schristos * som.h: Include bfd headers instead of system one. 1821*75fd0b74Schristos (FILE_HDR_SIZE, AUX_HDR_SIZE): Removed. 1822*75fd0b74Schristos (struct somdata): Use bfd structures instead of system ones. 1823*75fd0b74Schristos (struct som_section_data_struct): Likewise. 1824*75fd0b74Schristos (struct som_subspace_dictionary_record): Removed (now in 1825*75fd0b74Schristos include/som/internal.h) 1826*75fd0b74Schristos 1827*75fd0b74Schristos2010-06-10 Tristan Gingold <gingold@adacore.com> 1828*75fd0b74Schristos 1829*75fd0b74Schristos * targets.c (bfd_target_list): Remove hp/ux compiler work-around 1830*75fd0b74Schristos as bfd requires an ANSI-C compiler. 1831*75fd0b74Schristos 1832*75fd0b74Schristos2010-06-09 Tristan Gingold <gingold@adacore.com> 1833*75fd0b74Schristos 1834*75fd0b74Schristos * bfdio.c (bfd_bread): Fix the code to prevent reading past the 1835*75fd0b74Schristos end of archive members. 1836*75fd0b74Schristos 1837*75fd0b74Schristos2010-06-08 Tristan Gingold <gingold@adacore.com> 1838*75fd0b74Schristos 1839*75fd0b74Schristos * som.c (som_bfd_free_cached_info): Do not free relocations as 1840*75fd0b74Schristos they were allocated with bfd_zalloc. 1841*75fd0b74Schristos 1842*75fd0b74Schristos2010-06-08 Tristan Gingold <gingold@adacore.com> 1843*75fd0b74Schristos 1844*75fd0b74Schristos * vms-lib.c (_bfd_vms_lib_write_archive_contents): Increment 1845*75fd0b74Schristos for the first block. 1846*75fd0b74Schristos 1847*75fd0b74Schristos2010-06-08 Tristan Gingold <gingold@adacore.com> 1848*75fd0b74Schristos 1849*75fd0b74Schristos * vms-lib.c (_bfd_vms_lib_ia64_mkarchive): New function. 1850*75fd0b74Schristos * libbfd-in.h (_bfd_vms_lib_ia64_mkarchive): Declare. 1851*75fd0b74Schristos * libbfd.h: Regenerate. 1852*75fd0b74Schristos * elfxx-ia64.c (bfd_elfNN_write_archive_contents): Redefine for VMS. 1853*75fd0b74Schristos (bfd_elfNN_mkarchive): Ditto. 1854*75fd0b74Schristos 1855*75fd0b74Schristos2010-06-02 Tristan Gingold <gingold@adacore.com> 1856*75fd0b74Schristos 1857*75fd0b74Schristos * vms-alpha.c (alpha_vms_bfd_final_link): Fix 64bit constant. 1858*75fd0b74Schristos 1859*75fd0b74Schristos2010-06-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 1860*75fd0b74Schristos 1861*75fd0b74Schristos * configure: Regenerate. 1862*75fd0b74Schristos 1863*75fd0b74Schristos2010-06-01 Tristan Gingold <gingold@adacore.com> 1864*75fd0b74Schristos 1865*75fd0b74Schristos * vms-alpha.c (struct vms_private_data_struct): Add 1866*75fd0b74Schristos transfer_address field. Remove unused dst_info field. 1867*75fd0b74Schristos (alpha_vms_write_exec): Use transfer_address. 1868*75fd0b74Schristos (_bfd_vms_write_egsd): Add a comment about LIB$INITIALIZE. 1869*75fd0b74Schristos (alpha_vms_bfd_final_link): Set transfer_address. 1870*75fd0b74Schristos 1871*75fd0b74Schristos2010-05-31 Tristan Gingold <gingold@adacore.com> 1872*75fd0b74Schristos 1873*75fd0b74Schristos * vms-lib.c (credat_lo, credat_hi): New fields. 1874*75fd0b74Schristos (vms_read_block): Adjust comments. 1875*75fd0b74Schristos (vms_write_block): New function. 1876*75fd0b74Schristos (_bfd_vms_lib_archive_p): Decode majorid once. Replace some 1877*75fd0b74Schristos hard-coded values with constants. Set credat_lo and credat_hi. 1878*75fd0b74Schristos (_bfd_vms_lib_mkarchive): Add argument kind. 1879*75fd0b74Schristos Set ver, mhd_size and type according to kind. 1880*75fd0b74Schristos (_bfd_vms_lib_alpha_mkarchive): New function. 1881*75fd0b74Schristos (struct lib_index): Renamed from struct vms_index 1882*75fd0b74Schristos (lib_index_cmp): Renamed from vms_index_cmp. Adjusted. 1883*75fd0b74Schristos (get_idxlen): Type of idx argument adjusted. Add is_elfidx 1884*75fd0b74Schristos argument and handle it. 1885*75fd0b74Schristos (vms_write_index): Adjust argument idx. Handle elf indexes. 1886*75fd0b74Schristos (_bfd_vms_lib_build_map): Adjust type of arguments modules and res. 1887*75fd0b74Schristos (_bfd_vms_lib_write_archive_contents): Add is_elfidx variable and 1888*75fd0b74Schristos use it. Handle elf indexes. Set credat. 1889*75fd0b74Schristos * libbfd-in.h (_bfd_vms_lib_mkarchive): Renamed to ... 1890*75fd0b74Schristos (_bfd_vms_lib_alpha_mkarchive): ... this. 1891*75fd0b74Schristos * libbfd.h: Regenerated. 1892*75fd0b74Schristos * vms-alpha.c (vms_alpha_vec): Adjust after previous renaming. 1893*75fd0b74Schristos 1894*75fd0b74Schristos2010-05-28 Sterling Augustine <sterling@tensilica.com> 1895*75fd0b74Schristos 1896*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_relocate_section): Add a large amount 1897*75fd0b74Schristos of code to change the bits in the instructions to match the changes 1898*75fd0b74Schristos in the relocations. Declare dest_addr and sym_sec to help. 1899*75fd0b74Schristos 1900*75fd0b74Schristos2010-05-28 Jan Kratochvil <jan.kratochvil@redhat.com> 1901*75fd0b74Schristos 1902*75fd0b74Schristos Workaround GCC PR middle-end/4210. 1903*75fd0b74Schristos * vms-misc.c (vms_time_t_to_vms_time): Use ternary operator for val[2] 1904*75fd0b74Schristos and val[3]. 1905*75fd0b74Schristos 1906*75fd0b74Schristos2010-05-27 Tristan Gingold <gingold@adacore.com> 1907*75fd0b74Schristos 1908*75fd0b74Schristos * vms-misc.c: Define __NEW_STARLET. Remove trailing spaces. 1909*75fd0b74Schristos (VMS_TIME_FACTOR, VMS_TIME_OFFSET): New macros. 1910*75fd0b74Schristos (vms_time_to_time_t): Use them instead of local const. 1911*75fd0b74Schristos (vms_time_t_to_vms_time): New function. 1912*75fd0b74Schristos (vms_get_time): Likewise. 1913*75fd0b74Schristos (vms_raw_get_time): Likewise. 1914*75fd0b74Schristos * vms.h (vms_time_t_to_vms_time): New declaration. 1915*75fd0b74Schristos (vms_get_time): Likewise. 1916*75fd0b74Schristos (vms_raw_get_time): Likewise. 1917*75fd0b74Schristos 1918*75fd0b74Schristos2010-05-26 Tristan Gingold <gingold@adacore.com> 1919*75fd0b74Schristos 1920*75fd0b74Schristos * vms-alpha.c: Update comments. 1921*75fd0b74Schristos (alpha_vms_write_exec): Set lnkflags. Write the GST. 1922*75fd0b74Schristos (alpha_vms_link_output_symbol): New function. 1923*75fd0b74Schristos (alpha_vms_bfd_final_link): Generate the VMS symbol table. 1924*75fd0b74Schristos Set dst_section private field. 1925*75fd0b74Schristos (alpha_vms_bfd_final_link): Remove code that set dst_section. 1926*75fd0b74Schristos 1927*75fd0b74Schristos2010-05-26 Tristan Gingold <gingold@adacore.com> 1928*75fd0b74Schristos 1929*75fd0b74Schristos * bfdio.c: Declare and define _bfd_memory_iovec. 1930*75fd0b74Schristos (bfd_bread): Move code for BFD_IN_MEMORY... 1931*75fd0b74Schristos (bfd_bwrite): ... Ditto ... 1932*75fd0b74Schristos (bfd_tell): ... Ditto ... 1933*75fd0b74Schristos (bfd_flush): ... Ditto ... 1934*75fd0b74Schristos (bfd_stat): ... Ditto ... 1935*75fd0b74Schristos (bfd_seek): ... Ditto ... 1936*75fd0b74Schristos (bfd_get_size): ... Ditto ... 1937*75fd0b74Schristos (bfd_mmap): ... Ditto ... 1938*75fd0b74Schristos (memory_bread): ... to these new functions. 1939*75fd0b74Schristos (memory_bwrite): Ditto. 1940*75fd0b74Schristos (memory_btell): Ditto. 1941*75fd0b74Schristos (memory_bseek): Ditto. 1942*75fd0b74Schristos (memory_bflush): Ditto. 1943*75fd0b74Schristos (memory_bstat): Ditto. 1944*75fd0b74Schristos (memory_bmmap): Ditto. 1945*75fd0b74Schristos (memory_bclose): New function. 1946*75fd0b74Schristos * peicode.h (pe_ILF_build_a_bfd): Use BFD_IN_MEMORY. 1947*75fd0b74Schristos * xcofflink.c (bfd_xcoff_link_generate_rtinit): Ditto. 1948*75fd0b74Schristos * opncls.c (bfd_close): Do not handle BFD_IN_MEMORY case. 1949*75fd0b74Schristos (bfd_make_writable): Use _bfd_memory_iovec. 1950*75fd0b74Schristos * elfcode.h (bfd_from_remote_memory): Use _bfd_memory_iovec. 1951*75fd0b74Schristos * coff-alpha.c (alpha_ecoff_get_elt_at_filepos): Use 1952*75fd0b74Schristos _bfd_memory_iovec. 1953*75fd0b74Schristos (alpha_ecoff_openr_next_archived_file): Use proxy_origin 1954*75fd0b74Schristos instead of origin. 1955*75fd0b74Schristos * libbfd.h: Regenerate. 1956*75fd0b74Schristos 1957*75fd0b74Schristos2010-05-25 Daniel Jacobowitz <dan@codesourcery.com> 1958*75fd0b74Schristos Joseph Myers <joseph@codesourcery.com> 1959*75fd0b74Schristos Andrew Stubbs <ams@codesourcery.com> 1960*75fd0b74Schristos 1961*75fd0b74Schristos * config.bfd (sh-*-uclinux* | sh[12]-*-uclinux*): Add 1962*75fd0b74Schristos bfd_elf32_shl_vec, and FDPIC vectors to targ_selvecs. 1963*75fd0b74Schristos * configure.in: Handle FDPIC vectors. 1964*75fd0b74Schristos * elf32-sh-relocs.h: Add FDPIC and movi20 relocations. 1965*75fd0b74Schristos * elf32-sh.c (DEFAULT_STACK_SIZE): Define. 1966*75fd0b74Schristos (SYMBOL_FUNCDESC_LOCAL): Define. Use it instead of 1967*75fd0b74Schristos SYMBOL_REFERENCES_LOCAL for function descriptors. 1968*75fd0b74Schristos (fdpic_object_p): New. 1969*75fd0b74Schristos (sh_reloc_map): Add FDPIC and movi20 relocations. 1970*75fd0b74Schristos (sh_elf_info_to_howto, sh_elf_relocate_section): Handle new invalid 1971*75fd0b74Schristos range. 1972*75fd0b74Schristos (struct elf_sh_plt_info): Add got20 and short_plt. Update all 1973*75fd0b74Schristos definitions. 1974*75fd0b74Schristos (FDPIC_PLT_ENTRY_SIZE, FDPIC_PLT_LAZY_OFFSET): Define. 1975*75fd0b74Schristos (fdpic_sh_plt_entry_be, fdpic_sh_plt_entry_le, fdpic_sh_plts): New. 1976*75fd0b74Schristos (FDPIC_SH2A_PLT_ENTRY_SIZE, FDPIC_SH2A_PLT_LAZY_OFFSET): Define. 1977*75fd0b74Schristos (fdpic_sh2a_plt_entry_be, fdpic_sh2a_plt_entry_le) 1978*75fd0b74Schristos (fdpic_sh2a_short_plt_be, fdpic_sh2a_short_plt_le, fdpic_sh2a_plts): 1979*75fd0b74Schristos New. 1980*75fd0b74Schristos (get_plt_info): Handle FDPIC. 1981*75fd0b74Schristos (MAX_SHORT_PLT): Define. 1982*75fd0b74Schristos (get_plt_index, get_plt_offset): Handle short_plt. 1983*75fd0b74Schristos (union gotref): New. 1984*75fd0b74Schristos (struct elf_sh_link_hash_entry): Add funcdesc, rename tls_type to 1985*75fd0b74Schristos got_type and adjust all uses. Add GOT_FUNCDESC. 1986*75fd0b74Schristos (struct sh_elf_obj_tdata): Add local_funcdesc. Rename 1987*75fd0b74Schristos local_got_tls_type to local_got_type. 1988*75fd0b74Schristos (sh_elf_local_got_type): Renamed from sh_elf_local_got_tls_type. All 1989*75fd0b74Schristos users changed. 1990*75fd0b74Schristos (sh_elf_local_funcdesc): Define. 1991*75fd0b74Schristos (struct elf_sh_link_hash_table): Add sfuncdesc, srelfuncdesc, fdpic_p, 1992*75fd0b74Schristos and srofixup. 1993*75fd0b74Schristos (sh_elf_link_hash_newfunc): Initialize new fields. 1994*75fd0b74Schristos (sh_elf_link_hash_table_create): Set fdpic_p. 1995*75fd0b74Schristos (sh_elf_omit_section_dynsym): New. 1996*75fd0b74Schristos (create_got_section): Create .got.funcdesc, .rela.got.funcdesc 1997*75fd0b74Schristos and .rofixup. 1998*75fd0b74Schristos (allocate_dynrelocs): Allocate local function descriptors and space 1999*75fd0b74Schristos for R_SH_FUNCDESC-related relocations, and for rofixups. 2000*75fd0b74Schristos Handle GOT_FUNCDESC. Create fixups. Handle GOT entries which 2001*75fd0b74Schristos require function descriptors. 2002*75fd0b74Schristos (sh_elf_always_size_sections): Handle PT_GNU_STACK and __stacksize. 2003*75fd0b74Schristos (sh_elf_modify_program_headers): New. 2004*75fd0b74Schristos (sh_elf_size_dynamic_sections): Allocate function descriptors for 2005*75fd0b74Schristos local symbols. Allocate .got.funcdesc contents. Allocate rofixups. 2006*75fd0b74Schristos Handle local GOT entries of type GOT_FUNCDESC. Create fixups for 2007*75fd0b74Schristos local GOT entries. Ensure that FDPIC libraries always have a PLTGOT 2008*75fd0b74Schristos entry in the .dynamic section. 2009*75fd0b74Schristos (sh_elf_add_dyn_reloc, sh_elf_got_offset, sh_elf_initialize_funcdesc) 2010*75fd0b74Schristos (sh_elf_add_rofixup, sh_elf_osec_to_segment) 2011*75fd0b74Schristos (sh_elf_osec_readonly_p, install_movi20_field): New functions. 2012*75fd0b74Schristos (sh_elf_relocate_section): Handle new relocations, R_SH_FUNCDESC, 2013*75fd0b74Schristos R_SH_GOTFUNCDESC and R_SH_GOTOFFFUNCDESC. Use sh_elf_got_offset 2014*75fd0b74Schristos and .got.plt throughout to find _GLOBAL_OFFSET_TABLE_. Add rofixup 2015*75fd0b74Schristos read-only section warnings. Handle undefined weak symbols. Generate 2016*75fd0b74Schristos fixups for R_SH_DIR32 and GOT entries. Check for cross-segment 2017*75fd0b74Schristos relocations and clear EF_SH_PIC. Handle 20-bit relocations. 2018*75fd0b74Schristos Always generate R_SH_DIR32 for FDPIC instead of R_SH_RELATIVE. 2019*75fd0b74Schristos (sh_elf_gc_sweep_hook): Handle R_SH_FUNCDESC, R_SH_GOTOFF20, 2020*75fd0b74Schristos R_SH_GOTFUNCDESC, R_SH_GOTFUNCDESC20, and R_SH_GOTOFFFUNCDESC. 2021*75fd0b74Schristos Handle 20-bit relocations. 2022*75fd0b74Schristos (sh_elf_copy_indirect_symbol): Copy function descriptor reference 2023*75fd0b74Schristos counts. 2024*75fd0b74Schristos (sh_elf_check_relocs): Handle new relocations. Make symbols 2025*75fd0b74Schristos dynamic for FDPIC relocs. Account for rofixups. Error for FDPIC 2026*75fd0b74Schristos symbol mismatches. Allocate a GOT for R_SH_DIR32. Allocate fixups 2027*75fd0b74Schristos for R_SH_DIR32. 2028*75fd0b74Schristos (sh_elf_copy_private_data): Copy PT_GNU_STACK size. 2029*75fd0b74Schristos (sh_elf_merge_private_data): Copy initial flags. Do not clobber 2030*75fd0b74Schristos non-mach flags. Set EF_SH_PIC for FDPIC. Reject FDPIC mismatches. 2031*75fd0b74Schristos (sh_elf_finish_dynamic_symbol): Do not handle got_funcdesc entries 2032*75fd0b74Schristos here. Rename sgot to sgotplt and srel to srelplt. Handle short_plt, 2033*75fd0b74Schristos FDPIC descriptors, and got20. Create R_SH_FUNCDESC_VALUE for FDPIC. 2034*75fd0b74Schristos Use install_movi20_field. Rename srel to srelgot. Always generate 2035*75fd0b74Schristos R_SH_DIR32 for FDPIC instead of R_SH_RELATIVE. 2036*75fd0b74Schristos (sh_elf_finish_dynamic_sections): Fill in the GOT pointer in rofixup. 2037*75fd0b74Schristos Do not fill in reserved GOT entries for FDPIC. Correct DT_PLTGOT. 2038*75fd0b74Schristos Rename sgot to sgotplt. Assert that the right number of rofixups 2039*75fd0b74Schristos and dynamic relocations were allocated. 2040*75fd0b74Schristos (sh_elf_use_relative_eh_frame, sh_elf_encode_eh_address): New. 2041*75fd0b74Schristos (elf_backend_omit_section_dynsym): Use sh_elf_omit_section_dynsym. 2042*75fd0b74Schristos (elf_backend_can_make_relative_eh_frame) 2043*75fd0b74Schristos (elf_backend_can_make_lsda_relative_eh_frame) 2044*75fd0b74Schristos (elf_backend_encode_eh_address): Define. 2045*75fd0b74Schristos (TARGET_BIG_SYM, TARGET_BIG_NAME, TARGET_LITTLE_SYM) 2046*75fd0b74Schristos (TARGET_LITTLE_NAME, elf_backend_modify_program_headers, elf32_bed): 2047*75fd0b74Schristos Redefine for FDPIC vector. 2048*75fd0b74Schristos * reloc.c: Add SH FDPIC and movi20 relocations. 2049*75fd0b74Schristos * targets.c (_bfd_target_vector): Add FDPIC vectors. 2050*75fd0b74Schristos * configure, bfd-in2.h, libbfd.h: Regenerated. 2051*75fd0b74Schristos 2052*75fd0b74Schristos2010-05-25 Jay Krell <jay.krell@cornell.edu> 2053*75fd0b74Schristos 2054*75fd0b74Schristos PR ld/11624 2055*75fd0b74Schristos * archive.c (_bfd_calloc_wrapper): New function. 2056*75fd0b74Schristos (_bfd_add_bfd_to_archive_cache): Use it. 2057*75fd0b74Schristos 2058*75fd0b74Schristos * configure.in: Add alpha*-*-*vms* to list of natives. 2059*75fd0b74Schristos * configure: Regenerate. 2060*75fd0b74Schristos 2061*75fd0b74Schristos * vms-misc.c: Define globalref if necessary. 2062*75fd0b74Schristos (vms_convert_to_var_unix_filename): Rename to 2063*75fd0b74Schristos _bfd_vms_convert_to_var_unix_filename and export. 2064*75fd0b74Schristos * vms.h: Add prototype for _bfd_vms_convert_to_var_unix_filename. 2065*75fd0b74Schristos * vms-alpha.c (vms_close_and_cleanup): Update invocation of 2066*75fd0b74Schristos vms_convert_to_var_unix_filename. 2067*75fd0b74Schristos 2068*75fd0b74Schristos2010-05-24 Tristan Gingold <gingold@adacore.com> 2069*75fd0b74Schristos 2070*75fd0b74Schristos * vms-alpha.c (add_symbol_entry): New function extrated from ... 2071*75fd0b74Schristos (add_symbol): ... adjusted. 2072*75fd0b74Schristos 2073*75fd0b74Schristos2010-05-24 Tristan Gingold <gingold@adacore.com> 2074*75fd0b74Schristos 2075*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_egsd): Fix indentation. 2076*75fd0b74Schristos (alpha_vms_write_exec): Add a comment. 2077*75fd0b74Schristos (_bfd_vms_write_egsd): Ditto. 2078*75fd0b74Schristos (alpha_vms_convert_symbol): Remove a blank line. 2079*75fd0b74Schristos 2080*75fd0b74Schristos2010-05-21 Tristan Gingold <gingold@adacore.com> 2081*75fd0b74Schristos 2082*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_eihs): Do not create a bfd section 2083*75fd0b74Schristos for the GST. 2084*75fd0b74Schristos 2085*75fd0b74Schristos2010-05-21 Tristan Gingold <gingold@adacore.com> 2086*75fd0b74Schristos 2087*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_eisd): Set SEC_HAS_CONTENTS and 2088*75fd0b74Schristos SEC_LOAD if isect has data. 2089*75fd0b74Schristos (vms_get_symbol_info): Refine the condition for 'T' type. 2090*75fd0b74Schristos 2091*75fd0b74Schristos2010-05-18 Tristan Gingold <gingold@adacore.com> 2092*75fd0b74Schristos 2093*75fd0b74Schristos * vms-alpha.c (_bfd_vms_write_emh): New function. 2094*75fd0b74Schristos (_bfd_vms_write_lmn): New function. 2095*75fd0b74Schristos (_bfd_vms_write_eeom): Moved. 2096*75fd0b74Schristos (hash_string): Likewise. 2097*75fd0b74Schristos (_bfd_vms_length_hash_symbol): Likewise. 2098*75fd0b74Schristos (_bfd_vms_write_ehdr): Code moved to _bfd_vms_write_emh 2099*75fd0b74Schristos and _bfd_vms_write_lmn, and call these functions. 2100*75fd0b74Schristos 2101*75fd0b74Schristos2010-05-18 Tristan Gingold <gingold@adacore.com> 2102*75fd0b74Schristos 2103*75fd0b74Schristos * vms-alpha.c (evax_bfd_print_dst): Handle INCR_LINUM_L. 2104*75fd0b74Schristos Add details in the messages. 2105*75fd0b74Schristos (evax_bfd_print_image): Change message. 2106*75fd0b74Schristos 2107*75fd0b74Schristos2010-05-18 H.J. Lu <hongjiu.lu@intel.com> 2108*75fd0b74Schristos 2109*75fd0b74Schristos PR gas/11600 2110*75fd0b74Schristos * elf.c (_bfd_elf_make_section_from_shdr): Handle SHF_EXCLUDE 2111*75fd0b74Schristos (elf_fake_sections): Likewise. 2112*75fd0b74Schristos 2113*75fd0b74Schristos * elf32-i370.c (i370_elf_section_from_shdr): Don't handle 2114*75fd0b74Schristos SHF_EXCLUDE here. 2115*75fd0b74Schristos * elf32-ppc.c (ppc_elf_fake_sections): Likewise. 2116*75fd0b74Schristos 2117*75fd0b74Schristos2010-05-17 Tristan Gingold <gingold@adacore.com> 2118*75fd0b74Schristos 2119*75fd0b74Schristos * vms-alpha.c: Include esgps.h and eidc.h. 2120*75fd0b74Schristos (_bfd_vms_slurp_egsd): Ignore SPSC and IDC sub-records. 2121*75fd0b74Schristos (evax_bfd_print_egsd_flags): New function, extracted from ... 2122*75fd0b74Schristos (evax_bfd_print_egsd): ..., calls evax_bfd_print_egsd_flags. Handles 2123*75fd0b74Schristos EGSD__C_SPSC and EGSD__C_IDC. 2124*75fd0b74Schristos 2125*75fd0b74Schristos2010-05-14 Tristan Gingold <gingold@adacore.com> 2126*75fd0b74Schristos 2127*75fd0b74Schristos * vms-alpha.c (alpha_vms_object_p): Accept header size of 0. 2128*75fd0b74Schristos (_bfd_vms_get_object_record): Handle align byte only in the 2129*75fd0b74Schristos foreign case. 2130*75fd0b74Schristos 2131*75fd0b74Schristos2010-05-14 Tristan Gingold <gingold@adacore.com> 2132*75fd0b74Schristos 2133*75fd0b74Schristos * vms-lib.c (_bfd_vms_lib_ia64_archive_p): New function. 2134*75fd0b74Schristos * libbfd-in.h (_bfd_vms_lib_ia64_archive_p): Add prototype. 2135*75fd0b74Schristos * libbfd.h: Regenerate. 2136*75fd0b74Schristos * configure.in (havevecs): Define HAVE_all_vecs when 2137*75fd0b74Schristos --enable-targets=all is set. Use AC_SUBST on it. 2138*75fd0b74Schristos (tdefaults): Do not add havevecs. 2139*75fd0b74Schristos (bfd_elf64_ia64_vms_vec): Add vms-lib.lo and vms-misc.lo 2140*75fd0b74Schristos * configure: Regenerate. 2141*75fd0b74Schristos * Makefile.am (HAVEVECS): New variable. 2142*75fd0b74Schristos (INCLUDES): Add HAVEVECS. 2143*75fd0b74Schristos * Makefile.in: Regenerate. 2144*75fd0b74Schristos * elfxx-ia64.c (INCLUDE_IA64_VMS): New macro, defined if vms 2145*75fd0b74Schristos target is selected. Add #ifdef/#endif around vms specific code. 2146*75fd0b74Schristos (bfd_elfNN_archive_p, bfd_elfNN_archive_slurp_armap, 2147*75fd0b74Schristos bfd_elfNN_archive_slurp_extended_name_table, 2148*75fd0b74Schristos bfd_elfNN_archive_construct_extended_name_table, 2149*75fd0b74Schristos bfd_elfNN_archive_truncate_arname, 2150*75fd0b74Schristos bfd_elfNN_archive_write_armap, 2151*75fd0b74Schristos bfd_elfNN_archive_read_ar_hdr, 2152*75fd0b74Schristos bfd_elfNN_archive_write_ar_hdr, 2153*75fd0b74Schristos bfd_elfNN_archive_openr_next_archived_file, 2154*75fd0b74Schristos bfd_elfNN_archive_get_elt_at_index, 2155*75fd0b74Schristos bfd_elfNN_archive_generic_stat_arch_elt, 2156*75fd0b74Schristos bfd_elfNN_archive_update_armap_timestamp): Define to use vms archives. 2157*75fd0b74Schristos 2158*75fd0b74Schristos2010-05-11 Jie Zhang <jie@codesourcery.com> 2159*75fd0b74Schristos 2160*75fd0b74Schristos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Merge 2161*75fd0b74Schristos Tag_ABI_HardFP_use correctly. 2162*75fd0b74Schristos 2163*75fd0b74Schristos2010-05-11 Alan Modra <amodra@gmail.com> 2164*75fd0b74Schristos 2165*75fd0b74Schristos * coffcode.h (coff_write_object_contents): Enclose all occurrences 2166*75fd0b74Schristos of hasdebug and is_reloc_section in #ifdef COFF_IMAGE_WITH_PE. 2167*75fd0b74Schristos 2168*75fd0b74Schristos2010-05-07 Daniel Jacobowitz <dan@codesourcery.com> 2169*75fd0b74Schristos 2170*75fd0b74Schristos * elf32-arm.c (struct a8_erratum_reloc): Add hash member. Move 2171*75fd0b74Schristos sym_name to improve packing. 2172*75fd0b74Schristos (cortex_a8_erratum_scan): Check for PLT entries. 2173*75fd0b74Schristos (elf32_arm_size_stubs): Save the target symbol for a8 relocs. 2174*75fd0b74Schristos 2175*75fd0b74Schristos2010-05-07 Tristan Gingold <gingold@adacore.com> 2176*75fd0b74Schristos 2177*75fd0b74Schristos * Makefile.in: Regenerate with automake 1.11.1. 2178*75fd0b74Schristos * aclocal.m4: Ditto. 2179*75fd0b74Schristos 2180*75fd0b74Schristos2010-05-05 Nick Clifton <nickc@redhat.com> 2181*75fd0b74Schristos 2182*75fd0b74Schristos * po/es.po: Updated Spanish translation. 2183*75fd0b74Schristos 2184*75fd0b74Schristos2010-05-03 Tristan Gingold <gingold@adacore.com> 2185*75fd0b74Schristos 2186*75fd0b74Schristos * vms-lib.c (vms_lib_bopen): Fix the size threshold to read 2187*75fd0b74Schristos selective_search flag. 2188*75fd0b74Schristos Add comments. 2189*75fd0b74Schristos * vms-alpha.c (alpha_vms_bfd_final_link): Create the DMT section 2190*75fd0b74Schristos before output_has_begun is set. 2191*75fd0b74Schristos 2192*75fd0b74Schristos2010-05-03 Tristan Gingold <gingold@adacore.com> 2193*75fd0b74Schristos 2194*75fd0b74Schristos * vms-alpha.c: Add comments. 2195*75fd0b74Schristos (struct vms_private_data_struct): Remove image_autoextend field. 2196*75fd0b74Schristos (dst_check_allocation): Removed. 2197*75fd0b74Schristos (image_write): Remove call to dst_check_allocation. 2198*75fd0b74Schristos (vms_slurp_debug): Do not set image_autoextend. Adjust section 2199*75fd0b74Schristos size. 2200*75fd0b74Schristos (_bfd_vms_slurp_object_records): Remove useless new_type variable. 2201*75fd0b74Schristos (alpha_vms_write_exec): Use dst_section to get the dst section. 2202*75fd0b74Schristos Write the dmt section. 2203*75fd0b74Schristos (evax_bfd_print_image): Also print the dst size in hexa. Fix typo. 2204*75fd0b74Schristos (alpha_vms_read_sections_content): Do not set image_autoextend. 2205*75fd0b74Schristos (alpha_vms_bfd_final_link): Generate the dst. 2206*75fd0b74Schristos 2207*75fd0b74Schristos2010-05-03 Tristan Gingold <gingold@adacore.com> 2208*75fd0b74Schristos 2209*75fd0b74Schristos * vms-lib.c (_bfd_vms_lib_archive_p): Adjust for a possible empty 2210*75fd0b74Schristos next array. 2211*75fd0b74Schristos (vms_lib_dcx): Adjust for the above change. 2212*75fd0b74Schristos 2213*75fd0b74Schristos2010-04-30 H.J. Lu <hongjiu.lu@intel.com> 2214*75fd0b74Schristos 2215*75fd0b74Schristos PR ld/11542 2216*75fd0b74Schristos * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): New. 2217*75fd0b74Schristos 2218*75fd0b74Schristos * elf32-i386.c (elf_i386_relocate_section): Use it. 2219*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 2220*75fd0b74Schristos 2221*75fd0b74Schristos2010-04-30 Tristan Gingold <gingold@adacore.com> 2222*75fd0b74Schristos 2223*75fd0b74Schristos * vms-lib.c (vms_read_block): New function. 2224*75fd0b74Schristos (vms_traverse_index): Use vms_read_block. Handle long key names. 2225*75fd0b74Schristos 2226*75fd0b74Schristos2010-04-30 Tristan Gingold <gingold@adacore.com> 2227*75fd0b74Schristos 2228*75fd0b74Schristos * vms-lib.c (struct lib_tdata): Field artdata added, fields nbr_syms 2229*75fd0b74Schristos and syms removed. 2230*75fd0b74Schristos (struct carsym_mem): New structure. 2231*75fd0b74Schristos (vms_add_index): New function. 2232*75fd0b74Schristos (vms_add_indexes_from_list): New function. 2233*75fd0b74Schristos (vms_traverse_index): Parameter carsym changed to carsym_mem. 2234*75fd0b74Schristos Code adjusted to handle elfidx. 2235*75fd0b74Schristos (vms_lib_read_index): Adjusted for vms_traverse_index changes. 2236*75fd0b74Schristos Parameter NBREL is now a pointer. 2237*75fd0b74Schristos (_bfd_vms_lib_archive_p): Adjust for above change. Handle ia64 2238*75fd0b74Schristos archives. 2239*75fd0b74Schristos (_bfd_vms_lib_mkarchive): Adjusted for changes in struct lib_tdata. 2240*75fd0b74Schristos (_bfd_vms_lib_find_symbol): Ditto. 2241*75fd0b74Schristos (vms_lib_bopen): Fix two typos: return FALSE in case of error, 2242*75fd0b74Schristos check MHD id. 2243*75fd0b74Schristos (_bfd_vms_lib_get_module): New function. 2244*75fd0b74Schristos (_bfd_vms_lib_get_elt_at_index): Rewritten using the above 2245*75fd0b74Schristos function. 2246*75fd0b74Schristos (_bfd_vms_lib_openr_next_archived_file): Use _bfd_vms_lib_get_module. 2247*75fd0b74Schristos (_bfd_vms_lib_generic_stat_arch_elt): Handle ia64 archives. 2248*75fd0b74Schristos (vms_write_index): Adjust for structure renamed. 2249*75fd0b74Schristos * vms-alpha.c (alpha_vms_link_add_archive_symbols): Adjust for 2250*75fd0b74Schristos changes of _bfd_vms_lib_find_symbol. 2251*75fd0b74Schristos 2252*75fd0b74Schristos2010-04-28 Kai Tietz <kai.tietz@onevision.com> 2253*75fd0b74Schristos 2254*75fd0b74Schristos * config.bfd: Correct accidential reverted patch 2255*75fd0b74Schristos about vax*-*-*vms*. 2256*75fd0b74Schristos 2257*75fd0b74Schristos2010-04-27 Kai Tietz <kai.tietz@onevision.com> 2258*75fd0b74Schristos 2259*75fd0b74Schristos * pe-x86_64.c (TARGET_UNDERSCORE): Set value dependent 2260*75fd0b74Schristos to USE_MINGW64_LEADING_UNDERSCORES. 2261*75fd0b74Schristos * pei-x86_64.c (TARGET_UNDERSCORE): Likewise. 2262*75fd0b74Schristos * config.bfd: Change underscoring default for x64 mingw 2263*75fd0b74Schristos to false. 2264*75fd0b74Schristos * coffcode.h (coff_write_relocs): Add check that dereferenced 2265*75fd0b74Schristos sym_ptr_ptr isn't NULL. 2266*75fd0b74Schristos * config.in (USE_MINGW64_LEADING_UNDERSCORES): New. 2267*75fd0b74Schristos * configure: Regenerated. 2268*75fd0b74Schristos * configure.in: Add option '--enable-leading-mingw64-underscores' 2269*75fd0b74Schristos and define config.in variable USE_MINGW64_LEADING_UNDERSCORES. 2270*75fd0b74Schristos 2271*75fd0b74Schristos2010-04-27 Nick Clifton <nickc@redhat.com> 2272*75fd0b74Schristos 2273*75fd0b74Schristos PR binutils/11512 2274*75fd0b74Schristos * coffgen.c (coff_find_nearest_line): Incldue the section address 2275*75fd0b74Schristos of function name symbols in address comparisons. 2276*75fd0b74Schristos 2277*75fd0b74Schristos2010-04-27 Nick Clifton <nickc@redhat.com> 2278*75fd0b74Schristos 2279*75fd0b74Schristos * po/fr.po: Updated French translation. 2280*75fd0b74Schristos 2281*75fd0b74Schristos2010-04-23 Alan Modra <amodra@gmail.com> 2282*75fd0b74Schristos 2283*75fd0b74Schristos * elf.c: Replace use of ELF_IS_SECTION_IN_SEGMENT and 2284*75fd0b74Schristos ELF_IS_SECTION_IN_SEGMENT_FILE with ELF_SECTION_IN_SEGMENT 2285*75fd0b74Schristos throughout file. 2286*75fd0b74Schristos (assign_file_positions_for_load_sections): Modify section in 2287*75fd0b74Schristos segment warning to ignore overlay vmas. 2288*75fd0b74Schristos * elf32-spu.c (spu_elf_object_p): Replace use of 2289*75fd0b74Schristos ELF_IS_SECTION_IN_SEGMENT_MEMORY with ELF_SECTION_IN_SEGMENT. 2290*75fd0b74Schristos 2291*75fd0b74Schristos2010-04-22 Nick Clifton <nickc@redhat.com> 2292*75fd0b74Schristos 2293*75fd0b74Schristos * po/bfd.pot: Updated by the Translation project. 2294*75fd0b74Schristos * po/vi.po: Updated Vietnamese translation. 2295*75fd0b74Schristos 2296*75fd0b74Schristos2010-04-22 Alan Modra <amodra@gmail.com> 2297*75fd0b74Schristos 2298*75fd0b74Schristos * elf.c (assign_file_positions_for_load_sections): Revert 2008-05-29 2299*75fd0b74Schristos change. Tidy. Don't error on sections not allocated in segment. 2300*75fd0b74Schristos 2301*75fd0b74Schristos2010-04-15 Andrew Haley <aph@redhat.com> 2302*75fd0b74Schristos 2303*75fd0b74Schristos * bfd-in.h (elf32_arm_fix_exidx_coverage): Add new flag: 2304*75fd0b74Schristos merge_exidx_entries. 2305*75fd0b74Schristos * bfd-in2.h: Likewise. 2306*75fd0b74Schristos * elf32-arm.c (elf32_arm_fix_exidx_coverage): Likewise. Use it to 2307*75fd0b74Schristos control merging of exidx entries. 2308*75fd0b74Schristos 2309*75fd0b74Schristos2010-04-20 Joseph Myers <joseph@codesourcery.com> 2310*75fd0b74Schristos 2311*75fd0b74Schristos * elf32-tic6x.h: New. 2312*75fd0b74Schristos * elf-bfd.h (enum elf_target_id): Define TIC6X_ELF_DATA. 2313*75fd0b74Schristos * elf32-tic6x.c (struct elf32_tic6x_obj_tdata, elf32_tic6x_tdata, 2314*75fd0b74Schristos elf32_tic6x_howto_table_rel, elf32_tic6x_info_to_howto_rel, 2315*75fd0b74Schristos elf32_tic6x_set_use_rela_p, elf32_tic6x_mkobject, 2316*75fd0b74Schristos elf32_tic6x_new_section_hook, elf32_tic6x_rel_relocation_p, 2317*75fd0b74Schristos bfd_elf32_mkobject, bfd_elf32_new_section_hook): New. 2318*75fd0b74Schristos (elf32_tic6x_reloc_type_lookup, elf32_tic6x_reloc_name_lookup, 2319*75fd0b74Schristos elf32_tic6x_relocate_section): Handle REL relocations. 2320*75fd0b74Schristos (elf_info_to_howto_rel): Define to elf32_tic6x_info_to_howto_rel. 2321*75fd0b74Schristos 2322*75fd0b74Schristos2010-04-20 Jakub Jelinek <jakub@redhat.com> 2323*75fd0b74Schristos 2324*75fd0b74Schristos * dwarf2.c (find_abstract_instance_name, scan_unit_for_symbols): Treat 2325*75fd0b74Schristos DW_AT_linkage_name the same as DW_AT_MIPS_linkage_name. 2326*75fd0b74Schristos 2327*75fd0b74Schristos2010-04-19 Nick Clifton <nickc@redhat.com> 2328*75fd0b74Schristos 2329*75fd0b74Schristos * archive64.c (bfd_elf64_archive_slurp_armap): Remove unused 2330*75fd0b74Schristos arhdrpos variable. 2331*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_relocate_section): Add unused 2332*75fd0b74Schristos attribute to warned variable. Remove unused val, type and type2 2333*75fd0b74Schristos variables. 2334*75fd0b74Schristos 2335*75fd0b74Schristos2010-04-16 Andreas Schwab <schwab@redhat.com> 2336*75fd0b74Schristos 2337*75fd0b74Schristos * vms-alpha.c (alpha_vms_link_add_object_symbols): Avoid breaking 2338*75fd0b74Schristos strict-aliasing rules. 2339*75fd0b74Schristos 2340*75fd0b74Schristos2010-04-16 Tristan Gingold <gingold@adacore.com> 2341*75fd0b74Schristos 2342*75fd0b74Schristos * vms-alpha.c (_bfd_vms_slurp_eihd): Fix typo. 2343*75fd0b74Schristos (_bfd_vms_get_object_record): Always assume there is a pad byte 2344*75fd0b74Schristos for alignment. 2345*75fd0b74Schristos 2346*75fd0b74Schristos * vms-lib.c: Add a few comments. 2347*75fd0b74Schristos 2348*75fd0b74Schristos2010-04-15 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> 2349*75fd0b74Schristos 2350*75fd0b74Schristos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Support additions to 2351*75fd0b74Schristos attributes in v2.08 of the ABI. 2352*75fd0b74Schristos 2353*75fd0b74Schristos2010-04-15 Alan Modra <amodra@gmail.com> 2354*75fd0b74Schristos 2355*75fd0b74Schristos * config.bfd (vax*-*-*vms*): Delete. 2356*75fd0b74Schristos 2357*75fd0b74Schristos2010-04-14 Tristan Gingold <gingold@adacore.com> 2358*75fd0b74Schristos 2359*75fd0b74Schristos * Makefile.am (BFD32_BACKENDS): Remove vms-gsd.lo, vms-hdr.lo, 2360*75fd0b74Schristos vms-tir.lo, vms.lo and add vms-alpha.lo 2361*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Remove vms-gsd.c, vms-hdr.c, 2362*75fd0b74Schristos vms-tir.c, vms.c and add vms-alpha.c 2363*75fd0b74Schristos * Makefile.in: Regenerate. 2364*75fd0b74Schristos * configure.in (TDEFINES): Adjust file list for vms_alpha_vec. 2365*75fd0b74Schristos Remove vms_vax_vec. 2366*75fd0b74Schristos * configure: Regenerate. 2367*75fd0b74Schristos * targets.c (vms_vax_vec): Remove the declaration. 2368*75fd0b74Schristos (_bfd_target_vector): Remove vms_vax_vec. 2369*75fd0b74Schristos * vms-alpha.c: New file. 2370*75fd0b74Schristos * vms-gsd.c: Removed, rewritten in vms-alpha.c 2371*75fd0b74Schristos * vms-hdr.c: Ditto. 2372*75fd0b74Schristos * vms-tir.c: Ditto. 2373*75fd0b74Schristos * vms.c: Ditto. 2374*75fd0b74Schristos * vms-misc.c: Fix indentation and comments. Replace most of 2375*75fd0b74Schristos #if VMS_DEBUG/vms_debug with vms_debug2. 2376*75fd0b74Schristos (_bfd_vms_hash_newfunc): Moved to vms-alpha.c 2377*75fd0b74Schristos (hash_string): Ditto. 2378*75fd0b74Schristos (_bfd_vms_length_hash_symbol): Ditto. 2379*75fd0b74Schristos (maybe_adjust_record_pointer_for_object): Ditto. 2380*75fd0b74Schristos (_bfd_vms_get_object_record): Ditto. 2381*75fd0b74Schristos (vms_get_remaining_object_record): Ditto. 2382*75fd0b74Schristos (_bfd_vms_push): Ditto. 2383*75fd0b74Schristos (_bfd_vms_pop): Ditto. 2384*75fd0b74Schristos (_bfd_vms_get_header_values): Removed. 2385*75fd0b74Schristos (_bfd_vms_get_first_record): Removed. 2386*75fd0b74Schristos (vms_get_remaining_image_record): Removed. 2387*75fd0b74Schristos (new_symbol): Removed. 2388*75fd0b74Schristos (_bfd_vms_enter_symbol): Removed. 2389*75fd0b74Schristos (_bfd_vms_save_sized_string): Use memcpy instead of strncpy. 2390*75fd0b74Schristos (_bfd_vms_output_begin): Remove rechead parameter. Replace bfd 2391*75fd0b74Schristos parameter with struct vms_rec_wr. 2392*75fd0b74Schristos (_bfd_vms_output_push): Removed and replaced by ... 2393*75fd0b74Schristos (_bfd_vms_output_begin_subrec): ... new function. 2394*75fd0b74Schristos (_bfd_vms_output_alignment): Replace bfd parameter with 2395*75fd0b74Schristos struct vms_rec_wr, and adjust. 2396*75fd0b74Schristos (_bfd_vms_output_check): Ditto 2397*75fd0b74Schristos (_bfd_vms_output_byte): Ditto. 2398*75fd0b74Schristos (_bfd_vms_output_short): Ditto. 2399*75fd0b74Schristos (_bfd_vms_output_long): Ditto. 2400*75fd0b74Schristos (_bfd_vms_output_quad): Ditto. 2401*75fd0b74Schristos (_bfd_vms_output_counted): Ditto. 2402*75fd0b74Schristos (_bfd_vms_output_dump): Ditto. 2403*75fd0b74Schristos (_bfd_vms_output_fill): Ditto. 2404*75fd0b74Schristos (_bfd_vms_output_pop): Removed and replaced by ... 2405*75fd0b74Schristos (_bfd_vms_output_end_subrec): ... new function. 2406*75fd0b74Schristos (_bfd_vms_output_flush): Removed. 2407*75fd0b74Schristos (_bfd_vms_output_align): New function. 2408*75fd0b74Schristos (_bfd_vms_output_end): Add recwr parameter. Adjust for this new 2409*75fd0b74Schristos parameter. 2410*75fd0b74Schristos (vms_convert_to_var): New function imported from vms.c 2411*75fd0b74Schristos (vms_convert_to_var_1): Ditto. 2412*75fd0b74Schristos (vms_convert_to_var_unix_filename): Ditto. 2413*75fd0b74Schristos (vms_get_module_name): Ditto. 2414*75fd0b74Schristos (get_vms_time_string): Ditto. 2415*75fd0b74Schristos (vms_time_to_time_t): Ditto. 2416*75fd0b74Schristos (vms_rawtime_to_time_t): Ditto. 2417*75fd0b74Schristos * vms.h: All macros for the VMS file format are now in include/vms. 2418*75fd0b74Schristos Prototypes for vms.c, vms-gsd.c, vms-misc.c, vms-hdr.c, vms-tir.c 2419*75fd0b74Schristos have been removed. 2420*75fd0b74Schristos (struct vms_symbol_struct, struct stack_struct): Moved to vms-alpha.c 2421*75fd0b74Schristos (struct fileinfo, struct srecinfo, struct lineinfo): Ditto. 2422*75fd0b74Schristos (struct funcinfo, struct vms_private_data_struct): Ditto. 2423*75fd0b74Schristos (struct vms_section_data_struct): Ditto. 2424*75fd0b74Schristos (struct vms_rec_rd, stryct vms_rec_wr): New declarations. 2425*75fd0b74Schristos (vms_get_module_name, get_vms_time_string): New declarations. 2426*75fd0b74Schristos (vms_time_to_time_t, vms_rawtime_to_time_t): Ditto. 2427*75fd0b74Schristos (_bfd_vms_output_begin_subrec, _bfd_vms_output_end_subrec): Ditto. 2428*75fd0b74Schristos (_bfd_vms_save_sized_string, _bfd_vms_save_counted_string): Adjusted. 2429*75fd0b74Schristos (_bfd_vms_output_begin, _bfd_vms_output_alignment): Ditto. 2430*75fd0b74Schristos (_bfd_vms_output_end,_bfd_vms_output_check): Ditto. 2431*75fd0b74Schristos (_bfd_vms_output_byte, _bfd_vms_output_short): Ditto. 2432*75fd0b74Schristos (_bfd_vms_output_long, _bfd_vms_output_quad): Ditto. 2433*75fd0b74Schristos (_bfd_vms_output_counted, _bfd_vms_output_dump): Ditto. 2434*75fd0b74Schristos (_bfd_vms_output_fill): Ditto. 2435*75fd0b74Schristos (bfd_vms_set_section_flags): Ditto. 2436*75fd0b74Schristos 2437*75fd0b74Schristos2010-04-14 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> 2438*75fd0b74Schristos 2439*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Tighten up the test for early 2440*75fd0b74Schristos exit due to merging the same weak symbol to test that the symbols are 2441*75fd0b74Schristos actually weak. 2442*75fd0b74Schristos 2443*75fd0b74Schristos2010-04-13 Alan Modra <amodra@gmail.com> 2444*75fd0b74Schristos 2445*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_relocate_section): Correct NOP location 2446*75fd0b74Schristos when optimizing high got_tlsgd/ld insns. 2447*75fd0b74Schristos 2448*75fd0b74Schristos2010-04-10 H.J. Lu <hongjiu.lu@intel.com> 2449*75fd0b74Schristos 2450*75fd0b74Schristos * hosts/x86-64linux.h (HAVE_PRPSINFO32_T): Undefine before 2451*75fd0b74Schristos define. 2452*75fd0b74Schristos (HAVE_PRSTATUS32_T): Likewise. 2453*75fd0b74Schristos 2454*75fd0b74Schristos2010-04-10 H.J. Lu <hongjiu.lu@intel.com> 2455*75fd0b74Schristos 2456*75fd0b74Schristos PR corefiles/11467 2457*75fd0b74Schristos * configure.in (CORE_HEADER): New. Set to hosts/x86-64linux.h 2458*75fd0b74Schristos for x86_64-*-linux*. 2459*75fd0b74Schristos * config.in: Regenerated. 2460*75fd0b74Schristos * configure: Likewise. 2461*75fd0b74Schristos 2462*75fd0b74Schristos * elf.c: Include CORE_HEADER if it is defined. 2463*75fd0b74Schristos 2464*75fd0b74Schristos2010-04-10 H.J. Lu <hongjiu.lu@intel.com> 2465*75fd0b74Schristos Jan Kratochvil <jan.kratochvil@redhat.com> 2466*75fd0b74Schristos 2467*75fd0b74Schristos * hosts/x86-64linux.h: New. 2468*75fd0b74Schristos 2469*75fd0b74Schristos2010-04-09 Nick Clifton <nickc@redhat.com> 2470*75fd0b74Schristos 2471*75fd0b74Schristos * aoutx.h (aout_link_input_bfd): Remove unused variable sym_count. 2472*75fd0b74Schristos * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Remove unused 2473*75fd0b74Schristos variables htab and hdr_info and mark info parameter as unused. 2474*75fd0b74Schristos * elf.c (prep_headers): Remove unused variable i_phdrp. 2475*75fd0b74Schristos (_bfd_elf_write_object_contents): Remove unused variable i_ehdrp. 2476*75fd0b74Schristos * elf32-i386.c (elf_i386_relocate_section): Mark variabled warned 2477*75fd0b74Schristos as unused. 2478*75fd0b74Schristos * peXXigen.c (pe_print_reloc): Remove unused variable datasize. 2479*75fd0b74Schristos * verilog.c (verilog_write_section): Remove unused variable 2480*75fd0b74Schristos address. 2481*75fd0b74Schristos 2482*75fd0b74Schristos2010-04-07 Alan Modra <amodra@gmail.com> 2483*75fd0b74Schristos 2484*75fd0b74Schristos * warning.m4 (GCC_WARN_CFLAGS): Only add -Wshadow for gcc-4 and above. 2485*75fd0b74Schristos * configure: Regenerate. 2486*75fd0b74Schristos 2487*75fd0b74Schristos2010-04-06 H.J. Lu <hongjiu.lu@intel.com> 2488*75fd0b74Schristos 2489*75fd0b74Schristos PR ld/11434 2490*75fd0b74Schristos * elf-bfd.h (SYMBOLIC_BIND): Don't bind unique symbol locally. 2491*75fd0b74Schristos 2492*75fd0b74Schristos2010-04-06 Tristan Gingold <gingold@adacore.com> 2493*75fd0b74Schristos 2494*75fd0b74Schristos * vms-lib.c (_bfd_vms_lib_write_archive_contents): Fix idd flags. 2495*75fd0b74Schristos 2496*75fd0b74Schristos2010-04-05 Jakub Jelinek <jakub@redhat.com> 2497*75fd0b74Schristos 2498*75fd0b74Schristos * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Handle CIE version 4 2499*75fd0b74Schristos provided that it has the expected address size and zero segment 2500*75fd0b74Schristos length. 2501*75fd0b74Schristos 2502*75fd0b74Schristos * dwarf2.c (struct line_head): Add maximum_ops_per_insn field. 2503*75fd0b74Schristos (struct line_info): Add op_index field, change end_sequence type to 2504*75fd0b74Schristos unsigned char. 2505*75fd0b74Schristos (new_line_sorts_after): For the same address compare op_index. 2506*75fd0b74Schristos (add_line_info): Add op_index argument, store it into the structure. 2507*75fd0b74Schristos (decode_line_info): Complain about unknown versions of .debug_line. 2508*75fd0b74Schristos Initialize maximum_ops_per_insn. Add op_index state register and 2509*75fd0b74Schristos track it. 2510*75fd0b74Schristos 2511*75fd0b74Schristos2010-04-01 Nathan Sidwell <nathan@codesourcery.com> 2512*75fd0b74Schristos 2513*75fd0b74Schristos * elf32-ppc.c (apuinfo_set): New static var. 2514*75fd0b74Schristos (ppc_elf_begin_write_processing): Set it here, always create an 2515*75fd0b74Schristos APUinfo section if there were any in the inputs. 2516*75fd0b74Schristos (ppc_elf_write_section): Check apuinfo_set. 2517*75fd0b74Schristos (ppc_elf_final_write_processing): Likewise. 2518*75fd0b74Schristos 2519*75fd0b74Schristos2010-04-01 Tristan Gingold <gingold@adacore.com> 2520*75fd0b74Schristos 2521*75fd0b74Schristos * vms.h: Include time.h. Add prototypes for vms_get_module_name, 2522*75fd0b74Schristos vms_time_to_time_t and vms_rawtime_to_time_t. 2523*75fd0b74Schristos * vms.c (vms_alpha_vec): Add archives support. 2524*75fd0b74Schristos * vms-misc.c: Include safe-ctype.h 2525*75fd0b74Schristos (vms_get_module_name): New function. 2526*75fd0b74Schristos (vms_time_to_time_t, vms_rawtime_to_time_t): Ditto. 2527*75fd0b74Schristos * vms-hdr.c (_bfd_vms_write_hdr): Put module name creation to the 2528*75fd0b74Schristos vms_get_module_name function. Use this function. 2529*75fd0b74Schristos * targets.c: Declare vms_lib_txt_vec. Add it to _bfd_target_vector. 2530*75fd0b74Schristos * libbfd-in.h: Add prototype for _bfd_append_relative_path. 2531*75fd0b74Schristos Add prototypes for vms-lib.c 2532*75fd0b74Schristos * libbfd.h: Regenerate. 2533*75fd0b74Schristos * configure.in (TDEFINES): Add an entry for vms_lib_txt_vec. Add 2534*75fd0b74Schristos vms-lib.lo to vms_alpha_vec. 2535*75fd0b74Schristos * config.bfd (targ_cpu): Add targ_selvecs for alpha*-*-*vms*. 2536*75fd0b74Schristos * configure: Regenerate. 2537*75fd0b74Schristos * bfd.c: Add selective_search field. 2538*75fd0b74Schristos * bfd-in2.h: Regenerate. 2539*75fd0b74Schristos * archive.c (append_relative_path): Rename to 2540*75fd0b74Schristos _bfd_append_relative_path and make it public. 2541*75fd0b74Schristos (_bfd_get_elt_at_filepos): Adjust for above renaming. 2542*75fd0b74Schristos * Makefile.am (BFD32_BACKENDS): Add vms-lib.lo 2543*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Add vms-lib.c 2544*75fd0b74Schristos * Makefile.in: Regenerate. 2545*75fd0b74Schristos 2546*75fd0b74Schristos2010-04-01 Jakub Jelinek <jakub@redhat.com> 2547*75fd0b74Schristos 2548*75fd0b74Schristos * dwarf2.c (read_attribute_value): Handle CU version 4 2549*75fd0b74Schristos for DW_FORM_ref_addr, handle DW_FORM_sec_offset, DW_FORM_exprloc 2550*75fd0b74Schristos and DW_FORM_flag_present. For unknown form value return NULL. 2551*75fd0b74Schristos (scan_unit_for_symbols): For DW_AT_location handle DW_FORM_exprloc 2552*75fd0b74Schristos like DW_FORM_block. 2553*75fd0b74Schristos (parse_comp_unit): Allow CU version 4. 2554*75fd0b74Schristos 2555*75fd0b74Schristos2010-04-01 Hans-Peter Nilsson <hp@axis.com> 2556*75fd0b74Schristos 2557*75fd0b74Schristos * elf32-cris.c (cris_elf_relocate_section): Correct first argument 2558*75fd0b74Schristos to _bfd_elf_get_dynamic_reloc_section. 2559*75fd0b74Schristos (elf_cris_discard_excess_dso_dynamics): Ditto. 2560*75fd0b74Schristos 2561*75fd0b74Schristos2010-03-31 Kai Tietz <kai.tietz@onevision.com> 2562*75fd0b74Schristos 2563*75fd0b74Schristos * coff-i386.c (in_reloc_p): Check also for R_SECREL32. 2564*75fd0b74Schristos * coff-x86_64.c (in_reloc_p): Check also for R_AMD64_SECREL. 2565*75fd0b74Schristos 2566*75fd0b74Schristos2010-03-31 Alan Modra <amodra@gmail.com> 2567*75fd0b74Schristos 2568*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_relocate_section): Nop out optimized 2569*75fd0b74Schristos TPREL16_HI and TPREL16_HA insns. 2570*75fd0b74Schristos 2571*75fd0b74Schristos2010-03-31 Hans-Peter Nilsson <hp@axis.com> 2572*75fd0b74Schristos 2573*75fd0b74Schristos PR ld/11458 2574*75fd0b74Schristos * elf32-cris.c (elf_cris_copy_indirect_symbol): Remove invalid 2575*75fd0b74Schristos assert of empty pcrel_relocs_copied on the direct symbol. Instead 2576*75fd0b74Schristos of moving the list from the indirect symbol to the direct symbol, 2577*75fd0b74Schristos merge into any existing list. 2578*75fd0b74Schristos (cris_elf_check_relocs): Store the original section in the 2579*75fd0b74Schristos pcrel_relocs_copied list, not the relocation section. 2580*75fd0b74Schristos (elf_cris_discard_excess_dso_dynamics): Adjust accordingly to find 2581*75fd0b74Schristos the relocation section, for reducing its size. Change the 2582*75fd0b74Schristos BFD_ASSERT into a check for the section being read-only, and only 2583*75fd0b74Schristos emit warnings and TEXTREL marker when there's an entry for a 2584*75fd0b74Schristos read-only section. 2585*75fd0b74Schristos 2586*75fd0b74Schristos2010-03-29 Daniel Jacobowitz <dan@codesourcery.com> 2587*75fd0b74Schristos 2588*75fd0b74Schristos * elf32-arm.c (using_thumb_only): Handle v6-M. 2589*75fd0b74Schristos 2590*75fd0b74Schristos2010-03-26 Alan Modra <amodra@gmail.com> 2591*75fd0b74Schristos 2592*75fd0b74Schristos * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_EMB_RELSDA>): Not pc-relative. 2593*75fd0b74Schristos * bfd-in.h (elf_discarded_section): Clarify comment. 2594*75fd0b74Schristos * reloc.c (struct reloc_howto_struct <pc_relative>): Likewise. 2595*75fd0b74Schristos * bfd-in2.h: Regenerate. 2596*75fd0b74Schristos 2597*75fd0b74Schristos2010-03-26 Matt Rice <ratmice@gmail.com> 2598*75fd0b74Schristos 2599*75fd0b74Schristos * archive.c (_bfd_compute_and_write_armap): Allow symbols flagged 2600*75fd0b74Schristos as unique in the armap. 2601*75fd0b74Schristos 2602*75fd0b74Schristos2010-03-26 Alan Modra <amodra@gmail.com> 2603*75fd0b74Schristos 2604*75fd0b74Schristos PR ld/11375 2605*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_relocate_section): Always look up a 2606*75fd0b74Schristos possible stub on branches. 2607*75fd0b74Schristos 2608*75fd0b74Schristos2010-03-25 Joseph Myers <joseph@codesourcery.com> 2609*75fd0b74Schristos 2610*75fd0b74Schristos * Makefile.am (ALL_MACHINES): Add cpu-tic6x.lo. 2611*75fd0b74Schristos (ALL_MACHINES_CFILES): Add cpu-tic6x.c. 2612*75fd0b74Schristos (BFD32_BACKENDS): Add elf32-tic6x.lo. 2613*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Add elf32-tic6x.c. 2614*75fd0b74Schristos * Makefile.in: Regenerate. 2615*75fd0b74Schristos * archures.c (bfd_arch_tic6x, bfd_tic6x_arch): New. 2616*75fd0b74Schristos (bfd_archures_list): Update. 2617*75fd0b74Schristos * config.bfd (tic6x-*-elf): New. 2618*75fd0b74Schristos * configure.in (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): 2619*75fd0b74Schristos New. 2620*75fd0b74Schristos * configure: Regenerate. 2621*75fd0b74Schristos * cpu-tic6x.c, elf32-tic6x.c: New. 2622*75fd0b74Schristos * reloc.c (BFD_RELOC_C6000_PCR_S21, BFD_RELOC_C6000_PCR_S12, 2623*75fd0b74Schristos BFD_RELOC_C6000_PCR_S10, BFD_RELOC_C6000_PCR_S7, 2624*75fd0b74Schristos BFD_RELOC_C6000_ABS_S16, BFD_RELOC_C6000_ABS_L16, 2625*75fd0b74Schristos BFD_RELOC_C6000_ABS_H16, BFD_RELOC_C6000_SBR_U15_B, 2626*75fd0b74Schristos BFD_RELOC_C6000_SBR_U15_H, BFD_RELOC_C6000_SBR_U15_W, 2627*75fd0b74Schristos BFD_RELOC_C6000_SBR_S16, BFD_RELOC_C6000_SBR_L16_B, 2628*75fd0b74Schristos BFD_RELOC_C6000_SBR_L16_H, BFD_RELOC_C6000_SBR_L16_W, 2629*75fd0b74Schristos BFD_RELOC_C6000_SBR_H16_B, BFD_RELOC_C6000_SBR_H16_H, 2630*75fd0b74Schristos BFD_RELOC_C6000_SBR_H16_W, BFD_RELOC_C6000_SBR_GOT_U15_W, 2631*75fd0b74Schristos BFD_RELOC_C6000_SBR_GOT_L16_W, BFD_RELOC_C6000_SBR_GOT_H16_W, 2632*75fd0b74Schristos BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31, 2633*75fd0b74Schristos BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_ALIGN, 2634*75fd0b74Schristos BFD_RELOC_C6000_FPHEAD, BFD_RELOC_C6000_NOCMP): New. 2635*75fd0b74Schristos * targets.c (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): New. 2636*75fd0b74Schristos (_bfd_target_vector): Update. 2637*75fd0b74Schristos * bfd-in2.h, libbfd.h: Regenerate. 2638*75fd0b74Schristos 2639*75fd0b74Schristos2010-03-24 H.J. Lu <hongjiu.lu@intel.com> 2640*75fd0b74Schristos 2641*75fd0b74Schristos * aout-target.h: Update copyright year. 2642*75fd0b74Schristos * aout-tic30.c: Likewise. 2643*75fd0b74Schristos * coff-alpha.c: Likewise. 2644*75fd0b74Schristos * coff-rs6000.c: Likewise. 2645*75fd0b74Schristos * coff64-rs6000.c: Likewise. 2646*75fd0b74Schristos * elf64-mips.c: Likewise. 2647*75fd0b74Schristos * ieee.c: Likewise. 2648*75fd0b74Schristos * libecoff.h: Likewise. 2649*75fd0b74Schristos * mach-o-target.c: Likewise. 2650*75fd0b74Schristos * mach-o.c: Likewise. 2651*75fd0b74Schristos * oasys.c: Likewise. 2652*75fd0b74Schristos * targets.c: Likewise. 2653*75fd0b74Schristos 2654*75fd0b74Schristos2010-03-24 H.J. Lu <hongjiu.lu@intel.com> 2655*75fd0b74Schristos 2656*75fd0b74Schristos * libbfd-in.h: Update copyright year. 2657*75fd0b74Schristos 2658*75fd0b74Schristos2010-03-21 H.J. Lu <hongjiu.lu@intel.com> 2659*75fd0b74Schristos 2660*75fd0b74Schristos PR ld/11413 2661*75fd0b74Schristos * elflink.c (_bfd_elf_add_default_symbol): Check !executable 2662*75fd0b74Schristos instead of shared. 2663*75fd0b74Schristos 2664*75fd0b74Schristos2010-03-19 Jie Zhang <jie@codesourcery.com> 2665*75fd0b74Schristos 2666*75fd0b74Schristos * elf32-arm.c (struct section_list): Remove. 2667*75fd0b74Schristos (section_list): Remove typedef. 2668*75fd0b74Schristos (record_section_with_arm_elf_section_data): Remove. 2669*75fd0b74Schristos (find_arm_elf_section_entry): Remove. 2670*75fd0b74Schristos (get_arm_elf_section_data): Use is_arm_elf. 2671*75fd0b74Schristos (unrecord_section_with_arm_elf_section_data): Remove. 2672*75fd0b74Schristos (elf32_arm_new_section_hook): Don't call 2673*75fd0b74Schristos record_section_with_arm_elf_section_data. 2674*75fd0b74Schristos (elf32_arm_write_section): Set mapcount to -1 when 2675*75fd0b74Schristos the map has been used. Don't call 2676*75fd0b74Schristos unrecord_section_with_arm_elf_section_data. 2677*75fd0b74Schristos (unrecord_section_via_map_over_sections): Remove. 2678*75fd0b74Schristos (elf32_arm_close_and_cleanup): Remove. 2679*75fd0b74Schristos (elf32_arm_bfd_free_cached_info): Remove. 2680*75fd0b74Schristos (bfd_elf32_close_and_cleanup): Don't define. 2681*75fd0b74Schristos (bfd_elf32_bfd_free_cached_info): Don't define. 2682*75fd0b74Schristos 2683*75fd0b74Schristos2010-03-18 H.J. Lu <hongjiu.lu@intel.com> 2684*75fd0b74Schristos 2685*75fd0b74Schristos PR binutils/11396 2686*75fd0b74Schristos * libcoff-in.h (pe_tdata): Add dont_strip_reloc. 2687*75fd0b74Schristos * libcoff.h: Regenerated. 2688*75fd0b74Schristos 2689*75fd0b74Schristos * peXXigen.c (_bfd_XXi_only_swap_filehdr_out): Clear F_RELFLG 2690*75fd0b74Schristos if dont_strip_reloc is set. 2691*75fd0b74Schristos (_bfd_XX_bfd_copy_private_bfd_data_common): Set 2692*75fd0b74Schristos dont_strip_reloc on output if there is no .reloc and 2693*75fd0b74Schristos IMAGE_FILE_RELOCS_STRIPPED isn't set in input. 2694*75fd0b74Schristos 2695*75fd0b74Schristos2010-03-18 Wei Guozhi <carrot@google.com> 2696*75fd0b74Schristos 2697*75fd0b74Schristos PR gas/11323 2698*75fd0b74Schristos * elf32-arm.c (elf32_arm_reloc_map): Map BFD_RELOC_ARM_GOT_PREL to 2699*75fd0b74Schristos R_ARM_GOT_PREL. 2700*75fd0b74Schristos * reloc.c (BFD_RELOC_ARM_GOT_PREL): New ARM relocation. 2701*75fd0b74Schristos * bfd-in2.h: Regenerate. 2702*75fd0b74Schristos * libbfd.h: Regenerate. 2703*75fd0b74Schristos 2704*75fd0b74Schristos2010-03-17 H.J. Lu <hongjiu.lu@intel.com> 2705*75fd0b74Schristos 2706*75fd0b74Schristos * reloc.c (BFD_RELOC_SPU_PIC18): Removed. 2707*75fd0b74Schristos (BFD_RELOC_SPU_STUB): Likewise. 2708*75fd0b74Schristos 2709*75fd0b74Schristos2010-03-17 Jie Zhang <jie@codesourcery.com> 2710*75fd0b74Schristos 2711*75fd0b74Schristos * elf.c (assign_file_positions_for_load_sections): Avoid 2712*75fd0b74Schristos overflow. 2713*75fd0b74Schristos 2714*75fd0b74Schristos2010-03-17 Alan Modra <amodra@gmail.com> 2715*75fd0b74Schristos 2716*75fd0b74Schristos PR binutils/11382 2717*75fd0b74Schristos * plugin.c (bfd_plugin_object_p): Pass iostream to fileno using 2718*75fd0b74Schristos proper type. 2719*75fd0b74Schristos 2720*75fd0b74Schristos2010-03-17 Alan Modra <amodra@gmail.com> 2721*75fd0b74Schristos 2722*75fd0b74Schristos * elf32-arm.c (cortex_a8_erratum_scan): Warning fix. 2723*75fd0b74Schristos 2724*75fd0b74Schristos2010-03-16 Alan Modra <amodra@gmail.com> 2725*75fd0b74Schristos 2726*75fd0b74Schristos * elf64-ppc.c (struct ppc_link_hash_table): Add do_toc_opt. 2727*75fd0b74Schristos (ppc64_elf_edit_toc): Set it here. 2728*75fd0b74Schristos (ha_reloc_match): New function. 2729*75fd0b74Schristos (ppc64_elf_relocate_section): Optimize bigtoc insn sequences. 2730*75fd0b74Schristos 2731*75fd0b74Schristos2010-03-15 Alan Modra <amodra@gmail.com> 2732*75fd0b74Schristos 2733*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_has_small_toc_reloc): New function. 2734*75fd0b74Schristos * elf64-ppc.h (ppc64_elf_has_small_toc_reloc): Declare. 2735*75fd0b74Schristos 2736*75fd0b74Schristos2010-03-14 Alan Modra <amodra@gmail.com> 2737*75fd0b74Schristos 2738*75fd0b74Schristos PR ld/11378 2739*75fd0b74Schristos * elf64-ppc.h (ppc64_elf_check_init_fini): Declare. 2740*75fd0b74Schristos * elf64-ppc.c (call_check_done): Define. 2741*75fd0b74Schristos (ppc64_elf_add_symbol_hook): Substitute bfd_get_section_name macro. 2742*75fd0b74Schristos (ppc64_elf_check_relocs, ppc64_elf_size_dynamic_sections): Likewise. 2743*75fd0b74Schristos (ppc64_elf_finish_multitoc_partition): Remove unnecessary check. 2744*75fd0b74Schristos (toc_adjusting_stub_needed): Use call_check_done rather than toc_off. 2745*75fd0b74Schristos Simplify return logic. Iterate over all .init and .fini fragments 2746*75fd0b74Schristos by recursion. Set makes_toc_func_call here.. 2747*75fd0b74Schristos (ppc64_elf_next_input_section): ..rather than here. 2748*75fd0b74Schristos (check_pasted_section, ppc64_elf_check_init_fini): New functions. 2749*75fd0b74Schristos 2750*75fd0b74Schristos2010-03-13 Alan Modra <amodra@gmail.com> 2751*75fd0b74Schristos 2752*75fd0b74Schristos PR ld/11375 2753*75fd0b74Schristos * elf64-ppc.c (ppc_type_of_stub): Always set *hash to the 2754*75fd0b74Schristos function descriptor symbol if there is one, not just for plt stubs. 2755*75fd0b74Schristos (ppc64_elf_relocate_section): Use fdh on all ppc_get_stub_entry calls. 2756*75fd0b74Schristos 2757*75fd0b74Schristos2010-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> 2758*75fd0b74Schristos 2759*75fd0b74Schristos * elflink.c (bfd_elf_size_dynamic_sections): Don't emit base 2760*75fd0b74Schristos version twice. 2761*75fd0b74Schristos Skip it when constructing def.vd_next. 2762*75fd0b74Schristos 2763*75fd0b74Schristos * elf32-i386.c (TARGET_LITTLE_SYM): Redefine to 2764*75fd0b74Schristos bfd_elf32_i386_sol2_vec. 2765*75fd0b74Schristos (TARGET_LITTLE_NAME): Redefine to elf32-i386-sol2. 2766*75fd0b74Schristos (elf32_bed): Redefine to elf32_i386_sol2_bed. 2767*75fd0b74Schristos (elf_backend_want_plt_sym): Redefine to 1. 2768*75fd0b74Schristos 2769*75fd0b74Schristos * elf64-x86-64.c (TARGET_LITTLE_SYM): Redefine to 2770*75fd0b74Schristos bfd_elf64_x86_64_sol2_vec. 2771*75fd0b74Schristos (TARGET_LITTLE_NAME): Redefine to elf64-x86-64-sol2. 2772*75fd0b74Schristos (elf64_bed): Redefine to elf64_x86_64_sol2_bed. 2773*75fd0b74Schristos (elf_backend_want_plt_sym): Redefine to 1. 2774*75fd0b74Schristos 2775*75fd0b74Schristos * config.bfd (i[3-7]86-*-solaris2*): Set targ_defvec to 2776*75fd0b74Schristos bfd_elf32_i386_sol2_vec. 2777*75fd0b74Schristos Replace bfd_elf64_x86_64_vec by bfd_elf64_x86_64_sol2_vec in 2778*75fd0b74Schristos targ64_selvecs. 2779*75fd0b74Schristos (x86_64-*-solaris2*): Set targ_defvec to bfd_elf32_i386_sol2_vec. 2780*75fd0b74Schristos Replace bfd_elf64_x86_64_vec by bfd_elf64_x86_64_sol2_vec in 2781*75fd0b74Schristos targ_selvecs. 2782*75fd0b74Schristos 2783*75fd0b74Schristos * configure.in: Handle bfd_elf32_i386_sol2_vec, 2784*75fd0b74Schristos bfd_elf64_x86_64_sol2_vec. 2785*75fd0b74Schristos * configure: Regenerate. 2786*75fd0b74Schristos 2787*75fd0b74Schristos * targets.c (bfd_elf32_i386_sol2_vec): Declare. 2788*75fd0b74Schristos (bfd_elf64_x86_64_sol2_vec): Declare. 2789*75fd0b74Schristos (_bfd_target_vector): Add bfd_elf32_i386_sol2_vec, 2790*75fd0b74Schristos bfd_elf64_x86_64_sol2_vec. 2791*75fd0b74Schristos 2792*75fd0b74Schristos2010-03-04 Daniel Jacobowitz <dan@codesourcery.com> 2793*75fd0b74Schristos 2794*75fd0b74Schristos * elf32-arm.c (elf32_arm_output_arch_local_syms): Skip non-program 2795*75fd0b74Schristos sections. 2796*75fd0b74Schristos 2797*75fd0b74Schristos2010-03-04 Alan Modra <amodra@gmail.com> 2798*75fd0b74Schristos 2799*75fd0b74Schristos PR 11302 2800*75fd0b74Schristos * dwarf2.c (read_abbrevs): Return NULL on alloc failures. 2801*75fd0b74Schristos (read_attribute_value, decode_line_info): Likewise. 2802*75fd0b74Schristos (add_line_info, read_rangelist): Return FALSE on alloc failures. 2803*75fd0b74Schristos (arange_add, sort_line_sequences): Likewise. 2804*75fd0b74Schristos (find_abstract_instance_name): Handle failures from called funcs. 2805*75fd0b74Schristos (scan_unit_for_symbols, parse_comp_unit, decode_line_info): Likewise. 2806*75fd0b74Schristos (find_line): Realloc to a temp, and handle alloc fail. 2807*75fd0b74Schristos 2808*75fd0b74Schristos2010-03-03 Daniel Jacobowitz <dan@codesourcery.com> 2809*75fd0b74Schristos 2810*75fd0b74Schristos * elf32-arm.c (elf32_arm_output_arch_local_syms): Do not add 2811*75fd0b74Schristos a mapping symbol to an empty section. 2812*75fd0b74Schristos 2813*75fd0b74Schristos2010-03-02 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> 2814*75fd0b74Schristos 2815*75fd0b74Schristos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add a check of the 2816*75fd0b74Schristos return value from the call to _bfd_elf_merge_object_attributes. 2817*75fd0b74Schristos 2818*75fd0b74Schristos2010-03-02 Christophe Lyon <christophe.lyon@st.com> 2819*75fd0b74Schristos Alan Modra <amodra@gmail.com> 2820*75fd0b74Schristos 2821*75fd0b74Schristos * elf32-arm.c (a8_erratum_fix): Add st_type field to record the 2822*75fd0b74Schristos destination mode of the a8 stub. 2823*75fd0b74Schristos (elf32_arm_link_hash_table): Add top_id field. 2824*75fd0b74Schristos (elf32_arm_link_hash_table_create): Initialize top_id. 2825*75fd0b74Schristos (arm_type_of_stub): Update prototype, st_type can now be updated 2826*75fd0b74Schristos by this function. Actual destination address in case of PLT is 2827*75fd0b74Schristos computed here, to help factorizing code. 2828*75fd0b74Schristos (elf32_arm_stub_name): Update prototype, use stub_type additional 2829*75fd0b74Schristos parameter to build stub name. 2830*75fd0b74Schristos (elf32_arm_get_stub_entry): Update prototype, use stub_type 2831*75fd0b74Schristos additional parameter to build stub entry. 2832*75fd0b74Schristos (arm_build_one_stub): Use bfd_put_16/bfd_put_32 instead of 2833*75fd0b74Schristos put_thumb_insn/put_arm_insn as BE8 encoding is now handled later. 2834*75fd0b74Schristos Call elf32_arm_final_link_relocate to process all in-stub 2835*75fd0b74Schristos relocations. 2836*75fd0b74Schristos (elf32_arm_setup_section_lists): Update top_id. 2837*75fd0b74Schristos (cortex_a8_erratum_scan): Record stub destination mode. 2838*75fd0b74Schristos (elf32_arm_size_stubs): Update call to arm_type_of_stub according 2839*75fd0b74Schristos to new prototype. 2840*75fd0b74Schristos (elf32_arm_final_link_relocate): Enable processing of in-stub 2841*75fd0b74Schristos REL32 relocations. Rely on arm_type_of_stub to detect if a stub is 2842*75fd0b74Schristos needed, enabling code factorization. 2843*75fd0b74Schristos (elf32_arm_final_link): Process stub sections. 2844*75fd0b74Schristos (elf32_arm_output_map_sym): Add entry to code/data map. 2845*75fd0b74Schristos 2846*75fd0b74Schristos2010-03-01 David S. Miller <davem@davemloft.net> 2847*75fd0b74Schristos 2848*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): When STT_GNU_IFUNC and 2849*75fd0b74Schristos h->def_regular, set h->ref_regular. 2850*75fd0b74Schristos (allocate_dynrelocs): Only force output of STT_GNU_IFUNC plt entries 2851*75fd0b74Schristos and dynamic relocations if h->ref_regular. 2852*75fd0b74Schristos 2853*75fd0b74Schristos * elfxx-sparc.c (struct elf_reloc_map): Delete. 2854*75fd0b74Schristos (sparc_reloc_map): Delete. 2855*75fd0b74Schristos (_bfd_sparc_elf_reloc_type_lookup): Explicitly handle each 2856*75fd0b74Schristos relocation type in switch statements. 2857*75fd0b74Schristos 2858*75fd0b74Schristos2010-02-25 Alan Modra <amodra@gmail.com> 2859*75fd0b74Schristos 2860*75fd0b74Schristos PR ld/11304 2861*75fd0b74Schristos * elf.c (_bfd_elf_init_private_section_data): Rename need_group 2862*75fd0b74Schristos to final_link and invert. For final link allow some flags to 2863*75fd0b74Schristos differ. Don't specially allow flags to be all zero. 2864*75fd0b74Schristos 2865*75fd0b74Schristos2010-02-24 Alan Modra <amodra@gmail.com> 2866*75fd0b74Schristos 2867*75fd0b74Schristos PR binutils/10858 2868*75fd0b74Schristos * elfxx-mips.c (mips_elf_create_dynamic_relocation): Ise 2869*75fd0b74Schristos SYMBOL_REFERENCES_LOCAL to exclude entries from the dynamic symbol 2870*75fd0b74Schristos table. 2871*75fd0b74Schristos 2872*75fd0b74Schristos2010-02-23 Andrew Zabolotny <anpaza@mail.ru> 2873*75fd0b74Schristos 2874*75fd0b74Schristos PR binutils/11297 2875*75fd0b74Schristos * elf32-avr.c (elf_avr_howto_table): Add R_AVR_8. 2876*75fd0b74Schristos (avr_reloc_map): Map BFD_RELOC_8 to R_AVR_8. 2877*75fd0b74Schristos 2878*75fd0b74Schristos2010-02-22 Alan Modra <amodra@gmail.com> 2879*75fd0b74Schristos 2880*75fd0b74Schristos * reloc.c (bfd_check_overflow): When forming addrmask, shift 2881*75fd0b74Schristos fieldmask left by rightshift. 2882*75fd0b74Schristos (_bfd_relocate_contents): Likewise. Use rightshift addrmask in all 2883*75fd0b74Schristos overflow checks. 2884*75fd0b74Schristos 2885*75fd0b74Schristos2010-02-20 H.J. Lu <hongjiu.lu@intel.com> 2886*75fd0b74Schristos 2887*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): Don't check 2888*75fd0b74Schristos STT_GNU_IFUNC on large common symbol. 2889*75fd0b74Schristos 2890*75fd0b74Schristos2010-02-18 H.J. Lu <hongjiu.lu@intel.com> 2891*75fd0b74Schristos 2892*75fd0b74Schristos * elf32-i386.c (elf_i386_add_symbol_hook): Don't set 2893*75fd0b74Schristos has_ifunc_symbols if the symbol comes from a shared library. 2894*75fd0b74Schristos * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. 2895*75fd0b74Schristos * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise. 2896*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise. 2897*75fd0b74Schristos * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise. 2898*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): Likewise. 2899*75fd0b74Schristos 2900*75fd0b74Schristos2010-02-19 Alan Modra <amodra@gmail.com> 2901*75fd0b74Schristos 2902*75fd0b74Schristos * elf.c (_bfd_elf_fixup_group_sections): New function, split out from.. 2903*75fd0b74Schristos (_bfd_elf_copy_private_header_data): ..here. 2904*75fd0b74Schristos * elflink.c (_bfd_elf_size_group_sections): New function. 2905*75fd0b74Schristos (bfd_elf_size_dynamic_sections): Call it. 2906*75fd0b74Schristos * elf-bfd.h (_bfd_elf_size_group_sections): Declare. 2907*75fd0b74Schristos (_bfd_elf_fixup_group_sections): Declare. 2908*75fd0b74Schristos 2909*75fd0b74Schristos2010-02-18 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> 2910*75fd0b74Schristos 2911*75fd0b74Schristos * elf32-arm.c (elf32_arm_merge_eabi_attributes): Add support for 2912*75fd0b74Schristos merging Tag_DIV_use, Tag_MPextension_use, and 2913*75fd0b74Schristos Tag_MPextension_use_legacy tags. 2914*75fd0b74Schristos 2915*75fd0b74Schristos2010-02-18 Alan Modra <amodra@gmail.com> 2916*75fd0b74Schristos 2917*75fd0b74Schristos * elf.c (bfd_elf_set_group_contents): Revert accidental 2009-01-15 2918*75fd0b74Schristos commit. Don't write zeros for removed group members. 2919*75fd0b74Schristos (_bfd_elf_copy_private_header_data): Adjust size of group section 2920*75fd0b74Schristos when group members are removed by objcopy. 2921*75fd0b74Schristos 2922*75fd0b74Schristos2010-02-15 Dave Korn <dave.korn.cygwin@gmail.com> 2923*75fd0b74Schristos 2924*75fd0b74Schristos PR binutils/11280 2925*75fd0b74Schristos * configure.host (*-*-solaris2.11): Add host define to select 2926*75fd0b74Schristos valid default code page for windres/windmc on solaris. 2927*75fd0b74Schristos 2928*75fd0b74Schristos2010-02-15 Nick Clifton <nickc@redhat.com> 2929*75fd0b74Schristos 2930*75fd0b74Schristos * po/vi.po: Updated Vietnamese translation. 2931*75fd0b74Schristos 2932*75fd0b74Schristos2010-02-12 Daniel Gutson <dgutson@codesourcery.com> 2933*75fd0b74Schristos 2934*75fd0b74Schristos * elf32-arm.c (elf32_arm_output_arch_local_syms): add 2935*75fd0b74Schristos missing mapping symbol to data only sections. 2936*75fd0b74Schristos 2937*75fd0b74Schristos2010-02-11 David S. Miller <davem@davemloft.net> 2938*75fd0b74Schristos 2939*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): For R_SPARC_GOTDATA_OP_HIX22 2940*75fd0b74Schristos and R_SPARC_GOTDATA_OP_LOX10, only bump the GOT refcount for global 2941*75fd0b74Schristos symbols. 2942*75fd0b74Schristos (_bfd_sparc_elf_gc_sweep_hook): Likewise only decrement the GOT count for 2943*75fd0b74Schristos these relocs on global symbols. 2944*75fd0b74Schristos (gdopoff): New. 2945*75fd0b74Schristos (_bfd_sparc_elf_relocate_section): Perform GOTDATA optimizations on 2946*75fd0b74Schristos local symbol references which are not STT_GNU_IFUNC. Handle 2947*75fd0b74Schristos relocation of them like R_SPARC_HIX22 and R_SPARC_LOX10 respectively, 2948*75fd0b74Schristos and deal with negative vs. non-negative values properly. 2949*75fd0b74Schristos 2950*75fd0b74Schristos2010-02-09 Tristan Gingold <gingold@adacore.com> 2951*75fd0b74Schristos 2952*75fd0b74Schristos * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Adjust addend for 2953*75fd0b74Schristos non-external relocation. 2954*75fd0b74Schristos 2955*75fd0b74Schristos2010-02-09 Alan Modra <amodra@gmail.com> 2956*75fd0b74Schristos 2957*75fd0b74Schristos * elf64-ppc.c (merge_got_entries): Move earlier in file. 2958*75fd0b74Schristos (allocate_dynrelocs): Merge got entries here if not doing multi-toc. 2959*75fd0b74Schristos (ppc64_elf_size_dynamic_sections): Similarly merge tlsld_got. 2960*75fd0b74Schristos (ppc64_elf_layout_multitoc): Don't resize if we have already 2961*75fd0b74Schristos merged got entries. 2962*75fd0b74Schristos 2963*75fd0b74Schristos2010-02-09 Michael Holzheu <holzheu@de.ibm.com> 2964*75fd0b74Schristos 2965*75fd0b74Schristos * elf-bfd.h (elfcore_write_s390_timer, elfcore_write_s390_todcmp, 2966*75fd0b74Schristos elfcore_write_s390_todpreg, elfcore_write_s390_ctrs, 2967*75fd0b74Schristos elfcore_write_s390_prefix): New. 2968*75fd0b74Schristos * elf.c (elfcore_write_s390_timer, elfcore_write_s390_todcmp, 2969*75fd0b74Schristos elfcore_write_s390_todpreg, elfcore_write_s390_ctrs, 2970*75fd0b74Schristos elfcore_write_s390_prefix): New. 2971*75fd0b74Schristos (elfcore_grok_note): Handle NT_S390_TIMER, NT_S390_TODCMP, 2972*75fd0b74Schristos NT_S390_TODPREG, NT_S390_CTRS and NT_S390_PREFIX. 2973*75fd0b74Schristos (elfcore_write_register_note): Handle .reg-s390-timer, 2974*75fd0b74Schristos .reg-s390-todcmp, .reg-s390-todpreg, .reg-s390-ctrs, 2975*75fd0b74Schristos .reg-s390-prefix section. 2976*75fd0b74Schristos 2977*75fd0b74Schristos2010-02-09 Alan Modra <amodra@gmail.com> 2978*75fd0b74Schristos 2979*75fd0b74Schristos * elf64-ppc.c (struct got_entry): Make tls_type and is_indirect 2980*75fd0b74Schristos unsigned char. Update variables and code using them throughout file. 2981*75fd0b74Schristos (struct ppc_link_hash_entry): Likewise for tls_mask. 2982*75fd0b74Schristos 2983*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_layout_multitoc): Don't merge local got ents. 2984*75fd0b74Schristos 2985*75fd0b74Schristos * elf64-ppc.c (has_small_toc_reloc): Don't define. 2986*75fd0b74Schristos (makes_toc_func_call, call_check_in_progress): Shuffle flags. 2987*75fd0b74Schristos (struct ppc64_elf_obj_tdata): Add has_small_toc_reloc. Update 2988*75fd0b74Schristos code setting the flag. 2989*75fd0b74Schristos (ppc64_elf_next_toc_section): Group big-toc sections in 2990*75fd0b74Schristos 0x80008000 chunks. 2991*75fd0b74Schristos 2992*75fd0b74Schristos2010-02-08 David S. Miller <davem@davemloft.net> 2993*75fd0b74Schristos 2994*75fd0b74Schristos * elfxx-sparc.h (struct _bfd_sparc_elf_link_hash_table): Remove sgot, 2995*75fd0b74Schristos srelgot, splt, srelplt, and sgotplt members in favor of generic copies. 2996*75fd0b74Schristos 2997*75fd0b74Schristos * elfxx-sparc.c (create_got_section): Delete. 2998*75fd0b74Schristos (_bfd_sparc_elf_create_dynamic_sections): Don't call, the dynamic 2999*75fd0b74Schristos section creator does that work for us. Use ->elf.foo instead of 3000*75fd0b74Schristos ->foo where applicable. 3001*75fd0b74Schristos (_bfd_sparc_elf_check_relocs): Use ->elf.foo instead of ->foo 3002*75fd0b74Schristos where applicable. 3003*75fd0b74Schristos (allocate_dynrelocs): Likewise. 3004*75fd0b74Schristos (_bfd_sparc_elf_size_dynamic_sections): Likewise. 3005*75fd0b74Schristos (_bfd_sparc_elf_relocate_section): Likewise. 3006*75fd0b74Schristos (sparc_vxworks_build_plt_entry): Likewise. 3007*75fd0b74Schristos (_bfd_sparc_elf_finish_dynamic_symbol): Likewise. 3008*75fd0b74Schristos (sparc_finish_dyn): Likewise. 3009*75fd0b74Schristos (sparc_vxworks_finish_exec_plt): Likewise. 3010*75fd0b74Schristos (sparc_vxworks_finish_shared_plt): Likewise. 3011*75fd0b74Schristos (_bfd_sparc_elf_finish_dynamic_sections): Likewise. 3012*75fd0b74Schristos 3013*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Use the SYMBOL_* 3014*75fd0b74Schristos macros for visibilty and locality checks. 3015*75fd0b74Schristos (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. 3016*75fd0b74Schristos (allocate_dynrelocs): Likewise. 3017*75fd0b74Schristos (_bfd_sparc_elf_relocate_section): Likewise. 3018*75fd0b74Schristos (_bfd_sparc_elf_finish_dynamic_symbol):Likewise. 3019*75fd0b74Schristos 3020*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Remove set 3021*75fd0b74Schristos but never used local var 'dynobj'. 3022*75fd0b74Schristos 3023*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Handle 3024*75fd0b74Schristos nocopyreloc. 3025*75fd0b74Schristos 3026*75fd0b74Schristos * reloc.c (BFD_RELOC_SPARC_JMP_IREL): New. 3027*75fd0b74Schristos (BFD_RELOC_SPARC_IRELATIVE): Likewise. 3028*75fd0b74Schristos * bfd-in2.h: Regenerate. 3029*75fd0b74Schristos * libbfd.h: Regenerate. 3030*75fd0b74Schristos 3031*75fd0b74Schristos * elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Add loc_hash_table 3032*75fd0b74Schristos and loc_hash_memory. 3033*75fd0b74Schristos (_bfd_sparc_elf_link_hash_table_free): Declare. 3034*75fd0b74Schristos * elf32-sparc.c (elf32_sparc_add_symbol_hook): New. 3035*75fd0b74Schristos (elf_backend_add_symbol_hook, elf_backend_post_process_headers, 3036*75fd0b74Schristos bfd_elf32_bfd_link_hash_table_free): Define. 3037*75fd0b74Schristos * elf64-sparc.c (elf64_sparc_add_symbol_hook): Set 3038*75fd0b74Schristos has_ifunc_symbols if STT_GNU_IFUNC. 3039*75fd0b74Schristos (bfd_elf64_bfd_link_hash_table_free): Define. 3040*75fd0b74Schristos (elf_backend_post_process_headers): Define always. 3041*75fd0b74Schristos * elfxx-sparc.c (sparc_jmp_irel_howto, sparc_irelative_howto): New. 3042*75fd0b74Schristos (sparc_reloc_map): Add entries for new IFUNC relocs. 3043*75fd0b74Schristos (_bfd_sparc_elf_reloc_type_lookup): Handle new IFUNC relocs. 3044*75fd0b74Schristos (_bfd_sparc_elf_info_to_howto_ptr): Likewise. 3045*75fd0b74Schristos (elf_sparc_local_htab_hash, elf_sparc_local_htab_eq, 3046*75fd0b74Schristos elf_sparc_get_local_sym_hash): New. 3047*75fd0b74Schristos (_bfd_sparc_elf_create_dynamic_sections): Move PLT ops initialization 3048*75fd0b74Schristos from here... 3049*75fd0b74Schristos (_bfd_sparc_elf_link_hash_table_create): ... to here. Allocate 3050*75fd0b74Schristos local hash table. 3051*75fd0b74Schristos (_bfd_sparc_elf_link_hash_table_free): New. 3052*75fd0b74Schristos (create_ifunc_sections): New. 3053*75fd0b74Schristos (_bfd_sparc_elf_check_relocs): Unconditionally assign htab->elf.dynobj 3054*75fd0b74Schristos and call create_ifunc_sections(). For local STT_GNU_IFUNC symbols 3055*75fd0b74Schristos cons up a fake local hash table entry for it. Unconditionally add 3056*75fd0b74Schristos a PLT refcount for STT_GNU_IFUNC symbols when h->def_regular. Count 3057*75fd0b74Schristos dyn relocs for ifunc. 3058*75fd0b74Schristos (_bfd_sparc_elf_adjust_dynamic_symbol): Handle ifunc. 3059*75fd0b74Schristos (allocate_dynrelocs): Unconditionally emit a PLT entry when 3060*75fd0b74Schristos STT_GNU_IFUNC and h->def_regular. Count GOT dyn relocs for ifunc. 3061*75fd0b74Schristos (allocate_local_dynrelocs): New function. 3062*75fd0b74Schristos (_bfd_sparc_elf_size_dynamic_sections): Invoke it over the local hash 3063*75fd0b74Schristos table. Emit dynamic relocs to irelplt when not shared. Treat iplt 3064*75fd0b74Schristos like splt. 3065*75fd0b74Schristos (_bfd_sparc_elf_relocate_section): Handle ifunc relocations by hand. 3066*75fd0b74Schristos (_bfd_sparc_elf_finish_dynamic_symbol): Adjust for non-dynamic ifunc 3067*75fd0b74Schristos plt in iplt/irelplt. 3068*75fd0b74Schristos 3069*75fd0b74Schristos2010-02-08 Richard Sandiford <r.sandiford@uk.ibm.com> 3070*75fd0b74Schristos 3071*75fd0b74Schristos * xcofflink.c (_bfd_xcoff_bfd_final_link): When calculating 3072*75fd0b74Schristos max_contents_size, only consider sections whose contents must 3073*75fd0b74Schristos be swapped in. 3074*75fd0b74Schristos 3075*75fd0b74Schristos2010-02-09 Alan Modra <amodra@gmail.com> 3076*75fd0b74Schristos 3077*75fd0b74Schristos * elf64-ppc.c (allocate_dynrelocs): Remove unused got structs here.. 3078*75fd0b74Schristos (ppc64_elf_size_dynamic_sections): ..and here.. 3079*75fd0b74Schristos (merge_got_entries): ..rather than here. 3080*75fd0b74Schristos 3081*75fd0b74Schristos2010-02-09 Alan Modra <amodra@gmail.com> 3082*75fd0b74Schristos 3083*75fd0b74Schristos * elf64-ppc.c (struct ppc_link_hash_table): Add do_multi_toc. 3084*75fd0b74Schristos (has_small_toc_reloc): Define. 3085*75fd0b74Schristos (ppc64_elf_check_relocs): Set the above flags. 3086*75fd0b74Schristos (ppc64_elf_edit_opd): Delete obfd param. 3087*75fd0b74Schristos (ppc64_elf_tls_optimize): Likewise. 3088*75fd0b74Schristos (ppc64_elf_edit_toc): Likewise. 3089*75fd0b74Schristos (ppc64_elf_tls_setup): Likewise. Add no_multi_toc param. 3090*75fd0b74Schristos * elf64-ppc.h: Update prototypes. 3091*75fd0b74Schristos 3092*75fd0b74Schristos2010-02-08 Alan Modra <amodra@gmail.com> 3093*75fd0b74Schristos 3094*75fd0b74Schristos * section.c (struct bfd_section): Delete has_tls_reloc, 3095*75fd0b74Schristos has_tls_get_addr_call, has_gp_reloc, need_finalize_relax, reloc_done. 3096*75fd0b74Schristos Add sec_flg0 thru sec_flg5. 3097*75fd0b74Schristos (BFD_FAKE_SECTION): Update for changed flags. 3098*75fd0b74Schristos * ecoff.c (bfd_debug_section): Likewise. 3099*75fd0b74Schristos * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call): Define. 3100*75fd0b74Schristos * elf64-ppc.c (has_tls_reloc, has_tls_get_addr_call): Define. 3101*75fd0b74Schristos (has_toc_reloc, makes_toc_func_call, call_check_in_progress): Update. 3102*75fd0b74Schristos * elf32-xtensa.c (reloc_done): Define. 3103*75fd0b74Schristos * elfxx-ia64.c (skip_relax_pass_0, skip_relax_pass_1): Update. 3104*75fd0b74Schristos * bfd-in2.h: Regenerate. 3105*75fd0b74Schristos 3106*75fd0b74Schristos2010-02-08 Tristan Gingold <gingold@adacore.com> 3107*75fd0b74Schristos 3108*75fd0b74Schristos * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Set reloc.r_extern 3109*75fd0b74Schristos for non-scattered relocations. 3110*75fd0b74Schristos 3111*75fd0b74Schristos2010-02-08 Nathan Sidwell <nathan@codesourcery.com> 3112*75fd0b74Schristos 3113*75fd0b74Schristos * elf32-ppc.c (ppc_elf_begin_write_processing): Allow empty 3114*75fd0b74Schristos apuinfo sections, only scan input sections once and reuse the 3115*75fd0b74Schristos buffer. 3116*75fd0b74Schristos 3117*75fd0b74Schristos2010-02-08 Philipp Tomsich <philipp.tomsich@theobroma-systems.com> 3118*75fd0b74Schristos 3119*75fd0b74Schristos * archures.c (bfd_mach_ppc_titan): Define. 3120*75fd0b74Schristos * bfd-in2.h: Regenerate. 3121*75fd0b74Schristos * cpu-powerpc.c (bfd_powerpc_archs): Add titan entry. 3122*75fd0b74Schristos 3123*75fd0b74Schristos2010-02-08 Alan Modra <amodra@gmail.com> 3124*75fd0b74Schristos 3125*75fd0b74Schristos * elf32-ppc.c (ppc_elf_check_relocs): Remove dead ifunc code. 3126*75fd0b74Schristos 3127*75fd0b74Schristos2010-02-05 Sterling Augustine <sterling@tensilica.com> 3128*75fd0b74Schristos 3129*75fd0b74Schristos * elf.c (assign_file_positions_for_load_sections) Update lma of 3130*75fd0b74Schristos section if necessary. Fixes Bugzilla 11219. 3131*75fd0b74Schristos 3132*75fd0b74Schristos2010-02-05 H.J. Lu <hongjiu.lu@intel.com> 3133*75fd0b74Schristos 3134*75fd0b74Schristos * elf32-i386.c: Remove trailing white spaces. 3135*75fd0b74Schristos * elf64-x86-64.c: Likewise. 3136*75fd0b74Schristos 3137*75fd0b74Schristos2010-02-03 Nick Clifton <nickc@redhat.com> 3138*75fd0b74Schristos 3139*75fd0b74Schristos * elf-bfd.h (emum elf_object_id): Rename to elf_target_id. Add 3140*75fd0b74Schristos entries for other architectures. 3141*75fd0b74Schristos (struct elf_link_hash_table): Add hash_table_id field. 3142*75fd0b74Schristos (elf_hash_table_id): New accessor macro. 3143*75fd0b74Schristos * elflink.c (_bfd_elf_link_hash_table_init): Add target_id 3144*75fd0b74Schristos parameter. 3145*75fd0b74Schristos * elf-m10300.c (elf32_mn10300_hash_table): Check table id before 3146*75fd0b74Schristos returning cast pointer. 3147*75fd0b74Schristos (elf32_mn10300_link_hash_table_create): Identify new table as 3148*75fd0b74Schristos containing MN10300 extensions. 3149*75fd0b74Schristos (mn10300_elf_relax_section): Check pointer returned by 3150*75fd0b74Schristos elf32_mn10300_hash_table. 3151*75fd0b74Schristos * elf32-arm.c: Likewise, except using ARM extensions. 3152*75fd0b74Schristos * elf32-avr.c: Likewise, except using AVR extensions. 3153*75fd0b74Schristos * elf32-bfin.c: Likewise, except using BFIN extensions. 3154*75fd0b74Schristos * elf32-cris.c: Likewise, except using CRIS extensions. 3155*75fd0b74Schristos * elf32-frv.c: Likewise, except using FRV extensions. 3156*75fd0b74Schristos * elf32-hppa.c: Likewise, except using HPPA32 extensions. 3157*75fd0b74Schristos * elf32-i386.c: Likewise, except using I386 extensions. 3158*75fd0b74Schristos * elf32-lm32.c: Likewise, except using LM32 extensions. 3159*75fd0b74Schristos * elf32-m32r.c: Likewise, except using M32RM extensions. 3160*75fd0b74Schristos * elf32-m68hc11.c: Likewise, except using M68HC11 extensions. 3161*75fd0b74Schristos * elf32-m68hc1x.c: Likewise, except using M68HC11 extensions. 3162*75fd0b74Schristos * elf32-m68hc1x.h: Likewise, except using M68HC11 extensions. 3163*75fd0b74Schristos * elf32-m68k.c: Likewise, except using M68K extensions. 3164*75fd0b74Schristos * elf32-microblaze.c: Likewise, except using MICROBLAZE extensions. 3165*75fd0b74Schristos * elf32-ppc.c: Likewise, except using PPC32 extensions. 3166*75fd0b74Schristos * elf32-s390.c: Likewise, except using S390 extensions. 3167*75fd0b74Schristos * elf32-sh.c: Likewise, except using SH extensions. 3168*75fd0b74Schristos * elf32-spu.c: Likewise, except using SPU extensions. 3169*75fd0b74Schristos * elf32-xtensa.c: Likewise, except using XTENSA extensions. 3170*75fd0b74Schristos * elf64-alpha.c: Likewise, except using ALPHA extensions. 3171*75fd0b74Schristos * elf64-hppa.c: Likewise, except using HPPA64 extensions. 3172*75fd0b74Schristos * elf64-ppc.c: Likewise, except using PPC64 extensions. 3173*75fd0b74Schristos * elf64-s390.c: Likewise, except using S390 extensions. 3174*75fd0b74Schristos * elf64-x86-64.c: Likewise, except using X86_64 extensions. 3175*75fd0b74Schristos * elfxx-ia64.c: Likewise, except using IA64 extensions. 3176*75fd0b74Schristos * elfxx-mips.c: Likewise, except using MIPS extensions. 3177*75fd0b74Schristos * elfxx-sparc.c: Likewise, except using SPARC extensions. 3178*75fd0b74Schristos * elfxx-sparc.h: Likewise, except using SPARC extensions. 3179*75fd0b74Schristos * elf32-cr16.c (struct elf32_cr16_link_hash_table): Delete 3180*75fd0b74Schristos redundant structure. 3181*75fd0b74Schristos (elf32_cr16_hash_table): Delete unused macro. 3182*75fd0b74Schristos (elf32_cr16_link_hash_traverse): Delete unused macro. 3183*75fd0b74Schristos * elf32-score.c: Likewise. 3184*75fd0b74Schristos * elf32-score7.c: Likewise. 3185*75fd0b74Schristos * elf32-vax.c: Likewise. 3186*75fd0b74Schristos * elf64-sh64.c: Likewise. 3187*75fd0b74Schristos 3188*75fd0b74Schristos2010-02-03 Alan Modra <amodra@gmail.com> 3189*75fd0b74Schristos 3190*75fd0b74Schristos * elf64-ppc.c (struct plt_entry): Move earlier in file. 3191*75fd0b74Schristos (struct got_entry): Likewise. Add is_indirect and got.ent fields. 3192*75fd0b74Schristos (struct ppc64_elf_obj_tdata): Change tlsld_got to be a struct got_entry. 3193*75fd0b74Schristos Update all uses. 3194*75fd0b74Schristos (struct ppc_link_hash_table): Add got_reli_size and second_toc_pass. 3195*75fd0b74Schristos Remove no_multi_toc. 3196*75fd0b74Schristos (update_local_sym_info, ppc64_elf_check_relocs): Clear is_indirect 3197*75fd0b74Schristos when allocating a new struct got_entry. 3198*75fd0b74Schristos (allocate_got): New function, extracted from.. 3199*75fd0b74Schristos (allocate_dynrelocs): ..here. Abort on got entry in non-ppc64 bfd. 3200*75fd0b74Schristos (ppc64_elf_size_dynamic_sections): Track got relocs allocated in 3201*75fd0b74Schristos .reliplt by got_reli_size. Set owner on ppc64_tlsld_got entries. 3202*75fd0b74Schristos (ppc64_elf_setup_section_lists): Remove output_bfd param and 3203*75fd0b74Schristos no_multi_toc, add add_stub_section and layout_sections_again. Stash 3204*75fd0b74Schristos new params in htab. Extract some code to.. 3205*75fd0b74Schristos (ppc64_elf_start_multitoc_partition): ..here. New function. 3206*75fd0b74Schristos (ppc64_elf_next_toc_section): Check for linker script errors. Handle 3207*75fd0b74Schristos second pass toc scan. 3208*75fd0b74Schristos (merge_got_entries, merge_global_got, reallocate_got): New functions. 3209*75fd0b74Schristos (ppc64_elf_reinit_toc): Rename to.. 3210*75fd0b74Schristos (ppc64_elf_finish_multitoc_partition): ..this. 3211*75fd0b74Schristos (ppc64_elf_layout_multitoc): New function. 3212*75fd0b74Schristos (ppc64_elf_size_stubs): Delete output_bfd, add_stub_section and 3213*75fd0b74Schristos layout_sections_again params. 3214*75fd0b74Schristos (ppc64_elf_relocate_section): Handle indirect got entries. 3215*75fd0b74Schristos * elf64-ppc.h: Update prototypes. Declare new functions. 3216*75fd0b74Schristos 3217*75fd0b74Schristos2010-02-02 H.J. Lu <hongjiu.lu@intel.com> 3218*75fd0b74Schristos 3219*75fd0b74Schristos * elf-bfd.h (elfcore_write_xstatereg): New. 3220*75fd0b74Schristos 3221*75fd0b74Schristos * elf.c (elfcore_grok_xstatereg): New. 3222*75fd0b74Schristos (elfcore_write_xstatereg): Likewise. 3223*75fd0b74Schristos (elfcore_grok_note): Handle NT_X86_XSTATE. 3224*75fd0b74Schristos (elfcore_write_register_note): Handle .reg-xstate section. 3225*75fd0b74Schristos 3226*75fd0b74Schristos2010-02-01 Tristan Gingold <gingold@adacore.com> 3227*75fd0b74Schristos 3228*75fd0b74Schristos * som.c (som_write_ar_hdr): Define this macro. 3229*75fd0b74Schristos 3230*75fd0b74Schristos2010-01-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 3231*75fd0b74Schristos 3232*75fd0b74Schristos * elf32-hppa.c (final_link_relocate): Convert R_PARISC_TLS_GD21L, 3233*75fd0b74Schristos R_PARISC_TLS_LDM21L and R_PARISC_TLS_IE21L relocations that use the 3234*75fd0b74Schristos linkage table pointer to use the global table pointer if not doing 3235*75fd0b74Schristos a shared link. 3236*75fd0b74Schristos 3237*75fd0b74Schristos2010-01-29 Joel Brobecker <brobecker@adacore.com> 3238*75fd0b74Schristos 3239*75fd0b74Schristos * elf.c (elfcore_grok_lwpstatus): Do not overwrite the core signal 3240*75fd0b74Schristos if it has already been set. 3241*75fd0b74Schristos 3242*75fd0b74Schristos2010-01-27 Tristan Gingold <gingold@adacore.com> 3243*75fd0b74Schristos 3244*75fd0b74Schristos * vms.h: Remove trailing spaces. 3245*75fd0b74Schristos (struct hdr_struct): Remove unused hdr_c_cpr field. 3246*75fd0b74Schristos (enum file_format_enum): Add comments. 3247*75fd0b74Schristos * vms.c (vms_bfd_print_private_bfd_data): New function that 3248*75fd0b74Schristos replaces the macro. 3249*75fd0b74Schristos Remove trailing spaces. 3250*75fd0b74Schristos * vms-misc.c: Improve comments. 3251*75fd0b74Schristos (_bfd_vms_get_object_record): Also handle files without pads. 3252*75fd0b74Schristos * vms-hdr.c (_bfd_vms_write_dbg): Fix format string. 3253*75fd0b74Schristos * vms-gsd.c (struct flagdescstruct): Make name field const. 3254*75fd0b74Schristos (gsyflagdesc): Fix typo. 3255*75fd0b74Schristos 3256*75fd0b74Schristos2010-01-27 Alan Modra <amodra@gmail.com> 3257*75fd0b74Schristos 3258*75fd0b74Schristos PR ld/11217 3259*75fd0b74Schristos * elf64-ppc.c (struct ppc_link_hash_table): Add toc_bfd, toc_first_sec. 3260*75fd0b74Schristos (ppc64_elf_setup_section_lists): Init them. 3261*75fd0b74Schristos (ppc64_elf_next_toc_section): Don't partition multi-toc between .got 3262*75fd0b74Schristos and .toc on the same input file. 3263*75fd0b74Schristos (ppc64_elf_relocate_section): Correct GOT entry offset. 3264*75fd0b74Schristos 3265*75fd0b74Schristos2010-01-26 Tristan Gingold <gingold@adacore.com> 3266*75fd0b74Schristos 3267*75fd0b74Schristos * targets.c (BFD_JUMP_TABLE_ARCHIVE): Add initializer for write_ar_hdr. 3268*75fd0b74Schristos (bfd_target): Add _bfd_write_ar_hdr_fn field. 3269*75fd0b74Schristos * archive.c (is_bsd44_extended_name): New macro. 3270*75fd0b74Schristos (_bfd_generic_read_ar_hdr_mag): Use it. Add extra_size. 3271*75fd0b74Schristos (bfd_slurp_armap): Also check for "__.SYMDEF" as a BSD4.4 extended 3272*75fd0b74Schristos name. 3273*75fd0b74Schristos (_bfd_archive_bsd44_construct_extended_name_table): New function. 3274*75fd0b74Schristos (_bfd_generic_write_ar_hdr): Ditto. 3275*75fd0b74Schristos (_bfd_bsd44_write_ar_hdr): Ditto. 3276*75fd0b74Schristos (_bfd_write_archive_contents): Call _bfd_write_ar_hdr. 3277*75fd0b74Schristos (bsd_write_armap): Adjust firstreal computation. 3278*75fd0b74Schristos * libbfd-in.h (struct areltdata): Add extra_size field. 3279*75fd0b74Schristos (_bfd_generic_write_ar_hdr): Add prototype. 3280*75fd0b74Schristos (_bfd_bsd44_write_ar_hdr): Ditto. 3281*75fd0b74Schristos (_bfd_write_ar_hdr): Define. 3282*75fd0b74Schristos (_bfd_noarchive_write_ar_hdr): Ditto. 3283*75fd0b74Schristos (_bfd_archive_bsd_write_ar_hdr): Ditto. 3284*75fd0b74Schristos (_bfd_archive_coff_write_ar_hdr): Ditto. 3285*75fd0b74Schristos (_bfd_archive_bsd44_slurp_armap): Ditto. 3286*75fd0b74Schristos (_bfd_archive_bsd44_slurp_extended_name_table): Ditto. 3287*75fd0b74Schristos (_bfd_archive_bsd44_construct_extended_name_table): New prototype. 3288*75fd0b74Schristos (_bfd_archive_bsd44_truncate_arname): Ditto. 3289*75fd0b74Schristos (_bfd_archive_bsd44_write_armap): Ditto. 3290*75fd0b74Schristos (_bfd_archive_bsd44_read_ar_hdr): Ditto. 3291*75fd0b74Schristos (_bfd_archive_bsd44_write_ar_hdr): Ditto. 3292*75fd0b74Schristos (_bfd_archive_bsd44_openr_next_archived_file): Ditto. 3293*75fd0b74Schristos (_bfd_archive_bsd44_get_elt_at_index): Ditto. 3294*75fd0b74Schristos (_bfd_archive_bsd44_generic_stat_arch_elt): Ditto. 3295*75fd0b74Schristos (_bfd_archive_bsd44_update_armap_timestamp): Ditto. 3296*75fd0b74Schristos * libbfd.h: Regenerate. 3297*75fd0b74Schristos * oasys.c (oasys_write_ar_hdr): Define. 3298*75fd0b74Schristos * libecoff.h (_bfd_ecoff_write_ar_hdr): Define. 3299*75fd0b74Schristos * ieee.c (ieee_write_ar_hdr): Define. 3300*75fd0b74Schristos * elf64-mips.c (bfd_elf64_archive_write_ar_hdr): Define. 3301*75fd0b74Schristos * coff-rs6000.c (rs6000coff_vec): Adjust for write_ar_hdr field. 3302*75fd0b74Schristos (bfd_pmac_xcoff_backend_data): Ditto. 3303*75fd0b74Schristos * coff64-rs6000.c (rs6000coff64_vec): Ditto. 3304*75fd0b74Schristos (bfd_xcoff_aix5_backend_data): Ditto. 3305*75fd0b74Schristos * coff-alpha.c (alpha_ecoff_write_ar_hdr): Define. 3306*75fd0b74Schristos * aout-target.h (MY_write_ar_hdr): Define it if not defined. 3307*75fd0b74Schristos * aout-tic30.c (MY_write_ar_hdr): Ditto. 3308*75fd0b74Schristos * mach-o-target.c (TARGET_NAME): Use _bfd_archive_bsd44 archive. 3309*75fd0b74Schristos (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr) 3310*75fd0b74Schristos (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table) 3311*75fd0b74Schristos (bfd_mach_o_construct_extended_name_table) 3312*75fd0b74Schristos (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap) 3313*75fd0b74Schristos (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt) 3314*75fd0b74Schristos (bfd_mach_o_update_armap_timestamp): Moved to mach-o.c 3315*75fd0b74Schristos * mach-o.c (bfd_mach_o_mkarchive, bfd_mach_o_read_ar_hdr) 3316*75fd0b74Schristos (bfd_mach_o_slurp_armap, bfd_mach_o_slurp_extended_name_table) 3317*75fd0b74Schristos (bfd_mach_o_construct_extended_name_table) 3318*75fd0b74Schristos (bfd_mach_o_truncate_arname, bfd_mach_o_write_armap) 3319*75fd0b74Schristos (bfd_mach_o_get_elt_at_index, bfd_mach_o_generic_stat_arch_elt) 3320*75fd0b74Schristos (bfd_mach_o_update_armap_timestamp): Moved from mach-o-target.c 3321*75fd0b74Schristos * bfd-in2.h: Regenerate. 3322*75fd0b74Schristos 3323*75fd0b74Schristos2010-01-26 Alan Modra <amodra@gmail.com> 3324*75fd0b74Schristos H.J. Lu <hongjiu.lu@intel.com> 3325*75fd0b74Schristos 3326*75fd0b74Schristos PR ld/11218 3327*75fd0b74Schristos * elflink.c (elf_link_output_extsym): Do not ignore undefined 3328*75fd0b74Schristos symbols with ref_regular set when gc_sections is active. 3329*75fd0b74Schristos 3330*75fd0b74Schristos2010-01-25 Alan Modra <amodra@gmail.com> 3331*75fd0b74Schristos 3332*75fd0b74Schristos PR ld/11217 3333*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_tls_optimize): Optimize tls sequences 3334*75fd0b74Schristos with relocations against undefined weak symbols. 3335*75fd0b74Schristos (ppc64_elf_relocate_section): Don't optimize calls to undefined 3336*75fd0b74Schristos weak functions if the symbol is dynamic. 3337*75fd0b74Schristos (ppc64_elf_relocate_section): Edit tprel tls sequences. 3338*75fd0b74Schristos * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 3339*75fd0b74Schristos (_bfd_elf_ppc_at_tprel_transform): New function. 3340*75fd0b74Schristos * bfd-in.h (_bfd_elf_ppc_at_tprel_transform): Declare. 3341*75fd0b74Schristos * bfd-in2.h: Regenerate. 3342*75fd0b74Schristos 3343*75fd0b74Schristos2010-01-23 Richard Sandiford <r.sandiford@uk.ibm.com> 3344*75fd0b74Schristos 3345*75fd0b74Schristos * coff-rs6000.c (xcoff_howto_table): Change size to 0 and bitsize to 1. 3346*75fd0b74Schristos (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_NONE. 3347*75fd0b74Schristos * coff64-rs6000.c (xcoff64_howto_table): Change size to 0 and 3348*75fd0b74Schristos bitsize to 1. 3349*75fd0b74Schristos (xcoff64_reloc_type_lookup): Handle BFD_RELOC_NONE. 3350*75fd0b74Schristos 3351*75fd0b74Schristos2010-01-21 Nick Clifton <nickc@redhat.com> 3352*75fd0b74Schristos 3353*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Look up name of 3354*75fd0b74Schristos undefined symbol both before and after versioning has been 3355*75fd0b74Schristos applied. Do not bother with symbols that are weakly undefined. 3356*75fd0b74Schristos 3357*75fd0b74Schristos2010-01-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> 3358*75fd0b74Schristos 3359*75fd0b74Schristos * elf32-s390.c (elf32_s390_merge_private_bfd_data): New function. 3360*75fd0b74Schristos (bfd_elf32_bfd_merge_private_bfd_data): New macro definition. 3361*75fd0b74Schristos 3362*75fd0b74Schristos2010-01-19 Cary Coutant <ccoutant@google.com> 3363*75fd0b74Schristos 3364*75fd0b74Schristos * dwarf2.c (read_attribute_value): Add DW_FORM_ref_sig8. 3365*75fd0b74Schristos 3366*75fd0b74Schristos2010-01-19 Daisuke Hatayama <d.hatayama@jp.fujitsu.com> 3367*75fd0b74Schristos Alan Modra <amodra@gmail.com> 3368*75fd0b74Schristos 3369*75fd0b74Schristos * elfcode.h (elf_swap_ehdr_out): Handle e_phnum > 0xffff. 3370*75fd0b74Schristos (elf_object_p): Read e_phnum extension. 3371*75fd0b74Schristos (elf_write_shdrs_and_ehdr): Write e_phnum extension. 3372*75fd0b74Schristos * elfcore.h (elf_core_file_p): Read e_phnum extension. Sanity check 3373*75fd0b74Schristos that we can read last program header. 3374*75fd0b74Schristos 3375*75fd0b74Schristos2010-01-19 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> 3376*75fd0b74Schristos 3377*75fd0b74Schristos * elf32-arm.c (elf32_arm_howto_table_1): Correct bitsize of 3378*75fd0b74Schristos R_ARM_THM_CALL entry. 3379*75fd0b74Schristos (elf32_arm_final_link_relocate): Correct calculation of 3380*75fd0b74Schristos reloc_signed_max when doing a R_ARM_THM_CALL, R_ARM_THM_XPC22, 3381*75fd0b74Schristos or R_ARM_THM_JUMP24 relocation. 3382*75fd0b74Schristos 3383*75fd0b74Schristos2010-01-18 Alan Modra <amodra@gmail.com> 3384*75fd0b74Schristos 3385*75fd0b74Schristos PR 11168 3386*75fd0b74Schristos * coffcode.h (coff_compute_section_file_positions): Move Rs6000COFF_C 3387*75fd0b74Schristos block past vars in COFF_IMAGE_WITH_PE block. Report error on more 3388*75fd0b74Schristos than 32k sections. 3389*75fd0b74Schristos 3390*75fd0b74Schristos2010-01-15 Jan Kratochvil <jan.kratochvil@redhat.com> 3391*75fd0b74Schristos 3392*75fd0b74Schristos Fix compilation warning on gcc-3.4. 3393*75fd0b74Schristos * vms-tir.c (start_etir_record, sto_imm): Rename the prototype 3394*75fd0b74Schristos parameter index to sec_index according to the function definition. 3395*75fd0b74Schristos 3396*75fd0b74Schristos2010-01-13 Chao-ying Fu <fu@mips.com> 3397*75fd0b74Schristos 3398*75fd0b74Schristos * elfxx-mips.c (JR_TO_B_P): New define to transform JR to B. 3399*75fd0b74Schristos It is true for all CPUs. 3400*75fd0b74Schristos (jal_reloc_p): New function. 3401*75fd0b74Schristos (mips_elf_calculate_relocation): Rename require_jalxp to 3402*75fd0b74Schristos cross_mode_jump_p. 3403*75fd0b74Schristos Update comment for CROSS_MODE_JUMP_P. 3404*75fd0b74Schristos Set up cross_mode_jump_p based on the mode change. 3405*75fd0b74Schristos (mips_elf_perform_relocation): Rename require_jalx to cross_mode_jump_p. 3406*75fd0b74Schristos Update comment for CROSS_MODE_JUMP_P. 3407*75fd0b74Schristos Test cross_mode_jump_p and jal_reloc_p to turn jal to jalx. 3408*75fd0b74Schristos Use !cross_mode_jump_p to guard conversion. 3409*75fd0b74Schristos Convert "jr t9" to "b", if possible. 3410*75fd0b74Schristos (_bfd_mips_elf_relocate_section): Rename require_jalx to 3411*75fd0b74Schristos cross_mode_jump_p. 3412*75fd0b74Schristos Pass &cross_mode_jump_p to call mips_elf_calculate_relocation. 3413*75fd0b74Schristos Pass cross_mode_jump_p to call mips_elf_perform_relocation. 3414*75fd0b74Schristos 3415*75fd0b74Schristos2010-01-13 Nick Clifton <nickc@redhat.com> 3416*75fd0b74Schristos 3417*75fd0b74Schristos * cpu-m32c.c (m32c_scan): New function. Ensures that a scan for 3418*75fd0b74Schristos "m32c" returns the m32c arch_info_struct and not the m16c 3419*75fd0b74Schristos arch_info_struct. 3420*75fd0b74Schristos (arch_info_struct): Use the new scan function. 3421*75fd0b74Schristos (bfd_m32c_arch): Likewise. 3422*75fd0b74Schristos 3423*75fd0b74Schristos2010-01-13 Tristan Gingold <gingold@adacore.com> 3424*75fd0b74Schristos 3425*75fd0b74Schristos * config.bfd: Remove duplicated target vector for i386-*-darwin. 3426*75fd0b74Schristos Appends new arch instead of overriding. 3427*75fd0b74Schristos Use mach_o_x86_64_vec for x86_64-*-darwin. 3428*75fd0b74Schristos * configure.in: Add mach_o_x86_64_vec. 3429*75fd0b74Schristos * configure: Regenerate. 3430*75fd0b74Schristos * targets.c: Declare mach_o_x86_64_vec, add it to _bfd_target_vector. 3431*75fd0b74Schristos * Makefile.am (BFD64_BACKENDS): Add mach-o-x86-64.lo 3432*75fd0b74Schristos (BFD64_BACKENDS_CFILES): Add mach-o-x86-64.c 3433*75fd0b74Schristos * Makefile.in: Regenerate. 3434*75fd0b74Schristos * mach-o-x86-64.c: New file. 3435*75fd0b74Schristos 3436*75fd0b74Schristos2010-01-13 Tristan Gingold <gingold@adacore.com> 3437*75fd0b74Schristos 3438*75fd0b74Schristos * reloc.c: Add MACH_O_X86_64 relocations. 3439*75fd0b74Schristos * bfd-in2.h: Regenerate. 3440*75fd0b74Schristos * libbfd.h: Regenerate. 3441*75fd0b74Schristos 3442*75fd0b74Schristos2010-01-13 Tristan Gingold <gingold@adacore.com> 3443*75fd0b74Schristos 3444*75fd0b74Schristos * archive.c (normalize): Use lbasename. 3445*75fd0b74Schristos (bfd_bsd_truncate_arname): Ditto. 3446*75fd0b74Schristos (bfd_gnu_truncate_arname): Ditto. 3447*75fd0b74Schristos 3448*75fd0b74Schristos2010-01-12 Tristan Gingold <gingold@adacore.com> 3449*75fd0b74Schristos 3450*75fd0b74Schristos * makefile.vms (CFLAGS): Turns warnings into informational messages. 3451*75fd0b74Schristos 3452*75fd0b74Schristos2010-01-11 Tristan Gingold <gingold@adacore.com> 3453*75fd0b74Schristos 3454*75fd0b74Schristos * mach-o.h: Add x86-64 relocation types. 3455*75fd0b74Schristos 3456*75fd0b74Schristos2010-01-11 Tristan Gingold <gingold@adacore.com> 3457*75fd0b74Schristos 3458*75fd0b74Schristos * mach-o.h (bfd_mach_o_backend_data): Add arch field. 3459*75fd0b74Schristos (bfd_mach_o_set_arch_mach): New prototype. 3460*75fd0b74Schristos * mach-o.c (bfd_mach_o_mkobject): Define with bfd_mach_o_gen_mkobject. 3461*75fd0b74Schristos (bfd_mach_o_set_arch_mach): New function. 3462*75fd0b74Schristos (bfd_mach_o_gen_mkobject): New function. 3463*75fd0b74Schristos Set TARGET_ARCHITECTURE for the generic back-ends. 3464*75fd0b74Schristos * mach-o-target.c (bfd_mach_o_set_arch_mach): Remove define. 3465*75fd0b74Schristos Check that TARGET_ARCHITECTURE is defined. 3466*75fd0b74Schristos Add TARGET_ARCHITECTURE in TARGET_NAME_BACKEND structure. 3467*75fd0b74Schristos * mach-o-i386.c (TARGET_ARCHITECTURE): Define. 3468*75fd0b74Schristos 3469*75fd0b74Schristos2010-01-11 Tristan Gingold <gingold@adacore.com> 3470*75fd0b74Schristos 3471*75fd0b74Schristos * archive.c (bfd_slurp_armap): Also check for Mach-O sorted armap. 3472*75fd0b74Schristos 3473*75fd0b74Schristos2010-01-11 Nick Clifton <nickc@redhat.com> 3474*75fd0b74Schristos 3475*75fd0b74Schristos * elf32-v850.c (v850_elf_perform_relocation): Fix overflow 3476*75fd0b74Schristos handling of R_V850_HI16_S relocation. 3477*75fd0b74Schristos 3478*75fd0b74Schristos2010-01-11 Alan Modra <amodra@gmail.com> 3479*75fd0b74Schristos 3480*75fd0b74Schristos PR 11103 3481*75fd0b74Schristos * dwarf1.c (parse_die): Correct FORM_STRING data pointer increment. 3482*75fd0b74Schristos 3483*75fd0b74Schristos2010-01-11 Alan Modra <amodra@gmail.com> 3484*75fd0b74Schristos 3485*75fd0b74Schristos PR 6832 3486*75fd0b74Schristos * dwarf2.c (struct comp_unit): Add sec_info_ptr. 3487*75fd0b74Schristos (find_abstract_instance_name): Use it. 3488*75fd0b74Schristos (parse_comp_unit): Set it. 3489*75fd0b74Schristos 3490*75fd0b74Schristos2010-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 3491*75fd0b74Schristos 3492*75fd0b74Schristos * Makefile.in: Regenerate. 3493*75fd0b74Schristos * configure: Regenerate. 3494*75fd0b74Schristos 3495*75fd0b74Schristos2010-01-08 Tristan Gingold <gingold@adacore.com> 3496*75fd0b74Schristos 3497*75fd0b74Schristos * archive.c: Remove bfd_special_undocumented_glue. 3498*75fd0b74Schristos 3499*75fd0b74Schristos2010-01-08 Alan Modra <amodra@gmail.com> 3500*75fd0b74Schristos 3501*75fd0b74Schristos PR ld/11133 3502*75fd0b74Schristos * elf32-cr16.c (elf32_cr16_gc_mark_hook): Call _bfd_elf_gc_mark_hook. 3503*75fd0b74Schristos * elf32-microblaze.c (microblaze_elf_gc_mark_hook): Likewise. 3504*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise. 3505*75fd0b74Schristos 3506*75fd0b74Schristos2010-01-07 H.J. Lu <hongjiu.lu@intel.com> 3507*75fd0b74Schristos 3508*75fd0b74Schristos PR ld/11138 3509*75fd0b74Schristos * elflink.c (elf_link_check_versioned_symbol): Don't abort if 3510*75fd0b74Schristos a symbol referenced by DSO is is defined in a non-shared object 3511*75fd0b74Schristos and forced local. 3512*75fd0b74Schristos 3513*75fd0b74Schristos2010-01-07 H.J. Lu <hongjiu.lu@intel.com> 3514*75fd0b74Schristos 3515*75fd0b74Schristos PR ld/11133 3516*75fd0b74Schristos * elflink.c (_bfd_elf_gc_mark_hook): Check section XXX for 3517*75fd0b74Schristos undefined __start_XXX/__stop_XXX in all input files and set 3518*75fd0b74Schristos SEC_KEEP. 3519*75fd0b74Schristos 3520*75fd0b74Schristos2010-01-07 H.J. Lu <hongjiu.lu@intel.com> 3521*75fd0b74Schristos 3522*75fd0b74Schristos PR ld/11143 3523*75fd0b74Schristos * elflink.c (elf_gc_sweep): Keep SHT_NOTE section. 3524*75fd0b74Schristos 3525*75fd0b74Schristos2010-01-04 Daniel Gutson <dgutson@codesourcery.com> 3526*75fd0b74Schristos 3527*75fd0b74Schristos * bfd.m4 (BFD_HAVE_SYS_PROCFS_TYPE): Define _STRUCTURE_PROC 3528*75fd0b74Schristos before including procfs.h. 3529*75fd0b74Schristos (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Likewise. 3530*75fd0b74Schristos * configure.in: Added autoconf probe for the pr_fpreg member. 3531*75fd0b74Schristos * configure: Regenerated. 3532*75fd0b74Schristos * config.in: Regenerated. 3533*75fd0b74Schristos * elf.c: Define _STRUCTURE_PROC before including procfs.h. 3534*75fd0b74Schristos 3535*75fd0b74Schristos2010-01-04 Joel Brobecker <brobecker@adacore.com> 3536*75fd0b74Schristos 3537*75fd0b74Schristos Fix -Wshadow warnings in dwarf2.c (seen on alpha-tru64). 3538*75fd0b74Schristos * dwarf2.c (concat_filename): Rename dirname with dir_name 3539*75fd0b74Schristos to void shadowing the dirname function. 3540*75fd0b74Schristos Rename subdirname with subdir_name to stay consistent with 3541*75fd0b74Schristos the new dir_name variable name. 3542*75fd0b74Schristos 3543*75fd0b74Schristos2010-01-04 Edmar Wienskoski <edmar@freescale.com> 3544*75fd0b74Schristos 3545*75fd0b74Schristos * archures.c: Add bfd_mach_ppc_e500mc64. 3546*75fd0b74Schristos * bfd-in2.h: Regenerate. 3547*75fd0b74Schristos * cpu-powerpc.c (bfd_powerpc_archs): Add entry for 3548*75fd0b74Schristos bfd_mach_ppc_e500mc64. 3549*75fd0b74Schristos 3550*75fd0b74Schristos2010-01-01 Joel Brobecker <brobecker@adacore.com> 3551*75fd0b74Schristos 3552*75fd0b74Schristos Fix -Wshadow warnings (seen on ppc-aix) 3553*75fd0b74Schristos * xcofflink.c: Replace finfo by flinfo throughout. 3554*75fd0b74Schristos 3555*75fd0b74SchristosFor older changes see ChangeLog-2009 3556*75fd0b74Schristos 3557*75fd0b74SchristosCopyright (C) 2010 Free Software Foundation, Inc. 3558*75fd0b74Schristos 3559*75fd0b74SchristosCopying and distribution of this file, with or without modification, 3560*75fd0b74Schristosare permitted in any medium without royalty provided the copyright 3561*75fd0b74Schristosnotice and this notice are preserved. 3562*75fd0b74Schristos 3563*75fd0b74SchristosLocal Variables: 3564*75fd0b74Schristosmode: change-log 3565*75fd0b74Schristosleft-margin: 8 3566*75fd0b74Schristosfill-column: 74 3567*75fd0b74Schristosversion-control: never 3568*75fd0b74SchristosEnd: 3569