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