1*75fd0b74Schristos2005-12-31 Valeriy E. Ushakov <uwe@NetBSD.org> 2*75fd0b74Schristos Kaz Kojima <kkojima@rr.iij4u.or.jp> 3*75fd0b74Schristos 4*75fd0b74Schristos * elf32-sh.c (sh_elf_relocate_section): Don't reset relocation 5*75fd0b74Schristos for R_SH_REL32 in shared objects if the symbol is locally called. 6*75fd0b74Schristos 7*75fd0b74Schristos2005-12-31 Alan Modra <amodra@bigpond.net.au> 8*75fd0b74Schristos 9*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_relocate_section): Adjust relocs against 10*75fd0b74Schristos opd section sym when opd has been edited. Use correct addend 11*75fd0b74Schristos when determining branch 'y' bit and branch overflow. Adjust and 12*75fd0b74Schristos save opd relocs for ld -r too. 13*75fd0b74Schristos 14*75fd0b74Schristos2005-12-30 Eric Christopher <echristo@apple.com> 15*75fd0b74Schristos 16*75fd0b74Schristos * elfxx-mips.c (mips_elf_record_global_got_symbol): Add assert 17*75fd0b74Schristos to verify we have a got. 18*75fd0b74Schristos (_bfd_mips_elf_check_relocs): Add R_MIPS_TLS_GOTTPREL to relocs 19*75fd0b74Schristos needing a GOT. 20*75fd0b74Schristos 21*75fd0b74Schristos2005-12-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 22*75fd0b74Schristos 23*75fd0b74Schristos * configure.host (hppa*64*-*-hpux*): Set host64 to true. 24*75fd0b74Schristos 25*75fd0b74Schristos2005-12-29 Nick Clifton <nickc@redhat.com> 26*75fd0b74Schristos 27*75fd0b74Schristos * hash.c (bfd_hash_set_default_size): Add more entries to the 28*75fd0b74Schristos hash_size_primes table. 29*75fd0b74Schristos 30*75fd0b74Schristos * stabs.c (_bfd_link_section_stabs): Use bfd_hash_table_init 31*75fd0b74Schristos rather than bfd_hash_table_init_n(...,251) so that the size of the 32*75fd0b74Schristos hash table can be controlled by the user. 33*75fd0b74Schristos 34*75fd0b74Schristos2005-12-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 35*75fd0b74Schristos 36*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Use info->executable 37*75fd0b74Schristos instead of !info->shared. 38*75fd0b74Schristos 39*75fd0b74Schristos2005-12-27 Jan-Benedict Glaw <jbglaw@lug-owl.de> 40*75fd0b74Schristos 41*75fd0b74Schristos * vaxlinux.h: New file. (TRAD_CORE_EXTRA_SIZE_ALLOWED): Define. 42*75fd0b74Schristos (HOST_MACHINE_ARCH): Define. This allows cross-building vax-linux 43*75fd0b74Schristos hosted binutils. 44*75fd0b74Schristos 45*75fd0b74Schristos2005-12-27 Nathan Sidwell <nathan@codesourcery.com> 46*75fd0b74Schristos 47*75fd0b74Schristos * elf32-mt.c (mt_elf_merge_private_bfd_data): Do not allow mixing 48*75fd0b74Schristos object files from different mt variants. 49*75fd0b74Schristos 50*75fd0b74Schristos2005-12-27 Leif Ekblad <leif@rdos.net> 51*75fd0b74Schristos 52*75fd0b74Schristos * config.bfd: Add support for RDOS targets. 53*75fd0b74Schristos 54*75fd0b74Schristos2005-12-27 Marty Leisner <leisner@rochester.rr.com> 55*75fd0b74Schristos 56*75fd0b74Schristos * dwarf2.c (lookup_symbol_in_function_table): Check for a function 57*75fd0b74Schristos name before passing it to strcmp. 58*75fd0b74Schristos 59*75fd0b74Schristos2005-12-27 Alan Modra <amodra@bigpond.net.au> 60*75fd0b74Schristos 61*75fd0b74Schristos * elf.c (elf_find_function): Don't ignore section syms. 62*75fd0b74Schristos Simplify filename logic. 63*75fd0b74Schristos 64*75fd0b74Schristos2005-12-27 Alan Modra <amodra@bigpond.net.au> 65*75fd0b74Schristos 66*75fd0b74Schristos * elf32-ppc.c (add_stub_sym): Pass info rather than htab. 67*75fd0b74Schristos Use different names for pic vs non-pic, '.' instead of '_'. 68*75fd0b74Schristos (allocate_dynrelocs): Adjust add_stub_sym call. 69*75fd0b74Schristos 70*75fd0b74Schristos2005-12-27 Alan Modra <amodra@bigpond.net.au> 71*75fd0b74Schristos 72*75fd0b74Schristos * elf.c (bfd_section_from_shdr): Treat invalid reloc sections as 73*75fd0b74Schristos normal sections rather than returning false. 74*75fd0b74Schristos 75*75fd0b74Schristos2005-12-27 Alan Modra <amodra@bigpond.net.au> 76*75fd0b74Schristos 77*75fd0b74Schristos * coff-h8300.c (h8300_reloc16_extra_cases): Use input section 78*75fd0b74Schristos "output_offset" instead of link order "offset". 79*75fd0b74Schristos * coff-h8500.c (extra_case): Likewise. 80*75fd0b74Schristos * coff-w65.c (w65_reloc16_extra_cases): Likewise. 81*75fd0b74Schristos * coff-z80.c (extra_case): Likewise. 82*75fd0b74Schristos * coff-z8k.c (extra_case): Likewise. 83*75fd0b74Schristos * linker.c (default_indirect_link_order): Likewise, "size" too. 84*75fd0b74Schristos * ecoff.c (ecoff_indirect_link_order): Likewise. 85*75fd0b74Schristos 86*75fd0b74Schristos2005-12-27 Alan Modra <amodra@bigpond.net.au> 87*75fd0b74Schristos 88*75fd0b74Schristos * Makefile.am: Run "make dep-am". 89*75fd0b74Schristos * Makefile.in: Regenerate. 90*75fd0b74Schristos * po/SRC-POTFILES.in: Regenerate. 91*75fd0b74Schristos 92*75fd0b74Schristos2005-12-24 Alan Modra <amodra@bigpond.net.au> 93*75fd0b74Schristos 94*75fd0b74Schristos * aix5ppc-core.c: Remove duplicate prototypes. 95*75fd0b74Schristos (xcoff64_core_file_matches_executable_p): Provide implementation 96*75fd0b74Schristos for !AIX_5_CORE. 97*75fd0b74Schristos * corefile.c (generic_core_file_matches_executable_p): Correct 98*75fd0b74Schristos syntax error in prototype. 99*75fd0b74Schristos * libbfd-in.h (generic_core_file_matches_executable_p): Delete. 100*75fd0b74Schristos * libbfd.h: Regenerate. 101*75fd0b74Schristos * bfd-in2.h: Regenerate. 102*75fd0b74Schristos 103*75fd0b74Schristos2005-12-23 Michael Weiser <michael@weiser.dinsnail.net> 104*75fd0b74Schristos 105*75fd0b74Schristos PR 1150 106*75fd0b74Schristos * elf-bfd.h (struct elf_backend_data): New field 107*75fd0b74Schristos 'elf_backend_ignore_undef_symbol'. 108*75fd0b74Schristos * elfxx-target.h (elf_backend_ignore_undef_symbol): Define to NULL 109*75fd0b74Schristos if not already defined. 110*75fd0b74Schristos (elfNN_bed): Initialise the elf_backend_ignore_undef_symbol field. 111*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_ignore_undef_symbol): New function. 112*75fd0b74Schristos * elfxx-mips.h (elf_backend_ignore_undef_symbol): Define and 113*75fd0b74Schristos prototype. 114*75fd0b74Schristos * elflink.c (elf_link_output_extsym): Check 115*75fd0b74Schristos elf_backend_ignore_undef_symbol before reporting an undefined 116*75fd0b74Schristos symbol in a shared library. 117*75fd0b74Schristos 118*75fd0b74Schristos2005-12-23 Joel Brobecker <brobecker@adacore.com> 119*75fd0b74Schristos 120*75fd0b74Schristos * corefile.c (generic_core_file_matches_executable_p): New function. 121*75fd0b74Schristos * libbfd-in.h (generic_core_file_matches_executable_p): Add 122*75fd0b74Schristos declaration. 123*75fd0b74Schristos * libbfd.h: Regenerate. 124*75fd0b74Schristos * hpux-core.c: ANSIfy function declarations and prototypes. 125*75fd0b74Schristos (thread_section_p): Manually expand bfd_section_name macro 126*75fd0b74Schristos to make it clear that parameter ABFD is not used. 127*75fd0b74Schristos (hpux_core_core_file_matches_executable_p): Delete, replaced 128*75fd0b74Schristos by macro pointing to generic_core_file_matches_executable_p. 129*75fd0b74Schristos 130*75fd0b74Schristos * aix386-core.c: Replace core_file_matches_executable_p null 131*75fd0b74Schristos implementation by generic_core_file_matches_executable_p by 132*75fd0b74Schristos using a macro. 133*75fd0b74Schristos * aix5ppc-core.c: Likewise. 134*75fd0b74Schristos * cisco-core.c: Likewise. 135*75fd0b74Schristos * hppabsd-core.c: Likewise. 136*75fd0b74Schristos * irix-core.c: Likewise. 137*75fd0b74Schristos * lynx-core.c: Likewise. 138*75fd0b74Schristos * mach-o.c: Likewise. 139*75fd0b74Schristos * netbsd-core.c: Likewise. 140*75fd0b74Schristos * osf-core.c: Likewise. 141*75fd0b74Schristos * ptrace-core.c: Likewise. 142*75fd0b74Schristos * sco5-core.c: Likewise. 143*75fd0b74Schristos * trad-core.c: Likewise. 144*75fd0b74Schristos 145*75fd0b74Schristos2005-12-19 David Heine <dlheine@tensilica.com> 146*75fd0b74Schristos 147*75fd0b74Schristos * elf32-xtensa.c (action_list_count, xlate_map_entry, xlate_map, 148*75fd0b74Schristos xlate_offset_with_removed_text, build_xlate_map, free_xlate_map): New. 149*75fd0b74Schristos (check_section_ebb_pcrels_fit): Build new xlate_map, use it and free it 150*75fd0b74Schristos when finished. 151*75fd0b74Schristos 152*75fd0b74Schristos2005-12-16 Nathan Sidwell <nathan@codesourcery.com> 153*75fd0b74Schristos 154*75fd0b74Schristos Second part of ms1 to mt renaming. 155*75fd0b74Schristos * archures.c (bfd_arch_mt): Renamed. 156*75fd0b74Schristos (bfd_mt_arch): Renamed. 157*75fd0b74Schristos (bfd_archures_list): Adjusted. 158*75fd0b74Schristos * bfd-in2.h: Rebuilt. 159*75fd0b74Schristos * config.bfd (mt): Remove special case targ_archs. 160*75fd0b74Schristos (mt-*-elf): Rename bfd_elf32_mt_vec. 161*75fd0b74Schristos * configure: Rebuilt. 162*75fd0b74Schristos * configure.in (bfd_elf32_mt_vec): Renamed. 163*75fd0b74Schristos (selarchs) Remove mt special case. 164*75fd0b74Schristos * cpu-mt.c (arch_info_struct): Adjust. 165*75fd0b74Schristos (bfd_mt_arch): Renamed, adjust. 166*75fd0b74Schristos * elf32-mt.c (mt_reloc_type_lookup, mt_info_to_howto_rela, 167*75fd0b74Schristos mt_elf_relocate_hi16, mt_final_link_relocate, mt_relocate_section, 168*75fd0b74Schristos mt_elf_howto_table): Renamed, adjusted. 169*75fd0b74Schristos (mt_elf_gc_mark_hook, mt_elf_gc_sweep_hook, mt_elf_check_relocs, 170*75fd0b74Schristos elf32_mt_machine, mt_elf_object_p, mt_elf_set_private_flags, 171*75fd0b74Schristos mt_elf_copy_private_bfd_data, mt_elf_merge_private_bfd_data, 172*75fd0b74Schristos mt_elf_print_private_bfd_data): Renamed, adjusted. 173*75fd0b74Schristos (TARGET_BIG_SYM, TARGET_BIG_NAME, ELF_ARCH, ELF_MACHINE_CODE, 174*75fd0b74Schristos ELF_MAXPAGESIZE, elf_info_to_howto, elf_backend_relocate_section, 175*75fd0b74Schristos bfd_elf32_bfd_reloc_type_lookup, elf_backend_gc_mark_hook, 176*75fd0b74Schristos elf_backend_gc_sweep_hook, elf_backend_check_relocs, 177*75fd0b74Schristos eld_backend_object_p, bfd_elf32_bfd_set_private_flags, 178*75fd0b74Schristos bfd_elf32_bfd_copy_private_bfd_data, 179*75fd0b74Schristos bfd_elf32_bfd_merge_private_bfd_data, 180*75fd0b74Schristos bfd_elf32_bfd_print_private_bfd_data): Adjusted. 181*75fd0b74Schristos * libbfd.h: Regenerated. 182*75fd0b74Schristos * reloc.c (BFD_RELOC_MT_PC16, BFD_RELOC_MT_HI16, 183*75fd0b74Schristos BFD_RELOC_MT_LO16, BFD_RELOC_MT_GNU_VTINHERIT, 184*75fd0b74Schristos BFD_RELOC_MT_GNU_VTENTRY, BFD_RELOC_MT_PCINSN8): Renamed. 185*75fd0b74Schristos * targets.c (bfd_elf32_mt_vec): Renamed. 186*75fd0b74Schristos (_bfd_target_vector): Adjusted. 187*75fd0b74Schristos 188*75fd0b74Schristos2005-12-13 H.J. Lu <hongjiu.lu@intel.com> 189*75fd0b74Schristos 190*75fd0b74Schristos PR ld/2008 191*75fd0b74Schristos * elf.c (_bfd_elf_setup_sections): Return FALSE if 192*75fd0b74Schristos elf_linked_to_section will be set to NULL. 193*75fd0b74Schristos 194*75fd0b74Schristos * format.c (bfd_check_format_matches): Don't check the default 195*75fd0b74Schristos target twice. 196*75fd0b74Schristos 197*75fd0b74Schristos2005-12-13 Alan Modra <amodra@bigpond.net.au> 198*75fd0b74Schristos 199*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_relocate_section): Force tail calls in 200*75fd0b74Schristos shared libs to resolve locally. 201*75fd0b74Schristos 202*75fd0b74Schristos2005-12-12 Paul Brook <paul@codesourcery.com> 203*75fd0b74Schristos 204*75fd0b74Schristos * bfd-in2.h: Regenerate. 205*75fd0b74Schristos * elf32-arm.c (elf32_arm_reloc_map): Add BFD_RELOC_ARM_PCREL_CALL and 206*75fd0b74Schristos BFD_RELOC_ARM_PCREL_JUMP. 207*75fd0b74Schristos (check_use_blx): New function. 208*75fd0b74Schristos (bfd_elf32_arm_process_before_allocation): Don't allocate glue if 209*75fd0b74Schristos using BLX. 210*75fd0b74Schristos (elf32_arm_final_link_relocate): Perform bl<->blx conversion for 211*75fd0b74Schristos R_ARM_CALL and R_ARM_THM. 212*75fd0b74Schristos (elf32_arm_get_eabi_attr_int): New function. 213*75fd0b74Schristos (elf32_arm_size_dynamic_sections): Call check_use_blx. 214*75fd0b74Schristos * libbfd.h: Regenerate. 215*75fd0b74Schristos * reloc.c: Add BFD_RELOC_ARM_PCREL_CALL and BFD_RELOC_ARM_PCREL_JUMP. 216*75fd0b74Schristos 217*75fd0b74Schristos2005-12-12 Nathan Sidwell <nathan@codesourcery.com> 218*75fd0b74Schristos 219*75fd0b74Schristos * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, 220*75fd0b74Schristos BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Replace ms1 with mt. 221*75fd0b74Schristos (cpu_mt.lo, elf32-mt.lo): Update target and dependency names. 222*75fd0b74Schristos * Makefile.in: Rebuilt. 223*75fd0b74Schristos * config.bfd: Replace ms1 arch with mt. 224*75fd0b74Schristos * configure.in: Replace ms1 files with mt files. 225*75fd0b74Schristos * configure: Rebuilt. 226*75fd0b74Schristos * elf32-mt.c: Renamed from elf32-ms1.c. Update include files. 227*75fd0b74Schristos * cpu-mt.c: Renamed from cpu-ms1.c. 228*75fd0b74Schristos 229*75fd0b74Schristos2005-12-12 Alan Modra <amodra@bigpond.net.au> 230*75fd0b74Schristos 231*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_size_stubs): Don't consider non-ppc64 input. 232*75fd0b74Schristos 233*75fd0b74Schristos2005-12-10 Alan Modra <amodra@bigpond.net.au> 234*75fd0b74Schristos 235*75fd0b74Schristos * elflink.c (elf_gc_mark_dynamic_ref_symbol): Use !info-executable 236*75fd0b74Schristos to test for linking shared libs, not info->shared. 237*75fd0b74Schristos 238*75fd0b74Schristos2005-12-08 Alan Modra <amodra@bigpond.net.au> 239*75fd0b74Schristos 240*75fd0b74Schristos * elf32-ppc.c (struct ppc_elf_link_hash_table): Add emit_stub_syms. 241*75fd0b74Schristos (ppc_elf_select_plt_layout): Add emit_stub_syms param, save to htab. 242*75fd0b74Schristos (add_stub_sym): New function. 243*75fd0b74Schristos (allocate_dynrelocs): Call add_stub_sym. 244*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Emit __glink and __glink_PLTresolve 245*75fd0b74Schristos when emit_stub_syms. 246*75fd0b74Schristos * elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype. 247*75fd0b74Schristos 248*75fd0b74Schristos2005-12-08 Alan Modra <amodra@bigpond.net.au> 249*75fd0b74Schristos 250*75fd0b74Schristos * reloc.c (enum complain_overflow): Correct comments. 251*75fd0b74Schristos (bfd_check_overflow): Combine complain_overflow_bitfield and 252*75fd0b74Schristos complain_overflow_signed code. 253*75fd0b74Schristos (_bfd_relocate_contents): Likewise. 254*75fd0b74Schristos (bfd_howto_32): Use complain_overflow_dont. 255*75fd0b74Schristos * elf32-d10v.c (elf_d10v_howto_table): Revert 2002-06-17 change. 256*75fd0b74Schristos * bfd-in2.h: Regenerate. 257*75fd0b74Schristos 258*75fd0b74Schristos2005-12-07 H.J. Lu <hongjiu.lu@intel.com> 259*75fd0b74Schristos 260*75fd0b74Schristos * elf.c (assign_section_numbers): Remove extra code in the last 261*75fd0b74Schristos change. 262*75fd0b74Schristos 263*75fd0b74Schristos2005-12-07 H.J. Lu <hongjiu.lu@intel.com> 264*75fd0b74Schristos Andreas Schwab <schwab@suse.de> 265*75fd0b74Schristos 266*75fd0b74Schristos PR binutils/1991 267*75fd0b74Schristos * elf.c (assign_section_numbers): Always use the output section 268*75fd0b74Schristos when setting up sh_link for SHF_LINK_ORDER. 269*75fd0b74Schristos 270*75fd0b74Schristos2005-12-07 Thiemo Seufer <ths@networkno.de> 271*75fd0b74Schristos H.J. Lu <hongjiu.lu@intel.com> 272*75fd0b74Schristos 273*75fd0b74Schristos PR ld/1932 274*75fd0b74Schristos * bfd-in.h (bfd_elf_record_link_assignment): Add output_bfd 275*75fd0b74Schristos and hidden arguments. 276*75fd0b74Schristos 277*75fd0b74Schristos * bfd.c (bfd_hide_symbol): Removed. 278*75fd0b74Schristos 279*75fd0b74Schristos * bfd-in2.h: Regenerated. 280*75fd0b74Schristos 281*75fd0b74Schristos * elflink.c (bfd_elf_record_link_assignment): Handle hidden 282*75fd0b74Schristos symbols which were provided by a linker script. 283*75fd0b74Schristos 284*75fd0b74Schristos2005-12-06 Paul Gilliam <pgilliam@us.ibm.com> 285*75fd0b74Schristos 286*75fd0b74Schristos * cpu-powerpc.c (bfd_powerpc_archs): Add ppc 750. 287*75fd0b74Schristos 288*75fd0b74Schristos2005-11-18 Mark Kettenis <kettenis@gnu.org> 289*75fd0b74Schristos 290*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_section_from_phdr): Create .kernel 291*75fd0b74Schristos pseudo-section. Make sure .reg section comes after the proc 292*75fd0b74Schristos section it's generated from. 293*75fd0b74Schristos 294*75fd0b74Schristos2005-12-01 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 295*75fd0b74Schristos 296*75fd0b74Schristos * elf32-m32r.c (m32r_elf_sweep_hook): Fix an illegal duplicate check. 297*75fd0b74Schristos (m32r_elf_relocate_section): Fix R_M32R_10_PCREL_RELA linkage bug. 298*75fd0b74Schristos (m32r_elf_gc_sweep_hook): Likewise. 299*75fd0b74Schristos (m32r_elf_check_relocs): Likewise. 300*75fd0b74Schristos 301*75fd0b74Schristos2005-11-24 Alan Modra <amodra@bigpond.net.au> 302*75fd0b74Schristos 303*75fd0b74Schristos * elf-bfd.h (_bfd_generic_match_sections_by_type): Don't define. 304*75fd0b74Schristos * libbfd-in.h (_bfd_generic_match_sections_by_type): Delete. 305*75fd0b74Schristos * libbfd.c (_bfd_generic_match_sections_by_type): Delete. 306*75fd0b74Schristos * targets.c (bfd_match_sections_by_type): Don't define. 307*75fd0b74Schristos (BFD_JUMP_TABLE_LINK): Remove _bfd_generic_match_sections_by_type. 308*75fd0b74Schristos * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise. 309*75fd0b74Schristos * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise. 310*75fd0b74Schristos * bfd-in2.h: Regenerate. 311*75fd0b74Schristos * libbfd.h: Regenerate. 312*75fd0b74Schristos 313*75fd0b74Schristos2005-11-23 Daniel Jacobowitz <dan@codesourcery.com> 314*75fd0b74Schristos Thiemo Seufer <ths@networkno.de> 315*75fd0b74Schristos 316*75fd0b74Schristos * elf32-mips.c (elf_mips_howto_table_rel): Use rightshift 2 for 317*75fd0b74Schristos R_MIPS_PC16. 318*75fd0b74Schristos (mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16. 319*75fd0b74Schristos (bfd_elf32_bfd_reloc_type_lookup): Don't handle 320*75fd0b74Schristos BFD_RELOC_16_PCREL_S2. 321*75fd0b74Schristos * elf64-mips.c (mips_elf64_howto_table_rel): Use rightshift 2 for 322*75fd0b74Schristos R_MIPS_PC16. 323*75fd0b74Schristos (mips_elf64_howto_table_rela): Likewise. 324*75fd0b74Schristos (mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16. 325*75fd0b74Schristos (bfd_elf64_bfd_reloc_type_lookup): Don't handle 326*75fd0b74Schristos BFD_RELOC_16_PCREL_S2. 327*75fd0b74Schristos * elfn32-mips.c (elf_mips_howto_table_rel): Use rightshift 2 for 328*75fd0b74Schristos R_MIPS_PC16. 329*75fd0b74Schristos (elf_mips_howto_table_rela): Likewise. 330*75fd0b74Schristos (mips_reloc_map): Map BFD_RELOC_16_PCREL_S2 to R_MIPS_PC16. 331*75fd0b74Schristos (bfd_elf32_bfd_reloc_type_lookup): Don't handle 332*75fd0b74Schristos BFD_RELOC_16_PCREL_S2. 333*75fd0b74Schristos * elfxx-mips.c: Formatting fixes. 334*75fd0b74Schristos (mips_elf_calculate_relocation): Handle R_MIPS_GNU_REL16_S2 335*75fd0b74Schristos and R_MIPS_PC16 identically. 336*75fd0b74Schristos 337*75fd0b74Schristos2005-11-23 Frederic Riss <frederic.riss@st.com> 338*75fd0b74Schristos 339*75fd0b74Schristos * elfcode.h (elf_object_p): Delay the setting of start_address 340*75fd0b74Schristos until we're sure the backend matches the binary. 341*75fd0b74Schristos 342*75fd0b74Schristos2005-11-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 343*75fd0b74Schristos 344*75fd0b74Schristos * som.c (som_decode_symclass): Decode BSF_WEAK symbols in the same 345*75fd0b74Schristos manner as bfd_decode_symclass. 346*75fd0b74Schristos 347*75fd0b74Schristos2005-11-18 Alan Modra <amodra@bigpond.net.au> 348*75fd0b74Schristos 349*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_check_relocs): Don't set has_14bit_branch 350*75fd0b74Schristos on branches to same section. 351*75fd0b74Schristos 352*75fd0b74Schristos2005-11-17 Randolph Chung <tausq@debian.org> 353*75fd0b74Schristos 354*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_object_p): Recognize corefiles under 355*75fd0b74Schristos hppa64-hp-hpux11.11. 356*75fd0b74Schristos (elf64_hppa_section_from_phdr): New function. 357*75fd0b74Schristos (elf_backend_section_from_phdr): Define. 358*75fd0b74Schristos 359*75fd0b74Schristos2005-11-11 Nick Clifton <nickc@redhat.com> 360*75fd0b74Schristos 361*75fd0b74Schristos PR 1150 362*75fd0b74Schristos * elfxx-mips.c (mips_elf_calculate_relocation): Ignore an 363*75fd0b74Schristos undefined symbol if it is optional. 364*75fd0b74Schristos (_bfd_mips_elf_merge_symbol_attribute): Make sure that the 365*75fd0b74Schristos optional flag is merged as well as the visibility. 366*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_merge_symbol_attribute): Prototype. 367*75fd0b74Schristos (elf_backend_merge_symbol_attribute): Define. 368*75fd0b74Schristos 369*75fd0b74Schristos2005-11-08 Nathan Sidwell <nathan@codesourcery.com> 370*75fd0b74Schristos 371*75fd0b74Schristos Add ms2 support 372*75fd0b74Schristos * archures.c (bfd_mach_ms2): Define. 373*75fd0b74Schristos * cpu-ms1.c (arch_info_struct): Add ms2 stanza. 374*75fd0b74Schristos * elf32-ms1.c (elf32_ms1_machine): Add ms2 case. 375*75fd0b74Schristos (ms1_elf_merge_private_bfd_data): Remove unused variables. Add 376*75fd0b74Schristos correct merging logic, with workaround. 377*75fd0b74Schristos (ms1_elf_print_private_bfd_data): Add ms2 case. 378*75fd0b74Schristos * reloc.c (BFD_RELOC_MS1_PCINSN8): Add ms2 specific reloc. 379*75fd0b74Schristos * libbfd.h: Regenerated. 380*75fd0b74Schristos * bfd-in2.h: Regenerated. 381*75fd0b74Schristos 382*75fd0b74Schristos2005-11-07 Steve Ellcey <sje@cup.hp.com> 383*75fd0b74Schristos 384*75fd0b74Schristos * warning.m4 (AM_BINUTILS_WARNINGS): Default to empty string 385*75fd0b74Schristos if compiler is not GCC. 386*75fd0b74Schristos * configure: Regenerate 387*75fd0b74Schristos 388*75fd0b74Schristos2005-11-07 Steve Ellcey <sje@cup.hp.com> 389*75fd0b74Schristos 390*75fd0b74Schristos * configure: Regenerate after modifying bfd/warning.m4. 391*75fd0b74Schristos 392*75fd0b74Schristos2005-11-07 Steve Ellcey <sje@cup.hp.com> 393*75fd0b74Schristos 394*75fd0b74Schristos * configure.host (ia64-*-hpux*): Set _LARGEFILE64_SOURCE. 395*75fd0b74Schristos 396*75fd0b74Schristos2005-11-03 Daniel Jacobowitz <dan@codesourcery.com> 397*75fd0b74Schristos 398*75fd0b74Schristos * configure.in: Check for fopen64. 399*75fd0b74Schristos * libbfd-in.h (real_fopen): New prototype. 400*75fd0b74Schristos * configure, config.in, libbfd.h: Regenerated. 401*75fd0b74Schristos * bfdio.c (real_fopen): New function. 402*75fd0b74Schristos * opncls.c (bfd_fopen, bfd_fill_in_gnu_debuglink_section): Use it. 403*75fd0b74Schristos * cache.c (bfd_open_file): Likewise. 404*75fd0b74Schristos 405*75fd0b74Schristos2005-11-03 Thiemo Seufer <ths@networkno.de> 406*75fd0b74Schristos 407*75fd0b74Schristos * elfxx-mips.c (mips_elf_calculate_relocation): Handle only 408*75fd0b74Schristos forced local symbols here. 409*75fd0b74Schristos (mips_elf_create_dynamic_relocation): Likewise. 410*75fd0b74Schristos (_bfd_mips_elf_finish_dynamic_symbol): Fix typo in comment. 411*75fd0b74Schristos 412*75fd0b74Schristos2005-11-03 Alan Modra <amodra@bigpond.net.au> 413*75fd0b74Schristos 414*75fd0b74Schristos * elf.c (elf_fake_sections): When calculating tbss size, just use 415*75fd0b74Schristos the last link_order. 416*75fd0b74Schristos (assign_file_positions_for_segments): Likewise. 417*75fd0b74Schristos * elflink.c (bfd_elf_final_link): Likewise. 418*75fd0b74Schristos (elf_reloc_link_order): Correct comment. 419*75fd0b74Schristos 420*75fd0b74Schristos2005-11-02 Alan Modra <amodra@bigpond.net.au> 421*75fd0b74Schristos 422*75fd0b74Schristos PR ld/1775 423*75fd0b74Schristos * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Add required 424*75fd0b74Schristos parentheses. 425*75fd0b74Schristos 426*75fd0b74Schristos2005-10-29 H.J. Lu <hongjiu.lu@intel.com> 427*75fd0b74Schristos 428*75fd0b74Schristos * Makefile.am: Run "make dep-am". 429*75fd0b74Schristos * Makefile.in: Regenerated. 430*75fd0b74Schristos 431*75fd0b74Schristos * dep-in.sed: Replace " ./" with " ". 432*75fd0b74Schristos 433*75fd0b74Schristos2005-10-29 H.J. Lu <hongjiu.lu@intel.com> 434*75fd0b74Schristos 435*75fd0b74Schristos * hpux-core.c: Include <machine/reg.h> only if HPUX_CORE is 436*75fd0b74Schristos define. 437*75fd0b74Schristos * osf-core.c: Include <sys/core.h> only if OSF_CORE is defined. 438*75fd0b74Schristos * sco5-core.c: Include <sys/paccess.h> and <sys/region.h> only 439*75fd0b74Schristos if SCO5_CORE is defined. 440*75fd0b74Schristos 441*75fd0b74Schristos2005-10-29 Mark Kettenis <kettenis@gnu.org> 442*75fd0b74Schristos 443*75fd0b74Schristos * Makefile.am: Run "make dep-am". 444*75fd0b74Schristos * Makefile.in: Regenerate. 445*75fd0b74Schristos 446*75fd0b74Schristos2005-10-28 Joel Brobecker <brobecker@adacore.com> 447*75fd0b74Schristos 448*75fd0b74Schristos From Eric Botcazou <botcazou@adacore.com> 449*75fd0b74Schristos * coffcode.h (coff_compute_section_file_positions): Fix small 450*75fd0b74Schristos error in preprocessor directives. 451*75fd0b74Schristos 452*75fd0b74Schristos2005-10-28 Joel Brobecker <brobecker@adacore.com> 453*75fd0b74Schristos 454*75fd0b74Schristos Mostly from Eric Botcazou <botcazou@adacore.com> 455*75fd0b74Schristos * rs6000-core.c: ANSIfy all function definitions. 456*75fd0b74Schristos Add missing function prototypes. 457*75fd0b74Schristos (ptr_to_uint): New type. 458*75fd0b74Schristos (rs6000coff_core_p): Use it as intermediate step in casts. 459*75fd0b74Schristos (rs6000coff_core_file_matches_executable_p): Likewise. 460*75fd0b74Schristos * xcoff-target.h (rs6000coff_core_p): Fix prototype. 461*75fd0b74Schristos (rs6000coff_core_file_matches_executable_p): Likewise. 462*75fd0b74Schristos 463*75fd0b74Schristos2005-10-28 H.J. Lu <hongjiu.lu@intel.com> 464*75fd0b74Schristos 465*75fd0b74Schristos PR binutils/1472 466*75fd0b74Schristos * aoutx.h (NAME (aout, machine_type)): Handle 467*75fd0b74Schristos bfd_mach_sparc_v8plus, bfd_mach_sparc_v8plusa, 468*75fd0b74Schristos bfd_mach_sparc_v8plusb, bfd_mach_sparc_v9, bfd_mach_sparc_v9a 469*75fd0b74Schristos and bfd_mach_sparc_v9b. 470*75fd0b74Schristos 471*75fd0b74Schristos2005-10-28 Hans-Peter Nilsson <hp@axis.com> 472*75fd0b74Schristos 473*75fd0b74Schristos PR ld/1567 474*75fd0b74Schristos * elf32-cris.c (cris_elf_howto_table) <R_CRIS_32>: Set 475*75fd0b74Schristos complain_on_overflow field to complain_overflow_dont. 476*75fd0b74Schristos 477*75fd0b74Schristos2005-10-27 Alan Modra <amodra@bigpond.net.au> 478*75fd0b74Schristos 479*75fd0b74Schristos PR 973 480*75fd0b74Schristos * cache.c (enum cache_flag): New. 481*75fd0b74Schristos (close_one): Save file mtime. 482*75fd0b74Schristos (bfd_cache_lookup): Add flag arg, adjust all users. 483*75fd0b74Schristos (bfd_cache_lookup_worker): Likewise. 484*75fd0b74Schristos (cache_btell): Use CACHE_NO_OPEN and return abfd->where if file 485*75fd0b74Schristos not open. 486*75fd0b74Schristos (cache_bflush): Similarly, and return success of file not open. 487*75fd0b74Schristos (cache_bseek): Use CACHE_NO_SEEK if SEEK_SET or SEEK_END. 488*75fd0b74Schristos (cache_bstat): Use CACHE_NO_SEEK_ERROR. 489*75fd0b74Schristos 490*75fd0b74Schristos * bfdwin.c (bfd_get_file_window): Seek into file in place of 491*75fd0b74Schristos using bfd_cache_lookup. 492*75fd0b74Schristos 493*75fd0b74Schristos * cache.c (BFD_CACHE_MAX_OPEN): Make private to this file. 494*75fd0b74Schristos (bfd_last_cache, bfd_cache_lookup, bfd_cache_lookup_worker): Likewise. 495*75fd0b74Schristos * libbfd-in.h (bfd_cache_lookup_worker, bfd_last_cache): Delete. 496*75fd0b74Schristos * libbfd.h: Regenerate. 497*75fd0b74Schristos 498*75fd0b74Schristos * hppabsd-core.c (hppabsd_core_core_file_p): Use bfd_stat, not fstat. 499*75fd0b74Schristos * sco5-core.c (sco5_core_file_p): Likewise. 500*75fd0b74Schristos * trad-core.c (trad_unix_core_file_p): Likewise. 501*75fd0b74Schristos 502*75fd0b74Schristos * cache.c: Reorganize file to avoid forward reference. 503*75fd0b74Schristos 504*75fd0b74Schristos2005-10-26 Alan Modra <amodra@bigpond.net.au> 505*75fd0b74Schristos 506*75fd0b74Schristos * cache.c (bfd_cache_lookup_worker): Don't abort on failing to 507*75fd0b74Schristos reopen file. 508*75fd0b74Schristos (cache_btell, cache_bseek, cache_bflush, cache_bstat): Return -1 on 509*75fd0b74Schristos bfd_cache_lookup failure. 510*75fd0b74Schristos (cache_bread, cache_bwrite): Return 0 on the same. 511*75fd0b74Schristos * bfdwin.c (bfd_get_file_window): Likewise. 512*75fd0b74Schristos * hppabsd-core.c (hppabsd_core_core_file_p): Likewise. 513*75fd0b74Schristos * sco5-core.c (sco5_core_file_p): Likewise. 514*75fd0b74Schristos * trad-core.c (trad_unix_core_file_p): Likewise. 515*75fd0b74Schristos 516*75fd0b74Schristos2005-10-26 Alan Modra <amodra@bigpond.net.au> 517*75fd0b74Schristos 518*75fd0b74Schristos * cache.c (bfd_cache_lookup_worker): Use bfd_error_handler 519*75fd0b74Schristos rather than bfd_perror. Print file name. Internationalise. 520*75fd0b74Schristos 521*75fd0b74Schristos2005-10-26 Alan Modra <amodra@bigpond.net.au> 522*75fd0b74Schristos 523*75fd0b74Schristos * cache.c (bfd_open_file): Set bfd_error_system_call on failure 524*75fd0b74Schristos to open file. 525*75fd0b74Schristos (bfd_cache_lookup_worker): Remove check that file pos is in 526*75fd0b74Schristos unsigned long range. Print system error before aborting. 527*75fd0b74Schristos 528*75fd0b74Schristos2005-10-25 Arnold Metselaar <arnold.metselaar@planet.nl> 529*75fd0b74Schristos 530*75fd0b74Schristos * Makefile.am: Add rules for coff-z80 and cpu-z80. 531*75fd0b74Schristos * Makefile.in: Regenerated. 532*75fd0b74Schristos * archures.c: Add bfd_arch_z80 and support for it. 533*75fd0b74Schristos * coffcode.h(coff_set_arch_mach_hook): Add case Z80MAGIC. 534*75fd0b74Schristos (coff_set_flags): Add case bfd_arch_z80. 535*75fd0b74Schristos * config.bfd: Add z80coff_vec. 536*75fd0b74Schristos * configure.in: Add z80coff_vec. 537*75fd0b74Schristos * reloc.c: Add BFD_RELOC_Z80_DISP8 538*75fd0b74Schristos * targets.c: Add z80coff_vec. 539*75fd0b74Schristos * coff-z80.c: New file 540*75fd0b74Schristos * cpu-z80.c: New file 541*75fd0b74Schristos * configure: Regenerated. 542*75fd0b74Schristos * libbfd.h: Regenerated. 543*75fd0b74Schristos * bfd-in2.h: Regenerated. 544*75fd0b74Schristos 545*75fd0b74Schristos2005-10-26 Alan Modra <amodra@bigpond.net.au> 546*75fd0b74Schristos 547*75fd0b74Schristos PR ld/1540 548*75fd0b74Schristos * elf-bfd.h (elf_backend_copy_indirect_symbol): Replace pointer to 549*75fd0b74Schristos elf_backend_data with pointer to bfd_link_info. 550*75fd0b74Schristos (_bfd_elf_link_hash_copy_indirect): Likewise. 551*75fd0b74Schristos * elf.c (_bfd_elf_link_hash_copy_indirect): Likewise. Handle 552*75fd0b74Schristos direct and indirect symbols both having dynamic link info. 553*75fd0b74Schristos * elf32-arm.c (elf32_arm_copy_indirect_symbol): Likewise. 554*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise. 555*75fd0b74Schristos * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise. 556*75fd0b74Schristos * elf32-m32r.c (m32r_elf_copy_indirect_symbol): Likewise. 557*75fd0b74Schristos * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Likewise. 558*75fd0b74Schristos * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise. 559*75fd0b74Schristos * elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise. 560*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. 561*75fd0b74Schristos * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise. 562*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise. 563*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise. 564*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise. 565*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_copy_indirect_symbol): Likewise. 566*75fd0b74Schristos * elflink.c: Adjust all calls to bed->elf_backend_copy_indirect_symbol. 567*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_copy_indirect_symbol): Update prototype. 568*75fd0b74Schristos * elfxx-sparc.h (_bfd_sparc_elf_copy_indirect_symbol): Likewise. 569*75fd0b74Schristos 570*75fd0b74Schristos2005-10-25 Alan Modra <amodra@bigpond.net.au> 571*75fd0b74Schristos 572*75fd0b74Schristos * po/SRC-POTFILES.in: Regenerate. 573*75fd0b74Schristos * po/bfd.pot: Regenerate. 574*75fd0b74Schristos 575*75fd0b74Schristos2005-10-24 Jie Zhang <jie.zhang@analog.com> 576*75fd0b74Schristos 577*75fd0b74Schristos * elf32-bfin.c (bfd_bfin_elf32_create_embedded_relocs): Fix signedness 578*75fd0b74Schristos warning. 579*75fd0b74Schristos 580*75fd0b74Schristos2005-10-24 Bernd Schmidt <bernd.schmidt@analog.com> 581*75fd0b74Schristos 582*75fd0b74Schristos * elf32-bfin.c (bfin_howto_table): Set src_mask to 0 for all relocs. 583*75fd0b74Schristos (bfin_imm16_reloc): Always add in the addend. Don't fetch existing 584*75fd0b74Schristos contents from section. 585*75fd0b74Schristos (bfin_relocate_section): Rework so as to not call special_functions. 586*75fd0b74Schristos Handle the relocation stack here. Treat pcrel24 relocs specially. 587*75fd0b74Schristos 588*75fd0b74Schristos2005-10-24 Alan Modra <amodra@bigpond.net.au> 589*75fd0b74Schristos 590*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Don't use linker_mark and 591*75fd0b74Schristos SEC_EXCLUDE to test for sections dropped from output. Instead, 592*75fd0b74Schristos use bfd_section_removed_from_list on normal sections. Don't 593*75fd0b74Schristos attempt to handle symbols with unknown reserved section indices. 594*75fd0b74Schristos * linker.c (_bfd_generic_link_output_symbols): Don't use 595*75fd0b74Schristos linker_mark to test for symbols belonging to dropped sections. 596*75fd0b74Schristos Do allow absolute symbols. 597*75fd0b74Schristos 598*75fd0b74Schristos2005-10-24 Alan Modra <amodra@bigpond.net.au> 599*75fd0b74Schristos 600*75fd0b74Schristos * elf32-i370.c (i370_elf_fake_sections): Don't set SHF_EXCLUDE on 601*75fd0b74Schristos group sections. 602*75fd0b74Schristos 603*75fd0b74Schristos2005-10-24 Jan Beulich <jbeulich@novell.com> 604*75fd0b74Schristos 605*75fd0b74Schristos * cpu-ia64-opc.c (elf64_ia64_operands): Move memory operand out of 606*75fd0b74Schristos set of indirect operands. 607*75fd0b74Schristos 608*75fd0b74Schristos2005-10-24 Alan Modra <amodra@bigpond.net.au> 609*75fd0b74Schristos 610*75fd0b74Schristos * elf32-ppc.c (ppc_elf_fake_sections): Don't set SHF_EXCLUDE on 611*75fd0b74Schristos group sections. 612*75fd0b74Schristos 613*75fd0b74Schristos2005-10-23 H.J. Lu <hongjiu.lu@intel.com> 614*75fd0b74Schristos 615*75fd0b74Schristos * coff-rs6000.c (rs6000coff_vec): Initialize 616*75fd0b74Schristos _bfd_init_private_section_data with 617*75fd0b74Schristos _bfd_generic_init_private_section_data. 618*75fd0b74Schristos (pmac_xcoff_vec): Likewise. 619*75fd0b74Schristos * coff64-rs6000.c (rs6000coff64_vec): Likewise. 620*75fd0b74Schristos (aix5coff64_vec): Likewise. 621*75fd0b74Schristos 622*75fd0b74Schristos2005-10-23 H.J. Lu <hongjiu.lu@intel.com> 623*75fd0b74Schristos 624*75fd0b74Schristos PR ld/1487 625*75fd0b74Schristos * elf-bfd.h (_bfd_generic_init_private_section_data): New. 626*75fd0b74Schristos (_bfd_elf_init_private_section_data): New. 627*75fd0b74Schristos 628*75fd0b74Schristos * elf.c (elf_fake_sections): Don't set SHF_GROUP for 629*75fd0b74Schristos relocatable link. 630*75fd0b74Schristos (bfd_elf_set_group_contents): Don't handle relocatable link 631*75fd0b74Schristos specially. 632*75fd0b74Schristos (assign_section_numbers): If it isn't called by assembler, 633*75fd0b74Schristos use the output section of elf_linked_to_section for 634*75fd0b74Schristos SHF_LINK_ORDER. 635*75fd0b74Schristos (_bfd_elf_init_private_section_data): New. 636*75fd0b74Schristos (_bfd_elf_copy_private_section_data): Call it. 637*75fd0b74Schristos 638*75fd0b74Schristos * libbfd-in.h (_bfd_generic_init_private_section_data): New. 639*75fd0b74Schristos 640*75fd0b74Schristos * libbfd.c (_bfd_generic_init_private_section_data): New. 641*75fd0b74Schristos 642*75fd0b74Schristos * targets.c (BFD_JUMP_TABLE_COPY): Add 643*75fd0b74Schristos _bfd_generic_init_private_section_data. 644*75fd0b74Schristos (bfd_init_private_section_data): Likewise. 645*75fd0b74Schristos 646*75fd0b74Schristos * bfd-in2.h: Regenerated. 647*75fd0b74Schristos * libbfd.h: Likewise. 648*75fd0b74Schristos 649*75fd0b74Schristos2005-10-23 Alan Modra <amodra@bigpond.net.au> 650*75fd0b74Schristos 651*75fd0b74Schristos * elf64-ppc.c (dec_dynrel_count): Don't report errors for local 652*75fd0b74Schristos syms in gc'd sections. 653*75fd0b74Schristos (ppc64_elf_edit_opd): Don't adjust reloc counts when NO_OPD_RELOCS. 654*75fd0b74Schristos (elf_backend_action_discarded): Define. 655*75fd0b74Schristos (ppc64_elf_action_discarded): New function. 656*75fd0b74Schristos 657*75fd0b74Schristos2005-10-19 Paul Brook <paul@codesourcery.com> 658*75fd0b74Schristos 659*75fd0b74Schristos * elf32-arm.c (find_arm_elf_section_entry): New function. 660*75fd0b74Schristos (get_arm_elf_section_data): Use it. 661*75fd0b74Schristos (unrecord_section_with_arm_elf_section_data): Use it. 662*75fd0b74Schristos 663*75fd0b74Schristos2005-10-15 H.J. Lu <hongjiu.lu@intel.com> 664*75fd0b74Schristos 665*75fd0b74Schristos * coff-rs6000.c (rs6000coff_vec): Initialize 666*75fd0b74Schristos _bfd_match_sections_by_type with 667*75fd0b74Schristos _bfd_generic_match_sections_by_type. 668*75fd0b74Schristos (pmac_xcoff_vec): Likewise. 669*75fd0b74Schristos * coff64-rs6000.c (rs6000coff64_vec): Likewise. 670*75fd0b74Schristos (aix5coff64_vec): Likewise. 671*75fd0b74Schristos 672*75fd0b74Schristos2005-10-15 H.J. Lu <hongjiu.lu@intel.com> 673*75fd0b74Schristos 674*75fd0b74Schristos PR ld/1467 675*75fd0b74Schristos * elf-bfd.h (_bfd_elf_match_sections_by_type): New. 676*75fd0b74Schristos (_bfd_generic_match_sections_by_type): New. Defined. 677*75fd0b74Schristos 678*75fd0b74Schristos * elf.c (_bfd_elf_match_sections_by_type): New. 679*75fd0b74Schristos 680*75fd0b74Schristos * libbfd-in.h (_bfd_generic_match_sections_by_type): New. 681*75fd0b74Schristos 682*75fd0b74Schristos * bfd-in2.h: Regenerated. 683*75fd0b74Schristos * libbfd.h: Likewise. 684*75fd0b74Schristos 685*75fd0b74Schristos * libbfd.c (_bfd_generic_match_sections_by_type): New. 686*75fd0b74Schristos 687*75fd0b74Schristos * targets.c (BFD_JUMP_TABLE_LINK): Initialize 688*75fd0b74Schristos _bfd_match_sections_by_type with 689*75fd0b74Schristos _bfd_generic_match_sections_by_type. 690*75fd0b74Schristos (bfd_target): Add _bfd_match_sections_by_type. 691*75fd0b74Schristos 692*75fd0b74Schristos2005-10-08 Paul Brook <paul@codesourcery.com> 693*75fd0b74Schristos 694*75fd0b74Schristos * elf32-arm.c: Move #include "elf/arm.h" after libbfd.h. 695*75fd0b74Schristos (NUM_KNOWN_ATTRIBUTES): Define. 696*75fd0b74Schristos (aeabi_attribute, aeabi_attribute_list): Define. 697*75fd0b74Schristos (elf32_arm_obj_tdata): Add known_eabi_attributes and 698*75fd0b74Schristos other_eabi_attributes. 699*75fd0b74Schristos (uleb128_size, is_default_attr, eabi_attr_size, 700*75fd0b74Schristos elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute, 701*75fd0b74Schristos elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link, 702*75fd0b74Schristos elf32_arm_new_eabi_attr, attr_strdup, elf32_arm_add_eabi_attr_int, 703*75fd0b74Schristos elf32_arm_add_eabi_attr_compat, copy_eabi_attributes, 704*75fd0b74Schristos elf32_arm_merge_eabi_attributes): New functions. 705*75fd0b74Schristos (elf32_arm_copy_private_bfd_data): Copy EABI object attributes. 706*75fd0b74Schristos (elf32_arm_fake_sections): Handle .ARM.attributes. 707*75fd0b74Schristos (elf32_arm_parse_attributes): New function. 708*75fd0b74Schristos (elf32_arm_section_from_shdr): Use it. 709*75fd0b74Schristos (bfd_elf32_bfd_final_link): Define. 710*75fd0b74Schristos 711*75fd0b74Schristos2005-10-06 Daniel Jacobowitz <dan@codesourcery.com> 712*75fd0b74Schristos 713*75fd0b74Schristos * elf32-arm.c (elf32_arm_check_relocs): Avoid aliasing warnings from 714*75fd0b74Schristos GCC. 715*75fd0b74Schristos (elf32_arm_size_dynamic_sections): Likewise. 716*75fd0b74Schristos * ecofflink.c (bfd_ecoff_debug_one_external): Likewise. 717*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_check_relocs): Likewise. 718*75fd0b74Schristos * elf32-m32r.c (m32r_elf_check_relocs): Likewise. 719*75fd0b74Schristos * elf32-m68k.c (elf_m68k_check_relocs): Likewise. 720*75fd0b74Schristos * elf32-ppc.c (ppc_elf_check_relocs): Likewise. 721*75fd0b74Schristos * elf32-s390.c (elf_s390_check_relocs): Likewise. 722*75fd0b74Schristos (elf_s390_size_dynamic_sections): Likewise. 723*75fd0b74Schristos * elf32-sh.c (sh_elf_check_relocs): Likewise. 724*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_check_relocs, dec_dynrel_count) 725*75fd0b74Schristos (ppc64_elf_size_dynamic_sections): Likewise. 726*75fd0b74Schristos * elf64-s390.c (elf_s390_check_relocs): Likewise. 727*75fd0b74Schristos (elf_s390_size_dynamic_sections): Likewise. 728*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise. 729*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. 730*75fd0b74Schristos (_bfd_sparc_elf_size_dynamic_sections): Likewise. 731*75fd0b74Schristos * ieee.c (ieee_slurp_section_data): Likewise. 732*75fd0b74Schristos * oasys.c (oasys_slurp_section_data): Likewise. 733*75fd0b74Schristos 734*75fd0b74Schristos2005-10-04 Bob Wilson <bob.wilson@acm.org> 735*75fd0b74Schristos 736*75fd0b74Schristos * archive.c: Add missing SUBSECTION for documentation. 737*75fd0b74Schristos * bfd.c: Likewise. 738*75fd0b74Schristos * cache.c: Likewise. 739*75fd0b74Schristos * corefile.c: Likewise. 740*75fd0b74Schristos * format.c: Likewise. 741*75fd0b74Schristos * init.c: Likewise. 742*75fd0b74Schristos * libbfd.c: Likewise. 743*75fd0b74Schristos * opncls.c: Likewise. 744*75fd0b74Schristos * elf.c: Remove blank line after SECTION heading. 745*75fd0b74Schristos * reloc.c: Change "howto manager" SECTION to a SUBSECTION. 746*75fd0b74Schristos 747*75fd0b74Schristos2005-10-04 Nick Clifton <nickc@redhat.com> 748*75fd0b74Schristos 749*75fd0b74Schristos * elf32-arm.c (get_arm_elf_section_data): Cache the last pointer 750*75fd0b74Schristos matched so that the typical case of scanning for the previous 751*75fd0b74Schristos section to last one can be handled quickly. 752*75fd0b74Schristos 753*75fd0b74Schristos2005-10-03 David Heine <dlheine@tensilica.com> 754*75fd0b74Schristos 755*75fd0b74Schristos * elf32-xtensa.c (relocations_reach): Skip range check for 756*75fd0b74Schristos absolute literals. 757*75fd0b74Schristos 758*75fd0b74Schristos2005-10-03 Alan Modra <amodra@bigpond.net.au> 759*75fd0b74Schristos 760*75fd0b74Schristos * elf.c (_bfd_elf_get_synthetic_symtab): Set BSF_GLOBAL on 761*75fd0b74Schristos synthetic syms. 762*75fd0b74Schristos 763*75fd0b74Schristos2005-09-30 H.J. Lu <hongjiu.lu@intel.com> 764*75fd0b74Schristos 765*75fd0b74Schristos * Makefile.am: Run "make dep-am". 766*75fd0b74Schristos * Makefile.in: Regenerated. 767*75fd0b74Schristos * aclocal.m4: Likewise. 768*75fd0b74Schristos 769*75fd0b74Schristos2005-09-30 Catherine Moore <clm@cm00re.com> 770*75fd0b74Schristos 771*75fd0b74Schristos * Makefile.am: Bfin support. 772*75fd0b74Schristos * Makefile.in: Regenerated. 773*75fd0b74Schristos * aclocal.m4: Regenerated. 774*75fd0b74Schristos * archures.c (bfd_mach_bfin): New. 775*75fd0b74Schristos (bfd_arch_bfin): New. 776*75fd0b74Schristos bfd-in.h (bfd_bfin_elf32_create_embedded_relocs): New. 777*75fd0b74Schristos * bfd-in2.h: Regenerated. 778*75fd0b74Schristos * config.bfd: Bfin support. 779*75fd0b74Schristos * configure: Regenerated. 780*75fd0b74Schristos * configure.in: Bfin support. 781*75fd0b74Schristos * libbfd.h: Regenerated. 782*75fd0b74Schristos * reloc.c: Add BFD relocations for Bfin. 783*75fd0b74Schristos * targets.c (bfd_elf32_bfin_vec): New. 784*75fd0b74Schristos * cpu-bfin.c: New file. 785*75fd0b74Schristos * elf32-bfin.c: New file. 786*75fd0b74Schristos 787*75fd0b74Schristos2005-09-30 Alan Modra <amodra@bigpond.net.au> 788*75fd0b74Schristos 789*75fd0b74Schristos * elf64-ppc.c (ppc_type_of_stub): Check both func desc and func 790*75fd0b74Schristos entry sym before deciding no stub is needed. 791*75fd0b74Schristos (ppc64_elf_size_stubs): When calculating branch destination, 792*75fd0b74Schristos don't use func desc sym for old ABI objects unless func entry 793*75fd0b74Schristos is undefined. 794*75fd0b74Schristos 795*75fd0b74Schristos2005-09-28 H.J. Lu <hongjiu.lu@intel.com> 796*75fd0b74Schristos 797*75fd0b74Schristos PR binutils/1321 798*75fd0b74Schristos * elf-bfd.h (_bfd_elf_setup_group_pointers): Renamed to ... 799*75fd0b74Schristos (_bfd_elf_setup_sections): This. 800*75fd0b74Schristos * elf.c: Likewise. 801*75fd0b74Schristos * elfcode.h (elf_object_p): Likewise. 802*75fd0b74Schristos 803*75fd0b74Schristos * elf.c (_bfd_elf_setup_sections): Process SHF_LINK_ORDER. 804*75fd0b74Schristos (_bfd_elf_copy_private_section_data): Likewise. 805*75fd0b74Schristos 806*75fd0b74Schristos2005-09-28 H.J. Lu <hongjiu.lu@intel.com> 807*75fd0b74Schristos 808*75fd0b74Schristos * elflink.c (elf_fixup_link_order): Report locations for mixed 809*75fd0b74Schristos ordered and unordered input sections. 810*75fd0b74Schristos 811*75fd0b74Schristos2005-09-22 James E. Wilson <wilson@specifix.com> 812*75fd0b74Schristos 813*75fd0b74Schristos * dwarf2.c (struct funcinfo): Delete nesting_level field. 814*75fd0b74Schristos (lookup_address_in_function_table): Delete code to set funcinfo 815*75fd0b74Schristos caller_func field. Delete local curr_func. 816*75fd0b74Schristos (scan_unit_for_symbols): New locals nested_funcs, nested_funcs_size. 817*75fd0b74Schristos Delete code setting funcinfo nesting_level field. Add code to set 818*75fd0b74Schristos funcinfo caller_func field. 819*75fd0b74Schristos 820*75fd0b74Schristos2005-09-20 James E. Wilson <wilson@specifix.com> 821*75fd0b74Schristos 822*75fd0b74Schristos * dwarf2.c (find_abstract_instance_name): Don't early exit when name 823*75fd0b74Schristos set. For DW_AT_name case, only set name if not already set. Handle 824*75fd0b74Schristos DW_AT_MIPS_linkage_name. 825*75fd0b74Schristos 826*75fd0b74Schristos2005-09-20 Alan Modra <amodra@bigpond.net.au> 827*75fd0b74Schristos 828*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Simplify. 829*75fd0b74Schristos 830*75fd0b74Schristos2005-09-19 Alan Modra <amodra@bigpond.net.au> 831*75fd0b74Schristos 832*75fd0b74Schristos * elf64-ppc.c (ppc_build_one_stub): Replace assertion that long 833*75fd0b74Schristos branch offset is in range with an error. Print full stub name on 834*75fd0b74Schristos errors. 835*75fd0b74Schristos (ppc_size_one_stub): Print full stub name on errors. 836*75fd0b74Schristos (group_sections): Warn if section size exceeds group size. 837*75fd0b74Schristos (ppc64_elf_size_stubs): Continue relaxing when stub types change. 838*75fd0b74Schristos 839*75fd0b74Schristos2005-09-09 Kevin Buettner <kevinb@redhat.com> 840*75fd0b74Schristos 841*75fd0b74Schristos * elf32-am33lin.c (bfd.h, sysdep.h, elf-bfd.h, elf/mn10300.h): 842*75fd0b74Schristos Include. 843*75fd0b74Schristos (elf32_am33lin_grok_prstatus, elf32_am33lin_grok_psinfo): New 844*75fd0b74Schristos functions. 845*75fd0b74Schristos (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define. 846*75fd0b74Schristos 847*75fd0b74Schristos2005-09-09 Richard Earnshaw <richard.earnshaw@arm.com> 848*75fd0b74Schristos 849*75fd0b74Schristos * elf32-arm.c (elf32_arm_section_from_shdr): Accept SHT_ARM_PREEMPTMAP 850*75fd0b74Schristos and SHT_ARM_ATTRIBUTES. 851*75fd0b74Schristos 852*75fd0b74Schristos2005-09-08 H.J. Lu <hongjiu.lu@intel.com> 853*75fd0b74Schristos 854*75fd0b74Schristos * elflink.c (elf_get_linked_section_vma): Fix a typo in comment. 855*75fd0b74Schristos * elfxx-ia64.c (elf_backend_link_order_error_handler): Likewise. 856*75fd0b74Schristos 857*75fd0b74Schristos2005-09-08 H.J. Lu <hongjiu.lu@intel.com> 858*75fd0b74Schristos 859*75fd0b74Schristos PR ld/1263 860*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Abort for 861*75fd0b74Schristos --just-symbols on DSO. 862*75fd0b74Schristos 863*75fd0b74Schristos2005-09-08 Paul Brook <paul@codesourcery.com> 864*75fd0b74Schristos 865*75fd0b74Schristos * reloc.c: Rename BFD_RELOC_ARM_SMI to BFD_RELOC_ARM_SMC. 866*75fd0b74Schristos * bfd-in2.h: Regenerate. 867*75fd0b74Schristos * libbfd.h: Regenerate. 868*75fd0b74Schristos 869*75fd0b74Schristos2005-09-06 H.J. Lu <hongjiu.lu@intel.com> 870*75fd0b74Schristos 871*75fd0b74Schristos PR ld/1301 872*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Don't check undefined 873*75fd0b74Schristos symbol introduced by "ld -u" for TLS. 874*75fd0b74Schristos 875*75fd0b74Schristos2005-09-02 Paul Brook <paul@codesourcery.com> 876*75fd0b74Schristos 877*75fd0b74Schristos * libbdf.h: Regenerate. 878*75fd0b74Schristos * bfd-in2.h: Regenerate. 879*75fd0b74Schristos * reloc.c: Add BFD_RELOC_ARM_T32_CP_OFF_IMM and 880*75fd0b74Schristos BFD_RELOC_ARM_T32_CP_OFF_IMM_S2. 881*75fd0b74Schristos 882*75fd0b74Schristos2005-09-01 Dmitry Diky <diwil@spec.ru> 883*75fd0b74Schristos 884*75fd0b74Schristos * elf32-msp430.c (msp430_elf_relax_delete_bytes): Do not adjust 885*75fd0b74Schristos local symbols and move it to 886*75fd0b74Schristos (msp430_elf_relax_adjust_locals): New function - walk over the 887*75fd0b74Schristos sections in the bfd and adjust relocations as necessary. 888*75fd0b74Schristos 889*75fd0b74Schristos2005-08-31 DJ Delorie <dj@redhat.com> 890*75fd0b74Schristos 891*75fd0b74Schristos * elf32-i386.c (elf_i386_check_relocs): Don't cast a unary & 892*75fd0b74Schristos address operator, as that breaks GCC's strict aliasing rules. 893*75fd0b74Schristos (elf_i386_size_dynamic_sections): Avoid the need for type 894*75fd0b74Schristos punning. 895*75fd0b74Schristos * elf64-x86-64.c (elf_x86_64_check_relocs): Don't cast a unary 896*75fd0b74Schristos & address operator, as that breaks GCC's strict aliasing 897*75fd0b74Schristos rules. 898*75fd0b74Schristos (elf_x86_64_size_dynamic_sections): Avoid the need for type 899*75fd0b74Schristos punning. 900*75fd0b74Schristos 901*75fd0b74Schristos2005-08-30 Phil Edwards <phil@codesourcery.com> 902*75fd0b74Schristos 903*75fd0b74Schristos * config.bfd (i[3-7]86-*-vxworks): Match vxworks* instead. 904*75fd0b74Schristos 905*75fd0b74Schristos2005-08-29 H.J. Lu <hongjiu.lu@intel.com> 906*75fd0b74Schristos 907*75fd0b74Schristos PR ld/1247 908*75fd0b74Schristos * elfxx-ia64.c (allocate_fptr): Check undefined symbol. 909*75fd0b74Schristos 910*75fd0b74Schristos2005-08-29 Steven J. Hill <sjhill@realitydiluted.com> 911*75fd0b74Schristos 912*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_relocate_section): Initialise 913*75fd0b74Schristos 'value' to avoid compile time warning message. 914*75fd0b74Schristos 915*75fd0b74Schristos2005-08-26 Christian Groessler <chris@groessler.org> 916*75fd0b74Schristos 917*75fd0b74Schristos * coff-z8k.c: (r_jr, r_disp7, r_callr): Fix src_mask and dst_mask 918*75fd0b74Schristos of HOWTO. 919*75fd0b74Schristos (coff_z8k_select_reloc): Remove. 920*75fd0b74Schristos (SELECT_RELOC): Remove. 921*75fd0b74Schristos (coff_z8k_reloc_type_lookup): New function. 922*75fd0b74Schristos (coff_bfd_reloc_type_lookup): Define. 923*75fd0b74Schristos * configure.in: Add cofflink.lo to z8kcoff_vec. 924*75fd0b74Schristos * configure: Regenerate. 925*75fd0b74Schristos * reloc.c: (bfd_reloc_code_type): Add z8k relocations. 926*75fd0b74Schristos (bfd_install_relocation): Don't clear reloc_entry->addend for 927*75fd0b74Schristos coff-z8k target. 928*75fd0b74Schristos * bfd-in2.h: Regenerate. 929*75fd0b74Schristos * libbfd.h: Regenerate. 930*75fd0b74Schristos 931*75fd0b74Schristos2005-08-25 Kaz Kojima <kkojima@rr.iij4u.or.jp> 932*75fd0b74Schristos 933*75fd0b74Schristos * elf32-sh.c (sh_elf_get_flags_from_mach): Fix off-by-one error. 934*75fd0b74Schristos 935*75fd0b74Schristos2005-08-24 H.J. Lu <hongjiu.lu@intel.com> 936*75fd0b74Schristos 937*75fd0b74Schristos PR ld/1208 938*75fd0b74Schristos * elf-hppa.h (elf_hppa_relocate_section): Print out the name 939*75fd0b74Schristos of unresolvable relocation. 940*75fd0b74Schristos * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 941*75fd0b74Schristos * elf32-arm.c (elf32_arm_relocate_section): Likewise. 942*75fd0b74Schristos * elf32-i386.c (elf_i386_relocate_section): Likewise. 943*75fd0b74Schristos * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 944*75fd0b74Schristos * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 945*75fd0b74Schristos * elf32-s390.c (elf_s390_relocate_section): Likewise. 946*75fd0b74Schristos * elf32-sh.c (sh_elf_relocate_section): Likewise. 947*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise. 948*75fd0b74Schristos * elf64-s390.c (elf_s390_relocate_section): Likewise. 949*75fd0b74Schristos * elf64-sh64.c (sh_elf64_relocate_section): Likewise. 950*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 951*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise. 952*75fd0b74Schristos 953*75fd0b74Schristos2005-08-18 Kaz Kojima <kkojima@rr.iij4u.or.jp> 954*75fd0b74Schristos 955*75fd0b74Schristos * config.bfd: Add bfd_elf32_shnbsd_vec and bfd_elf32_shlnbsd_vec 956*75fd0b74Schristos to targ_selvecs for sh5*-*-netbsd* and sh64*-*-netbsd*. 957*75fd0b74Schristos 958*75fd0b74Schristos2005-08-18 Alan Modra <amodra@bigpond.net.au> 959*75fd0b74Schristos 960*75fd0b74Schristos * coff-a29k.c: Delete. 961*75fd0b74Schristos * cpu-a29k.c: Delete. 962*75fd0b74Schristos * Makefile.am: Remove mention of a29k files. 963*75fd0b74Schristos * aoutf1.h: Remove a29k support. 964*75fd0b74Schristos * aoutx.h: Likewise. 965*75fd0b74Schristos * archures.c: Likewise. 966*75fd0b74Schristos * coffcode.h: Likewise. 967*75fd0b74Schristos * config.bfd: Likewise. 968*75fd0b74Schristos * configure.in: Likewise. 969*75fd0b74Schristos * ieee.c: Likewise. 970*75fd0b74Schristos * mipsbsd.c: Likewise. 971*75fd0b74Schristos * pdp11.c: Likewise. 972*75fd0b74Schristos * sparclynx.c: Likewise. 973*75fd0b74Schristos * targets.c: Likewise. 974*75fd0b74Schristos * Makefile.in: Regenerate. 975*75fd0b74Schristos * configure: Regenerate. 976*75fd0b74Schristos * bfd-in2.h: Regenerate. 977*75fd0b74Schristos * po/SRC-POTFILES.in: Regenerate. 978*75fd0b74Schristos 979*75fd0b74Schristos2005-08-18 Alan Modra <amodra@bigpond.net.au> 980*75fd0b74Schristos 981*75fd0b74Schristos * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Warn on 982*75fd0b74Schristos zero size dynamic variables. 983*75fd0b74Schristos * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. 984*75fd0b74Schristos * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. 985*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. 986*75fd0b74Schristos * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. 987*75fd0b74Schristos * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise. 988*75fd0b74Schristos * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. 989*75fd0b74Schristos * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. 990*75fd0b74Schristos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. 991*75fd0b74Schristos * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. 992*75fd0b74Schristos * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. 993*75fd0b74Schristos * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. 994*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. 995*75fd0b74Schristos * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. 996*75fd0b74Schristos * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. 997*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise. 998*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. 999*75fd0b74Schristos 1000*75fd0b74Schristos2005-08-17 H.J. Lu <hongjiu.lu@intel.com> 1001*75fd0b74Schristos 1002*75fd0b74Schristos PR binutils/1179 1003*75fd0b74Schristos * dwarf2.c (_bfd_dwarf2_find_nearest_line): Use section lma 1004*75fd0b74Schristos instead of vma. 1005*75fd0b74Schristos (_bfd_dwarf2_find_line): Likewise. 1006*75fd0b74Schristos 1007*75fd0b74Schristos2005-08-17 Alan Modra <amodra@bigpond.net.au> 1008*75fd0b74Schristos 1009*75fd0b74Schristos * elf64-mmix.c (mmix_elf_add_symbol_hook): Mark reg section 1010*75fd0b74Schristos SEC_LINKER_CREATED. 1011*75fd0b74Schristos (mmix_elf_final_link): Check that section hasn't already been 1012*75fd0b74Schristos removed before removing. 1013*75fd0b74Schristos * mmo.c (mmo_scan): Mark reg contents section SEC_LINKER_CREATED. 1014*75fd0b74Schristos (mmo_canonicalize_symtab): Likewise for reg section. 1015*75fd0b74Schristos 1016*75fd0b74Schristos2005-08-17 Alan Modra <amodra@bigpond.net.au> 1017*75fd0b74Schristos 1018*75fd0b74Schristos * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Move assert later. 1019*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Cope with being called 1020*75fd0b74Schristos without any got section. 1021*75fd0b74Schristos 1022*75fd0b74Schristos2005-08-17 Danny Smith <dannysmith@users.sourceforge.net> 1023*75fd0b74Schristos 1024*75fd0b74Schristos * cofflink.c (_bfd_coff_generic_relocate_section): Correct 1025*75fd0b74Schristos comment. 1026*75fd0b74Schristos 1027*75fd0b74Schristos2005-08-17 Alan Modra <amodra@bigpond.net.au> 1028*75fd0b74Schristos 1029*75fd0b74Schristos * elflink.c (_bfd_elf_define_linkage_sym): Don't call 1030*75fd0b74Schristos bfd_elf_link_record_dynamic_symbol. Call elf_backend_hide_symbol. 1031*75fd0b74Schristos (_bfd_elf_link_renumber_dynsyms): Formatting. 1032*75fd0b74Schristos (struct elf_gc_sweep_symbol_info): New. 1033*75fd0b74Schristos (elf_gc_sweep_symbol): Rewrite. 1034*75fd0b74Schristos (elf_gc_sweep): Adjust params and elf_gc_sweep_symbol call. 1035*75fd0b74Schristos Call _bfd_elf_link_renumber_dynsyms. 1036*75fd0b74Schristos (bfd_elf_gc_sections): Adjust elf_gc_sweep call. 1037*75fd0b74Schristos 1038*75fd0b74Schristos2005-08-16 Alan Modra <amodra@bigpond.net.au> 1039*75fd0b74Schristos 1040*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_opd): Don't call dec_dynrel_count 1041*75fd0b74Schristos when relocatable. 1042*75fd0b74Schristos 1043*75fd0b74Schristos2005-08-15 Bob Wilson <bob.wilson@acm.org> 1044*75fd0b74Schristos 1045*75fd0b74Schristos * elf32-xtensa.c (ELF_MACHINE_CODE, ELF_MACHINE_ALT1): Swap values 1046*75fd0b74Schristos of EM_XTENSA and EM_XTENSA_OLD. 1047*75fd0b74Schristos 1048*75fd0b74Schristos2005-08-16 Alan Modra <amodra@bigpond.net.au> 1049*75fd0b74Schristos 1050*75fd0b74Schristos * elf-bfd.h (_bfd_elf_define_linkage_sym): Declare. 1051*75fd0b74Schristos * elflink.c (_bfd_elf_define_linkage_sym): New function, extracted 1052*75fd0b74Schristos from.. 1053*75fd0b74Schristos (_bfd_elf_create_got_section): ..here. 1054*75fd0b74Schristos (_bfd_elf_link_create_dynamic_sections): Call it for _DYNAMIC. 1055*75fd0b74Schristos (_bfd_elf_create_dynamic_sections): ..and _PROCEDURE_LINKAGE_TABLE_. 1056*75fd0b74Schristos * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Use 1057*75fd0b74Schristos _bfd_elf_define_linkage_sym. 1058*75fd0b74Schristos * elf32-frv.c (_frv_create_got_section): Likewise. 1059*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise. 1060*75fd0b74Schristos 1061*75fd0b74Schristos2005-08-15 Paul Brook <paul@codesourcery.com> 1062*75fd0b74Schristos 1063*75fd0b74Schristos * elf32-arm.c (elf32_arm_howto_table_1): Make R_ARM_PLT32 the same as 1064*75fd0b74Schristos R_ARM_PC24. 1065*75fd0b74Schristos 1066*75fd0b74Schristos2005-08-13 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 1067*75fd0b74Schristos 1068*75fd0b74Schristos PR ld/1135 1069*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_special_sections): Add flag definitions for 1070*75fd0b74Schristos .plt, .dlt, .sdata, .sbss and .tbss. 1071*75fd0b74Schristos 1072*75fd0b74Schristos2005-08-12 Dmitry Diky <diwil@spec.ru> 1073*75fd0b74Schristos 1074*75fd0b74Schristos * elf32-msp430.c (msp430_elf_relax_delete_bytes): Adjust relocations 1075*75fd0b74Schristos referenced by .section + DISPLACEMENT. 1076*75fd0b74Schristos 1077*75fd0b74Schristos2005-08-10 James E. Wilson <wilson@specifix.com> 1078*75fd0b74Schristos 1079*75fd0b74Schristos * dwarf2.c (scan_unit_for_symbols, case DT_AT_location): Verify that 1080*75fd0b74Schristos DW_OP_addr is only opcode in location before using it. 1081*75fd0b74Schristos 1082*75fd0b74Schristos2005-08-09 H.J. Lu <hongjiu.lu@intel.com> 1083*75fd0b74Schristos 1084*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_final_link): Reset gp. 1085*75fd0b74Schristos 1086*75fd0b74Schristos2005-08-09 Rodney Brown <rbrown@bravurasolutions.com.au> 1087*75fd0b74Schristos Nick Clifton <nickc@redhat.com> 1088*75fd0b74Schristos 1089*75fd0b74Schristos * aix5ppc-core.c (xcoff64_core_p): Constify return_value 1090*75fd0b74Schristos variable. Also, do not use core_hdr macro as it evaluates to a 1091*75fd0b74Schristos cast of an lvalue which is no longer supported by GCC 4.0. 1092*75fd0b74Schristos 1093*75fd0b74Schristos2005-08-08 Eric Dönges <Eric.Doenges@betty-tv.com> 1094*75fd0b74Schristos 1095*75fd0b74Schristos * archures.c (bfd_mach_msp21): New MSP430 machine number. 1096*75fd0b74Schristos * bfd-in2.h: Regenerate. 1097*75fd0b74Schristos * cpu-msp430.c (arch_info_struct): Add support for msp430x21xx 1098*75fd0b74Schristos variants. 1099*75fd0b74Schristos 1100*75fd0b74Schristos2005-08-07 Nick Clifton <nickc@redhat.com> 1101*75fd0b74Schristos Paul Brook <paul@codesourcery.com> 1102*75fd0b74Schristos 1103*75fd0b74Schristos PR 1147 1104*75fd0b74Schristos * elf32-arm.c (bfd_elf32_close_and_cleanup): Define. 1105*75fd0b74Schristos (elf32_arm_close_and_cleanup): New function - walk over the 1106*75fd0b74Schristos sections in the bfd that is being closed removing them from the 1107*75fd0b74Schristos list of recorded sections. 1108*75fd0b74Schristos (unrecord_section_via_map_over_sections): New helper function. 1109*75fd0b74Schristos (record_section_with_arm_elf_section_data): Call bfd_malloc 1110*75fd0b74Schristos instead of bfd_alloc. Remove unneeded abfd parameter. 1111*75fd0b74Schristos (elf32_arm_new_section_hook): Do not pass bfd to 1112*75fd0b74Schristos record_section_with_arm_elf_section_data. 1113*75fd0b74Schristos 1114*75fd0b74Schristos * elfxx-target.h (bfd_elfNN_close_and_cleanup): Only define if not 1115*75fd0b74Schristos already defined by the target. 1116*75fd0b74Schristos 1117*75fd0b74Schristos2005-08-05 Fred Fish <fnf@specifix.com> 1118*75fd0b74Schristos 1119*75fd0b74Schristos * dwarf2.c (read_rangelist): Use addr_size instead of offset_size 1120*75fd0b74Schristos to determine how many bytes to read from each rangelist entry. 1121*75fd0b74Schristos 1122*75fd0b74Schristos2005-08-05 H.J. Lu <hongjiu.lu@intel.com> 1123*75fd0b74Schristos 1124*75fd0b74Schristos * bfd.c (bfd_hide_symbol): New. 1125*75fd0b74Schristos * bfd-in2.h: Regenerated. 1126*75fd0b74Schristos 1127*75fd0b74Schristos2005-08-04 H.J. Lu <hongjiu.lu@intel.com> 1128*75fd0b74Schristos 1129*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_merge_symbol): When mixing a 1130*75fd0b74Schristos large common symbol and a normal common symbol, always turn 1131*75fd0b74Schristos the large common symbol into a normal one. 1132*75fd0b74Schristos 1133*75fd0b74Schristos2005-08-04 Alan Modra <amodra@bigpond.net.au> 1134*75fd0b74Schristos 1135*75fd0b74Schristos * elf32-ppc.c (struct elf_linker_section): Replace sym_val field 1136*75fd0b74Schristos with sym. 1137*75fd0b74Schristos (ppc_elf_relocate_section): Adjust for above. 1138*75fd0b74Schristos (create_sdata_sym): New function. 1139*75fd0b74Schristos (ppc_elf_create_linker_section): Call it. 1140*75fd0b74Schristos (ppc_elf_check_relocs): Correct has_sda_refs and non_got_refs. 1141*75fd0b74Schristos Create sdata syms for all SDA relocs. 1142*75fd0b74Schristos (ppc_elf_adjust_dynamic_symbol): Don't special case _SDA_BASE_ 1143*75fd0b74Schristos and _SDA2_BASE_. 1144*75fd0b74Schristos (ppc_elf_set_sdata_syms): Delete. 1145*75fd0b74Schristos * elflink.c (bfd_elf_size_dynamic_sections): Don't create DT_INIT 1146*75fd0b74Schristos and DT_FINI tags unless associated section has input. 1147*75fd0b74Schristos (bfd_elf_set_symbol, _bfd_elf_provide_symbol): Delete. 1148*75fd0b74Schristos (_bfd_elf_provide_section_bound_symbols): Delete. 1149*75fd0b74Schristos * bfd-in.h (_bfd_elf_provide_symbol): Delete. 1150*75fd0b74Schristos (_bfd_elf_provide_section_bound_symbols): Delete. 1151*75fd0b74Schristos * bfd-in2.h: Regenerate. 1152*75fd0b74Schristos 1153*75fd0b74Schristos2005-08-04 Alan Modra <amodra@bigpond.net.au> 1154*75fd0b74Schristos 1155*75fd0b74Schristos * elflink.c (fix_syms, _bfd_elf_fix_excluded_sec_syms): Move to.. 1156*75fd0b74Schristos * linker.c (fix_syms, _bfd_fix_excluded_sec_syms): ..here. 1157*75fd0b74Schristos * bfd-in.h (_bfd_fix_excluded_sec_syms): Rename. 1158*75fd0b74Schristos * bfd-in2.h: Regenerate. 1159*75fd0b74Schristos 1160*75fd0b74Schristos2005-08-03 H.J. Lu <hongjiu.lu@intel.com> 1161*75fd0b74Schristos 1162*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relax_section): Resize .rela.got 1163*75fd0b74Schristos only if it isn't NULL. 1164*75fd0b74Schristos 1165*75fd0b74Schristos2005-08-03 H.J. Lu <hongjiu.lu@intel.com> 1166*75fd0b74Schristos 1167*75fd0b74Schristos * elf32-i386.c (elf_howto_table): Undo the overflow change for 1168*75fd0b74Schristos R_386_PC16 made on 2005-07-18. 1169*75fd0b74Schristos 1170*75fd0b74Schristos * elf64-x86-64.c (x86_64_elf_howto_table): Undo the overflow 1171*75fd0b74Schristos change for R_X86_64_PC16 made on 2005-07-18. 1172*75fd0b74Schristos 1173*75fd0b74Schristos2005-08-03 Alan Modra <amodra@bigpond.net.au> 1174*75fd0b74Schristos 1175*75fd0b74Schristos * elf32-ppc.c (struct ppc_elf_link_hash_table): Remove hgot. Use 1176*75fd0b74Schristos elf.hgot throughout file. 1177*75fd0b74Schristos 1178*75fd0b74Schristos2005-08-03 Alan Modra <amodra@bigpond.net.au> 1179*75fd0b74Schristos 1180*75fd0b74Schristos * elf32-ppc.c (ppc_elf_size_dynamic_sections): Correct value of 1181*75fd0b74Schristos _GLOBAL_OFFSET_TABLE_ for > 32k GOT. 1182*75fd0b74Schristos 1183*75fd0b74Schristos2005-08-02 Andreas Schwab <schwab@suse.de> 1184*75fd0b74Schristos 1185*75fd0b74Schristos * elfxx-ia64.c (struct elfNN_ia64_allocate_data): Add only_got. 1186*75fd0b74Schristos (elfNN_ia64_relax_section): Reallocate .rela.got when .got has 1187*75fd0b74Schristos changed. 1188*75fd0b74Schristos (allocate_dynrel_entries): Look only at GOT relocations when 1189*75fd0b74Schristos only_got is true. 1190*75fd0b74Schristos (elfNN_ia64_size_dynamic_sections): Set only_got to false before 1191*75fd0b74Schristos calling allocate_dynrel_entries. 1192*75fd0b74Schristos 1193*75fd0b74Schristos2005-08-02 Nick Clifton <nickc@redhat.com> 1194*75fd0b74Schristos 1195*75fd0b74Schristos PR 1147 1196*75fd0b74Schristos * elf32-arm.c (struct _arm_elf_section_data): Turn into a typedef 1197*75fd0b74Schristos and make the mapcount field unsigned. 1198*75fd0b74Schristos (struct section_list): New: Used to keep track of which sections 1199*75fd0b74Schristos have an _arm_elf_section_data structure. 1200*75fd0b74Schristos (record_section_with_arm_elf_section_data): New function. 1201*75fd0b74Schristos (get_arm_elf_section_data): New function. 1202*75fd0b74Schristos (unrecord_section_with_arm_elf_section_data): New function. 1203*75fd0b74Schristos (elf32_arm_output_symbol_hook): Use get_arm_elf_section_data. 1204*75fd0b74Schristos (elf32_arm_new_section_hook): Call 1205*75fd0b74Schristos record_section_with_arm_elf_section_data. 1206*75fd0b74Schristos (elf32_arm_write_section): Use get_arm_elf_section_data and 1207*75fd0b74Schristos unrecord_section_with_arm_elf_section_data. 1208*75fd0b74Schristos 1209*75fd0b74Schristos2005-08-01 Richard Sandiford <richard@codesourcery.com> 1210*75fd0b74Schristos 1211*75fd0b74Schristos * elfxx-mips.c (mips_mach_extends_p): Treat MIPS64 as an extension 1212*75fd0b74Schristos of MIPS32 and MIPS64r2 as an extension of MIPS32r2. 1213*75fd0b74Schristos 1214*75fd0b74Schristos2005-07-30 David Daney <ddaney@avtrex.com> 1215*75fd0b74Schristos 1216*75fd0b74Schristos * elflink.c (elf_gc_sweep): Set dynsymcount to correct value. 1217*75fd0b74Schristos 1218*75fd0b74Schristos2005-07-29 David Daney <ddaney@avtrex.com> 1219*75fd0b74Schristos 1220*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Ignore _gp_disp 1221*75fd0b74Schristos if it is in the *ABS* section. 1222*75fd0b74Schristos 1223*75fd0b74Schristos2005-07-29 Paul Brook <paul@codesourcery.com> 1224*75fd0b74Schristos 1225*75fd0b74Schristos * reloc.c: Add BFD_RELOC_ARM_T32_ADD_PC12. 1226*75fd0b74Schristos * bfd-in2.h: Regenerate. 1227*75fd0b74Schristos * libbfd.h: Regenerate. 1228*75fd0b74Schristos 1229*75fd0b74Schristos2005-07-29 Paul Brook <paul@codesourcery.com> 1230*75fd0b74Schristos 1231*75fd0b74Schristos * reloc.c (BFD_RELOC_ARM_T32_IMM12): Add. 1232*75fd0b74Schristos * bfd-in2.h: Regeenrate. 1233*75fd0b74Schristos * libbfd.h: Regenerate. 1234*75fd0b74Schristos 1235*75fd0b74Schristos2005-07-29 Pavel Kankovsky <peak@argo.troja.mff.cuni.cz> 1236*75fd0b74Schristos 1237*75fd0b74Schristos * peXXigen.c (pe_print_edata): Compute the size of the export 1238*75fd0b74Schristos table from the size field in the DataDictionary and not the size 1239*75fd0b74Schristos of the section. Some linkers embed the export table inside a 1240*75fd0b74Schristos larger section. 1241*75fd0b74Schristos 1242*75fd0b74Schristos2005-07-29 Alan Modra <amodra@bigpond.net.au> 1243*75fd0b74Schristos 1244*75fd0b74Schristos * elf-bfd.h (struct elf_backend_data): Add action_discarded. 1245*75fd0b74Schristos (enum action_discarded): Move from.. 1246*75fd0b74Schristos * elflink.c (enum action_discarded): ..here. 1247*75fd0b74Schristos (_bfd_elf_default_action_discarded): Rename from elf_action_discarded. 1248*75fd0b74Schristos Remove target specific section checks. 1249*75fd0b74Schristos (elf_link_input_bfd): Adjust. 1250*75fd0b74Schristos * elfxx-target.h (elf_backend_action_discarded): Define. 1251*75fd0b74Schristos (elfNN_bed): Init new field. 1252*75fd0b74Schristos * bfd-in.h (_bfd_elf_default_action_discarded): Declare. 1253*75fd0b74Schristos * bfd-in2.h: Regenerate. 1254*75fd0b74Schristos * elf-hppa.h (elf_hppa_action_discarded): New function. 1255*75fd0b74Schristos * elf32-hppa.c (elf_backend_action_discarded): Define. 1256*75fd0b74Schristos * elf64-hppa.c (elf_backend_action_discarded): Define. 1257*75fd0b74Schristos * elf32-ppc.c (ppc_elf_action_discarded): New function. 1258*75fd0b74Schristos (elf_backend_action_discarded): Define. 1259*75fd0b74Schristos 1260*75fd0b74Schristos2005-07-27 Alan Modra <amodra@bigpond.net.au> 1261*75fd0b74Schristos 1262*75fd0b74Schristos * elflink.c (fix_syms): Handle symbols defined in input sections. 1263*75fd0b74Schristos 1264*75fd0b74Schristos2005-07-27 Jan Beulich <jbeulich@novell.com> 1265*75fd0b74Schristos 1266*75fd0b74Schristos * elf64-x86-64.c (R_X86_64_standard, R_X86_64_vt_offset): New. 1267*75fd0b74Schristos (elf64_x86_64_info_to_howto): Use them. 1268*75fd0b74Schristos 1269*75fd0b74Schristos2005-07-27 Alan Modra <amodra@bigpond.net.au> 1270*75fd0b74Schristos 1271*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Skip weak redefinition 1272*75fd0b74Schristos regardless of strength of previous definition. 1273*75fd0b74Schristos 1274*75fd0b74Schristos2005-07-26 Alan Modra <amodra@bigpond.net.au> 1275*75fd0b74Schristos 1276*75fd0b74Schristos * elflink.c (elf_gc_mark_dynamic_ref_symbol): Handle -shared. 1277*75fd0b74Schristos (bfd_elf_gc_sections): Allow -gc-sections when -shared. 1278*75fd0b74Schristos * elf32-ppc.c (ppc_elf_gc_sweep_hook): Correct for -shared. 1279*75fd0b74Schristos 1280*75fd0b74Schristos2005-07-26 Alan Modra <amodra@bigpond.net.au> 1281*75fd0b74Schristos 1282*75fd0b74Schristos * elflink.c (elf_gc_sweep): Move gcc_except_table code.. 1283*75fd0b74Schristos (bfd_elf_gc_sections): ..to here. 1284*75fd0b74Schristos 1285*75fd0b74Schristos2005-07-25 DJ Delorie <dj@redhat.com> 1286*75fd0b74Schristos 1287*75fd0b74Schristos * reloc.c: Remove unused M32C relocs, add BFD_RELOC_M32C_HI8. 1288*75fd0b74Schristos * libbfd.h: Regenerate. 1289*75fd0b74Schristos * bfd-in2.h: Regenerate. 1290*75fd0b74Schristos 1291*75fd0b74Schristos * elf32-m32c.c (m32c_elf_howto_table): Add R_M32C_8, R_M32C_LO16, 1292*75fd0b74Schristos R_M32C_HI8, R_M32C_HI16. 1293*75fd0b74Schristos (m32c_reloc_map): Likewise. 1294*75fd0b74Schristos (m32c_elf_relocate_section): Add R_M32C_HI8 and R_M32C_HI16. 1295*75fd0b74Schristos 1296*75fd0b74Schristos2005-07-25 Jan Hubicka <jh@suse.cz> 1297*75fd0b74Schristos H.J. Lu <hongjiu.lu@intel.com> 1298*75fd0b74Schristos 1299*75fd0b74Schristos * elf-bfd.h (_bfd_elf_large_com_section): New. 1300*75fd0b74Schristos * elf.c (_bfd_elf_large_com_section): New. Defined. 1301*75fd0b74Schristos 1302*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_add_symbol_hook): New. 1303*75fd0b74Schristos (elf64_x86_64_elf_section_from_bfd_section): New. 1304*75fd0b74Schristos (elf64_x86_64_symbol_processing): New. 1305*75fd0b74Schristos (elf64_x86_64_common_definition): New. 1306*75fd0b74Schristos (elf64_x86_64_common_section_index): New. 1307*75fd0b74Schristos (elf64_x86_64_common_section): New. 1308*75fd0b74Schristos (elf64_x86_64_merge_symbol): New. 1309*75fd0b74Schristos (elf64_x86_64_additional_program_headers): New. 1310*75fd0b74Schristos (elf64_x86_64_special_sections): New. 1311*75fd0b74Schristos (elf_backend_section_from_bfd_section): New. Defined. 1312*75fd0b74Schristos (elf_backend_add_symbol_hook): Likewise. 1313*75fd0b74Schristos (elf_backend_common_section_index): Likewise. 1314*75fd0b74Schristos (elf_backend_common_section): Likewise. 1315*75fd0b74Schristos (elf_backend_common_definition): Likewise. 1316*75fd0b74Schristos (elf_backend_merge_symbol): Likewise. 1317*75fd0b74Schristos (elf_backend_special_sections): Likewise. 1318*75fd0b74Schristos (elf_backend_additional_program_headers): Likewise. 1319*75fd0b74Schristos 1320*75fd0b74Schristos2005-07-25 H.J. Lu <hongjiu.lu@intel.com> 1321*75fd0b74Schristos 1322*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Add common_definition, 1323*75fd0b74Schristos common_section_index, common_section, and merge_symbol. 1324*75fd0b74Schristos (_bfd_elf_common_definition): New. 1325*75fd0b74Schristos (_bfd_elf_common_section_index): New. 1326*75fd0b74Schristos (_bfd_elf_common_section): New. 1327*75fd0b74Schristos 1328*75fd0b74Schristos * elf.c (elf_fake_sections): Don't clear sh_flags. 1329*75fd0b74Schristos 1330*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Call backend merge_symbol 1331*75fd0b74Schristos if it is available. 1332*75fd0b74Schristos (is_global_data_symbol_definition): Call backend 1333*75fd0b74Schristos common_definition instead of checking SHN_COMMON. 1334*75fd0b74Schristos (elf_link_add_object_symbols): Likewise. 1335*75fd0b74Schristos (elf_link_output_extsym): Call backend common_section_index 1336*75fd0b74Schristos for common section index. 1337*75fd0b74Schristos (_bfd_elf_common_definition): New. 1338*75fd0b74Schristos (_bfd_elf_common_section_index): New. 1339*75fd0b74Schristos (_bfd_elf_common_section): New. 1340*75fd0b74Schristos 1341*75fd0b74Schristos * elfxx-target.h (elf_backend_common_definition): New. 1342*75fd0b74Schristos (elf_backend_common_section_index): New. 1343*75fd0b74Schristos (elf_backend_common_section): New. 1344*75fd0b74Schristos (elf_backend_merge_symbol): New. 1345*75fd0b74Schristos (elfNN_bed): Initialize common_definition, common_section_index, 1346*75fd0b74Schristos common_section, and merge_symbol. 1347*75fd0b74Schristos 1348*75fd0b74Schristos * section.c (BFD_FAKE_SECTION): New. 1349*75fd0b74Schristos (STD_SECTION): Use it. 1350*75fd0b74Schristos * bfd-in2.h: Regenerated. 1351*75fd0b74Schristos 1352*75fd0b74Schristos2005-07-23 Olaf Hering <olh@suse.de> 1353*75fd0b74Schristos 1354*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Add '\n' for linker einfo 1355*75fd0b74Schristos callback. 1356*75fd0b74Schristos 1357*75fd0b74Schristos2005-07-21 Ralf Corsepius <ralf.corsepius@rtems.org> 1358*75fd0b74Schristos 1359*75fd0b74Schristos * config.bfd: Remove i[3-7]86-*-rtemself*. 1360*75fd0b74Schristos Remove sparc-*-rtemself*. 1361*75fd0b74Schristos 1362*75fd0b74Schristos2005-07-22 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 1363*75fd0b74Schristos 1364*75fd0b74Schristos * elf32-m32r.c (m32r_elf_check_relocs): Fix pc count for 1365*75fd0b74Schristos R_M32R_REL32. 1366*75fd0b74Schristos 1367*75fd0b74Schristos2005-07-21 Ben Elliston <bje@gnu.org> 1368*75fd0b74Schristos 1369*75fd0b74Schristos * Makefile.am (BFD32_BACKENDS): Remove cf-m68klynx.lo. 1370*75fd0b74Schristos (BFD32_BACKENDS): Likewise, remove m68klynx.lo. 1371*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Remove cf-m68klynx.c, m68klynx.c. 1372*75fd0b74Schristos (cf-m68klynx.lo, m68klynx.lo): Remove targets. 1373*75fd0b74Schristos * Makefile.in: Regenerate. 1374*75fd0b74Schristos * cf-m68klynx.c: Remove. 1375*75fd0b74Schristos * m68klynx.c: Likewise. 1376*75fd0b74Schristos * configure.in (m68klynx_aout_vec): Remove vector. 1377*75fd0b74Schristos (m68klynx_coff_vec): Likewise. 1378*75fd0b74Schristos * configure: Regenerate. 1379*75fd0b74Schristos * targets.c (m68klynx_aout_vec): Remove extern. 1380*75fd0b74Schristos (m68klynx_coff_vec): Likewise. 1381*75fd0b74Schristos (_bfd_target_vector): Remove m68klynx_{aout,coff}_vec. 1382*75fd0b74Schristos * po/SRC-POTFILES.in: Remove cf-m68klynx.c, m68klynx.c. 1383*75fd0b74Schristos 1384*75fd0b74Schristos2005-07-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 1385*75fd0b74Schristos 1386*75fd0b74Schristos * elf32-m32r.c (m32r_elf_howto_table): Support R_M32R_REL32. 1387*75fd0b74Schristos (m32r_reloc_map): Likewise. 1388*75fd0b74Schristos (m32r_elf_relocate_section): Likewise. 1389*75fd0b74Schristos (m32r_elf_gc_sweep_hook): Likewise. 1390*75fd0b74Schristos (m32r_elf_check_relocs): Likewise. 1391*75fd0b74Schristos 1392*75fd0b74Schristos2005-07-18 Nick Clifton <nickc@redhat.com> 1393*75fd0b74Schristos 1394*75fd0b74Schristos * reloc.c: Add M32C and MS1 relocs. 1395*75fd0b74Schristos * bfd-in2.h: Regenerate. 1396*75fd0b74Schristos * libbfd.h: Regenerate. 1397*75fd0b74Schristos 1398*75fd0b74Schristos2005-07-18 Nick Clifton <nickc@redhat.com> 1399*75fd0b74Schristos 1400*75fd0b74Schristos * config.bfd: Move m32c entry to correct location. 1401*75fd0b74Schristos * archures.c: Likewise. 1402*75fd0b74Schristos * configure.in: Likewise. 1403*75fd0b74Schristos * configure: Regenerate. 1404*75fd0b74Schristos * targets.c: Move ms1 vector to correct location. 1405*75fd0b74Schristos 1406*75fd0b74Schristos2005-07-18 Jan Beulich <jbeulich@novell.com> 1407*75fd0b74Schristos 1408*75fd0b74Schristos * elf32-i386.c (elf_howto_table): Adjust overflow complaint handler 1409*75fd0b74Schristos for R_386_PC16. 1410*75fd0b74Schristos * elf64-x86-64.c (x86_64_elf_howto_table): Adjust overflow complaint 1411*75fd0b74Schristos handler for R_X86_64_PC16, R_X86_64_8, and R_X86_64_DTPOFF. 1412*75fd0b74Schristos 1413*75fd0b74Schristos2005-07-16 Eric Botcazou <ebotcazou@libertysurf.fr> 1414*75fd0b74Schristos 1415*75fd0b74Schristos PR ld/1021 1416*75fd0b74Schristos PR ld/1031 1417*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Also append the version 1418*75fd0b74Schristos name to non-hidden absolute symbols that are functions. 1419*75fd0b74Schristos 1420*75fd0b74Schristos2005-07-16 Alan Modra <amodra@bigpond.net.au> 1421*75fd0b74Schristos 1422*75fd0b74Schristos * elf32-ppc.c (ppc_elf_set_sdata_syms): Return void. Remove hack 1423*75fd0b74Schristos for zero size sections. Don't set .sbss syms here. 1424*75fd0b74Schristos * elf32-ppc.h (ppc_elf_set_sdata_syms): Adjust prototype. 1425*75fd0b74Schristos 1426*75fd0b74Schristos2005-07-16 Alan Modra <amodra@bigpond.net.au> 1427*75fd0b74Schristos 1428*75fd0b74Schristos * Makefile.am: Run "make dep-am". 1429*75fd0b74Schristos * Makefile.in: Regenerate. 1430*75fd0b74Schristos 1431*75fd0b74Schristos2005-07-15 Bob Wilson <bob.wilson@acm.org> 1432*75fd0b74Schristos 1433*75fd0b74Schristos * elf32-xtensa.c (vsprint_msg): Add prototype. 1434*75fd0b74Schristos (build_encoding_error_message): Delete. Code moved into.... 1435*75fd0b74Schristos (elf_xtensa_do_reloc): ....here, and changed to give better 1436*75fd0b74Schristos error messages for out of range literals. 1437*75fd0b74Schristos 1438*75fd0b74Schristos2005-07-15 Alan Modra <amodra@bigpond.net.au> 1439*75fd0b74Schristos 1440*75fd0b74Schristos * elflink.c (bfd_elf_record_link_assignment): Remove output_bfd param. 1441*75fd0b74Schristos (_bfd_elf_provide_symbol): Allow redefinition of weak syms and those 1442*75fd0b74Schristos defined in output sections. Call bfd_elf_record_link_assignment. 1443*75fd0b74Schristos * bfd-in.h (bfd_elf_record_link_assignment): Update prototype. 1444*75fd0b74Schristos * bfd-in2.h: Regenerate. 1445*75fd0b74Schristos 1446*75fd0b74Schristos2005-07-14 Jim Blandy <jimb@redhat.com> 1447*75fd0b74Schristos 1448*75fd0b74Schristos Add support for m32c-*-elf (Renesas m32c and m16c). 1449*75fd0b74Schristos * Makefile.am (ALL_MACHINES): Add cpu-m32c.lo. 1450*75fd0b74Schristos (ALL_MACHINES_CFILES): Add cpu-m32c.c. 1451*75fd0b74Schristos (BFD32_BACKENDS): Add elf32-m32c.lo. 1452*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Add elf32-m32c.c. 1453*75fd0b74Schristos (cpu-m32c.lo, elf32-m32c.lo): New rules, generated by 'make dep-am'. 1454*75fd0b74Schristos * Makefile.in: Regenerated. 1455*75fd0b74Schristos * archures.c (bfd_arch_m32c, bfd_mach_m16c, bfd_mach_m32c): New 1456*75fd0b74Schristos arch and mach codes. 1457*75fd0b74Schristos (bfd_m32c_arch): New arch info object. 1458*75fd0b74Schristos (bfd_archures_list): List bfd_m32c_arch. 1459*75fd0b74Schristos * bfd-in2.h: Regenerated. 1460*75fd0b74Schristos * config.bfd: Add case for the m32c. 1461*75fd0b74Schristos * configure.in: Add case for the m32c. 1462*75fd0b74Schristos * configure: Regenerated. 1463*75fd0b74Schristos * cpu-m32c.c, elf32-m32c.c: New files. 1464*75fd0b74Schristos * libbfd.h: Regenerated. 1465*75fd0b74Schristos * targets.c (bfd_elf32_m32c_vec): Declare. 1466*75fd0b74Schristos (_bfd_target_vector): List bfd_elf32_m32c_vec. 1467*75fd0b74Schristos 1468*75fd0b74Schristos2005-07-14 Alan Modra <amodra@bigpond.net.au> 1469*75fd0b74Schristos 1470*75fd0b74Schristos * bfd-in.h (_bfd_elf_fix_excluded_sec_syms): Declare. 1471*75fd0b74Schristos (_bfd_elf_provide_section_bound_symbols): Remove param name. 1472*75fd0b74Schristos Formatting. 1473*75fd0b74Schristos * bfd-in2.h: Regenerate. 1474*75fd0b74Schristos * elflink.c (bfd_elf_gc_sections): Don't call generic function. 1475*75fd0b74Schristos (_bfd_elf_provide_symbol): Formatting. 1476*75fd0b74Schristos (_bfd_elf_provide_section_bound_symbols): Remove all hacks, just 1477*75fd0b74Schristos create section relative syms. 1478*75fd0b74Schristos (fix_syms, _bfd_elf_fix_excluded_sec_syms): New functions. 1479*75fd0b74Schristos * elf32-ppc.c (ppc_elf_set_sdata_syms): Use 1480*75fd0b74Schristos _bfd_elf_provide_section_bound_symbols. 1481*75fd0b74Schristos * reloc.c (bfd_mark_used_section): Delete. 1482*75fd0b74Schristos (bfd_generic_gc_sections): Don't call the above. 1483*75fd0b74Schristos 1484*75fd0b74Schristos2005-07-14 Paul Woegerer <paul.woegerer@nsc.com> 1485*75fd0b74Schristos 1486*75fd0b74Schristos PR 1063 1487*75fd0b74Schristos * cache.c (bfd_last_cache): Initialise to NULL. 1488*75fd0b74Schristos 1489*75fd0b74Schristos2005-07-14 Daniel Marques <marques@cs.cornell.edu> 1490*75fd0b74Schristos Nick Clifton <nickc@redhat.com> 1491*75fd0b74Schristos 1492*75fd0b74Schristos * coff-alpha.c (alpha_ecoff_bad_format_hook): Detect compressed 1493*75fd0b74Schristos Alpha binaries and issue a helpful error message. 1494*75fd0b74Schristos (alpha_ecoff_swap_reloc_out): Increase maximum allowed internal 1495*75fd0b74Schristos symbol index to 15 to allow for binaries produced by DEC 1496*75fd0b74Schristos compilers. 1497*75fd0b74Schristos 1498*75fd0b74Schristos2005-07-13 Steve Ellcey <sje@cup.hp.com> 1499*75fd0b74Schristos 1500*75fd0b74Schristos * bfd.m4 (BFD_NEED_DECLARATION): Remove. 1501*75fd0b74Schristos 1502*75fd0b74Schristos2005-07-12 Alan Modra <amodra@bigpond.net.au> 1503*75fd0b74Schristos 1504*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_relocate_section): Don't use a plt stub 1505*75fd0b74Schristos when !can_plt_call. 1506*75fd0b74Schristos 1507*75fd0b74Schristos2005-07-12 Alan Modra <amodra@bigpond.net.au> 1508*75fd0b74Schristos 1509*75fd0b74Schristos * elf32-xtensa.c (bfd_elf_xtensa_reloc): Warning fix. 1510*75fd0b74Schristos 1511*75fd0b74Schristos2005-07-12 Alan Modra <amodra@bigpond.net.au> 1512*75fd0b74Schristos 1513*75fd0b74Schristos * elf32-ppc.c (ppc_elf_set_sdata_syms): Correct __sbss_start value. 1514*75fd0b74Schristos 1515*75fd0b74Schristos2005-07-11 H.J. Lu <hongjiu.lu@intel.com> 1516*75fd0b74Schristos 1517*75fd0b74Schristos * elflink.c (_bfd_elf_symbol_refs_local_p): Revert the last 1518*75fd0b74Schristos change. 1519*75fd0b74Schristos 1520*75fd0b74Schristos2005-07-08 Paul Koning <pkoning@equallogic.com> 1521*75fd0b74Schristos 1522*75fd0b74Schristos * dwarf2.c (read_address): Check sign_extend_vma to handle targets 1523*75fd0b74Schristos where addresses are sign extended. 1524*75fd0b74Schristos 1525*75fd0b74Schristos2005-07-08 Ralf Corsepius <ralf.corsepius@rtems.org> 1526*75fd0b74Schristos 1527*75fd0b74Schristos * config.bfd: Mark i960-*-rtems*, or32-*-rtems* as obsolete. 1528*75fd0b74Schristos Mark a29k-*rtems*, hppa*-*-rtems*, *-go32-rtems*, 1529*75fd0b74Schristos i[3-7]86*-*-rtemscoff*, mips*el-*-rtems*, powerpcle-*-rtems*, 1530*75fd0b74Schristos sparc*-*-rtemsaout* as removed 1531*75fd0b74Schristos 1532*75fd0b74Schristos2005-07-08 Alan Modra <amodra@bigpond.net.au> 1533*75fd0b74Schristos 1534*75fd0b74Schristos * elf-hppa.h (elf_hppa_final_link): Use gp val of zero when none 1535*75fd0b74Schristos of the usual sections are found. 1536*75fd0b74Schristos * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Tidy. 1537*75fd0b74Schristos Strip .dynbss if it is zero size. 1538*75fd0b74Schristos * elf32-arm.c (elf32_arm_size_dynamic_sections): Likewise. 1539*75fd0b74Schristos * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise. 1540*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise. 1541*75fd0b74Schristos * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise, and 1542*75fd0b74Schristos .dynsbss. 1543*75fd0b74Schristos (i370_elf_finish_dynamic_sections): Don't attempt to write .got 1544*75fd0b74Schristos when it is zero size. 1545*75fd0b74Schristos * elf32-i386.c (elf_i386_size_dynamic_sections): Correct handling 1546*75fd0b74Schristos of .dynbss and zero size sections. 1547*75fd0b74Schristos * elf32-m32r.c (m32r_elf_size_dynamic_sections): Strip .dynbss if 1548*75fd0b74Schristos it is zero size. 1549*75fd0b74Schristos * elf32-m68k.c (elf_m68k_size_dynamic_sections): Tidy. Strip 1550*75fd0b74Schristos .dynbss if zero size. 1551*75fd0b74Schristos * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise, .dynsbss 1552*75fd0b74Schristos too. 1553*75fd0b74Schristos * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise. 1554*75fd0b74Schristos * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise. 1555*75fd0b74Schristos * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise. 1556*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Tidy. Strip 1557*75fd0b74Schristos .plt.* and .got.plt.* if zero size. 1558*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Tidy. Strip 1559*75fd0b74Schristos .got* and .dynbss if zero size. 1560*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Tidy. Strip 1561*75fd0b74Schristos * elf64-ppc.c (create_linkage_sections): Create branch lookup table 1562*75fd0b74Schristos in .data.rel.ro.brlt or .rodata.brlt, and similarly for associated 1563*75fd0b74Schristos reloc section. 1564*75fd0b74Schristos (create_got_section): Always create new .got and .rela.got sections. 1565*75fd0b74Schristos (ppc64_elf_size_dynamic_sections): Tidy. Strip .dynbss if zero size. 1566*75fd0b74Schristos * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise. 1567*75fd0b74Schristos * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise. 1568*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Handle 1569*75fd0b74Schristos dynamic bss sections correctly. 1570*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Tidy. 1571*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Tidy. Strip 1572*75fd0b74Schristos .dynbss if zero size. 1573*75fd0b74Schristos 1574*75fd0b74Schristos2005-07-08 Ben Elliston <bje@au.ibm.com> 1575*75fd0b74Schristos 1576*75fd0b74Schristos * elf32-xtensa.c: Include <stdarg.h> unconditionally, not only 1577*75fd0b74Schristos when ANSI_PROTOTYPES is defined. Remove #ifdef logic. 1578*75fd0b74Schristos 1579*75fd0b74Schristos2005-07-07 H.J. Lu <hongjiu.lu@intel.com> 1580*75fd0b74Schristos 1581*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Add special_sections. 1582*75fd0b74Schristos 1583*75fd0b74Schristos * elf.c (_bfd_elf_get_sec_type_attr): Check special_sections 1584*75fd0b74Schristos first. 1585*75fd0b74Schristos 1586*75fd0b74Schristos * elf32-arm.c (elf_backend_get_sec_type_attr): Removed. 1587*75fd0b74Schristos (elf_backend_special_sections): New. Defined. 1588*75fd0b74Schristos * elf32-m32r.c: Likewise. 1589*75fd0b74Schristos * elf32-m68hc11.c: Likewise. 1590*75fd0b74Schristos * elf32-m68hc12.c: Likewise. 1591*75fd0b74Schristos * elf32-mcore.c: Likewise. 1592*75fd0b74Schristos * elf32-sh64.c: Likewise. 1593*75fd0b74Schristos * elf32-v850.c: Likewise. 1594*75fd0b74Schristos * elf32-xtensa.c: Likewise. 1595*75fd0b74Schristos * elf64-alpha.c: Likewise. 1596*75fd0b74Schristos * elf64-hppa.c: Likewise. 1597*75fd0b74Schristos * elf64-ppc.c: Likewise. 1598*75fd0b74Schristos * elf64-sh64.c: Likewise. 1599*75fd0b74Schristos * elfxx-ia64.c: Likewise. 1600*75fd0b74Schristos * elfxx-mips.c: Likewise. 1601*75fd0b74Schristos * elfxx-mips.h: Likewise. 1602*75fd0b74Schristos 1603*75fd0b74Schristos * elfxx-target.h (elf_backend_special_sections): New. 1604*75fd0b74Schristos (elfNN_bed): Initialize special_sections. 1605*75fd0b74Schristos 1606*75fd0b74Schristos2005-07-07 Bob Wilson <bob.wilson@acm.org> 1607*75fd0b74Schristos 1608*75fd0b74Schristos * xtensa-modules.c: Update tables with Xtensa MMU features. 1609*75fd0b74Schristos 1610*75fd0b74Schristos2005-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 1611*75fd0b74Schristos 1612*75fd0b74Schristos * elf32-xtensa.c (vsprint_msg): Add format attribute. Fix 1613*75fd0b74Schristos format bugs. 1614*75fd0b74Schristos * vms.h (_bfd_vms_debug): Add format attribute. 1615*75fd0b74Schristos (_bfd_vms_debug, _bfd_hexdump): Fix typos. 1616*75fd0b74Schristos 1617*75fd0b74Schristos2005-07-07 H.J. Lu <hongjiu.lu@intel.com> 1618*75fd0b74Schristos 1619*75fd0b74Schristos PR 975 1620*75fd0b74Schristos * elflink.c (_bfd_elf_symbol_refs_local_p): Only undefined 1621*75fd0b74Schristos symbol with default visibility is local. 1622*75fd0b74Schristos 1623*75fd0b74Schristos2005-07-07 Ben Elliston <bje@gnu.org> 1624*75fd0b74Schristos 1625*75fd0b74Schristos * config.bfd: Mark m68*-*-rtemscoff as obsolete. 1626*75fd0b74Schristos 1627*75fd0b74Schristos2005-07-06 H.J. Lu <hongjiu.lu@intel.com> 1628*75fd0b74Schristos 1629*75fd0b74Schristos * dwarf2.c (varinfo): Add addr. 1630*75fd0b74Schristos (lookup_symbol_in_variable_table): Also check addr. 1631*75fd0b74Schristos (scan_unit_for_symbols): Set addr for variable. 1632*75fd0b74Schristos (comp_unit_find_line): Updated. 1633*75fd0b74Schristos 1634*75fd0b74Schristos2005-07-06 Nick Clifton <nickc@redhat.com> 1635*75fd0b74Schristos 1636*75fd0b74Schristos * coff-alpha.c (alpha_adjust_reloc_in): Issue an informative error 1637*75fd0b74Schristos message if an unknown reloc is encountered. 1638*75fd0b74Schristos (alpha_relocate_section): Likewise. 1639*75fd0b74Schristos 1640*75fd0b74Schristos * ecoff.c (_bfd_ecoff_write_object_contents): Cope with a reloc 1641*75fd0b74Schristos with a missing howto field. 1642*75fd0b74Schristos 1643*75fd0b74Schristos2005-07-06 Alan Modra <amodra@bigpond.net.au> 1644*75fd0b74Schristos 1645*75fd0b74Schristos * po/SRC-POTFILES.in: Add cpu-ms1.c, elf32-ms1.c, elf-vxworks.c, 1646*75fd0b74Schristos elfxx-sparc.c. 1647*75fd0b74Schristos 1648*75fd0b74Schristos2005-07-05 Paul Brook <paul@codesourcery.com> 1649*75fd0b74Schristos 1650*75fd0b74Schristos * elf32-ppc.c (ppc_elf_vxworks_special_sections): Remove. 1651*75fd0b74Schristos (ppc_elf_vxworks_get_sec_type_attr): New function. 1652*75fd0b74Schristos (elf_backend_special_sections): Remove vxwords definition. 1653*75fd0b74Schristos (elf_backend_get_sec_type_attr): Define for vxworks. 1654*75fd0b74Schristos 1655*75fd0b74Schristos2005-07-05 Nick Clifton <nickc@redhat.com> 1656*75fd0b74Schristos 1657*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_info_to_howto): Fix typo. 1658*75fd0b74Schristos 1659*75fd0b74Schristos2005-07-05 Paul Brook <paul@codesourcery.com> 1660*75fd0b74Schristos 1661*75fd0b74Schristos * config.bfd: Add separate case for ppc-vxworks. 1662*75fd0b74Schristos * configure: Regenerate. 1663*75fd0b74Schristos * configure.in: Include elf-vxworks.lo on ppc targets. 1664*75fd0b74Schristos * elf-vxworks.c (elf_vxworks_final_write_processing): Handle 1665*75fd0b74Schristos .rela.plt.unloaded. 1666*75fd0b74Schristos * elf32-ppc.c: Add VxWorks target vec. Include elf-vxworks.h. 1667*75fd0b74Schristos (PLT_ENTRY_SIZE, PLT_INITIAL_ENTRY_SIZE, PLT_SLOT_SIZE): Remove. 1668*75fd0b74Schristos (VXWORKS_PLT_ENTRY_SIZE, ppc_elf_vxworks_plt_entry, 1669*75fd0b74Schristos ppc_elf_vxworks_pic_plt_entry, VXWORKS_PLT_INITIAL_ENTRY_SIZE, 1670*75fd0b74Schristos ppc_elf_vxworks_plt0_entry, ppc_elf_vxworks_pic_plt0_entry, 1671*75fd0b74Schristos VXWORKS_PLT_NON_JMP_SLOT_RELOCS, VXWORKS_PLTRESOLVE_RELOCS, 1672*75fd0b74Schristos VXWORKS_PLTRESOLVE_RELOCS_SHLIB): New. 1673*75fd0b74Schristos (ppc_elf_link_hash_table): Add srelplt2, sgotplt, hgot, hplt, 1674*75fd0b74Schristos is_vxworks, plt_entry_size, plt_slot_size, plt_initial_entry_size. 1675*75fd0b74Schristos (ppc_elf_link_hash_table_create): Initialize hadtab plt fields. 1676*75fd0b74Schristos (ppc_elf_create_got): Create .got.plt for VxWorks. 1677*75fd0b74Schristos (ppc_elf_create_dynamic_sections): Create unloaded plt relocation 1678*75fd0b74Schristos section for VxWorks. 1679*75fd0b74Schristos (ppc_elf_select_plt_layout): Handle VxWorks plt format. 1680*75fd0b74Schristos (allocate_got): VxWorks does not need a got header. 1681*75fd0b74Schristos (allocate_dynrelocs): Handle VxWorks plt format. 1682*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Save _G_O_T_ and _P_L_T_ symbols for 1683*75fd0b74Schristos VxWorks. Handle VxWorks plt/got. 1684*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): Fill in VxWorks plt. 1685*75fd0b74Schristos (ppc_elf_vxworks_special_sections): New. 1686*75fd0b74Schristos (ppc_elf_vxworks_link_hash_table_create, 1687*75fd0b74Schristos ppc_elf_vxworks_add_symbol_hook, 1688*75fd0b74Schristos elf_i386_vxworks_link_output_symbol_hook, 1689*75fd0b74Schristos ppc_elf_vxworks_final_write_processing): New functions. 1690*75fd0b74Schristos * targets.c (bfd_elf32_powerpc_vxworks_vec): Declare. 1691*75fd0b74Schristos (_bfd_target_vector): Use it. 1692*75fd0b74Schristos 1693*75fd0b74Schristos2005-07-05 Jakub Jelinek <jakub@redhat.com> 1694*75fd0b74Schristos 1695*75fd0b74Schristos * libbfd-in.h (struct artdata): Add extended_names_size field. 1696*75fd0b74Schristos * libbfd.h: Rebuilt. 1697*75fd0b74Schristos * coff-rs600.c (_bfd_xcoff_archive_p): Don't clear fields in freshly 1698*75fd0b74Schristos allocated object by bfd_zalloc. 1699*75fd0b74Schristos * coff64-rs6000.c (xcoff64_archive_p): Likewise. 1700*75fd0b74Schristos * ecoff.c (_bfd_ecoff_archive_p): Likewise. 1701*75fd0b74Schristos * archive.c (_bfd_generic_mkarchive, bfd_generic_archive_p): Likewise. 1702*75fd0b74Schristos (get_extended_arelt_filename): Fail if index is bigger or equal to 1703*75fd0b74Schristos extended_names_size. 1704*75fd0b74Schristos (_bfd_generic_read_ar_hdr_mag): Don't set bfd_error_malformed_archive, 1705*75fd0b74Schristos get_extended_arelt_filename already did that. 1706*75fd0b74Schristos (_bfd_slurp_extended_name_table): Initialize extended_names_size field. 1707*75fd0b74Schristos Allocate one extra byte and clear it, in case extended names table 1708*75fd0b74Schristos is not terminated. 1709*75fd0b74Schristos 1710*75fd0b74Schristos * libbfd-in.h (bfd_malloc2, bfd_realloc2, bfd_zmalloc2, bfd_alloc2, 1711*75fd0b74Schristos bfd_zalloc2): New prototypes. 1712*75fd0b74Schristos * bfd-in.h (HALF_BFD_SIZE_TYPE): Define. 1713*75fd0b74Schristos * libbfd.c (bfd_malloc2, bfd_realloc2, bfd_zmalloc2): New functions. 1714*75fd0b74Schristos * opncls.c (bfd_alloc2, bfd_zalloc2): New functions. 1715*75fd0b74Schristos * elf.c (bfd_elf_get_elf_syms, setup_group, assign_section_numbers, 1716*75fd0b74Schristos elf_map_symbols, map_sections_to_segments, 1717*75fd0b74Schristos assign_file_positions_for_segments, copy_private_bfd_data, 1718*75fd0b74Schristos swap_out_syms, _bfd_elf_slurp_version_tables): Use bfd_*alloc2 1719*75fd0b74Schristos where appropriate. 1720*75fd0b74Schristos * bfd-in2.h: Rebuilt. 1721*75fd0b74Schristos * libbfd.h: Rebuilt. 1722*75fd0b74Schristos 1723*75fd0b74Schristos * elf.c (_bfd_elf_print_private_bfd_data): Don't crash on bogus 1724*75fd0b74Schristos verdef or verneed section. 1725*75fd0b74Schristos (_bfd_elf_slurp_version_tables): Handle corrupt verdef and/or 1726*75fd0b74Schristos verneed sections gracefully. 1727*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_info_to_howto_ptr): Don't crash on 1728*75fd0b74Schristos bogus relocation values. 1729*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_info_to_howto): Likewise. 1730*75fd0b74Schristos * elf64-s390.c (elf_s390_info_to_howto): Likewise. 1731*75fd0b74Schristos * elf32-s390.c (elf_s390_info_to_howto): Likewise. 1732*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_info_to_howto): Likewise. 1733*75fd0b74Schristos * elfxx-ia64.c (lookup_howto): Likewise. 1734*75fd0b74Schristos 1735*75fd0b74Schristos * elf.c (bfd_elf_get_str_section): Allocate an extra byte after 1736*75fd0b74Schristos the end of strtab and clear it. 1737*75fd0b74Schristos (elf_read): Remove. 1738*75fd0b74Schristos 1739*75fd0b74Schristos2005-07-05 Nick Clifton <nickc@redhat.com> 1740*75fd0b74Schristos 1741*75fd0b74Schristos * po/vi.po: New Vietnamese translation. 1742*75fd0b74Schristos * configure.in (ALL_LINGUAS): Add vi. 1743*75fd0b74Schristos * configure: Regenerate. 1744*75fd0b74Schristos 1745*75fd0b74Schristos2005-07-05 Peter S. Mazinger <ps.m@gmx.net> 1746*75fd0b74Schristos 1747*75fd0b74Schristos * elf32-arm.c (elf32_arm_size_dynamic_sections): Fix a typo and 1748*75fd0b74Schristos touchup logic like i386/ppc. 1749*75fd0b74Schristos 1750*75fd0b74Schristos2005-07-05 Alan Modra <amodra@bigpond.net.au> 1751*75fd0b74Schristos 1752*75fd0b74Schristos * elf.c (special_sections): Move const qualifier. 1753*75fd0b74Schristos (special_sections_b..special_sections_t): Likewise. 1754*75fd0b74Schristos * elf32-arm.c (elf32_arm_symbian_get_sec_type_attr): Remove duplicate 1755*75fd0b74Schristos const. 1756*75fd0b74Schristos (elf32_arm_symbian_special_sections): Move const qualifier. 1757*75fd0b74Schristos * elf32-m32r.c: Similarly. 1758*75fd0b74Schristos * elf32-m68hc11.c: Similarly. 1759*75fd0b74Schristos * elf32-m68hc12.c: Similarly. 1760*75fd0b74Schristos * elf32-mcore.c: Similarly. 1761*75fd0b74Schristos * elf32-ppc.c: Similarly. 1762*75fd0b74Schristos * elf32-sh64.c: Similarly. 1763*75fd0b74Schristos * elf32-v850.c: Similarly. 1764*75fd0b74Schristos * elf32-xtensa.c: Similarly. 1765*75fd0b74Schristos * elf64-alpha.c: Similarly. 1766*75fd0b74Schristos * elf64-hppa.c: Similarly. 1767*75fd0b74Schristos * elf64-ppc.c: Similarly. 1768*75fd0b74Schristos * elf64-sh64.c: Similarly. 1769*75fd0b74Schristos * elfxx-ia64.c: Similarly. 1770*75fd0b74Schristos * elfxx-mips.c: Similarly. 1771*75fd0b74Schristos 1772*75fd0b74Schristos2005-07-04 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 1773*75fd0b74Schristos 1774*75fd0b74Schristos * elf32-m32r.c (m32r_elf_size_dynamic_sections): Use 1775*75fd0b74Schristos info->executable instead of !info->shared where appropriate. 1776*75fd0b74Schristos 1777*75fd0b74Schristos2005-07-04 Alan Modra <amodra@bigpond.net.au> 1778*75fd0b74Schristos 1779*75fd0b74Schristos PR 1042 1780*75fd0b74Schristos * elf.c (assign_file_positions_for_segments): Remove excluded 1781*75fd0b74Schristos sections from the segment map. 1782*75fd0b74Schristos 1783*75fd0b74Schristos2005-07-04 Alan Modra <amodra@bigpond.net.au> 1784*75fd0b74Schristos 1785*75fd0b74Schristos PR 1004 1786*75fd0b74Schristos * elf-bfd.h (struct elf_backend_data): Add get_sec_type_attr. Delete 1787*75fd0b74Schristos special_sections. 1788*75fd0b74Schristos (_bfd_elf_get_special_section): Declare. 1789*75fd0b74Schristos (bfd_elf_special_section): Update prototype. 1790*75fd0b74Schristos * elf.c (special_sections): Remove unused outer entries. 1791*75fd0b74Schristos (get_special_section): Delete. 1792*75fd0b74Schristos (_bfd_elf_get_special_section): New function. 1793*75fd0b74Schristos (_bfd_elf_get_sec_type_attr): Replace "name" arg with "sec". Update 1794*75fd0b74Schristos special_sections indexing. 1795*75fd0b74Schristos (_bfd_elf_new_section_hook): Call backend get_sec_type_attr. 1796*75fd0b74Schristos * elf32-arm.c (symbian_special_sections_d): Delete. 1797*75fd0b74Schristos (symbian_special_sections_g, symbian_special_sections_h): Delete. 1798*75fd0b74Schristos (symbian_special_sections_i, symbian_special_sections_f): Delete. 1799*75fd0b74Schristos (symbian_special_sections_p): Delete. 1800*75fd0b74Schristos (elf32_arm_symbian_special_sections): Merge above to here. 1801*75fd0b74Schristos (elf32_arm_symbian_get_sec_type_attr): New function. 1802*75fd0b74Schristos (elf_backend_special_sections): Don't define. 1803*75fd0b74Schristos (elf_backend_get_sec_type_attr): Define. 1804*75fd0b74Schristos * elf32-m32r.c: Similarly to elf32-arm.c. 1805*75fd0b74Schristos * elf32-m68hc11.c: Likewise. 1806*75fd0b74Schristos * elf32-m68hc12.c: Likewise. 1807*75fd0b74Schristos * elf32-mcore.c: Likewise. 1808*75fd0b74Schristos * elf32-sh64.c: Likewise. 1809*75fd0b74Schristos * elf32-v850.c: Likewise. 1810*75fd0b74Schristos * elf32-xtensa.c: Likewise. 1811*75fd0b74Schristos * elf64-alpha.c: Likewise. 1812*75fd0b74Schristos * elf64-hppa.c: Likewise. 1813*75fd0b74Schristos * elf64-ppc.c: Likewise. 1814*75fd0b74Schristos * elf64-sh64.c: Likewise. 1815*75fd0b74Schristos * elfxx-ia64.c: Likewise. 1816*75fd0b74Schristos * elfxx-mips.c: Likewise. 1817*75fd0b74Schristos * elf32-ppc.c: Likewise. 1818*75fd0b74Schristos (bfd_elf_special_section ppc_alt_plt): New. Use it if .plt loadable. 1819*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_get_sec_type_attr): Declare. 1820*75fd0b74Schristos (_bfd_mips_elf_special_sections, elf_backend_special_sections): Delete. 1821*75fd0b74Schristos (elf_backend_get_sec_type_attr): Define. 1822*75fd0b74Schristos * elfxx-target.h (elf_backend_get_sec_type_attr): Define. 1823*75fd0b74Schristos (elf_backend_special_sections): Don't define. 1824*75fd0b74Schristos (elfNN_bed): Update. 1825*75fd0b74Schristos 1826*75fd0b74Schristos2005-07-01 Nick Clifton <nickc@redhat.com> 1827*75fd0b74Schristos 1828*75fd0b74Schristos * cpu-d10v.c: Update to ISO C90 style function declarations and 1829*75fd0b74Schristos fix formatting. 1830*75fd0b74Schristos * cpu-d30v.c: Likewsie. 1831*75fd0b74Schristos * cpu-i370.c: Likewsie. 1832*75fd0b74Schristos * cpu-xstormy16.c: Likewsie. 1833*75fd0b74Schristos * elf32-arc.c: Likewsie. 1834*75fd0b74Schristos * elf32-d10v.c: Likewsie. 1835*75fd0b74Schristos * elf32-d30v.c: Likewsie. 1836*75fd0b74Schristos * elf32-dlx.c: Likewsie. 1837*75fd0b74Schristos * elf32-i370.c: Likewsie. 1838*75fd0b74Schristos * elf32-i960.c: Likewsie. 1839*75fd0b74Schristos * elf32-ip2k.c: Likewsie. 1840*75fd0b74Schristos * elf32-m32r.c: Likewsie. 1841*75fd0b74Schristos * elf32-mcore.c: Likewsie. 1842*75fd0b74Schristos * elf32-openrisc.c: Likewsie. 1843*75fd0b74Schristos * elf32-or32.c: Likewsie. 1844*75fd0b74Schristos * elf32-pj.c: Likewsie. 1845*75fd0b74Schristos * elf32-v850.c: Likewsie. 1846*75fd0b74Schristos * elf32-xstormy16.c: Likewsie. 1847*75fd0b74Schristos 1848*75fd0b74Schristos2005-07-01 Alan Modra <amodra@bigpond.net.au> 1849*75fd0b74Schristos 1850*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_create_got_section): Always create 1851*75fd0b74Schristos a new .got section. 1852*75fd0b74Schristos (elf64_alpha_create_dynamic_sections): Always make new sections 1853*75fd0b74Schristos by using bfd_make_section_anyway_with_flags. Check that .got not 1854*75fd0b74Schristos already created. 1855*75fd0b74Schristos (elf64_alpha_check_relocs): Delete "got_created". Use tdata->gotobj 1856*75fd0b74Schristos instead. 1857*75fd0b74Schristos 1858*75fd0b74Schristos2005-06-30 Alan Modra <amodra@bigpond.net.au> 1859*75fd0b74Schristos 1860*75fd0b74Schristos * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Ignore dynamic 1861*75fd0b74Schristos _SDA_BASE_ and _SDA2_BASE_ symbols. 1862*75fd0b74Schristos * elflink.c (_bfd_elf_provide_symbol): Correct comment. Define 1863*75fd0b74Schristos sym if not def_regular. 1864*75fd0b74Schristos (_bfd_elf_provide_section_bound_symbols): Similarly. 1865*75fd0b74Schristos 1866*75fd0b74Schristos2005-06-30 Ben Elliston <bje@gnu.org> 1867*75fd0b74Schristos 1868*75fd0b74Schristos * config.bfd: Mark as obsolete: 1869*75fd0b74Schristos m68*-apollo-* 1870*75fd0b74Schristos m68*-apple-aux* 1871*75fd0b74Schristos m68*-bull-sysv* 1872*75fd0b74Schristos 1873*75fd0b74Schristos2005-06-29 Alan Modra <amodra@bigpond.net.au> 1874*75fd0b74Schristos 1875*75fd0b74Schristos * elflink.c (_bfd_elf_gc_mark): Mark sections referenced by 1876*75fd0b74Schristos .eh_frame specially.. 1877*75fd0b74Schristos (bfd_elf_gc_sections): ..rather than totally ignoring .eh_frame. 1878*75fd0b74Schristos Don't recheck sections we have already marked. 1879*75fd0b74Schristos (elf_gc_sweep): Keep non-code sections referenced from .eh_frame. 1880*75fd0b74Schristos * section.c (struct bfd_section): Add gc_mark_from_eh. 1881*75fd0b74Schristos (STD_SECTION): Adjust. 1882*75fd0b74Schristos * ecoff.c (bfd_debug_section): Adjust. 1883*75fd0b74Schristos * bfd-in2.h: Regenerate. 1884*75fd0b74Schristos 1885*75fd0b74Schristos2005-06-29 Alan Modra <amodra@bigpond.net.au> 1886*75fd0b74Schristos 1887*75fd0b74Schristos * elflink.c (elf_gc_sweep): Do not refcount on sections that have 1888*75fd0b74Schristos not been processed by check_relocs. 1889*75fd0b74Schristos 1890*75fd0b74Schristos2005-06-29 Paul Brook <paul@codesourcery.com> 1891*75fd0b74Schristos 1892*75fd0b74Schristos * bfd-in.h (_bfd_elf_provide_symbol): Update prototype. 1893*75fd0b74Schristos * bfd-in2.h: Regenerate. 1894*75fd0b74Schristos * elf32-ppc.c (ppc_elf_set_sdata_syms): Make sdata symbols section 1895*75fd0b74Schristos relative. 1896*75fd0b74Schristos * elflink.c (bfd_elf_set_symbol): Add section argument. 1897*75fd0b74Schristos (_bfd_elf_provide_symbol): Ditto. 1898*75fd0b74Schristos (_bfd_elf_provide_section_bound_symbols): Pass NULL section argument. 1899*75fd0b74Schristos 1900*75fd0b74Schristos2005-06-27 Carlos O'Donell <carlos@systemhalted.org> 1901*75fd0b74Schristos 1902*75fd0b74Schristos * elf32-hppa.c (struct elf32_hppa_stub_hash_entry): 1903*75fd0b74Schristos Use bh_root, and hh. 1904*75fd0b74Schristos (struct elf32_hppa_link_hash_entry): Use eh, and hsh_cache. 1905*75fd0b74Schristos (struct elf32_hppa_dyn_reloc_entry): Use hdh_next. 1906*75fd0b74Schristos (struct elf32_hppa_link_hash_table): Use etab and bstab. 1907*75fd0b74Schristos (stub_hash_newfunc): Use hh. 1908*75fd0b74Schristos (hppa_link_hash_newfunc): Use hsh_cache. 1909*75fd0b74Schristos (elf32_hppa_link_hash_table_create): Use etab, and bstab. 1910*75fd0b74Schristos (elf32_hppa_link_hash_table_free): Use bstab. 1911*75fd0b74Schristos (hppa_stub_name): Use eh. 1912*75fd0b74Schristos (hppa_get_stub_entry): Use hh, hsh_entry, and hsh_cache. 1913*75fd0b74Schristos (hppa_add_stub): Use bstab. 1914*75fd0b74Schristos (hppa_type_of_stub): Use eh. 1915*75fd0b74Schristos (hppa_build_one_stub): Use hh and bh_root. 1916*75fd0b74Schristos (elf32_hppa_copy_indirect_symbol): Use hdh_next. 1917*75fd0b74Schristos (elf32_hppa_check_relocs): Use eh, etab, and hdh_next. 1918*75fd0b74Schristos (elf32_hppa_gc_sweep_hook): Use hdh_next. 1919*75fd0b74Schristos (elf32_hppa_adjust_dynamic_symbol): Use hdh_next, and etab. 1920*75fd0b74Schristos (allocate_plt_static): Use etab. 1921*75fd0b74Schristos (allocate_dynrelocs): Use etab, and hdh_next. 1922*75fd0b74Schristos (readonly_dynrelocs): Use hdh_next. 1923*75fd0b74Schristos (elf32_hppa_size_dynamic_sections): Use etab, and hdh_next. 1924*75fd0b74Schristos (get_local_syms): Use eh, bstab, and hh. 1925*75fd0b74Schristos (elf32_hppa_size_stubs): Use eh, bstab, and hh. 1926*75fd0b74Schristos (elf32_hppa_set_gp): Use etab. 1927*75fd0b74Schristos (elf32_hppa_build_stubs): Use bstab. 1928*75fd0b74Schristos (final_link_relocate): Use eh, bh_root. 1929*75fd0b74Schristos (elf32_hppa_relocate_section): Use elf, etab. 1930*75fd0b74Schristos (elf32_hppa_finish_dynamic_sections): Use etab. 1931*75fd0b74Schristos 1932*75fd0b74Schristos2005-06-27 H.J. Lu <hongjiu.lu@intel.com> 1933*75fd0b74Schristos 1934*75fd0b74Schristos * elfxx-ia64.c (elfNN_hpux_backend_symbol_processing): Remove 1935*75fd0b74Schristos the extra `;'. 1936*75fd0b74Schristos 1937*75fd0b74Schristos2005-06-21 Carlos O'Donell <carlos@systemhalted.org> 1938*75fd0b74Schristos 1939*75fd0b74Schristos * elf32-hppa.c (hppa_elf_hash_entry): Define. 1940*75fd0b74Schristos (hppa_stub_hash_entry): Define. 1941*75fd0b74Schristos (stub_hash_newfunc): Rename variables. 1942*75fd0b74Schristos (hppa_link_hash_newfunc): Likewise. 1943*75fd0b74Schristos (elf32_hppa_link_hash_table_free): Likewise. 1944*75fd0b74Schristos (hppa_stub_name): Likewise. 1945*75fd0b74Schristos (hppa_get_stub_entry): Likewise. 1946*75fd0b74Schristos (hppa_add_stub): Likewise. 1947*75fd0b74Schristos (hppa_type_of_stub): Likewise. 1948*75fd0b74Schristos (hppa_build_one_stub): Likewise. 1949*75fd0b74Schristos (hppa_size_one_stub): Likewise. 1950*75fd0b74Schristos (elf32_hppa_create_dynamic_sections): Likewise. 1951*75fd0b74Schristos (elf32_hppa_copy_indirect_symbol): Likewise. 1952*75fd0b74Schristos (elf32_hppa_check_relocs): Likewise. 1953*75fd0b74Schristos (elf32_hppa_gc_mark_hook): Likewise. 1954*75fd0b74Schristos (elf32_hppa_gc_sweep_hook): Likewise. 1955*75fd0b74Schristos (elf32_hppa_grok_psinfo): Likewise. 1956*75fd0b74Schristos (elf32_hppa_hide_symbol): Likewise. 1957*75fd0b74Schristos (elf32_hppa_adjust_dynamic_symbol): Likewise. 1958*75fd0b74Schristos (allocate_dynrelocs): Likewise. 1959*75fd0b74Schristos (clobber_millicode_symbols): Likewise. 1960*75fd0b74Schristos (readonly_dynrelocs): Likewise. 1961*75fd0b74Schristos (elf32_hppa_size_dynamic_sections): Likewise. 1962*75fd0b74Schristos (get_local_syms): Likewise. 1963*75fd0b74Schristos (elf32_hppa_size_stubs): Likewise. 1964*75fd0b74Schristos (hppa_record_segment_addr): Likewise. 1965*75fd0b74Schristos (final_link_relocate): Likewise. 1966*75fd0b74Schristos (elf32_hppa_relocate_section): Likewise. 1967*75fd0b74Schristos (elf32_hppa_finish_dynamic_symbol): Likewise. 1968*75fd0b74Schristos 1969*75fd0b74Schristos2005-06-20 H.J. Lu <hongjiu.lu@intel.com> 1970*75fd0b74Schristos 1971*75fd0b74Schristos PR 1025 1972*75fd0b74Schristos * elf-m10300.c (mn10300_elf_check_relocs): Handle indirect 1973*75fd0b74Schristos symbol. 1974*75fd0b74Schristos * elf32-arm.c (elf32_arm_check_relocs): Likewise. 1975*75fd0b74Schristos * elf32-avr.c (elf32_avr_check_relocs): Likewise. 1976*75fd0b74Schristos * elf32-cris.c (cris_elf_check_relocs): Likewise. 1977*75fd0b74Schristos * elf32-d10v.c (elf32_d10v_check_relocs): Likewise. 1978*75fd0b74Schristos * elf32-dlx.c (elf32_dlx_check_relocs): Likewise. 1979*75fd0b74Schristos * elf32-fr30.c (fr30_elf_check_relocs): Likewise. 1980*75fd0b74Schristos * elf32-frv.c (elf32_frv_check_relocs): Likewise. 1981*75fd0b74Schristos * elf32-i370.c (i370_elf_check_relocs): Likewise. 1982*75fd0b74Schristos * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise. 1983*75fd0b74Schristos * elf32-m32r.c (m32r_elf_check_relocs): Likewise. 1984*75fd0b74Schristos * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise. 1985*75fd0b74Schristos * elf32-m68k.c (elf_m68k_check_relocs): Likewise. 1986*75fd0b74Schristos * elf32-mcore.c (mcore_elf_check_relocs): Likewise. 1987*75fd0b74Schristos * elf32-ms1.c (ms1_elf_check_relocs): Likewise. 1988*75fd0b74Schristos * elf32-msp430.c (elf32_msp430_check_relocs): Likewise. 1989*75fd0b74Schristos * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise. 1990*75fd0b74Schristos * elf32-ppc.c (ppc_elf_check_relocs): Likewise. 1991*75fd0b74Schristos * elf32-s390.c (elf_s390_check_relocs): Likewise. 1992*75fd0b74Schristos * elf32-sh.c (sh_elf_check_relocs): Likewise. 1993*75fd0b74Schristos * elf32-v850.c (v850_elf_check_relocs): Likewise. 1994*75fd0b74Schristos * elf32-vax.c (elf_vax_check_relocs): Likewise. 1995*75fd0b74Schristos * elf64-mmix.c (mmix_elf_check_relocs): Likewise. 1996*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_check_relocs): Likewise. 1997*75fd0b74Schristos * elf64-s390.c (elf_s390_check_relocs): Likewise. 1998*75fd0b74Schristos * elf64-sh64.c (sh_elf64_check_relocs): Likewise. 1999*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise. 2000*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise. 2001*75fd0b74Schristos 2002*75fd0b74Schristos2005-06-20 H.J. Lu <hongjiu.lu@intel.com> 2003*75fd0b74Schristos 2004*75fd0b74Schristos PR 1022 2005*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_check_relocs): Handle indirect 2006*75fd0b74Schristos symbol. 2007*75fd0b74Schristos 2008*75fd0b74Schristos2005-06-20 H.J. Lu <hongjiu.lu@intel.com> 2009*75fd0b74Schristos 2010*75fd0b74Schristos PR 1025 2011*75fd0b74Schristos * elf32-i386.c (elf_i386_check_relocs): Handle indirect symbol. 2012*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise. 2013*75fd0b74Schristos 2014*75fd0b74Schristos2005-06-18 H.J. Lu <hongjiu.lu@intel.com> 2015*75fd0b74Schristos 2016*75fd0b74Schristos * reloc.c: Add BFD_RELOC_X86_64_GOTOFF64 and 2017*75fd0b74Schristos BFD_RELOC_X86_64_GOTPC32. 2018*75fd0b74Schristos * bfd-in2.h: Regenerated. 2019*75fd0b74Schristos 2020*75fd0b74Schristos2005-06-17 Jakub Jelinek <jakub@redhat.com> 2021*75fd0b74Schristos 2022*75fd0b74Schristos * elf.c (bfd_section_from_shdr): Kill bogus warning. 2023*75fd0b74Schristos 2024*75fd0b74Schristos * elf.c (bfd_section_from_shdr): Fail if sh_entsize is bogus for 2025*75fd0b74Schristos symbol, relocation, group or versym sections. 2026*75fd0b74Schristos 2027*75fd0b74Schristos * coffcode.h (coff_slurp_reloc_table): Don't crash if native_relocs 2028*75fd0b74Schristos is NULL. 2029*75fd0b74Schristos * peXXigen.c (pe_print_idata): Don't crash if dll_name or start_address 2030*75fd0b74Schristos doesn't point into the section. 2031*75fd0b74Schristos 2032*75fd0b74Schristos2005-06-17 Jan Beulich <jbeulich@novell.com> 2033*75fd0b74Schristos 2034*75fd0b74Schristos * bfd-in2.h (elf_x86_64_reloc_type): Add BFD_RELOC_X86_64_GOTOFF64 2035*75fd0b74Schristos and BFD_RELOC_X86_64_GOTPC32. 2036*75fd0b74Schristos * libbfd.h (bfd_reloc_code_real_names): Likewise. 2037*75fd0b74Schristos * elf64-x86-64.c (x86_64_elf_howto_table): Add entries for 2038*75fd0b74Schristos R_X86_64_PC64, R_X86_64_GOTOFF64, and R_X86_64_GOTPC32. 2039*75fd0b74Schristos (x86_64_reloc_map): Add entries for R_X86_64_PC64, R_X86_64_GOTOFF64, 2040*75fd0b74Schristos and R_X86_64_GOTPC32. 2041*75fd0b74Schristos (elf64_x86_64_info_to_howto): Adjust bounding relocation type. 2042*75fd0b74Schristos (elf64_x86_64_check_relocs): Also handle R_X86_64_PC64, 2043*75fd0b74Schristos R_X86_64_GOTOFF64, and R_X86_64_GOTPC32. 2044*75fd0b74Schristos (elf64_x86_64_relocate_section): Likewise. 2045*75fd0b74Schristos (elf64_x86_64_gc_sweep_hook): Also handle R_X86_64_PC64. 2046*75fd0b74Schristos 2047*75fd0b74Schristos2005-06-15 Mark Kettenis <kettenis@gnu.org> 2048*75fd0b74Schristos 2049*75fd0b74Schristos * archive.c: Include "libiberty.h". 2050*75fd0b74Schristos 2051*75fd0b74Schristos2005-06-15 Nick Clifton <nickc@redhat.com> 2052*75fd0b74Schristos 2053*75fd0b74Schristos * elf32-v850.c (ELF_MACHINE_ALT2): Define so that binaries 2054*75fd0b74Schristos produced by the GreenHills toolchain can be assimilated. 2055*75fd0b74Schristos 2056*75fd0b74Schristos2005-06-14 Steve Ellcey <sje@cup.hp.com> 2057*75fd0b74Schristos 2058*75fd0b74Schristos * som.c (som_find_inliner_info): New. 2059*75fd0b74Schristos 2060*75fd0b74Schristos2005-06-14 H.J. Lu <hongjiu.lu@intel.com> 2061*75fd0b74Schristos 2062*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Fix a typo in comment. 2063*75fd0b74Schristos 2064*75fd0b74Schristos2005-06-14 Jakub Jelinek <jakub@redhat.com> 2065*75fd0b74Schristos 2066*75fd0b74Schristos * elf.c (bfd_section_from_shdr): Fail if name is NULL. 2067*75fd0b74Schristos Prevent endless recursion on broken objects. 2068*75fd0b74Schristos 2069*75fd0b74Schristos * archive.c (do_slurp_coff_armap): Check for overflows. 2070*75fd0b74Schristos 2071*75fd0b74Schristos2005-06-10 Daniel Jacobowitz <dan@codesourcery.com> 2072*75fd0b74Schristos 2073*75fd0b74Schristos * elfcode.h (elf_write_relocs): Do nothing if there are no 2074*75fd0b74Schristos relocations. 2075*75fd0b74Schristos 2076*75fd0b74Schristos2005-06-10 Alan Modra <amodra@bigpond.net.au> 2077*75fd0b74Schristos 2078*75fd0b74Schristos * dwarf2.c (decode_line_info): Revert last change. Instead set 2079*75fd0b74Schristos initial low_pc to -1 to avoid need to test whether loc_pc has 2080*75fd0b74Schristos been set. 2081*75fd0b74Schristos 2082*75fd0b74Schristos2005-06-09 Christopher Faylor <cgf@timesys.com> 2083*75fd0b74Schristos 2084*75fd0b74Schristos * coffcode.h (sec_to_styp_flags): Set appropriate section flags when 2085*75fd0b74Schristos either SEC_ALLOC OR SEC_LOAD. 2086*75fd0b74Schristos 2087*75fd0b74Schristos2005-06-09 Christopher Faylor <cgf@timesys.com> 2088*75fd0b74Schristos 2089*75fd0b74Schristos * coffcode.h (sec_to_styp_flags): Remove read/write flags from noload 2090*75fd0b74Schristos section header. Do not add STYP_NOLOAD since it does not appear to be 2091*75fd0b74Schristos a valid PE flag. 2092*75fd0b74Schristos 2093*75fd0b74Schristos2005-06-09 H.J. Lu <hongjiu.lu@intel.com> 2094*75fd0b74Schristos 2095*75fd0b74Schristos PR 1000 2096*75fd0b74Schristos * dwarf2.c (lookup_address_in_line_info_table): Restore code 2097*75fd0b74Schristos handling NULL function info, removed with 2005-04-03 change. 2098*75fd0b74Schristos 2099*75fd0b74Schristos2005-06-08 Mark Mitchell <mark@codesourcery.com> 2100*75fd0b74Schristos 2101*75fd0b74Schristos * opncls.c (bfd_fopen): Mark returned BFD as cacheable if FD == -1. 2102*75fd0b74Schristos 2103*75fd0b74Schristos2005-06-09 Alan Modra <amodra@bigpond.net.au> 2104*75fd0b74Schristos 2105*75fd0b74Schristos * elflink.c (elf_mark_used_section): Delete. 2106*75fd0b74Schristos (bfd_elf_gc_sections): Call bfd_generic_gc_sections. 2107*75fd0b74Schristos * reloc.c (bfd_mark_used_section): New function. 2108*75fd0b74Schristos (bfd_generic_gc_sections): Call bfd_mark_used_section. 2109*75fd0b74Schristos 2110*75fd0b74Schristos2005-06-08 Alan Modra <amodra@bigpond.net.au> 2111*75fd0b74Schristos 2112*75fd0b74Schristos * opncls.c (bfd_fopen): Don't set bfd_error unconditionally. 2113*75fd0b74Schristos (bfd_fdopenr): Same. 2114*75fd0b74Schristos 2115*75fd0b74Schristos2005-06-07 Mark Mitchell <mark@codesourcery.com> 2116*75fd0b74Schristos 2117*75fd0b74Schristos * opncls.c (bfd_fdopenr): Add missing break statements. 2118*75fd0b74Schristos 2119*75fd0b74Schristos2005-06-07 Mark Mitchell <mark@codesourcery.com> 2120*75fd0b74Schristos 2121*75fd0b74Schristos * opncls.c (bfd_fopen): New API. 2122*75fd0b74Schristos (bfd_openr): Use it. 2123*75fd0b74Schristos (bfd_fdopenr): Likewise. 2124*75fd0b74Schristos * bfd-in2.h: Regenerated. 2125*75fd0b74Schristos 2126*75fd0b74Schristos2005-06-07 Aldy Hernandez <aldyh@redhat.com> 2127*75fd0b74Schristos Michael Snyder <msnyder@redhat.com> 2128*75fd0b74Schristos Stan Cox <scox@redhat.com> 2129*75fd0b74Schristos 2130*75fd0b74Schristos * Makefile.am (ALL_MACHINES): Add ms1 support. 2131*75fd0b74Schristos (ALL_MACHINES_CFILES): Same. 2132*75fd0b74Schristos (BFD32_BACKENDS): Same. 2133*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Same. 2134*75fd0b74Schristos 2135*75fd0b74Schristos * Makefile.in: Regenerate. 2136*75fd0b74Schristos 2137*75fd0b74Schristos * archures.c (bfd_architecture): Add ms1 entries. 2138*75fd0b74Schristos Externalize bfd_ms1_arch. 2139*75fd0b74Schristos (bfd_archures_list): Add bfd_ms1_arch. 2140*75fd0b74Schristos 2141*75fd0b74Schristos * bfd-in2.h: Regenerate. 2142*75fd0b74Schristos 2143*75fd0b74Schristos * cpu-ms1.c: New file. 2144*75fd0b74Schristos 2145*75fd0b74Schristos * elf32-ms1.c: New file. 2146*75fd0b74Schristos 2147*75fd0b74Schristos * targets.c: Define extern of bfd_elf32_ms1_vec. 2148*75fd0b74Schristos Add bfd_elf32_ms1_vec to _bfd_target_vector. 2149*75fd0b74Schristos 2150*75fd0b74Schristos * configure.in: Add bfd_elf32_ms1_vec case. 2151*75fd0b74Schristos 2152*75fd0b74Schristos * configure: Regenerate. 2153*75fd0b74Schristos 2154*75fd0b74Schristos * config.bfd: Add ms1-*-elf to table. 2155*75fd0b74Schristos 2156*75fd0b74Schristos2005-06-07 Zack Weinberg <zack@codesourcery.com> 2157*75fd0b74Schristos 2158*75fd0b74Schristos * coff-i386.c: Change md_apply_fix3 to md_apply_fix in comment. 2159*75fd0b74Schristos 2160*75fd0b74Schristos2005-06-07 Alan Modra <amodra@bigpond.net.au> 2161*75fd0b74Schristos 2162*75fd0b74Schristos * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Init _bfd_find_line. 2163*75fd0b74Schristos * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise. 2164*75fd0b74Schristos 2165*75fd0b74Schristos2005-06-06 H.J. Lu <hongjiu.lu@intel.com> 2166*75fd0b74Schristos 2167*75fd0b74Schristos PR 990 2168*75fd0b74Schristos * bfd.c (bfd_find_line): New. 2169*75fd0b74Schristos 2170*75fd0b74Schristos * dwarf2.c (comp_unit): Add variable_table. 2171*75fd0b74Schristos (funcinfo): Add file, line, and sec. 2172*75fd0b74Schristos (varinfo): New. 2173*75fd0b74Schristos (lookup_symbol_in_function_table): New. 2174*75fd0b74Schristos (lookup_symbol_in_variable_table): New. 2175*75fd0b74Schristos (scan_unit_for_functions): Renamed to ... 2176*75fd0b74Schristos (scan_unit_for_symbols): This. Handle DW_TAG_entry_point and 2177*75fd0b74Schristos DW_TAG_variable. 2178*75fd0b74Schristos (comp_unit_find_nearest_line): Updated. 2179*75fd0b74Schristos (comp_unit_find_line): New. 2180*75fd0b74Schristos (_bfd_dwarf2_find_line): New. 2181*75fd0b74Schristos 2182*75fd0b74Schristos * elf-bfd.h (_bfd_elf_find_line): New. 2183*75fd0b74Schristos (_bfd_generic_find_line): New. Defined. 2184*75fd0b74Schristos 2185*75fd0b74Schristos * elf.c (_bfd_elf_find_line): New. 2186*75fd0b74Schristos 2187*75fd0b74Schristos * libbfd-in.h (_bfd_dwarf2_find_line): New. 2188*75fd0b74Schristos (_bfd_generic_find_line): New. 2189*75fd0b74Schristos 2190*75fd0b74Schristos * bfd-in2.h: Regenerated. 2191*75fd0b74Schristos * libbfd.h: Likewise. 2192*75fd0b74Schristos 2193*75fd0b74Schristos * libbfd.c (_bfd_generic_find_line): New. 2194*75fd0b74Schristos 2195*75fd0b74Schristos * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize _bfd_find_line 2196*75fd0b74Schristos with _bfd_generic_find_line. 2197*75fd0b74Schristos (bfd_target): Add _bfd_find_line. 2198*75fd0b74Schristos 2199*75fd0b74Schristos2005-06-06 H.J. Lu <hongjiu.lu@intel.com> 2200*75fd0b74Schristos 2201*75fd0b74Schristos * dwarf2.c (decode_line_info): Properly set low_pc. 2202*75fd0b74Schristos 2203*75fd0b74Schristos2005-06-06 Alan Modra <amodra@bigpond.net.au> 2204*75fd0b74Schristos 2205*75fd0b74Schristos * elf64-pcc.c (ppc64_elf_gc_mark_hook): For the local sym in .opd 2206*75fd0b74Schristos case, include addend when indexing .opd section map. 2207*75fd0b74Schristos (ppc64_elf_edit_opd): Add no_opd_opt param. Do nothing besides 2208*75fd0b74Schristos clear opd_adjust array if no_opd_opt set. Tidy code. 2209*75fd0b74Schristos Ignore zero size .opd. Check bfd_alloc return value. 2210*75fd0b74Schristos (ppc_stub_name): Return immediately on bfd_malloc fail. 2211*75fd0b74Schristos * elf64-ppc.h (ppc64_elf_edit_opd): Update prototype. 2212*75fd0b74Schristos 2213*75fd0b74Schristos2005-06-04 H.J. Lu <hongjiu.lu@intel.com> 2214*75fd0b74Schristos 2215*75fd0b74Schristos * dwarf2.c (comp_unit): Fix a typo in comment. 2216*75fd0b74Schristos 2217*75fd0b74Schristos2005-06-03 Jan-Benedict Glaw <jbglaw@lug-owl.de> 2218*75fd0b74Schristos 2219*75fd0b74Schristos * elf32-vax.c (rtype_to_howto): Remove PARAMS. 2220*75fd0b74Schristos (reloc_type_lookup): Dito. 2221*75fd0b74Schristos (elf_vax_discard_copies): Dito. 2222*75fd0b74Schristos (elf_vax_instantiate_got_entries): Dito. 2223*75fd0b74Schristos (elf_vax_link_hash_traverse): Dito. 2224*75fd0b74Schristos (elf_vax_link_hash_newfunc): Dito. 2225*75fd0b74Schristos (elf_vax_link_hash_table_create): Dito. 2226*75fd0b74Schristos (elf32_vax_set_private_flags): Dito. 2227*75fd0b74Schristos (elf32_vax_merge_private_bfd_data): Dito. 2228*75fd0b74Schristos (elf32_vax_print_private_bfd_data): Dito. 2229*75fd0b74Schristos (elf_vax_check_relocs): Dito. 2230*75fd0b74Schristos (elf_vax_gc_mark_hook): Dito. 2231*75fd0b74Schristos (elf_vax_gc_sweep_hook): Dito. 2232*75fd0b74Schristos (elf_vax_size_dynamic_sections): Dito. 2233*75fd0b74Schristos (elf_vax_discard_copies): Dito. 2234*75fd0b74Schristos (elf_vax_instantiate_got_entries): Dito. 2235*75fd0b74Schristos (elf_vax_relocate_section): Dito. 2236*75fd0b74Schristos (elf_vax_finish_dynamic_symbol): Dito. 2237*75fd0b74Schristos (elf_vax_finish_dynamic_sections): Dito. 2238*75fd0b74Schristos (elf_vax_hash_table): Break-up of line isn't needed. 2239*75fd0b74Schristos (elf_vax_check_relocs): Remove leading whitespace 2240*75fd0b74Schristos (elf_vax_relocate_section): Remove redundant whitespace 2241*75fd0b74Schristos (elf_vax_link_hash_newfunc): Don't cast NULL. 2242*75fd0b74Schristos (elf_vax_link_hash_table_create): Dito. 2243*75fd0b74Schristos * cpu-vax.c (bfd_vax_arch) Remove a trailing space. 2244*75fd0b74Schristos 2245*75fd0b74Schristos2005-06-03 Alan Modra <amodra@bigpond.net.au> 2246*75fd0b74Schristos 2247*75fd0b74Schristos PR 568 2248*75fd0b74Schristos * configure.in: Bump version 2249*75fd0b74Schristos * configure: Regenerate. 2250*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Use einfo linker callback to print 2251*75fd0b74Schristos discarded section sym refs and kill linker output. 2252*75fd0b74Schristos * simple.c (simple_dummy_einfo): New function. 2253*75fd0b74Schristos (bfd_simple_get_relocated_section_contents): Init callbacks.einfo. 2254*75fd0b74Schristos 2255*75fd0b74Schristos * elf32-i386.c (elf_i386_relocate_section): Handle zero symndx 2256*75fd0b74Schristos for all reloc types. 2257*75fd0b74Schristos 2258*75fd0b74Schristos2005-06-02 Alan Modra <amodra@bigpond.net.au> 2259*75fd0b74Schristos 2260*75fd0b74Schristos * elf64-ppc.c (add_symbol_adjust): Set sym visibility to most 2261*75fd0b74Schristos restrictive of func code and func descr for undefined syms as well 2262*75fd0b74Schristos as defined. 2263*75fd0b74Schristos 2264*75fd0b74Schristos2005-05-31 Jim Blandy <jimb@redhat.com> 2265*75fd0b74Schristos 2266*75fd0b74Schristos * Makefile.am: Regenerate dependencies with 'make dep-am'. 2267*75fd0b74Schristos * Makefile.in: Regenerate. 2268*75fd0b74Schristos 2269*75fd0b74Schristos2005-05-31 Richard Henderson <rth@redhat.com> 2270*75fd0b74Schristos 2271*75fd0b74Schristos * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_JSRDIRECT): New. 2272*75fd0b74Schristos (ALPHA_ELF_LINK_HASH_TLS_IE): Renumber to 0x80. 2273*75fd0b74Schristos (ALPHA_ELF_LINK_HASH_LU_PLT): Rename from ALPHA_ELF_LINK_HASH_LU_FUNC. 2274*75fd0b74Schristos (elf64_alpha_want_plt): Update to match. 2275*75fd0b74Schristos (elf64_alpha_check_relocs): Collect JSRDIRECT in gotent_flags. 2276*75fd0b74Schristos (elf64_alpha_relax_with_lituse): Likewise. Handle JSRDIRECT. 2277*75fd0b74Schristos 2278*75fd0b74Schristos2005-05-31 Zack Weinberg <zack@codesourcery.com> 2279*75fd0b74Schristos 2280*75fd0b74Schristos * elf32-arm.c (elf32_arm_reloc_type_lookup) 2281*75fd0b74Schristos (elf32_arm_nabi_grok_prstatus, elf32_arm_nabi_grok_psinfo): 2282*75fd0b74Schristos Use ISO C90 function declaration style. 2283*75fd0b74Schristos 2284*75fd0b74Schristos2005-05-31 James E Wilson <wilson@specifixinc.com> 2285*75fd0b74Schristos 2286*75fd0b74Schristos * elfcode.h (NAME(bfd_elf,bfd_from_remote_memory)): Check for program 2287*75fd0b74Schristos header PF_R flag on PT_LOAD segments. 2288*75fd0b74Schristos 2289*75fd0b74Schristos2005-05-30 Richard Henderson <rth@redhat.com> 2290*75fd0b74Schristos 2291*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_relocate_section): Use dtp_base for 2292*75fd0b74Schristos the zero index relocs produced by elf64_alpha_relax_tls_get_addr. 2293*75fd0b74Schristos 2294*75fd0b74Schristos2005-05-29 Richard Henderson <rth@redhat.com> 2295*75fd0b74Schristos 2296*75fd0b74Schristos * configure.in (--enable-secureplt): New. 2297*75fd0b74Schristos * elf64-alpha.c (INSN_LDA, INSN_LDAH, INSN_LDQ, INSN_BR): New. 2298*75fd0b74Schristos (INSN_SUBQ, INSN_S4SUBQ, INSN_JMP): New. 2299*75fd0b74Schristos (INSN_A, INSN_AB, INSN_ABC, INSN_ABO, INSN_AD): New. 2300*75fd0b74Schristos (elf64_alpha_use_secureplt): New. 2301*75fd0b74Schristos (OLD_PLT_HEADER_SIZE, OLD_PLT_ENTRY_SIZE): New. 2302*75fd0b74Schristos (NEW_PLT_HEADER_SIZE, NEW_PLT_ENTRY_SIZE): New. 2303*75fd0b74Schristos (PLT_HEADER_SIZE, PLT_ENTRY_SIZE): Conditionalize on secureplt. 2304*75fd0b74Schristos (ALPHA_ELF_LINK_HASH_PLT_LOC): Remove. 2305*75fd0b74Schristos (struct alpha_elf_link_hash_entry): Add plt_offset. 2306*75fd0b74Schristos (PLT_HEADER_WORD1, PLT_HEADER_WORD2, PLT_HEADER_WORD3): Remove. 2307*75fd0b74Schristos (PLT_HEADER_WORD4, PLT_ENTRY_WORD1, PLT_ENTRY_WORD2): Remove. 2308*75fd0b74Schristos (PLT_ENTRY_WORD3): Remove. 2309*75fd0b74Schristos (elf64_alpha_create_dynamic_sections): If secureplt, set SEC_READONLY 2310*75fd0b74Schristos on .plt and create .got.plt. 2311*75fd0b74Schristos (elf64_alpha_output_extsym): Remove .plt frobbing for symbol values. 2312*75fd0b74Schristos (get_got_entry): Initialize plt_offset. 2313*75fd0b74Schristos (elf64_alpha_want_plt): New. 2314*75fd0b74Schristos (elf64_alpha_check_relocs): Use it. 2315*75fd0b74Schristos (elf64_alpha_adjust_dynamic_symbol): Likewise. Don't allocate 2316*75fd0b74Schristos plt entries here. 2317*75fd0b74Schristos (elf64_alpha_calc_got_offsets_for_symbol): Don't report internal 2318*75fd0b74Schristos error as user error. 2319*75fd0b74Schristos (elf64_alpha_size_plt_section_1): Allocate one plt entry per 2320*75fd0b74Schristos got subsection. 2321*75fd0b74Schristos (elf64_alpha_size_plt_section): Size .got.plt section. 2322*75fd0b74Schristos (elf64_alpha_size_rela_got_1): Don't allocate relocations if 2323*75fd0b74Schristos plt entries used. 2324*75fd0b74Schristos (elf64_alpha_size_dynamic_sections): Call elf64_alpha_size_plt_section. 2325*75fd0b74Schristos Add PLTRO DYNAMIC entry. 2326*75fd0b74Schristos (elf64_alpha_finish_dynamic_symbol): Generate secureplt format. 2327*75fd0b74Schristos (elf64_alpha_finish_dynamic_sections): Likewise. 2328*75fd0b74Schristos 2329*75fd0b74Schristos2005-05-28 David Daney <ddaney@avtrex.com> 2330*75fd0b74Schristos 2331*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Move 2332*75fd0b74Schristos calculation of DT_RELSZ to occur after all dynamic relocations 2333*75fd0b74Schristos are created. 2334*75fd0b74Schristos 2335*75fd0b74Schristos2005-05-28 Eli Zaretskii <eliz@gnu.org> 2336*75fd0b74Schristos 2337*75fd0b74Schristos * configure.in: Add snprintf and vsnprintf to AC_CHECK_DECLS. 2338*75fd0b74Schristos * config.in, configure: Regenerate. 2339*75fd0b74Schristos 2340*75fd0b74Schristos2005-05-26 Mark Kettenis <kettenis@gnu.org> 2341*75fd0b74Schristos Maciej W. Rozycki <macro@linux-mips.org> 2342*75fd0b74Schristos 2343*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_section_processing): Warn and 2344*75fd0b74Schristos stop processing of options if one of invalid size is 2345*75fd0b74Schristos encountered. 2346*75fd0b74Schristos (_bfd_mips_elf_section_from_shdr): Likewise. 2347*75fd0b74Schristos (_bfd_mips_elf_fake_sections): Reset the type of empty special 2348*75fd0b74Schristos sections. 2349*75fd0b74Schristos 2350*75fd0b74Schristos2005-05-26 Richard Henderson <rth@redhat.com> 2351*75fd0b74Schristos 2352*75fd0b74Schristos * elf64-alpha.c (struct alpha_elf_link_hash_entry): Remove 2353*75fd0b74Schristos plt_old_section, plt_old_value. 2354*75fd0b74Schristos (elf64_alpha_adjust_dynamic_symbol): Don't set it. 2355*75fd0b74Schristos (elf64_alpha_size_plt_section_1): Don't use it. 2356*75fd0b74Schristos 2357*75fd0b74Schristos2005-05-26 Jakub Jelinek <jakub@redhat.com> 2358*75fd0b74Schristos 2359*75fd0b74Schristos * elfcode.h (elf_object_p): Fail if e_shoff != 0, e_shnum == 0 and 2360*75fd0b74Schristos first shdr has sh_size == 0. Fail if e_shnum is large to cause 2361*75fd0b74Schristos arithmetic overflow when allocating the i_shdr array. 2362*75fd0b74Schristos Sanity check sh_link and sh_info fields. Fix e_shstrndx sanity check. 2363*75fd0b74Schristos 2364*75fd0b74Schristos2005-05-25 Richard Henderson <rth@redhat.com> 2365*75fd0b74Schristos 2366*75fd0b74Schristos * elf64-alpha.c: Update all function definitions to ISO C. Remove 2367*75fd0b74Schristos all function prototypes; rearrange functions into def-use order. 2368*75fd0b74Schristos 2369*75fd0b74Schristos2005-05-25 Richard Henderson <rth@redhat.com> 2370*75fd0b74Schristos 2371*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_merge_gots): Fix gotent iteration 2372*75fd0b74Schristos in the presence of deleting elements. 2373*75fd0b74Schristos (elf64_alpha_size_got_sections): Zero dead got section size. 2374*75fd0b74Schristos 2375*75fd0b74Schristos2005-05-23 Fred Fish <fnf@specifixinc.com> 2376*75fd0b74Schristos 2377*75fd0b74Schristos * dwarf2.c (struct dwarf2_debug): Add inliner_chain member. 2378*75fd0b74Schristos (struct funcinfo): Add caller_func, caller_file, caller_line. 2379*75fd0b74Schristos tag, and nesting_level members. 2380*75fd0b74Schristos (lookup_address_in_function_table): Change first passed parameter 2381*75fd0b74Schristos from "struct funcinfo *" to "struct comp_unit *". 2382*75fd0b74Schristos (lookup_address_in_function_table): Dereference unit to find function 2383*75fd0b74Schristos table. 2384*75fd0b74Schristos (lookup_address_in_function_table): Traverse the function list to 2385*75fd0b74Schristos create a chain of inlined functions back to the first non inlined 2386*75fd0b74Schristos function. 2387*75fd0b74Schristos (scan_unit_for_functions): Remember tag and nesting level. Handle 2388*75fd0b74Schristos DW_AT_call_file and DW_AT_call_line. 2389*75fd0b74Schristos (comp_unit_find_nearest_line): Adjust lookup_address_in_function_table 2390*75fd0b74Schristos call to pass unit pointer instead of function table pointer. For 2391*75fd0b74Schristos inlined functions, save pointer to the inliner chain. 2392*75fd0b74Schristos (_bfd_dwarf2_find_nearest_line): Initialize inliner_chain to NULL. 2393*75fd0b74Schristos (_bfd_dwarf2_find_inliner_info): New function that returns information 2394*75fd0b74Schristos from the inliner chain after a call to bfd_find_nearest_line. 2395*75fd0b74Schristos 2396*75fd0b74Schristos * bfd.c (bfd_find_inliner_info): Define using BFD_SEND. 2397*75fd0b74Schristos * targets.c (BFD_JUMP_TABLE_SYMBOLS): Add entry for 2398*75fd0b74Schristos NAME##_find_inliner_info. 2399*75fd0b74Schristos (bfd_target): Add _bfd_find_inliner_info. 2400*75fd0b74Schristos * bfd-in2.h: Regenerate. 2401*75fd0b74Schristos 2402*75fd0b74Schristos * libbfd-in.h (_bfd_nosymbols_find_inliner_info): Define as 2403*75fd0b74Schristos macro that always returns bfd_false. 2404*75fd0b74Schristos (_bfd_dwarf2_find_inliner_info): Declare. 2405*75fd0b74Schristos * libbfd.h: Regenerate. 2406*75fd0b74Schristos 2407*75fd0b74Schristos * elf32-arm.c (elf32_arm_find_inliner_info): New function 2408*75fd0b74Schristos that calls _bfd_dwarf2_find_inliner_info. 2409*75fd0b74Schristos (bfd_elf32_find_inliner_info): Define to elf32_arm_find_inliner_info. 2410*75fd0b74Schristos 2411*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_find_inliner_info): New function 2412*75fd0b74Schristos that calls _bfd_dwarf2_find_inliner_info. 2413*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_find_inliner_info): Declare. 2414*75fd0b74Schristos * elfn32-mips.c (bfd_elf32_find_inliner_info): Define to 2415*75fd0b74Schristos _bfd_mips_elf_find_inliner_info. 2416*75fd0b74Schristos * elf64-mips.c (bfd_elf64_find_inliner_info): Ditto. 2417*75fd0b74Schristos * elf32-mips.c (bfd_elf32_find_inliner_info): Ditto. 2418*75fd0b74Schristos 2419*75fd0b74Schristos * elf.c (_bfd_elf_find_inliner_info): New function that calls 2420*75fd0b74Schristos _bfd_dwarf2_find_inliner_info. 2421*75fd0b74Schristos * elf-bfd.h (_bfd_elf_find_inliner_info): Declare. 2422*75fd0b74Schristos * elfxx-target.h (bfd_elfNN_find_inliner_info): Define to 2423*75fd0b74Schristos _bfd_elf_find_inliner_info. 2424*75fd0b74Schristos 2425*75fd0b74Schristos * coffgen.c (coff_find_inliner_info): New function that 2426*75fd0b74Schristos calls _bfd_dwarf2_find_inliner_info. 2427*75fd0b74Schristos * libcoff-in.h (coff_find_inliner_info): Declare. 2428*75fd0b74Schristos * libcoff.h: Regenerate. 2429*75fd0b74Schristos * coff-rs6000.c (rs6000coff_vec): Add coff_find_inliner_info. 2430*75fd0b74Schristos (pmac_xcoff_vec) Ditto. 2431*75fd0b74Schristos * coff64-rs6000.c (rs6000coff64_vec): Ditto. 2432*75fd0b74Schristos (aix5coff64_vec): Ditto. 2433*75fd0b74Schristos 2434*75fd0b74Schristos * aout-target.h (MY_find_inliner_info): Define as 2435*75fd0b74Schristos _bfd_nosymbols_find_inliner_info. 2436*75fd0b74Schristos * aout-tic30.c (MY_find_inliner_info): Ditto. 2437*75fd0b74Schristos * binary.c (binary_find_inliner_info): Ditto. 2438*75fd0b74Schristos * i386msdos.c (msdos_find_inliner_info): Ditto. 2439*75fd0b74Schristos * ihex.c (ihex_find_inliner_info): Ditto. 2440*75fd0b74Schristos * libaout.h (aout_32_find_inliner_info): Ditto. 2441*75fd0b74Schristos * libecoff.h (_bfd_ecoff_find_inliner_info): Ditto. 2442*75fd0b74Schristos * mach-o.c (bfd_mach_o_find_inliner_info): Ditto. 2443*75fd0b74Schristos * mmo.c (mmo_find_inliner_info): Ditto. 2444*75fd0b74Schristos * nlm-target.h (nlm_find_inliner_info): Ditto. 2445*75fd0b74Schristos * pef.c (bfd_pef_find_inliner_info): Ditto. 2446*75fd0b74Schristos * ppcboot.c (ppcboot_find_inliner_info): Ditto. 2447*75fd0b74Schristos * srec.c (srec_find_inliner_info): Ditto. 2448*75fd0b74Schristos * tekhex.c (tekhex_find_inliner_info): Ditto. 2449*75fd0b74Schristos * versados.c (versados_find_inliner_info): Ditto. 2450*75fd0b74Schristos * xsym.c (bfd_sym_find_inliner_info): Ditto. 2451*75fd0b74Schristos 2452*75fd0b74Schristos * ieee.c (ieee_find_inliner_info): New function that always 2453*75fd0b74Schristos returns FALSE. 2454*75fd0b74Schristos * oasys.c (oasys_find_inliner_info): Ditto. 2455*75fd0b74Schristos * vms.c (vms_find_inliner_info): Ditto. 2456*75fd0b74Schristos 2457*75fd0b74Schristos2005-05-24 Alan Modra <amodra@bigpond.net.au> 2458*75fd0b74Schristos 2459*75fd0b74Schristos * elf32-ppc.c (ppc_elf_check_relocs): For old gcc -fPIC code 2460*75fd0b74Schristos force old plt layout. 2461*75fd0b74Schristos 2462*75fd0b74Schristos2005-05-22 Richard Henderson <rth@redhat.com> 2463*75fd0b74Schristos 2464*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_relax_section): Ignore non-allocated 2465*75fd0b74Schristos sections. 2466*75fd0b74Schristos (elf64_alpha_check_relocs): Likewise. 2467*75fd0b74Schristos (elf64_alpha_relocate_section): Don't emit dynamic relocations to 2468*75fd0b74Schristos non-allocated sections. 2469*75fd0b74Schristos 2470*75fd0b74Schristos2005-05-22 Richard Henderson <rth@redhat.com> 2471*75fd0b74Schristos 2472*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_relax_with_lituse): Relax jsr to 2473*75fd0b74Schristos undefweak to use zero register. Call elf64_alpha_relax_got_load 2474*75fd0b74Schristos if not all uses removed. 2475*75fd0b74Schristos (elf64_alpha_relax_got_load): Relax undefweak to lda zero. 2476*75fd0b74Schristos (elf64_alpha_relax_section): Handle undefweak symbols. 2477*75fd0b74Schristos (elf64_alpha_calc_dynrel_sizes): Don't add relocs for undefweak. 2478*75fd0b74Schristos (elf64_alpha_size_rela_got_1): Likewise. 2479*75fd0b74Schristos (elf64_alpha_relocate_section): Likewise. 2480*75fd0b74Schristos 2481*75fd0b74Schristos2005-05-22 Richard Henderson <rth@redhat.com> 2482*75fd0b74Schristos 2483*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_relax_section): Only operate 2484*75fd0b74Schristos on SEC_CODE sections. 2485*75fd0b74Schristos 2486*75fd0b74Schristos2005-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> 2487*75fd0b74Schristos 2488*75fd0b74Schristos * som.c (try_prev_fixup): Changed type of subspace_reloc_sizep to 2489*75fd0b74Schristos unsigned int *. 2490*75fd0b74Schristos (som_write_space_strings): Change type of tmp_space and p to char *. 2491*75fd0b74Schristos (som_write_symbol_strings): Likewise. Also change type of comp to 2492*75fd0b74Schristos char *comp[4]. 2493*75fd0b74Schristos (som_begin_writing): Change type of strings_size to unsigned int. 2494*75fd0b74Schristos (som_finish_writing): Likewise. 2495*75fd0b74Schristos (som_slurp_reloc_table): Change type of external_relocs to unsigned 2496*75fd0b74Schristos char *. 2497*75fd0b74Schristos * som.h (struct som_section_data_struct): Change type of reloc_stream 2498*75fd0b74Schristos field to unsigned char *. 2499*75fd0b74Schristos 2500*75fd0b74Schristos2005-05-20 Daniel Jacobowitz <dan@codesourcery.com> 2501*75fd0b74Schristos 2502*75fd0b74Schristos * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't eliminate 2503*75fd0b74Schristos copy relocations for VxWorks. 2504*75fd0b74Schristos 2505*75fd0b74Schristos2005-05-20 Daniel Jacobowitz <dan@codesourcery.com> 2506*75fd0b74Schristos 2507*75fd0b74Schristos * elf32-ppc.c (struct ppc_elf_link_hash_entry): Add new field 2508*75fd0b74Schristos has_sda_refs. 2509*75fd0b74Schristos (ppc_elf_copy_indirect_symbol): Copy has_sda_refs. 2510*75fd0b74Schristos (ppc_elf_check_relocs): Set has_sda_refs. 2511*75fd0b74Schristos (ppc_elf_adjust_dynamic_symbol): Check has_sda_refs before eliminating 2512*75fd0b74Schristos copy relocations. Use has_sda_refs to place variables in .sbss. 2513*75fd0b74Schristos (ppc_elf_finish_dynamic_symbol): Use has_sda_refs to place variables in 2514*75fd0b74Schristos .sbss. 2515*75fd0b74Schristos 2516*75fd0b74Schristos2005-05-20 Bob Wilson <bob.wilson@acm.org> 2517*75fd0b74Schristos 2518*75fd0b74Schristos * elf32-xtensa.c (bfd_elf_xtensa_reloc): Make sure that 2519*75fd0b74Schristos xtensa_default_isa is initialized. 2520*75fd0b74Schristos 2521*75fd0b74Schristos2005-05-20 Alan Modra <amodra@bigpond.net.au> 2522*75fd0b74Schristos 2523*75fd0b74Schristos * elf32-ppc.c (allocate_dynrelocs): Correct plt offset assigned 2524*75fd0b74Schristos for second and subsequent list entries. Only allocate multiple 2525*75fd0b74Schristos glink stubs when shared or pie. 2526*75fd0b74Schristos (ppc_elf_finish_dynamic_symbol): Break out early when only one 2527*75fd0b74Schristos glink stub is needed. 2528*75fd0b74Schristos 2529*75fd0b74Schristos2005-05-19 Zack Weinberg <zack@codesourcery.com> 2530*75fd0b74Schristos 2531*75fd0b74Schristos * Makefile.am: Have 'all' depend on 'info'. 2532*75fd0b74Schristos * Makefile.in: Regenerate. 2533*75fd0b74Schristos 2534*75fd0b74Schristos2005-05-19 Alan Modra <amodra@bigpond.net.au> 2535*75fd0b74Schristos 2536*75fd0b74Schristos * elf-bfd.h (struct elf_link_hash_table): Delete init_refcount and 2537*75fd0b74Schristos init_offset. Add init_got_refcount, init_plt_refcount, 2538*75fd0b74Schristos init_got_offset and init_plt_offset. 2539*75fd0b74Schristos * elf.c (_bfd_elf_link_hash_newfunc): Adjust for above change. 2540*75fd0b74Schristos (_bfd_elf_link_hash_hide_symbol): Likewise. 2541*75fd0b74Schristos (_bfd_elf_link_hash_table_init): Likewise. 2542*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise. 2543*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise. 2544*75fd0b74Schristos * elflink.c (_bfd_elf_adjust_dynamic_symbol): Likewise. 2545*75fd0b74Schristos (bfd_elf_size_dynamic_sections): Likewise. 2546*75fd0b74Schristos * elf32-ppc.c (GLINK_PLTRESOLVE): Now 16 insns. 2547*75fd0b74Schristos (LWZU_0_X_12, LWZ_0_4_30, LWZ_0_X_12, LWZ_11_X_11, LWZ_11_X_30, 2548*75fd0b74Schristos LWZ_12_4_12, LWZ_12_8_30, LWZ_12_X_12, SUB_11_11_30): Delete. 2549*75fd0b74Schristos (ADDIS_12_12, BCL_20_31, LWZU_0_12, LWZ_0_12, LWZ_11_11, LWZ_11_30, 2550*75fd0b74Schristos LWZ_12_12, MFLR_0, MFLR_12, MTLR_0, SUB_11_11_12): Define. 2551*75fd0b74Schristos (struct plt_entry): New. 2552*75fd0b74Schristos (ppc_elf_link_hash_table_create): Set new init_plt fields. 2553*75fd0b74Schristos (ppc_elf_copy_indirect_symbol): Handle merge of plt plist. Don't 2554*75fd0b74Schristos use _bfd_elf_link_hash_copy_indirect. 2555*75fd0b74Schristos (update_plt_info, find_plt_ent): New functions. 2556*75fd0b74Schristos (ppc_elf_check_relocs): Handle R_PPC_PLTREL24 with non-zero addend 2557*75fd0b74Schristos and adjust for use of plt list rather than refcount. 2558*75fd0b74Schristos (ppc_elf_gc_sweep_hook): Likewise. 2559*75fd0b74Schristos (ppc_elf_tls_optimize): Likewise. 2560*75fd0b74Schristos (ppc_elf_adjust_dynamic_symbol): Likewise. 2561*75fd0b74Schristos (allocate_dynrelocs): Likewise. 2562*75fd0b74Schristos (ppc_elf_relax_section): Likewise. 2563*75fd0b74Schristos (ppc_elf_relocate_section): Likewise. Adjust R_PPC_PLTREL24 addends 2564*75fd0b74Schristos when performing a relocatable link. 2565*75fd0b74Schristos (ppc_elf_finish_dynamic_symbol): Likewise. Write .glink stubs here.. 2566*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): ..rather than here. Use new 2567*75fd0b74Schristos pic resolver stub. 2568*75fd0b74Schristos 2569*75fd0b74Schristos2005-05-19 Alan Modra <amodra@bigpond.net.au> 2570*75fd0b74Schristos 2571*75fd0b74Schristos * elf.c (assign_file_positions_for_segments): Use maximum of 2572*75fd0b74Schristos maxpagesize and section alignment when adjusting initial 2573*75fd0b74Schristos segment offset and section offsets. 2574*75fd0b74Schristos 2575*75fd0b74Schristos2005-05-18 Zack Weinberg <zack@codesourcery.com> 2576*75fd0b74Schristos 2577*75fd0b74Schristos * elf32-arm.c: Make all #ifndef OLD_ARM_ABI blocks 2578*75fd0b74Schristos unconditional. 2579*75fd0b74Schristos 2580*75fd0b74Schristos2005-05-18 H.J. Lu <hongjiu.lu@intel.com> 2581*75fd0b74Schristos 2582*75fd0b74Schristos * elf.c (group_signature): Undo the last change. Check if the 2583*75fd0b74Schristos symbol table section is correct. 2584*75fd0b74Schristos 2585*75fd0b74Schristos2005-05-17 Zack Weinberg <zack@codesourcery.com> 2586*75fd0b74Schristos 2587*75fd0b74Schristos * elf32-arm.c: Wherever possible, use official reloc names 2588*75fd0b74Schristos from AAELF. 2589*75fd0b74Schristos (elf32_arm_howto_table, elf32_arm_tls_gd32_howto) 2590*75fd0b74Schristos (elf32_arm_tls_ldo32_howto, elf32_arm_tls_ldm32_howto) 2591*75fd0b74Schristos (elf32_arm_tls_le32_howto, elf32_arm_tls_ie32_howto) 2592*75fd0b74Schristos (elf32_arm_vtinherit_howto, elf32_arm_vtentry_howto) 2593*75fd0b74Schristos (elf32_arm_pc11_howto, elf32_arm_thm_pc9_howto, elf32_arm_got_prel) 2594*75fd0b74Schristos (elf32_arm_r_howto): Replace with elf32_arm_howto_table_1, 2595*75fd0b74Schristos elf32_arm_howto_table_2, and elf32_arm_howto_table_3. 2596*75fd0b74Schristos Add many new relocations from AAELF. 2597*75fd0b74Schristos (elf32_arm_howto_from_type): Update to match. 2598*75fd0b74Schristos (elf32_arm_reloc_map): Add entries for R_ARM_THM_JUMP24, 2599*75fd0b74Schristos R_ARM_THM_JUMP11, R_ARM_THM_JUMP19, R_ARM_THM_JUMP8, 2600*75fd0b74Schristos R_ARM_THM_JUMP6, R_ARM_GNU_VTINHERIT, and R_ARM_GNU_VTENTRY. 2601*75fd0b74Schristos (elf32_arm_reloc_type_lookup): Use elf32_arm_howto_from_type. 2602*75fd0b74Schristos (elf32_arm_final_link_relocate): Add support for 2603*75fd0b74Schristos R_ARM_THM_JUMP24, R_ARM_THM_JUMP19, R_ARM_THM_JUMP6. Remove 2604*75fd0b74Schristos case entries redundant with default. 2605*75fd0b74Schristos 2606*75fd0b74Schristos * reloc.c: Reorganize ARM relocations. Add Thumb 2607*75fd0b74Schristos assembler-internal relocations BFD_RELOC_ARM_T32_OFFSET_U8, 2608*75fd0b74Schristos BFD_RELOC_ARM_T32_OFFSET_IMM, BFD_RELOC_ARM_T32_IMMEDIATE. 2609*75fd0b74Schristos Add visible relocations BFD_RELOC_THUMB_PCREL_BRANCH7, 2610*75fd0b74Schristos BFD_RELOC_THUMB_BRANCH20, BFD_RELOC_THUMB_BRANCH25. 2611*75fd0b74Schristos Delete unused relocations BFD_RELOC_ARM_GOT12, BFD_RELOC_ARM_COPY. 2612*75fd0b74Schristos * bfd-in2.h, libbfd.h: Regenerate. 2613*75fd0b74Schristos 2614*75fd0b74Schristos2005-05-17 Daniel Jacobowitz <dan@codesourcery.com> 2615*75fd0b74Schristos 2616*75fd0b74Schristos * elf.c (_bfd_elf_write_object_contents): Check for non-NULL 2617*75fd0b74Schristos elf_shstrtab. 2618*75fd0b74Schristos * format.c (bfd_check_format_matches): Set output_has_begun 2619*75fd0b74Schristos for both_direction. 2620*75fd0b74Schristos * section.c (bfd_set_section_contents): Use bfd_write_p. Remove 2621*75fd0b74Schristos special case for both_direction. 2622*75fd0b74Schristos 2623*75fd0b74Schristos2005-05-17 Nick Clifton <nickc@redhat.com> 2624*75fd0b74Schristos 2625*75fd0b74Schristos * elf.c (group_signature): Check for a group section which is 2626*75fd0b74Schristos actually a (corrupt) symbol table section in disguise and prevent 2627*75fd0b74Schristos an infinite loop from occurring. 2628*75fd0b74Schristos 2629*75fd0b74Schristos2005-05-17 H.J. Lu <hongjiu.lu@intel.com> 2630*75fd0b74Schristos 2631*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relax_brl): Undo the change made on 2632*75fd0b74Schristos 2005-02-16. 2633*75fd0b74Schristos 2634*75fd0b74Schristos2005-05-17 H.J. Lu <hongjiu.lu@intel.com> 2635*75fd0b74Schristos 2636*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relax_br): Keep the original 2637*75fd0b74Schristos predicate on slot 0 only if slot 0 isn't br. 2638*75fd0b74Schristos 2639*75fd0b74Schristos2005-05-17 H.J. Lu <hongjiu.lu@intel.com> 2640*75fd0b74Schristos 2641*75fd0b74Schristos PR 797 2642*75fd0b74Schristos * elf32-i386.c (elf_i386_size_dynamic_sections): Also remove 2643*75fd0b74Schristos empty sdynbss section. 2644*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise. 2645*75fd0b74Schristos 2646*75fd0b74Schristos2005-05-17 Tavis Ormandy <taviso@gentoo.org> 2647*75fd0b74Schristos 2648*75fd0b74Schristos * elf.c (bfd_section_from_shdr): Add sanity check when parsing 2649*75fd0b74Schristos dynamic sections. 2650*75fd0b74Schristos 2651*75fd0b74Schristos2005-05-17 Alan Modra <amodra@bigpond.net.au> 2652*75fd0b74Schristos 2653*75fd0b74Schristos * elf32-ppc.c (LIS_11. LIS_12): Define. 2654*75fd0b74Schristos (LWZU_0_X_12, LWZ_0_X_12, LWZ_12_4_12, LWZ_12_X_12): Define. 2655*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): Provide non-pic plt call stub 2656*75fd0b74Schristos for --data-plt when building non-pie executables. 2657*75fd0b74Schristos 2658*75fd0b74Schristos2005-05-17 Nick Clifton <nickc@redhat.com> 2659*75fd0b74Schristos 2660*75fd0b74Schristos * elf32-arm.c (elf32_arm_final_link_relocate): Gracefully handle 2661*75fd0b74Schristos the situation where a symbols's section is not known but a section 2662*75fd0b74Schristos relative R_ARM_RELATIVE reloc has to be generated for the Symbian 2663*75fd0b74Schristos OS. 2664*75fd0b74Schristos 2665*75fd0b74Schristos * elf32-v850.c (v850_elf_relocate_section): Move code to test for 2666*75fd0b74Schristos the presence of a symbol table to just before the symbol table is 2667*75fd0b74Schristos actually used. 2668*75fd0b74Schristos 2669*75fd0b74Schristos2005-05-16 H.J. Lu <hongjiu.lu@intel.com> 2670*75fd0b74Schristos 2671*75fd0b74Schristos PR 834 2672*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relax_br): New. 2673*75fd0b74Schristos (elfNN_ia64_relax_section): Use it. 2674*75fd0b74Schristos 2675*75fd0b74Schristos2005-05-14 Mark Kettenis <kettenis@gnu.org> 2676*75fd0b74Schristos 2677*75fd0b74Schristos * elflink.c (bfd_elf_size_dynamic_sections): Use lbasename instead 2678*75fd0b74Schristos of basename. 2679*75fd0b74Schristos 2680*75fd0b74Schristos2005-05-14 Alan Modra <amodra@bigpond.net.au> 2681*75fd0b74Schristos 2682*75fd0b74Schristos * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set DT_PPC_GOT, 2683*75fd0b74Schristos not DT_PPC_GLINK. 2684*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): Likewise. 2685*75fd0b74Schristos 2686*75fd0b74Schristos2005-05-13 Fred Fish <fnf@specifixinc.com> 2687*75fd0b74Schristos 2688*75fd0b74Schristos * libbfd-in.h: Fix a comment typo, 'neaderst' -> 'nearest' 2689*75fd0b74Schristos * libbfd.h: Rebuilt. 2690*75fd0b74Schristos 2691*75fd0b74Schristos2005-05-13 Bob Wilson <bob.wilson@acm.org> 2692*75fd0b74Schristos 2693*75fd0b74Schristos * elf32-xtensa.c (xtensa_get_property_section_name): Add missing 2694*75fd0b74Schristos periods in linkonce_kind values. 2695*75fd0b74Schristos 2696*75fd0b74Schristos2005-05-12 H.J. Lu <hongjiu.lu@intel.com> 2697*75fd0b74Schristos 2698*75fd0b74Schristos * elf32-i386.c (elf_i386_relocate_section): Allow R_386_GOTOFF 2699*75fd0b74Schristos against protected function when building executable. 2700*75fd0b74Schristos 2701*75fd0b74Schristos2005-05-12 Alan Modra <amodra@bigpond.net.au> 2702*75fd0b74Schristos 2703*75fd0b74Schristos * elf32-ppc.c (LWZU_0_X_11): Delete. 2704*75fd0b74Schristos (B, LWZ_11_X_11, LWZ_11_X_30, MTCTR_11): Define. 2705*75fd0b74Schristos (ppc_elf_select_plt_layout): Set .got flags too. Formatting. 2706*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Allocate space for .glink branch 2707*75fd0b74Schristos table. 2708*75fd0b74Schristos (ppc_elf_finish_dynamic_symbol): Point .plt entries into the branch 2709*75fd0b74Schristos table. 2710*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): Adjust DT_PPC_GLINK value. 2711*75fd0b74Schristos Generate .glink branch table and updated stubs. 2712*75fd0b74Schristos 2713*75fd0b74Schristos2005-05-11 Alan Modra <amodra@bigpond.net.au> 2714*75fd0b74Schristos 2715*75fd0b74Schristos * reloc.c (BFD_RELOC_HI16_PCREL): Define. 2716*75fd0b74Schristos (BFD_RELOC_HI16_S_PCREL, BFD_RELOC_LO16_PCREL): Define. 2717*75fd0b74Schristos * elf32-ppc.c (GLINK_PLTRESOLVE, GLINK_ENTRY_SIZE): Define. 2718*75fd0b74Schristos (CROR_151515, CROR_313131): Delete. 2719*75fd0b74Schristos (ADDIS_11_11, ADDI_11_11, SUB_11_11_30, ADD_0_11_11, ADD_11_0_11, 2720*75fd0b74Schristos LWZ_0_4_30, MTCTR_0, LWZ_12_8_30, BCTR, ADDIS_11_30, 2721*75fd0b74Schristos LWZU_0_X_11): Define. 2722*75fd0b74Schristos (ppc_elf_howto_raw): Add R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI 2723*75fd0b74Schristos and R_PPC_REL16_HA entries. 2724*75fd0b74Schristos (ppc_elf_reloc_type_lookup): Convert new bfd reloc types. 2725*75fd0b74Schristos (ppc_elf_addr16_ha_reloc): Also handle R_PPC_REL16_HA. 2726*75fd0b74Schristos (struct ppc_elf_link_hash_table): Add glink, glink_pltresolve, 2727*75fd0b74Schristos new_plt, and old_plt. 2728*75fd0b74Schristos (ppc_elf_create_dynamic_sections): Create .glink section. 2729*75fd0b74Schristos (ppc_elf_check_relocs): Set new_plt and old_plt. 2730*75fd0b74Schristos (ppc_elf_select_plt_layout): New function. 2731*75fd0b74Schristos (ppc_elf_tls_setup): Set plt output section elf type and flags. 2732*75fd0b74Schristos (allocate_got): Handle differences between old and new got layout. 2733*75fd0b74Schristos (allocate_dynrelocs): Likewise for plt. 2734*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Likewise. Allocate memory for 2735*75fd0b74Schristos .glink. Don't allocate memory for old bss .plt. Emit DT_PPC_GLINK. 2736*75fd0b74Schristos (ppc_elf_relax_section): Rename ppc_info to htab. Handle .glink 2737*75fd0b74Schristos destination of R_PPC_PLTREL24 relocs. 2738*75fd0b74Schristos (ppc_elf_relocate_section): Handle new relocs and changed destination 2739*75fd0b74Schristos of R_PPC_PLTREL24. 2740*75fd0b74Schristos (ppc_elf_finish_dynamic_symbol): Init new style plt and handle 2741*75fd0b74Schristos differences in layout. 2742*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): Set DT_PPC_GLINK value. Don't 2743*75fd0b74Schristos put a blrl in new got. Write glink contents. 2744*75fd0b74Schristos * elf32-ppc.h (ppc_elf_select_plt_layout): Declare. 2745*75fd0b74Schristos * libbfd.h: Regenerate. 2746*75fd0b74Schristos * bfd-in2.h: Regenerate. 2747*75fd0b74Schristos 2748*75fd0b74Schristos2005-05-11 Andreas Schwab <schwab@suse.de> 2749*75fd0b74Schristos 2750*75fd0b74Schristos * elf32-i386.c (elf_i386_finish_dynamic_sections): Fix signedness 2751*75fd0b74Schristos warning. 2752*75fd0b74Schristos 2753*75fd0b74Schristos2005-05-10 H.J. Lu <hongjiu.lu@intel.com> 2754*75fd0b74Schristos 2755*75fd0b74Schristos * elf.c (_bfd_elf_make_section_from_shdr): Only check debug 2756*75fd0b74Schristos section if SEC_ALLOC isn't set. 2757*75fd0b74Schristos 2758*75fd0b74Schristos2005-05-09 Kelley Cook <kcook@gcc.gnu.org> 2759*75fd0b74Schristos 2760*75fd0b74Schristos * configure.in: Replace AC_COMPILE_CHECK_SIZEOF with AC_CHECK_SIZEOF. 2761*75fd0b74Schristos * acinclude.m4: Don't sinclude accross.m4. 2762*75fd0b74Schristos * config.in, configure, Makefile.in, doc/Makefile.in: Regenerate. 2763*75fd0b74Schristos 2764*75fd0b74Schristos2005-05-09 Alan Modra <amodra@bigpond.net.au> 2765*75fd0b74Schristos 2766*75fd0b74Schristos * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_dotsym. 2767*75fd0b74Schristos (ppc64_elf_add_symbol_hook): Set has_dotsym. 2768*75fd0b74Schristos (ppc64_elf_check_directives): Only process syms when has_dotsym. 2769*75fd0b74Schristos (func_desc_adjust): Hide fake function descriptors when function 2770*75fd0b74Schristos code entry is defined. 2771*75fd0b74Schristos (adjust_opd_syms): Adjust for deleted_section becoming union field. 2772*75fd0b74Schristos 2773*75fd0b74Schristos2005-05-09 Alan Modra <amodra@bigpond.net.au> 2774*75fd0b74Schristos 2775*75fd0b74Schristos * elfcode.h (elf_object_p): Add more sanity checks on elf header. 2776*75fd0b74Schristos 2777*75fd0b74Schristos2005-05-08 Dave Korn <dave.korn@artimi.com> 2778*75fd0b74Schristos 2779*75fd0b74Schristos * coff-tic80.c: Undefine _CONST after system headers to prevent 2780*75fd0b74Schristos clash with tic80-specific definition in include/coff/tic80.h 2781*75fd0b74Schristos 2782*75fd0b74Schristos2005-05-08 H.J. Lu <hongjiu.lu@intel.com> 2783*75fd0b74Schristos 2784*75fd0b74Schristos PR 939 2785*75fd0b74Schristos * elflink.c (elf_link_output_extsym): Use output_bfd if 2786*75fd0b74Schristos h->root.u.def.section is bfd_abs_section_ptr when reporting 2787*75fd0b74Schristos error. 2788*75fd0b74Schristos 2789*75fd0b74Schristos2005-05-07 H.J. Lu <hongjiu.lu@intel.com> 2790*75fd0b74Schristos 2791*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Update special_sections to 2792*75fd0b74Schristos array of pointer to bfd_elf_special_section. 2793*75fd0b74Schristos * elf.c (special_sections): Likewise. 2794*75fd0b74Schristos * elf32-arm.c (elf32_arm_symbian_special_sections): Likewise. 2795*75fd0b74Schristos * elf32-m32r.c (m32r_elf_special_sections): Likewise. 2796*75fd0b74Schristos * elf32-m68hc11.c (elf32_m68hc11_special_sections): Likewise. 2797*75fd0b74Schristos * elf32-m68hc12.c (elf32_m68hc12_special_sections): Likewise. 2798*75fd0b74Schristos * elf32-mcore.c (mcore_elf_special_sections): Likewise. 2799*75fd0b74Schristos * elf32-ppc.c (ppc_elf_special_sections): Likewise. 2800*75fd0b74Schristos * elf32-sh64.c (sh64_elf_special_sections): Likewise. 2801*75fd0b74Schristos * elf32-v850.c (v850_elf_special_sections): Likewise. 2802*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_special_sections): Likewise. 2803*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_special_sections): Likewise. 2804*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_special_sections): Likewise. 2805*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_special_sections): Likewise. 2806*75fd0b74Schristos * elf64-sh64.c (sh64_elf64_special_sections): Likewise. 2807*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_special_sections): Likewise. 2808*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_special_sections): Likewise. 2809*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_special_sections): Likewise. 2810*75fd0b74Schristos 2811*75fd0b74Schristos * elf.c (get_special_section): Updated. 2812*75fd0b74Schristos 2813*75fd0b74Schristos2005-05-07 Alan Modra <amodra@bigpond.net.au> 2814*75fd0b74Schristos 2815*75fd0b74Schristos * elf-bfd.h (struct elf_backend_data): Remove got_symbol_offset. 2816*75fd0b74Schristos * elfxx-target.h (elf_backend_got_symbol_offset): Delete. 2817*75fd0b74Schristos * elflink.c (_bfd_elf_create_got_section): Use zero in place of 2818*75fd0b74Schristos got_symbol_offset. 2819*75fd0b74Schristos * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Likewise. 2820*75fd0b74Schristos * elf32-frv.c (_frv_create_got_section): Likewise. 2821*75fd0b74Schristos * elf32-i370.c (i370_elf_finish_dynamic_sections): Delete ppc code. 2822*75fd0b74Schristos (elf_backend_got_symbol_offset): Don't define. 2823*75fd0b74Schristos * elf64-ppc.c (elf_backend_got_symbol_offset): Don't define. 2824*75fd0b74Schristos * elf32-ppc.c (struct ppc_elf_link_hash_table): Add got_header_size 2825*75fd0b74Schristos and got_gap. 2826*75fd0b74Schristos (ppc_elf_create_got): Tidy. 2827*75fd0b74Schristos (ppc_elf_create_dynamic_sections): Don't set SEC_IN_MEMORY for .plt. 2828*75fd0b74Schristos (ppc_elf_check_relocs): Reduce string comparisons by using elf.hgot. 2829*75fd0b74Schristos (ppc_elf_gc_sweep_hook): Likewise. 2830*75fd0b74Schristos (ppc_elf_relocate_section): Likewise. 2831*75fd0b74Schristos (ppc_elf_finish_dynamic_symbol): Likewise. 2832*75fd0b74Schristos (allocate_got): New function. 2833*75fd0b74Schristos (allocate_dynrelocs): Use allocate_got. 2834*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Likewise. Delay tlsld_got allocation 2835*75fd0b74Schristos so that local got can refcount it. Set got_header_size. 2836*75fd0b74Schristos (ppc_elf_relocate_section): Use value of elf.hgot rather than hard- 2837*75fd0b74Schristos coded 4. 2838*75fd0b74Schristos (ppc_elf_finish_dynamic_sections): Likewise. 2839*75fd0b74Schristos (elf_backend_got_symbol_offset): Don't define. 2840*75fd0b74Schristos (elf_backend_got_header_size): Ditto. 2841*75fd0b74Schristos 2842*75fd0b74Schristos2005-05-05 Steve Ellcey <sje@cup.hp.com> 2843*75fd0b74Schristos 2844*75fd0b74Schristos * configure.in (ACX_HEADER_STRING): New. 2845*75fd0b74Schristos * configure: Regenerate. 2846*75fd0b74Schristos * config.in: Regenerate. 2847*75fd0b74Schristos * sysdep.h (STRING_WITH_STRINGS): Use. 2848*75fd0b74Schristos 2849*75fd0b74Schristos2005-05-05 H.J. Lu <hongjiu.lu@intel.com> 2850*75fd0b74Schristos 2851*75fd0b74Schristos * elf.c (_bfd_elf_close_and_cleanup): Only call 2852*75fd0b74Schristos _bfd_dwarf2_cleanup_debug_info on bfd_object. 2853*75fd0b74Schristos 2854*75fd0b74Schristos2005-05-05 H.J. Lu <hongjiu.lu@intel.com> 2855*75fd0b74Schristos 2856*75fd0b74Schristos * elflink.c (_bfd_elf_provide_section_bound_symbols): Use 2857*75fd0b74Schristos "__bss_start" instead of "_edata" as fallback. 2858*75fd0b74Schristos 2859*75fd0b74Schristos2005-05-05 H.J. Lu <hongjiu.lu@intel.com> 2860*75fd0b74Schristos 2861*75fd0b74Schristos * bfd-in2.h: Regenerated. 2862*75fd0b74Schristos 2863*75fd0b74Schristos2005-05-05 Paul Brook <paul@codesourcery.com> 2864*75fd0b74Schristos 2865*75fd0b74Schristos * config.bfd: Use bfd_elf32_i386_vxworks_vec for i?86-*-vxworks. 2866*75fd0b74Schristos * configure.in: Add bfd_elf32_i386_vxworks_vec. i386 targets need 2867*75fd0b74Schristos elf-vxworks.lo. 2868*75fd0b74Schristos * configure: Regenerate. 2869*75fd0b74Schristos * Makefile.am (BFD32_BACKENDS): Add elf-vxworks.lo. 2870*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Add elf-vxworks.c. 2871*75fd0b74Schristos (elf32-i386.lo): Depend on elf-vxworks.h. 2872*75fd0b74Schristos (elf-vxworks.lo): New rule. 2873*75fd0b74Schristos * Makefile.in: Regenerate. 2874*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Update type of 2875*75fd0b74Schristos elf_backend_emit_relocs. 2876*75fd0b74Schristos (_bfd_elf_link_output_relocs): Update prototype. 2877*75fd0b74Schristos * elflink.c (_bfd_elf_link_output_relocs): Always use 2878*75fd0b74Schristos bed->elf_backend_emit_relocs when outputting relocations. 2879*75fd0b74Schristos * elfxx-target.h (elf_backend_emit_relocs): Default to 2880*75fd0b74Schristos _bfd_elf_link_output_relocs. 2881*75fd0b74Schristos * targets.c (bfd_elf32_i386_vxworks_vec): Declare. 2882*75fd0b74Schristos (_bfd_target_vector): Add bfd_elf32_i386_vxworks_vec. 2883*75fd0b74Schristos * elf32-i386.c: Add elf32-i386-vxworks target BFD. 2884*75fd0b74Schristos (elf_i386_plt0_entry): Remove padding. 2885*75fd0b74Schristos (elf_i386_pic_plt0_entry): Ditto. 2886*75fd0b74Schristos (PLTRESOLVE_RELOCS_SHLIB, PLTRESOLVE_RELOCS): Define. 2887*75fd0b74Schristos (PLT_NON_JUMP_SLOT_RELOCS): Define. 2888*75fd0b74Schristos (elf_i386_link_hash_table): Add srelplt2, hgot, hplt, is_vxworks and 2889*75fd0b74Schristos plt0_pad_byte fields. 2890*75fd0b74Schristos (elf_i386_link_hash_table_create): Zero them. 2891*75fd0b74Schristos (elf_i386_create_dynamic_sections): Create static relocation section. 2892*75fd0b74Schristos (allocate_dynrelocs): Allocate space for static PLT relocations. 2893*75fd0b74Schristos (elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT 2894*75fd0b74Schristos symbols. Give PLT symbols function type. Don't strip PLT sections 2895*75fd0b74Schristos if we have exported symbols from them. 2896*75fd0b74Schristos (elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static 2897*75fd0b74Schristos relocation section. Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on 2898*75fd0b74Schristos VxWorks. 2899*75fd0b74Schristos (elf_i386_finish_dynamic_sections): Allow different pad bytes. 2900*75fd0b74Schristos Add relocation for GOT location. Fill in PLT static relocations. 2901*75fd0b74Schristos (elf_i386_vxworks_link_hash_table_create): New function. 2902*75fd0b74Schristos (elf_i386_vxworks_link_output_symbol_hook): New function. 2903*75fd0b74Schristos * elf-vxworks.h: New file. 2904*75fd0b74Schristos 2905*75fd0b74Schristos2005-05-05 H.J. Lu <hongjiu.lu@intel.com> 2906*75fd0b74Schristos 2907*75fd0b74Schristos * section.c (bfd_make_section_anyway_with_flags): New. 2908*75fd0b74Schristos (bfd_make_section_anyway): Call bfd_make_section_anyway_with_flags, 2909*75fd0b74Schristos (bfd_make_section_with_flags): New. 2910*75fd0b74Schristos (bfd_make_section): Call bfd_make_section_with_flags. 2911*75fd0b74Schristos 2912*75fd0b74Schristos * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Call 2913*75fd0b74Schristos bfd_make_section_with_flags/bfd_make_section_anyway_with_flags 2914*75fd0b74Schristos instead of bfd_make_section/bfd_make_section and don't call 2915*75fd0b74Schristos bfd_set_section_flags. 2916*75fd0b74Schristos (mn10300_elf_check_relocs): Likewise. 2917*75fd0b74Schristos (_bfd_mn10300_elf_create_dynamic_sections): Likewise. 2918*75fd0b74Schristos * elf32-arm.c (create_got_section): Likewise. 2919*75fd0b74Schristos (bfd_elf32_arm_add_glue_sections_to_bfd): Likewise. 2920*75fd0b74Schristos (elf32_arm_check_relocs): Likewise. 2921*75fd0b74Schristos * elf32-cris.c (cris_elf_check_relocs): Likewise. 2922*75fd0b74Schristos * elf32-frv.c (elf32_frv_add_symbol_hook): Likewise. 2923*75fd0b74Schristos (_frv_create_got_section): Likewise. 2924*75fd0b74Schristos (elf32_frvfdpic_create_dynamic_sections): Likewise. 2925*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_create_dynamic_sections): Likewise. 2926*75fd0b74Schristos (elf32_hppa_check_relocs): Likewise. 2927*75fd0b74Schristos * elf32-i370.c (i370_elf_create_dynamic_sections): Likewise. 2928*75fd0b74Schristos (i370_elf_check_relocs): Likewise. 2929*75fd0b74Schristos * elf32-i386.c (create_got_section): Likewise. 2930*75fd0b74Schristos (elf_i386_check_relocs): Likewise. 2931*75fd0b74Schristos * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise. 2932*75fd0b74Schristos (create_got_section): Likewise. 2933*75fd0b74Schristos (m32r_elf_create_dynamic_sections): Likewise. 2934*75fd0b74Schristos (m32r_elf_check_relocs): Likewise. 2935*75fd0b74Schristos * elf32-m68k.c (elf_m68k_check_relocs): Likewise. 2936*75fd0b74Schristos * elf32-ppc.c (ppc_elf_create_got): Likewise. 2937*75fd0b74Schristos (ppc_elf_create_dynamic_sections): Likewise. 2938*75fd0b74Schristos (ppc_elf_add_symbol_hook): Likewise. 2939*75fd0b74Schristos (ppc_elf_check_relocs): Likewise. 2940*75fd0b74Schristos * elf32-s390.c (create_got_section): Likewise. 2941*75fd0b74Schristos (elf_s390_check_relocs): Likewise. 2942*75fd0b74Schristos * elf32-sh.c (create_got_section): Likewise. 2943*75fd0b74Schristos (sh_elf_create_dynamic_sections): Likewise. 2944*75fd0b74Schristos (sh_elf_check_relocs): Likewise. 2945*75fd0b74Schristos * elf32-vax.c (elf_vax_check_relocs): Likewise. 2946*75fd0b74Schristos * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise. 2947*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Likewise. 2948*75fd0b74Schristos (add_extra_plt_sections): Likewise. 2949*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise. 2950*75fd0b74Schristos (elf64_alpha_create_got_section): Likewise. 2951*75fd0b74Schristos (elf64_alpha_create_dynamic_sections): Likewise. 2952*75fd0b74Schristos (elf64_alpha_check_relocs): Likewise. 2953*75fd0b74Schristos * elf64-hppa.c (get_reloc_section): Likewise. 2954*75fd0b74Schristos (get_opd): Likewise. 2955*75fd0b74Schristos (get_plt): Likewise. 2956*75fd0b74Schristos (get_dlt): Likewise. 2957*75fd0b74Schristos (get_stub): Likewise. 2958*75fd0b74Schristos (elf64_hppa_create_dynamic_sectionso): Likewise. 2959*75fd0b74Schristos * elf64-mmix.c (mmix_elf_check_common_relocs): Likewise. 2960*75fd0b74Schristos * elf64-ppc.c (create_linkage_sections): Likewise. 2961*75fd0b74Schristos (ppc64_elf_check_relocs): Likewise. 2962*75fd0b74Schristos * elf64-s390.c (create_got_section): Likewise. 2963*75fd0b74Schristos (elf_s390_check_relocs): Likewise. 2964*75fd0b74Schristos * elf64-sh64.c (sh_elf64_check_relocs): Likewise. 2965*75fd0b74Schristos (sh64_elf64_create_dynamic_sections): Likewise. 2966*75fd0b74Schristos * elf64-x86-64.c (create_got_section): Likewise. 2967*75fd0b74Schristos (elf64_x86_64_check_relocs): Likewise. 2968*75fd0b74Schristos * elflink.c (_bfd_elf_create_got_section): Likewise. 2969*75fd0b74Schristos (_bfd_elf_link_create_dynamic_sections): Likewise. 2970*75fd0b74Schristos (elf_link_add_object_symbols): Likewise. 2971*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise. 2972*75fd0b74Schristos (elfNN_ia64_create_dynamic_sections): Likewise. 2973*75fd0b74Schristos (get_fptr): Likewise. 2974*75fd0b74Schristos (get_pltoff): Likewise. 2975*75fd0b74Schristos (get_reloc_section): Likewise. 2976*75fd0b74Schristos (elfNN_ia64_object_p): Likewise. 2977*75fd0b74Schristos * elfxx-mips.c (mips_elf_rel_dyn_section): Likewise. 2978*75fd0b74Schristos (mips_elf_create_compact_rel_section): Likewise. 2979*75fd0b74Schristos (mips_elf_create_got_section): Likewise. 2980*75fd0b74Schristos (_bfd_mips_elf_create_dynamic_sections): Likewise. 2981*75fd0b74Schristos * elfxx-sparc.c (create_got_section): Likewise. 2982*75fd0b74Schristos (_bfd_sparc_elf_check_relocs): Likewise. 2983*75fd0b74Schristos 2984*75fd0b74Schristos * elf.c (_bfd_elf_new_section_hook): Call _bfd_elf_get_sec_type_attr 2985*75fd0b74Schristos on linker created sections. 2986*75fd0b74Schristos 2987*75fd0b74Schristos2005-05-05 H.J. Lu <hongjiu.lu@intel.com> 2988*75fd0b74Schristos 2989*75fd0b74Schristos PR 882 2990*75fd0b74Schristos * elflink.c (_bfd_elf_link_assign_sym_version): Allow version 2991*75fd0b74Schristos script on executable. 2992*75fd0b74Schristos 2993*75fd0b74Schristos2005-05-05 John Levon <levon@movementarian.org> 2994*75fd0b74Schristos 2995*75fd0b74Schristos * dwarf2.c (read_abbrevs): If bfd_realloc fails, free currently 2996*75fd0b74Schristos allocated memory before returning. 2997*75fd0b74Schristos (decode_line_info): Likewise. 2998*75fd0b74Schristos (_bfd_dwarf2_cleanup_debug_info): New function: Frees memory 2999*75fd0b74Schristos allocated by functions in this file. 3000*75fd0b74Schristos * elf-bfd.h (_bfd_dwarf2_cleanup_debug_info): Prototype. 3001*75fd0b74Schristos * elf.c (_bfd_elf_close_and_cleanup): Call 3002*75fd0b74Schristos _bfd_dwarf2_cleanup_debug_info. 3003*75fd0b74Schristos 3004*75fd0b74Schristos2005-05-05 Hans-Peter Nilsson <hp@axis.com> 3005*75fd0b74Schristos 3006*75fd0b74Schristos * Makefile.am (INCLUDES): Don't -D_GNU_SOURCE here. 3007*75fd0b74Schristos * configure.in: Call AC_GNU_SOURCE here, after AC_PROG_CC. 3008*75fd0b74Schristos * configure, config.in, Makefile.in: Regenerate. 3009*75fd0b74Schristos * sysdep.h (stpcpy): Revert last change. 3010*75fd0b74Schristos 3011*75fd0b74Schristos2005-05-05 Hans-Peter Nilsson <hp@axis.com> 3012*75fd0b74Schristos 3013*75fd0b74Schristos * sysdep.h (stpcpy): Wrap declaration in parentheses. 3014*75fd0b74Schristos 3015*75fd0b74Schristos2005-05-04 H.J. Lu <hongjiu.lu@intel.com> 3016*75fd0b74Schristos 3017*75fd0b74Schristos * elfxx-ia64.c (ARCH_SIZE): New. 3018*75fd0b74Schristos (LOG_SECTION_ALIGN): Likewise. 3019*75fd0b74Schristos (elfNN_ia64_create_dynamic_sections): Use LOG_SECTION_ALIGN to 3020*75fd0b74Schristos align relocation sections. 3021*75fd0b74Schristos (get_fptr): Likewise. 3022*75fd0b74Schristos (get_reloc_section): Likewise. 3023*75fd0b74Schristos (elfNN_ia64_tprel_base): Likewise. 3024*75fd0b74Schristos (elfNN_ia64_check_relocs): Support 32bit relocations. 3025*75fd0b74Schristos (allocate_global_fptr_got): Likewise. 3026*75fd0b74Schristos (allocate_dynrel_entries): Likewise. 3027*75fd0b74Schristos (set_got_entry): Likewise. 3028*75fd0b74Schristos (set_pltoff_entry): Likewise. 3029*75fd0b74Schristos (elfNN_ia64_relocate_section): Likewise. 3030*75fd0b74Schristos 3031*75fd0b74Schristos2005-05-04 H.J. Lu <hongjiu.lu@intel.com> 3032*75fd0b74Schristos 3033*75fd0b74Schristos * configure.in: Add AC_CHECK_DECLS(stpcpy). 3034*75fd0b74Schristos * configure: Regenerate. 3035*75fd0b74Schristos * config.in: Likewise. 3036*75fd0b74Schristos 3037*75fd0b74Schristos * sysdep.h (stpcpy): New. 3038*75fd0b74Schristos 3039*75fd0b74Schristos2005-05-04 Nick Clifton <nickc@redhat.com> 3040*75fd0b74Schristos 3041*75fd0b74Schristos * Update the address and phone number of the FSF organization in 3042*75fd0b74Schristos the GPL notices in the following files: 3043*75fd0b74Schristos aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c, 3044*75fd0b74Schristos aout-cris.c, aout-ns32k.c, aout-sparcle.c, aout-target.h, 3045*75fd0b74Schristos aout-tic30.c, aout0.c, aout32.c, aout64.c, aoutf1.h, aoutx.h, 3046*75fd0b74Schristos archive.c, archive64.c, archures.c, armnetbsd.c, bfd-in.h, 3047*75fd0b74Schristos bfd-in2.h, bfd.c, bfdio.c, bfdwin.c, binary.c, bout.c, cache.c, 3048*75fd0b74Schristos cf-i386lynx.c, cf-m68klynx.c, cf-sparclynx.c, cisco-core.c, 3049*75fd0b74Schristos coff-a29k.c, coff-alpha.c, coff-apollo.c, coff-arm.c, coff-aux.c, 3050*75fd0b74Schristos coff-go32.c, coff-h8300.c, coff-h8500.c, coff-i386.c, coff-i860.c, 3051*75fd0b74Schristos coff-i960.c, coff-ia64.c, coff-m68k.c, coff-m88k.c, coff-maxq.c, 3052*75fd0b74Schristos coff-mcore.c, coff-mips.c, coff-or32.c, coff-pmac.c, coff-ppc.c, 3053*75fd0b74Schristos coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c, 3054*75fd0b74Schristos coff-svm68k.c, coff-tic30.c, coff-tic4x.c, coff-tic54x.c, 3055*75fd0b74Schristos coff-tic80.c, coff-u68k.c, coff-w65.c, coff-we32k.c, coff-z8k.c, 3056*75fd0b74Schristos coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c, coffswap.h, 3057*75fd0b74Schristos corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c, 3058*75fd0b74Schristos cpu-avr.c, cpu-cr16c.c, cpu-cris.c, cpu-crx.c, cpu-d10v.c, 3059*75fd0b74Schristos cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, cpu-h8300.c, 3060*75fd0b74Schristos cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, cpu-i860.c, 3061*75fd0b74Schristos cpu-i960.c, cpu-ia64-opc.c, cpu-ia64.c, cpu-ip2k.c, cpu-iq2000.c, 3062*75fd0b74Schristos cpu-m10200.c, cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c, 3063*75fd0b74Schristos cpu-m68hc12.c, cpu-m68k.c, cpu-m88k.c, cpu-maxq.c, cpu-mcore.c, 3064*75fd0b74Schristos cpu-mips.c, cpu-mmix.c, cpu-msp430.c, cpu-ns32k.c, cpu-openrisc.c, 3065*75fd0b74Schristos cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c, cpu-rs6000.c, 3066*75fd0b74Schristos cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c, cpu-tic4x.c, 3067*75fd0b74Schristos cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c, cpu-w65.c, 3068*75fd0b74Schristos cpu-we32k.c, cpu-xstormy16.c, cpu-xtensa.c, cpu-z8k.c, demo64.c, 3069*75fd0b74Schristos dwarf1.c, dwarf2.c, ecoff.c, ecofflink.c, ecoffswap.h, 3070*75fd0b74Schristos efi-app-ia32.c, efi-app-ia64.c, elf-bfd.h, elf-eh-frame.c, 3071*75fd0b74Schristos elf-hppa.h, elf-m10200.c, elf-m10300.c, elf-strtab.c, elf.c, 3072*75fd0b74Schristos elf32-am33lin.c, elf32-arc.c, elf32-arm.c, elf32-avr.c, 3073*75fd0b74Schristos elf32-cr16c.c, elf32-cris.c, elf32-crx.c, elf32-d10v.c, 3074*75fd0b74Schristos elf32-d30v.c, elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-gen.c, 3075*75fd0b74Schristos elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, elf32-i370.c, 3076*75fd0b74Schristos elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c, 3077*75fd0b74Schristos elf32-iq2000.c, elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, 3078*75fd0b74Schristos elf32-m68hc1x.c, elf32-m68hc1x.h, elf32-m68k.c, elf32-m88k.c, 3079*75fd0b74Schristos elf32-mcore.c, elf32-mips.c, elf32-msp430.c, elf32-openrisc.c, 3080*75fd0b74Schristos elf32-or32.c, elf32-pj.c, elf32-ppc.c, elf32-ppc.h, elf32-s390.c, 3081*75fd0b74Schristos elf32-sh-symbian.c, elf32-sh.c, elf32-sh64-com.c, elf32-sh64.c, 3082*75fd0b74Schristos elf32-sh64.h, elf32-sparc.c, elf32-v850.c, elf32-vax.c, 3083*75fd0b74Schristos elf32-xstormy16.c, elf32-xtensa.c, elf32.c, elf64-alpha.c, 3084*75fd0b74Schristos elf64-gen.c, elf64-hppa.c, elf64-hppa.h, elf64-mips.c, 3085*75fd0b74Schristos elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c, 3086*75fd0b74Schristos elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elf64.c, elfcode.h, 3087*75fd0b74Schristos elfcore.h, elflink.c, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c, 3088*75fd0b74Schristos elfxx-mips.h, elfxx-sparc.c, elfxx-sparc.h, elfxx-target.h, 3089*75fd0b74Schristos epoc-pe-arm.c, epoc-pei-arm.c, format.c, freebsd.h, gen-aout.c, 3090*75fd0b74Schristos genlink.h, hash.c, host-aout.c, hp300bsd.c, hp300hpux.c, 3091*75fd0b74Schristos hppabsd-core.c, hpux-core.c, i386aout.c, i386bsd.c, i386dynix.c, 3092*75fd0b74Schristos i386freebsd.c, i386linux.c, i386lynx.c, i386mach3.c, i386msdos.c, 3093*75fd0b74Schristos i386netbsd.c, i386os9k.c, ieee.c, ihex.c, init.c, irix-core.c, 3094*75fd0b74Schristos libaout.h, libbfd-in.h, libbfd.c, libbfd.h, libcoff-in.h, 3095*75fd0b74Schristos libcoff.h, libecoff.h, libhppa.h, libieee.h, libnlm.h, liboasys.h, 3096*75fd0b74Schristos libpei.h, libxcoff.h, linker.c, lynx-core.c, m68k4knetbsd.c, 3097*75fd0b74Schristos m68klinux.c, m68klynx.c, m68knetbsd.c, m88kmach3.c, m88kopenbsd.c, 3098*75fd0b74Schristos mach-o-target.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c, mmo.c, 3099*75fd0b74Schristos netbsd-core.c, netbsd.h, newsos3.c, nlm-target.h, nlm.c, 3100*75fd0b74Schristos nlm32-alpha.c, nlm32-i386.c, nlm32-ppc.c, nlm32-sparc.c, nlm32.c, 3101*75fd0b74Schristos nlm64.c, nlmcode.h, nlmswap.h, ns32k.h, ns32knetbsd.c, oasys.c, 3102*75fd0b74Schristos opncls.c, osf-core.c, pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c, 3103*75fd0b74Schristos pe-mcore.c, pe-mips.c, pe-ppc.c, pe-sh.c, peXXigen.c, 3104*75fd0b74Schristos pef-traceback.h, pef.c, pef.h, pei-arm.c, pei-i386.c, pei-mcore.c, 3105*75fd0b74Schristos pei-mips.c, pei-ppc.c, pei-sh.c, peicode.h, ppcboot.c, 3106*75fd0b74Schristos ptrace-core.c, reloc.c, reloc16.c, riscix.c, rs6000-core.c, 3107*75fd0b74Schristos sco5-core.c, section.c, simple.c, som.c, som.h, sparclinux.c, 3108*75fd0b74Schristos sparclynx.c, sparcnetbsd.c, srec.c, stab-syms.c, stabs.c, sunos.c, 3109*75fd0b74Schristos syms.c, sysdep.h, targets.c, tekhex.c, ticoff.h, trad-core.c, 3110*75fd0b74Schristos vax1knetbsd.c, vaxbsd.c, vaxnetbsd.c, versados.c, vms-gsd.c, 3111*75fd0b74Schristos vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h, xcoff-target.h, 3112*75fd0b74Schristos xcofflink.c, xsym.c, xsym.h, xtensa-isa.c, xtensa-modules.c, 3113*75fd0b74Schristos hosts/alphavms.h 3114*75fd0b74Schristos 3115*75fd0b74Schristos2005-05-04 H.J. Lu <hongjiu.lu@intel.com> 3116*75fd0b74Schristos 3117*75fd0b74Schristos * bfd-in.h (_bfd_elf_provide_section_bound_symbols): New. 3118*75fd0b74Schristos * bfd-in2.h: Regenerated. 3119*75fd0b74Schristos 3120*75fd0b74Schristos * elflink.c (bfd_elf_set_symbol): New. 3121*75fd0b74Schristos (_bfd_elf_provide_symbol): Call it. 3122*75fd0b74Schristos (_bfd_elf_provide_section_bound_symbols): New. 3123*75fd0b74Schristos 3124*75fd0b74Schristos2005-05-04 H.J. Lu <hongjiu.lu@intel.com> 3125*75fd0b74Schristos 3126*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Only skip weak definitions 3127*75fd0b74Schristos at the end, if a strong definition has already been seen. 3128*75fd0b74Schristos 3129*75fd0b74Schristos2005-05-04 Alan Modra <amodra@bigpond.net.au> 3130*75fd0b74Schristos 3131*75fd0b74Schristos * section.c (struct bfd_section): Replace link_order_head and 3132*75fd0b74Schristos link_order_tail with map_head and map_tail union. 3133*75fd0b74Schristos (STD_SECTION): Update. 3134*75fd0b74Schristos (_bfd_strip_section_from_output): Delete. 3135*75fd0b74Schristos * aoutx.h: Update throughout for above changes. 3136*75fd0b74Schristos * coff-ppc.c: Likewise. 3137*75fd0b74Schristos * cofflink.c: Likewise. 3138*75fd0b74Schristos * ecoff.c: Likewise. 3139*75fd0b74Schristos * elf-eh-frame.c: Likewise. 3140*75fd0b74Schristos * elf-m10300.c: Likewise. 3141*75fd0b74Schristos * elf.c: Likewise. 3142*75fd0b74Schristos * elf32-arm.c: Likewise. 3143*75fd0b74Schristos * elf32-cris.c: Likewise. 3144*75fd0b74Schristos * elf32-hppa.c: Likewise. 3145*75fd0b74Schristos * elf32-i386.c: Likewise. 3146*75fd0b74Schristos * elf32-m32r.c: Likewise. 3147*75fd0b74Schristos * elf32-m68hc1x.c: Likewise. 3148*75fd0b74Schristos * elf32-m68k.c: Likewise. 3149*75fd0b74Schristos * elf32-ppc.c: Likewise. 3150*75fd0b74Schristos * elf32-s390.c: Likewise. 3151*75fd0b74Schristos * elf32-sh.c: Likewise. 3152*75fd0b74Schristos * elf32-vax.c: Likewise. 3153*75fd0b74Schristos * elf32-xtensa.c: Likewise. 3154*75fd0b74Schristos * elf64-alpha.c: Likewise. 3155*75fd0b74Schristos * elf64-hppa.c: Likewise. 3156*75fd0b74Schristos * elf64-ppc.c: Likewise. 3157*75fd0b74Schristos * elf64-s390.c: Likewise. 3158*75fd0b74Schristos * elf64-sh64.c: Likewise. 3159*75fd0b74Schristos * elf64-x86-64.c: Likewise. 3160*75fd0b74Schristos * elflink.c: Likewise. 3161*75fd0b74Schristos * elfxx-ia64.c: Likewise. 3162*75fd0b74Schristos * elfxx-mips.c: Likewise. 3163*75fd0b74Schristos * elfxx-sparc.c: Likewise. 3164*75fd0b74Schristos * linker.c: Likewise. 3165*75fd0b74Schristos * merge.c: Likewise. 3166*75fd0b74Schristos * pdp11.c: Likewise. 3167*75fd0b74Schristos * xcofflink.c: Likewise. 3168*75fd0b74Schristos * elflink.c (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Split 3169*75fd0b74Schristos out from bfd_elf_size_dynamic_sections. 3170*75fd0b74Schristos * bfd-in.h (bfd_boolean bfd_elf_size_dynsym_hash_dynstr): Declare. 3171*75fd0b74Schristos * bfd-in2.h: Regenerate. 3172*75fd0b74Schristos 3173*75fd0b74Schristos2005-05-04 Alan Modra <amodra@bigpond.net.au> 3174*75fd0b74Schristos 3175*75fd0b74Schristos * section.c (bfd_section_list_remove): Don't clear s->next. 3176*75fd0b74Schristos (bfd_section_list_append): Always init s->prev. 3177*75fd0b74Schristos (bfd_section_list_prepend): Define. 3178*75fd0b74Schristos (bfd_section_list_insert_after): Minor optimization. 3179*75fd0b74Schristos (bfd_section_removed_from_list): Rewrite. 3180*75fd0b74Schristos * elf.c (assign_section_numbers): Simplify list traversal now that 3181*75fd0b74Schristos bfd_section_list_remove doesn't destroy removed section next ptr. 3182*75fd0b74Schristos * sunos.c (sunos_add_dynamic_symbols): Likewise. 3183*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_object_p): Use bfd_section_list_prepend. 3184*75fd0b74Schristos * xcofflink.c (_bfd_xcoff_bfd_final_link): Simplify list traversal. 3185*75fd0b74Schristos * bfd-in2.h: Regenerate. 3186*75fd0b74Schristos 3187*75fd0b74Schristos2005-05-02 H.J. Lu <hongjiu.lu@intel.com> 3188*75fd0b74Schristos 3189*75fd0b74Schristos * bfd.c (bfd): Remove section_tail and add section_last. 3190*75fd0b74Schristos (bfd_preserve): Likewise. 3191*75fd0b74Schristos (bfd_preserve_save): Likewise. 3192*75fd0b74Schristos (bfd_preserve_restore): Likewise. 3193*75fd0b74Schristos * opncls.c (_bfd_new_bfd): Likewise. 3194*75fd0b74Schristos 3195*75fd0b74Schristos * coffcode.h (coff_compute_section_file_positions): Updated. 3196*75fd0b74Schristos (coff_compute_section_file_positions): Likewise. 3197*75fd0b74Schristos * elf.c (assign_section_numbers): Likewise. 3198*75fd0b74Schristos * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. 3199*75fd0b74Schristos * elf64-mmix.c (mmix_elf_final_link): Likewise. 3200*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_object_p): Likewise. 3201*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise. 3202*75fd0b74Schristos * sunos.c (sunos_add_dynamic_symbols): Likewise. 3203*75fd0b74Schristos * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise. 3204*75fd0b74Schristos 3205*75fd0b74Schristos * ecoff.c (bfd_debug_section): Initialize prev. 3206*75fd0b74Schristos 3207*75fd0b74Schristos * section.c (bfd_section): Add prev. 3208*75fd0b74Schristos (bfd_section_list_remove): Updated. 3209*75fd0b74Schristos (bfd_section_list_append): New. 3210*75fd0b74Schristos (bfd_section_list_insert_after): New. 3211*75fd0b74Schristos (bfd_section_list_insert_before): New. 3212*75fd0b74Schristos (bfd_section_list_insert): Removed. 3213*75fd0b74Schristos (bfd_section_removed_from_list): Updated. 3214*75fd0b74Schristos (STD_SECTION): Initialize prev. 3215*75fd0b74Schristos (bfd_section_init): Updated. 3216*75fd0b74Schristos (bfd_section_list_clear): Updated. 3217*75fd0b74Schristos 3218*75fd0b74Schristos * bfd-in2.h: Regenerated. 3219*75fd0b74Schristos 3220*75fd0b74Schristos2005-05-02 H.J. Lu <hongjiu.lu@intel.com> 3221*75fd0b74Schristos 3222*75fd0b74Schristos * elf.c (_bfd_elf_new_section_hook): Don't call 3223*75fd0b74Schristos _bfd_elf_get_sec_type_attr on sections from input files. 3224*75fd0b74Schristos 3225*75fd0b74Schristos2005-05-02 H.J. Lu <hongjiu.lu@intel.com> 3226*75fd0b74Schristos 3227*75fd0b74Schristos * merge.c (sec_merge_init): Call bfd_hash_table_init_n with 3228*75fd0b74Schristos hash table size 16699 instead of bfd_hash_table_init. 3229*75fd0b74Schristos 3230*75fd0b74Schristos2005-05-01 Paul Brook <paul@codesourcery.com> 3231*75fd0b74Schristos 3232*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Skip weak definitions if a strong 3233*75fd0b74Schristos definition has already been seen. 3234*75fd0b74Schristos 3235*75fd0b74Schristos2005-05-01 Paul Brook <paul@codesourcery.com> 3236*75fd0b74Schristos 3237*75fd0b74Schristos * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Treat 3238*75fd0b74Schristos R_ARM_PLT32 the same as R_ARM_PC24. 3239*75fd0b74Schristos (arm_add_to_rel): Ditto. 3240*75fd0b74Schristos 3241*75fd0b74Schristos2005-04-29 Ralf Corsepius <ralf.corsepius@rtems.org> 3242*75fd0b74Schristos 3243*75fd0b74Schristos * config.bfd: Add h8300*-*-rtemscoff. 3244*75fd0b74Schristos Switch h8300*-*-rtems* to elf. 3245*75fd0b74Schristos 3246*75fd0b74Schristos2005-04-29 Daniel Jacobowitz <dan@codesourcery.com> 3247*75fd0b74Schristos 3248*75fd0b74Schristos * aclocal.m4, Makefile.in: Regnerated. 3249*75fd0b74Schristos 3250*75fd0b74Schristos2005-04-28 Paul Brook <paul@codesourcery.com> 3251*75fd0b74Schristos 3252*75fd0b74Schristos Merge changes only applied to Makefile.in. 3253*75fd0b74Schristos * Makefile.am (BFD32_BACKENDS): Add elfxx-sparc.lo 3254*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Add elfxx-sparc.c 3255*75fd0b74Schristos (elfxx-sparc.lo): New rule. 3256*75fd0b74Schristos (elf32-sparc.lo): Add elfxx-sparc.h dependency. 3257*75fd0b74Schristos (elf64-sparc.lo): Likewise. 3258*75fd0b74Schristos 3259*75fd0b74Schristos2005-04-28 Julian Brown <julian@codesourcery.com> 3260*75fd0b74Schristos 3261*75fd0b74Schristos * elflink.c (_bfd_elf_provide_symbol): Provide symbol for weak 3262*75fd0b74Schristos import. 3263*75fd0b74Schristos 3264*75fd0b74Schristos2005-04-27 H.J. Lu <hongjiu.lu@intel.com> 3265*75fd0b74Schristos 3266*75fd0b74Schristos * elf-bfd.h (bfd_elf_sym_name): Also take "asection *". 3267*75fd0b74Schristos 3268*75fd0b74Schristos * elf.c (bfd_elf_sym_name): Updated. 3269*75fd0b74Schristos (group_signature): Likewise. 3270*75fd0b74Schristos * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 3271*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_opd): Likewise. 3272*75fd0b74Schristos (ppc64_elf_edit_toc): Likewise. 3273*75fd0b74Schristos (ppc64_elf_relocate_section): Likewise. 3274*75fd0b74Schristos * elfcode.h (elf_slurp_symbol_table): Likewise. 3275*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Likewise. 3276*75fd0b74Schristos 3277*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relocate_section): Call 3278*75fd0b74Schristos bfd_elf_sym_name to get local symbol name when reporting errors. 3279*75fd0b74Schristos 3280*75fd0b74Schristos2005-04-27 Nick Clifton <nickc@redhat.com> 3281*75fd0b74Schristos 3282*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Handle the case where a badly 3283*75fd0b74Schristos formatted input file results in a reloc which has no associated 3284*75fd0b74Schristos global symbol. 3285*75fd0b74Schristos 3286*75fd0b74Schristos2005-04-26 Jerome Guitton <guitton@gnat.com> 3287*75fd0b74Schristos 3288*75fd0b74Schristos * bfd.m4 (BFD_NEED_DECLARATION): Restore. 3289*75fd0b74Schristos 3290*75fd0b74Schristos2005-04-25 David S. Miller <davem@davemloft.net> 3291*75fd0b74Schristos 3292*75fd0b74Schristos * elfxx-sparc.c (sparc_elf_append_rela_64): Add BFD64 protection. 3293*75fd0b74Schristos (sparc_elf_r_info_64, _bfd_sparc_elf_finish_dynamic_symbol, 3294*75fd0b74Schristos sparc64_finish_dyn, _bfd_sparc_elf_finish_dynamic_sections): 3295*75fd0b74Schristos Likewise. 3296*75fd0b74Schristos 3297*75fd0b74Schristos2005-04-25 H.J. Lu <hongjiu.lu@intel.com> 3298*75fd0b74Schristos 3299*75fd0b74Schristos PR 858 3300*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Make non-debugging reference 3301*75fd0b74Schristos to discarded section an error. 3302*75fd0b74Schristos 3303*75fd0b74Schristos2005-04-21 Jerome Guitton <guitton@gnat.com> 3304*75fd0b74Schristos 3305*75fd0b74Schristos * configure.in: Replace BFD_NEED_DECLARATION checks by the 3306*75fd0b74Schristos corresponding AC_CHECK_DECLS. 3307*75fd0b74Schristos * sysdep.h: Replace NEED_DECLARATION_* checks by the corresponding 3308*75fd0b74Schristos HAVE_DECL_*. 3309*75fd0b74Schristos * bfd.m4 (BFD_NEED_DECLARATION): Remove, obsolete. 3310*75fd0b74Schristos * configure: Regenerate. 3311*75fd0b74Schristos * config.in: Ditto. 3312*75fd0b74Schristos 3313*75fd0b74Schristos2005-04-21 Andreas Schwab <schwab@suse.de> 3314*75fd0b74Schristos 3315*75fd0b74Schristos * elfxx-sparc.h (struct _bfd_sparc_elf_link_hash_table): Remove 3316*75fd0b74Schristos unsigned from type of dynamic_interpreter. 3317*75fd0b74Schristos * elfxx-sparc.c (_bfd_sparc_elf_link_hash_table_create): Remove 3318*75fd0b74Schristos casts again. 3319*75fd0b74Schristos 3320*75fd0b74Schristos * elf.c (assign_section_numbers): Fix comment. 3321*75fd0b74Schristos 3322*75fd0b74Schristos2005-04-21 Jerome Guitton <guitton@gnat.com> 3323*75fd0b74Schristos 3324*75fd0b74Schristos * som.c (som_bfd_print_private_bfd_data): Add explicit cast to long 3325*75fd0b74Schristos for struct som_exec_auxhdr fields. 3326*75fd0b74Schristos 3327*75fd0b74Schristos2005-04-21 Nick Clifton <nickc@redhat.com> 3328*75fd0b74Schristos 3329*75fd0b74Schristos * aout-adobe.c: Convert to ISO C and fix formatting. 3330*75fd0b74Schristos * aout-arm.c: Convert to ISO C and fix formatting. 3331*75fd0b74Schristos * aout-cris.c: Convert to ISO C and fix formatting. 3332*75fd0b74Schristos * aout-ns32k.c: Convert to ISO C and fix formatting. 3333*75fd0b74Schristos * aout-tic30.c: Convert to ISO C and fix formatting. 3334*75fd0b74Schristos * coffcode.h: Convert to ISO C and fix formatting. 3335*75fd0b74Schristos * coffswap.h: Convert to ISO C and fix formatting. 3336*75fd0b74Schristos * i386aout.c: Convert to ISO C and fix formatting. 3337*75fd0b74Schristos * libaout.h: Convert to ISO C and fix formatting. 3338*75fd0b74Schristos * libcoff-in.h: Convert to ISO C and fix formatting. 3339*75fd0b74Schristos * libcoff.h: Convert to ISO C and fix formatting. 3340*75fd0b74Schristos * libecoff.h: Convert to ISO C and fix formatting. 3341*75fd0b74Schristos * libnlm.h: Convert to ISO C and fix formatting. 3342*75fd0b74Schristos * libpei.h: Convert to ISO C and fix formatting. 3343*75fd0b74Schristos * libxcoff.h: Convert to ISO C and fix formatting. 3344*75fd0b74Schristos * nlm-target.h: Convert to ISO C and fix formatting. 3345*75fd0b74Schristos * nlm.c: Convert to ISO C and fix formatting. 3346*75fd0b74Schristos * nlm32-alpha.c: Convert to ISO C and fix formatting. 3347*75fd0b74Schristos * nlm32-i386.c: Convert to ISO C and fix formatting. 3348*75fd0b74Schristos * nlm32-ppc.c: Convert to ISO C and fix formatting. 3349*75fd0b74Schristos * nlm32-sparc.c: Convert to ISO C and fix formatting. 3350*75fd0b74Schristos * nlmcode.h: Convert to ISO C and fix formatting. 3351*75fd0b74Schristos * nlmswap.h: Convert to ISO C and fix formatting. 3352*75fd0b74Schristos * pe-mips.c: Convert to ISO C and fix formatting. 3353*75fd0b74Schristos * peXXigen.c: Convert to ISO C and fix formatting. 3354*75fd0b74Schristos * peicode.h: Convert to ISO C and fix formatting. 3355*75fd0b74Schristos * vms-gsd.c: Convert to ISO C and fix formatting. 3356*75fd0b74Schristos * vms-hdr.c: Convert to ISO C and fix formatting. 3357*75fd0b74Schristos * vms-misc.c: Convert to ISO C and fix formatting. 3358*75fd0b74Schristos * vms-tir.c: Convert to ISO C and fix formatting. 3359*75fd0b74Schristos * vms.c: Convert to ISO C and fix formatting. 3360*75fd0b74Schristos * vms.h: Convert to ISO C and fix formatting. 3361*75fd0b74Schristos 3362*75fd0b74Schristos * coffgen.c (coff_print_symbol): Restore correct formatting of 3363*75fd0b74Schristos output. 3364*75fd0b74Schristos 3365*75fd0b74Schristos2005-04-20 David S. Miller <davem@davemloft.net> 3366*75fd0b74Schristos 3367*75fd0b74Schristos * elfxx-sparc.c (sparc_elf_r_symndx_64): Fix compiler warning. 3368*75fd0b74Schristos (_bfd_sparc_elf_link_hash_table_create): Likewise. 3369*75fd0b74Schristos (allocate_dynrelocs): Likewise. 3370*75fd0b74Schristos 3371*75fd0b74Schristos2005-04-20 Jerome Guitton <guitton@gnat.com> 3372*75fd0b74Schristos 3373*75fd0b74Schristos * configure.in: Fix the check for basename declaration. Add check 3374*75fd0b74Schristos for declarations of ftello, ftello64, fseeko, fseeko64. 3375*75fd0b74Schristos * configure: Regenerate. 3376*75fd0b74Schristos * config.in: Ditto. 3377*75fd0b74Schristos * sysdep.h: If needed, declare ftello, ftello64, fseeko, fseeko64. 3378*75fd0b74Schristos 3379*75fd0b74Schristos2005-04-19 David S. Miller <davem@davemloft.net> 3380*75fd0b74Schristos 3381*75fd0b74Schristos * elfxx-sparc.c: New file. 3382*75fd0b74Schristos * elfxx-sparc.h: New file. 3383*75fd0b74Schristos * Makefile.in (BFD32_BACKENDS): Add elfxx-sparc.lo 3384*75fd0b74Schristos (BFD32_BACKENDS_CFILES): Add elfxx-sparc.c 3385*75fd0b74Schristos (elfxx-sparc.lo): New rule. 3386*75fd0b74Schristos (elf32-sparc.lo): Add elfxx-sparc.h dependency. 3387*75fd0b74Schristos (elf64-sparc.lo): Likewise. 3388*75fd0b74Schristos * configure.in (bfd_elf32_sparc_vec): Add elfxx-sparc.lo 3389*75fd0b74Schristos (bfd_elf64_sparc_vec): Likewise. 3390*75fd0b74Schristos * configure: Regenerate. 3391*75fd0b74Schristos * elf32-sparc.c: Remove common code now in elfxx-sparc.c 3392*75fd0b74Schristos * elf64-sparc.c: Likewise, also use elf64_sparc_*() naming 3393*75fd0b74Schristos which is more consistent with elf32-sparc.c 3394*75fd0b74Schristos 3395*75fd0b74Schristos2005-04-19 Daniel Jacobowitz <dan@codesourcery.com> 3396*75fd0b74Schristos 3397*75fd0b74Schristos * elfxx-mips.c (struct mips_elf_link_hash_entry): Update comment. 3398*75fd0b74Schristos (mips_elf_create_local_got_entry): Check h->root.forced_local. 3399*75fd0b74Schristos 3400*75fd0b74Schristos2005-04-19 Alan Modra <amodra@bigpond.net.au> 3401*75fd0b74Schristos 3402*75fd0b74Schristos * elf32-ppc.c (ppc_elf_check_relocs): Don't bother with 3403*75fd0b74Schristos dynamic relocs in non-SEC_ALLOC sections. 3404*75fd0b74Schristos (ppc_elf_gc_sweep_hook): Likewise. 3405*75fd0b74Schristos (ppc_elf_relax_section): Likewise. 3406*75fd0b74Schristos (ppc_elf_relocate_section): Likewise. 3407*75fd0b74Schristos 3408*75fd0b74Schristos2005-04-18 Nick Clifton <nickc@redhat.com> 3409*75fd0b74Schristos 3410*75fd0b74Schristos * aix5ppc-core.c (xcoff64_core_p): Fix compile time warning 3411*75fd0b74Schristos assigning a value to return_value. 3412*75fd0b74Schristos 3413*75fd0b74Schristos2005-04-17 H.J. Lu <hongjiu.lu@intel.com> 3414*75fd0b74Schristos 3415*75fd0b74Schristos PR 855 3416*75fd0b74Schristos * elf.c (_bfd_elf_copy_private_section_data): Don't copy linker 3417*75fd0b74Schristos created group data. 3418*75fd0b74Schristos 3419*75fd0b74Schristos2005-04-17 H.J. Lu <hongjiu.lu@intel.com> 3420*75fd0b74Schristos 3421*75fd0b74Schristos PR 855 3422*75fd0b74Schristos * elf.c (setup_group): Properly handle zero group count. 3423*75fd0b74Schristos 3424*75fd0b74Schristos2005-04-17 Mark Kettenis <kettenis@gnu.org> 3425*75fd0b74Schristos 3426*75fd0b74Schristos * som.c (hppa_som_reloc, som_mkobject, som_is_space) 3427*75fd0b74Schristos (som_is_subspace, compare_subspaces, som_compute_checksum) 3428*75fd0b74Schristos (som_build_and_write_symbol_table, som_slurp_symbol_table): New 3429*75fd0b74Schristos protoypes. 3430*75fd0b74Schristos (hppa_som_reloc, compare_syms, compare_subspaces) 3431*75fd0b74Schristos (som_print_symbol, som_get_section_contents) 3432*75fd0b74Schristos (som_set_section_contents): Remove space after 'void *'. 3433*75fd0b74Schristos (som_bfd_print_private_bfd_data): Use %lx to print longs. 3434*75fd0b74Schristos (som_bfd_merge_private_bfd_data) 3435*75fd0b74Schristos (som_bfd_copy_private_header_data, som_bfd_set_private_flags): New 3436*75fd0b74Schristos defines. 3437*75fd0b74Schristos 3438*75fd0b74Schristos2005-04-15 Julian Brown <julian@codesourcery.com> 3439*75fd0b74Schristos 3440*75fd0b74Schristos * bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype. 3441*75fd0b74Schristos * bfd-in2.h: Regenerate. 3442*75fd0b74Schristos * elf32-arm.c (elf32_arm_link_hash_table): New field, 'use_blx'. 3443*75fd0b74Schristos (elf32_arm_link_hash_table_create): Initialise fix_v4bx, use_blx. 3444*75fd0b74Schristos (bfd_elf32_arm_set_target_relocs): Handle use_blx. 3445*75fd0b74Schristos (elf32_arm_final_link_relocate): Use Thumb BLX for R_ARM_THM_PC22 3446*75fd0b74Schristos relocations if requested to. 3447*75fd0b74Schristos (allocate_dynrelocs): Don't count size of omitted Thumb stubs based on 3448*75fd0b74Schristos use_blx rather than symbian_p. 3449*75fd0b74Schristos (elf32_arm_finish_dynamic_symbol): Don't output Thumb PLT stubs if 3450*75fd0b74Schristos use_blx is in effect. 3451*75fd0b74Schristos (elf32_arm_symbian_link_hash_table_create): Enable use_blx by default 3452*75fd0b74Schristos for SymbianOS. 3453*75fd0b74Schristos 3454*75fd0b74Schristos2005-04-15 Nick Clifton <nickc@redhat.com> 3455*75fd0b74Schristos 3456*75fd0b74Schristos * coffgen.c (coff_print_symbol): Use fprintf_vma to print vma 3457*75fd0b74Schristos values. 3458*75fd0b74Schristos 3459*75fd0b74Schristos2005-04-15 Alan Modra <amodra@bigpond.net.au> 3460*75fd0b74Schristos 3461*75fd0b74Schristos PR ld/815 3462*75fd0b74Schristos * elflink.c (elf_smash_syms): Clear undef.next if it's not being 3463*75fd0b74Schristos used as a list pointer. 3464*75fd0b74Schristos 3465*75fd0b74Schristos2005-04-14 Alan Modra <amodra@bigpond.net.au> 3466*75fd0b74Schristos 3467*75fd0b74Schristos * Makefile.am (NO_WERROR): Define. 3468*75fd0b74Schristos * warning.m4: New file 3469*75fd0b74Schristos * acinclude.m4: Include warning.m4. 3470*75fd0b74Schristos * configure.in: Invoke AM_BINUTILS_WARNINGS. 3471*75fd0b74Schristos * Makefile.in: Regenerate. 3472*75fd0b74Schristos * configure: Regenerate. 3473*75fd0b74Schristos 3474*75fd0b74Schristos2005-04-14 Alan Modra <amodra@bigpond.net.au> 3475*75fd0b74Schristos 3476*75fd0b74Schristos * merge.c (sec_merge_emit): Tidy. Check for bfd_zmalloc errors. 3477*75fd0b74Schristos Write trailing padding. 3478*75fd0b74Schristos 3479*75fd0b74Schristos * merge.c (merge_strings): Round up section size for alignment. 3480*75fd0b74Schristos 3481*75fd0b74Schristos2005-04-14 David S. Miller <davem@davemloft.net> 3482*75fd0b74Schristos 3483*75fd0b74Schristos Add TLS support for 64-bit Sparc ELF. 3484*75fd0b74Schristos * elf64-sparc.c (sparc64_elf_dyn_relocs, 3485*75fd0b74Schristos sparc64_elf_link_hash_entry, sparc64_elf_obj_tdata): New structs. 3486*75fd0b74Schristos (GOT_UNKNOWN, GOT_NORMAL, GOT_TLD_GD, GOT_TLD_IE, 3487*75fd0b74Schristos sparc64_elf_hash_entry, sparc64_elf_tdata, 3488*75fd0b74Schristos sparc64_elf_local_got_tls_type): New defines. 3489*75fd0b74Schristos (sparc64_elf_mkobject): New function. 3490*75fd0b74Schristos (sparc64_elf_link_hash_table): Add members for dynamic linker 3491*75fd0b74Schristos sections PLT, RELPLT, DYNBSS, and RELBSS. Add tls_ldm_got 3492*75fd0b74Schristos uion to track TLS GOT references. Add sym_sec to cache 3493*75fd0b74Schristos mappings from local sym to section. 3494*75fd0b74Schristos (link_hash_newfunc): New function. 3495*75fd0b74Schristos (sparc64_elf_bfd_link_hash_table_create): Rename to 3496*75fd0b74Schristos sparc64_elf_link_hash_table_create for consistency. 3497*75fd0b74Schristos Pass link_hash_newfunc to _bfd_elf_link_hash_table_init. 3498*75fd0b74Schristos (sparc64_elf_create_dynamic_sections): Initialize new section 3499*75fd0b74Schristos members of sparc64_elf_link_hash_table. Only init srelbss 3500*75fd0b74Schristos if not-shared. 3501*75fd0b74Schristos (sparc64_elf_copy_indirect_symbol, sparc64_elf_tls_transition): 3502*75fd0b74Schristos New functions. 3503*75fd0b74Schristos (SPARC_NOP): Define. 3504*75fd0b74Schristos (sparc64_elf_build_plt, sparc64_elf_plt_entry_offset, 3505*75fd0b74Schristos sparc64_elf_plt_ptr_offset): Delete. 3506*75fd0b74Schristos (sparc64_plt_entry_build): New function to build PLT entries 3507*75fd0b74Schristos gradually instread of all at once at the end of linking. 3508*75fd0b74Schristos (sparc64_elf_check_relocs): Delete dynobj, sgot, and srelgot 3509*75fd0b74Schristos local vars. Get them from sparc64_elf_hash_table instead. 3510*75fd0b74Schristos Check early on if r_symndx is in bounds. Handle TLS transitions. 3511*75fd0b74Schristos Account for TLS GOT references and DF_STATIC_TLS, as needed. 3512*75fd0b74Schristos For TLS relocs, record the tls_type in either 3513*75fd0b74Schristos sparc64_elf_local_got_tls_type or sparc64_elf_hash_entry as 3514*75fd0b74Schristos appropriate. For R_SPARC_TLS_{GD,LDM}_CALL, emit a reference 3515*75fd0b74Schristos to the __tls_get_addr symbol. For PLT relocs, track references 3516*75fd0b74Schristos via h->plt.refcount. When R_SPARC_{PC10,PC22,PC_HH22,PC_HM10, 3517*75fd0b74Schristos PC_LM22} and h not-NULL, set h->non_got_ref. For global data 3518*75fd0b74Schristos symbol references, count the number of relocations needed for 3519*75fd0b74Schristos that symbol. For default switch case, don't error, this lets 3520*75fd0b74Schristos the TLS relocs not explicitly handled by this function get 3521*75fd0b74Schristos accepted. 3522*75fd0b74Schristos (sparc64_elf_gc_mark_hook, sparc64_gc_sweep_hook): New functions. 3523*75fd0b74Schristos (sparc64_elf_adjust_dynamic_symbol): Remove dynobj local var, get 3524*75fd0b74Schristos it from sparc64_elf_hash_table. Store the real PLT offset 3525*75fd0b74Schristos in h->plt.offset, and build PLT entries one at a time. Also 3526*75fd0b74Schristos get .dynbss section pointer from htab. 3527*75fd0b74Schristos (allocate_dynrelocs, readonly_dynrelocs, 3528*75fd0b74Schristos sparc64_omit_section_dynsym): New functions. 3529*75fd0b74Schristos (sparc64_elf_omit_section_dynsym): Use these new functions as 3530*75fd0b74Schristos helpers. 3531*75fd0b74Schristos (dtpoff_base, tpoff): New functions. 3532*75fd0b74Schristos (sparc64_elf_relocate_section): Kill dynobj, sgot, and splt 3533*75fd0b74Schristos locals, get them from sparc64_elf_hash_table. Handle TLS 3534*75fd0b74Schristos relocations and refcounting in main relocation loop. 3535*75fd0b74Schristos (sparc64_elf_finish_dynamic_symbol): Use 3536*75fd0b74Schristos sparc64_elf_link_hash_table. Build PLT entries as we see 3537*75fd0b74Schristos them. Handle TLS GOT relocations. 3538*75fd0b74Schristos (sparc64_elf_finish_dynamic_sections): Get sgot and dynobj 3539*75fd0b74Schristos from sparc64_elf_hash_table. Initialize only PLT header 3540*75fd0b74Schristos not all entries since we not build PLT entries one by one. 3541*75fd0b74Schristos (elf_backend_copy_indirect_symbol, bfd_elf64_mkobject, 3542*75fd0b74Schristos elf_backend_gc_mark_hook, elf_backend_gc_sweep_hook, 3543*75fd0b74Schristos elf_backend_can_gc_sections, elf_backend_can_refcount): Define. 3544*75fd0b74Schristos 3545*75fd0b74Schristos2005-04-13 Daniel Jacobowitz <dan@codesourcery.com> 3546*75fd0b74Schristos 3547*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Update check for removed 3548*75fd0b74Schristos sections. 3549*75fd0b74Schristos 3550*75fd0b74Schristos2005-04-12 Alan Modra <amodra@bigpond.net.au> 3551*75fd0b74Schristos 3552*75fd0b74Schristos * Makefile.am: Run "make dep-am". 3553*75fd0b74Schristos * Makefile.in: Regenerate. 3554*75fd0b74Schristos * aclocal.m4: Regenerate. 3555*75fd0b74Schristos * libcoff.h: Regenerate. 3556*75fd0b74Schristos 3557*75fd0b74Schristos2005-04-11 H.J. Lu <hongjiu.lu@intel.com> 3558*75fd0b74Schristos 3559*75fd0b74Schristos * linker.c (_bfd_generic_link_output_symbols): Also check if 3560*75fd0b74Schristos the output section of an input section has been removed from 3561*75fd0b74Schristos the output file. 3562*75fd0b74Schristos 3563*75fd0b74Schristos * section.c (bfd_section_list_remove): Clear the next field 3564*75fd0b74Schristos of the removed section. 3565*75fd0b74Schristos (bfd_section_removed_from_list): New. 3566*75fd0b74Schristos * bfd-in2.h: Regenerated. 3567*75fd0b74Schristos 3568*75fd0b74Schristos2005-04-11 David S. Miller <davem@davemloft.net> 3569*75fd0b74Schristos 3570*75fd0b74Schristos * elf32-sparc.c (elf32_sparc_relocate_section, 3571*75fd0b74Schristos R_SPARC_TLS_LDO_{HIX22,LOX10}): When not shared, transition to 3572*75fd0b74Schristos R_SPARC_TLS_LE_{HIX22,LOX10}. 3573*75fd0b74Schristos (elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_HIX22): Only 3574*75fd0b74Schristos xor relocation with 0xffffffff if R_SPARC_TLS_LE_HIX22. 3575*75fd0b74Schristos (elf32_sparc_relocate_section, R_SPARC_TLS_{LDO,LE}_LOX10): Only 3576*75fd0b74Schristos or 0x1c00 into relocation if R_SPARC_TLS_LE_HIX22. 3577*75fd0b74Schristos 3578*75fd0b74Schristos2005-04-11 H.J. Lu <hongjiu.lu@intel.com> 3579*75fd0b74Schristos 3580*75fd0b74Schristos * coffcode.h (STRING_SIZE_SIZE): Updated to match libcoff-in.h. 3581*75fd0b74Schristos 3582*75fd0b74Schristos2005-04-11 Nick Clifton <nickc@redhat.com> 3583*75fd0b74Schristos 3584*75fd0b74Schristos * aout-target.h: Convert to ISO C. 3585*75fd0b74Schristos * aoutf1.h: Convert to ISO C. 3586*75fd0b74Schristos * aoutx.h: Convert to ISO C. 3587*75fd0b74Schristos * bout.c: Convert to ISO C. 3588*75fd0b74Schristos * dwarf1.c: Convert to ISO C. 3589*75fd0b74Schristos * ecoffswap.h: Convert to ISO C. 3590*75fd0b74Schristos * freebsd.h: Convert to ISO C. 3591*75fd0b74Schristos * genlink.h: Convert to ISO C. 3592*75fd0b74Schristos * ieee.c: Convert to ISO C. 3593*75fd0b74Schristos * ihex.c: Convert to ISO C. 3594*75fd0b74Schristos * libcoff-in.h: Convert to ISO C. 3595*75fd0b74Schristos * mach-o.c: Convert to ISO C. 3596*75fd0b74Schristos * mach-o.h: Convert to ISO C. 3597*75fd0b74Schristos * netbsd.h: Convert to ISO C. 3598*75fd0b74Schristos * ns32k.h: Convert to ISO C. 3599*75fd0b74Schristos * ns32knetbsd.c: Convert to ISO C. 3600*75fd0b74Schristos * oasys.c: Convert to ISO C. 3601*75fd0b74Schristos * pdp11.c: Convert to ISO C. 3602*75fd0b74Schristos * pef-traceback.h: Convert to ISO C. 3603*75fd0b74Schristos * pef.c: Convert to ISO C. 3604*75fd0b74Schristos * pef.h: Convert to ISO C. 3605*75fd0b74Schristos * riscix.c: Convert to ISO C. 3606*75fd0b74Schristos * som.c: Convert to ISO C. 3607*75fd0b74Schristos * som.h: Convert to ISO C. 3608*75fd0b74Schristos * srec.c: Convert to ISO C. 3609*75fd0b74Schristos * stabs.c: Convert to ISO C. 3610*75fd0b74Schristos * sunos.c: Convert to ISO C. 3611*75fd0b74Schristos * tekhex.c: Convert to ISO C. 3612*75fd0b74Schristos * versados.c: Convert to ISO C. 3613*75fd0b74Schristos * version.h: Convert to ISO C. 3614*75fd0b74Schristos * xcoff-target.h: Convert to ISO C. 3615*75fd0b74Schristos * xcofflink.c: Convert to ISO C. 3616*75fd0b74Schristos * xsym.c: Convert to ISO C. 3617*75fd0b74Schristos * xsym.h: Convert to ISO C. 3618*75fd0b74Schristos 3619*75fd0b74Schristos2005-04-08 Paul Brook <paul@codesourcery.com> 3620*75fd0b74Schristos 3621*75fd0b74Schristos * elf32-arm.c (ARM2THUMB_GLUE_SIZE): Rename... 3622*75fd0b74Schristos (ARM2THUMB_STATIC_GLUE_SIZE): ... to this. 3623*75fd0b74Schristos (ARM2THUMB_PIC_GLUE_SIZE): Define. 3624*75fd0b74Schristos (a2t1p_ldr_insn, a2t2p_add_pc_insn, a2t3p_bx_r12_insn): Add. 3625*75fd0b74Schristos (elf32_arm_to_thumb_stub): Create PIC stubs. 3626*75fd0b74Schristos (record_arm_to_thumb_glue): Use different stub size for relocatable 3627*75fd0b74Schristos images. 3628*75fd0b74Schristos 3629*75fd0b74Schristos2005-04-05 Alan Modra <amodra@bigpond.net.au> 3630*75fd0b74Schristos 3631*75fd0b74Schristos * elf64-ppc.c (dec_dynrel_count): New function split out from 3632*75fd0b74Schristos ppc64_elf_edit_toc, with additional code from ppc64_elf_edit_opd. 3633*75fd0b74Schristos (ppc64_elf_edit_toc, ppc64_elf_edit_opd): Use it. 3634*75fd0b74Schristos (ppc64_elf_tls_optimize): Likewise. 3635*75fd0b74Schristos 3636*75fd0b74Schristos2005-04-05 Mark Kettenis <kettenis@gnu.org> 3637*75fd0b74Schristos 3638*75fd0b74Schristos * netbsd-core.c (SPARC_WCOOKIE_OFFSET): Renamed from 3639*75fd0b74Schristos CORE_WCOOKIE_OFFSET. 3640*75fd0b74Schristos (SPARC64_WCOOKIE_OFFSET): New. 3641*75fd0b74Schristos (netbsd_core_file_p): Provide .wcookie section for OpenBSD/sparc64. 3642*75fd0b74Schristos 3643*75fd0b74Schristos2005-04-05 Nick Clifton <nickc@redhat.com> 3644*75fd0b74Schristos 3645*75fd0b74Schristos * po/rw.po: New translation: Kinyarwanda 3646*75fd0b74Schristos * configure.in (ALL_LINGUAS): Add rw 3647*75fd0b74Schristos * configure: Regenerate. 3648*75fd0b74Schristos 3649*75fd0b74Schristos2005-04-05 Richard Sandiford <rsandifo@redhat.com> 3650*75fd0b74Schristos 3651*75fd0b74Schristos * elfxx-mips.c (MIPS_ELF_OPTIONS_SECTION_NAME_P): New macro. 3652*75fd0b74Schristos (_bfd_mips_elf_section_from_shdr): Use it to check for recognized 3653*75fd0b74Schristos SHT_MIPS_OPTIONS names. Allow all sections with unrecognised 3654*75fd0b74Schristos section flags. 3655*75fd0b74Schristos (_bfd_mips_elf_fake_sections): Use MIPS_ELF_OPTIONS_SECTION_NAME_P 3656*75fd0b74Schristos to check for SHT_MIPS_OPTIONS sections. 3657*75fd0b74Schristos (_bfd_mips_elf_set_section_contents): Likewise. 3658*75fd0b74Schristos 3659*75fd0b74Schristos2005-04-04 Eric Christopher <echristo@redhat.com> 3660*75fd0b74Schristos 3661*75fd0b74Schristos * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): 3662*75fd0b74Schristos Clean up gp handling code. 3663*75fd0b74Schristos 3664*75fd0b74Schristos2005-04-04 H.J. Lu <hongjiu.lu@intel.com> 3665*75fd0b74Schristos 3666*75fd0b74Schristos * elf.c (bfd_elf_set_group_contents): Ignore linker created 3667*75fd0b74Schristos group section. 3668*75fd0b74Schristos (assign_section_numbers): Accept link_info. Check SHT_GROUP 3669*75fd0b74Schristos sections for relocatable files only. Remove the linker created 3670*75fd0b74Schristos group sections. 3671*75fd0b74Schristos (_bfd_elf_compute_section_file_positions): Pass link_info to 3672*75fd0b74Schristos assign_section_numbers. 3673*75fd0b74Schristos 3674*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_object_p): New. 3675*75fd0b74Schristos (elf_backend_object_p): Defined. 3676*75fd0b74Schristos 3677*75fd0b74Schristos2005-04-04 H.J. Lu <hongjiu.lu@intel.com> 3678*75fd0b74Schristos 3679*75fd0b74Schristos * elf-bfd.h (elf_section_data): Use (sec) instead of sec. 3680*75fd0b74Schristos 3681*75fd0b74Schristos2005-04-03 Fred Fish <fnf@specifixinc.com> 3682*75fd0b74Schristos 3683*75fd0b74Schristos * dwarf2.c (struct dwarf2_debug): Add dwarf_ranges_buffer and 3684*75fd0b74Schristos dwarf_ranges_size members. 3685*75fd0b74Schristos (struct comp_unit): Add base_address member. 3686*75fd0b74Schristos (struct funcinfo): Replace low/high members with an arange. 3687*75fd0b74Schristos (arange_add): Replace incoming "unit" parameter with "abfd" and 3688*75fd0b74Schristos "first_arange" pointers. Reorganize/rewrite function body. 3689*75fd0b74Schristos (decode_line_info): Change arange_add call to pass bfd and arange 3690*75fd0b74Schristos pointers. 3691*75fd0b74Schristos (lookup_address_in_line_info_table): Use arange list instead of 3692*75fd0b74Schristos individual low/high members. Walk function's arange list to find 3693*75fd0b74Schristos lowest PC in list, to test for overlapping functions. 3694*75fd0b74Schristos (read_debug_ranges): New function, reads the debug_ranges section. 3695*75fd0b74Schristos (lookup_address_in_function_table): Use arange list instead of 3696*75fd0b74Schristos individual low/high members. Rewrite to find smallest range that 3697*75fd0b74Schristos matches. 3698*75fd0b74Schristos (read_rangelist): Read a given rangelist from debug_ranges. 3699*75fd0b74Schristos (scan_unit_for_functions): Use arange list instead of individual 3700*75fd0b74Schristos low/high members. Handle a DW_AT_ranges attribute. 3701*75fd0b74Schristos (parse_comp_unit): Use arange list instead of individual low/high 3702*75fd0b74Schristos members. Save comp unit base address. Handle a DW_AT_ranges 3703*75fd0b74Schristos attribute. 3704*75fd0b74Schristos 3705*75fd0b74Schristos2005-04-01 H.J. Lu <hongjiu.lu@intel.com> 3706*75fd0b74Schristos 3707*75fd0b74Schristos * elf.c (assign_section_numbers): Really use the kept section. 3708*75fd0b74Schristos 3709*75fd0b74Schristos2005-03-31 H.J. Lu <hongjiu.lu@intel.com> 3710*75fd0b74Schristos 3711*75fd0b74Schristos * elf-bfd.h (_bfd_elf_check_kept_section): New. 3712*75fd0b74Schristos 3713*75fd0b74Schristos * elf.c (assign_section_numbers): When sh_link points to a 3714*75fd0b74Schristos discarded section, call _bfd_elf_check_kept_section to see if 3715*75fd0b74Schristos the kept section can be used. Otherwise reject sh_link 3716*75fd0b74Schristos pointing to discarded section. 3717*75fd0b74Schristos 3718*75fd0b74Schristos * elflink.c (_bfd_elf_check_kept_section): New. 3719*75fd0b74Schristos (elf_link_input_bfd): Use it. 3720*75fd0b74Schristos 3721*75fd0b74Schristos2005-04-01 Alan Modra <amodra@bigpond.net.au> 3722*75fd0b74Schristos 3723*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_toc): Account for dynamic relocs 3724*75fd0b74Schristos that we no longer need. 3725*75fd0b74Schristos 3726*75fd0b74Schristos2005-04-01 Alan Modra <amodra@bigpond.net.au> 3727*75fd0b74Schristos 3728*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Return -1 on errors 3729*75fd0b74Schristos rather than 0. 3730*75fd0b74Schristos (ppc64_elf_check_relocs): Remove unnecessary SEC_ALLOC check. 3731*75fd0b74Schristos 3732*75fd0b74Schristos2005-03-31 H.J. Lu <hongjiu.lu@intel.com> 3733*75fd0b74Schristos 3734*75fd0b74Schristos * elf.c (assign_section_numbers): Fix a typo. 3735*75fd0b74Schristos 3736*75fd0b74Schristos2005-03-31 H.J. Lu <hongjiu.lu@intel.com> 3737*75fd0b74Schristos 3738*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Remove the extra `\n' in 3739*75fd0b74Schristos error message. 3740*75fd0b74Schristos (_bfd_elf_section_already_linked): Likewise. 3741*75fd0b74Schristos 3742*75fd0b74Schristos2005-03-31 Jerome Guitton <guitton@gnat.com> 3743*75fd0b74Schristos 3744*75fd0b74Schristos * config.in: Regenerate. 3745*75fd0b74Schristos 3746*75fd0b74Schristos2005-03-31 Jerome Guitton <guitton@gnat.com> 3747*75fd0b74Schristos 3748*75fd0b74Schristos * config.in (HAVE_DECL_BASENAME): New configure macro. 3749*75fd0b74Schristos * configure.in: Check for basename. 3750*75fd0b74Schristos * configure: Regenerate. 3751*75fd0b74Schristos 3752*75fd0b74Schristos2005-03-30 Julian Brown <julian@codesourcery.com> 3753*75fd0b74Schristos 3754*75fd0b74Schristos * bfd-in.h (bfd_is_arm_mapping_symbol_name): Rename from 3755*75fd0b74Schristos bfd_elf32_is_arm_mapping_symbol_name. 3756*75fd0b74Schristos * bfd-in2.h: Regenerate. 3757*75fd0b74Schristos * cpu-arm.c (bfd_is_arm_mapping_symbol_name): Rename from 3758*75fd0b74Schristos bfd_elf32_is_arm_mapping_symbol_name. 3759*75fd0b74Schristos * elf32-arm.c (elf32_arm_is_target_special_symbol): Rename 3760*75fd0b74Schristos bfd_elf32_is_arm_mapping_symbol_name to bfd_is_arm_mapping_symbol_name. 3761*75fd0b74Schristos (arm_elf_find_function): Likewise. 3762*75fd0b74Schristos (elf32_arm_output_symbol_hook): Likewise. 3763*75fd0b74Schristos 3764*75fd0b74Schristos2005-03-30 Julian Brown <julian@codesourcery.com> 3765*75fd0b74Schristos 3766*75fd0b74Schristos * bfd-in.h (bfd_elf32_is_arm_mapping_symbol_name): Add prototype. 3767*75fd0b74Schristos * bfd-in2.h: Regenerate. 3768*75fd0b74Schristos * elf32-arm.c (elf32_arm_is_target_special_symbol): Rename call to 3769*75fd0b74Schristos bfd_elf32_is_arm_mapping_symbol_name. 3770*75fd0b74Schristos (elf32_arm_output_symbol_hook): Likewise. 3771*75fd0b74Schristos (arm_elf_find_function): Likewise, and include STT_NOTYPE in test for 3772*75fd0b74Schristos mapping symbols. 3773*75fd0b74Schristos (is_arm_mapping_symbol_name): Function moved from here... 3774*75fd0b74Schristos * cpu-arm.c (bfd_elf32_is_arm_mapping_symbol_name): ...to here, renamed 3775*75fd0b74Schristos and made global. 3776*75fd0b74Schristos 3777*75fd0b74Schristos2005-03-29 Aaron W. LaFramboise <aaron98wiridge9@aaronwl.com> 3778*75fd0b74Schristos 3779*75fd0b74Schristos * configure.in: Check for ffs decl and alphabetize. 3780*75fd0b74Schristos * config.in: Regenerate. 3781*75fd0b74Schristos * configure: Regenerate. 3782*75fd0b74Schristos * sysdep.h [NEED_DECLARATION_FFS] (ffs): Prototype and alphabetize. 3783*75fd0b74Schristos 3784*75fd0b74Schristos2005-03-29 Fred Fish <fnf@specifixinc.com> 3785*75fd0b74Schristos 3786*75fd0b74Schristos * dwarf2.c (struct comp_unit): Fix typo. 3787*75fd0b74Schristos (scan_unit_for_functions): Remove unused local variable "name" 3788*75fd0b74Schristos and dead code that set it. 3789*75fd0b74Schristos 3790*75fd0b74Schristos2005-03-29 Daniel Jacobowitz <dan@codesourcery.com> 3791*75fd0b74Schristos Phil Blundell <philb@gnu.org> 3792*75fd0b74Schristos 3793*75fd0b74Schristos * bfd-in2.h, libbfd.h: Regenerated. 3794*75fd0b74Schristos * reloc.c: Add ARM TLS relocations. 3795*75fd0b74Schristos * elf32-arm.c (elf32_arm_howto_table): Add dynamic TLS 3796*75fd0b74Schristos relocations. 3797*75fd0b74Schristos (elf32_arm_tls_gd32_howto, elf32_arm_tls_ldo32_howto) 3798*75fd0b74Schristos (elf32_arm_tls_ldm32_howto, elf32_arm_tls_le32_howto) 3799*75fd0b74Schristos (elf32_arm_tls_ie32_howto): New. 3800*75fd0b74Schristos (elf32_arm_howto_from_type): Support TLS relocations. 3801*75fd0b74Schristos (elf32_arm_reloc_map): Likewise. 3802*75fd0b74Schristos (elf32_arm_reloc_type_lookup): Likewise. 3803*75fd0b74Schristos (TCB_SIZE): Define. 3804*75fd0b74Schristos (struct elf32_arm_obj_tdata): New. 3805*75fd0b74Schristos (elf32_arm_tdata, elf32_arm_local_got_tls_type): Define. 3806*75fd0b74Schristos (elf32_arm_mkobject): New function. 3807*75fd0b74Schristos (struct elf32_arm_relocs_copied): Add pc_count. 3808*75fd0b74Schristos (elf32_arm_hash_entry, GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD) 3809*75fd0b74Schristos (GOT_TLS_IE): Define. 3810*75fd0b74Schristos (struct elf32_arm_link_hash_table): Add tls_ldm_got. 3811*75fd0b74Schristos (elf32_arm_link_hash_newfunc): Initialize tls_type. 3812*75fd0b74Schristos (elf32_arm_copy_indirect_symbol): Copy pc_count and tls_type. 3813*75fd0b74Schristos (elf32_arm_link_hash_table_create): Initialize tls_ldm_got. 3814*75fd0b74Schristos (dtpoff_base, tpoff): New functions. 3815*75fd0b74Schristos (elf32_arm_final_link_relocate): Handle TLS relocations. 3816*75fd0b74Schristos (IS_ARM_TLS_RELOC): Define. 3817*75fd0b74Schristos (elf32_arm_relocate_section): Warn about TLS mismatches. 3818*75fd0b74Schristos (elf32_arm_gc_sweep_hook): Handle TLS relocations and pc_count. 3819*75fd0b74Schristos (elf32_arm_check_relocs): Detect invalid symbol indexes. Handle 3820*75fd0b74Schristos TLS relocations and pc_count. 3821*75fd0b74Schristos (elf32_arm_adjust_dynamic_symbol): Check non_got_ref. 3822*75fd0b74Schristos (allocate_dynrelocs): Handle TLS. Bind REL32 relocs to local 3823*75fd0b74Schristos calls. 3824*75fd0b74Schristos (elf32_arm_size_dynamic_sections): Handle TLS. 3825*75fd0b74Schristos (elf32_arm_finish_dynamic_symbol): Likewise. 3826*75fd0b74Schristos (bfd_elf32_mkobject): Define. 3827*75fd0b74Schristos 3828*75fd0b74Schristos2005-03-29 Daniel Jacobowitz <dan@codesourcery.com> 3829*75fd0b74Schristos 3830*75fd0b74Schristos * elf32-arm.c (elf32_arm_check_relocs): Increment count for all 3831*75fd0b74Schristos relocation types. Don't count relocations which will use a PLT. 3832*75fd0b74Schristos 3833*75fd0b74Schristos2005-03-29 Joel Brobecker <brobecker@gnat.com> 3834*75fd0b74Schristos 3835*75fd0b74Schristos * elf.c (elfcore_grok_nto_status): Print tid as long. 3836*75fd0b74Schristos (elfcore_grok_nto_regs): Likewise. 3837*75fd0b74Schristos 3838*75fd0b74Schristos2005-03-29 Joel Brobecker <brobecker@gnat.com> 3839*75fd0b74Schristos 3840*75fd0b74Schristos * irix-core.c: Remove some unnecessary prototypes. 3841*75fd0b74Schristos 3842*75fd0b74Schristos2005-03-28 Joel Brobecker <brobecker@adacore.com> 3843*75fd0b74Schristos 3844*75fd0b74Schristos * irix-core.c: Convert to ISO C. 3845*75fd0b74Schristos 3846*75fd0b74Schristos2005-03-28 Joel Brobecker <brobecker@adacore.com> 3847*75fd0b74Schristos 3848*75fd0b74Schristos * irix-core.c (do_sections): Replace + by | in expression. 3849*75fd0b74Schristos (irix_core_core_file_matches_executable_p): Add ATTRIBUTE_UNUSED 3850*75fd0b74Schristos to unused parameters to avoid a compiler warning. 3851*75fd0b74Schristos 3852*75fd0b74Schristos2005-03-28 Mark Kettenis <kettenis@gnu.org> 3853*75fd0b74Schristos 3854*75fd0b74Schristos * netbsd-core.c: Convert to ISO C. Fix formatting. 3855*75fd0b74Schristos 3856*75fd0b74Schristos2005-03-24 Eric Christopher <echristo@redhat.com> 3857*75fd0b74Schristos 3858*75fd0b74Schristos * elfxx-mips.c: Revert previous patch. 3859*75fd0b74Schristos 3860*75fd0b74Schristos2005-03-24 Nick Clifton <nickc@redhat.com> 3861*75fd0b74Schristos 3862*75fd0b74Schristos * targets.c (_bfd_target_vector): Only include the 3863*75fd0b74Schristos bfd_elf32_ia64_hpux_big_vec vector when building a 64-bit BFD with 3864*75fd0b74Schristos all targets enabled. 3865*75fd0b74Schristos 3866*75fd0b74Schristos2005-03-24 James E Wilson <wilson@specifixinc.com> 3867*75fd0b74Schristos 3868*75fd0b74Schristos * Makefile.am (BFD32_BACKENDS): Delete elf32-ia64.lo. 3869*75fd0b74Schristos (BFD64_BACKENDS): Add elf32-ia64.lo. 3870*75fd0b74Schristos * Makefile.in: Regenerate. 3871*75fd0b74Schristos 3872*75fd0b74Schristos2005-03-23 Eric Christopher <echristo@redhat.com> 3873*75fd0b74Schristos 3874*75fd0b74Schristos * elfxx-mips.c (MIPS_ELF_READONLY_SECTION): New. 3875*75fd0b74Schristos (mips_elf_calculate_relocation): Use. Define DF_TEXTREL 3876*75fd0b74Schristos after emitting relocation. 3877*75fd0b74Schristos (_bfd_mips_elf_adjust_dynamic_symbol): Ditto. 3878*75fd0b74Schristos (_bfd_mips_elf_check_relocs): Remove code to set DF_TEXTREL 3879*75fd0b74Schristos and readonly_reloc. 3880*75fd0b74Schristos 3881*75fd0b74Schristos2005-03-23 Mike Frysinger <vapier@gentoo.org> 3882*75fd0b74Schristos Nick Clifton <nickc@redhat.com> 3883*75fd0b74Schristos 3884*75fd0b74Schristos * config.bfd: Accept any C library to accompany a GNU Linux 3885*75fd0b74Schristos implementation, not just the GNU C library. 3886*75fd0b74Schristos * configure.in: Likewise. 3887*75fd0b74Schristos * configure: Regenerate. 3888*75fd0b74Schristos 3889*75fd0b74Schristos2005-03-22 H.J. Lu <hongjiu.lu@intel.com> 3890*75fd0b74Schristos 3891*75fd0b74Schristos * bfd-in.h (_bfd_elf_provide_symbol): New. 3892*75fd0b74Schristos * bfd-in2.h: Regenerated. 3893*75fd0b74Schristos 3894*75fd0b74Schristos * elf32-ppc.c (set_linker_sym): Moved to elflink.c. 3895*75fd0b74Schristos (ppc_elf_set_sdata_syms): Call _bfd_elf_provide_symbol instead 3896*75fd0b74Schristos of set_linker_sym. 3897*75fd0b74Schristos 3898*75fd0b74Schristos * elflink.c (_bfd_elf_provide_symbol): New. Moved and renamed 3899*75fd0b74Schristos from elf32-ppc.c. 3900*75fd0b74Schristos 3901*75fd0b74Schristos2005-03-22 Hans-Peter Nilsson <hp@axis.com> 3902*75fd0b74Schristos 3903*75fd0b74Schristos * hash.c (strtab_hash_newfunc): Fix typo in allocated size. 3904*75fd0b74Schristos 3905*75fd0b74Schristos2005-03-22 Bob Wilson <bob.wilson@acm.org> 3906*75fd0b74Schristos 3907*75fd0b74Schristos * xtensa-isa.c (xtensa_opcode_lookup, xtensa_state_lookup, 3908*75fd0b74Schristos xtensa_sysreg_lookup_name, xtensa_interface_lookup, 3909*75fd0b74Schristos xtensa_funcUnit_lookup): Skip bsearch call if count is zero. 3910*75fd0b74Schristos (xtensa_opcode_decode): Rearrange code. 3911*75fd0b74Schristos 3912*75fd0b74Schristos2005-03-22 Nick Clifton <nickc@redhat.com> 3913*75fd0b74Schristos 3914*75fd0b74Schristos * binary.c: Convert to ISO C90 formatting. 3915*75fd0b74Schristos * coff-arm.c: Convert to ISO C90 formatting. 3916*75fd0b74Schristos * coffgen.c: Convert to ISO C90 formatting. 3917*75fd0b74Schristos * elf32-gen.c: Convert to ISO C90 formatting. 3918*75fd0b74Schristos * elf64-gen.c: Convert to ISO C90 formatting. 3919*75fd0b74Schristos * hash.c: Convert to ISO C90 formatting. 3920*75fd0b74Schristos * ieee.c: Convert to ISO C90 formatting. 3921*75fd0b74Schristos 3922*75fd0b74Schristos2005-03-22 Daniel Jacobowitz <dan@codesourcery.com> 3923*75fd0b74Schristos 3924*75fd0b74Schristos * elf32-arm.c (elf32_arm_final_link_relocate): Don't fail for 3925*75fd0b74Schristos unresolved symbols in R_ARM_NONE relocations. 3926*75fd0b74Schristos 3927*75fd0b74Schristos2005-03-22 Daniel Jacobowitz <dan@codesourcery.com> 3928*75fd0b74Schristos 3929*75fd0b74Schristos * elf32-arm.c (elf32_arm_final_link_relocate): Add 3930*75fd0b74Schristos UNRESOLVED_RELOC_P argument. Set it appropriately. 3931*75fd0b74Schristos (elf32_arm_relocate_section): Update call to 3932*75fd0b74Schristos elf32_arm_final_link_relocate. Don't clobber RELOCATION; use 3933*75fd0b74Schristos unresolved_reloc instead. 3934*75fd0b74Schristos 3935*75fd0b74Schristos2005-03-23 Alan Modra <amodra@bigpond.net.au> 3936*75fd0b74Schristos 3937*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Set SEC_EXCLUDE on 3938*75fd0b74Schristos .gnu.warning.* sections. 3939*75fd0b74Schristos 3940*75fd0b74Schristos2005-03-22 Alan Modra <amodra@bigpond.net.au> 3941*75fd0b74Schristos 3942*75fd0b74Schristos * elf32-ppc.c (elf_linker_section_pointers_t): Remove 3943*75fd0b74Schristos written_address_p. 3944*75fd0b74Schristos (ppc_elf_create_linker_section): Don't try to reuse existing section. 3945*75fd0b74Schristos (elf_create_pointer_linker_section): Delete info parm. Don't make 3946*75fd0b74Schristos h dynamic. Don't set written_address_p. 3947*75fd0b74Schristos (ppc_elf_check_relocs): Adjust ppc_elf_create_linker_section calls. 3948*75fd0b74Schristos (bfd_put_ptr): Delete. 3949*75fd0b74Schristos (elf_finish_pointer_linker_section): Remove output_bfd and info parms. 3950*75fd0b74Schristos Always write section contents. Assert global sym is def_regular. 3951*75fd0b74Schristos Use offset bottom bit as a written flag. 3952*75fd0b74Schristos (ppc_elf_relocate_section): Adjust elf_finish_pointer_linker_section 3953*75fd0b74Schristos calls. 3954*75fd0b74Schristos 3955*75fd0b74Schristos2005-03-22 Alan Modra <amodra@bigpond.net.au> 3956*75fd0b74Schristos 3957*75fd0b74Schristos * elf32-ppc.c (ppc_elf_set_sdata_syms): New function, extracted from.. 3958*75fd0b74Schristos (ppc_elf_set_sdata_syms): ..here. Expand comment. Set .sbss start 3959*75fd0b74Schristos and end syms. 3960*75fd0b74Schristos 3961*75fd0b74Schristos2005-03-21 Nick Clifton <nickc@redhat.com> 3962*75fd0b74Schristos 3963*75fd0b74Schristos * coff-arm.c (coff_link_hash_entry): Only define for non WINCE 3964*75fd0b74Schristos targets. 3965*75fd0b74Schristos (t2a1_bx_pc_insn): Likewise. 3966*75fd0b74Schristos (t2a2_noop_insn): Likewise. 3967*75fd0b74Schristos (t2a3_b_insn): Likewise. 3968*75fd0b74Schristos (t2a1_push_insn): Likewise. 3969*75fd0b74Schristos (t2a2_ldr_insn): Likewise. 3970*75fd0b74Schristos (t2a3_mov_insn): Likewise. 3971*75fd0b74Schristos (t2a4_bx_insn): Likewise. 3972*75fd0b74Schristos (t2a5_pop_insn): Likewise. 3973*75fd0b74Schristos (t2a6_bx_insn): Likewise. 3974*75fd0b74Schristos (coff_arm_relocate_section): Only declare the high_address 3975*75fd0b74Schristos variable for non WINCE targets. 3976*75fd0b74Schristos 3977*75fd0b74Schristos2005-03-22 Alan Modra <amodra@bigpond.net.au> 3978*75fd0b74Schristos 3979*75fd0b74Schristos * elf32-ppc.c (ppc_elf_add_symbol_hook): Make htab->sbss 3980*75fd0b74Schristos SEC_LINKER_CREATED. Attach to dynobj. 3981*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Strip htab->sbss if zero size. 3982*75fd0b74Schristos 3983*75fd0b74Schristos2005-03-21 Alan Modra <amodra@bigpond.net.au> 3984*75fd0b74Schristos 3985*75fd0b74Schristos * elf32-ppc.c (struct elf_linker_section): Remove sym_hash and 3986*75fd0b74Schristos sym_offset. Add name, bss_name, sym_name, sym_val. 3987*75fd0b74Schristos (struct ppc_elf_link_hash_table): Remove sdata and sdata2 pointers. 3988*75fd0b74Schristos Add sdata array of elf_linker_section_t. 3989*75fd0b74Schristos (ppc_elf_link_hash_table_create): Set name, sym_name, and bss_name. 3990*75fd0b74Schristos (enum elf_linker_section_enum): Delete. 3991*75fd0b74Schristos (ppc_elf_create_linker_section): Rewrite. Don't create syms here. 3992*75fd0b74Schristos (ppc_elf_check_relocs): Delay ppc_elf_create_linker_section until 3993*75fd0b74Schristos the special sections are needed. Adjust htab->sdata refs. 3994*75fd0b74Schristos Ensure dynobj is set in sreloc code. 3995*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Strip sdata sections. 3996*75fd0b74Schristos (ppc_elf_set_sdata_syms): New function. 3997*75fd0b74Schristos (elf_finish_pointer_linker_section): Use 0x8000 for sym_offset. 3998*75fd0b74Schristos (ppc_elf_relocate_section): Adjust references to htab->sdata. Use 3999*75fd0b74Schristos sym_val instead of sym_hash. 4000*75fd0b74Schristos * elf32-ppc.h (ppc_elf_set_sdata_syms): Declare. 4001*75fd0b74Schristos 4002*75fd0b74Schristos2005-03-21 Alan Modra <amodra@bigpond.net.au> 4003*75fd0b74Schristos 4004*75fd0b74Schristos * elf32-ppc.c (is_ppc_elf_target): Move to linker part of file. 4005*75fd0b74Schristos (ppc_elf_merge_private_bfd_data): Likewise. 4006*75fd0b74Schristos 4007*75fd0b74Schristos2005-03-21 Alan Modra <amodra@bigpond.net.au> 4008*75fd0b74Schristos 4009*75fd0b74Schristos * elf32-ppc.c (struct elf_linker_section): Remove rel_section. 4010*75fd0b74Schristos (ppc_elf_create_linker_section): Don't create rel_section. 4011*75fd0b74Schristos (elf_create_pointer_linker_section): Don't size relocs. 4012*75fd0b74Schristos (elf_finish_pointer_linker_section): Remove relative_reloc parm. 4013*75fd0b74Schristos Don't generate relocs. 4014*75fd0b74Schristos (ppc_elf_relocate_section): Adjust calls to 4015*75fd0b74Schristos elf_finish_pointer_linker_section. 4016*75fd0b74Schristos 4017*75fd0b74Schristos2005-03-21 Alan Modra <amodra@bigpond.net.au> 4018*75fd0b74Schristos 4019*75fd0b74Schristos * elf32-ppc.c (is_ppc_elf_target): New function. 4020*75fd0b74Schristos (ppc_elf_merge_private_bfd_data): Use it rather than just testing 4021*75fd0b74Schristos for bfd_target_elf_flavour. Do this test before endian check. 4022*75fd0b74Schristos (ppc_elf_add_symbol_hook): Use is_pcc_elf_target. 4023*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Likewise. 4024*75fd0b74Schristos 4025*75fd0b74Schristos2005-03-20 H.J. Lu <hongjiu.lu@intel.com> 4026*75fd0b74Schristos 4027*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Add int to 4028*75fd0b74Schristos elf_backend_section_from_shdr. 4029*75fd0b74Schristos (bfd_elf_section_data): Update comment for this_idx. 4030*75fd0b74Schristos (_bfd_elf_make_section_from_shdr): Add int. 4031*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise. 4032*75fd0b74Schristos 4033*75fd0b74Schristos * elf.c (_bfd_elf_make_section_from_shdr): Take section index 4034*75fd0b74Schristos and use it to set this_idx in bfd_elf_section_data. 4035*75fd0b74Schristos (bfd_section_from_shdr): Pass shindex to 4036*75fd0b74Schristos _bfd_elf_make_section_from_shdr. 4037*75fd0b74Schristos (_bfd_elf_section_from_bfd_section): Use this_idx in 4038*75fd0b74Schristos bfd_elf_section_data to find section index. 4039*75fd0b74Schristos 4040*75fd0b74Schristos * elf32-arm.c (elf32_arm_section_from_shdr): Take section 4041*75fd0b74Schristos index and pass it to _bfd_elf_make_section_from_shdr. 4042*75fd0b74Schristos * elf32-i370.c(i370_elf_section_from_shdr): Likewise. 4043*75fd0b74Schristos * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise. 4044*75fd0b74Schristos * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise. 4045*75fd0b74Schristos * elf32-v850.c (v850_elf_section_from_shdr): Likewise. 4046*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise. 4047*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise. 4048*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_section_from_shdr): Likewise. 4049*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise. 4050*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise. 4051*75fd0b74Schristos 4052*75fd0b74Schristos2005-03-19 Danny Smith <dannysmith@users.sourceforge.net> 4053*75fd0b74Schristos Ross Ridge <rridge@csclub.uwaterloo.ca> 4054*75fd0b74Schristos 4055*75fd0b74Schristos * peicode.h (pe_ILF_build_a_bfd): Strip only one prefix 4056*75fd0b74Schristos character in IMPORT_NAME_UNDECORATE and IMPORT_NAME_NOPREFIX 4057*75fd0b74Schristos cases. Add comment. 4058*75fd0b74Schristos 4059*75fd0b74Schristos2005-03-18 H.J. Lu <hongjiu.lu@intel.com> 4060*75fd0b74Schristos 4061*75fd0b74Schristos * elflink.c (elf_mark_used_section): Remove check for special 4062*75fd0b74Schristos sections. 4063*75fd0b74Schristos 4064*75fd0b74Schristos2005-03-18 Andreas Schwab <schwab@suse.de> 4065*75fd0b74Schristos 4066*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_install_value): Change type of insn 4067*75fd0b74Schristos from bfd_vma to ia64_insn, remove broken cast. 4068*75fd0b74Schristos 4069*75fd0b74Schristos2005-03-18 C Jaiprakash <cjaiprakash@noida.hcltech.com> 4070*75fd0b74Schristos 4071*75fd0b74Schristos * elf32-m68k.c (elf_cfv4e_plt0_entry): plt entry for coldfire v4e. 4072*75fd0b74Schristos (elf_m68k_adjust_dynamic_symbol,elf_m68k_finish_dynamic_symbol, 4073*75fd0b74Schristos elf_m68k_finish_dynamic_sections): Use it. 4074*75fd0b74Schristos 4075*75fd0b74Schristos2005-03-17 Paul Brook <paul@codesourcery.com> 4076*75fd0b74Schristos Dan Jacobowitz <dan@codesourcery.com> 4077*75fd0b74Schristos Mark Mitchell <mark@codesourcery.com> 4078*75fd0b74Schristos 4079*75fd0b74Schristos * elf32-arm.c (elf32_arm_modify_segment_map): New function. 4080*75fd0b74Schristos (elf32_arm_additional_program_headers): Likewise. 4081*75fd0b74Schristos (elf_backend_modify_segment_map): Define. 4082*75fd0b74Schristos (elf_backend_additional_program_headers): Likewise. 4083*75fd0b74Schristos (elf32_arm_symbian_modify_segment_map): Use 4084*75fd0b74Schristos elf32_arm_modify_segment_map. 4085*75fd0b74Schristos 4086*75fd0b74Schristos2005-03-18 H.J. Lu <hongjiu.lu@intel.com> 4087*75fd0b74Schristos 4088*75fd0b74Schristos * elflink.c (elf_mark_used_section): Check bfd_is_const_section 4089*75fd0b74Schristos for special sections. 4090*75fd0b74Schristos 4091*75fd0b74Schristos2005-03-18 Alan Modra <amodra@bigpond.net.au> 4092*75fd0b74Schristos 4093*75fd0b74Schristos * elf-bfd.h (_bfd_elf_link_renumber_dynsyms): Delete. 4094*75fd0b74Schristos * elflink.c (_bfd_elf_link_renumber_dynsyms): Make static, add 4095*75fd0b74Schristos section_sym_count param, and return number of section symbols. 4096*75fd0b74Schristos (bfd_elf_size_dynamic_sections): Clear section symbol area of 4097*75fd0b74Schristos .dynsym contents. Don't bother calling swap_symbol_out on the 4098*75fd0b74Schristos first all-zero dynsym. 4099*75fd0b74Schristos (elf_mark_used_section): Formatting. Avoid twiddling flags in 4100*75fd0b74Schristos special sections like bfd_abs_section. 4101*75fd0b74Schristos (bfd_elf_gc_sections): Spelling fix. 4102*75fd0b74Schristos 4103*75fd0b74Schristos2005-03-16 Fred Fish <fnf@specifixinc.com> 4104*75fd0b74Schristos 4105*75fd0b74Schristos PR binutils/790 4106*75fd0b74Schristos * dwarf2.c (read_indirect_string): Fix apparent typo, check 4107*75fd0b74Schristos dwarf_str_buffer allocation, not dwarf_abbrev_buffer. 4108*75fd0b74Schristos 4109*75fd0b74Schristos2005-03-16 H.J. Lu <hongjiu.lu@intel.com> 4110*75fd0b74Schristos 4111*75fd0b74Schristos * elflink.c (elf_mark_used_section): New. 4112*75fd0b74Schristos (bfd_elf_gc_sections): Call elf_gc_mark_section for 4113*75fd0b74Schristos non-relocatable link if we don't do GC. 4114*75fd0b74Schristos 4115*75fd0b74Schristos2005-03-16 Nick Clifton <nickc@redhat.com> 4116*75fd0b74Schristos Ben Elliston <bje@au.ibm.com> 4117*75fd0b74Schristos 4118*75fd0b74Schristos * configure.in (werror): New switch: Add -Werror to the 4119*75fd0b74Schristos compiler command line. Enabled by default. Disable via 4120*75fd0b74Schristos --disable-werror. 4121*75fd0b74Schristos * configure: Regenerate. 4122*75fd0b74Schristos 4123*75fd0b74Schristos2005-03-16 Nick Clifton <nickc@redhat.com> 4124*75fd0b74Schristos 4125*75fd0b74Schristos * ecoff.c: Convert to ISO C90 formatting. 4126*75fd0b74Schristos 4127*75fd0b74Schristos2005-03-16 Alan Modra <amodra@bigpond.net.au> 4128*75fd0b74Schristos 4129*75fd0b74Schristos * elf32-ppc.c: Divide file into general and linker specific 4130*75fd0b74Schristos functions. Sort linker functions into roughly the order in which 4131*75fd0b74Schristos they are called by the ELF linker code. 4132*75fd0b74Schristos 4133*75fd0b74Schristos2005-03-16 Alan Modra <amodra@bigpond.net.au> 4134*75fd0b74Schristos 4135*75fd0b74Schristos * elf32-ppc.c (ppc_elf_create_linker_section): Set SEC_LINKER_CREATED 4136*75fd0b74Schristos on section. Correct comment, and add FIXME. 4137*75fd0b74Schristos (ppc_elf_additional_program_headers): Don't bump header count for 4138*75fd0b74Schristos interp. Test SEC_ALLOC, not SEC_LOAD, and don't test size. 4139*75fd0b74Schristos (ppc_elf_size_dynamic_sections): Don't strip sdata and sdata2, but 4140*75fd0b74Schristos do allocate memory if they need it. 4141*75fd0b74Schristos 4142*75fd0b74Schristos2005-03-15 Mikkel Krautz <krautz@gmail.com> 4143*75fd0b74Schristos 4144*75fd0b74Schristos * config.bfd (x86_64-elf): Add target. 4145*75fd0b74Schristos 4146*75fd0b74Schristos2005-03-15 Alan Modra <amodra@bigpond.net.au> 4147*75fd0b74Schristos 4148*75fd0b74Schristos * po/es.po: Commit new Spanish translation. 4149*75fd0b74Schristos 4150*75fd0b74Schristos2005-03-14 H.J. Lu <hongjiu.lu@intel.com> 4151*75fd0b74Schristos 4152*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relocate_section): Set symbo name 4153*75fd0b74Schristos for global symbol when reporting overflow. 4154*75fd0b74Schristos 4155*75fd0b74Schristos2005-03-11 Jakub Jelinek <jakub@redhat.com> 4156*75fd0b74Schristos 4157*75fd0b74Schristos * libbfd-in.h (_bfd_ar_spacepad): New prototype. 4158*75fd0b74Schristos * libbfd.h: Rebuilt. 4159*75fd0b74Schristos * archive.c (_bfd_ar_spacepad): New function. 4160*75fd0b74Schristos (_bfd_construct_extended_name_table, _bfd_write_archive_contents, 4161*75fd0b74Schristos bsd_write_armap, _bfd_archive_bsd_update_armap_timestamp, 4162*75fd0b74Schristos coff_write_armap): Use it. 4163*75fd0b74Schristos (bfd_ar_hdr_from_filesystem): Likewise. Fix HP-UX large 4164*75fd0b74Schristos uid/gid support. 4165*75fd0b74Schristos * archive64.c (bfd_elf64_archive_write_armap): Use _bfd_ar_spacepad. 4166*75fd0b74Schristos 4167*75fd0b74Schristos2005-03-10 Mark Kettenis <kettenis@gnu.org> 4168*75fd0b74Schristos 4169*75fd0b74Schristos * archive.c (_bfd_look_for_bfd_in_cache): Move declaration of 4170*75fd0b74Schristos has_table to the start of the function. 4171*75fd0b74Schristos 4172*75fd0b74Schristos2005-03-10 Ben Elliston <bje@au.ibm.com> 4173*75fd0b74Schristos 4174*75fd0b74Schristos * archive.c: Include hashtab.h. 4175*75fd0b74Schristos (struct ar_cache): Rename `arelt' to `arbfd' and remove `next'. 4176*75fd0b74Schristos (_bfd_look_for_bfd_in_cache): Reimplement using htab_find. 4177*75fd0b74Schristos (hash_file_ptr): New function. 4178*75fd0b74Schristos (eq_file_ptr): Likewise. 4179*75fd0b74Schristos (_bfd_add_bfd_to_archive_cache): Reimplement using a hash table. 4180*75fd0b74Schristos * libbfd-in.h: Include hashtab.h. 4181*75fd0b74Schristos (struct artdata): Change `cache' member type to htab_t. 4182*75fd0b74Schristos * libbfd.h: Rebuild. 4183*75fd0b74Schristos 4184*75fd0b74Schristos2005-03-08 Daniel Jacobowitz <dan@codesourcery.com> 4185*75fd0b74Schristos 4186*75fd0b74Schristos * configure.in: Bump version to 2.16.90. 4187*75fd0b74Schristos * configure: Regenerated. 4188*75fd0b74Schristos 4189*75fd0b74Schristos2005-03-07 Jakub Jelinek <jakub@redhat.com> 4190*75fd0b74Schristos 4191*75fd0b74Schristos * opncls.c (opncls_bread, opncls_bclose): Fix if pread resp. 4192*75fd0b74Schristos close is a function like macro in system headers. 4193*75fd0b74Schristos 4194*75fd0b74Schristos2005-03-07 Alan Modra <amodra@bigpond.net.au> 4195*75fd0b74Schristos 4196*75fd0b74Schristos PR ld/778 4197*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_create_dynamic_sections): Reinstate 4198*75fd0b74Schristos _GLOBAL_OFFSET_TABLE_ as a normal dynamic symbol. 4199*75fd0b74Schristos 4200*75fd0b74Schristos2005-03-06 Alan Modra <amodra@bigpond.net.au> 4201*75fd0b74Schristos 4202*75fd0b74Schristos * elf.c (elfcore_grok_win32pstatus): Warning fixes. 4203*75fd0b74Schristos 4204*75fd0b74Schristos2005-03-05 Alan Modra <amodra@bigpond.net.au> 4205*75fd0b74Schristos 4206*75fd0b74Schristos * po/bfd.pot: Regenerate. 4207*75fd0b74Schristos 4208*75fd0b74Schristos2005-03-05 Alan Modra <amodra@bigpond.net.au> 4209*75fd0b74Schristos 4210*75fd0b74Schristos * elf64-ppc.c (update_plt_info): Don't mark new ABI call syms 4211*75fd0b74Schristos with is_func. 4212*75fd0b74Schristos (func_desc_adjust): Force dot-syms local in executables as well 4213*75fd0b74Schristos as shared libs. 4214*75fd0b74Schristos 4215*75fd0b74Schristos2005-03-04 David Daney <ddaney@avtrex.com> 4216*75fd0b74Schristos 4217*75fd0b74Schristos * elfxx-mips.c (mips_elf_calculate_relocation): Handle special 4218*75fd0b74Schristos '__gnu_local_gp' symbol used by gas -mno-shared. 4219*75fd0b74Schristos 4220*75fd0b74Schristos2005-03-03 H.J. Lu <hongjiu.lu@intel.com> 4221*75fd0b74Schristos 4222*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Add "const char *" to 4223*75fd0b74Schristos elf_backend_section_from_phdr. 4224*75fd0b74Schristos 4225*75fd0b74Schristos * elf.c (bfd_section_from_phdr): Pass "proc" to the 4226*75fd0b74Schristos elf_backend_section_from_phdr hook. 4227*75fd0b74Schristos 4228*75fd0b74Schristos2005-03-02 Daniel Jacobowitz <dan@codesourcery.com> 4229*75fd0b74Schristos Joseph Myers <joseph@codesourcery.com> 4230*75fd0b74Schristos 4231*75fd0b74Schristos * elfxx-mips.c (struct mips_got_entry): Add tls_type. 4232*75fd0b74Schristos (struct mips_got_info): Add tls_gotno, tls_assigned_gotno, 4233*75fd0b74Schristos and tls_ldm_offset. 4234*75fd0b74Schristos (struct mips_elf_got_per_bfd_arg): Add global_count. 4235*75fd0b74Schristos (struct mips_elf_count_tls_arg): New. 4236*75fd0b74Schristos (struct mips_elf_hash_sort_data): Update comment for min_got_dynindx. 4237*75fd0b74Schristos (struct mips_elf_link_hash_entry): Add tls_type and tls_got_offset. 4238*75fd0b74Schristos (GOT_NORMAL, GOT_TLS_GD, GOT_TLS_LDM, GOT_TLS_IE) 4239*75fd0b74Schristos (GOT_TLS_OFFSET_DONE, GOT_TLS_DONE): Define. 4240*75fd0b74Schristos (TLS_RELOC_P): Define. 4241*75fd0b74Schristos (TP_OFFSET, DTP_OFFSET): Define. 4242*75fd0b74Schristos (dtprel_base, tprel_base): New functions. 4243*75fd0b74Schristos (mips_elf_link_hash_newfunc): Initialize tls_type. 4244*75fd0b74Schristos (mips_elf_got_entry_hash, mips_elf_got_entry_eq) 4245*75fd0b74Schristos (mips_elf_multi_got_entry_hash, mips_elf_multi_got_entry_eq): Handle 4246*75fd0b74Schristos TLS entries. 4247*75fd0b74Schristos (mips_tls_got_relocs, mips_elf_count_local_tls_relocs) 4248*75fd0b74Schristos (mips_elf_count_global_tls_entries, mips_elf_count_global_tls_relocs) 4249*75fd0b74Schristos (mips_elf_output_dynamic_relocation, mips_elf_initialize_tls_slots) 4250*75fd0b74Schristos (mips_tls_got_index): New functions. 4251*75fd0b74Schristos (mips_elf_local_got_index): Add new R_SYMNDX, H, and R_TYPE 4252*75fd0b74Schristos arguments. Pass them to mips_elf_create_local_got_entry. Use 4253*75fd0b74Schristos mips_tls_got_index. 4254*75fd0b74Schristos (mips_elf_global_got_index): Add new R_TYPE and INFO arguments. 4255*75fd0b74Schristos Handle TLS entries. 4256*75fd0b74Schristos (mips_elf_got_page, mips_elf_got16_entry): Update calls to 4257*75fd0b74Schristos mips_elf_create_local_got_entry. 4258*75fd0b74Schristos (mips_elf_create_local_got_entry): Add new R_SYMNDX, H, and R_TYPE 4259*75fd0b74Schristos arguments. Handle TLS entries. 4260*75fd0b74Schristos (mips_elf_sort_hash_table_f): Add non-TLS assertions. 4261*75fd0b74Schristos (mips_elf_record_local_got_symbol): Add new TLS_FLAG argument. Handle 4262*75fd0b74Schristos TLS entries. 4263*75fd0b74Schristos (mips_elf_record_global_got_symbol): Likewise. 4264*75fd0b74Schristos (mips_elf_make_got_per_bfd): Initialize new mips_got_info members. 4265*75fd0b74Schristos Count TLS entries. 4266*75fd0b74Schristos (mips_elf_merge_gots): Handle TLS entries when merging. 4267*75fd0b74Schristos (mips_elf_initialize_tls_index): New function. 4268*75fd0b74Schristos (mips_elf_set_global_got_offset): Handle TLS entries. 4269*75fd0b74Schristos (mips_elf_adjust_gp): Handle TLS. 4270*75fd0b74Schristos (mips_elf_multi_got): Remove redundant call to 4271*75fd0b74Schristos mips_elf_resolve_final_got_entries. Initialize global_count. 4272*75fd0b74Schristos Correct a comment. Initialize new TLS members of mips_got_info. 4273*75fd0b74Schristos Assign TLS GOT indexes for new GOTs. 4274*75fd0b74Schristos (mips_elf_create_got_section): Initialize new TLS members of 4275*75fd0b74Schristos mips_got_info. 4276*75fd0b74Schristos (mips_elf_calculate_relocation): Handle TLS relocs. 4277*75fd0b74Schristos (_bfd_mips_elf_check_relocs): Likewise. Update calls to changed 4278*75fd0b74Schristos functions. 4279*75fd0b74Schristos (_bfd_mips_elf_always_size_sections): Handle TLS. 4280*75fd0b74Schristos (_bfd_mips_elf_size_dynamic_sections): Likewise. 4281*75fd0b74Schristos (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Update calls to 4282*75fd0b74Schristos changed functions. 4283*75fd0b74Schristos (_bfd_mips_elf_copy_indirect_symbol): Copy tls_type. 4284*75fd0b74Schristos (_bfd_mips_elf_hide_symbol): Handle TLS. 4285*75fd0b74Schristos * elfn32-mips.c (elf_mips_howto_table_rel, elf_mips_howto_table_rela) 4286*75fd0b74Schristos (mips_reloc_map): Add TLS relocs. 4287*75fd0b74Schristos * elf32-mips.c (elf_mips_howto_table_rel, mips_reloc_map): Likewise. 4288*75fd0b74Schristos * elf64-mips.c (mips_elf64_howto_table_rel) 4289*75fd0b74Schristos (mips_elf64_howto_table_rela, mips_reloc_map): Likewise. 4290*75fd0b74Schristos * reloc.c: Define new MIPS TLS relocations. 4291*75fd0b74Schristos * libbfd.h, bfd-in2.h: Regenerated. 4292*75fd0b74Schristos 4293*75fd0b74Schristos2005-03-02 Jan Beulich <jbeulich@novell.com> 4294*75fd0b74Schristos 4295*75fd0b74Schristos * Makefile.am: Add dependency of cache.o on libiberty.h. 4296*75fd0b74Schristos * cache.c: Include libiberty.h. 4297*75fd0b74Schristos (bfd_open_file): Use unlink_if_ordinary instead of unlink. 4298*75fd0b74Schristos 4299*75fd0b74Schristos2005-03-01 Zack Weinberg <zack@codesourcery.com> 4300*75fd0b74Schristos 4301*75fd0b74Schristos * elf.c (bfd_section_from_shdr <default case>): Call 4302*75fd0b74Schristos elf_backend_section_from_shdr hook unconditionally, and return 4303*75fd0b74Schristos what it returns. 4304*75fd0b74Schristos (bfd_section_from_phdr): Similarly, for elf_backend_section_from_phdr. 4305*75fd0b74Schristos * elfxx-target.h (elf_backend_section_from_shdr) 4306*75fd0b74Schristos (elf_backend_section_from_phdr): Default to 4307*75fd0b74Schristos _bfd_elf_make_section_from_shdr and _bfd_elf_make_section_from_phdr 4308*75fd0b74Schristos respectively. 4309*75fd0b74Schristos 4310*75fd0b74Schristos2005-03-01 Alan Modra <amodra@bigpond.net.au> 4311*75fd0b74Schristos 4312*75fd0b74Schristos * targets.h: Typo fix. 4313*75fd0b74Schristos * bfd-in2.h: Regenerate. 4314*75fd0b74Schristos 4315*75fd0b74Schristos * bout.c (b_out_write_object_contents): Don't use sizeof on host 4316*75fd0b74Schristos structs to size on-disk structures. 4317*75fd0b74Schristos (b_out_set_section_contents): Size the external struct, not the 4318*75fd0b74Schristos internal one for on-disk size. 4319*75fd0b74Schristos (b_out_sizeof_headers): Likewise. 4320*75fd0b74Schristos 4321*75fd0b74Schristos2005-03-01 Alan Modra <amodra@bigpond.net.au> 4322*75fd0b74Schristos 4323*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_size_stubs): Override defined dot-sym 4324*75fd0b74Schristos entry points with the func descriptor as well as undefweak. 4325*75fd0b74Schristos 4326*75fd0b74Schristos2005-02-28 Ross Ridge <rridge@csclub.uwaterloo.ca> 4327*75fd0b74Schristos 4328*75fd0b74Schristos * peicode.h (pe_ILF_build_a_bfd): Do not assume that an @ will be 4329*75fd0b74Schristos present when IMPORT_NAME_UNDOECRATE is used. 4330*75fd0b74Schristos 4331*75fd0b74Schristos2005-02-28 H.J. Lu <hongjiu.lu@intel.com> 4332*75fd0b74Schristos 4333*75fd0b74Schristos PR 757 4334*75fd0b74Schristos * elf-bfd.h (_bfd_elf_merge_symbol): Add a pointer to unsigned 4335*75fd0b74Schristos int. 4336*75fd0b74Schristos 4337*75fd0b74Schristos * elf32-sh-symbian.c (sh_symbian_relocate_section): Pass NULL 4338*75fd0b74Schristos to _bfd_elf_merge_symbol. 4339*75fd0b74Schristos 4340*75fd0b74Schristos * elflink.c (_bfd_elf_merge_symbol): Use the pointer to 4341*75fd0b74Schristos unsigned int to return the alignment of the old common symbol 4342*75fd0b74Schristos in the dynamic object. 4343*75fd0b74Schristos (_bfd_elf_add_default_symbol): Pass NULL to 4344*75fd0b74Schristos _bfd_elf_merge_symbol. 4345*75fd0b74Schristos (elf_link_add_object_symbols): Pass &old_alignment to 4346*75fd0b74Schristos _bfd_elf_merge_symbol. Get the alignment of the new common 4347*75fd0b74Schristos symbol in the dynamic object. 4348*75fd0b74Schristos 4349*75fd0b74Schristos2005-02-24 Ben Elliston <bje@au.ibm.com> 4350*75fd0b74Schristos 4351*75fd0b74Schristos * coffcode.h (coff_sym_filepos): Remove GNU960 conditional code. 4352*75fd0b74Schristos * format.c (bfd_check_format_matches): Likewise. 4353*75fd0b74Schristos * archive.c (BFD_GNU960_ARMAG): Likewise. 4354*75fd0b74Schristos (bfd_generic_archive_p): Likewise. 4355*75fd0b74Schristos (_bfd_write_archive_contents): Likewise. 4356*75fd0b74Schristos 4357*75fd0b74Schristos2005-02-24 H.J. Lu <hongjiu.lu@intel.com> 4358*75fd0b74Schristos 4359*75fd0b74Schristos * configure.in: (AM_INIT_AUTOMAKE): Set version to 2.15.95. 4360*75fd0b74Schristos * configure: Regenerate. 4361*75fd0b74Schristos 4362*75fd0b74Schristos2005-02-24 Julian Brown <julian@sirius.codesourcery.com> 4363*75fd0b74Schristos 4364*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Force symbols in discarded 4365*75fd0b74Schristos COMDAT group sections to have default visibility. 4366*75fd0b74Schristos 4367*75fd0b74Schristos2005-02-24 Alan Modra <amodra@bigpond.net.au> 4368*75fd0b74Schristos 4369*75fd0b74Schristos * coffcode.h (coff_print_aux): Warning fix. 4370*75fd0b74Schristos * elf-m10300.c (mn10300_elf_relax_section): Use section->id 4371*75fd0b74Schristos instead of section pointer to identify. 4372*75fd0b74Schristos * coff-h8300.c (h8300_reloc16_extra_cases): Likewise. Allocate 4373*75fd0b74Schristos the correct size buffer for local sym mangling too. 4374*75fd0b74Schristos (h8300_bfd_link_add_symbols): Likewise. 4375*75fd0b74Schristos * elf32-sh-symbian.c (sh_symbian_process_embedded_commands): Fix 4376*75fd0b74Schristos warning. 4377*75fd0b74Schristos * elf32-sh64.c (shmedia_prepare_reloc): Use %B and %p in error message 4378*75fd0b74Schristos * elf32-xtensa.c (literal_value_hash): Warning fix. 4379*75fd0b74Schristos * versados.c (process_otr): Warning fix. 4380*75fd0b74Schristos (versados_canonicalize_reloc): Likewise. 4381*75fd0b74Schristos * vms-gsd.c (_bfd_vms_slurp_gsd): Warning fix. 4382*75fd0b74Schristos * vms.c (fill_section_ptr): Warning fix. 4383*75fd0b74Schristos 4384*75fd0b74Schristos2005-02-23 H.J. Lu <hongjiu.lu@intel.com> 4385*75fd0b74Schristos 4386*75fd0b74Schristos * coff-tic54x.c (SWAP_OUT_RELOC_EXTRA): Defined. 4387*75fd0b74Schristos * coff-tic80.c (SWAP_OUT_RELOC_EXTRA): Likewise. 4388*75fd0b74Schristos 4389*75fd0b74Schristos2005-02-23 Nick Clifton <nickc@redhat.com> 4390*75fd0b74Schristos 4391*75fd0b74Schristos * elfxx-mips.c (mips_elf_create_dynamic_relocation): Initialise 4392*75fd0b74Schristos the relvaddr field of the Elf32_crinfo structure. 4393*75fd0b74Schristos 4394*75fd0b74Schristos * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Initialise 4395*75fd0b74Schristos variables that are passed by reference to 4396*75fd0b74Schristos m68hc11_get_relocation_value in case that function does not 4397*75fd0b74Schristos initialise them. 4398*75fd0b74Schristos 4399*75fd0b74Schristos * elf32-cr16c.c (cr16c_elf_final_link_relocate): Remove duplicated 4400*75fd0b74Schristos return statements and replace with a single return at the end of 4401*75fd0b74Schristos the function. This helps pacify the flow analysis code in gcc 4.0. 4402*75fd0b74Schristos 4403*75fd0b74Schristos * elf.c (_bfd_elf_compute_section_file_positions): Initialise 4404*75fd0b74Schristos strtab to avoid compile time warning. 4405*75fd0b74Schristos 4406*75fd0b74Schristos2005-02-23 Ben Elliston <bje@au.ibm.com> 4407*75fd0b74Schristos 4408*75fd0b74Schristos * opncls.c (bfd_zalloc): Document this function. 4409*75fd0b74Schristos 4410*75fd0b74Schristos2005-02-21 H.J. Lu <hongjiu.lu@intel.com> 4411*75fd0b74Schristos 4412*75fd0b74Schristos * coffcode.h (sec_to_styp_flags): Replaced SEC_CLINK with 4413*75fd0b74Schristos SEC_TIC54X_CLINK. Replace SEC_BLOCK with SEC_TIC54X_BLOCK. 4414*75fd0b74Schristos Replace SEC_SHARED with SEC_COFF_SHARED. 4415*75fd0b74Schristos (styp_to_sec_flags): Likewise. 4416*75fd0b74Schristos 4417*75fd0b74Schristos * elfxx-target.h (TARGET_BIG_SYM): Remove SEC_ARCH_BIT_0. 4418*75fd0b74Schristos (TARGET_LITTLE_SYM): Likewise. 4419*75fd0b74Schristos 4420*75fd0b74Schristos * section.c (SEC_ARCH_BIT_0): Removed. 4421*75fd0b74Schristos (SEC_LINK_DUPLICATES_SAME_CONTENTS): Defined with 4422*75fd0b74Schristos SEC_LINK_DUPLICATES_ONE_ONLY and SEC_LINK_DUPLICATES_SAME_SIZE. 4423*75fd0b74Schristos (SEC_SHARED): Renamed to ... 4424*75fd0b74Schristos (SEC_COFF_SHARED): This. 4425*75fd0b74Schristos (SEC_BLOCK): Renamed to ... 4426*75fd0b74Schristos (SEC_TIC54X_BLOCK): This. 4427*75fd0b74Schristos (SEC_CLINK): Renamed to ... 4428*75fd0b74Schristos (SEC_TIC54X_CLINK): This. 4429*75fd0b74Schristos (SEC_XXX): Rearranged. Move SEC_COFF_SHARED_LIBRARY, 4430*75fd0b74Schristos SEC_COFF_SHARED, SEC_TIC54X_BLOCK and SEC_TIC54X_CLINK to the 4431*75fd0b74Schristos end. 4432*75fd0b74Schristos * bfd-in2.h: Regenerated. 4433*75fd0b74Schristos 4434*75fd0b74Schristos2005-02-21 Fred Fish <fnf@specifixinc.com> 4435*75fd0b74Schristos 4436*75fd0b74Schristos * dwarf2.c (find_abstract_instance_name): Call recursively 4437*75fd0b74Schristos to handle a DW_AT_specification. 4438*75fd0b74Schristos 4439*75fd0b74Schristos2005-02-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 4440*75fd0b74Schristos 4441*75fd0b74Schristos * elfxx-mips.c (ecoff_swap_rpdr_out, mips_elf_output_extsym, 4442*75fd0b74Schristos mips_elf_create_dynamic_relocation, 4443*75fd0b74Schristos _bfd_mips_elf_size_dynamic_sections, _bfd_mips_elf_final_link): 4444*75fd0b74Schristos Remove #if 0'd code. 4445*75fd0b74Schristos 4446*75fd0b74Schristos2005-02-21 Alan Modra <amodra@bigpond.net.au> 4447*75fd0b74Schristos 4448*75fd0b74Schristos * Makefile.am: Run "make dep-am" 4449*75fd0b74Schristos * Makefile.in: Regenerate. 4450*75fd0b74Schristos 4451*75fd0b74Schristos2005-02-21 Alan Modra <amodra@bigpond.net.au> 4452*75fd0b74Schristos 4453*75fd0b74Schristos * coffgen.c (bfd_coff_get_comdat_section): Check that 4454*75fd0b74Schristos coff_section_data isn't NULL. 4455*75fd0b74Schristos 4456*75fd0b74Schristos2005-02-21 Alan Modra <amodra@bigpond.net.au> 4457*75fd0b74Schristos 4458*75fd0b74Schristos * bfd-in.h (bfd_elf_bfd_from_remote_memory): Warning fix. 4459*75fd0b74Schristos * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Likewise. 4460*75fd0b74Schristos * coff-rs6000.c (xcoff_write_armap_big): Warning fixes. Remove 4461*75fd0b74Schristos useless assignments. 4462*75fd0b74Schristos (xcoff_write_archive_contents_big): Likewise. 4463*75fd0b74Schristos (_bfd_xcoff_put_ldsymbol_name): Likewise. 4464*75fd0b74Schristos * coff64-rs6000.c (_bfd_xcoff64_put_ldsymbol_name): Likewise. 4465*75fd0b74Schristos * coffgen.c (coff_write_symbols): Make "written" a bfd_vma. 4466*75fd0b74Schristos * cofflink.c (process_embedded_commands): Warning fixes. 4467*75fd0b74Schristos * cpu-arm.c: Delete unnecessary prototypes. Convert to C90. 4468*75fd0b74Schristos Warning fixes. 4469*75fd0b74Schristos * dwarf2.c: Warning fixes. 4470*75fd0b74Schristos * elf-bfd.h: Likewise. 4471*75fd0b74Schristos * elf-eh-frame.c: Likewise. 4472*75fd0b74Schristos * elf-strtab.c: Likewise. 4473*75fd0b74Schristos * elf.c: Likewise. 4474*75fd0b74Schristos * elf32-m68k.c: Likewise. 4475*75fd0b74Schristos * elf32-ppc.c: Likewise. 4476*75fd0b74Schristos * elf32-sh-symbian.c: Likewise. 4477*75fd0b74Schristos * elf32-sh.c: Delete unnecessary prototypes. Warning fixes. 4478*75fd0b74Schristos * elf64-sh64.c: Likewise. 4479*75fd0b74Schristos * peicode.h: Likewise. 4480*75fd0b74Schristos * elf64-mmix.c: Warning fixes. 4481*75fd0b74Schristos * elfcode.h: Likewise. 4482*75fd0b74Schristos * elfxx-mips.c: Likewise. 4483*75fd0b74Schristos * libbfd-in.h: Likewise. 4484*75fd0b74Schristos * libbfd.c: Likewise. 4485*75fd0b74Schristos * mach-o.c: Likewise. 4486*75fd0b74Schristos * merge.c: Likewise. 4487*75fd0b74Schristos * mmo.c: Likewise. 4488*75fd0b74Schristos * opncls.c: Likewise. 4489*75fd0b74Schristos * pef.c: Likewise. 4490*75fd0b74Schristos * srec.c: Likewise. 4491*75fd0b74Schristos * vms-hdr.c: Likewise. 4492*75fd0b74Schristos * vms-tir.c: Likewise. 4493*75fd0b74Schristos * xtensa-isa.c: Likewise. 4494*75fd0b74Schristos * xtensa-modules.c: Likewise. 4495*75fd0b74Schristos * xsym.c: Likewise. 4496*75fd0b74Schristos (pstrcmp): Use correct choice of string lengths. Fix return value. 4497*75fd0b74Schristos (bfd_sym_module_name): Correct string length. 4498*75fd0b74Schristos * bfd-in2.h: Regenerate. 4499*75fd0b74Schristos * libbfd.h: Regenerate. 4500*75fd0b74Schristos 4501*75fd0b74Schristos2005-02-17 Alexandre Oliva <aoliva@redhat.com> 4502*75fd0b74Schristos 4503*75fd0b74Schristos * elf32-frv.c (elf32_frv_relocate_section): Remove warning from 4504*75fd0b74Schristos uninitialized check_segment[1] in TLSMOFF case. 4505*75fd0b74Schristos Reported by Alan Modra. 4506*75fd0b74Schristos (elf32_frv_relocate_section): Improve errors and warnings. 4507*75fd0b74Schristos 4508*75fd0b74Schristos2005-02-17 Alan Modra <amodra@bigpond.net.au> 4509*75fd0b74Schristos 4510*75fd0b74Schristos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Fix warning. 4511*75fd0b74Schristos 4512*75fd0b74Schristos2005-02-16 Alan Modra <amodra@bigpond.net.au> 4513*75fd0b74Schristos 4514*75fd0b74Schristos * coff-arm.c (coff_arm_is_local_label_name): Warning fix. 4515*75fd0b74Schristos * elf32-frv.c (frvfdpic_relocs_info_hash): Likewise. 4516*75fd0b74Schristos * pef.c (bfd_pef_scan): Don't ignore return value of 4517*75fd0b74Schristos bfd_pef_scan_start_address. 4518*75fd0b74Schristos * mach-o.c (bfd_mach_o_scan): Don't ignore return value of 4519*75fd0b74Schristos bfd_mach_o_scan_start_address. 4520*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relax_brl): Rewrite for 32-bit bfd_vma. 4521*75fd0b74Schristos * elfxx-mips.c: Remove unnecessary prototypes. 4522*75fd0b74Schristos (sort_dynamic_relocs_64): Abort if not BFD64. 4523*75fd0b74Schristos 4524*75fd0b74Schristos2005-02-16 Alan Modra <amodra@bigpond.net.au> 4525*75fd0b74Schristos 4526*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_edit_toc): Skip toc if size is zero. 4527*75fd0b74Schristos Skip toc reloc adjust if reloc_count is zero. 4528*75fd0b74Schristos 4529*75fd0b74Schristos2005-02-15 Nigel Stephens <nigel@mips.com> 4530*75fd0b74Schristos Maciej W. Rozycki <macro@mips.com> 4531*75fd0b74Schristos 4532*75fd0b74Schristos * elf32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 4533*75fd0b74Schristos reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and 4534*75fd0b74Schristos R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. 4535*75fd0b74Schristos (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. 4536*75fd0b74Schristos (elf_mips16_gprel_howto): Likewise. Redefine src_mask and 4537*75fd0b74Schristos dst_mask. 4538*75fd0b74Schristos (mips16_gprel_reloc): Remove bit shuffling; call 4539*75fd0b74Schristos _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() 4540*75fd0b74Schristos and _bfd_mips16_elf_reloc_shuffle() instead. 4541*75fd0b74Schristos (mips16_reloc_map): New reloc map for MIPS16 relocs. 4542*75fd0b74Schristos (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 4543*75fd0b74Schristos relocs. 4544*75fd0b74Schristos (mips_elf32_rtype_to_howto): Fetch MIPS16 howtos from 4545*75fd0b74Schristos elf_mips16_howto_table_rel. 4546*75fd0b74Schristos * elf64-mips.c (mips16_elf64_howto_table_rel): New array for 4547*75fd0b74Schristos MIPS16 REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 4548*75fd0b74Schristos relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. 4549*75fd0b74Schristos (elf_mips16_jump_howto): Move into mips16_elf64_howto_table_rel. 4550*75fd0b74Schristos (elf_mips16_gprel_howto): Likewise. Redefine src_mask and 4551*75fd0b74Schristos dst_mask. 4552*75fd0b74Schristos (mips16_elf64_howto_table_rela): New array for MIPS16 RELA 4553*75fd0b74Schristos reloc howtos. Add R_MIPS16_26, R_MIPS16_GPREL, R_MIPS16_HI16 and 4554*75fd0b74Schristos R_MIPS16_LO16 relocs and R_MIPS16_GOT16 and R_MIPS16_CALL16 4555*75fd0b74Schristos placeholders. 4556*75fd0b74Schristos (mips16_gprel_reloc): Remove bit shuffling; call 4557*75fd0b74Schristos _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() 4558*75fd0b74Schristos and _bfd_mips16_elf_reloc_shuffle() instead. 4559*75fd0b74Schristos (mips16_reloc_map): New reloc map for MIPS16 relocs. 4560*75fd0b74Schristos (bfd_elf64_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 4561*75fd0b74Schristos relocs. 4562*75fd0b74Schristos (mips_elf64_rtype_to_howto): Fetch MIPS16 howtos from 4563*75fd0b74Schristos mips16_elf64_howto_table_rela or mips16_elf64_howto_table_rel. 4564*75fd0b74Schristos * elfn32-mips.c (elf_mips16_howto_table_rel): New array for MIPS16 4565*75fd0b74Schristos REL reloc howtos. Add R_MIPS16_HI16 and R_MIPS16_LO16 relocs and 4566*75fd0b74Schristos R_MIPS16_GOT16 and R_MIPS16_CALL16 placeholders. 4567*75fd0b74Schristos (elf_mips16_jump_howto): Move into elf_mips16_howto_table_rel. 4568*75fd0b74Schristos (elf_mips16_gprel_howto): Likewise. Redefine src_mask and 4569*75fd0b74Schristos dst_mask. 4570*75fd0b74Schristos (mips16_gprel_reloc): Remove bit shuffling; call 4571*75fd0b74Schristos _bfd_mips16_elf_reloc_unshuffle(), _bfd_mips_elf_gprel16_with_gp() 4572*75fd0b74Schristos and _bfd_mips16_elf_reloc_shuffle() instead. 4573*75fd0b74Schristos (mips16_reloc_map): New reloc map for MIPS16 relocs. 4574*75fd0b74Schristos (bfd_elf32_bfd_reloc_type_lookup): Use mips16_reloc_map for MIPS16 4575*75fd0b74Schristos relocs. 4576*75fd0b74Schristos (mips_elf_n32_rtype_to_howto): Fetch MIPS16 howtos from 4577*75fd0b74Schristos elf_mips16_howto_table_rela or elf_mips16_howto_table_rel. 4578*75fd0b74Schristos * elfxx-mips.c (_bfd_mips16_elf_reloc_unshuffle): New function to 4579*75fd0b74Schristos handle bit shuffling for MIPS16 relocs. 4580*75fd0b74Schristos (_bfd_mips16_elf_reloc_shuffle): Likewise. 4581*75fd0b74Schristos (_bfd_mips_elf_lo16_reloc): Use _bfd_mips16_elf_reloc_unshuffle() 4582*75fd0b74Schristos and _bfd_mips16_elf_reloc_shuffle(). 4583*75fd0b74Schristos (_bfd_mips_elf_generic_reloc): Likewise. 4584*75fd0b74Schristos (mips_elf_calculate_relocation): Likewise. Handle R_MIPS16_HI16 4585*75fd0b74Schristos and R_MIPS16_LO16. 4586*75fd0b74Schristos (mips_elf_obtain_contents): Remove bit shuffling. 4587*75fd0b74Schristos (mips_elf_perform_relocation): Likewise; call 4588*75fd0b74Schristos _bfd_mips16_elf_reloc_unshuffle() and _bfd_mips16_elf_reloc_shuffle() 4589*75fd0b74Schristos instead. 4590*75fd0b74Schristos (_bfd_mips_elf_relocate_section): Likewise. Handle R_MIPS16_HI16 4591*75fd0b74Schristos and R_MIPS16_LO16. 4592*75fd0b74Schristos * elfxx-mips.h (_bfd_mips16_elf_reloc_unshuffle): Declare. 4593*75fd0b74Schristos (_bfd_mips16_elf_reloc_shuffle): Likewise. 4594*75fd0b74Schristos * reloc.c (BFD_RELOC_MIPS16_HI16): New reloc. 4595*75fd0b74Schristos (BFD_RELOC_MIPS16_HI16_S): Likewise. 4596*75fd0b74Schristos (BFD_RELOC_MIPS16_LO16): Likewise. 4597*75fd0b74Schristos * bfd-in2.h: Regenerate. 4598*75fd0b74Schristos * libbfd.h: Regenerate. 4599*75fd0b74Schristos 4600*75fd0b74Schristos2005-02-15 Jan Beulich <jbeulich@novell.com> 4601*75fd0b74Schristos 4602*75fd0b74Schristos * elfxx-ia64.c (ia64_howto_table): Correct strings for 4603*75fd0b74Schristos R_IA64_DTPMOD64[LM]SB. 4604*75fd0b74Schristos 4605*75fd0b74Schristos2005-02-14 H.J. Lu <hongjiu.lu@intel.com> 4606*75fd0b74Schristos 4607*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_relax_section): Allow relax 4608*75fd0b74Schristos backward branch in the same section. 4609*75fd0b74Schristos (elfNN_ia64_relocate_section): Inform users that the input 4610*75fd0b74Schristos section is too big to relax br instruction when overflow 4611*75fd0b74Schristos happens to R_IA64_PCREL21B, R_IA64_PCREL21BI, R_IA64_PCREL21M 4612*75fd0b74Schristos and R_IA64_PCREL21F. 4613*75fd0b74Schristos 4614*75fd0b74Schristos2005-02-14 Orjan Friberg <orjanf@axis.com> 4615*75fd0b74Schristos 4616*75fd0b74Schristos * elfcore.h (elf_core_file_p): Move the call to 4617*75fd0b74Schristos elf_backend_object_p to allow the correct machine to be set before 4618*75fd0b74Schristos processing the program headers. 4619*75fd0b74Schristos 4620*75fd0b74Schristos2005-02-14 Nick Clifton <nickc@redhat.com> 4621*75fd0b74Schristos 4622*75fd0b74Schristos PR binutils/716 4623*75fd0b74Schristos * peicode.h (pe_bfd_copy_private_bfd_data): Copy the large address 4624*75fd0b74Schristos aware flag from the input bfd to the output bfd. 4625*75fd0b74Schristos 4626*75fd0b74Schristos2005-02-11 Maciej W. Rozycki <macro@mips.com> 4627*75fd0b74Schristos 4628*75fd0b74Schristos * elf32-mips.c (_bfd_mips_elf32_gprel16_reloc): Reject 4629*75fd0b74Schristos R_MIPS_LITERAL relocations for external symbols. 4630*75fd0b74Schristos * elf64-mips.c (mips_elf64_literal_reloc): Likewise. 4631*75fd0b74Schristos * elfn32-mips.c (mips_elf_literal_reloc): Likewise. 4632*75fd0b74Schristos 4633*75fd0b74Schristos2005-02-11 H.J. Lu <hongjiu.lu@intel.com> 4634*75fd0b74Schristos 4635*75fd0b74Schristos * bfd-in2.h: Rebuilt. 4636*75fd0b74Schristos 4637*75fd0b74Schristos2005-02-11 Paul Brook <paul@codesourcery.com> 4638*75fd0b74Schristos 4639*75fd0b74Schristos * elf-bfd.h (struct elf_link_hash_table): Add 4640*75fd0b74Schristos is_relocatable_executable. 4641*75fd0b74Schristos * elf.c (_bfd_elf_link_hash_table_init): Initialize it. 4642*75fd0b74Schristos * elflink.c (bfd_elf_link_record_dynamic_symbol): Create local dynamic 4643*75fd0b74Schristos symbols in relocatable executables. 4644*75fd0b74Schristos (bfd_elf_record_link_assignment): Create dynamic section symbols in 4645*75fd0b74Schristos relocatable executables. 4646*75fd0b74Schristos (_bfd_elf_link_renumber_dynsyms): Ditto. 4647*75fd0b74Schristos (bfd_elf_final_link): Ditto. 4648*75fd0b74Schristos * elf32-arm.c (elf32_arm_final_link_relocate): Copy absolute 4649*75fd0b74Schristos relocations into relocatable executables. 4650*75fd0b74Schristos (elf32_arm_check_relocs): Crate dynamic sections for relocatable 4651*75fd0b74Schristos executables. Also copy absolute relocations. 4652*75fd0b74Schristos (elf32_arm_adjust_dynamic_symbol): Don't create copy relocations 4653*75fd0b74Schristos in relocatable executables. 4654*75fd0b74Schristos (allocate_dynrelocs): Copy relocations for relocatable executables. 4655*75fd0b74Schristos Output dynamic symbols for symbols defined in linker scripts. 4656*75fd0b74Schristos 4657*75fd0b74Schristos2005-02-11 Nick Clifton <nickc@redhat.com> 4658*75fd0b74Schristos 4659*75fd0b74Schristos * libbfd.c (read_signed_leb128): Use an unsigned type for 'shift' 4660*75fd0b74Schristos to avoid a compile time warning. 4661*75fd0b74Schristos 4662*75fd0b74Schristos * coff-alpha.c (alpha_adjust_reloc_in): Remove redundant test from 4663*75fd0b74Schristos BFD_ASSERT. 4664*75fd0b74Schristos 4665*75fd0b74Schristos * coff-tic4x.c (coff_rtype_to_howto): Move definition before 4666*75fd0b74Schristos inclusion of coffcode.h so that it is actually picked up. 4667*75fd0b74Schristos 4668*75fd0b74Schristos * coffcode.h (coff_std_swap_table): Add an unused attribute in 4669*75fd0b74Schristos case it is not used. 4670*75fd0b74Schristos 4671*75fd0b74Schristos * elf32-ip2k.c (ip2k_call_opcode, IS_CALL_OPCODE): Remove unused 4672*75fd0b74Schristos structure and macro. 4673*75fd0b74Schristos 4674*75fd0b74Schristos * elf32-iq2000.c (iq2000_reloc_map): Remove unused structure and 4675*75fd0b74Schristos array. 4676*75fd0b74Schristos 4677*75fd0b74Schristos * elf32-m32r.c (m32r_reloc_map_old): Use #ifdef USE_M32R_OLD_RELOC 4678*75fd0b74Schristos to protect the declaration of this array. 4679*75fd0b74Schristos 4680*75fd0b74Schristos * xsym.c (bfd_sym_parse_contained_variables_table_entry_v32): 4681*75fd0b74Schristos Avoid call to memcpy with a size of 0. 4682*75fd0b74Schristos 4683*75fd0b74Schristos2005-02-12 Alan Modra <amodra@bigpond.net.au> 4684*75fd0b74Schristos 4685*75fd0b74Schristos * elf64-ppc.c (toc_adjusting_stub_needed): Return true for 4686*75fd0b74Schristos old-style branches to undefined dot-symbols which will be 4687*75fd0b74Schristos satisfied by a plt call. 4688*75fd0b74Schristos 4689*75fd0b74Schristos2005-02-11 Alan Modra <amodra@bigpond.net.au> 4690*75fd0b74Schristos 4691*75fd0b74Schristos * elf64-ppc.c (move_plt_plist): New function, extracted from.. 4692*75fd0b74Schristos (ppc64_elf_copy_indirect_symbol): ..here. 4693*75fd0b74Schristos (func_desc_adjust): Use move_plt_plist. 4694*75fd0b74Schristos 4695*75fd0b74Schristos2005-02-10 Paul Brook <paul@codesourcery.com> 4696*75fd0b74Schristos 4697*75fd0b74Schristos * elf32-arm.c (elf32_arm_final_link_relocate): Handle R_ARM_THM_PC9. 4698*75fd0b74Schristos 4699*75fd0b74Schristos2005-02-10 Paul Brook <paul@codesourcery.com> 4700*75fd0b74Schristos 4701*75fd0b74Schristos * elflink.c (bfd_elf_record_link_assignment): Make hidden and internal 4702*75fd0b74Schristos symbols local. 4703*75fd0b74Schristos (elf_link_renumber_hash_table_dynsyms): Ignore local symbols. 4704*75fd0b74Schristos (elf_link_renumber_local_hash_table_dynsyms): New function. 4705*75fd0b74Schristos (_bfd_elf_link_renumber_dynsyms): Number local dynamic symbols. 4706*75fd0b74Schristos 4707*75fd0b74Schristos2005-02-10 Jakub Jelinek <jakub@redhat.com> 4708*75fd0b74Schristos 4709*75fd0b74Schristos * bfd-in.h (BFD_LINKER_CREATED): Define. 4710*75fd0b74Schristos * bfd-in2.h: Rebuilt. 4711*75fd0b74Schristos * elflink.c (bfd_elf_size_dynamic_sections): Disregard 4712*75fd0b74Schristos BFD_LINKER_CREATED bfds when determining input bfds without 4713*75fd0b74Schristos .note.GNU-stack section. 4714*75fd0b74Schristos 4715*75fd0b74Schristos2005-02-10 Maciej W. Rozycki <macro@mips.com> 4716*75fd0b74Schristos 4717*75fd0b74Schristos * elf64-mips.c (mips16_gprel_reloc): Update a comment. 4718*75fd0b74Schristos * elfn32-mips.c (mips16_gprel_reloc): Keep R_MIPS16_GPREL 4719*75fd0b74Schristos relocations against external symbols unchanged. 4720*75fd0b74Schristos 4721*75fd0b74Schristos2005-02-08 Paul Brook <paul@codesourcery.com> 4722*75fd0b74Schristos 4723*75fd0b74Schristos * elflink.c (elf_link_input_bfd): Ignore symbols from null input 4724*75fd0b74Schristos sections. 4725*75fd0b74Schristos 4726*75fd0b74Schristos2005-02-08 Hans-Peter Nilsson <hp@axis.com> 4727*75fd0b74Schristos 4728*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Don't add "warning: " 4729*75fd0b74Schristos prefix here. 4730*75fd0b74Schristos 4731*75fd0b74Schristos2005-02-07 Maciej W. Rozycki <macro@mips.com> 4732*75fd0b74Schristos 4733*75fd0b74Schristos * elf64-mips.c: Fix formatting throughout. 4734*75fd0b74Schristos 4735*75fd0b74Schristos2005-02-07 Maciej W. Rozycki <macro@mips.com> 4736*75fd0b74Schristos 4737*75fd0b74Schristos * elfn32-mips.c (elf_mips_howto_table_rela): Fix a comment typo. 4738*75fd0b74Schristos 4739*75fd0b74Schristos2005-02-07 Alexandre Oliva <aoliva@redhat.com> 4740*75fd0b74Schristos 4741*75fd0b74Schristos * elf32-frv.c (FRVFDPIC_SYM_LOCAL): Remove special handling for 4742*75fd0b74Schristos *ABS*/*UND* sections. 4743*75fd0b74Schristos (elf32_frv_relocate_section): Move zero-addend-required error... 4744*75fd0b74Schristos (_frv_emit_got_relocs_plt_entries): ... here. Report error for 4745*75fd0b74Schristos missing needed TLS section. 4746*75fd0b74Schristos 4747*75fd0b74Schristos2005-02-07 Hans-Peter Nilsson <hp@axis.com> 4748*75fd0b74Schristos 4749*75fd0b74Schristos * aoutx.h (NAME(aout,find_nearest_line)): Correct case for N_SO 4750*75fd0b74Schristos being the last symbol. 4751*75fd0b74Schristos (aout_link_add_symbols): Just return TRUE if a warning 4752*75fd0b74Schristos symbol was last. 4753*75fd0b74Schristos 4754*75fd0b74Schristos2005-02-07 Maciej W. Rozycki <macro@mips.com> 4755*75fd0b74Schristos 4756*75fd0b74Schristos * elf32-mips.c (mips_elf_gprel32_reloc): Reject 4757*75fd0b74Schristos R_MIPS_GPREL32 relocations against external symbols. 4758*75fd0b74Schristos * elf64-mips.c (mips_elf64_gprel32_reloc): Replace an incorrect 4759*75fd0b74Schristos comment. 4760*75fd0b74Schristos 4761*75fd0b74Schristos2005-02-07 Alan Modra <amodra@bigpond.net.au> 4762*75fd0b74Schristos 4763*75fd0b74Schristos * elf-bfd.h (elf_string_from_elf_strtab): Delete macro. 4764*75fd0b74Schristos * elf.c (bfd_elf_string_from_elf_section): Expand occurrence of 4765*75fd0b74Schristos elf_string_from_elf_strtab. 4766*75fd0b74Schristos (_bfd_elf_setup_group_pointers, bfd_section_from_shdr): Likewise. 4767*75fd0b74Schristos (bfd_section_from_shdr): For SHT_SYMTAB, load SHT_SYMTAB_SHNDX too 4768*75fd0b74Schristos if it exists. Don't do the reverse for SHT_SYMTAB_SHNDX. For 4769*75fd0b74Schristos SHT_STRTAB, check whether the strtab is for symtab or dynsymtab by 4770*75fd0b74Schristos looking at cached symtab info first, before iterating over headers. 4771*75fd0b74Schristos For SHT_REL and SHT_RELA, load dynsymtab if needed. 4772*75fd0b74Schristos * elfcode.h (elf_object_p): Don't load section header stringtab 4773*75fd0b74Schristos specially. 4774*75fd0b74Schristos 4775*75fd0b74Schristos2005-02-06 H.J. Lu <hongjiu.lu@intel.com> 4776*75fd0b74Schristos 4777*75fd0b74Schristos * elf32-i386.c (elf_i386_relocate_section): Disallow R_386_GOTOFF 4778*75fd0b74Schristos against protected function when building shared library. 4779*75fd0b74Schristos 4780*75fd0b74Schristos PR 584 4781*75fd0b74Schristos * elf64-x86-64.c (is_32bit_relative_branch): New. 4782*75fd0b74Schristos (elf64_x86_64_relocate_section): Alllow R_X86_64_PC32 on a 4783*75fd0b74Schristos protected function symbol when building shared library for 4784*75fd0b74Schristos 32bit relative branch instruction. 4785*75fd0b74Schristos 4786*75fd0b74Schristos2005-02-06 Alan Modra <amodra@bigpond.net.au> 4787*75fd0b74Schristos 4788*75fd0b74Schristos * elf64-ppc.c (add_symbol_adjust): Don't create fake descriptor 4789*75fd0b74Schristos syms when doing a relocatable link. 4790*75fd0b74Schristos (ppc64_elf_gc_mark_hook): Check that syms are defined before looking 4791*75fd0b74Schristos at u.def.section. 4792*75fd0b74Schristos (ppc64_elf_tls_setup): Likewise. 4793*75fd0b74Schristos (ppc64_elf_edit_opd): Don't use an undefined func desc sym. 4794*75fd0b74Schristos 4795*75fd0b74Schristos2005-02-04 Alan Modra <amodra@bigpond.net.au> 4796*75fd0b74Schristos 4797*75fd0b74Schristos * elf64-ppc.c (struct ppc_link_hash_entry): Add "fake". 4798*75fd0b74Schristos (link_hash_newfunc): Clear all locals using memset. 4799*75fd0b74Schristos (make_fdh): Remove flags param. Always create fake func desc 4800*75fd0b74Schristos weak. Link the descriptor with the code entry sym. 4801*75fd0b74Schristos (ppc64_elf_archive_symbol_lookup): Don't return fake syms. 4802*75fd0b74Schristos (add_symbol_adjust): Adjust make_fdh call. 4803*75fd0b74Schristos (func_desc_adjust): Likewise. Twiddle any pre-existing fake 4804*75fd0b74Schristos descriptor to strong undefined if code entry is strong. 4805*75fd0b74Schristos 4806*75fd0b74Schristos2005-02-04 Alan Modra <amodra@bigpond.net.au> 4807*75fd0b74Schristos 4808*75fd0b74Schristos * elflink.c (bfd_elf_record_link_assignment): Do "provide" symbol 4809*75fd0b74Schristos lookup here. Set to new before calling bfd_link_repair_undef_list. 4810*75fd0b74Schristos (elf_smash_syms): Check that u.undef.weak isn't the not_needed bfd. 4811*75fd0b74Schristos 4812*75fd0b74Schristos2005-02-03 Alan Modra <amodra@bigpond.net.au> 4813*75fd0b74Schristos 4814*75fd0b74Schristos * linker.c (_bfd_link_hash_newfunc): Set all local fields. 4815*75fd0b74Schristos 4816*75fd0b74Schristos2005-02-03 Alan Modra <amodra@bigpond.net.au> 4817*75fd0b74Schristos 4818*75fd0b74Schristos * linker.c (_bfd_generic_link_add_one_symbol): Set u.undef.weak. 4819*75fd0b74Schristos * elflink.c (elf_smash_syms): Restore symbols that were undefweak 4820*75fd0b74Schristos before the as-needed lib was loaded. Abort on unexpected refs. 4821*75fd0b74Schristos 4822*75fd0b74Schristos2005-02-02 Alan Modra <amodra@bigpond.net.au> 4823*75fd0b74Schristos 4824*75fd0b74Schristos * elflink.c (elf_smash_syms): Expand comments. 4825*75fd0b74Schristos (elf_link_add_object_symbols): Only call elf_smash_syms for 4826*75fd0b74Schristos as-needed dynamic objects. 4827*75fd0b74Schristos 4828*75fd0b74Schristos * elfxx-ia64.c (elfNN_ia64_new_elf_hash_entry): Don't clear 4829*75fd0b74Schristos everything, just the field specific to ia64. 4830*75fd0b74Schristos * elf64-hppa.c (elf64_hppa_new_dyn_hash_entry): Likewise. 4831*75fd0b74Schristos 4832*75fd0b74Schristos2005-02-01 Alan Modra <amodra@bigpond.net.au> 4833*75fd0b74Schristos 4834*75fd0b74Schristos * elf64-ppc.c (func_desc_adjust): Move code creating func desc sym to.. 4835*75fd0b74Schristos (make_fdh): ..here. New function. Don't set BSF_OBJECT for 4836*75fd0b74Schristos undefined syms. 4837*75fd0b74Schristos (struct add_symbol_adjust_data): New. 4838*75fd0b74Schristos (add_symbol_adjust): Make an undefweak func desc for old ABI 4839*75fd0b74Schristos objects to link with --as-needed shared libs. Return fail status. 4840*75fd0b74Schristos Don't adjust old ABI func entry sym to weak if func desc syms 4841*75fd0b74Schristos isn't defined. 4842*75fd0b74Schristos (ppc64_elf_check_directives): Adjust call to add_symbol_adjust, 4843*75fd0b74Schristos and return status. 4844*75fd0b74Schristos 4845*75fd0b74Schristos2005-02-01 Hans-Peter Nilsson <hp@axis.com> 4846*75fd0b74Schristos 4847*75fd0b74Schristos * cpu-cris.c (get_compatible): Rearrange disabled code and comment 4848*75fd0b74Schristos for clarity. 4849*75fd0b74Schristos 4850*75fd0b74Schristos2005-02-01 Alan Modra <amodra@bigpond.net.au> 4851*75fd0b74Schristos 4852*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_check_directives): Move undefs list fixup.. 4853*75fd0b74Schristos * linker.c (bfd_link_repair_undef_list): ..to new function, but don't 4854*75fd0b74Schristos remove anything but new and undefweak. 4855*75fd0b74Schristos * elflink.c (_bfd_elf_link_create_dynamic_sections): Override any 4856*75fd0b74Schristos existing _DYNAMIC. 4857*75fd0b74Schristos (_bfd_elf_create_dynamic_sections): Formatting. 4858*75fd0b74Schristos (bfd_elf_record_link_assignment): Call bfd_link_repair_undef_list. 4859*75fd0b74Schristos (_bfd_elf_merge_symbol): Don't handle as-needed syms here. 4860*75fd0b74Schristos (struct elf_smash_data): New. 4861*75fd0b74Schristos (elf_smash_syms): New function. 4862*75fd0b74Schristos (elf_link_add_object_symbols): Call elf_smash_syms. Don't add 4863*75fd0b74Schristos unneeded dynamic objects to loaded list. 4864*75fd0b74Schristos (elf_link_output_extsym): Don't handle as-needed here. Strip 4865*75fd0b74Schristos bfd_link_hash_new symbols. 4866*75fd0b74Schristos * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't 4867*75fd0b74Schristos delref when dynindx is already -1. 4868*75fd0b74Schristos * elf64-alpha.c (elf64_alpha_output_extsym): Strip bfd_link_hash_new 4869*75fd0b74Schristos symbols. 4870*75fd0b74Schristos * elfxx-mips.c (mips_elf_output_extsym): Likewise. 4871*75fd0b74Schristos 4872*75fd0b74Schristos2005-02-01 Ben Elliston <bje@au.ibm.com> 4873*75fd0b74Schristos 4874*75fd0b74Schristos * elfxx-target.h (bfd_elfNN_bfd_discard_group): Redefine. 4875*75fd0b74Schristos 4876*75fd0b74Schristos2005-02-01 Ben Elliston <bje@au.ibm.com> 4877*75fd0b74Schristos 4878*75fd0b74Schristos * aout-arm.c, aout-target.h, aoutx.h, archive.c, armnetbsd.c, 4879*75fd0b74Schristos bfd-in.h, bfdio.c, coff-alpha.c, coff-arm.c, coff-h8300.c, 4880*75fd0b74Schristos coff-i860.c, coff-mcore.c, coff-or32.c, coff-ppc.c, coff-sh.c, 4881*75fd0b74Schristos coff-sparc.c, coffcode.h, coffgen.c, cofflink.c, cpu-cris.c, 4882*75fd0b74Schristos cpu-h8500.c, cpu-ns32k.c, ecoff.c, ecofflink.c, elf.c, 4883*75fd0b74Schristos elf32-dlx.c, elf32-fr30.c, elf32-frv.c, elf32-hppa.c, 4884*75fd0b74Schristos elf32-i860.c, elf32-ip2k.c, elf32-m32r.c, elf32-sh.c, 4885*75fd0b74Schristos elf32-v850.c, elf64-mips.c, elf64-sparc.c, elflink.c, 4886*75fd0b74Schristos i386aout.c, i386msdos.c, i386os9k.c, ieee.c, mach-o.c, 4887*75fd0b74Schristos nlm32-sparc.c, oasys.c, opncls.c, pdp11.c, pe-mips.c, peXXigen.c, 4888*75fd0b74Schristos pef.c, peicode.h, reloc.c, riscix.c, section.c, simple.c, som.c, 4889*75fd0b74Schristos sparclynx.c, targets.c, vms-misc.c, vms-tir.c, xsym.c, 4890*75fd0b74Schristos hosts/delta68.h, hosts/vaxbsd.h: Remove #if 0'd code 4891*75fd0b74Schristos throughout. Similarly, collapse #if 1'd code. 4892*75fd0b74Schristos 4893*75fd0b74Schristos2005-02-01 Ben Elliston <bje@au.ibm.com> 4894*75fd0b74Schristos 4895*75fd0b74Schristos * elf-bfd.h (bfd_elf_discard_group): Remove. 4896*75fd0b74Schristos * elf.c (bfd_elf_discard_group): Likewise. 4897*75fd0b74Schristos * elfxx-target.h (bfd_elfNN_bfd_discard_group): Remove macro. 4898*75fd0b74Schristos 4899*75fd0b74Schristos2005-01-31 Richard Sandiford <rsandifo@redhat.com> 4900*75fd0b74Schristos 4901*75fd0b74Schristos * elf-bfd.h (elf_backend_data): Add elf_backend_eh_frame_address_size. 4902*75fd0b74Schristos (_bfd_elf_eh_frame_address_size): Declare. 4903*75fd0b74Schristos * elfxx-target.h (elf_backend_eh_frame_address_size): Define a default. 4904*75fd0b74Schristos (elfNN_bed): Initialize elf_backend_eh_frame_address_size. 4905*75fd0b74Schristos * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Declare. 4906*75fd0b74Schristos (elf_backend_eh_frame_address_size): Define. 4907*75fd0b74Schristos * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): New function. 4908*75fd0b74Schristos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Get the address 4909*75fd0b74Schristos size from the new backend hook. 4910*75fd0b74Schristos (_bfd_elf_write_section_eh_frame): Likewise. 4911*75fd0b74Schristos (_bfd_elf_eh_frame_address_size): New function. 4912*75fd0b74Schristos 4913*75fd0b74Schristos2005-01-31 Andrew Cagney <cagney@gnu.org> 4914*75fd0b74Schristos 4915*75fd0b74Schristos * configure: Regenerate to track ../gettext.m4. 4916*75fd0b74Schristos 4917*75fd0b74Schristos2005-01-31 Mark Mitchell <mark@codesourcery.com> 4918*75fd0b74Schristos 4919*75fd0b74Schristos * elf32-arm.c (elf32_arm_symbian_special_sections): Do not set 4920*75fd0b74Schristos SHF_WRITE for .init_array, .fini_array, and .preinit_array. 4921*75fd0b74Schristos 4922*75fd0b74Schristos2005-01-31 Nick Clifton <nickc@redhat.com> 4923*75fd0b74Schristos 4924*75fd0b74Schristos * confg.bfd: Make targets scheduled for obsoletion (m68k-lynxos, 4925*75fd0b74Schristos sparc-lynxos, vax-vms) be obsolete. 4926*75fd0b74Schristos 4927*75fd0b74Schristos2005-01-28 Daniel Jacobowitz <dan@codesourcery.com> 4928*75fd0b74Schristos 4929*75fd0b74Schristos * elf-bfd.h (struct elf_backend_data): Add minpagesize. 4930*75fd0b74Schristos * elf32-arm.c (ELF_MINPAGESIZE): Define. 4931*75fd0b74Schristos * elf32-ppc.c (ELF_MINPAGESIZE): Define. 4932*75fd0b74Schristos * elfcode.h (elf_object_p): Use minpagesize instead of 4933*75fd0b74Schristos maxpagesize. 4934*75fd0b74Schristos * elfxx-target.h (ELF_MINPAGESIZE): Default to ELF_MAXPAGESIZE. 4935*75fd0b74Schristos (elfNN_bed): Include ELF_MINPAGESIZE. 4936*75fd0b74Schristos 4937*75fd0b74Schristos2005-01-28 Julian Brown <julian@codesourcery.com> 4938*75fd0b74Schristos 4939*75fd0b74Schristos * bin-in.h (bfd_elf32_arm_set_target_relocs): Update prototype. 4940*75fd0b74Schristos * bin-in2.h (bfd_elf32_arm_set_target_relocs): Update prototype. 4941*75fd0b74Schristos * elf32-arm.c (elf32_arm_link_hash_table): Add fix_v4bx flag. 4942*75fd0b74Schristos (bfd_elf32_arm_set_target_relocs): Add formal parameter fix_v4bx for 4943*75fd0b74Schristos passing flag value from ld. Set flag value in global hash table entry. 4944*75fd0b74Schristos (elf32_arm_final_link_relocate): Add code to implement R_ARM_V4BX 4945*75fd0b74Schristos relocation. 4946*75fd0b74Schristos 4947*75fd0b74Schristos2005-01-27 Andrew Cagney <cagney@gnu.org> 4948*75fd0b74Schristos 4949*75fd0b74Schristos * configure: Regenerate to track ../gettext.m4 change. 4950*75fd0b74Schristos 4951*75fd0b74Schristos2005-01-25 Mark Mitchell <mark@codesourcery.com> 4952*75fd0b74Schristos 4953*75fd0b74Schristos * elf32-arm.c (elf_backend_default_use_rela_p): Define to zero for 4954*75fd0b74Schristos SymbianOS. 4955*75fd0b74Schristos 4956*75fd0b74Schristos2005-01-25 Alexandre Oliva <aoliva@redhat.com> 4957*75fd0b74Schristos 4958*75fd0b74Schristos 2004-12-10 Alexandre Oliva <aoliva@redhat.com> 4959*75fd0b74Schristos * elf32-frv.c (elf32_frv_relocate_section): Force local binding 4960*75fd0b74Schristos for TLSMOFF. 4961*75fd0b74Schristos * reloc.c: Add R_FRV_TLSMOFF. 4962*75fd0b74Schristos * elf32-frv.c (elf32_frv_howto_table): Likewise. 4963*75fd0b74Schristos (frv_reloc_map, frv_reloc_type_lookup): Map it. 4964*75fd0b74Schristos (elf32_frv_relocate_section): Handle it. 4965*75fd0b74Schristos (elf32_frv_check_relocs): Likewise. 4966*75fd0b74Schristos * libbfd.h, bfd-in2.h: Rebuilt. 4967*75fd0b74Schristos 2004-11-26 Alexandre Oliva <aoliva@redhat.com> 4968*75fd0b74Schristos * elf32-frv.c (_frvfdpic_emit_got_relocs_plt_entries): Don't crash 4969*75fd0b74Schristos when given an undefweak TLS symbol. Fix constant TLS PLT entries 4970*75fd0b74Schristos such that they return the constant in gr9. 4971*75fd0b74Schristos (_frvfdpic_relax_tls_entries): Don't crash for undefweak TLS 4972*75fd0b74Schristos symbols. 4973*75fd0b74Schristos (_frvfdpic_size_got_plt): Set _cooked_size of dynamic sections. 4974*75fd0b74Schristos too, such that they shrink on relaxation. 4975*75fd0b74Schristos (elf32_frvfdpic_finish_dynamic_sections): Check __ROFIXUP_END__ as 4976*75fd0b74Schristos marking the position right past the _GLOBAL_OFFSET_TABLE_ value. 4977*75fd0b74Schristos (_frvfdpic_assign_plt_entries): Shrink constant TLS PLT entries 4978*75fd0b74Schristos if we can guarantee the use of 16-bit constants. 4979*75fd0b74Schristos 2004-11-10 Alexandre Oliva <aoliva@redhat.com> 4980*75fd0b74Schristos Introduce TLS support for FR-V FDPIC. 4981*75fd0b74Schristos * reloc.c: Add TLS relocations. 4982*75fd0b74Schristos * elf32-frv.c (elf32_frv_howto_table): Add TLS relocations. 4983*75fd0b74Schristos (elf32_frv_rel_tlsdesc_value_howto): New. 4984*75fd0b74Schristos (elf32_frv_rel_tlsoff_howto): New. 4985*75fd0b74Schristos (frv_reloc_map): Add new mappings. 4986*75fd0b74Schristos (struct frvfdpic_elf_link_hash_table): Add pointer to summary 4987*75fd0b74Schristos reloc information. 4988*75fd0b74Schristos (frvfdpic_dynamic_got_plt_info): New. 4989*75fd0b74Schristos (frvfdpic_plt_tls_ret_offset): New. 4990*75fd0b74Schristos (ELF_DYNAMIC_INTERPRETER, DEFAULT_STACK_SIZE): Move earlier. 4991*75fd0b74Schristos (struct _frvfdpic_dynamic_got_info): Likewise. Add TLS members. 4992*75fd0b74Schristos (struct _frvfdpic_dynamic_got_plt_info): Likewise. 4993*75fd0b74Schristos (FRVFDPIC_SYM_LOCAL): Regard symbols defined in the absolute 4994*75fd0b74Schristos section as local. 4995*75fd0b74Schristos (struct frvfdpic_relocs_info): Add TLS fields. 4996*75fd0b74Schristos (frvfdpic_relocs_info_hash): Warning clean up. 4997*75fd0b74Schristos (frvfdpic_relocs_info_find): Initialize tlsplt_entry. 4998*75fd0b74Schristos (frvfdpic_pic_merge_early_relocs_info): Merge TLS fields. 4999*75fd0b74Schristos (FRVFDPIC_TLS_BIAS): Define. 5000*75fd0b74Schristos (tls_biased_base): New. 5001*75fd0b74Schristos (_frvfdpic_emit_got_relocs_plt_entries): Deal with TLS 5002*75fd0b74Schristos relocations. 5003*75fd0b74Schristos (frv_reloc_type_lookup): Likewise. 5004*75fd0b74Schristos (frvfdpic_info_to_howto_rel): Likewise. 5005*75fd0b74Schristos (elf32_frv_relocate_section): Likewise. 5006*75fd0b74Schristos (_frv_create_got_section): Create the PLT section here. 5007*75fd0b74Schristos (elf32_frvfdpic_create_dynamic_sections): Not here. 5008*75fd0b74Schristos (_frvfdpic_count_nontls_entries): Move out of... 5009*75fd0b74Schristos (_frvfdpic_count_got_plt_entries): ... here. 5010*75fd0b74Schristos (_frvfdpic_count_tls_entries): Likewise. Add TLS support. 5011*75fd0b74Schristos (_frvfdpic_count_relocs_fixups): Likewise. Add relaxation 5012*75fd0b74Schristos support. 5013*75fd0b74Schristos (_frvfdpic_relax_tls_entries): New. 5014*75fd0b74Schristos (_frvfdpic_compute_got_alloc_data): Add TLS support. 5015*75fd0b74Schristos (_frvfdpic_get_tlsdesc_entry): New. 5016*75fd0b74Schristos (_frvfdpic_assign_got_entries): Add TLS support. 5017*75fd0b74Schristos (_frvfdpic_assign_plt_entries): Likewise. 5018*75fd0b74Schristos (_frvfdpic_reset_got_plt_entries): New. 5019*75fd0b74Schristos (_frvfdpic_size_got_plt): Move out of... 5020*75fd0b74Schristos (elf32_frvfdpic_size_dynamic_sections): ... here. 5021*75fd0b74Schristos (_frvfdpic_relax_got_plt_entries): New. 5022*75fd0b74Schristos (elf32_frvfdpic_relax_section): New. 5023*75fd0b74Schristos (elf32_frvfdpic_finish_dynamic_sections): Add TLS sanity check. 5024*75fd0b74Schristos (elf32_frv_check_relocs): Add TLS support. 5025*75fd0b74Schristos (bfd_elf32_bfd_relax_section): Define for FDPIC. 5026*75fd0b74Schristos * libbfd.h, bfd-in2.h: Rebuilt. 5027*75fd0b74Schristos 5028*75fd0b74Schristos2005-01-25 Alan Modra <amodra@bigpond.net.au> 5029*75fd0b74Schristos 5030*75fd0b74Schristos * elf.c (_bfd_elf_get_dynamic_reloc_upper_bound): Only include 5031*75fd0b74Schristos loadable reloc sections. 5032*75fd0b74Schristos (_bfd_elf_canonicalize_dynamic_reloc): Likewise. 5033*75fd0b74Schristos (_bfd_elf_get_synthetic_symtab): Return 0 if no dynamic syms. 5034*75fd0b74Schristos 5035*75fd0b74Schristos2005-01-25 Alan Modra <amodra@bigpond.net.au> 5036*75fd0b74Schristos 5037*75fd0b74Schristos * elflink.c (elf_link_add_object_symbols): Don't create link dynamic 5038*75fd0b74Schristos sections immediately when linking shared libs. Instead, wait until 5039*75fd0b74Schristos we know a lib is needed. 5040*75fd0b74Schristos (_bfd_elf_link_create_dynstrtab): Extract from.. 5041*75fd0b74Schristos (_bfd_elf_link_create_dynamic_sections_): ..here. 5042*75fd0b74Schristos (elf_add_dt_needed_tag): Call _bfd_elf_link_create_dynstrtab and 5043*75fd0b74Schristos _bfd_elf_link_create_dynamic_sections. Add abfd param. Allow 5044*75fd0b74Schristos for non-existent .dynamic. 5045*75fd0b74Schristos (elf_link_output_extsym): Don't complain about undefined symbols 5046*75fd0b74Schristos in as-needed dynamic libs that aren't actually linked. 5047*75fd0b74Schristos 5048*75fd0b74Schristos2005-01-24 Andrew Cagney <cagney@gnu.org> 5049*75fd0b74Schristos 5050*75fd0b74Schristos * configure: Regenerate, ../gettext.m4 was updated. 5051*75fd0b74Schristos 5052*75fd0b74Schristos2005-01-21 Ben Elliston <bje@au.ibm.com> 5053*75fd0b74Schristos 5054*75fd0b74Schristos * aout-encap.c: Remove unused file. 5055*75fd0b74Schristos 5056*75fd0b74Schristos2005-01-19 H.J. Lu <hongjiu.lu@intel.com> 5057*75fd0b74Schristos 5058*75fd0b74Schristos PR 679 5059*75fd0b74Schristos * elflink.c (_bfd_elf_dynamic_symbol_p): Only protected 5060*75fd0b74Schristos non-function symbols are local. 5061*75fd0b74Schristos (_bfd_elf_symbol_refs_local_p): Likewise. 5062*75fd0b74Schristos 5063*75fd0b74Schristos2005-01-18 Alan Modra <amodra@bigpond.net.au> 5064*75fd0b74Schristos 5065*75fd0b74Schristos * bfd.c (bfd_link_just_syms): Add abfd param. 5066*75fd0b74Schristos * bfd-in2.h: Regenerate. 5067*75fd0b74Schristos 5068*75fd0b74Schristos2005-01-17 Richard Sandiford <rsandifo@redhat.com> 5069*75fd0b74Schristos 5070*75fd0b74Schristos * elf-eh-frame.c (skip_cfa_op, skip_non_nops): New functions. 5071*75fd0b74Schristos (_bfd_elf_discard_section_eh_frame): Use them to interpret the CFA 5072*75fd0b74Schristos instructions. If the amount of padding is known, reduce the size 5073*75fd0b74Schristos of the CIE or FDE by that amount. 5074*75fd0b74Schristos 5075*75fd0b74Schristos2005-01-17 Richard Sandiford <rsandifo@redhat.com> 5076*75fd0b74Schristos 5077*75fd0b74Schristos * elf-bfd.h (struct cie): Use bfd_vmas for code_align, ra_column and 5078*75fd0b74Schristos augmentation_size. Use bfd_signed_vmas for data_align. 5079*75fd0b74Schristos * elf-eh-frame.c (read_uleb128, read_sleb128): Delete in favor of... 5080*75fd0b74Schristos (read_byte, skip_leb128, read_uleb128, read_sleb128): ...these new 5081*75fd0b74Schristos functions. Don't read past the end of the enclosing CIE or FDE. 5082*75fd0b74Schristos (skip_bytes): New utility function. 5083*75fd0b74Schristos (_bfd_elf_discard_section_eh_frame): Use new functions, adding more 5084*75fd0b74Schristos sanity checking. 5085*75fd0b74Schristos (_bfd_elf_write_section_eh_frame): Use new functions. 5086*75fd0b74Schristos 5087*75fd0b74Schristos2005-01-17 Richard Sandiford <rsandifo@redhat.com> 5088*75fd0b74Schristos 5089*75fd0b74Schristos * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use an 5090*75fd0b74Schristos assert-style REQUIRE() macro to handle sanity checks. 5091*75fd0b74Schristos 5092*75fd0b74Schristos2005-01-17 H.J. Lu <hongjiu.lu@intel.com> 5093*75fd0b74Schristos 5094*75fd0b74Schristos * dwarf2.c (dwarf2_debug): Move info_ptr_unit to ... 5095*75fd0b74Schristos (comp_unit): Here. 5096*75fd0b74Schristos (read_unsigned_leb128): Removed. 5097*75fd0b74Schristos (read_signed_leb128): Removed. 5098*75fd0b74Schristos (find_abstract_instance_name): Updated. 5099*75fd0b74Schristos (parse_comp_unit): Accept info_ptr_unit. 5100*75fd0b74Schristos (_bfd_dwarf2_find_nearest_line): Set info_ptr_unit for each 5101*75fd0b74Schristos comp unit and pass it to parse_comp_unit. 5102*75fd0b74Schristos 5103*75fd0b74Schristos * elf-eh-frame.c (read_unsigned_leb128): Moved to ... 5104*75fd0b74Schristos (read_signed_leb128): Moved to ... 5105*75fd0b74Schristos * libbfd.c: Here. 5106*75fd0b74Schristos 5107*75fd0b74Schristos * libbfd-in.h (read_unsigned_leb128): New prototype. 5108*75fd0b74Schristos (read_signed_leb128): Likewise. 5109*75fd0b74Schristos * libbfd.h: Regenerated. 5110*75fd0b74Schristos 5111*75fd0b74Schristos2005-01-17 Andrew Stubbs <andrew.stubbs@st.com> 5112*75fd0b74Schristos Nick Clifton <nickc@redhat.com> 5113*75fd0b74Schristos 5114*75fd0b74Schristos * cpu-sh.c (bfd_to_arch_table): Change arch_sh1_up to arch_sh_up, 5115*75fd0b74Schristos arch__sh4_nofp_up to arch_sh4_nofpu_up and arch_sh4a_nofp_up to 5116*75fd0b74Schristos arch_sh4a_nofpu_up in order to match the external names and make the 5117*75fd0b74Schristos testsuite's job easier. 5118*75fd0b74Schristos * archuires.c: Rename bfd_mach_sh2a_fake? to more meaningful 5119*75fd0b74Schristos names. 5120*75fd0b74Schristos * bfd-in2.h: Regenerate. 5121*75fd0b74Schristos 5122*75fd0b74Schristos2005-01-15 Andrew Cagney <cagney@gnu.org> 5123*75fd0b74Schristos 5124*75fd0b74Schristos * bfd.m4: New file. 5125*75fd0b74Schristos * acinclude.m4: Move BFD_NEED_DECLARATION, 5126*75fd0b74Schristos BFD_HAVE_SYS_PROCFS_TYPE and BFD_HAVE_SYS_PROCFS_TYPE_MEMBER to 5127*75fd0b74Schristos the new file bfd.m4. Include ../bfd/bfd.m4. 5128*75fd0b74Schristos * configure: Re-generate. 5129*75fd0b74Schristos 5130*75fd0b74Schristos2005-01-12 Alan Modra <amodra@bigpond.net.au> 5131*75fd0b74Schristos 5132*75fd0b74Schristos * elf32-ppc.c (ppc_elf_howto_raw): Delete RELAX32* entries. 5133*75fd0b74Schristos (ppc_elf_relax_section): Use PLT variants of RELAX32 relocs for 5134*75fd0b74Schristos reaching PLT. 5135*75fd0b74Schristos (ppc_elf_relocate_section): Handle R_PPC_RELAX32_PLT and 5136*75fd0b74Schristos R_PPC_RELAX32PC_PLT. 5137*75fd0b74Schristos 5138*75fd0b74Schristos2005-01-11 Alan Modra <amodra@bigpond.net.au> 5139*75fd0b74Schristos 5140*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_gc_sweep_hook): Follow indirect and warning 5141*75fd0b74Schristos symbols. 5142*75fd0b74Schristos * elf32-arm.c (elf32_arm_gc_sweep_hook): Likewise. 5143*75fd0b74Schristos * elf32-cris.c (cris_elf_gc_sweep_hook): Likewise. 5144*75fd0b74Schristos * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Likewise. 5145*75fd0b74Schristos * elf32-i386.c (elf_i386_gc_sweep_hook): Likewise. 5146*75fd0b74Schristos * elf32-m32r.c (m32r_elf_gc_sweep_hook): Likewise. 5147*75fd0b74Schristos * elf32-m68k.c (elf_m68k_gc_sweep_hook): Likewise. 5148*75fd0b74Schristos * elf32-ppc.c (ppc_elf_gc_sweep_hook): Likewise. 5149*75fd0b74Schristos * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise. 5150*75fd0b74Schristos * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise. 5151*75fd0b74Schristos * elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise. 5152*75fd0b74Schristos * elf32-vax.c (elf_vax_gc_sweep_hook): Likewise. 5153*75fd0b74Schristos * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Likewise. 5154*75fd0b74Schristos * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise. 5155*75fd0b74Schristos * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise. 5156*75fd0b74Schristos 5157*75fd0b74Schristos2005-01-11 Alan Modra <amodra@bigpond.net.au> 5158*75fd0b74Schristos 5159*75fd0b74Schristos * elf32-ppc.c (ppc_elf_create_dynamic_sections): Correct 5160*75fd0b74Schristos .dynsbss flags. 5161*75fd0b74Schristos 5162*75fd0b74Schristos2005-01-10 Inderpreet Singh <inderpreetb@noida.hcltech.com> 5163*75fd0b74Schristos 5164*75fd0b74Schristos * archures.c: Define bfd_mach_maxq10 and bfd_mach_maxq20. 5165*75fd0b74Schristos * bfd-in2.h: Regenerate. 5166*75fd0b74Schristos * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): Add code 5167*75fd0b74Schristos to support these new machine values. 5168*75fd0b74Schristos * cpu-maxq.c (bfd_maxq10_arch): New architecture definition for 5169*75fd0b74Schristos the maxq10. 5170*75fd0b74Schristos (bfd_maxq_arch): Update values for the maxq20. 5171*75fd0b74Schristos 5172*75fd0b74Schristos2005-01-10 Eric Botcazou <ebotcazou@libertysurf.fr> 5173*75fd0b74Schristos 5174*75fd0b74Schristos * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): When linking a 5175*75fd0b74Schristos non-shared object, do not reserve space in .plt and .rela.plt for 5176*75fd0b74Schristos regular symbols neither defined nor referenced in shared objects. 5177*75fd0b74Schristos 5178*75fd0b74Schristos2005-01-09 Eric Botcazou <ebotcazou@libertysurf.fr> 5179*75fd0b74Schristos 5180*75fd0b74Schristos * elf32-sparc.c (elf32_sparc_link_hash_table_create): Use bfd_zmalloc 5181*75fd0b74Schristos to zero the structure. 5182*75fd0b74Schristos (create_got_section): Use BFD_ASSERT instead of abort. 5183*75fd0b74Schristos * elf64-sparc.c (struct sparc64_elf_link_hash_table): New 'sgot' and 5184*75fd0b74Schristos 'srelgot' fields. 5185*75fd0b74Schristos (create_got_section): New function. 5186*75fd0b74Schristos (sparc64_elf_create_dynamic_sections): Likewise. 5187*75fd0b74Schristos (sparc64_elf_check_relocs): Invoke create_got_section instead of 5188*75fd0b74Schristos _bfd_elf_create_got_section. Use the sgot and srelgot shortcuts. 5189*75fd0b74Schristos (sparc64_elf_size_dynamic_sections): Use the srelgot shortcut. 5190*75fd0b74Schristos (sparc64_elf_relocate_section): Use the sgot and srelgot shortcuts. 5191*75fd0b74Schristos (sparc64_elf_finish_dynamic_symbol): Likewise. 5192*75fd0b74Schristos (sparc64_elf_finish_dynamic_sections): Use the sgot shortcut. 5193*75fd0b74Schristos (elf_backend_create_dynamic_sections): Define to 5194*75fd0b74Schristos sparc64_elf_create_dynamic_sections. 5195*75fd0b74Schristos 5196*75fd0b74Schristos2005-01-09 Eric Botcazou <ebotcazou@libertysurf.fr> 5197*75fd0b74Schristos 5198*75fd0b74Schristos * elf32-sparc.c (elf32_sparc_omit_section_dynsym): New function. 5199*75fd0b74Schristos (elf_backend_omit_section_dynsym): Define to it. 5200*75fd0b74Schristos * elf64-sparc.c (sparc64_elf_omit_section_dynsym): New function. 5201*75fd0b74Schristos (elf_backend_omit_section_dynsym): Define to it. 5202*75fd0b74Schristos 5203*75fd0b74Schristos2005-01-07 Jakub Jelinek <jakub@redhat.com> 5204*75fd0b74Schristos 5205*75fd0b74Schristos * elf.c (INCLUDE_SECTION_IN_SEGMENT): Don't put empty sections into 5206*75fd0b74Schristos PT_DYNAMIC segment, unless .dynamic. 5207*75fd0b74Schristos 5208*75fd0b74Schristos2005-01-06 Paul Brook <paul@codesourcery.com> 5209*75fd0b74Schristos 5210*75fd0b74Schristos * config.bfd: Add entry for arm-*-vxworks and arm-*-windiss. 5211*75fd0b74Schristos * configure.in: Add bfd_elf32_{big,little}arm_vxworks_vec. 5212*75fd0b74Schristos * configure: Regenerate. 5213*75fd0b74Schristos * elf32-arm.c: Add VxWorks target bfd. 5214*75fd0b74Schristos (USE_REL): Remove. 5215*75fd0b74Schristos (elf32_arm_link_hash_table): Add use_rel. 5216*75fd0b74Schristos (elf32_arm_link_hash_table_create, elf32_arm_final_link_relocate, 5217*75fd0b74Schristos elf32_arm_relocate_section): Replace USE_REL with runtime check. 5218*75fd0b74Schristos Correct offset calculation for RELA case. 5219*75fd0b74Schristos (elf_backend_may_use_rel_p, elf_backend_may_use_rela_p, 5220*75fd0b74Schristos elf_backend_default_use_rela_p, elf_backend_rela_normal): Define. 5221*75fd0b74Schristos (elf32_arm_vxworks_link_hash_table_create): New function. 5222*75fd0b74Schristos * targets.c (bfd_elf32_bigarm_vxworks_vec): Add declaration. 5223*75fd0b74Schristos (bfd_elf32_littlearm_vxworks_vec): Ditto. 5224*75fd0b74Schristos (_bfd_target_vector): Add bfd_elf32_{big,little}arm_vxworks_vec. 5225*75fd0b74Schristos 5226*75fd0b74Schristos2005-01-06 Alan Modra <amodra@bigpond.net.au> 5227*75fd0b74Schristos 5228*75fd0b74Schristos * elf64-ppc.c (struct ppc_link_hash_table): Add no_multi_toc and 5229*75fd0b74Schristos multi_toc_needed. 5230*75fd0b74Schristos (has_toc_reloc, makes_toc_func_call, call_check_in_progress): Define. 5231*75fd0b74Schristos (ppc64_elf_check_relocs): Update references to has_gp_reloc. 5232*75fd0b74Schristos (ppc64_elf_setup_section_lists): Add no_multi_toc parm, set htab bit. 5233*75fd0b74Schristos (ppc64_elf_next_toc_section): Heed no_multi_toc. 5234*75fd0b74Schristos (ppc64_elf_reinit_toc): Set multi_toc_needed. 5235*75fd0b74Schristos (toc_adjusting_stub_needed): Rewrite. 5236*75fd0b74Schristos (ppc64_elf_next_input_section): Use multi_toc_needed to shortcut 5237*75fd0b74Schristos toc tests. Adjust for toc_adjusting_stub_needed changes. 5238*75fd0b74Schristos (ppc64_elf_size_stubs): Update references to has_gp_reloc. 5239*75fd0b74Schristos * elf64-ppc.h (ppc64_elf_setup_section_lists): Update prototype. 5240*75fd0b74Schristos * section.c: Expand comment on backend bits. 5241*75fd0b74Schristos * bfd-in2.h: Regenerate. 5242*75fd0b74Schristos * libbfd.h: Regenerate. 5243*75fd0b74Schristos 5244*75fd0b74Schristos2005-01-06 Alan Modra <amodra@bigpond.net.au> 5245*75fd0b74Schristos 5246*75fd0b74Schristos * elf64-ppc.c (ppc64_elf_size_stubs): When determining need for 5247*75fd0b74Schristos toc adjusting stub, do not test source section flags. 5248*75fd0b74Schristos 5249*75fd0b74Schristos2005-01-05 Eric Botcazou <ebotcazou@libertysurf.fr> 5250*75fd0b74Schristos 5251*75fd0b74Schristos * elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows 5252*75fd0b74Schristos from STABS debugging sections again. 5253*75fd0b74Schristos 5254*75fd0b74Schristos2005-01-05 Fred Fish <fnf@specifixinc.com> 5255*75fd0b74Schristos 5256*75fd0b74Schristos * dwarf2.c (struct dwarf2_debug): Add info_ptr_unit member. 5257*75fd0b74Schristos (find_abstract_instance_name): New function. 5258*75fd0b74Schristos (scan_unit_for_functions): Handle DW_TAG_inlined_subroutine. 5259*75fd0b74Schristos (scan_unit_for_functions): Handle DW_AT_abstract_origin. 5260*75fd0b74Schristos (_bfd_dwarf2_find_nearest_line): Initialize info_ptr_unit. 5261*75fd0b74Schristos 5262*75fd0b74SchristosFor older changes see ChangeLog-2004 5263*75fd0b74Schristos 5264*75fd0b74SchristosCopyright (C) 2005 Free Software Foundation, Inc. 5265*75fd0b74Schristos 5266*75fd0b74SchristosCopying and distribution of this file, with or without modification, 5267*75fd0b74Schristosare permitted in any medium without royalty provided the copyright 5268*75fd0b74Schristosnotice and this notice are preserved. 5269*75fd0b74Schristos 5270*75fd0b74SchristosLocal Variables: 5271*75fd0b74Schristosmode: change-log 5272*75fd0b74Schristosleft-margin: 8 5273*75fd0b74Schristosfill-column: 74 5274*75fd0b74Schristosversion-control: never 5275*75fd0b74SchristosEnd: 5276