Changeset 609 for branches/GNU/src/binutils/bfd/ChangeLog
- Timestamp:
- Aug 16, 2003, 6:59:22 PM (22 years ago)
- File:
-
- 1 edited
-
branches/GNU/src/binutils/bfd/ChangeLog (modified) (3 diffs, 1 prop)
Legend:
- Unmodified
- Added
- Removed
-
branches/GNU/src/binutils/bfd/ChangeLog
-
Property cvs2svn:cvs-rev
changed from
1.1to1.1.1.2
r608 r609 1 2001-06-19 Philip Blundell <philb@gnu.org> 2 3 * configure.in: Set version to 2.11.2. 1 2003-06-12 Daniel Jacobowitz <drow@mvista.com> 2 3 * configure.in: Bump version to 2.14. 4 * configure: Regenerated. 5 6 2003-06-05 Daniel Jacobowitz <drow@mvista.com> 7 8 * elfcode.h (elf_slurp_reloc_table_from_section): Don't dereference 9 NULL function pointers. 10 11 2003-06-04 Svein E. Seldal <Svein.Seldal@solidas.com> 12 13 * coff-tic4x.c (ticoff0_swap_table, ticoff1_swap_table): Fixed 14 initialization bug 15 16 2003-06-03 Nick Clifton <nickc@redhat.com> 17 18 * elf32-v850.c (v850_elf_howto_t): Rename R_V850_32to 19 R_V850_ABS32. Add entry for R_V850_REL32. 20 (v850_elf_reloc_map): Likewise. 21 (v850_elf_check_relocs): Likewise. 22 (v850_elf_perform_relocation): Likewise. 23 (v850_elf_final_link_relocate): Likewise. Include computation 24 to make R_V850_REl32 pc-relative. 25 26 2003-06-02 Daniel Jacobowitz <drow@mvista.com> 27 28 * configure.in: Bump version to 2.13.92. 29 * configure: Regenerated. 30 31 2003-06-02 Daniel Jacobowitz <drow@mvista.com> 32 33 * config.bfd: Move obsolete entries out of the range of the 34 targmatch sed script. 35 36 2003-06-02 Daniel Jacobowitz <drow@mvista.com> 37 38 * config.bfd (mips*-dec-bsd*, mips*-*-pe*): Mark as obsolete. 39 40 2003-06-02 Daniel Jacobowitz <drow@mvista.com> 41 42 Merge from mainline: 43 2003-05-28 Alan Modra <amodra@bigpond.net.au> 44 * elf32-hppa.c (elf32_hppa_relocate_section): Delete bogus 45 undefined_symbol call. 46 47 2003-05-21 Nick Clifton <nickc@redhat.com> 48 * elf.c (bfd_elf_get_needed_list): Use is_elf_hash_table to check 49 the type of the has table in the bfd_link_info structure. 50 (bfd_elf_get_runpath_list): Likewise. 51 52 2003-05-20 Jakub Jelinek <jakub@redhat.com> 53 * elflink.h (elf_link_output_extsym): Only issue error about != 54 STV_DEFAULT symbols if they are bfd_link_hash_undefined. 55 56 * elflink.h (elf_merge_symbol): Change from: 57 2003-05-20 H.J. Lu <hongjiu.lu@intel.com> 58 * elflink.c (_bfd_elf_merge_symbol): Check ELF_LINK_DYNAMIC_DEF 59 when removing the old definition for symbols with non-default 60 visibility. 61 62 2003-05-31 Jakub Jelinek <jakub@redhat.com> 63 64 * elf32-ppc.c (allocate_dynrelocs): Use single slot for first 8192 65 plt entries, not just 8191. 66 67 2003-05-30 Daniel Jacobowitz <drow@mvista.com> 68 69 * elfxx-mips.c (_bfd_mips_elf_discard_info): Correct loop index. 70 Reported by Ken Faiczak <kfaiczak@SANDVINE.com>. 71 72 2003-05-29 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 73 74 * elfxx-mips.c: Don't force symbols local unconditionally. 75 76 2003-05-23 Stuart F. Downing <sdowning@fame.com> 77 78 * som.h: Define PA_2_0 before including a.out.h 79 80 2003-05-15 Daniel Jacobowitz <drow@mvista.com> 81 82 Merge from mainline: 83 84 2003-05-09 Martin Schwidefsky <schwidefsky@de.ibm.com> 85 * elf32-s390.c (ELIMINATE_COPY_RELOCS): Define as one. 86 (elf_s390_adjust_dynamic_symbol): For weak symbols, copy 87 ELF_LINK_NON_GOT_REF from weakdef. 88 (elf_s390_copy_indirect_symbol): Test whether the weakdef sym has 89 already been adjusted before treating it specially. 90 * el64-s390.c: Likwise. 91 92 2003-05-08 H.J. Lu <hongjiu.lu@intel.com> 93 * elflink.h (elf_add_default_symbol): After skipping the 94 unversioned symbol, go to non-default one. 95 96 2003-05-07 H.J. Lu <hongjiu.lu@intel.com> 97 * elflink.h (elf_link_check_versioned_symbol): Also handle the 98 case that a DSO references a hidden symbol which may be 99 satisfied by a versioned symbol in another DSO. 100 (elf_link_output_extsym): Check versioned definition for hidden 101 symbol referenced by a DSO. 102 103 2003-05-06 Alexandre Oliva <aoliva@redhat.com> 104 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Improve 105 error message for mixing different-endian files. Check for ABI 106 compatibility of input files with the selected emulation. 107 108 2003-05-13 Stephane Carrez <stcarrez@nerim.fr> 109 110 * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Check for 111 processor capability, allow merge of HC12 and HCS12 in some cases. 112 (m68hc11_elf_hash_table_create): Use bfd_malloc instead of bfd_zalloc. 113 * cpu-m68hc12.c (bfd_m68hc12s_arch): New struct. 114 (bfd_m68hc12_arch): Link it. 115 (scan_mach): New function. 116 117 2003-05-13 Andrew Haley <aph@redhat.com> 118 119 * elf.c (bfd_elf_hash): Mask lower 32 bits of hash. 120 121 2003-05-09 Alan Modra <amodra@bigpond.net.au> 122 123 * cpu-arm.c (arm_check_note): Warning fix. 124 * elf32-iq2000.c (iq2000_elf_check_relocs): Warning fixes. Arrange 125 to keep relocs if edited. 126 (iq2000_elf_print_private_bfd_data): Return TRUE. 127 * elfxx-ia64.c (elfNN_ia64_relax_section): Use ELFNN_R_SYM, not 128 ELF64_R_SYM. 129 (elfNN_ia64_relax_ldxmov): Warning fix. 130 * xtensa-isa.c (xtensa_add_isa): Warning fix. 131 * xtensa-modules.c (get_num_opcodes): Warning fix. 132 133 2003-05-09 Andrey Petrov <petrov@netbsd.org> 134 135 * elf.c (elf_fake_sections): Use correct cast for sh_name. 136 137 2003-05-05 Daniel Jacobowitz <drow@mvista.com> 138 139 * configure.in: Bump version to 2.13.91 for prerelease. 140 * configure: Regenerated. 141 142 2003-05-04 H.J. Lu <hjl@gnu.org> 143 144 * elflink.h (elf_merge_symbol): Correctly handle weak definiton. 145 146 2003-05-04 H.J. Lu <hjl@gnu.org> 147 148 * elflink.h (elf_merge_symbol): Don't record a hidden/internal 149 symbol dynamic. Check indirection when removing the old 150 definition for symbols with non-default visibility. 151 (elf_add_default_symbol): Skip when told by elf_merge_symbol. 152 153 2003-05-03 Daniel Jacobowitz <drow@mvista.com> 154 155 Merge from mainline: 156 2003-04-28 H.J. Lu <hjl@gnu.org> 157 * elfxx-ia64.c (elfNN_ia64_relax_section): Relax ldxmov during 158 the relax finalize pass. 159 160 * section.c (struct sec): Add need_finalize_relax and remove 161 flag11. 162 (STD_SECTION): Update struct sec initializer. 163 * bfd-in2.h: Regenerated. 164 165 2003-04-28 H.J. Lu <hjl@gnu.org> 166 * elflink.h (elf_merge_symbol): Call elf_backend_copy_indirect_symbol 167 to copy any information related to dynamic linking when we flip 168 the indirection. 169 170 2003-04-27 H.J. Lu <hjl@gnu.org> 171 * elf-bfd.h (ELF_LINK_DYNAMIC_DEF): New. 172 (ELF_LINK_DYNAMIC_WEAK): New. 173 174 * elflink.h (elf_merge_symbol): Add one argument to indicate if 175 a symbol should be skipped. Ignore definitions in dynamic 176 objects for symbols with non-default visibility. 177 (elf_add_default_symbol): Adjusted. 178 (elf_link_add_object_symbols): Check if a symbol should be 179 skipped. Don't merge the visibility field with the one from 180 a dynamic object. 181 (elf_link_check_versioned_symbol): Use undef_bfd. 182 (elf_link_output_extsym): Warn if a forced local symbol is 183 referenced from dynamic objects. Make non-weak undefined symbol 184 with non-default visibility a fatal error. 185 186 2003-05-02 Charles Lepple <clepple@ghz.cc> 187 Nick Clifton <nickc@redhat.com> 188 189 * acinclude.m4: Fix name of --enable-install-libbfd switch. 190 * aclocal.m4: Regenerate. 4 191 * configure: Regenerate. 5 6 2001-06-19 Andreas Jaeger <aj@suse.de> 7 8 Merge from mainline sources: 9 2001-06-19 Andreas Jaeger <aj@suse.de> 10 * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of 11 dynamic symbols. 12 2001-06-07 Andreas Jaeger <aj@suse.de> 13 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an 14 assertion. 15 (elf64_x86_64_check_relocs): Set an alignment of 8 for .rela 16 sections; handle further relocations. 17 2001-06-01 Andreas Jaeger <aj@suse.de> 18 * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8 19 relocation, small reformatting. 20 21 2001-06-14 Nick Clifton <nickc@redhat.com> 22 23 Merge from mainline sources: 24 2001-04-27 Sean McNeil <sean@mcneil.com> 25 * config.bfd: Add arm-vxworks target. 26 * coff-arm (coff_arm_relocate_section): Add in symbol value to 27 addend (fro VXworks targets). 28 2001-03-06 Nick Clifton <nickc@redhat.com> 29 * elf32-arm.h (elf32_arm_final_link_relocate): Clear bit zero 30 of offset in BLX(1) instruction. 31 * coff-arm.c (coff_arm_relocate_section): Clear bit zero of 32 offset in BLX(1) instruction. 33 Fix formatting. 34 2001-03-06 Nick Clifton <nickc@redhat.com> 35 * coff-arm.c (coff_arm_reloc_type_lookup): Add 36 BFD_RELOC_THUMB_PCREL_BLX. 37 2001-05-04 Nick Clifton <nickc@cambridge.redhat.com> 38 * elf32-arm.h (elf32_arm_final_link_relocate): Set 39 EF_ARM_HASENTRY if the start address is set. 40 41 2001-06-11 Alan Modra <amodra@bigpond.net.au> 42 43 * configure.in (<COREFILE case stmt>): Move powerpc-*-*bsd* after 44 powerpc-*-freebsd*. 45 46 Merge from mainline. 47 2001-06-02 H.J. Lu <hjl@gnu.org> 48 * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX 49 and ELFOSABI_HPUX. 50 * elf64-hppa.c (elf64_hppa_object_p): Likewise. 51 52 2001-06-02 Hans-Peter Nilsson <hp@axis.com> 53 * section.c (_bfd_strip_section_from_output): Handle NULL 54 output_section. 55 56 2001-05-30 Alan Modra <amodra@one.net.au> 57 * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for 58 millicode. Don't allocate .got and .rela.got space here.. 59 (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here.. 60 (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and 61 .rela.plt here.. 62 (hppa_handle_PIC_calls): ..nor here.. 63 (allocate_plt_and_got): ..instead do it all here. New function. 64 (elf32_hppa_size_dynamic_sections): Allocate local .got space and 65 call allocate_plt_and_got. No need to zap .got if not dynamic. 66 (elf32_hppa_final_link): Call regular bfd_final_link instead of 67 gc_common_final_link. 68 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. 69 (elf32_hppa_relocate_section): Use it here. 70 (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of 71 dynamic_sections_created. 72 (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym. 73 74 2001-05-28 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 75 * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of 76 a zeroing loop. 77 (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly. 78 (elf_link_input_bfd): Likewise. 79 (elf_reloc_link_order): Likewise. 80 (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64 81 relocations correctly. 82 83 2001-05-28 Alan Modra <amodra@one.net.au> 84 * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries 85 for symbols forced local that need plabels. 86 (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in 87 .plt.rela for local syms if non-shared. 88 (hppa_build_one_stub): Mask lsb of plt.offset. 89 (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set. 90 (clobber_millicode_symbols): Correct comment. 91 (elf32_hppa_relocate_section): Likewise. 92 (elf32_hppa_finish_dynamic_symbol): Likewise. 93 94 2001-05-25 Alan Modra <amodra@one.net.au> 95 * elf32-hppa.c (elf32_hppa_relocate_section): Don't allow 96 undefined millicode syms in shared libs. 97 (hppa_build_one_stub): Turn BFD_ASSERTs into aborts. 98 (elf32_hppa_check_relocs): Likewise. 99 (elf32_hppa_adjust_dynamic_symbol): Likewise. 100 (elf32_hppa_size_dynamic_sections): Likewise. 101 (elf32_hppa_relocate_section): Likewise. 102 (elf32_hppa_finish_dynamic_symbol): Likewise. 103 (elf32_hppa_finish_dynamic_sections): Likewise. 104 105 2001-05-23 Alexandre Oliva <aoliva@redhat.com> 106 * elf64-sparc.c (sparc64_elf_slurp_reloc_table): Fix typo 107 s/ENTIRES/ENTRIES/. 108 109 2001-05-23 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 110 * reloc.c (bfd_reloc_code_real): Add MIPS ELF64 relocations. 192 * Makefile.in: Regenerate. 193 194 2003-05-02 Andreas Jaeger <aj@suse.de> 195 196 * elf64-x86-64.c (elf_x86_64_copy_indirect_symbol): Don't copy 197 ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted. 198 (ELIMINATE_COPY_RELOCS): Define as one. Use throughout. 199 (elf_x86_64_adjust_dynamic_symbol): For weak symbols, copy 200 ELF_LINK_NON_GOT_REF from weakdef. 201 202 2003-05-01 Alan Modra <amodra@bigpond.net.au> 203 204 * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Test whether the 205 weakdef sym has already been adjusted before treating it specially. 206 * elf32-i386.c (elf_i386_copy_indirect_symbol): Don't copy 207 ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted. 208 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. 209 (ppc64_elf_check_relocs): Set ELF_LINK_NON_GOT_REF. 210 211 2003-04-26 Stephane Carrez <stcarrez@nerim.fr> 212 213 PR savannah/3331: 214 * elf32-m68hc11.c (m68hc11_elf_relax_section): Clear prev_insn_group 215 when we couldn't relax something. 216 217 2003-04-25 Alan Modra <amodra@bigpond.net.au> 218 219 * elflink.h (elf_merge_symbol): When we find a regular definition 220 for an indirect symbol, flip the indirection so that the old 221 direct symbol now points to the new definition. 222 223 2003-04-24 Roland McGrath <roland@redhat.com> 224 225 * elf.c (bfd_section_from_phdr): Map PT_GNU_EH_FRAME to "eh_frame_hdr". 226 227 2003-04-24 Alan Modra <amodra@bigpond.net.au> 228 229 * elf32-ppc.c: Formatting and comment fixes. 230 (ELIMINATE_COPY_RELOCS): Move before ppc_elf_copy_indirect_symbol. 231 (ppc_elf_copy_indirect_symbol): Copy flags here for weakdefs. 232 233 2003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com> 234 235 * archures.c (bfd_mach_h8300hn, bfd_mach_h8300sn): Added. 236 * bfd-in2.h: Rebuilt. 237 * coff-h8300.c (BADMAG): Add check for H8300HNBADMAG & H8300SNBADMAG. 238 * coffcode.h (coff_set_arch_mach_hook): Add case for H8300HNMAGIC 239 & H8300SNMAGIC. 240 (coff_set_flags): Add case for bfd_mach_h8300hn & bfd_mach_h8300sn. 241 * cpu-h8300.c (h8300_scan): Handle h8300hn, h8300sn. 242 (h8300sn_info_struct, h8300hn_info_struct): New. 243 * elf32-h8300.c (elf32_h8_mach): Handle case for h8300hn & h8300sn 244 (elf32_h8_final_write_processing): Likewise. 245 246 2003-04-23 Kaz Kojima <kkojima@rr.iij4u.or.jp> 247 248 * elf32-sh.c (tpoff): New. 249 (struct elf_sh_dyn_relocs): Remove tls_tpoff32. 250 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. 251 (allocate_dynrelocs): Don't make unnecessary dynamic TLS 252 relocations. Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses. 253 (sh_elf_relocate_section): Likewise. Remove unnecessary tests. 254 (dtpoff_base): Fix wrong indentation. 255 (sh_elf_check_relocs): Don't set DF_STATIC_TLS flag with non-TLS 256 relocations. Don't set tls_tpoff32 flag. Don't make unnecessary 257 R_SH_TLS_TPOFF32 relocations. 258 259 2003-04-23 J"orn Rennecke <joern.rennecke@superh.com> 260 261 * archures.c (enum bfd_architecture): Amend comment to refer to SuperH. 262 * cpu-sh.c: Likewise. 263 * elf32-sh.c: Likewise. 264 * reloc.c (bfd_reloc_code_real): Likewise. 265 * elf32-sh64-com.c: Change comment to refer to SuperH. 266 * elf32-sh64.c: Likewise. 267 * elf64-sh64.c: Likewise. 268 * bfd-in2.h (enum bfd_architecture): Regenerate. 269 270 2003-04-23 Alan Modra <amodra@bigpond.net.au> 271 272 From Julien LEMOINE <speedblue@debian.org> 273 * elf32-i386.c (elf_i386_info_to_howto): Delete. 274 (elf_info_to_howto): Define as elf_i386_info_to_howto_rel. 275 276 2003-04-22 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> 277 278 * archures.c: Replace references to Mitsubishi M32R with references 279 to Renesas M32R. 280 * relocs.c: Likewise. 281 * bfd-in2.h: Regenerate. 282 283 2003-04-21 Richard Henderson <rth@redhat.com> 284 285 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Return false for an 286 executable when a symbol is defined both regular and dynamic. 287 288 2003-04-21 Stephane Carrez <stcarrez@nerim.fr> 289 290 * Makefile.am (BFD32_BACKENDS): Add elf32-m68hc1x.lo. 291 (elf32-m68hc1x.lo): Update dependencies 292 * configure.in: Add elf32-m68hc1x.lo. 293 * configure: Rebuild. 294 * Makefile.in: Rebuild. 295 296 2003-04-21 Stephane Carrez <stcarrez@nerim.fr> 297 298 * elf32-m68hc1x.c: New file (from elf32-m68hc11.c and elf32-m68hc12.c) 299 (m68hc11_elf_hash_table_create): New function. 300 (elf32_m68hc11_link_hash_table_free): New function. 301 (stub_hash_newfunc): New function. 302 (m68hc11_add_stub): New function. 303 (elf32_m68hc11_add_symbol_hook): New function. 304 (elf32_m68hc11_setup_section_lists): New function. 305 (elf32_m68hc11_next_input_section): New function. 306 (elf32_m68hc11_size_stubs): New function. 307 (elf32_m68hc11_build_stubs): New function. 308 (m68hc11_get_relocation_value): New function. 309 (elf32_m68hc11_relocate_section): Call the above to redirect 310 some relocations to the trampoline code. 311 (m68hc11_elf_export_one_stub): New function. 312 (m68hc11_elf_set_symbol): New function. 313 (elf32_m68hc11_build_stubs): Call it via bfd_hash_traverse. 314 (m68hc11_elf_get_bank_parameters): Get parameters only when the info 315 is not yet initialized. 316 317 * elf32-m68hc1x.h: New file (from elf32-m68hc11.c and elf32-m68hc12.c) 318 (elf32_m68hc11_stub_hash_entry): New struct. 319 (m68hc11_page_info): Add trampoline handler address. 320 (m68hc11_elf_link_hash_table): Add stubs generation members. 321 (elf32_m68hc11_add_symbol_hook): Declare. 322 (elf32_m68hc11_setup_section_lists): Declare. 323 (elf32_m68hc11_size_stubs): Declare. 324 (elf32_m68hc11_build_stubs): Declare. 325 326 * elf32-m68hc11.c (m68hc11_elf_ignore_reloc): Move to elf32-m68hc1x.c. 327 (elf32_m68hc11_gc_mark_hook, elf32_m68hc11_gc_sweep_hook): Likewise. 328 (elf32_m68hc11_check_relocs, elf32_m68hc11_relocate_section): Ditto. 329 (_bfd_m68hc11_elf_set_private_flags): Ditto. 330 (_bfd_m68hc11_elf_merge_private_bfd_data): Ditto. 331 (_bfd_m68hc11_elf_print_private_bfd_data): Ditto. 332 (bfd_elf32_bfd_link_hash_table_create): Define. 333 (elf_backend_add_symbol_hook): Define. 334 (m68hc11_elf_bfd_link_hash_table_create): New function. 335 (m68hc11_elf_build_one_stub): New function. 336 (m68hc11_elf_size_one_stub): New function. 337 (m68hc11_elf_bfd_link_hash_table_create): Install the above. 338 (bfd_elf32_bfd_link_hash_table_create): Define. 339 340 * elf32-m68hc12.c (m68hc11_elf_ignore_reloc): Remove. 341 (m68hc12_addr_is_banked): Remove, use m68hc11_addr_is_banked. 342 (m68hc12_phys_addr): Ditto. 343 (m68hc12_phys_page): Ditto. 344 (m68hc12_elf_special_reloc): Move to elf32-m68hc1x.c. 345 (elf32_m68hc11_gc_mark_hook): Likewise. 346 (elf32_m68hc11_gc_sweep_hook): Likewise. 347 (elf32_m68hc11_check_relocs): Likewise. 348 (elf32_m68hc11_relocate_section): Likewise. 349 (_bfd_m68hc12_elf_set_private_flags): Likewise. 350 (_bfd_m68hc12_elf_merge_private_bfd_data): Likewise. 351 (_bfd_m68hc12_elf_print_private_bfd_data): Likewise. 352 (m68hc12_elf_build_one_stub): New function. 353 (m68hc12_elf_size_one_stub): New function. 354 (m68hc12_elf_bfd_link_hash_table_create): New function, use the above. 355 (elf_backend_add_symbol_hook): Define. 356 (elf_m68hc11_howto_table): Use TRUE for pcrel relocs; fix masks. 357 358 2003-04-18 Nick Clifton <nickc@redhat.com> 359 360 * format.c (bfd_check_format_matches): Only check associated 361 vector if the matching_vector has been created. 362 363 2003-04-15 Alexandre Oliva <aoliva@redhat.com> 364 365 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Fix typo in 366 2003-04-09's change. 367 368 2003-04-15 Brian Ford <ford@vss.fsi.com> 369 370 * peicode.h (coff_swap_scnhdr_in): If a section holds 371 uninitialized data and is from an object file or from an 372 executable image that has not initialized the s_size field, or if 373 the physical size is padded, use the virtual size (stored in 374 s_paddr) instead. 375 376 2003-04-15 H.J. Lu <hjl@gnu.org> 377 378 * elflink.h (elf_link_add_object_symbols): Properly report 379 filename for alignment reduction. 380 381 2003-04-15 Rohit Kumar Srivastava <rohits@kpitcummins.com> 382 383 * archures.c: Replace occurrances of 'Hitachi' with 'Renesas'. 384 * reloc.c: Likewise. 385 * coff-h8300.c: Likewise. 386 * coff-h8500.c: Likewise. 387 * coff-sh.c: Likewise. 388 * cpu-h8300.c: Likewise. 389 * cpu-sh.c: Likewise. 390 * elf32-h8300.c: Likewise. 391 * elf32-sh.c: Likewise. 392 * elf32-sh64-com.c: Likewise. 393 * elf32-sh64.c: Likewise. 394 * elf64-sh64.c: Likewise. 395 * bfd-in2.h: Regenerate. 396 397 2003-04-14 H.J. Lu <hjl@gnu.org> 398 399 * elflink.h (elf_link_add_object_symbols): Maintain maximum 400 alignment for common symbols. Warn reducing alignment for 401 common symbols. Report old filename when symbol size changes. 402 403 2003-04-12 Alexandre Oliva <aoliva@redhat.com> 404 405 * elfxx-mips.c (mips_elf_calculate_relocation): Adjust two other 406 occurrences of the same test changed in the previous patch. 407 Optimize. 408 409 2003-04-11 Alexandre Oliva <aoliva@redhat.com> 410 411 * elfxx-mips.c (mips_elf_get_global_gotsym_index): New. 412 (mips_elf_calculate_relocation): Decay GOT_PAGE/GOT_OFST to 413 GOT_DISP/addend only if the symbol got a global GOT entry. 414 415 2003-04-10 Alexandre Oliva <aoliva@redhat.com> 416 417 * elfxx-mips.c (mips_elf_calculate_relocation): Decay 418 GOT_PAGE/GOT_OFST referencing overridable symbol to 419 GOT_DISP/addend. 420 (_bfd_mips_elf_check_relocs): Handle GOT_PAGE referencing 421 global symbol as GOT_DISP. 422 423 2003-04-10 Bob Wilson <bob.wilson@acm.org> 424 425 * elf32-xtensa.c (elf_xtensa_relocate_section): Don't continue to the 426 next relocation on an undefined symbol. 427 428 2003-04-09 Richard Henderson <rth@redhat.com> 429 430 * elf64-alpha.c (elf64_alpha_relocate_section) <R_ALPHA_GPREL32>: 431 Ignore relocations against r_symndx == 0. 432 433 2003-04-09 H.J. Lu <hjl@gnu.org> 434 435 * elf64-alpha.c (elf64_alpha_relocate_section): Don't return 436 FALSE for undefined symbols. 437 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. 438 439 2003-04-09 Alexandre Oliva <aoliva@redhat.com> 440 441 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Try DWARF3-standard 442 and IRIX-specific shift-to-64-bit 4-byte lengths before following 443 addr_size. 444 445 2003-04-08 Alexandre Oliva <aoliva@redhat.com> 446 447 * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): Detect (ctor) 448 pointer size from ABI, not arch_bits_per_address. 449 450 2003-04-07 Kevin Buettner <kevinb@redhat.com> 451 452 * elfn32-mips.c (elf32_mips_grok_prstatus): Adjust core file related 453 constants for n32 ABI. 454 455 2003-04-06 Andrew Cagney <cagney@redhat.com> 456 457 * simple.c (bfd_simple_get_relocated_section_contents): Disable 458 free that leads to GDB vs BFD memory corruption. 459 460 2003-04-04 Stephane Carrez <stcarrez@nerim.fr> 461 462 * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Also adjust 463 symbols that mark the end of the section. 464 (m68hc11_elf_relax_section): Use R_M68HC11_PCREL_8 relocs when 465 converting to a relative branch so that the offset is computed after 466 the relaxation; also relocate a jsr into a bsr if possible but don't 467 relax them if they are to a far symbol as we need to call the 468 trampoline code. 469 (elf_m68hc11_howto_table): Set pcrel_offset to true. 470 471 2003-04-04 Svein E. Seldal <Svein.Seldal@solidas.com> 472 473 * archures.c: Namespace cleanup. Rename bfd_mach_c3x to 474 bfd_mach_tic3x and bfd_mach_c4x to bfd_mach_tic4x 475 * bfd-in2.h: Regenerate 476 * coff-tic4x.c: Namespace cleanup. Replace s/c4x/tic4x/ 477 * cpu-tic4x.c: Ditto 478 479 2003-04-03 Nick Clifton <nickc@redhat.com> 480 481 * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Compute ps and ss 482 differently for object files and executables. 483 * peicode.h (coff_swap_scnhdr_in): Only set the s_size field 484 for object files or for executables who have not already 485 initialised the field. 486 * libpei.h (bfd_pe_executable_p): New macro. Return true if 487 the PE format bfd is an executable. 488 489 2003-04-03 Alan Modra <amodra@bigpond.net.au> 490 491 * elf32-ppc.c (ppc_elf_check_relocs): Don't use SYMBOL_REFERENCES_LOCAL 492 here as it's too early to reliably determine locality. 493 (ppc_elf_gc_sweep_hook): Likewise. 494 (SYMBOL_REFERENCES_LOCAL): Expand comment. 495 496 2003-04-02 Bob Wilson <bob.wilson@acm.org> 497 498 * xtensa-modules.c: Remove comment indicating that this is a 499 generated file. 500 501 2003-04-02 Alan Modra <amodra@bigpond.net.au> 502 503 * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Test for NULL dynobj. 504 505 2003-04-01 Bob Wilson <bob.wilson@acm.org> 506 507 * Makefile.am (ALL_MACHINES): Add cpu-xtensa.lo. 508 (ALL_MACHINES_CFILES): Add cpu-xtensa.c. 509 (BFD32_BACKENDS): Add elf32-xtensa.lo, xtensa-isa.lo, and 510 xtensa-modules.lo. 511 (BFD32_BACKENDS_CFILES): Add elf32-xtensa.c, xtensa-isa.c, and 512 xtensa-modules.c. 513 (cpu-xtensa.lo): New target. 514 (elf32-xtensa.lo): Likewise. 515 (xtensa-isa.lo): Likewise. 516 (xtensa-modules.lo): Likewise. 517 * Makefile.in: Regenerate. 518 * archures.c (bfd_architecture): Add bfd_{arch,mach}_xtensa. 519 (bfd_archures_list): Add bfd_xtensa_arch. 520 * config.bfd: Handle xtensa-*-*. 521 * configure.in: Handle bfd_elf32_xtensa_{le,be}_vec. 522 * configure: Regenerate. 523 * reloc.c: Add BFD_RELOC_XTENSA_{RTLD,GLOB_DAT,JMP_SLOT,RELATIVE, 524 PLT,OP0,OP1,OP2,ASM_EXPAND,ASM_SIMPLIFY}. 525 * targets.c (bfd_elf32_xtensa_be_vec): Declare. 526 (bfd_elf32_xtensa_le_vec): Likewise. 527 (bfd_target_vector): Add bfd_elf32_xtensa_{be,le}_vec. 528 * cpu-xtensa.c: New file. 529 * elf32-xtensa.c: Likewise. 530 * xtensa-isa.c: Likewise. 531 * xtensa-modules.c: Likewise. 532 * libbfd.h: Regenerate. 533 * bfd-in2.h: Likewise. 534 535 2003-04-01 Nick Clifton <nickc@redhat.com> 536 537 * archures.c (bfd_mach_arm_unknown): Define. 538 * bfd-in.h (bfd_arm_merge_machines, bfd_arm+update_notes, 539 bfd_arm_get_mach_from_notes): Prototype. 540 * bfd-in2.h: Regenerate. 541 * coff-arm.c (coff_arm_merge_private_bfd_data): Call 542 bfd_arm_merge_machines. 543 (coff_arm_final_link_postscript): Call bfd_arm_update_notes. 544 * coffcode.h (coff_set_arch_mach_hook): Call 545 bfd_arm_get_mach_from_notes. 546 * coffgen.c (coff_real_object_p): Revert previous delta. 547 * cpu_arm.c (arm_check_note): New function. Examine a note in a 548 .note section. 549 (bfd_arm_merge_machines): New function: Handle the merging of ARM 550 binaries compiled for different architectures.. 551 (bfd_arm_update_notes): New function: Update an ARM note section. 552 (bfd_arm_get_mach_from_notes): New function: Extract a bfd machine 553 number from an ARM note section. 554 * elf32-arm.h (elf32_arm_object_p): Use 555 bfd_arm_get_mach_from_notes. 556 (elf32_arm_merge_private_bfd_data): Use bfd_arm_merge_machines. 557 (elf32_arm_final_write_processing): Use bfd_arm_update_notes. 558 559 2003-04-01 Ben Elliston <bje@wasabisystems.com> 560 561 * dwarf2.c (read_attribute_value): Correct typo in comment. 562 563 2003-04-01 Nick Clifton <nickc@redhat.com> 564 565 * dwarf2.c (concat_filename): Use bfd_malloc() and strdup() 566 instead of concat(). 567 (decode_line_info): Only free filename if it is not NULL. 568 (add_line_info): Make a copy of the filename when storing it into 569 the info structure. 570 571 2003-03-31 Andreas Schwab <schwab@suse.de> 572 Daniel Jacobowitz <drow@mvista.com> 573 574 * simple.c (bfd_simple_get_relocated_section_contents): Add 575 parameter symbol_table. Optionally use it instead of the symbol 576 table from the bfd. Save and restore output offsets and output 577 sections around bfd_get_relocated_section_contents. Fix a memory 578 leak. 579 (simple_save_output_info, simple_restore_output_info): New 580 functions. 581 * bfd-in2.h: Regenerate. 582 * dwarf2.c (read_abbrevs): Use 583 bfd_simple_get_relocated_section_contents instead of 584 bfd_get_section_contents. 585 (decode_line_info): Likewise. 586 (_bfd_dwarf2_find_nearest_line): Likewise. Don't call 587 find_rela_addend. 588 (find_rela_addend): Remove. 589 * elfxx-ia64.c (elfNN_ia64_reloc): Weaken sanity check for 590 debugging sections. 591 (elfNN_ia64_hash_table_create): Create the hash table with malloc, 592 not bfd_zalloc. 593 594 2003-03-31 David Heine <dlheine@suif.stanford.edu> 595 596 * aoutx.h (aout_link_hash_table_create): Use bfd_malloc instead of 597 bfd_alloc. 598 * dwarf2.c (concat_filename): Always allocate space for the 599 returned filename. 600 (decode_line_info): Free the allocated filename returned by 601 concat_filename. 602 * elf-eh-frame.c (bfd_elf_write_section_eh_frame): Fix memory leaks. 603 * elf.c (copy_private_bfd_data): Likewise. 604 (_bfd_elf_slurp_version_tables): Fix bug freeing contents pointer. 605 * elflink.h (elf_link_sort_relocs): Fix memory leak. 606 * format.c (bfd_check_format_matches): Likewise. 607 * linker.c (bfd_generic_final_link): Likewise. 608 * opncls.c (find_separate_debug_info): Likewise. 609 * simple.c (bfd_simple_get_relocated_section_contents): Likewise. 610 611 2003-03-28 H.J. Lu <hjl@gnu.org> 612 613 * elflink.h (elf_link_add_object_symbols): Correctly combine 614 visibilities. 615 616 2003-03-27 Jakub Jelinek <jakub@redhat.com> 617 618 * elfxx-ia64.c (elfNN_ia64_relax_section): Reset self_dtpmod_offset 619 to -1 before recomputing got offsets. 620 621 2003-03-26 Andreas Schwab <schwab@suse.de> 622 623 * elf32-m68k.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. 624 (elf_m68k_relocate_section): Use it to correctly handle symbols 625 forced to be local. 626 (elf_m68k_finish_dynamic_symbol): Emit RELATIVE reloc for got 627 entries for symbols that are forced to be local. 628 629 2003-03-25 Alexandre Oliva <aoliva@redhat.com> 630 631 * elfxx-mips.c (_bfd_mips_relax_section): New function. 632 * elfxx-mips.h (_bfd_mips_relax_section): Declare. 633 * elfn32-mips.c, elf64-mips.c: Use it. 634 635 2003-03-25 Stan Cox <scox@redhat.com> 636 Nick Clifton <nickc@redhat.com> 637 638 Contribute support for Intel's iWMMXt chip - an ARM variant: 639 640 * archures.c: Add bfd_mach_arm_iWMMXt. 641 * reloc.c: Add BFD_RELOC_ARM_CP_OFF_IMM_S2. 642 * bfd-in2.h: Regenerate. 643 * libbfd.h: Regenerate. 644 * coff-arm.c (coff_arm_merge_private_bfd_data): Allow iWMMXt 645 object files to be linked with XScale ones. 646 (coff_arm_final_link_postscript): Update note section. 647 * coffcode.h (coff_set_arch_mach_hook): Handle note section. 648 * coffgen.c (coff_real_object_p): Call bfd_coff_set_arch_mach_hook 649 after identifying a coff binary. 650 * cpu-arm.c (processors): Add iWMMXt. 651 (arch_inf): Likewise. 652 * elf32-arm.h (arm_object_p): Handle note section. 653 (elf32_arm_merge_private_bfd_data): Allow iWMMXt object files to 654 be linked with XScale ones. 655 (elf32_arm_section_flags): New function: Set flags on note section. 656 (elf32_arm_final_write_processing): Handle note section. 657 658 2003-03-21 DJ Delorie <dj@redhat.com> 659 660 * elf32-xstormy16.c (elf32_xstormy16_relocate_section): Call 661 _bfd_elf_rela_local_sym. 662 663 2003-03-20 H.J. Lu <hjl@gnu.org> 664 665 * elfxx-ia64.c (elfNN_ia64_relax_section): Don't try relax for 666 non-ELF outputs. 667 668 2003-03-20 Nick Clifton <nickc@redhat.com> 669 670 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Initialise $idata2 and 671 $idata5 in case bfd_coff_final_link is not called. 672 673 2003-03-19 Jakub Jelinek <jakub@redhat.com> 674 675 * elf64-sparc.c (struct sparc64_elf_section_data): Add reloc_count 676 field. 677 (canon_reloc_count): Define. 678 (sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table, 679 sparc64_elf_canonicalize_dynamic_reloc): Use it instead of 680 reloc_count. 681 (sparc64_elf_canonicalize_reloc): New routine. 682 (bfd_elf64_canonicalize_reloc): Define. 683 684 2003-03-18 Jakub Jelinek <jakub@redhat.com> 685 686 * elfxx-ia64.c (elfNN_ia64_relax_section): Handle relaxation 687 againt mergeable sections. Take r_addend into account when caching 688 trampolines. 689 690 2003-03-18 Richard Henderson <rth@redhat.com> 691 692 * elfxx-ia64.c (get_dyn_sym_info): Return NULL gracefully for 693 local symbols that have no dyninfo. 694 695 2003-03-14 Gene Smith <gene.smith@siemens.com> 696 697 * ieee.c (ieee_write_expression): Handle the case where symbol is 698 NULL. 699 General formatting improvements. 700 701 2003-03-13 Nick Clifton <nickc@redhat.com> 702 703 * configure.in (LINGUAS): Add zh_CN. 704 * configure: Regenerate. 705 * po/zh_CN.po: New file. 706 707 2003-03-13 Elias Athanasopoulos <elathan@phys.uoa.gr> 708 709 * aout-cris.c (BYTES_IN_WORD): Don't define. 710 aout-encap.c: Likewise. 711 aout-ns32k.c: Likewise. 712 aout-tic30.c: Likewise. 713 hp300bsd.c: Likewise. 714 i386aout.c: Likewise. 715 i386dynix.c: Likewise. 716 i386linux.c: Likewise. 717 i386lynx.c: Likewise. 718 i386mach3.c: Likewise. 719 m68k4knetbsd.c: Likewise. 720 m68klinux.c: Likewise. 721 m68klynx.c: Likewise. 722 m68knetbsd.c: Likewise. 723 m88kmach3.c: Likewise. 724 mipsbsd.c: Likewise. 725 newsos3.c: Likewise. 726 sparclinux.c: Likewise. 727 sparclynx.c: Likewise. 728 sparcnetbsd.c: Likewise. 729 vaxbsd.c: Likewise. Fix comment formatting. 730 731 2003-03-12 Alexandre Oliva <aoliva@redhat.com> 732 733 * Reverted 2003-03-02's patch. 734 735 * elfxx-target.h (bfd_elfNN_canonicalize_reloc): Make it 736 overridable. 737 * elf64-mips.c (mips_elf64_canonicalize_reloc, 738 mips_elf64_get_dynamic_reloc_upper_bound, 739 mips_elf64_canonicalize_dynamic_reloc): New, adapted from elf.c. 740 (bfd_elf64_get_canonicalize_reloc, 741 bfd_elf64_get_dynamic_reloc_upper_bound, 742 bfd_elf64_canonicalize_dynamic_reloc): Define. 743 (mips_elf64_slurp_reloc_table): Support dynamic. 744 (mips_elf64_slurp_one_reloc_table): Adjust. 745 746 2003-03-12 Nick Clifton <nickc@redhat.com> 747 748 * xsym.c (bfd_sym_fetch_type_information_table_entry): Change 749 'index' to 'offset' in test for zero value. 750 751 2003-03-11 Alexandre Oliva <aoliva@redhat.com> 752 753 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Do not create 754 dynamic relocations pointing to local or section symbols, use the 755 NULL symbol instead. Document the choice to not emit an 756 additional R_MIPS_64 relocation. 757 758 2003-03-11 Alan Modra <amodra@bigpond.net.au> 759 760 * elf32-ppc.c (ppc_elf_relocate_section): Subtract tls seg vma from 761 zero index dynamic tls relocs generated for the GOT. Tidy code. 762 Set "relocation" to 1 on DTPMOD32 relocs. Optimize HA adjustment. 763 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 764 765 2003-03-07 Alan Modra <amodra@bigpond.net.au> 766 767 * elf32-ppc.c (ppc_elf_relocate_section): Don't look for a nop after 768 a tls_get_addr call. 769 770 * elf32-ppc.c (ELIMINATE_COPY_RELOCS): Define as one. 771 (ppc_elf_adjust_dynamic_symbol): For weak symbols, copy 772 ELF_LINK_NON_GOT_REF from weakdef. 773 * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define as one. 774 (ppc64_elf_adjust_dynamic_symbol): For weak symbols, copy 775 ELF_LINK_NON_GOT_REF from weakdef. 776 * elf32-i386.c (ELIMINATE_COPY_RELOCS): Define as one. Use throughout. 777 (elf_i386_adjust_dynamic_symbol): For weak symbols, copy 778 ELF_LINK_NON_GOT_REF from weakdef. 779 780 2003-03-06 Jakub Jelinek <jakub@redhat.com> 781 Andrew Haley <aph@redhat.com> 782 783 * elflink.h (elf_bfd_discard_info): Don't process eh frames if 784 output is relocateable. 785 786 2003-03-06 Steven Konopa <skonopa@kgo.csc.com> 787 788 * som.c (som_fixup_formats): Correct formats for R_AUX_UNWIND and 789 R_COMMENT. 790 791 2003-03-06 Alan Modra <amodra@bigpond.net.au> 792 793 * elf32-ppc.c (ppc_elf_create_linker_section): Don't capitalize 794 error messages. 795 (ELIMINATE_COPY_RELOCS): Define to zero. 796 (ppc_elf_relocate_section): Don't deref htab->tls_sec when calculating 797 TLSLD relocs. Report reloc types on a number of errors. Optimize 798 LOCAL24PC check for non-local syms. Don't capitalize error messages. 799 * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define to zero. 800 (ppc64_elf_relocate_section): Don't deref htab->tls_sec when 801 calculating TLSLD relocs. Report reloc types on a number of errors. 802 Don't capitalize error messages. 803 804 2003-03-03 H.J. Lu <hjl@gnu.org> 805 806 * elfxx-ia64.c (USE_BRL): Removed. 807 (oor_ip): Removed. 808 809 2003-03-03 J"orn Rennecke <joern.rennecke@superh.com> 810 811 * elf32-sh.c (sh_elf_howto_tab): Make R_SH_IND12W into an ordinary 812 relocation (no special function), and make it non-partial_inplace. 813 (sh_elf_relax_section): When creating a bsr, use a consistent value 814 no matter if the symbol is extern or not; set addend to -4. 815 Don't swap load / non-load instructions for SH4. 816 (sh_elf_relax_delete_bytes): In R_SH_IND12W case, check the offset 817 rather than if the symbol is external to determine if adjusting the 818 offset makes sense. Adjust the addend too if appropriate. 819 (sh_elf_relocate_section): In R_SH_IND12W, don't fiddle with the 820 relocation. 821 822 2003-03-03 Nick Clifton <nickc@redhat.com> 823 824 * po/da.po: Installed latest translation. 825 826 2003-03-02 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 827 828 * elf32-mips.c (elf_mips_howto_table_rel): Change definition of 829 R_MIPS_PC16 to rightshift 2. 830 (elf_reloc_map mips_reloc_map): Map to rightshifted BFD reloc. 831 (bfd_elf32_bfd_reloc_type_lookup): Support 832 BFD_RELOC_MIPSEMB_16_PCREL_S2. 833 * elf64-mips.c (mips_elf64_howto_table_rel): Change definition of 834 R_MIPS_PC16 to rightshift 2. 835 (mips_elf64_howto_table_rela): Likewise. 836 (mips_reloc_map): Map to rightshifted BFD reloc. 837 * elfn32-mips.c: The same as in elf64-mips.c. 838 * elfxx-mips.c (mips_elf_got_for_ibfd): Typo in comment. 839 (mips_elf_calculate_relocation): Handle rightshifted addends for 840 R_MIPS_PC16. 841 * reloc.c (BFD_RELOC_MIPSEMB_16_PCREL_S2): New BFD relocation for 842 MIPS Embedded PIC. Remove superfluous empty COMMENT. 111 843 * libbfd.h: Regenerate. 112 844 * bfd-in2.h: Regenerate. 113 * aoutx.h (aout_@var{size}_machine_type): Add MIPS r12k support. 114 * archures.c (bfd_mach_mips12000): Define. 115 * cpu-mips.c (arch_info_struct): Add MIPS r12k support. 116 * elf32-mips.c (_bfd_mips_elf_final_write_processing): Add MIPS r12k 117 support. 118 (_bfd_mips_elf_size_dynamic_sections): Use official bfd typedef. 845 846 2003-02-28 Richard Henderson <rth@redhat.com> 847 848 * elfxx-ia64.c (elfNN_ia64_relax_section): Correct bounds 849 for ltoff22x relaxation. 850 851 2003-03-01 Alan Modra <amodra@bigpond.net.au> 852 853 * bfd-in.h (_bfd): Don't define. 854 * bfd.c: Rename occurrences of "struct _bfd" to "struct bfd". 855 * syms.c: Likewise. 119 856 * bfd-in2.h: Regenerate. 120 * elfxx-target.h: Do not redefine bfd_elfNN_bfd_make_debug_symbol. 121 122 2001-05-23 Nick Clifton <nickc@cambridge.redhat.com> 123 * elf-bfd.h (NUM_SHDR_ENTRIES): New macro: compute the number 124 of entries in a structured section. 125 * elf.c: Use new macro. 126 * elf32-i386.c: Use new macro. 127 * elf32-mips.c: Use new macro. 128 * elf64-alpha.c: Use new macro. 129 * elf64-sparc.c: Use new macro. 130 * elfcode.h: Use new macro. 131 * elflink.h: Use new macro. 132 133 2001-05-21 Andreas Jaeger <aj@suse.de> 134 * dwarf2.c (decode_line_info): Fix error message. 135 (read_abbrevs): Fix test for offset as suggested by Alan Modra and 136 adjust error message. 137 138 2001-05-17 H.J. Lu <hjl@gnu.org> 139 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the 140 version definition to basename of the output filename. 141 142 2001-05-15 Alexandre Oliva <aoliva@redhat.com> 143 * elf-m10300.c (mn10300_elf_relax_section): Don't relax 144 negative 32-bit operands to 16 operands when the operand is 145 going to be zero-extended by the modified opcode. 146 147 2001-05-11 Jakub Jelinek <jakub@redhat.com> 148 * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind 149 sections as well. 150 (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO 151 to .gnu.linkonce.t.FOO text section. 152 153 2001-05-11 Nick Clifton <nickc@cambridge.redhat.com> 154 * dwarf1.c (_bfd_dwarf1_find_nearest_line): Change type of 'addr' 155 to be unsigned long, in order to match its use. 156 157 2001-05-10 H.J. Lu <hjl@gnu.org> 158 * linker.c (_bfd_generic_link_add_one_symbol): Check loop on 159 indirect symbols. 160 161 2001-05-09 H.J. Lu <hjl@gnu.org> 162 * elflink.h (elf_link_add_object_symbols): Fix a typo. Allocate 163 versymhdr->sh_size bytes for extversym instead of hdr->sh_size. 164 Remove the unused veriable `dynver'. 165 166 2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 167 * elf.c (_bfd_elf_slurp_version_tables): Change maxidx to unsigned, it 168 is always a positive integer. Cast away sign mismatch. 169 * elf32-mips.c: Fix misleading comment and typo. 170 (_bfd_mips_elf_section_from_bfd_section): Remove unused attribute, use 171 correct data type. 172 * elflink.c: Fix typo. 173 (_bfd_elf_create_dynamic_sections): Remove superfluous initialization. 174 * ecoffswap.h (ecoff_swap_fdr_in): Cast away sign mismatch. 175 176 2001-05-03 Nick Clifton <nickc@cambridge.redhat.com> 177 * targets.c (_bfd_target_vector_entries): Compute value based on 178 the size of the _bfd_target_vector and not bfd_target_vector. 179 180 2001-05-03 Andreas Jaeger <aj@suse.de> 181 * elf64-gen.c (elf_generic_info_to_howto): Add unused attribute. 182 (elf_generic_info_to_howto_rel): Likewise. 183 * coff-alpha.c (reloc_nil): Likewise. 184 (alpha_ecoff_bad_format_hook): Likewise. 185 (alpha_adjust_reloc_out): Likewise. 186 (alpha_bfd_reloc_type_lookup): Likewise. 187 (alpha_convert_external_reloc): Likewise. 188 * elf64-alpha.c (elf64_alpha_reloc_nil): Likewise. 189 (elf64_alpha_reloc_bad): Likewise. 190 (elf64_alpha_reloc_gpdisp): Likewise. 191 (elf64_alpha_bfd_reloc_type_lookup): Likewise. 192 (elf64_alpha_info_to_howto): Likewise. 193 (elf64_alpha_add_symbol_hook): Likewise. 194 (elf64_alpha_create_got_section): Likewise. 195 (elf64_alpha_is_local_label_name): Likewise. 196 (elf64_alpha_merge_ind_symbols): Likewise. 197 * elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise. 198 (mips_elf64_get_reloc_upper_bound): Likewise. 199 * nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise. 200 (nlm_alpha_get_public_offset): Likewise. 201 202 2001-04-30 H.J. Lu <hjl@gnu.org> 203 * elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1 204 only for ELF_LINK_FORCED_LOCAL. 205 * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise. 206 * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise. 207 * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise. 208 * elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL 209 if the symbol has hidden or internal visibility. 210 211 2001-04-14 Mark Elbrecht <snowball3@bigfoot.com> 212 * coffcode.h (coff_write_object_contents): Use 213 bfd_coff_swap_filehdr_out instead of coff_swap_filehdr_out. 214 215 2001-04-09 Hans-Peter Nilsson <hp@axis.com> 216 * elflink.h (elf_fix_symbol_flags): For non-default visibilities, 217 only hide symbols marked STV_INTERNAL or STV_HIDDEN. 218 219 2001-04-05 Steven J. Hill <sjhill@cotw.com> 220 * config.bfd (mips*el*-*-linux-gnu*): Use traditional little 221 endian MIPS ELF target. 222 (mips*-*-linux-gnu*): Use traditional big endian MIPS ELF target. 223 * configure.in (bfd_elf64_tradbigmips_vec): New. Traditional 224 64bit big endian MIPS ELF target. 225 (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little 226 endian MIPS ELF target. 227 * configure: Regenerated. 228 * elf32-mips.c (IRIX_COMPAT): Handle traditional 64bit and 229 little endian targets. 230 (mips_elf_sym_is_global): Handle traditional targets. 231 * elf64-mips.c (bfd_elf64_tradbigmips_vec): New. Traditional 232 64bit big endian MIPS ELF target. 233 (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little 234 endian MIPS ELF target. 235 * targets.c: (_bfd_target_vector): Add bfd_elf64_tradbigmips_vec 236 and bfd_elf64_tradlittlemips_vec. 237 238 2001-04-04 Alan Modra <alan@linuxcare.com.au> 239 * elflink.h (elf_fix_symbol_flags): Call elf_backend_hide_symbol 240 when -Bsymbolic causes a symbol to no longer need a .plt entry. 241 242 2001-04-03 David Mosberger <davidm@hpl.hp.com> 243 * efi-app-ia32.c (ALIGN_SECTIONS_IN_FILE): Deleted. 244 245 2001-03-30 H.J. Lu <hjl@gnu.org> 246 * efi-app-ia32.c (PEI_TARGET_SUBSYSTEM): Rename from ... 247 (PEI_DEFAULT_TARGET_SUBSYSTEM): This. 248 249 2001-03-23 Nick Clifton <nickc@redhat.com> 250 * Makefile.am (BUILD_CFILES): New variable: List of C source 251 files created in build directory. 252 (BUILD_HFILES): New variable: List of header files created in 253 build directory. 254 (POTFILES): Delete. 255 (po/POTFILES.in): Replace rule with empty entry. 256 (po/SRC-POTFILES.in): New rule: Create a list of source files 257 in the source directory. 258 (po/BLD-POTFILES.in): New rule: Create a list of source files 259 in the build directory. 260 (MOSTLYCLEAN): Do not delete source files created in build 261 directory. 262 * Makefile.in: Regenerate. 263 * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in 264 into po/Makefile. 265 * configure: Regenerate. 266 * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES 267 and BLD_POTFILES. 268 Add .. to the search path when building bfd.pot. 269 Delete POTFILES when performing distclean. 270 Add comment describing why distclean is broken in maintainer mode. 271 * po/POTFILES.in: Delete. 272 * po/SRC-POTFILES.in: New file. 273 * po/BLD-POTFILES.in: New file. 274 * po/bfd.pot: Regenerate. 275 276 2001-03-06 Igor Shevlyakov <igor@windriver.com> 277 * archures.c (bfd_default_scan): Add Coldfire CPUs. 857 858 2003-02-27 Richard Henderson <rth@redhat.com> 859 860 * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add want_gotx; 861 (elfNN_ia64_check_relocs): Set it. 862 (allocate_global_data_got): Check it. 863 (allocate_local_got): Likewise. 864 (allocate_dynrel_entries): Likewise. 865 (elfNN_ia64_relax_ldxmov): New. 866 (elfNN_ia64_relax_section): Handle LTOFF22X, LDXMOV. 867 (elfNN_ia64_choose_gp): Split out from ... 868 (elfNN_ia64_final_link): ... here. 869 870 2003-02-27 Andrew Cagney <cagney@redhat.com> 871 872 * bfd.c (struct bfd): Rename "struct _bfd". 873 * bfd-in.h: Update copyright. 874 (struct bfd): Rename "struct _bfd". 875 (_bfd): Define for backward compatibility. 278 876 * bfd-in2.h: Regenerate. 279 * cpu-m68k.c: Add Coldfire CPUs for arch table. 280 * ieee.c (ieee_write_processor): Set proper id for 281 Coldfire CPUs. 282 283 2001-02-27 H.J. Lu <hjl@gnu.org> 284 * aoutx.h (NAME(aout,bfd_free_cached_info)): Return true if 285 abfd->tdata.aout_data == NULL. 286 287 2001-02-26 Nick Clifton <nickc@redhat.com> 288 * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Tidy 289 up, replacing multiple if statements with a switch. 290 (handle_COMDAT): New function. 291 292 2001-02-26 H.J. Lu <hjl@gnu.org> 293 * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Issue 294 a warning for section flags we do not handle instead of 295 aborting. 296 297 2001-02-19 Jakub Jelinek <jakub@redhat.com> 298 * elf32-sparc.c (elf32_sparc_finish_dynamic_symbol): Don't make PLT 299 entries that could serve as a definition for a weak symbol. 300 * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Likewise. 301 302 2001-02-18 Jim Kingdon <jkingdon@engr.sgi.com> 303 * irix-core.c (irix_core_core_file_p): Set the architecture (GDB 304 multiarch needs it). 305 306 2001-02-18 H.J. Lu <hjl@gnu.org> 307 * elflink.h (elf_link_input_bfd): Ignore invalid section symbol 308 index. 309 310 2001-02-18 Kazu Hirata <kazu@hxi.com> 311 * vms-misc.c: Fix formatting. 312 313 2001-02-16 Kazu Hirata <kazu@hxi.com> 314 * vms.c: Fix formatting. 315 316 2001-02-14 H.J. Lu <hjl@gnu.org> 317 * elf.c (elf_find_function): New function. 318 (_bfd_elf_find_nearest_line): Call elf_find_function () to find 319 the file name and function name. 320 321 2001-02-14 Nick Clifton <nickc@redhat.com> 322 * Makefile.am (BFD32_BACKENDS_CFILES): Remove peigen.c 323 (BFD64_BACKENDS): Add pepigen.c 324 Add rules to create peigen.c and pepigen.c from peXXigen.c. 325 326 2001-02-14 H.J. Lu <hjl@gnu.org> 327 * libcoff-in.h (pe_tdata): Add members target_subsystem and 328 force_minimum_alignment. 329 330 2001-02-13 Kazu Hirata <kazu@hxi.com> 331 * vms.c (vms_print_symbol): Remove unreachable code. 332 * rs6000-core.c: Fix formatting. 333 334 2001-02-13 David Mosberger <davidm@hpl.hp.com> 335 * peicode.h (coff_swap_filehdr_out) [COFF_IMAGE_WITH_PE]: Define 336 as _bfd_XXi_only_swap_filehdr_out. 337 (pe_mkobject) [PEI_FORCE_MINIMUM_ALIGNMENT]: Set 338 pe->force_minimum_alignment to TRUE. 339 (pe_mkobject) [PEI_TARGET_SUBSYSTEM]: Set pe->target_subsystem to 340 PEI_TARGET_SUBSYSTEM. 341 (pe_print_private_bfd_data): Call 342 _bfd_XX_print_private_bfd_data_common() instead of 343 _bfd_pe_print_private_bfd_data_common(). 344 (pe_bfd_copy_private_bfd_data): Call 345 _bfd_XX_bfd_copy_private_bfd_data_common() instead of 346 _bfd_pe_bfd_copy_private_bfd_data_common(). 347 (coff_bfd_copy_private_section_data): Define as 348 _bfd_XX_bfd_copy_private_section_data instead of 349 _bfd_pe_bfd_copy_private_section_data. 350 (coff_get_symbol_info): Define as _bfd_XX_get_symbol_info instead 351 of a _bfd_pe_get_symbol_info. 352 * peigen.c: Delete. 353 * peXXigen.c: Renamed from peigen.c. 354 (COFF_WITH_XX): Define this macro (will get expanded into 355 COFF_WITH_pep or COFF_WITH_pe, depending on whether this is being 356 compiled as peigen.c or pepigen.c. 357 [COFF_WITH_pep]: Include "coff/ia64.h" instead of "coff/i386.h" to 358 define the canonical PEP structures and definitions. 359 (_bfd_XXi_swap_aouthdr_out): If pe->force_minimum_alignment is in 360 effect, enforce minimum file and section alignments. If 361 extra->Subsystem is IMAGE_SUBSYSTEM_UNKNOWN, set it to 362 pe->target_subsystem (this defaults to IMAGE_SUBSYSTEM_UNKNOWN, 363 so, by default, this is a no-op). 364 * libpei.h: Rename COFF_WITH_PEP to COFF_WITH_pep. 365 (_bfd_XX_bfd_copy_private_bfd_data_common): Add macros to map 366 _bfd_XXfoo to _bfd_pepfoo if COFF_WIT_PEP is defined and to 367 _bfd_pefoo if it's not defined. Use these macros to define 368 coff swap macros. 369 * libcoff.h (pe_tdata): Add members target_subsystem and 370 force_minimum_alignment. 371 * efi-app-ia64.c (COFF_WITH_pep): Rename COFF_WITH_PEP to 372 COFF_WITH_pep. 373 (PEI_TARGET_SUBSYSTEM): Rename from PEI_DEFAULT_TARGET_SUBSYSTEM. 374 * configure.in (bfd_efi_app_ia64_vec): Use pepigen.lo instead of 375 peigen.lo. 376 * coff-ia64.c: Rename COFF_WITH_PEP to COFF_WITH_pep. 377 (AOUTSZ): Rename PEP64AOUTSZ and PEP64AOUTHDR to PEPAOUTSZ and 378 PEPAOUTHDR. 379 * Makefile.in (BFD64_BACKENDS): Mention pepigen.lo. 380 (BFD64_BACKENDS_CFILES): Mention pepigen.c 381 (peigen.c): Add rule to generate from peXXigen.c. 382 (pepigen.c): Ditto. 383 (pepigen.lo): List dependencies for pepigen.lo. 384 385 2001-02-11 H.J. Lu <hjl@gnu.org> 386 * elflink.h (elf_bfd_final_link): Use file_align for SYMTAB 387 alignment. 388 389 2001-02-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 390 * elf32-mips.c (mips_elf_create_dynamic_relocation): Undo patch 391 from 2000-10-13. Do not add the symbol's value for R_MIPS_REL32 392 relocations against dynsym symbols. 393 * elf32-mips.c (elf_mips_howto_table): Fix the comment on 394 the R_MIPS_26 relocation. 395 (mips_elf_calculate_relocation): Use (p + 4) instead of p for 396 the R_MIPS_26 relocation. 397 (mips_elf_perform_relocation): Fix the comment on the R_MIPS16_26 398 relocation. 399 * elf64-mips.c (mips_elf64_howto_table_rel): Fix the comment on 400 the R_MIPS_26 relocation. 401 (mips_elf64_howto_table_rela): Likewise. 402 * elf32-mips.c (struct mips_elf_link_hash_entry): Added no_fn_stub 403 member to mark symbols that have non-CALL relocations against 404 them. 405 (mips_elf_link_hash_newfunc): Initialize no_fn_stub. 406 (mips_elf_calculate_relocation): Handle R_MIPS_CALL16 like 407 R_MIPS_GOT16. 408 (_bfd_mips_elf_check_relocs): Set no_fn_stub for a symbol if a 409 non-CALL relocation against it is encountered. 410 (_bfd_mips_elf_copy_indirect_symbol): Merge no_fn_stub as well. 411 (_bfd_mips_elf_adjust_dynamic_symbol): Only create a stub if 412 no_fn_stub is not set. 413 * elf32-mips.c (mips_elf_output_extsym): Get the output section 414 information from the real symbol for indirect ones. 415 Check no_fn_stub to find out if a symbol has a function stub 416 indeed. 417 418 2001-02-09 Jakub Jelinek <jakub@redhat.com> 419 * elf64-sparc.c (sparc64_elf_copy_private_bfd_data): New function. 420 421 2001-02-09 Mark Kettenis <kettenis@gnu.org> 422 * elf32-sparc.c (_bfd_sparc_elf_howto_table): Treat R_SPARC_UA32 423 similar to R_SPARC_32. 424 * elf64-sparc.c (sparc64_elf_howto_table): Likewise. 425 426 2001-02-08 Richard Henderson <rth@redhat.com> 427 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Respect weakness 428 before visibility. Locally defined protected symbols are not 429 dynamic. 430 431 2001-02-07 Jakub Jelinek <jakub@redhat.com> 432 * elflink.h (is_global_symbol_definition): Rename to 433 is_global_data_symbol_definition and have it reject function 434 symbols. 435 (elf_link_is_defined_archive_symbol): Use renamed function. 436 437 2001-02-07 Todd Vierling <tv@wasabisystems.com> 438 * libbfd-in.h (bfd_target_vector): Change extern array to pointer. 439 * libbfd.h (bfd_target_vector): Likewise. 440 * targets.c (bfd_target_vector): Rename to _bfd_target_vector and 441 make static; create pointer reference named bfd_target_vector. 442 (_bfd_target_vector_entries): Calculate this based on the array 443 typed _bfd_target_vector. 444 445 2001-02-06 H.J. Lu <hjl@gnu.org> 446 * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Only hidden and 447 internal symbols are not dynamic. 448 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise. 449 450 2001-02-06 Kazu Hirata <kazu@hxi.com> 451 * elf-m10200.c: Fix formatting. 452 453 2001-02-01 Kazu Hirata <kazu@hxi.com> 454 * elf-m10300.c: Fix formatting. 455 456 2001-06-10 Philip Blundell <philb@gnu.org> 457 458 * configure.in: Set version to 2.11.1. 877 878 2003-02-25 Alan Modra <amodra@bigpond.net.au> 879 880 * elflink.h (elf_bfd_final_link): Apportion reloc counts to rel_hdr 881 and rel_hdr2 when initially counting input relocs rather than after 882 creating output reloc sections. 883 (elf_link_read_relocs_from_section): Don't abort with wrong reloc 884 sizes. 885 886 * Makefile.am: Run "make dep-am". 887 * Makefile.in: Regenerate. 888 889 2003-02-24 Kris Warkentin <kewarken@qnx.com> 890 891 * elf.c (elfcore_read_notes): Add check for QNX style core file. 892 (elfcore_grog_nto_note): New function. 893 (elfcore_grog_nto_gregs): New function. 894 (elfcore_grog_nto_status): New function. 895 896 2003-02-24 Alan Modra <amodra@bigpond.net.au> 897 898 * elflink.c (_bfd_elf_create_got_section): Check existing .got 899 section flags before concluding that we've already been called. 900 Don't use register keyword. 901 (_bfd_elf_create_dynamic_sections): Don't use register keyword. 902 (_bfd_elf_create_linker_section): Formatting. 903 904 2003-02-20 jmc <jmc@prioris.mini.pw.edu.pl> 905 906 * coff-h8300.c: Fix typo: intial -> initial. 907 * coff-ppc.c: Likewise. 908 909 2003-02-20 Alan Modra <amodra@bigpond.net.au> 910 911 * elf32-ppc.c: Formatting. 912 (allocate_dynrelocs): LD and GD relocs against the same sym need 913 separate GOT entries. 914 (ppc_elf_relocate_section): Correct GOT handling for multiple GOT 915 entries per symbol. 916 917 2003-02-19 Alan Modra <amodra@bigpond.net.au> 918 919 * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Simplify dynamic reloc 920 removal. Localize vars. Remove unnecessary dynobj test. 921 * elf32-i386 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead 922 of INFO. 923 (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses, 924 and optimize. 925 (elf_i386_relocate_section): Likewise. 926 (elf_i386_gc_sweep_hook): Simplify dyn reloc removal. Localize vars. 927 * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise. 928 * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise. 929 * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise. 930 * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise. 931 * elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise. Remove 932 local_dynrel for section too. Don't touch HIPLT22, LOPLT10, PCPLT32 933 or PCPLT10 relocs. Don't subtract twice on PLT32 relocs. 934 Formatting. 935 936 * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define. 937 (ppc64_elf_check_relocs): Use it. Correct comment. Move SEC_ALLOC 938 test. 939 (ppc64_elf_adjust_dynamic_symbol): Use ELIMINATE_COPY_RELOCS. 940 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. 941 (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses, 942 and optimize. Use ELIMINATE_COPY_RELOCS. 943 (ppc64_elf_relocate_section): Likewise. 944 945 * elf32-ppc.c (struct ppc_elf_dyn_relocs): Add pc_count field. 946 (ppc_elf_copy_indirect_symbol): Copy pc_count field. 947 (ELIMINATE_COPY_RELOCS): Define. 948 (ppc_elf_adjust_dynamic_symbol): Convert copy relocs to dynamic. 949 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. 950 (MUST_BE_DYN_RELOC): Define. 951 (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses, 952 and optimize. Trim dyn_relocs. 953 (ppc_elf_check_relocs): Don't generate dyn_relocs when we know they'll 954 not be used. Do generate dyn_relocs for copy reloc avoidance. Keep 955 track of pc_rel dyn relocs. 956 (ppc_elf_relocate_section): Remove "will_become_local". Adjust 957 WILL_CALL_FINISH_DYNAMIC_SYMBOL use. Trim dyn relocs as per 958 allocate_dynrelocs. Don't recalculate "sec". 959 960 2003-02-18 Alan Modra <amodra@bigpond.net.au> 961 962 * elf32-ppc.c (ppc_elf_relocate_section): Remove unnecessary test. 963 * elf64-ppc.c (ppc64_elf_tls_optimize): Decrement tlsld_got.refcount 964 on invalid LD relocs. 965 (allocate_dynrelocs): Invalid LD relocs don't use tlsld_got entry. 966 (ppc64_elf_relocate_section): Unify new handling of LD relocs and 967 tlsld_got entry. Use IS_PPC64_TLS_RELOC. 968 969 * elf32-ppc.h: New file. 970 * elf32-ppc.c: Include elf32-ppc.h. 971 (NOP, CROR_151515, CROR_313131, TP_OFFSET, DTP_OFFSET): Define. 972 (struct ppc_elf_link_hash_entry): Rename "root" to "elf". Adjust uses. 973 Add "tls_mask" field. 974 (TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, TLS_TLS, TLS_TPRELGD): Define. 975 (struct ppc_elf_link_hash_table): Rename "root" to "elf". Adjust uses. 976 Add got, relgot, plt, relplt, dynbss, relbss, dynsbss, relsbss, 977 sdata, sdata2, tls_sec, tls_get_addr, tlsld_got fields. 978 Make use of htab shortcuts throughout file. 979 (ppc_elf_link_hash_newfunc): Init tls_mask field. 980 (ppc_elf_link_hash_table_create): Init new fields. 981 (ppc_elf_copy_indirect_symbol): Copy tls_mask. 982 (ppc_elf_howto_raw): Add tls relocs. 983 (ppc_elf_reloc_type_lookup): Handle them. 984 (ppc_elf_unhandled_reloc): New function. 985 (ppc_elf_create_got): Stash got section pointer in hash table, 986 return status. Make .rela.got too. 987 (ppc_elf_create_dynamic_sections): Stash section pointers in htab. 988 (ppc_elf_adjust_dynamic_symbol): Only set up copy relocs when 989 NON_GOT_REF set. Don't allocate space in .plt here.. 990 (allocate_dynrelocs): ..do so here instead, properly ref-counting and 991 not allocating plt entries unnecessarily. Allocate got entries here. 992 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. 993 (ppc_elf_size_dynamic_sections): Allocate local got entries. Pass 994 "info" during allocate_dynrelocs hash traversal. Use htab section 995 shortcuts rather than searching for named sections. Get rid of 996 "plt" and "strip" booleans. 997 (update_local_sym_info, bad_shared_reloc): New functions. 998 (ppc_elf_check_relocs): Handle TLS relocs. Move .rela.got creation to 999 ppc_elf_create_got. Don't mark got or plt reloc syms dynamic, do so 1000 in allocate_dynreloc. Use update_local_sym_info and bad_shared_reloc. 1001 Disallow R_PPC_EMB_RELSDA, R_PPC_EMB_NADDR32, R_PPC_EMB_NADDR16, 1002 R_PPC_EMB_NADDR16_LO, R_PPC_EMB_NADDR16_HI and R_PPC_EMB_NADDR16_HA 1003 in shared libs. R_PPC_PLTREL32 is a plt reloc too. Refcount all 1004 relocs that might use a plt entry. Set NON_GOT_REF too. 1005 Enumerate all do-nothing relocs. 1006 (ppc_elf_gc_sweep_hook): Simplify removal of dynrelocs. Handle 1007 tls relocs and all plt relocs. 1008 (ppc_elf_tls_setup, ppc_elf_tls_optimize): New functions. 1009 (ppc_elf_finish_dynamic_symbol): Don't build got entries here. 1010 (ppc_elf_finish_dynamic_sections): Rewrite tag code using htab 1011 shortcuts. 1012 (ppc_elf_relocate_section): Tidy. Handle TLS relocs. Use 1013 bfd_elf_local_sym_name. Simplify unresolved reloc code. Build got 1014 entries and got relocs here. Warn on non-zero got reloc addend. 1015 Split out branch taken/not taken reloc code into a separate switch 1016 and correct offset calculation. Allow BRTAKEN/BRNTAKEN dynamic relocs. 1017 Split out HA reloc adjustments to separate switch statement. Don't 1018 warn on reloc overflow if we've already warned about undefined. 1019 Don't rebuild sym name when reporting errors. Report all possible 1020 errors from _bfd_final_link_relocate. 1021 (bfd_elf32_bfd_final_link): Don't define. 1022 1023 2003-02-18 Alan Modra <amodra@bigpond.net.au> 1024 1025 * elf64-ppc.c (ppc64_elf_relocate_section): Don't init "r". Don't 1026 rebuild sym name when reporting errors. 1027 1028 2003-02-17 Nick Clifton <nickc@redhat.com> 1029 1030 * elflink.h (elf_link_output_extsym): Only check 1031 allow_shlib_undefined for shared libraries. 1032 * elf32-i386.c (elf_i386_relocate_section): Remove bogus check 1033 of allow_shlib_undefined. 1034 * elf32-cris.c (cris_elf_relocate_section): Likewise. 1035 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 1036 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 1037 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 1038 * elf32-s390.c (elf_s390_relocate_section): Likewise. 1039 * elf32-sh.c (sh_elf_relocate_section): Likewise. 1040 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 1041 * elf32-vax.c (elf_vax_relocate_section): Likewise. 1042 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 1043 * elf64-hppa.c (elf64_hppa_relocate_section): Likewise. 1044 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 1045 * elf64-s390.c (elf_s390_relocate_section): Likewise. 1046 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 1047 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 1048 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. 1049 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise. 1050 1051 2003-02-17 Nick Clifton <nickc@redhat.com> 1052 1053 * elf.c (SEGMENT_AFTER_SEGMENT): Add third parameter - the 1054 address field to use in the comparison. 1055 (SEGMENT_OVERLAPS): Check that LMAs overlap as well. 1056 1057 2003-02-14 Bob Wilson <bob.wilson@acm.org> 1058 1059 * elfcore.h (elf_core_file_p): Compare alternate machine codes for ELF 1060 backends when checking if the generic ELF target should be used. 1061 1062 * syms.c (_bfd_stab_section_find_nearest_line): For line number stabs 1063 outside of functions, treat values as absolute addresses. 1064 1065 * bfd.c: Change embedded documentation to use consistent indentation 1066 and to split up long lines. Change informal style of description 1067 for functions lacking real documentation. 1068 * coffcode.h: Break up long lines in embedded documentation. 1069 * format.c: Likewise. 1070 * targets.c: Likewise. 1071 * libcoff.h: Regenerate. 1072 * bfd-in2.h: Regenerate. 1073 1074 2003-02-14 Alan Modra <amodra@bigpond.net.au> 1075 1076 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Init tls_get_addr. 1077 (ppc64_elf_copy_indirect_symbol): Merge tls_mask too. 1078 (ppc64_elf_gc_sweep_hook): Simplify removal of dyn_relocs. 1079 (allocate_dynrelocs): Don't treat undefined and undefweak specially. 1080 (ppc_size_one_stub): Fix warning, and tighten plt entry check. 1081 (group_sections): Don't share a stub section if stubs are for a large 1082 section. Adjust comment. 1083 (ppc64_elf_size_stubs): Roughly double the size left for stubs if 1084 !stubs_always_before_branch. 1085 (ppc64_elf_relocate_section): Initialize tlsld GOT entry once. Don't 1086 treat undefined and undefweak specially when processing dyn relocs. 1087 1088 2003-02-13 Jakub Jelinek <jakub@redhat.com> 1089 1090 * elflink.h (elf_link_add_object_symbols): Handle .symver x, x@FOO. 1091 1092 2003-02-13 Nick Clifton <nickc@redhat.com> 1093 1094 * elf32-arm.h (elf32_thumb_to_arm_stub): Include section VMAs 1095 in computation of offset to insert into BL instruction. 1096 1097 2003-02-11 Uwe Stieber <uwe@wwws.de> 1098 1099 * config.bfd: Add support for kaOS as cross build target system. 1100 1101 2003-02-11 Alan Modra <amodra@bigpond.net.au> 1102 1103 * elf64-ppc.c (ppc64_elf_check_relocs): Match versioned 1104 .__tls_get_addr too. 1105 (ppc64_elf_tls_setup): Ensure cached tls_get_addr is not indirect. 1106 1107 2003-02-10 Kaz kojima <kkojima@rr.iij4u.or.jp> 1108 1109 * elf32-sh.c (elf_sh_dyn_relocs): Add tls_tpoff32 field. 1110 (elf_sh_link_hash_entry): Remove tls_tpoff32 field. 1111 (sh_elf_link_hash_newfunc): Remove the initialization of 1112 tls_tpoff32 field. 1113 (allocate_dynrelocs): Keep dyn_relocs if it includes the entry 1114 for which tls_tpoff32 flag is set. 1115 (sh_elf_relocate_section): Covert to LE only if the dyn_relocs 1116 of the symbol includes the entry matched with the input_section 1117 and having tls_tpoff32 flag on. When linking statically, set 1118 symbol index of R_SH_TLS_TPOFF32 relocation to zero if the symbol 1119 is defined in this executable. 1120 (sh_elf_check_relocs): Set tls_tpoff32 flag appropriately. 1121 1122 2003-02-10 Jakub Jelinek <jakub@redhat.com> 1123 1124 * elf32-s390.c (elf_s390_size_dynamic_sections): Set relocs to TRUE 1125 even if there is just non-empty .rela.plt. 1126 1127 2003-02-10 Nick Clifton <nickc@redhat.com> 1128 1129 * archures.c (bfd_mach_arm_ep9312): Define. 1130 * bfd-in2.h: Regenerate. 1131 * cpu-arm.c (processors[]): Add ep9312. 1132 (bfd_arm_arch): Add ep9312. 1133 * elf32-arm.h (elf32_arm_merge_private_data): Update error 1134 messages and add test for Maverick floating point support. 1135 (elf32_arm_print_private_bfd_data): Handle 1136 EF_ARM_MAVERICK_FLOAT flag. 1137 (elf32_arm_object_p): New function. 1138 (elf_backend_object_p): Define. 1139 1140 2003-02-10 Alan Modra <amodra@bigpond.net.au> 1141 1142 * elf64-ppc.c: Rename assorted occurrences of tls_type and similar 1143 variables, structure fields or function params to tls_mask or 1144 similar to better reflect usage. 1145 (struct got_entry): Comment. 1146 (struct ppc_link_hash_entry): Expand comment, and renumber TLS_*. 1147 (get_tls_mask): Rename from get_tls_type. 1148 1149 2003-02-09 Alan Modra <amodra@bigpond.net.au> 1150 1151 * elf64-ppc.c (TLS_GD_LD): Don't define.. 1152 (TLS_GD): ..define this instead and update all uses. 1153 (TLS_TPRELGD): Define. 1154 (ppc64_elf_link_hash_table_create): Tweak initialization of 1155 init_refcount and init_offset. 1156 (ppc64_elf_check_relocs): Add one extra element to t_symndx array. 1157 Mark second slot of GD or LD toc entries. 1158 (get_tls_type): Return an int. Distinguish toc GD and LD entries 1159 from other tls types. 1160 (ppc64_elf_tls_setup): New function, split out from.. 1161 (ppc64_elf_tls_optimize): ..here. Don't optimize when symbols are 1162 defined in a dynamic object. Fix LD optimization. Don't set TLS_TPREL 1163 on GD->IE optimization, use TLS_TPRELGD instead. Use get_tls_type 1164 return value to properly decide whether toc GD and LD entries can 1165 optimize away __tls_get_addr call. Check next reloc after DTPMOD64 1166 to determine GD or LD rather than looking at TLS_LD flag. Don't 1167 attempt to adjust got entry tls_type here.. 1168 (allocate_dynrelocs): ..instead, adjust got entry tls_type here, and 1169 look for possible merges. 1170 (ppc64_elf_size_dynamic_sections): Adjust local got entries for 1171 optimization. 1172 (ppc64_elf_size_stubs): Tweak __tls_get_addr fudge. 1173 (ppc64_elf_relocate_section): Rename some vars to better reflect usage. 1174 Make use of return value from get_tls_type to properly detect GD and 1175 LD optimizations. Split tlsld/gd hi/ha from lo/ds case. Don't 1176 handle tls_get_addr removal when looking at REL24 relocs, do it when 1177 looking at the previous reloc. Check reloc after DTPMOD64 to determine 1178 GD or LD. 1179 * elf64-ppc.h (ppc64_elf_tls_setup): Declare. 1180 1181 2003-02-08 Alan Modra <amodra@bigpond.net.au> 1182 1183 * elf32-hppa.c (group_sections): Don't share a stub section if 1184 stubs are for a large section. 1185 1186 * elf32-hppa.c (elf32_hppa_size_stubs): Double the size left for 1187 stubs if !stubs_always_before_branch. 1188 1189 2003-02-07 Nick Clifton <nickc@redhat.com> 1190 1191 * elf.c (swap_out_syms): Generate an error message if an 1192 equivalent output section cannot be found for a symbol. 1193 1194 2003-02-07 Jakub Jelinek <jakub@redhat.com> 1195 1196 * elf64-alpha.c (elf64_alpha_relax_section): Don't crash if 1197 local_got_entries is NULL. 1198 1199 2003-02-06 Andreas Schwab <schwab@suse.de> 1200 1201 * elf-eh-frame.c (get_DW_EH_PE_signed): Define. 1202 (read_value): Add parameter is_signed, use signed extraction if 1203 the value is signed. 1204 (_bfd_elf_write_section_eh_frame): Pass signed flag of the 1205 encoding to read_value. 1206 1207 2003-02-06 Alan Modra <amodra@bigpond.net.au> 1208 1209 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy got and 1210 plt info when called to transfer weak sym info. 1211 1212 2003-02-05 Alan Modra <amodra@bigpond.net.au> 1213 1214 * reloc.c: Add PPC and PPC64 TLS relocs. 1215 * libbfd.h: Regenerate. 1216 * bfd-in2.h: Regenerate. 1217 * elf64-ppc.c (TP_OFFSET, DTP_OFFSET): Declare. 1218 (ppc64_elf_howto_raw): Add TLS howto's. Adjust R_PPC64_NONE to be 1219 against a 32 bit field. 1220 (ppc64_elf_reloc_type_lookup): Handle TLS relocs. 1221 (_ppc64_elf_section_data): Add t_symndx and comments. 1222 (ppc64_elf_section_data): Use elf_section_data macro. 1223 (ppc64_elf_new_section_hook): American spelling. 1224 (struct got_entry, struct plt_entry): New. 1225 (MUST_BE_DYN_RELOC): Rename from IS_ABSOLUTE_RELOC. 1226 (struct ppc_stub_hash_entry): Add "addend" field. 1227 (struct ppc_link_hash_entry): Add "tls_type". 1228 (TLS_TLS, TLS_GD_LD, TLS_LD, TLS_TPREL, TLS_DTPREL, 1229 TLS_EXPLICIT): Define. 1230 (struct ppc_link_hash_table): Add tls_sec, tls_get_addr, tlsld_got. 1231 (link_hash_newfunc): Init new fields. 1232 (ppc64_elf_link_hash_table_create): Likewise. Set init_refcount and 1233 init_offset to NULL. 1234 (ppc64_elf_copy_indirect_symbol): Copy got and plt info. Don't call 1235 _bfd_elf_link_hash_copy_indirect, rather insert relevant code from 1236 there. 1237 (update_local_sym_info, update_plt_info): New functions. 1238 (ppc64_elf_check_relocs): Use them. Handle TLS relocs. Adjust GOT 1239 handling to use got.glist rather than got.refcount. Likewise for PLT. 1240 (ppc64_elf_gc_sweep_hook): Handle TLS relocs, new GOT and PLT lists. 1241 (func_desc_adjust): Adjust for new PLT list. 1242 (ppc64_elf_adjust_dynamic_symbol): Likewise. 1243 (get_sym_h, get_tls_type): New functions. 1244 (ppc64_elf_edit_opd): Remove unused variable. Use get_sym_h. 1245 (ppc64_elf_tls_optimize): New function. 1246 (allocate_dynrelocs): Adjust for new PLT and GOT lists. Allocate 1247 TLS relocs. 1248 (ppc64_elf_size_dynamic_sections): Likewise. 1249 (ppc_type_of_stub): Adjust for new PLT list. 1250 (ppc_build_one_stub): Likewise. 1251 (ppc64_elf_size_stubs): Likewise. Use get_sym_h. Treat __tls_get_addr 1252 calls specially. 1253 (ppc64_elf_relocate_section): Adjust for new GOT and PLT lists. Handle 1254 TLS relocs. Report local syms using bfd_elf_local_sym_name. Don't 1255 init GOT entries that have a reloc. Generate GOT relocs here.. 1256 (ppc64_elf_finish_dynamic_symbol): ..not here. Adjust for PLT list. 1257 * elf64-ppc.h (ppc64_elf_tls_optimize): Declare. 1258 1259 2003-02-04 Andreas Schwab <schwab@suse.de> 1260 1261 * elf32-m68k.c (elf_m68k_hash_entry): Define. 1262 (elf_m68k_link_hash_traverse): Remove. 1263 (elf_m68k_link_hash_newfunc): Use struct bfd_hash_entry and 1264 elf_m68k_hash_entry instead of struct elf_m68k_link_hash_entry to 1265 reduce casting. 1266 (elf_m68k_check_relocs): Use elf_m68k_hash_entry instead of 1267 casting. 1268 (elf_m68k_size_dynamic_sections): Use elf_link_hash_traverse 1269 instead of elf_m68k_link_hash_traverse. 1270 (elf_m68k_discard_copies): Change first parameter to pointer to 1271 struct elf_link_hash_entry and use elf_m68k_hash_entry when struct 1272 elf_m68k_link_hash_entry is needed. 1273 1274 2003-02-04 Alan Modra <amodra@bigpond.net.au> 1275 1276 * elf-bfd.h (struct got_entry, struct plt_entry): Forward declare. 1277 (struct elf_link_hash_entry): Add "glist" and "plist" fields to 1278 "got" union, and declare as gotplt_union. Use gotplt_uinion for 1279 "plt" field. 1280 (struct elf_link_hash_table): Make "init_refcount" a gotplt_union. 1281 Add "init_offset" field. 1282 (struct elf_obj_tdata <local_got>): Add "struct got_entry **" to union. 1283 (elf_local_got_ents): Declare. 1284 * elf.c (_bfd_elf_link_hash_newfunc): Adjust initialization of "got" 1285 and "plt". 1286 (_bfd_elf_link_hash_hide_symbol): Use "init_offset". 1287 (_bfd_elf_link_hash_table_init): Set "init_offset". 1288 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set init_refcount 1289 from init_offset. 1290 (elf_adjust_dynamic_symbol): Set plt and got offsets using init_offset. 1291 1292 * elf.c (bfd_elf_local_sym_name): Split out from.. 1293 (group_signature): ..here. 1294 * elf-bfd.h (bfd_elf_local_sym_name): Declare. 1295 1296 2003-02-04 Alan Modra <amodra@bigpond.net.au> 1297 1298 * elf-bfd.h (enum elf_link_info_type): Remove. 1299 (struct bfd_elf_section_data): Move sec_info_type, use_rela_p fields 1300 to struct sec. Remove linkonce_p field. 1301 (elf_linkonce_p): Delete. 1302 (elf_discarded_section): Update for sec_info_type change. 1303 * section.c (struct sec): Add sec_info_type, use_rela_p, has_tls_reloc, 1304 flag11, flag12, flag13, flag14, flag15, flag16, flag20, flag24. 1305 (ELF_INFO_TYPE_NONE): Define. 1306 (ELF_INFO_TYPE_STABS): Define. 1307 (ELF_INFO_TYPE_MERGE): Define. 1308 (ELF_INFO_TYPE_EH_FRAME): Define. 1309 (ELF_INFO_TYPE_JUST_SYMS): Define. 1310 (STD_SECTION): Update struct sec initializer. 1311 * ecoff.c (bfd_debug_section): Likewise. 1312 * elf.c: Likewise. Update occurrences of sec_info_type and use_rela_p. 1313 * elflink.h: Likewise. 1314 * elf-eh-frame.c: Likewise. 1315 * elf64-alpha.c: Likewise. 1316 * elfxx-ia64.c: Likewise. 1317 * elfxx-mips.c: Likewise. 1318 * bfd-in2.h: Regenerate. 1319 1320 * elf32-sparc.c (sec_do_relax): Use elf_section_data macro rather than 1321 referring to used_by_bfd. 1322 * elf64-sparc.c (sec_do_relax): Likewise. 1323 * elf64-mmix.c (mmix_elf_section_data): Likewise. 1324 * elfxx-mips.c (mips_elf_section_data): Likewise. 1325 * ieee.c (ieee_slurp_section_data): Use ieee_per_section macro. 1326 (ieee_get_section_contents): Likewise. 1327 (ieee_new_section_hook): Formatting. 1328 (ieee_canonicalize_reloc): Remove commented out code. 1329 * mmo.c (mmo_section_data): Define. Use throughout file. 1330 * oasys.c (oasys_get_section_contents): Use oasys_per_section macro. 1331 1332 2003-01-31 Graydon Hoare <graydon@redhat.com> 1333 1334 * Makefile.am (opncls.lo): Add dependency upon libiberty.h. 1335 * Makefile.in: Regenerate. 1336 * opncls.c (calc_crc32, get_debug_link_info, 1337 seperate_debug_file_exists, find_seperate_debug_file): New 1338 internal functions. 1339 (bfd_follow_gnu_debuglink): New function. Follow the pointer 1340 contained inside a .gnu_debuglink section. 1341 * bfd-in2.h: Regenerate. 1342 1343 2003-01-29 Alexandre Oliva <aoliva@redhat.com> 1344 1345 * elfxx-mips.c (mips_elf_got_entry_hash): Don't dereference 1346 entry->abfd when it's NULL. 1347 1348 2003-01-27 Alexandre Oliva <aoliva@redhat.com> 1349 1350 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Handle 1351 _bfd_elf_section_offset returning -2 the same way as -1. 1352 1353 * elfxx-mips.c (mips_elf_multi_got): New function. 1354 (struct mips_got_entry): Make symndx and gotidx signed. Moved 1355 addend into union along with address and link hash entry. 1356 (struct mips_got_info): Added bfd2got and next. 1357 (struct mips_elf_hash_sort_data): Added max_unref_got_dynindx. 1358 (mips_elf_got_section, mips_elf_create_got_section): Use 1359 SEC_EXCLUDE bit to tell whether we really need the got 1360 section. Take boolean arguments to disregard an excluded 1361 section, or to create it as excluded. Adjust all callers. 1362 Use mips_elf_got_section all over. 1363 (mips_elf_local_got_index, mips_elf_got_page, 1364 mips_elf_got16_entry): Take input bfd as argument, and pass it 1365 on to mips_elf_create_local_got_entry. 1366 (mips_elf_global_got_index, mips_elf_create_local_got_entry): 1367 Take input bfd as argument, and manage entries in the 1368 appropriate GOT. 1369 (mips_elf_got_offset_from_index): Take input bfd as argument, 1370 and use it to adjust the GP offset of the bfd. 1371 (mips_elf_sort_hash_table, mips_elf_sort_hash_table_f): Move 1372 unreferenced GOT entries of global symbols to the end. 1373 (mips_elf_record_global_got_symbol): Take input bfd as 1374 argument. Add entries to the master GOT hash table. 1375 (struct mips_elf_bfd2got_hash): New. 1376 (struct mips_elf_got_per_bfd_arg): New. 1377 (struct mips_elf_set_global_got_offset_arg): New. 1378 (mips_elf_hash_bfd_vma, mips_elf_multi_got_entry_hash, 1379 mips_elf_multi_got_entry_eq, mips_elf_bfd2got_entry_hash, 1380 mips_elf_bfd2got_entry_eq, mips_elf_make_got_per_bfd, 1381 mips_elf_merge_gots, mips_elf_set_global_got_offset, 1382 mips_elf_resolve_final_got_entry, 1383 mips_elf_resolve_final_got_entries, mips_elf_adjust_gp, 1384 mips_elf_got_for_ibfd): New functions. 1385 (ELF_MIPS_GP_OFFSET): Don't depend on SGI_COMPAT. 1386 (MIPS_ELF_GOT_MAX_SIZE): New macro. 1387 (STUB_LW): Generate 64-bit stub regardless of SGI_COMPAT. 1388 (mips_elf_got_entry_hash): Take new fields into account. Use 1389 mips_elf_hash_bfd_vma. 1390 (mips_elf_got_entry_eq): Take new fields into account. 1391 (mips_elf_create_got_section): Initialize new fields. 1392 (mips_elf_calculate_relocation): Pass input_bfd to functions 1393 that now take it. Adjust gp for the input_bfd. 1394 (mips_elf_allocate_dynamic_relocation, 1395 mips_elf_create_dynamic_relocation, 1396 _bfd_mips_elf_create_dynamic_sections): Use... 1397 (mips_elf_rel_dyn_section): New function. Borrow code from... 1398 (_bfd_mips_elf_check_relocs): Pass input_bfd to functions that 1399 now take it. Create the got section if needed, even if 1400 excluded, before recording a global got symbol. Move some 1401 code to... 1402 (mips_elf_record_local_got_symbol): New fn. 1403 (_bfd_mips_elf_size_dynamic_sections): Disable combreloc. 1404 Compute multi-got global entries offsets. Move GOT code to... 1405 (_bfd_mips_elf_always_size_sections): Call mips_elf_multi_got 1406 if the GOT is too big. 1407 (_bfd_mips_elf_finish_dynamic_symbol): Set got entry of 1408 undefweak symbol to zero. Generate dynamic relocations for 1409 non-primary GOT entries for global symbols. 1410 (_bfd_mips_elf_finish_dynamic_sections): Handle multi-got 1411 case. Generate dynamic relocations for local got entries. 1412 Sort dynamic relocations on N64 too, using... 1413 (sort_dynamic_relocs_64): New fns. 1414 (_bfd_mips_elf_hide_symbol): Adjust multi-got counters. 1415 (_bfd_mips_elf_merge_private_bfd_data): Ignore EF_MIPS_XGOT. 1416 1417 2003-01-27 Alexandre Oliva <aoliva@redhat.com> 1418 1419 * bfd.c (struct _bfd): Added id field. 1420 * opncls.c (_bfd_id_counter): New static variable. 1421 (_bfd_new_bfd): Use it. 1422 * bfd-in2.h: Rebuilt. 1423 1424 2003-01-25 Alan Modra <amodra@bigpond.net.au> 1425 1426 * elf32-sparc.c (bfd_elf32_new_section_hook): Define. 1427 1428 2003-01-25 Jakub Jelinek <jakub@redhat.com> 1429 1430 * elf32-sparc.c (_bfd_sparc_elf_howto_table): Add TLS relocs. 1431 (elf32_sparc_rev32_howto): New variable. 1432 (sparc_reloc_map): Add TLS relocs. 1433 (elf32_sparc_reloc_type_lookup, elf32_sparc_info_to_howto): 1434 Handle REV32. 1435 (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc, elf32_sparc_mkobject): 1436 New functions. 1437 (struct elf32_sparc_dyn_relocs, struct elf32_sparc_link_hash_entry, 1438 struct elf32_sparc_link_hash_table): 1439 New structures. 1440 (elf32_sparc_tdata, elf32_sparc_local_got_tls_type, 1441 elf32_sparc_hash_table): Define. 1442 (link_hash_newfunc, elf32_sparc_link_hash_table_create, 1443 create_got_section, elf32_sparc_create_dynamic_sections, 1444 elf32_sparc_copy_indirect_symbol, elf32_sparc_tls_transition): New 1445 functions. 1446 (elf32_sparc_check_relocs): Handle TLS relocs. Add dynamic reloc 1447 reference counting. 1448 (elf32_sparc_gc_sweep_hook): Likewise. 1449 (elf32_sparc_adjust_dynamic_symbol): Likewise. 1450 (elf32_sparc_size_dynamic_sections): Likewise. 1451 (elf32_sparc_relocate_section): Likewise. 1452 (allocate_dynrelocs, readonly_dynrelocs, dtpoff_base, tpoff): 1453 New functions. 1454 (elf32_sparc_object_p): Allocate backend private object data. 1455 (bfd_elf32_bfd_link_hash_table_create, 1456 elf_backend_copy_indirect_symbol, bfd_elf32_mkobject, 1457 elf_backend_can_refcount): Define. 1458 (elf_backend_create_dynamic_sections): Define to 1459 elf32_sparc_create_dynamic_sections. 1460 * reloc.c: Add SPARC TLS relocs. 1461 * bfd-in2.h, libbfd.h: Rebuilt. 1462 * elf64-sparc.c (sparc64_elf_howto_table): Add TLS relocs. 1463 (sparc_reloc_map): Likewise. 1464 1465 2003-01-24 Martin Schwidefsky <schwidefsky@de.ibm.com> 1466 1467 * bfd-in2.h: Regenerate. 1468 * elf32-s390.c (elf_s390_mkobject, elf_s390_tls_transition, 1469 s390_tls_reloc, dtpoff_base, tpoff, invalid_tls_insn): New functions. 1470 (elf_howto_table): Add TLS relocs. 1471 (elf_s390_reloc_type_lookup): Likewise. 1472 (elf_s390_link_hash_entry): Add tls_type. 1473 (elf_s390_hash_entry, elf_s390_obj_tdata, elf_s390_local_got_tls_type): 1474 New macros. 1475 (elf_s390_link_hash_table): Add tls_ldm_got. 1476 (link_hash_newfunc): Initialize tls_type. 1477 (elf_s390_link_hash_table_create): Initialize refcount of tls_ldm_got. 1478 (elf_s390_copy_indirect_symbol): Copy tls_type information. 1479 (elf_s390_check_relocs): Support TLS relocs. 1480 (elf_s390_gc_sweep_hook): Likewise. 1481 (allocate_dynrelocs): Likewise. 1482 (elf_s390_size_dynamic_sections): Likewise. 1483 (elf_s390_relocate_section): Likewise. 1484 (elf_s390_finish_dynamic_symbol): Likewise. 1485 (bfd_elf32_mkobject): Define for TLS. 1486 * elf64-s390.c: Same changes as for elf32-s390.c. 1487 * libbfd.h: Regenerate. 1488 * reloc.c: Add s390 TLS relocations. 1489 1490 2003-01-24 Charles Lepple clepple.ghz.cc 1491 1492 * aclocal.m4: Fix name of --enable-install-libbfd switch. 1493 1494 2003-01-23 Nick Clifton <nickc@redhat.com> 1495 1496 * Add sh2e support: 1497 1498 2002-04-02 Elena Zannoni <ezannoni@redhat.com> 1499 1500 * archures.c (bfd_mach_sh2e): Added. 1501 * bfd-in2.h: Rebuilt. 1502 * cpu-sh.c (arch_info_struct): Added SH2e. 1503 * elf32-sh.c (sh_elf_set_mach_from_flags): Handle EF_SH2E. 1504 1505 2003-01-23 Alan Modra <amodra@bigpond.net.au> 1506 1507 * elf-bfd.h (struct bfd_elf_section_data): Remove tdata. Change 1508 dynindx to an int. Rearrange for better packing. 1509 * elf.c (_bfd_elf_new_section_hook): Don't alloc if already done. 1510 * elf32-mips.c (bfd_elf32_new_section_hook): Define. 1511 * elf32-sh64.h: New. Split out from include/elf/sh.h. 1512 (struct _sh64_elf_section_data): New struct. 1513 (sh64_elf_section_data): Don't dereference sh64_info (was tdata). 1514 * elf32-sh64-com.c: Include elf32-sh64.h. 1515 * elf32-sh64.c: Likewise. 1516 (sh64_elf_new_section_hook): New function. 1517 (bfd_elf32_new_section_hook): Define. 1518 (sh64_elf_fake_sections): Adjust for sh64_elf_section_data change. 1519 (sh64_bfd_elf_copy_private_section_data): Likewise. 1520 (sh64_elf_final_write_processing): Likewise. 1521 * elf32-sparc.c (struct elf32_sparc_section_data): New. 1522 (elf32_sparc_new_section_hook): New function. 1523 (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete. 1524 (sec_do_relax): Define. 1525 (elf32_sparc_relax_section): Adjust to use sec_do_relax. 1526 (elf32_sparc_relocate_section): Likewise. 1527 * elf64-mips.c (bfd_elf64_new_section_hook): Define. 1528 * elf64-mmix.c (struct _mmix_elf_section_data): New. 1529 (mmix_elf_section_data): Define. Use throughout file. 1530 (mmix_elf_new_section_hook): New function. 1531 (bfd_elf64_new_section_hook): Define. 1532 * elf64-ppc.c (struct _ppc64_elf_section_data): New. 1533 (ppc64_elf_section_data): Define. Use throughout. 1534 (ppc64_elf_new_section_hook): New function. 1535 (bfd_elf64_new_section_hook): Define. 1536 * elf64-sparc.c (struct sparc64_elf_section_data): New. 1537 (sparc64_elf_new_section_hook): New function. 1538 (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete. 1539 (sec_do_relax): Define. 1540 (sparc64_elf_relax_section): Adjust to use sec_do_relax. 1541 (sparc64_elf_relocate_section): Likewise. 1542 (bfd_elf64_new_section_hook): Define. 1543 * elfn32-mips.c (bfd_elf32_new_section_hook): Define. 1544 * elfxx-mips.c (struct _mips_elf_section_data): New. 1545 (mips_elf_section_data): Define. Use throughout. 1546 (_bfd_mips_elf_new_section_hook): New function. 1547 (mips_elf_create_got_section): Don't alloc used_by_bfd. 1548 * elfxx-mips.h (_bfd_mips_elf_new_section_hook): Declare. 1549 * elfxx-target.h (bfd_elfNN_new_section_hook): Add #ifndef. 1550 * Makefile.am: Run "make dep-am". 1551 * Makefile.in: Regenerate. 1552 1553 2003-01-21 Richard Henderson <rth@redhat.com> 1554 1555 * elf64-alpha.c (ALPHA_ELF_LINK_HASH_PLT_LOC): New. 1556 (struct alpha_elf_link_hash_entry): Add plt_old_section, plt_old_value. 1557 (elf64_alpha_adjust_dynamic_symbol): Set them. 1558 (elf64_alpha_size_plt_section_1): Reset them when plt entry removed. 1559 (elf64_alpha_relax_tls_get_addr): Handle LDM relocs. Frob the 1560 symbol index when relaxing LDM to TPREL. 1561 (elf64_alpha_relax_section): Likewise. Allow relaxation of GD 1562 relocs, even if the target isn't locally defined. 1563 (elf64_alpha_check_relocs): Frob LDM reloc symndx to zero. 1564 (elf64_alpha_relocate_section): Likewise. Force TP-relative 1565 relocs vs symndx 0 to the tp base. 1566 1567 2003-01-21 Fabio Alemagna <falemagn@aros.org> 1568 1569 * config.bfd: Handle i[3456]86-*-aros*. 1570 1571 2003-01-21 Andreas Schwab <schwab@suse.de> 1572 1573 * elf32-ppc.c (struct ppc_elf_dyn_relocs): Define. 1574 (struct ppc_elf_link_hash_entry): Define. 1575 (ppc_elf_hash_entry): New function. 1576 (struct ppc_elf_link_hash_table): Define. 1577 (ppc_elf_hash_table): New function. 1578 (ppc_elf_link_hash_newfunc): New function. 1579 (ppc_elf_link_hash_table_create): New function. 1580 (ppc_elf_copy_indirect_symbol): New function. 1581 (allocate_dynrelocs): New function. 1582 (readonly_dynrelocs): New function. 1583 (ppc_elf_size_dynamic_sections): Allocate space for dynamic 1584 relocs and determine DT_TEXTREL. 1585 (ppc_elf_check_relocs): Don't do that here, just count the 1586 dynamic relocs. 1587 (ppc_elf_gc_sweep_hook): Discard any dynamic relocs against the 1588 removed section. 1589 (bfd_elf32_bfd_link_hash_table_create): Define. 1590 (elf_backend_copy_indirect_symbol): Define. 1591 1592 2003-01-21 Richard Henderson <rth@redhat.com> 1593 1594 * elf64-alpha.c (alpha_dynamic_entries_for_reloc): GOTTPREL and 1595 TPREL also get a reloc if shared. Remove SREL support. 1596 (elf64_alpha_emit_dynrel): New. 1597 (elf64_alpha_relocate_section): Use it. Resolve dynamic TPREL 1598 and GOTTPREL relocs to local symbols against the tp base. 1599 (elf64_alpha_finish_dynamic_symbol): Use elf64_alpha_emit_dynrel. 1600 1601 * elf64-alpha.c (elf64_alpha_relax_got_load): Decrement got 1602 use count before clobbering r_type. 1603 (elf64_alpha_relax_tls_get_addr): Don't use pos[1] if insn 1604 ordering would mean dataflow inspection is necessary. 1605 1606 2003-01-20 Svein E. Seldal <Svein.Seldal@solidas.com> 1607 1608 * coffcode.h (coff_set_flags): Added get/set arch hooks. 1609 1610 2003-01-20 Fabio Alemagna <falemagn@aros.org> 1611 1612 * elf32-sh.c: Treat elfNN_bed like other macros defined in 1613 elfxx-target.h and #undef it before #define'ing it. 1614 * elf32-i386.c: Likewise. 1615 * elf32-sh64.c: Likewise. 1616 * elf64-alpha.c: Likewise. 1617 * elf64-sh64.c: Likewise. 1618 1619 2003-01-20 Martin Schwidefsky <schwidefsky@de.ibm.com> 1620 1621 * bfd-in2.h: Regenerate. 1622 * elf32-s390.c (elf_s390_adjust_gotplt): New prototype. 1623 (elf_howto_table): Rename R_390_GOTOFF to R_390_GOTOFF32. Add 1624 R_390_GOTOFF16, R_390_GOTOFF64, R_390_GOTPLT12, R_390_GOTPLT16, 1625 R_390_GOTPLT32, R_390_GOTPLT64, R_390_GOTPLTENT, R_390_PLTOFF16, 1626 R_390_PLTOFF32 and R_390_PLTOFF64. 1627 (elf_s390_reloc_type_lookup): Likewise. 1628 (struct elf_s390_link_hash_entry): Add gotplt_refcount to keep track 1629 of GOTPLT references to a function. 1630 (link_hash_newfunc): Initialize gotplt_refcount. 1631 (elf_s390_check_relocs): Move allocation of local_got_refcounts array 1632 and creation of the got section out of the main switch. Add support 1633 for the gotoff, gotplt and pltoff relocations. 1634 (elf_s390_gc_sweep_hook): Add reference counting for gotoff, gotplt 1635 and pltoff. 1636 (elf_s390_adjust_gotplt): New function. 1637 (elf_s390_adjust_dynamic_symbol): Adjust gotplt refcount for removed 1638 plt entries. 1639 (allocate_dynrelocs): Add comment. 1640 (elf_s390_relocate_section): Change r_type to unsigned. Add support 1641 for gotoff, gotplt and pltoff relocations. 1642 * elf64-s390.c: Same changes as for elf32-s390.c. 1643 * libbfd.h: Regenerate. 1644 * reloc.c: Add BFD_RELOC_390_GOTOFF64, BFD_RELOC_390_GOTPLT12, 1645 BFD_RELOC_390_GOTPLT16, BFD_RELOC_390_GOTPLT32, BFD_RELOC_390_GOTPLT64, 1646 BFD_RELOC_390_GOTPLTENT, BFD_RELOC_390_PLTOFF16, BFD_RELOC_390_PLTOFF32 1647 and BFD_RELOC_390_PLTOFF64. 1648 1649 2003-01-18 Jakub Jelinek <jakub@redhat.com> 1650 1651 * elfxx-ia64.c (elfNN_ia64_relocate_section): Handle 1652 R_IA64_TPREL64[LM]SB against non-global symbol properly. 1653 1654 2003-01-16 Jakub Jelinek <jakub@redhat.com> 1655 1656 * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add 1657 self_dtpmod_done and self_dtpmod_offset. 1658 (allocate_global_data_got): Only use one got entry for all 1659 dtpmod relocs against local symbols. 1660 (allocate_dynrel_entries): Only need .rela.got entry for 1661 dtpmod against global symbol. 1662 (elfNN_ia64_size_dynamic_sections): Initialize self_dtpmod_offset. 1663 Reserve space in .rela.got for the local dtpmod entry. 1664 (set_got_entry): Initialize the common local dtpmod .got entry. 1665 (elfNN_ia64_relocate_section): Handle R_IA_64_DTPREL64LSB 1666 and R_IA_64_DTPREL64MSB. 1667 1668 2003-01-16 Alan Modra <amodra@bigpond.net.au> 1669 1670 * elf64-ppc.c: Include elf/ppc64.h rather than elf/ppc.h. 1671 (R_PPC_*): Rename all occurrences to R_PPC64_*. 1672 (R_PPC64_ADDR30): Rename all occurrences to R_PPC64_REL30. 1673 (enum elf_ppc_reloc_type): Ditto to enum elf_ppc64_reloc_type. 1674 (ppc64_elf_gc_sweep_hook): Handle R_PPC64_REL30 along with other 1675 relative relocs, not with absolute ones. 1676 * Makefile.am: Run "make dep-am". 1677 * Makefile.in: Regenerate. 1678 * po/SRC-POTFILES.in: Regenerate. 1679 1680 2003-01-15 Andreas Schwab <schwab@suse.de> 1681 1682 * elf32-ppc.c (ppc_elf_check_relocs): Don't set DF_TEXTREL for a 1683 relocation against a non-allocated readonly section. 1684 1685 2003-01-10 Alan Modra <amodra@bigpond.net.au> 1686 1687 * elf32-ppc.c (ppc_elf_relocate_section): Adjust addend for GOT16_HA. 1688 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. PLTGOT16_HA too. 1689 1690 2002-01-08 Klee Dienes <kdienes@apple.com> 1691 1692 * Makefile.am (ALL_MACHINES): Use cpu-msp430.lo, not cpu-msp430.c. 1693 (BFD32_BACKENDS): Use elf32-msp430.lo, not elf32-msp430.c. 1694 * Makefile.in: Regenerate. 1695 1696 2003-01-08 Alexandre Oliva <aoliva@redhat.com> 1697 1698 * elfn32-mips.c (prev_reloc_section): New. 1699 (GET_RELOC_ADDEND): Use it. Parenthesize macro arguments. 1700 (SET_RELOC_ADDEND): Parenthesize macro argument. 1701 1702 2003-01-07 John David Anglin <dave.anglin@nrc.gc.ca> 1703 1704 * elf32-hppa.c (final_link_relocate): For all DP relative relocations, 1705 adjust addil instructions if the symbol has no section. 1706 1707 2003-01-07 DJ Delorie <dj@redhat.com> 1708 1709 * elf32-xstormy16.c (xstormy16_elf_howto_table): Make REL_12 not 1710 partial_inplace. 1711 1712 2003-01-07 Andreas Schwab <schwab@suse.de> 1713 1714 * elf32-m68k.c (elf_m68k_check_relocs): Don't set DF_TEXTREL for 1715 PC relative relocations. 1716 (elf_m68k_discard_copies): Set it here instead. 1717 1718 2002-01-02 Ben Elliston <bje@redhat.com> 1719 Jeff Johnston <jjohnstn@redhat.com> 1720 1721 * Makefile.am (ALL_MACHINES): Add cpu-iq2000.lo. 1722 (ALL_MACHINES_CFILES): Add cpu-iq2000.c. 1723 (BFD32_BACKENDS): Add elf32-iq2000.lo. 1724 (BFD32_BACKENDS_CFILES): Add elf32-iq2000.c. 1725 (cpu-iq2000.lo): New target. 1726 * Makefile.in: Regenerate. 1727 * config.bfd: Handle iq2000-*-elf. 1728 * archures.c (bfd_architecture): Add bfd_{arch,mach}_iq2000. 1729 (bfd_archures_list): Add bfd_iq2000_arch. 1730 * configure.in: Handle bfd_elf32_iq2000_vec. 459 1731 * configure: Regenerate. 460 461 2001-06-09 Philip Blundell <philb@gnu.org> 462 463 * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last 464 change. 465 (elf32_arm_plt_entry): Likewise. 466 467 2001-06-07 Alan Modra <amodra@bigpond.net.au> 468 469 * Most files: Update copyright notices. 470 471 2001-05-29 Andreas Jaeger <aj@suse.de> 472 473 * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64. 474 (elf64_x86_64_relocate_section): Likewise. 475 476 2001-05-28 Andreas Jaeger <aj@suse.de> 477 478 * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the 479 generic version since we want a hashsize of 4. 480 (elf_backend_size_info): Likewise. 481 482 2001-05-28 Nicolas Pitre <nico@cam.org> 483 484 * elf32-arm.h: Fix PLT generation for big endian ARM. 485 486 2001-05-28 Jeff Sturm <jsturm@one-point.com> 487 488 * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64. 1732 * reloc.c: Add BFD_RELOC_IQ2000_OFFSET_16, BFD_RELOC_IQ2000_OFFSET_21, 1733 and BFD_RELOC_IQ2000_UHI16. 1734 * targets.c (bfd_elf32_iq2000_vec): Declare. 1735 (bfd_target_vector): Add bfd_elf32_iq2000_vec. 1736 * elf.c (prep_headers): Set e_machine to EM_IQ2000. 1737 * cpu-iq2000.c: New file. 1738 * elf32-iq2000.c: Likewise. 1739 * libbfd.h: Regenerate. 1740 * bfd-in2.h: Likewise. 1741 1742 2003-01-02 Richard Sandiford <rsandifo@redhat.com> 1743 1744 * elfxx-mips.c: Include libiberty.h. 1745 (elf_mips_isa, _bfd_mips_elf_mach_extends_p): Remove. 1746 (mips_set_isa_flags): New function, split out from... 1747 (_bfd_mips_elf_final_write_processing): ...here. Only call 1748 mips_set_isa_flags if the EF_MIPS_MACH bits are clear. 1749 (mips_mach_extensions): New array. 1750 (mips_32bit_flags_p): New function. 1751 (_bfd_mips_elf_merge_private_bfd_data): Rework architecture checks. 1752 Use mips_32bit_flags_p to check if one binary is 32-bit and the 1753 other is 64-bit. When adopting IBFD's architecture, adopt the 1754 bfd_mach as well as the flags. 1755 1756 2003-01-02 Nick Kelsey <nickk@ubicom.com> 1757 1758 * elf32-ip2k.c: Re-work of linker relaxation code for the ip2k to 1759 fix internal errors, fix bad code generation, fix incorrect stabs 1760 information, and improve ability to eliminate redundant page 1761 instructions. Added code to ip2k_final_link_relocate to self-verify 1762 the linker relaxation. Fix formatting problems. 1763 1764 2002-12-30 Chris Demetriou <cgd@broadcom.com> 1765 1766 * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mipsisa32r2 case. 1767 * archures.c (bfd_mach_mipsisa32r2): New define. 1768 * bfd-in2.h: Regenerate. 1769 * cpu-mips.c (I_mipsisa32r2): New enum value. 1770 (arch_info_struct): Add entry for I_mipsisa32r2. 1771 * elfxx-mips.c (elf_mips_isa, _bfd_elf_mips_mach) 1772 (_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_32R2. 1773 (_bfd_mips_elf_final_write_processing): Add 1774 bfd_mach_mipsisa32r2 case. 1775 (_bfd_mips_elf_merge_private_bfd_data): Handle merging of 1776 binaries marked as using MIPS32 Release 2. 1777 1778 2002-12-30 Dmitry Diky <diwil@mail.ru> 1779 1780 * Makefile.am: Add msp430 target. 1781 * configure.in: Likewise. 1782 * Makefile.in: Regenerate. 1783 * configure: Regenerate. 1784 * archures.c: Add msp430 architecture vector. 1785 * config.bfd: Likewise. 1786 * reloc.c: Add msp430 relocs. 1787 * targets.c: Add msp320 target. 1788 * cpu-msp430.c: New file: msp430 cpu detection. 1789 * elf32-msp430.c: New file: msp430 reloc processing. 489 1790 * bfd-in2.h: Regenerate. 490 1791 * libbfd.h: Regenerate. 491 * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32 492 and BFD_RELOC_SPARC_UA64 mapping 1792 1793 2002-12-28 Jakub Jelinek <jakub@redhat.com> 1794 1795 * elf.c (elf_sort_sections): Don't reorder .tbss. 1796 (assign_file_positions_for_segments): Only adjust off/voff 1797 for increased alignment in PT_LOAD or PT_NOTE segment, 1798 but adjust p_filesz for .tbss too. in PT_LOAD consider 1799 .tbss to have zero memory size. 1800 (copy_private_bfd_data) [SECTION_SIZE]: Define. 1801 [IS_CONTAINED_BY_VMA, IS_CONTAINED_BY_LMA]: Use it. 1802 [INCLUDE_SECTION_IN_SEGMENT]: Only put SHF_TLS sections 1803 into PT_TLS segment. Never put SHF_TLS sections in 1804 segments other than PT_TLS or PT_LOAD. 1805 1806 * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Clear .plt 1807 sh_entsize. 1808 1809 2002-12-23 DJ Delorie <dj@redhat.com> 1810 1811 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Fix logic reversal. 1812 1813 2002-12-23 Alan Modra <amodra@bigpond.net.au> 1814 1815 * elflink.h (elf_link_output_extsym): Heed strip_discarded. 1816 1817 2002-12-23 Nick Clifton <nickc@redhat.com> 1818 1819 * archures.c (bfd_arch_get_compatible): Add third parameter 1820 'accept_unknowns'. Only accept unknown format BFDs if 1821 accept_unknowns is true, or if the format is "binary". 1822 * bfd-in2.h: Regenerate. 1823 1824 2002-12-21 Nick Clifton <nickc@redhat.com> 1825 1826 * coff-arm.c (coff_arm_relocate_section): Disable WINCE workaround 1827 that subtracted 8 from pc relative relocations. 1828 1829 2002-12-20 Kazu Hirata <kazu@cs.umass.edu> 1830 1831 * coff-h8300.c: Fix comment typos. 1832 * coffcode.h: Likewise. 1833 * cpu-cris.c: Likewise. 1834 * elf32-vax.c: Likewise. 1835 * genlink.h: Likewise. 1836 * linker.c: Likewise. 1837 * som.c: Likewise. 1838 * tekhex.c: Likewise. 1839 * vms-misc.c: Likewise. 1840 1841 2002-12-20 DJ Delorie <dj@redhat.com> 1842 1843 * reloc.c: Add BFD_RELOC_XSTORMY16_12. 1844 * libbfd.h: Regenerate. 1845 * bfd-in2.h: Regenerate. 1846 * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_12. 1847 (xstormy16_reloc_map): Add R_XSTORMY16_12. 1848 1849 2002-12-19 Kazu Hirata <kazu@cs.umass.edu> 1850 1851 * doc/bfdint.texi: Fix typos. 1852 1853 2002-12-20 Paul Eggert <eggert@twinsun.com> 1854 1855 Port to POSIX 1003.1-2001. 1856 * acinclude.m4 (AM_INSTALL_LIBBFD): Do not rely on "test -o". 1857 * configure.in (build-warnings): Likewise. 1858 (Horrible hacks to build DLLs on Windows): Do not rely on "tail -1". 1859 * aclocal.m4: Regenerate. 1860 * config.in: Regenerate. 1861 * configure: Regenerate. 1862 1863 2002-12-19 Alan Modra <amodra@bigpond.net.au> 1864 1865 * coff-h8300.c: Include libiberty.h. 1866 (h8300_reloc16_extra_cases): Check the hash table creator before 1867 referencing h8300 specific fields. Stash the hash table pointer 1868 in a local var. Comment typo fixes. 1869 (h8300_bfd_link_add_symbols): Likewise. 1870 1871 * bfd/reloc.c (struct reloc_howto_struct): Revise src_mask and 1872 dst_mask comments. 1873 * bfd-in2.h: Regenerate. 1874 1875 2002-12-18 Alan Modra <amodra@bigpond.net.au> 1876 1877 * elf32-ppc.c (ppc_elf_relocate_section): Reorganize dynamic reloc 1878 code a little. Comment on dynamic relocs against section symbols. 1879 1880 2002-12-17 Roger Sayle <roger@eyesopen.com> 1881 1882 * configure.host (ia64-*-hpux*): Support 64 bit targets using 1883 the HP compiler's "long long". 1884 1885 2002-12-16 Andrew MacLeod <amacleod@redhat.com> 1886 1887 * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_LO16 1888 and R_XSTORMY16_HI16) howto entries. 1889 (xstormy16_reloc_map): Map R_XSTORMY16_{LO,HI}16 to BFD_RELOC_{LO,HI}16. 1890 (xstormy16_info_to_howto_rela): Use R_XSTORMY16_GNU_VTINHERIT to 1891 determine the start of the second reloc table. 1892 1893 2002-12-16 Nathan Tallent <eraxxon@alumni.rice.edu> 1894 1895 * ecofflink.c: Fix the reading of the debugging information 1896 of Tru64/Alpha binaries that are produced by recent Compaq 1897 compilers. 1898 (mk_fdrtab): Fix error in creating the FDR (file descriptor) 1899 table. 1900 (lookup_line): Because of the strange information sometimes 1901 generated by Compaq's recent compilers, change how the FDR 1902 table is searched so that PDRs (procedure descriptors) are 1903 correctly found. Note that this change is really more of a hack; 1904 however, I have included extensive documentation as to why 1905 this is the best solution short of an extensive rewrite or 1906 another hack. 1907 (fdrtab_lookup): Add comments to explain the algorithm. 1908 1909 2002-12-12 Alexandre Oliva <aoliva@redhat.com> 1910 1911 * elf-m10300.c (elf32_mn10300_link_hash_newfunc): Reorder 1912 initializers to match struct declaration. 1913 1914 2002-12-12 Alan Modra <amodra@bigpond.net.au> 1915 1916 * dwarf2.c (comp_unit_contains_address): Comment typo fix. 1917 * elf.c (get_program_header_size): Likewise. 1918 * elf32-m32r.c (m32r_elf_lo16_reloc): Likewise. 1919 (m32r_elf_generic_reloc): Likewise. 1920 * elf32-ppc.c (ppc_elf_howto_init): Likewise. 1921 * elflink.h (elf_bfd_discard_info): Likewise. 1922 1923 2002-12-12 Alan Modra <amodra@bigpond.net.au> 1924 1925 * elf32-i386.c (elf_i386_finish_dynamic_sections): Add output_offset 1926 to DT_JMPREL. Use srelplt input section size for DT_PLTRELSZ and 1927 DT_RELSZ adjustment, not output section. Avoid writing tags when 1928 unchanged. Don't assume linker script is sane, adjust DT_REL too. 1929 * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Just use raw 1930 size of srelplt for DT_PLTRELSZ. Use srelplt input section size for 1931 DT_RELASZ adjustment, not output section. Avoid writing tags when 1932 unchanged. Adjust DT_RELA. 1933 * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Tweaks for better 1934 formatting. Avoid writing tags when unchanged. Adjust DT_RELA. 1935 1936 2002-12-12 Alexandre Oliva <aoliva@redhat.com> 1937 1938 * elfxx-mips.c (mips_elf_calculate_relocation): Don't divide 1939 addend by 4. 1940 1941 2002-12-12 Alexandre Oliva <aoliva@redhat.com> 1942 1943 * elfxx-mips.c (struct mips_got_entry): New. 1944 (struct mips_got_info): Added got_entries field. 1945 (mips_elf_got_entry_hash, mips_elf_got_entry_eq): New functions. 1946 (mips_elf_local_got_index, mips_elf_got_page, 1947 mips_elf_got16_entry): Re-implement in terms of new... 1948 (mips_elf_create_local_got_entry): Rewrite to use got_entries. 1949 Change return type. 1950 (mips_elf_highest): Warning clean-up. 1951 (mips_elf_create_got_section): Initialize got_entries. 1952 (_bfd_mips_elf_check_relocs): Use got_entries to estimate 1953 local got size. 1954 (_bfd_mips_elf_size_dynamic_sections): Do not account for 1955 GOT_PAGE entries, since we now reuse GOT16 entries. 1956 1957 2002-12-10 Jason Thorpe <thorpej@wasabisystems.com> 1958 1959 * aoutx.h (set_section_contents): Allow an otherwise unrepresentable 1960 read-only section that lies after .text and before .data to be 1961 written into the output file and included in a_text. 1962 (translate_to_native_sym_flags): If an otherwise unrepresentable 1963 section was merged with .text, convert its symbols to N_TEXT 1964 symbols. 1965 * libaout.h (aout_section_merge_with_text_p): New macro. 1966 1967 2002-12-08 Alan Modra <amodra@bigpond.net.au> 1968 1969 * bfd-in.h: Comment typo fix. Formatting. 1970 * bfd-in2.h: Regenerate. 1971 * coff64-rs6000.c (xcoff64_openr_next_archived_file): Warning fix. 1972 * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): Prototype. 1973 * elf64-mmix.c (mmix_dump_bpo_gregs): Warning fix. 1974 1975 2002-12-05 Richard Henderson <rth@redhat.com> 1976 1977 * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21BI. 1978 Only send PCREL21B though the plt. Fix installed reloc type. 1979 (elfNN_ia64_relocate_section): Give error for dynamic reloc 1980 against PCREL22 or PCREL64I; clean up error messages for 1981 branch relocs. 1982 1983 2002-12-04 Kevin Buettner <kevinb@redhat.com> 1984 1985 * elf64-mips.c (elf64_mips_grok_prstatus, elf64_mips_grok_psinfo): 1986 New functions. 1987 (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define. 1988 1989 2002-12-04 David Mosberger <davidm@hpl.hp.com> 1990 1991 * cpu-ia64-opc.c: Add operand constant "ar.csd". 1992 1993 2002-12-04 H.J. Lu <hjl@gnu.org> 1994 1995 * elfxx-ia64.c (get_local_sym_hash): Use section ID instead of 1996 BFD address when constructing local name. 1997 1998 2002-12-04 Andreas Schwab <schwab@suse.de> 1999 2000 * elf32-m68k.c (struct elf_m68k_link_hash_table): Add sym_sec 2001 member. 2002 (elf_m68k_link_hash_table_create): Initialize it. 2003 (elf_m68k_check_relocs): Handle symbols that are forced to be 2004 local due to visibility changes. 2005 (elf_m68k_adjust_dynamic_symbol): Likewise. 2006 (elf_m68k_size_dynamic_sections): Likewise. 2007 (elf_m68k_discard_copies): Likewise. 2008 (elf_m68k_relocate_section): Likewise. 2009 2010 2002-12-04 Alan Modra <amodra@bigpond.net.au> 2011 2012 * elf64-ppc.c (ppc64_elf_edit_opd): Correct typo. 2013 2014 2002-12-04 Alan Modra <amodra@bigpond.net.au> 2015 2016 * srec.c (srec_write_symbols): Restore '$' prefix to address 2017 accidentally removed in 2002-04-04 change. 2018 (srec_get_symtab): Use 0 instead of `(long) FALSE'. 2019 2020 2002-12-03 Nick Clifton <nickc@redhat.com> 2021 2022 * elf32-ppc.c (apuinfo_list_init): New function. 2023 (apuinfo_list_add): New function: Add a value to the list. 2024 (apuinfo_list_length): New function: Return the number of 2025 values on the list. 2026 (apuinfo_list_element): New function: Return a value on the 2027 list. 2028 (apuinfo_list_finish): New function: Free the resources used 2029 by the list. 2030 (ppc_elf_begin_write_processing): New function. Scan the 2031 input bfds for apuinfo sections. 2032 (ppc_elf_write_section): New function: Delay the creation of 2033 the contents of an apuinfo section in an output bfd. 2034 (ppc_elf_final_write_processing): New function. Create the 2035 contents of an apuinfo section in an output bfd. 2036 (elf_backend_begin_write_processing): Define. 2037 (elf_backend_final_write_processing): Define. 2038 (elf_backend_write_section): Define. 2039 2040 2002-12-03 Richard Henderson <rth@redhat.com> 2041 2042 * cpu-ia64-opc.c (elf64_ia64_operands): Add ldxmov entry. 2043 2044 2002-12-01 Stephane Carrez <stcarrez@nerim.fr> 2045 2046 Fix PR savannah/1417: 2047 * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Don't adjust 2048 branch if it goes to the start of the deleted region. 2049 2050 2002-12-01 Stephane Carrez <stcarrez@nerim.fr> 2051 2052 * bfd-in2.h (bfd_mach_m6812): Rebuild. 2053 * archures.c (bfd_mach_m6812_default, bfd_mach_m6812, 2054 bfd_mach_m6812s): Declare. 2055 2056 * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): New function. 2057 (_bfd_m68hc12_elf_set_private_flags): Call it. 2058 (_bfd_m68hc12_elf_print_private_bfd_data): Report processor version. 2059 (_bfd_m68hc12_elf_merge_private_bfd_data): Merge the flags and 2060 report microcontroller incompatibilities (HC12 vs HCS12). 2061 (elf_backend_object_p): Update. 2062 2063 2002-11-30 Alan Modra <amodra@bigpond.net.au> 2064 2065 * bfd-in.h (TRUE_FALSE_ALREADY_DEFINED, BFD_TRUE_FALSE): Delete. 2066 (enum bfd_boolean, boolean): Delete. 2067 (bfd_boolean): Typedef to an int. 2068 (FALSE, TRUE): Define. 2069 * aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c, aout-cris.c, 2070 aout-encap.c, aout-ns32k.c, aout-target.h, aout-tic30.c, aoutf1.h, 2071 aoutx.h, archive.c, archive64.c, archures.c, bfd-in.h, bfd.c, bfdwin.c, 2072 binary.c, bout.c, cache.c, cisco-core.c, coff-a29k.c, coff-alpha.c, 2073 coff-apollo.c, coff-arm.c, coff-aux.c, coff-h8300.c, coff-h8500.c, 2074 coff-i386.c, coff-i860.c, coff-i960.c, coff-ia64.c, coff-m68k.c, 2075 coff-m88k.c, coff-mcore.c, coff-mips.c, coff-or32.c, coff-ppc.c, 2076 coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c, coff-tic30.c, 2077 coff-tic4x.c, coff-tic54x.c, coff-tic80.c, coff-w65.c, coff-we32k.c, 2078 coff-z8k.c, coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c, 2079 corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, 2080 cpu-cris.c, cpu-d10v.c, cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, 2081 cpu-h8300.c, cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, 2082 cpu-i860.c, cpu-i960.c, cpu-ia64.c, cpu-ip2k.c, cpu-m10200.c, 2083 cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c, cpu-m68hc12.c, cpu-m68k.c, 2084 cpu-m88k.c, cpu-mcore.c, cpu-mips.c, cpu-mmix.c, cpu-ns32k.c, 2085 cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c, 2086 cpu-rs6000.c, cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c, 2087 cpu-tic4x.c, cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c, 2088 cpu-w65.c, cpu-we32k.c, cpu-xstormy16.c, cpu-z8k.c, dwarf1.c, 2089 dwarf2.c, ecoff.c, ecofflink.c, efi-app-ia32.c, efi-app-ia64.c, 2090 elf-bfd.h, elf-eh-frame.c, elf-hppa.h, elf-m10200.c, elf-m10300.c, 2091 elf-strtab.c, elf.c, elf32-arc.c, elf32-arm.h, elf32-avr.c, 2092 elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c, elf32-fr30.c, 2093 elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, 2094 elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c, 2095 elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c, 2096 elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c, 2097 elf32-pj.c, elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-sh64-com.c, 2098 elf32-sh64.c, elf32-sparc.c, elf32-v850.c, elf32-vax.c, 2099 elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c, 2100 elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c, 2101 elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c, 2102 elfarm-oabi.c, elfcode.h, elfcore.h, elflink.c, elflink.h, 2103 elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h, 2104 elfxx-target.h, format.c, freebsd.h, genlink.h, hash.c, hp300hpux.c, 2105 hppabsd-core.c, hpux-core.c, i386aout.c, i386linux.c, i386lynx.c, 2106 i386mach3.c, i386msdos.c, i386os9k.c, ieee.c, ihex.c, irix-core.c, 2107 libaout.h, libbfd-in.h, libbfd.c, libcoff-in.h, libecoff.h, libieee.h, 2108 libnlm.h, liboasys.h, libpei.h, libxcoff.h, linker.c, lynx-core.c, 2109 m68klinux.c, m68klynx.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c, 2110 mmo.c, netbsd-core.c, netbsd.h, nlm.c, nlm32-alpha.c, nlm32-i386.c, 2111 nlm32-ppc.c, nlm32-sparc.c, nlmcode.h, oasys.c, opncls.c, osf-core.c, 2112 pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c, pe-mcore.c, pe-mips.c, 2113 pe-sh.c, peXXigen.c, pef.c, pei-arm.c, pei-i386.c, pei-mcore.c, 2114 pei-mips.c, pei-sh.c, peicode.h, ppcboot.c, ptrace-core.c, reloc.c, 2115 reloc16.c, riscix.c, rs6000-core.c, sco5-core.c, section.c, simple.c, 2116 som.c, som.h, sparclinux.c, sparclynx.c, srec.c, stabs.c, sunos.c, 2117 syms.c, targets.c, tekhex.c, ticoff.h, trad-core.c, versados.c, 2118 vms-gsd.c, vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h, 2119 xcoff-target.h, xcofflink.c, xsym.c, xsym.h: Replace boolean with 2120 bfd_boolean, true with TRUE, false with FALSE. Simplify comparisons 2121 of bfd_boolean vars with TRUE/FALSE. Formatting. 2122 * bfd-in2.h, libbfd.h, libcoff.h: Regenerate 2123 2124 2002-11-28 Alan Modra <amodra@bigpond.net.au> 2125 2126 * elf-bfd.h: Replace occurrences of Elf32_Internal_* and 2127 Elf64_Internal_* with Elf_Internal_*. Replace Elf_Internal_Rel 2128 with Elf_Internal_Rela. 2129 * elf-hppa.h, elf-m10200.c, elf-m10300.c, elf32-arc.c, elf32-arm.h, 2130 elf32-avr.c, elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c, 2131 elf32-fr30.c, elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c, 2132 elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c, 2133 elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c, 2134 elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c, 2135 elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-v850.c, elf32-vax.c, 2136 elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c, 2137 elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c, 2138 elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c, elfarm-oabi.c, 2139 elfcode.h, elflink.h, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c: Ditto. 2140 * elf-hppa.h (elf_hppa_internal_shdr): Delete. Use Elf_Internal_Shdr 2141 throughout instead. 2142 * elf.c (_bfd_elf_no_info_to_howto_rel): Delete. 2143 * elfcode.h (elf_swap_reloca_in): Pass source operand as a bfd_byte *. 2144 Remove INLINE keyword. 2145 (elf_swap_reloc_in): Likewise. Also clear r_addend. 2146 (elf_swap_reloc_out, elf_swap_reloca_out): Pass destination operand 2147 as a bfd_byte *. 2148 (elf_write_relocs): Consolidate REL and RELA code. 2149 (elf_slurp_reloc_table_from_section): Simplify REL code. 2150 (NAME(_bfd_elf,size_info)): Populate reloc swap entries. 2151 * elf-bfd.h (MAX_INT_RELS_PER_EXT_REL): Define. 2152 * elflink.h (elf_link_read_relocs_from_section): Consolidate REL and 2153 RELA code. 2154 (elf_link_adjust_relocs): Likewise. Don't malloc space for temp 2155 reloc array, use a fixed size of MAX_INT_RELS_PER_EXT_REL. 2156 (elf_link_output_relocs): Likewise. 2157 (elf_reloc_link_order): Likewise. 2158 (elf_finish_pointer_linker_section): Likewise. 2159 (struct elf_link_sort_rela): Remove union. 2160 (elf_link_sort_cmp1): Update to suit. 2161 (elf_link_sort_cmp2): Here too. 2162 (elf_link_sort_relocs): Consolidate REL and RELA code. Fix memory 2163 over-allocation for int_rels_per_ext_rel != 1 case. 2164 * elf32-arm.h: Update all bfd_elf32_swap_reloc_out calls. 2165 * elf32-i386.c: Likewise. 2166 * elf32-cris.c: Likewise for bfd_elf32_swap_reloca_out. 2167 * elf32-hppa.c, elf32-i370.c, elf32-m68k.c, elf32-ppc.c, elf32-s390.c, 2168 elf32-sh.c, elf32-vax.c, elfxx-mips.c: Likewise. 2169 * elf64-alpha.c: Likewise for bfd_elf64_swap_reloca_out. 2170 * elf64-hppa.c, elf64-mips.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c, 2171 elf64-sparc.c, elf64-x86-64.c: Likewise. 2172 * elfxx-ia64.c: Likewise for bfd_elfNN_swap_reloca_out. 2173 * elfxx-mips.c (sort_dynamic_relocs): Likewise for 2174 bfd_elf32_swap_reloc_in. 2175 2176 * elf32-arm.h: Update elf32_arm_info_to_howto calls. 2177 * elf32-mips.c: Likewise for mips_info_to_howto_rel. 2178 (mips_elf64_swap_reloc_in): Zero r_addend. 2179 (mips_elf64_be_swap_reloc_in): Likewise. 2180 (mips_elf64_slurp_one_reloc_table): Simplify. 2181 2182 * elf64-alpha.c (alpha_elf_size_info): Populate reloc swap entries. 2183 * elf64-hppa.c (hppa64_elf_size_info): Likewise. 2184 * elf64-sparc.c (sparc64_elf_size_info): Likewise. 2185 2186 2002-11-28 Kaz Kojima <kkojima@rr.iij4u.or.jp> 2187 2188 * elf32-sh.c (sh_elf_relocate_section): Don't complain about 2189 unresolved debugging relocs in dynamic applications. 2190 * elf64-sh64.c (sh_elf64_relocate_section): Likewise. 2191 2192 2002-11-26 Alan Modra <amodra@bigpond.net.au> 2193 2194 * elf-eh-frame.c (ENSURE_NO_RELOCS): Disregard R_*_NONE relocs. 2195 (_bfd_elf_discard_section_eh_frame): Don't discard duplicate CIEs 2196 on a relocatable link. Comment typos. 2197 * elf.c (_bfd_elf_link_hash_newfunc): Assign elements of structure 2198 in the order they are declared. Clear elf_hash_value too. 2199 (_bfd_elf_link_hash_table_init): Likewise assign in order. Clear 2200 eh_info and tls_segment. 2201 * elflink.h (elf_link_input_bfd <emit_relocs>): Keep reloc offsets 2202 sorted when discarding relocs by turning them into R_*_NONE. 2203 2204 * libbfd.c (warn_deprecated): Comment spelling. 2205 * po/SRC-POTFILES.in: Regenerate. 2206 2207 2002-11-21 Richard Henderson <rth@redhat.com> 2208 2209 * elflink.h (elf_link_add_object_symbols): Don't overwrite the 2210 arch's st_other bits when merging visibilities. 2211 (elf_link_output_extsym): Tidy clearing of visibility field. 2212 2213 2002-11-21 Alan Modra <amodra@bigpond.net.au> 2214 2215 * coff-mcore.c (SWAP_IN_RELOC_OFFSET): Define. 2216 (SWAP_OUT_RELOC_OFFSET): Define. 2217 2218 2002-11-20 Alexandre Oliva <aoliva@redhat.com> 2219 2220 * elf.c (_bfd_elf_link_hash_table_init): Make sure 2221 can_refcount is properly extended to the type of 2222 init_refcount. 2223 2224 2002-11-19 Alexandre Oliva <aoliva@redhat.com> 2225 2226 * elfxx-mips.c (MIPS_RELOC_RELA_P): New macro. 2227 (_bfd_mips_elf_relocate_section): Use it. 2228 2229 * elfxx-mips.c (MNAME): New macro. 2230 (_bfd_mips_elf_check_relocs): Use it. 2231 (_bfd_mips_elf_discard_info): Likewise. 2232 (_bfd_mips_elf_final_link): Likewise. 2233 2234 2002-11-19 Alan Modra <amodra@bigpond.net.au> 2235 2236 * elf64-ppc.c (ppc64_elf_edit_opd): When deleting relocs, adjust 2237 rel_hdr.sh_size too. 2238 2239 2002-11-18 Klee Dienes <kdienes@apple.com> 2240 2241 * Makefile.am (BFD32_LIBS): Add bfdwin.lo, bfdio.lo. 2242 (BFD32_LIBS_CFILES): Add bfdwin.c, bfdio.c. 2243 (BFD_H_FILES): Add bfdwin.c, bfdio.c. 2244 (LIBBFD_H_FILES): Add bfdwin.c, bfdio.c. 2245 Add dependencies for bfdwin.c, bfdio.c. 2246 * bfd.c: Remove bfd_get_mtime, bfd_get_size. 2247 * libbfd.c: Remove real_read, bfd_bread, _bfd_window_internal, 2248 bfd_init_window, bfd_free_window, bfd_get_file_window, bfd_bwrite, 2249 bfd_tell, bfd_flush, bfd_stat, bfd_seek. 2250 * bfdio.c: New file. Contains real_read, bfd_bread, bfd_write, 2251 bfd_tell, bfd_flush, bfd_stat, bfd_seek, bfd_ge_mtime, 2252 bfd_get_size (moved from libbfd.c and bfd.c). 2253 * bfdwin.c New file. Contains _bfd_window_internal, 2254 bfd_init_window, bfd_free_window, bfd_get_file_window (moved from 2255 libbfd.c and bfd.c). 2256 * po/SRC-POTFILES.in: Regenerate. 2257 * po/bfd.pot: Regenerate. 2258 * libbfd.h: Regenerate. 2259 * bfd-in2.h: Regenerate. 2260 * aclocal.m4: Regenerate. 2261 * Makefile.in: Regenerate. 2262 * configure: Regenerate. 2263 2264 2002-11-18 Klee Dienes <kdienes@apple.com> 2265 2266 * bfd.c (bfd_preserve_save): Don't zero BFD_IN_MEMORY. 2267 2268 2002-11-15 Kazu Hirata <kazu@cs.umass.edu> 2269 2270 * coff-h8300.c (h8300_reloc16_estimate): Do not optimize away 2271 jsr after a short jump. 2272 * elf32-h8300.c (elf32_h8_relax_section): Likewise. 2273 2274 2002-11-15 Klee Dienes <kdienes@apple.com> 2275 2276 * pef.c (bfd_pef_convert_architecture): Move declaration of 2277 ARCH_POWERPC and ARCH_M68K to the start of the function. 2278 2279 2002-11-14 Svein E. Seldal <Svein.Seldal@solidas.com> 2280 2281 * coff-tic4x.c (tic4x_howto_table): Formatting fixup 2282 2283 2002-11-14 Hans-Peter Nilsson <hp@bitrange.com> 2284 2285 * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): 2286 For bpo_gregs_section->contents, allocate _raw_size, not 2287 _cooked_size. 2288 2289 2002-11-13 Klee Dienes <kdienes@apple.com> 2290 2291 * config.bfd: Add entries for powerpc-*-darwin and cousins. 2292 2293 2002-11-13 H.J. Lu <hjl@gnu.org> 2294 2295 * elfcode.h (elf_object_p): Don't restore abfd->arch_info. 2296 2297 2002-11-13 Klee Dienes <kdienes@apple.com> 2298 Alan Modra <amodra@bigpond.net.au> 2299 2300 * bfd.c (struct bfd_preserve): New. 2301 (bfd_preserve_save): New function. 2302 (bfd_preserve_restore): Ditto. 2303 (bfd_preserve_finish): Ditto. 2304 * bfd-in2.h: Regenerate. 2305 * mach-o.c: Formatting. 2306 (bfd_mach_o_scan_read_symtab_symbol): Make "value" unsigned. 2307 (bfd_mach_o_object_p): Use bfd_preserve_save/restore/finish. 2308 (bfd_mach_o_core_p): Ditto. 2309 (bfd_mach_o_scan): Pass in mdata. 2310 * mach-o.h (bfd_mach_o_scan): Update prototype. 2311 * pef.c: Formatting. 2312 (bfd_pef_object_p): Use bfd_preserve_save/restore/finish. 2313 (bfd_pef_xlib_object_p): Ditto. 2314 (bfd_pef_scan): Pass in mdata. Move version check to bfd_pef_object_p. 2315 * pef.h (bfd_pef_scan): Update prototype. 2316 * xsym.c: Formatting, K&R fixes. 2317 (bfd_sym_object_p): Use bfd_preserve_save/restore/finish. 2318 (bfd_sym_scan): New function split out from bfd_sym_object_p. 2319 * xsym.h (bfd_sym_scan): Declare. 2320 * elfcode.h (elf_object_p): Use bfd_preserve_save/restore/finish. 2321 * elfcore.h (elf_core_file_p): Likewise. 2322 * targets.c (_bfd_target_vector): Revert 2002-11-08 change. 2323 2324 2002-11-12 Nick Clifton <nickc@redhat.com> 2325 2326 * po/da.po: Updated Danish translation. 2327 2328 2002-11-12 Alan Modra <amodra@bigpond.net.au> 2329 2330 * elflink.h (elf_link_add_object_symbols): Optimize stabs for 2331 relocatable link too. 2332 (elf_link_input_bfd): When emitting relocs, adjust offsets for 2333 eh_frame and stab sections. Zap deleted relocs. 2334 (elf_reloc_symbol_deleted_p): Return true for zero r_symndx. 2335 (elf_bfd_discard_info): Run for relocatable link too. 2336 * elf64-ppc.c (ppc64_elf_edit_opd): Rename from edit_opd. Make global. 2337 Handle ld -r case. 2338 (ppc64_elf_size_dynamic_sections): Don't call edit_opd from here. 2339 * elf64-ppc.h (ppc64_elf_edit_opd): Declare. 2340 2341 * elf-bfd.h (struct cie_header): Move from elf_eh-frame.c. 2342 (struct cie, struct eh_cie_fde, struct eh_frame_sec_info): Likewise. 2343 (struct eh_frame_array_ent, struct eh_frame_hdr_info): Likewise. 2344 (enum elf_link_info_type): Remove ELF_INFO_TYPE_EH_FRAME_HDR. 2345 (struct eh_frame_hdr_info): Add "hdr_sec", remove "split". 2346 (struct elf_link_hash_table): Add eh_info. 2347 (struct elf_obj_tdata): Change eh_frame_hdr to an asection *. 2348 (_bfd_elf_discard_section_eh_frame): Update prototype. 2349 (_bfd_elf_discard_section_eh_frame_hdr): Likewise. 2350 (_bfd_elf_write_section_eh_frame): Likewise. 2351 (_bfd_elf_write_section_eh_frame_hdr): Likewise. 2352 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Remove "ehdrsec" 2353 param. Get "hdr_info" from link hash table. 2354 (_bfd_elf_discard_section_eh_frame_hdr): Remove "sec" param. Get 2355 header section from link hash table. Save header section to elf_tdata. 2356 (_bfd_elf_maybe_strip_eh_frame_hdr): Remove local "sec". Use 2357 header section from link hash table. Don't alloc hdr_info. Clear 2358 hdr_sec instead of setting "strip". 2359 (_bfd_elf_eh_frame_section_offset): Formatting. 2360 (_bfd_elf_write_section_eh_frame): Remove "ehdrsec", add "info" param. 2361 Get header section from link hash table. 2362 (_bfd_elf_write_section_eh_frame_hdr): Remove "sec", add "info" param. 2363 Get header section from link hash table. 2364 * elf.c (map_sections_to_segments): Use cached eh_frame_hdr. 2365 (get_program_header_size): Likewise. 2366 (_bfd_elf_section_offset): Formatting. 2367 * elflink.h (elf_link_create_dynamic_sections): Stash eh frame header 2368 section pointer in link hash table. 2369 (elf_bfd_final_link): Adjust _bfd_elf_write_section_eh_frame_hdr 2370 and _bfd_elf_write_section_eh_frame calls. Update comment about 2371 eh_frame entries. 2372 (elf_bfd_discard_info): Adjust _bfd_elf_discard_section_eh_frame and 2373 _bfd_elf_discard_section_eh_frame_hdr calls. Remove "ehdr". 2374 2375 * po/SRC-POTFILES.in: Regenerate. 2376 2377 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't zero 2378 relocs for discarded FDEs. Remove dead code. 2379 (_bfd_elf_write_section_eh_frame_hdr): Remove dead code. 2380 * elflink.h (elf_bfd_discard_info): Don't save edited relocs. 2381 Tidy conditions under which stabs are edited. Formatting. 2382 * elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows 2383 from discarded relocs. 2384 * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Add reloc output 2385 section adjustments after testing magic values. 2386 2387 2002-11-12 Thomas Moestl <tmm@FreeBSD.org> 2388 2389 * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Correct 2390 references to large plt symbols. 2391 2392 2002-11-12 Klee Dienes <kdienes@apple.com> 2393 2394 * mach-o.c (bfd_mach_o_scan_read_thread): Don't re-use 'i' when 2395 looking for an unused section name. 2396 2397 2002-11-11 Kazu Hirata <kazu@cs.umass.edu> 2398 2399 * coff-h8300.c: Fix formatting. 2400 * elf32-h8300.c: Likewise. 2401 * reloc16.c: Likewise. 2402 2403 2002-11-09 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com> 2404 2405 * elf32-arm.h (elf32_arm_size_dynamic_sections): Don't strip output 2406 section when dynamic section unused; _bfd_strip_section_from_output 2407 instead. 2408 2409 2002-11-08 Alan Modra <amodra@bigpond.net.au> 2410 2411 * targets.c (_bfd_target_vector): Disable pef_vec, pef_xlib_vec 2412 and sym_vec. 2413 2414 * dwarf2.c: Revert last change. 2415 2416 2002-11-07 Michal Ludvig <mludvig@suse.cz> 2417 2418 * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info, 2419 _bfd_dwarf2_find_nearest_line): Use 2420 bfd_simple_get_relocated_section_contents() instead of 2421 bfd_get_section_contents(). 2422 * reloc.c (bfd_perform_relocation): Add sanity check. 2423 * simple.c (simple_get_relocated_section_contents): If the section 2424 does not have any relocs associated with it, just return the 2425 unadjusted contents. 2426 2427 2002-11-07 Hans-Peter Nilsson <hp@axis.com> 2428 2429 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOT, 2430 case R_CRIS_32_GOT>: Correct test for filling in constant .got 2431 contents, enabling for a non-DSO, for symbols defined in the 2432 program with --export-dynamic. 2433 2434 2002-11-07 Alan Modra <amodra@bigpond.net.au> 2435 2436 * elf64-ppc.c: Comment typo fixes. 2437 (ppc64_elf_merge_private_bfd_data): Allow BFD_ENDIAN_UNKNOWN input. 2438 2439 2002-11-07 Nick Clifton <nickc@redhat.com> 2440 2441 * po/da.po: Updated Danish translation. 2442 2443 2002-11-06 Alexandre Oliva <aoliva@redhat.com> 2444 2445 * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Generate 2446 exactly three internal relocs per external reloc. Set reloc_count 2447 to the external reloc count. 2448 2449 2002-11-06 Klee Dienes <kdienes@apple.com> 2450 2451 * coff-stgo32.c (stub_bytes): Mark as const. 2452 Fix comment formatting. 2453 2454 2002-11-06 Klee Dienes <kdienes@apple.com> 2455 2456 * Makefile.am (BFD32_BACKENDS): Add mach-o.lo, pef.lo, and 2457 xsym.lo. 2458 (BFD32_BACKENDS_CFILES): Add mach-o.c, pef.c, and xsym.c. 2459 (SOURCE_HFILES): Add mach-o.h, pef.h, pef-traceback.h, xsym.h 2460 * archures.c (enum bfd_architecture): Add bfd_arch_m98k. 2461 * bfd.c (struct bfd): Add private data for mach-o, pef, and sym. 2462 * targets.c (enum bfd_flavour): Add flavours for mach-o, pef, and 2463 sym. 2464 (_bfd_target_vector): Add target vectors for mach-o, pef, and sym. 2465 * Makefile.in: Regenerate. 2466 * doc/Makefile.in: Regenerate. 2467 * bfd-in2.h: Regenerate. 2468 * xsym.c: New file. Contains support for the Apple/Metrowerks 2469 xSYM debugging format. 2470 * xsym.h: New file. 2471 * pef.c: New file. Contains support for the Apple Code Fragment 2472 Manager Preferred Executable Format 2473 * pef.h: New file. 2474 * pef-traceback.h: New file. Contains support for parsing PowerPC 2475 traceback tables as used by PEF executables (and perhaps other 2476 systems as well). 2477 * mach-o.c: New file. Contains support for the Mach-O object file 2478 format. 2479 * mach-o.h: New file. 2480 * mach-o-target.c: New file. Declares the mach-o targets 2481 themselves. Included three times by mach-o.c; each time with a 2482 different set of macros set. 2483 2484 2002-11-06 Graeme Peterson <gp@qnx.com> 2485 2486 * Makefile.am: Remove entries for elf32-qnx.[ch]. 2487 * Makefile.in: Regenerate. 2488 * config.bfd: Change arm-nto to use bfd_elf32_{big|little}arm_vec, 2489 ppc-nto to use bfd_elf32_powerpc{le}_vec, sh-nto to use 2490 bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec. 2491 * configure.in: Remove support for bfd_elf32_sh{l}qnx_vec, 2492 bfd_elf32_powerpc{le}qnx_vec, bfd_elf32_{big|little}armqnx_vec, 2493 and bfd_elf32_i386qnx_vec, and removed elf32-qnx.lo from other targets. 2494 bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec. 2495 * configure: Regenerate. 2496 * elf32-qnx.c: Remove. 2497 * elf32-qnx.h: Remove. 2498 * elf.c: Remove calls to QNX specific set_nonloadable_filepos, 2499 is_contained_by_filepos, and copy_private_bfd_data_p. 2500 * elf-bfd.h (struct elf_backend_data): Remove set_nonloadable_filepos, 2501 is_contained_by_filepos, and copy_private_bfd_data_p. 2502 * elf32-i386.c: Remove QNX extended bfd support. 2503 * elf32-ppc.c: Remove QNX extended bfd support. 2504 * elf32-sh.c: Remove QNX extended bfd support. 2505 * elfarm-nabi.c: Remove QNX extended bfd support. 2506 * targets.c: Remove qnx vectors. 2507 * elfxx-target.h (elf_backend_set_nonloadable_filepos): Remove 2508 (elf_backend_is_contained_by_filepos): Remove. 2509 (elf_backend_copy_private_bfd_data_p): Remove. 2510 * po/SRC-POTFILES.in: Regenerate. 2511 2512 2002-11-06 David O'Brien <obrien@FreeBSD.org> 2513 Alan Modra <amodra@bigpond.net.au> 2514 2515 * elf64-sparc.c (sparc64_elf_relocate_section): Adjust addend of 2516 dynamic relocs against section symbols for the output section vma. 2517 2518 2002-11-05 Alan Modra <amodra@bigpond.net.au> 2519 2520 * elf32-arm.h (t2a1_push_insn, t2a2_ldr_insn, t2a3_mov_insn, 2521 t2a4_bx_insn, t2a5_pop_insn, t2a6_bx_insn): Remove. 2522 2523 2002-11-05 Kaz Kojima <kkojima@rr.iij4u.or.jp> 2524 Alan Modra <amodra@bigpond.net.au> 2525 2526 * config.bfd (sh-*-linux*): Use bfd_elf*_sh64*lin_vec as sh64 2527 vectors in target_selvecs. 2528 (shle-*-netbsdelf*): Use bfd_elf*_sh64*nbsd_vec as sh64 vectors 2529 in target_selvecs. 2530 (sh-*-netbsdelf*): Likewise. 2531 * configure.in (assocvecs): New variable. Handle assocvecs like 2532 selvecs. 2533 * configure: Regenerate. 2534 * format.c (bfd_check_format_matches): Store bfd_target pointers 2535 in matching_vector instead of target names. Select first target 2536 from bfd_associated_vector that matches a list of ambiguous targets. 2537 * targets.c (_bfd_associated_vector): New array. 2538 (bfd_associated_vector): New variable. 2539 (_bfd_target_vector): Add bfd_elf*_sh64*lin_vec. 2540 * libbfd-in.h (bfd_associated_vector): Declare. 2541 * libbfd.h: Regenerate. 2542 2543 2002-11-05 Elias Athanasopoulos <eathan@otenet.gr> 2544 2545 * vms-gsd.c (_bfd_vms_write_gsd): Check that symbol->udata.p is 2546 non-NULL before dereferencing. 2547 2548 2002-11-04 Kaz Kojima <kkojima@rr.iij4u.or.jp> 2549 2550 * vms.c (vms_object_p): Restore the start address when returning 2551 NULL. 2552 2553 2002-11-04 Alan Modra <amodra@bigpond.net.au> 2554 Hans-Peter Nilsson <hp@axis.com> 2555 2556 * elflink.h (struct elf_final_link_info): Add shndxbuf_size. 2557 (elf_bfd_final_link): Don't bother zeroing symtab_hdr fields. 2558 Set up a larger symshndxbuf, and write it out. Free it on 2559 exit rather than freeing symbuf twice. Correct section index 2560 on output section symbol loop. 2561 (elf_link_output_sym): Accumulate symbol extension section 2562 indices, reallocating symshndxbuf rather than writing it out. 2563 (elf_link_flush_output_syms): Don't flush symshndxbuf. 2564 * elf.c (assign_section_numbers): Init i_shdrp to all zero. 2565 Use bfd_zalloc to clear i_shdrp[0] too. 2566 2567 2002-11-03 Stephen Clarke <stephen.clarke@earthling.net> 2568 2569 * elf32-sh64-com.c (sh64_address_in_cranges): Use 2570 _raw_size of cranges section if _cooked_size not yet set. 2571 2572 2002-11-03 Hans-Peter Nilsson <hp@axis.com> 2573 2574 * elf32-v850.c (v850_elf_relax_delete_bytes): Correct parameters 2575 for bfd_elf32_swap_symbol_out. 2576 2577 2002-10-31 David O'Brien <obrien@FreeBSD.org> 2578 2579 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't mix 2580 signed and unsigned in comparison. 2581 2582 2002-10-30 Daniel Jacobowitz <drow@mvista.com> 2583 2584 * coffcode.h: Remove extraneous '\'. 2585 2586 2002-10-28 H.J. Lu <hjl@gnu.org> 2587 2588 * Makefile.am (targets.lo): Depend on Makefile instead of 2589 config.status. 2590 (archures.lo): Likewise. 2591 * Makefile.in: Regenerated. 2592 2593 2002-10-25 Jason Thorpe <thorpej@wasabisystems.com> 2594 2595 * config.bfd (mips*el-*-netbsd*, mips*-*-netbsd*): Add 2596 bfd_elf64_bigmips_vec and bfd_elf64_littlemips_vec to 2597 targ_selvecs. 2598 2599 2002-10-25 Jim Wilson <wilson@redhat.com> 2600 2601 * elf64-sh64.c (sh_elf64_relocate_section): Call 2602 _bfd_elf_rela_local_sym. Handle relocs against STT_SECTION symbol 2603 of SHF_MERGE section. 2604 2605 2002-10-25 Hans-Peter Nilsson <hp@axis.com> 2606 2607 * simple.c: Correct placement of ATTRIBUTE_UNUSED. 2608 2609 2002-10-24 John David Anglin <dave@hiauly1.hia.nrc.ca> 2610 2611 * aoutx.h (NAME(aout,swap_ext_reloc_in)): Cast bytes->r_index to 2612 unsigned int. Cast RELOC_BASE10, RELOC_BASE13 and RELOC_BASE22 to 2613 unsigned int. 2614 (NAME(aout,final_link)): Cast enum used in assignment. 2615 (aout_link_write_symbols): Cast enums in comparisons, int values to 2616 boolean, enums in assignments to int. 2617 (aout_link_input_section_std): Cast rel->r_index to unsigned int. 2618 (aout_link_input_section_ext): Likewise. Cast enums used in comparisons 2619 with unsigned ints. 2620 (aout_link_reloc_link_order): Cast enum to int in assignment. 2621 * archive.c (_bfd_generic_read_ar_hdr_mag): Cast result of memchr 2622 calls to char *. 2623 * bfd-in.h (bfd_set_section_vma): Cast enum true to unsigned int in 2624 assignment. 2625 * bfd-in2.h (bfd_set_section_vma): Likewise. 2626 * bfd.c (bfd_record_phdr): Cast enums in assignments. 2627 * binary.c (bfd_alloc): Cast enum to long. 2628 * coffgen.c (_bfd_coff_is_local_label_name): Cast return to boolean. 2629 * dwarf2.c (read_abbrevs): Add casts to enum types. 2630 (read_attribute_value): Likewise. 2631 (arange_add): Cast result of bfd_zalloc call. 2632 (comp_unit_contains_address): Return true and false. 2633 (comp_unit_find_nearest_line): Cast return to boolean. 2634 * format.c (bfd_check_format_matches, bfd_set_format): Likewise. 2635 * gen-aout.c: define macro '_' if not defined. 2636 * libbfd.c (bfd_realloc): Cast malloc and realloc to PTR. 2637 (bfd_bwrite): Cast bfd_realloc to bfd_byte *. 2638 (bfd_write_bigendian_4byte_int): Cast return to boolean. 2639 (bfd_seek): Cast bfd_realloc to bfd_byte *. 2640 (bfd_generic_is_local_label_name): Cast return to boolean. 2641 * libcoff.h (_bfd_coff_adjust_symndx): Remove extraneous '\'. 2642 * linker.c (_bfd_link_hash_newfunc): Cast bfd_hash_allocate result to 2643 struct bfd_hash_entry *. 2644 (_bfd_generic_link_hash_newfunc): likewise. 2645 (_bfd_generic_final_link): Cast enum to unsigned int. 2646 * merge.c (sec_merge_emit): Cast return to boolean. 2647 (merge_strings): Add casts to const unsigned char *. 2648 * reloc.c (bfd_get_reloc_code_name): Cast enums in comparison to int. 2649 (bfd_generic_get_relocated_section_content): Cast enum to unsigned int. 2650 * section.c (bfd_section_hash_newfunc): Cast bfd_hash_allocate result to 2651 struct bfd_hash_entry *. 2652 (bfd_set_section_content): Add cast to PTR in comparison. 2653 * simple.c (simple_dummy_warning, simple_dummy_undefined_symbol, 2654 simple_dummy_reloc_overflow, simple_dummy_reloc_dangerous, 2655 simple_dummy_unattached_reloc, 2656 bfd_simple_get_relocated_section_contents): Add K&R declarations and 2657 function definitions. 2658 * srec.c (S3Forced): Initialize to false. 2659 (srec_get_symtab): Cast return value from bfd_alloc to asymbol *. 2660 * stabs.c (_bfd_link_section_stabs): Cast enum to int in comparisons. 2661 (_bfd_discard_section_stabs): Likewise. Also cast return to boolean. 2662 * syms.c (bfd_is_undefined_symclass): Cast return to boolean. 2663 (_bfd_stab_section_find_nearest_line): Cast enum to bfd_byte in 2664 comparisons. 2665 2666 2002-10-23 Jakub Jelinek <jakub@redhat.com> 2667 2668 * elf64-alpha.c (elf64_alpha_check_relocs): Only put maybe_dynamic 2669 relocs into shared lib non-allocated reloc sections. 2670 2671 2002-10-23 Nathan Tallent <eraxxon@alumni.rice.edu> 2672 2673 * dwarf2.c (add_line_info): Ensure that the line_info_table is 2674 sorted even when given an out-of-order line sequence. 2675 (lookup_address_in_line_info_table): When an exact VMA match is 2676 not found, return line information with the closest VMA. 2677 2678 2002-10-23 Ross Alexander <ross.alexander@uk.neceur.com> 2679 2680 * elf64-hppa.c: Force DT_FLAGS to always be set. Required by 2681 HPUX 11.00 patch PHSS_26559. 2682 2683 2002-10-22 Alexandre Oliva <aoliva@redhat.com> 2684 2685 * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Don't move 2686 the options section into a separate section unless IRIX 6 2687 compatibility is enabled. 2688 2689 2002-10-22 Alexandre Oliva <aoliva@redhat.com> 2690 2691 * elflink.h (struct elf_link_sort_rela): Turn rel and rela 2692 into arrays. 2693 (elf_link_sort_cmp1, elf_link_sort_cmp2): Adjust. 2694 (elf_link_sort_relocs): Likewise. Take int_rels_per_ext_rel 2695 into account. 2696 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Compose 2697 R_MIPS_REL32 with R_MIPS64 if ABI_64_P. 2698 2699 2002-10-21 Graeme Peterson <gp@qnx.com> 2700 2701 * targets.c (_bfd_target_vector): Add missing qnx vectors. 2702 2703 2002-10-21 Alan Modra <amodra@bigpond.net.au> 2704 2705 * targets.c (bfd_target_list): Don't return the default target twice. 2706 2707 2002-10-21 Elias Athanasopoulos <eathan@otenet.gr> 2708 2709 * archive.c (_bfd_archive_bsd_update_armap_timestamp): Replace 2710 perror with bfd_perror. 2711 2712 2002-10-19 H.J. Lu <hjl@gnu.org> 2713 2714 * elflink.h (elf_link_add_object_symbols): Correctly handle 2715 DT_RPATH and DT_RUNPATH. 2716 2717 2002-10-19 Mark Kettenis <kettenis@gnu.org> 2718 2719 * elf.c (elfcore_grok_note): Fix recognition on NT_PRXFPREG notes. 2720 2721 2002-10-17 Denis Chertykov <denisc@overta.ru> 2722 2723 * elf32-ip2k.c (ELF_MACHINE_ALT1): Define alternate machine code 2724 for ip2k port. 2725 2726 2002-10-17 Alan Modra <amodra@bigpond.net.au> 2727 2728 * elfxx-target.h (USE_REL): Don't define as 1. 2729 * elf32-arm.h (USE_REL): Provide a default define of 0. 2730 Use #if rather than #ifdef when testing USE_REL. 2731 * elf32-m32r.c: Likewise. 2732 2733 * elf32-arc.c (USE_REL): Define as 1. 2734 * elf32-d10v.c (USE_REL): Likewise. 2735 * elf32-m32r.c (USE_REL): Likewise. 2736 * elf32-m68hc11.c (USE_REL): Likewise. 2737 * elf32-m68hc12.c (USE_REL): Likewise. 2738 * elf32-or32.c (USE_REL): Likewise. 2739 * elfarm-nabi.c (USE_REL): Likewise. 2740 2741 2002-10-16 Jakub Jelinek <jakub@redhat.com> 2742 2743 * config.bfd (s390-*-linux*): Add targ64_selvecs. 2744 (s390x-*-linux*): Add targ_selvecs. 2745 2746 2002-10-16 Alan Modra <amodra@bigpond.net.au> 2747 2748 * Makefile.am (BFD32_BACKENDS): Remove elfarmqnx-nabi.lo, 2749 elf32-i386-fbsd.lo, elf32-i386qnx.lo, elf32-ppcqnx.lo, 2750 elf32-sh-lin.lo, elf32-sh64-lin.lo, elf32-sh-nbsd.lo, 2751 elf32-sh64-nbsd.lo, elf32-shqnx.lo. Add elf32-qnx.lo. 2752 (BFD32_BACKENDS_CFILES): Likewise for corresponding C files. 2753 (BFD64_BACKENDS): Remove elf64-sh64-lin.lo, elf64-sh64-nbsd.lo. 2754 (BFD64_BACKENDS_CFILES): Likewise for corresponding C files. 2755 (SOURCE_HFILES): Add elf32-qnx.h. 2756 (BUILD_HFILES): Add bfdver.h. 2757 Run "make dep-am". 2758 * Makefile.in: Regenerate. 2759 * configure.in Update bfd vector dependencies. 2760 * configure: Regenerate. 2761 * elf32-i386-fbsd.c: Delete. Move code to elf32-i386.c. 2762 * elf32-i386qnx.c: Likewise. 2763 * elf32-ppcqnx.c: Delete. Move code to elf32-ppc.c. 2764 * elf32-sh-nbsd.c: Delete. Move code to elf32-sh.c. 2765 * elf32-sh-lin.c: Likewise. 2766 * elf32-shqnx.c: Likewise. 2767 * elf32-sh64-lin.c: Delete. Move code to elf32-sh64.c. 2768 * elf32-sh64-nbsd.c: Likewise. 2769 * elf64-sh64-lin.c: Delete. Move code to elf64-sh64.c. 2770 * elf64-sh64-nbsd.c: Likewise. 2771 * elfarmqnx-nabi.c: Delete. Move code to elfarm-nabi.c. 2772 * elf32-arm.h (ELF_MAXPAGESIZE): Always define. 2773 * elf32-i386.c: Remove ELF_ARCH and ELF32_I386_C_INCLUDED tests. 2774 * elf32-ppc.c: Remove ELF32_PPC_C_INCLUDED tests. 2775 * elf32-qnx.h (elf_backend_set_nonloadable_filepos): Always define. 2776 (elf_backend_is_contained_by_filepos): Likewise. 2777 (elf_backend_copy_private_bfd_data_p): Likewise. 2778 Globalize and move functions to.. 2779 * elf32-qnx.c: ..here. New file. 2780 * elf32-sh.c: Remove ELF_ARCH and ELF32_SH_C_INCLUDED tests. Don't 2781 emit target vectors when INCLUDE_SHMEDIA. 2782 * elf32-sh64.c: Remove ELF_ARCH test. Move TARGET_* etc. defines to 2783 end of file. 2784 * elf64-sh64.c: Remove ELF_ARCH test. 2785 * elfarm-nabi.c: Remove ELFARM_NABI_C_INCLUDED test. 2786 * po/BLD-POTFILES.in: Regenerate. 2787 * po/SRC-POTFILES.in: Regenerate. 2788 2789 2002-10-16 Alan Modra <amodra@bigpond.net.au> 2790 2791 * elflink.h (elf_link_add_object_symbols): Error out on dynamic objects 2792 loaded with --just-symbols. 2793 2794 * elf32-i386qnx.c (TARGET_LITTLE_NAME): Define. 2795 * elf32-ppcqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define. 2796 * elf32-shqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define. 2797 * elfarmqnx-nabi.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define. 2798 2799 2002-10-15 Richard Henderson <rth@redhat.com> 2800 2801 * Makefile.am (BFD64_BACKENDS): Remove elf64-alpha-fbsd. 2802 (BFD64_BACKENDS_CFILES): Likewise. 2803 * configure.in (bfd_elf64_alpha_freebsd_vec): Use elf64-alpha. 2804 * elf64-alpha-fbsd.c: Remove file, move code ... 2805 * elf64-alpha.c: ... here. 2806 * Makefile.in, configure: Rebuild. 2807 2808 2002-10-14 Richard Henderson <rth@redhat.com> 2809 2810 * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: Increment 2811 VALUE, not ADDEND. 2812 2813 2002-10-14 Stephen Clarke <stephen.clarke@superh.com> 2814 2815 * elf32-sh.c (elf_sh_link_hash_entry): Replace 2816 datalabel_got_offset with union of datalabel_got 2817 offset and refcount. 2818 (sh_elf_link_hash_newfunc): Initialize datalabel_got.refcount. 2819 (allocate_dynrelocs): Delete unnecessary code for 2820 STT_DATALABEL type. Create entry in got for 2821 datalabel version of symbol if datalabel_got.refcount > 0. 2822 (sh_elf_relocate_section): Use datalabel_got union. 2823 (sh_elf_gc_sweep_hook): Pull common code to initialize 2824 h and eh out of switch statement. Declare seen_stt_datalabel. 2825 Initialize it. Decrement datalabel_got.refcount for 2826 got relocs when seen_stt_datalabel is true. 2827 Decrement local_got_refcounts entry for datalabel got relocs 2828 of local symbols. 2829 (sh_elf_copy_indirect_symbol): Copy datalabel_got field over. 2830 (sh_elf_check_relocs): Declare seen_stt_datalabel. 2831 Initialize it. When seen_stt_datalabel is true, increment 2832 datalabel_got refcount rather than got.refcount. 2833 (sh_elf_finish_dynamic_symbol): Create relocs to 2834 initialize got entry for datalabel version of symbol. 2835 2836 2002-10-14 Alan Modra <amodra@bigpond.net.au> 2837 2838 * Makefile.am: Run "make dep-am". 2839 (BFD_H_FILES): Remove version.h. 2840 * bfd-in.h (BFD_VERSION, BFD_VERSION_DATE, BFD_VERSION_STRING): Move.. 2841 * version.h: ..to here. 2842 * configure.in (bfd_version_date): Remove. 2843 (AC_OUTPUT): Make bfdver.h from version.h. 2844 * bfd.c: #include "bfdver.h". 2845 * vms-hdr.c: Likewise. 2846 * Makefile.in: Regenerate. 2847 * bfd-in2.h: Regenerate. 2848 * configure: Regenerate. 2849 * po/SRC-POTFILES.in: Regenerate. 2850 2851 2002-10-14 Alan Modra <amodra@bigpond.net.au> 2852 2853 * archures.c (bfd_mach_i386_i386, bfd_mach_i386_i8086, 2854 bfd_mach_i386_i386_intel_syntax, bfd_mach_x86_64, 2855 bfd_mach_x86_64_intel_syntax bfd_mach_ppc, bfd_mach_ppc64, 2856 bfd_mach_rs6k, bfd_mach_d10v, bfd_mach_sh, bfd_mach_v850, 2857 bfd_mach_arc_5, bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8, 2858 bfd_mach_m32r, bfd_mach_frv, bfd_mach_frvsimple, 2859 bfd_mach_ia64_elf64, bfd_mach_ia64_elf32, 2860 bfd_mach_ip2022, bfd_mach_ip2022ext, 2861 bfd_mach_s390_31, bfd_mach_s390_64, bfd_mach_xstormy16): Renumber. 2862 * bfd-in2.h: Regenerate. 2863 2864 2002-10-14 Kaz Kojima <kkojima@rr.iij4u.or.jp> 2865 2866 * config.bfd (sh*eb-*-linux*, sh*-*-linux*): Add the alternative 2867 endian vector to targ_selvecs. 2868 2869 2002-10-13 Alexandre Oliva <aoliva@redhat.com> 2870 2871 * elfxx-mips.c (mips_elf_calculate_relocation): Take 2872 save_addend argument. Don't apply the 32-bit mask to a 2873 GPREL32 value if it's to be used in another relocation. Don't 2874 use forced-check computation of local_p to decide whether to 2875 add gp0 to GPREL16 value. Don't use only the lowest 16 bits 2876 of the addend of a non-in-place GPREL16 relocation. 2877 (_bfd_mips_elf_relocate_section): Pass use_saved_addend_p to 2878 mips_elf_calculate_relocation(). 2879 2880 2002-10-12 Stephane Carrez <stcarrez@nerim.fr> 2881 2882 * elf32-m68hc11.c (m68hc11_elf_relax_section): Don't treat relocs 2883 with symbols in other sections if we relaxed something; the sections 2884 output offsets must be re-computed before. 2885 2886 2002-10-12 Stephane Carrez <stcarrez@nerim.fr> 2887 2888 * elf32-m68hc11.c (m68hc11_elf_relax_section): Update symbols 2889 handling to use Elf_Internal_Sym. 2890 (m68hc11_elf_relax_delete_bytes): Likewise. 2891 2892 2002-10-11 Kaz Kojima <kkojima@rr.iij4u.or.jp> 2893 2894 * elf32-sh.c (sh_elf_optimized_tls_reloc, sh_elf_mkobject, 2895 sh_elf_object_p, dtpoff_base): New functions. 2896 (sh_elf_howto_table): Add TLS relocs. 2897 (sh_reloc_map): Likewise. 2898 (sh_elf_info_to_howto): Support TLS relocs. 2899 (elf_sh_link_hash_entry): Add tls_type and tls_tpoff32. 2900 (sh_elf_hash_entry, sh_elf_tdata, sh_elf_local_got_tls_type): 2901 New macros. 2902 (sh_elf_obj_tdata): New. 2903 (elf_sh_link_hash_table): Add tls_ldm_got. 2904 (sh_elf_link_hash_table_create): Clear refcount of tls_ldm_got. 2905 (allocate_dynrelocs): Support TLS relocs. 2906 (sh_elf_size_dynamic_sections): Likewise. 2907 (sh_elf_relocate_section): Support TLS relocs. Don't try to find 2908 .rela.got section when found already. Return false after printing 2909 error about unresolvable relocation. 2910 (sh_elf_gc_sweep_hook): Support TLS relocs. 2911 (sh_elf_check_relocs): Likewise. 2912 (sh_elf_finish_dynamic_symbol): Likewise. 2913 (bfd_elf32_mkobject, elf_backend_object_p): Define for TLS case. 2914 * reloc.c: Add SH TLS relocs. 2915 * bfd-in2.h, libbfd.h: Regenerate. 2916 2917 2002-10-11 Daniel Jacobowitz <drow@mvista.com> 2918 2919 * Makefile.in: Regenerated. 2920 2921 2002-10-11 Daniel Jacobowitz <drow@mvista.com> 2922 2923 * Makefile.am: Run dep-am. 2924 (BFD_H_DEP): Add simple.c and linker.c. 2925 (BFD32_LIBS): Add simple.lo. 2926 (BFD32_LIBS_CFILES): Add simple.c. 2927 * Makefile.in: Regenerated. 2928 * bfd-in2.h: Regenerated. 2929 * simple.c: New file. 2930 2931 2002-10-11 Alan Modra <amodra@bigpond.net.au> 2932 2933 * coff-arm.c (record_arm_to_thumb_glue): Avoid type-punned pointers. 2934 (record_thumb_to_arm_glue): Likewise. 2935 * ecoff.c (ecoff_link_add_externals): Likewise. 2936 * elf32-arm.h (record_arm_to_thumb_glue): Likewise. 2937 (record_thumb_to_arm_glue): Likewise. 2938 * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise. 2939 * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise. 2940 * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise. 2941 * elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise. 2942 * elf64-ppc.c (func_desc_adjust): Likewise. 2943 * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise. 2944 (sh64_elf64_create_dynamic_sections): Likewise. 2945 * elflink.c (_bfd_elf_create_got_section): Likewise. 2946 (_bfd_elf_create_dynamic_sections): Likewise. 2947 (_bfd_elf_create_linker_section): Likewise. 2948 * elflink.h (elf_add_default_symbol): Likewise. 2949 (elf_link_create_dynamic_sections): Likewise. 2950 (NAME(bfd_elf,size_dynamic_sections)): Likewise. 2951 * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Likewise. 2952 * elfxx-mips.c (mips_elf_create_got_section): Likewise. 2953 (_bfd_mips_elf_add_symbol_hook): Likewise. 2954 (_bfd_mips_elf_create_dynamic_sections): Likewise. 2955 * linker.c (generic_link_add_symbol_list): Likewise. 2956 * xcofflink.c (xcoff_link_add_symbols): Likewise. 2957 2958 * elfxx-ia64.c (oor_brl, oor_ip): Conditionally define. 2959 2960 * elf64-ppc.c (edit_opd): Only zero opd syms when function is 2961 completely removed. Correct local sym adjustment. 2962 2963 2002-10-10 Stephen Clarke <stephen.clarke@superh.com> 2964 2965 * elf32-sh.c (elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): 2966 Correct mistake in calculation of address of .got. 2967 * elf64-sh64.c (elf_sh64_pic_plt_entry_be, 2968 elf_sh64_pic_plt_entry_le): Likewise. 2969 2970 2002-10-09 Richard Shann <richard.shann@superh.com> 2971 Stephen Clarke <stephen.clarke@superh.com> 2972 2973 * Makefile.am: Add entries for elf32-sh64-lin.c and 2974 elf64-sh64-lin.c. Regenerate. 2975 * Makefile.in: Regenerate. 2976 * config.bfd: Change sh64eb-*-linux* and sh64-*-linux* 2977 to use sh64 vectors rather than sh vectors. 2978 * configure.in: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec, 2979 bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec. 2980 * configure: Regenerate. 2981 * elf32-sh64-lin.c: New file. 2982 * elf64-sh64-lin.c: New file. 2983 * targets.c: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec, 2984 bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec. 2985 2986 2002-10-08 H.J. Lu <hjl@gnu.org> 2987 2988 * elf32-i386.c (elf_i386_relocate_section): Re-arrange the 2989 IE->LE transition for R_386_TLS_IE. 2990 2991 2002-10-08 Alan Modra <amodra@bigpond.net.au> 2992 2993 * elf64-ppc.c (edit_opd): Correct test for discarded sections. 2994 2995 2002-10-07 Mark Elbrecht <snowball3@softhome.net> 2996 2997 * cofflink.c (mark_relocs): Don't mark relocations in excluded 2998 sections. 2999 3000 2002-10-07 Alan Modra <amodra@bigpond.net.au> 3001 3002 * elflink.h (elf_link_input_bfd): Remove BFD_VERSION_DATE dependent 3003 code. 3004 3005 * elf64-ppc.c (ppc64_elf_build_stubs): Increment .glink indx. 3006 3007 2002-10-06 Alan Modra <amodra@bigpond.net.au> 3008 3009 * opncls.c: Formatting. 3010 (_bfd_new_bfd): Use a smaller section hash table. 3011 3012 2002-10-05 Alexandre Oliva <aoliva@redhat.com> 3013 3014 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Set the type 3015 of the other two relocations packed with a REL32 to NONE. 3016 3017 2002-10-02 Stephen Clarke <stephen.clarke@superh.com> 3018 3019 * elf32-sh.c (elf_sh_link_hash_entry): Add gotplt_refcount. 3020 (sh_elf_link_hash_newfunc): Initialize it. 3021 (allocate_dynrelocs): Transfer gotplt refs from plt.refcount 3022 to got.refcount for symbols that are forced local or when 3023 we have direct got refs. 3024 (sh_elf_gc_sweep_hook): Adjust gotplt_refcount. Use it 3025 to correctly adjust got.refcount and plt.refcount. 3026 (sh_elf_copy_indirect_symbol): Copy gotplt_refcount across. 3027 (sh_elf_check_relocs): Increment gotplt_refcount. 3028 3029 2002-10-01 Jakub Jelinek <jakub@redhat.com> 3030 3031 * elf32-i386.c (elf_i386_relocate_section): Fix 3032 movl foo@indntpoff, %eax IE->LE transition. 3033 3034 2002-10-01 Jakub Jelinek <jakub@redhat.com> 3035 3036 * elf64-x86-64.c (elf64_x86_64_relocate_section): Change TLSGD 3037 sequence and its transitions. 3038 3039 2002-10-01 Jakub Jelinek <jakub@redhat.com> 3040 3041 * elf32-i386.c (elf_i386_relocate_section): Resolve R_386_TLS_LDO_32 3042 to st_value + addend in non-code sections. 3043 * elf64-x86-64.c (elf64_x86_64_relocate_section): Resolve 3044 R_X86_64_DTPOFF32 to st_value + addend in non-code sections. 3045 3046 2002-09-30 Gavin Romig-Koch <gavin@redhat.com> 3047 Ken Raeburn <raeburn@cygnus.com> 3048 Aldy Hernandez <aldyh@redhat.com> 3049 Eric Christopher <echristo@redhat.com> 3050 Richard Sandiford <rsandifo@redhat.com> 3051 3052 * archures.c (bfd_mach_mips4120, bfd_mach_mips5400): New. 3053 (bfd_mach_mips5500): New. 3054 * cpu-mips.c (I_mips4120, I_mips5400, I_mips5500): New. 3055 (arch_info_struct): Add corresponding entries here. 3056 * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_4120, 3057 E_MIPS_MACH_5400 and E_MIPS_MACH_5500. 3058 (_bfd_mips_elf_final_write_processing): Handle bfd_mach_mips4120, 3059 bfd_mach_mips5400 and bfd_mach_mips5500. 3060 (_bfd_mips_elf_mach_extends_p): New function. 3061 (_bfd_mips_elf_merge_private_bfd_data): Use it to help merge 3062 the EF_MIPS_MACH flags. 3063 * bfd-in2.h: Regenerate. 3064 3065 2002-09-28 Jason Thorpe <thorpej@wasabisystems.com> 3066 3067 * elf32-vax.c (elf_vax_size_dynamic_section): Don't strip 3068 .got sections. 3069 3070 2002-09-28 Alan Modra <amodra@bigpond.net.au> 3071 3072 * elf.c (map_sections_to_segments): Correct test for start of 3073 writable section in the same page as end of read-only section. 3074 3075 2002-09-27 Matt Thomas <matt@3am-software.com> 3076 3077 * elf32-vax.c (elf_vax_check_relocs): Remove unused 3078 local_got_refcounts usage. Remove allocation of got slot. 3079 (elf_vax_gc_sweep_hook): Remove unused local_got_refcounts usage. 3080 Remove de-allocation of got slot. 3081 (elf_vax_size_dynamic_section): Fix some indentation. Add hash 3082 traversal for elf_vax_instantiate_got_entries. Allow empty .got 3083 sections to be GC'ed. 3084 (elf_vax_instantiate_got_entries): New function. 3085 (elf_vax_relocate_section): Simplify R_VAX_GOT32 handling. Remove 3086 tests that are now handled by elf_vax_instantiate_got_entries. 3087 Assert GOT entry falls within .got section size. Remove redundant 3088 comparisions. Fix comments. 3089 3090 2002-09-27 Jakub Jelinek <jakub@redhat.com> 3091 3092 * reloc.c: Add x86-64 TLS relocs. 3093 * bfd-in2.h, libbfd.h: Rebuilt. 3094 * elf64-x86-64.c (x86_64_elf_howto): Fix size fields for 32-bit 3095 relocs. Add TLS relocs. 3096 (x86_64_reloc_map): Add TLS relocs. 3097 (elf64_x86_64_info_to_howto): Adjust for added TLS relocs. 3098 (struct elf64_x86_64_link_hash_entry): Add tls_type field. 3099 (GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD, GOT_TLS_IE): Define. 3100 (elf64_x86_64_hash_entry): Define. 3101 (struct elf64_x86_64_obj_tdata): New. 3102 (elf64_x86_64_tdata, elf64_x86_64_local_got_tls_type): Define. 3103 (struct elf64_x86_64_link_hash_table): Add tls_ld_got. 3104 (link_hash_newfunc): Initialize tls_type. 3105 (elf64_x86_64_link_hash_table_create): Initialize tls_ld_got. 3106 (elf64_x86_64_copy_indirect_symbol): Swap tls_type if necessary. 3107 (elf64_x86_64_mkobject): New. 3108 (elf64_x86_64_elf_object_p): Allocate struct elf64_x86_64_obj_tdata. 3109 (elf64_x86_64_tls_transition): New. 3110 (elf64_x86_64_check_relocs): Add r_type variable and use it. 3111 Handle TLS relocs. 3112 (elf64_x86_64_gc_sweep_hook): Handle TLS relocs. 3113 (allocate_dynrelocs): Allocate GOT space for TLS relocs. 3114 (elf64_x86_64_size_dynamic_sections): Likewise. 3115 (dtpoff_base, tpoff): New. 3116 (elf64_x86_64_relocate_section): Handle TLS relocs. 3117 (elf64_x86_64_finish_dynamic_symbol): Only handle non-TLS GOT 3118 entries. 3119 (bfd_elf64_mkobject): Define. 3120 3121 * elf32-i386.c (elf_i386_check_relocs) [R_386_TLS_LE]: Set 3122 DF_STATIC_TLS if shared. 3123 3124 2002-09-26 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 3125 3126 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Don't emit unneeded 3127 empty relocation sections. 3128 3129 2002-09-26 Alan Modra <amodra@bigpond.net.au> 3130 3131 * elf64-ppc.c (ppc_build_one_stub): Don't build glink stubs here. 3132 (ppc64_elf_build_stubs): Build them here instead. 3133 3134 2002-09-24 Jakub Jelinek <jakub@redhat.com> 3135 3136 * elf32-sparc.c (elf32_sparc_relocate_section): Put R_SPARC_RELATIVE 3137 addend into r_addend, not *r_offset. 3138 (elf32_sparc_finish_dynamic_symbol): Likewise. 3139 * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Clear xword at 3140 R_SPARC_RELATIVE's r_offset. 3141 3142 2002-09-23 Nathan Tallent <eraxxon@alumni.rice.edu> 3143 3144 * dwarf2.c (decode_line_info): Update to correctly decode 3145 the (non-standard DWARF2) out-of-order address sequences 3146 generated by the Intel C++ 6.0 compiler for ia64-Linux. 3147 3148 2002-09-23 Mark Elbrecht <snowball3@softhome.net> 3149 3150 * config.bfd: For DJGPP targets, match with any cpu and any machine. 3151 3152 2002-09-23 Alan Modra <amodra@bigpond.net.au> 3153 3154 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Zero relocs 3155 for discarded FDEs. Remove redundant assignment. 3156 * elflink.h (elf_bfd_discard_info): Save edited relocs. 3157 3158 2002-09-22 H.J. Lu <hjl@gnu.org> 3159 3160 * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Don't merge 3161 the relocation count between different .reloc sections. 3162 3163 2002-09-21 Alan Modra <amodra@bigpond.net.au> 3164 3165 * elf32-ppc.c (ppc_elf_relocate_section): Allow ".sbss.*" and 3166 ".sdata.*" for R_PPC_SDAREL16, ".sbss2*" and ".sdata2*" for 3167 R_PPC_EMB_SDA2REL. Similarly for R_PPC_EMB_SDA21 and 3168 R_PPC_EMB_RELSDA. 3169 3170 * elfcode.h (elf_slurp_reloc_table_from_section): Make "symcount" 3171 unsigned. Move "symcount" assignment out of loop. 3172 * Makefile.am: Run "make dep-am". 3173 * Makefile.in: Regenerate. 3174 * configure: Regenerate. 3175 * po/SRC-POTFILES.in: Regnerate. 3176 3177 2002-09-19 Nathan Tallent <eraxxon@alumni.rice.edu> 3178 3179 * dwarf2.c (_bfd_dwarf2_find_nearest_line): If address length is 3180 zero, set it to 8 for (non-standard) 64-bit DWARF2 formats 3181 (e.g. IRIX64). 3182 3183 2002-09-19 Jakub Jelinek <jakub@redhat.com> 3184 3185 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Clear .got word 3186 even if generating R_PPC_RELATIVE reloc. 3187 (ppc_elf_relocate_section): Make sure relocation is performed 3188 if skip == -2. Clear memory at r_offset when creating dynamic 3189 relocation. 3190 3191 2002-09-19 Jakub Jelinek <jakub@redhat.com> 3192 3193 * reloc.c (BFD_RELOC_386_TLS_TPOFF, BFD_RELOC_386_TLS_IE, 3194 BFD_RELOC_386_TLS_GOTIE): Add. 3195 * bfd-in2.h, libbfd.h: Rebuilt. 3196 * elf32-i386.c (elf_howto_table): Add R_386_TLS_TPOFF, R_386_TLS_IE 3197 and R_386_TLS_GOTIE. 3198 (elf_i386_reloc_type_lookup): Handle it. 3199 (struct elf_i386_link_hash_entry): Change tls_type type to unsigned 3200 char instead of enum, change GOT_* into defines. 3201 (GOT_TLS_IE_POS, GOT_TLS_IE_NEG, GOT_TLS_IE_BOTH): Define. 3202 (elf_i386_tls_transition): Handle R_386_TLS_IE and R_386_TLS_GOTIE. 3203 (elf_i386_check_relocs): Likewise. Avoid crash if local symbol is 3204 accessed both as normal and TLS symbol. Move R_386_TLS_LDM and 3205 R_386_PLT32 cases so that R_386_TLS_IE can fall through. 3206 Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs. 3207 (elf_i386_gc_sweep_hook): Handle R_386_TLS_IE and R_386_TLS_GOTIE. 3208 Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs. 3209 (allocate_dynrelocs): Allocate 2 .got and 2 .rel.got entries if 3210 tls_type is GOT_TLS_IE_BOTH. 3211 (elf_i386_size_dynamic_sections): Likewise. 3212 (elf_i386_relocate_section): Handle R_386_TLS_IE and R_386_TLS_GOTIE. 3213 Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs. 3214 (elf_i386_finish_dynamic_symbol): Use tls_type & GOT_TLS_IE to catch 3215 all 4 GOT_TLS_* TLS types. 3216 3217 2002-09-19 Nick Clifton <nickc@redhat.com> 3218 3219 * elflink.h (elf_fix_symbol_flags): When examining weak symbols, 3220 follow indirect links. 3221 3222 2002-09-19 Nathan Tallent <eraxxon@alumni.rice.edu> 3223 3224 * ecoffswap.h (ecoff_swap_pdr_in) <isym, iline>: Update to 3225 correctly sign-extend 32-bit ECOFF null values (0xffffffff, -1) 3226 on 64 bit machines. 3227 (ecoff_swap_sym_in) <iss>: Likewise. 3228 * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Fix error reading 3229 ECOFF information: 'ioptMax' refers to the actual *size* 3230 of the optimization symtab, not the number of entries. 3231 3232 2002-09-19 Daniel Jacobowitz <drow@mvista.com> 3233 3234 * elf32-arm.h (elf32_arm_adjust_dynamic_symbol): Update 3235 ELF_LINK_HASH_NEEDS_PLT logic. 3236 3237 2002-09-18 Daniel Jacobowitz <drow@mvista.com> 3238 3239 * elfcode.h (elf_slurp_reloc_table_from_section): Check 3240 correct relocation count. 3241 3242 2002-09-17 Daniel Jacobowitz <drow@mvista.com> 3243 3244 * bfd-in.h (bfd_get_dynamic_symcount): Define. 3245 * bfd.c (struct _bfd): Add dynsymcount. 3246 * bfd-in2.h: Regenerated. 3247 * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Set 3248 abfd->dynsymcount. 3249 * elfcode.h (elf_slurp_reloc_table_from_section): Check 3250 for overflow. 3251 3252 2002-09-17 Stan Cox <scox@redhat.com> 3253 3254 * elf64-mips.c (mips_elf64_be_swap_reloca_out): Handle type2 and type3. 3255 (mips_elf64_final_gp): Don't make up gp value. 3256 * elfn32-mips.c (mips_elf_final_gp): Likewise. 3257 * elfxx-mips.c (_bfd_mips_elf_final_link): Always create 3258 .MIPS.options/.options section. 3259 3260 2002-09-17 David O'Brien <obrien@FreeBSD.org> 3261 3262 * elf32-i386-fbsd.c: Always label using the EI_OSABI method. 3263 It is benign for FreeBSD < 4.1. Minor reformatting. 3264 * elf64-alpha-fbsd.c: Likewise. 3265 3266 2002-09-17 Jakub Jelinek <jakub@redhat.com> 3267 3268 * elf32-i386.c (elf_i386_relocate_section) [R_386_TLS_TPOFF32]: Negate 3269 addend. 3270 3271 2002-09-17 Alan Modra <amodra@bigpond.net.au> 3272 3273 * elf64-alpha.c (alpha_elf_size_info): Make static. 3274 3275 2002-09-17 Svein E. Seldal <Svein.Seldal@solidas.com> 3276 3277 * coff-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED. 3278 * cpu-tic4x.c: Ditto. 3279 3280 2002-09-17 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 3281 3282 * elf64-mips.c (define elf_backend_ignore_discarded_relocs): Remove 3283 duplicate define. 3284 3285 2002-09-16 Bruno Haible <bruno@clisp.org> 3286 3287 * elf32-i386.c: Don't defined ELF_ARCH etc. if this file is included 3288 by a target variant implementation. 3289 * elf64-alpha.c: Likewise. 3290 * elf32-i386-fbsd.c: New file. 3291 * elf64-alpha-fbsd.c: New file. 3292 * targets.c: Support bfd_elf32_i386_freebsd_vec and 3293 bfd_elf64_alpha_freebsd_vec. 3294 * configure.in: Accept the vectors bfd_elf32_i386_freebsd_vec, 3295 bfd_elf64_alpha_freebsd_vec. 3296 * Makefile.am (BFD32_BACKENDS): Add elf32-i386-fbsd.lo. 3297 (BFD32_BACKENDS_CFILES): Add elf32-i386-fbsd.c. 3298 (BFD64_BACKENDS): Add elf64-alpha-fbsd.lo. 3299 (BFD64_BACKENDS_CFILES): Add elf64-alpha-fbsd.c. 3300 (elf32-i386-fbsd.lo, elf64-alpha-fbsd.lo): Add dependencies. 3301 * config.bfd: For FreeBSD targets, set targ_defvec to a FreeBSD 3302 specific targets. Define OLD_FREEBSD_ABI_LABEL if appropriate. 3303 3304 2002-09-12 Jakub Jelinek <jakub@redhat.com> 3305 3306 * elf32-i386.c (dtpoff_base, tpoff): Don't crash if tls_segment is 3307 NULL. 3308 (elf_i386_relocate_section): Return false after printing error about 3309 unresolvable relocation. 3310 3311 2002-09-12 Nick Clifton <nickc@redhat.com> 3312 3313 * elf32-arm.h (elf32_arm_final_link_relocate): Fix handling of 3314 R_ARM_THM_PC11. 3315 3316 2002-09-11 Jeffrey Law <law@redhat.com> 3317 3318 * elf32-h8300.c (elf32_h8_relax_section): Fix typo. 3319 3320 2002-09-11 Andrew Haley <aph@cambridge.redhat.com> 3321 3322 * elf.c (_bfd_elf_find_nearest_line): Check functionname_ptr and 3323 line_ptr before deciding we've found a symbol. 3324 3325 2002-09-11 Nick Clifton <nickc@redhat.com> 3326 3327 * po/da.po: New Danish translation file. 3328 * configure.in (LINGUAS): Add 'da'. 3329 * configure: Regenerate. 3330 3331 2002-09-10 Michael Snyder <msnyder@redhat.com> 3332 3333 * irix-core.c (do_sections, do_sections64): New functions. 3334 (irix_core_core_file_p): Call new functions do_sections, 3335 do_sections64, depending on corefile (32-bit or 64-bit). 3336 3337 2002-09-09 Richard Henderson <rth@redhat.com> 3338 3339 * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21M 3340 and PCREL21F like PCREL21B. 3341 3342 2002-09-04 Kevin Buettner <kevinb@redhat.com> 3343 3344 * config.bfd (mips*-*-irix6*): Add new ABI vectors. Make n32 default 3345 vector. 3346 3347 2002-09-02 Nick Clifton <nickc@redhat.com> 3348 3349 * elf32-v850.c (v850_elf_final_link_relocate): Use helpful 3350 names instead of cryptically overloaded bfd_reloc error 3351 codes. 3352 (v850_elf_relocate_section): Likewise. 3353 (v850_elf_relax_section): Replace caching of external symbols 3354 with caching of internal symbols obtained from calling 3355 bfd_elf_get_elf_syms(). 3356 Fixup problems with freeing cached allocated memory blocks. 3357 3358 2002-09-02 Alan Modra <amodra@bigpond.net.au> 3359 3360 * cpu-pj.c (scan_mach, compatible, arch_info_struct): Remove. 3361 (bfd_pj_arch): Use bfd_default_scan. 3362 * cpu-v850.c (scan): Remove. 3363 (N): Use bfd_default_scan. 3364 * cpu-z8k.c (scan_mach): Remove. 3365 (arch_info_struct, bfd_z8k_arch): Reorganize so that the default is 3366 first. Use bfd_default_scan. 3367 3368 * ecoff.c (_bfd_ecoff_set_arch_mach_hook): Don't use hard-coded 3369 bfd_mach constants. 3370 (ecoff_get_magic): Likewise. 3371 * elf32-v850.c (v850_elf_object_p): Likewise. 3372 (v850_elf_final_write_processing): Likewise. 3373 * mipsbsd.c (MY(set_arch_mach)): Likewise. 3374 (MY(write_object_contents)): Likewise. 3375 * coff64-rs6000.c (xcoff64_write_object_contents): Likewise. 3376 * coffcode.h (coff_write_object_contents): Likewise. 3377 (coff_set_arch_mach_hook): Add comment describing machine == 0. 3378 Remove unnecessary "machine" assignments. 3379 (coff_write_relocs): Test for the absolute section sym by testing 3380 section and flags. 3381 3382 * aoutx.h (NAME(aout,machine_type)): Recognize bfd_mach_i386_i386 3383 and bfd_mach_i386_i386_intel_syntax. 3384 * pdp11.c (NAME(aout,machine_type)): Likewise. 3385 3386 2002-08-30 John David Anglin <dave@hiauly1.hia.nrc.ca> 3387 3388 * bfd-in.h (align_power): Cast constants to bfd_vma type. 3389 * bfd-in2.h (align_power): Likewise. 3390 3391 2002-08-30 Alan Modra <amodra@bigpond.net.au> 3392 3393 * Makefile.am: Run "make dep-am". 3394 * Makefile.in: Regenerate. 3395 3396 * cpu-avr.c (compatible): Don't use hard-coded mach constants. 3397 * cpu-powerpc.c (powerpc_compatible): Likewise. 3398 * cpu-rs6000.c (rs6000_compatible): Likewise. 3399 3400 2002-08-28 Catherine Moore <clm@redhat.com> 3401 3402 * elf32-v850.c (v850_elf_reloc_map): Add new relocs. 3403 (v850-elf-reloc): Don't resolve pc relative relocs. 3404 (v850_elf_ignore_reloc): New routine. 3405 (v850_elf_final_link_relocate): Handle new relocs. 3406 (v850_elf_relax_delete_bytes ): New routine. 3407 (v850_elf_relax_section): New routine. 3408 (bfd_elf32_bfd_relax_section): Define. 3409 (HOWTO): New entries for new relocs. 3410 * reloc.c (BFD_RELOC_V850_LONGCALL): New reloc. 3411 (BFD_RELOC_V850_LONGJUMP): New reloc. 3412 (BFD_RELOC_V850_ALIGN): New reloc. 3413 * archures.c: Remove redundant v850ea architecture. 3414 * cpu-v850.c: Remove redundant v850ea support. 3415 * libbfd.h: Regenerate. 3416 * bfd-in2.h: Regenerated. 3417 3418 2002-08-28 Svein E. Seldal <Svein.Seldal@solidas.com> 3419 3420 * config.bfd: Add tic4x-*-*coff* and c4x-*-*coff* target. 3421 * configure.in: Add tic4x_coff vector files. 3422 * configure: Regenerate. 3423 * Makefile.am: Add tic4x target. 3424 * Makefile.in: Regenerate. 3425 3426 2002-08-27 Michael Hayes <m.hayes@elec.canterbury.ac.nz> 3427 3428 * archures.c: Add the BFD arch type tic4x. 3429 * bfd-in.h: Add BFD_IN_MEMORY flag. 3430 * coff-tic4x.c: New file. 3431 * coffswap.h (coff_swap_sym_out): Add preadjuster. 3432 * cpu-tic4x.c: New file. 3433 * targets.c: Added tic4x- in list of xvecs. 3434 * ticoff.h: New file. 3435 * bfd-in2.h: Regenerate. 3436 3437 2002-08-27 Adam Nemet <anemet@lnxw.com> 3438 3439 * elf32-arm.h (elf32_arm_finish_dynamic_sections): Set the last 3440 bit of DT_INIT and DT_FINI for Thumb functions. 3441 3442 2002-08-26 Alan Modra <amodra@bigpond.net.au> 3443 3444 * coffcode.h (coff_set_arch_mach_hook): Handle W65MAGIC. 3445 3446 2002-08-26 Alan Modra <amodra@bigpond.net.au> 3447 3448 * aoutx.h (NAME(aout,reloc_type_lookup)): Handle BFD_RELOC_8. 3449 3450 2002-08-24 Kaz Kojima <kkojima@rr.iij4u.or.jp> 3451 3452 * elf32-sh.c (sh_elf_copy_indirect_symbol): New. 3453 (create_got_section, allocate_dynrelocs, readonly_dynrelocs): 3454 Likewise. 3455 (struct elf_sh_pcrel_relocs_copied): Removed. 3456 (struct elf_sh_dyn_relocs): New. 3457 (struct elf_sh_link_hash_entry): Replace pcrel_relocs_copied 3458 field with dyn_relocs. 3459 (struct elf_sh_link_hash_table): Add short-cuts to get dynamic 3460 sections and sym_sec. 3461 (sh_elf_link_hash_newfunc): Clear dyn_relocs. 3462 (sh_elf_link_hash_table_create): Clear shorts-cuts and sym_sec. 3463 (sh_elf_create_dynamic_sections): Use create_got_section instead 3464 of _bfd_elf_create_got_section. 3465 (sh_elf_check_relocs): Likewise. 3466 (sh_elf_create_dynamic_sections): Use short-cuts to the dynamic 3467 sections. 3468 (sh_elf_adjust_dynamic_symbol, sh_elf_size_dynamic_sections, 3469 sh_elf_relocate_section, sh_elf_check_relocs, 3470 sh_elf_finish_dynamic_symbol, sh_elf_finish_dynamic_sections): 3471 Likewise. 3472 (sh_elf_adjust_dynamic_symbol): Handle nocopyreloc. Keep the 3473 dynamic relocations and avoiding the copy relocation when we 3474 didn't find any dynamic relocations in the section which has 3475 contents or is read-only. 3476 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New. 3477 (sh_elf_size_dynamic_sections): Don't reset the size of 3478 .rela.got section even if dynamic_sections_created flag is off. 3479 Don't use sh_elf_discard_copies. Scan all input bfd and use 3480 allocate_dynrelocs. Call readonly_dynrelocs to determine 3481 whether we need DT_TEXTREL. 3482 (sh_elf_adjust_dynamic_symbol): Use plt.refcount to determine 3483 whether the symbol was never referred to. 3484 (sh_elf_relocate_section): Use WILL_CALL_FINISH_DYNAMIC_SYMBOL. 3485 (sh_elf_gc_sweep_hook): Fill with the real sweep function. 3486 (sh_elf_check_relocs): Call create_got_section if the short-cut 3487 to .got is null. Increment reference counters only instead of 3488 allocating space on dynamic sections here. Don't conditionalize 3489 uninitialized got.offset value when marking the symbol as a 3490 global offset table entry. Keep relocations for symbols satisfied 3491 by a dynamic library to avoid copy relocations for the symbol. 3492 Set dynobj field of an elf hash table if needed. 3493 (sh_elf_finish_dynamic_sections): Handle null section pointer 3494 correctly. 3495 (elf_backend_copy_indirect_symbol): Defined. 3496 (elf_backend_can_refcount): Defined. 3497 3498 2002-08-23 Nick Clifton <nickc@redhat.com> 3499 3500 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Undo 3501 previous change. Add comment explaining why. 3502 3503 2002-08-23 Stephen Clarke <stephen.clarke@superh.com> 3504 3505 * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le): Copy 3506 contents of .got.plt[2] to tr0, not address of .got.plt. 3507 (sh_elf_finish_dynamic_symbol): Do not apply GOT_BIAS when 3508 patching absolute plt entry. For shmedia plt entry, set bottom bit 3509 of branch to plt0 as this is a branch to an shmedia instruction. 3510 * elf64-sh64.c (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le): 3511 Copy contents of .got.plt[2] to tr0, not address of .got.plt. 3512 (elf_sh64_plt_entry_be, elf_sh64_plt_entry_le): Use ptrel to 3513 branch to plt0. 3514 (sh64_elf64_finish_dynamic_symbol): Do not apply GOT_BIAS when 3515 patching absolute plt entry. For shmedia plt entry, branch to 3516 plt0 is now ptrel, so use relative offset. Set bottom bit of 3517 branch target as it is a branch to an shmedia instruction. 3518 3519 2002-08-23 Stephen Clarke <stephen.clarke@superh.com>, 3520 Richard Shann <richard.shann@superh.com> 3521 3522 * elf32-sh.c (sh_elf_finish_dynamic_sections): Set LSB of DT_INIT 3523 value if .init is an SHmedia function. Similarly for DT_FINI. 3524 * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise. 3525 3526 2002-08-23 Stephen Clarke <stephen.clarke@superh.com> 3527 3528 * elf32-sh.c (sh_elf_size_dynamic_sections): Zero initialize 3529 dynamic section. 3530 * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise. 3531 3532 2002-08-22 Kaz Kojima <kkojima@rr.iij4u.or.jp> 3533 3534 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use a simple 3535 byte read when reading the return address register column. 3536 3537 2002-08-22 Nick Clifton <nickc@redhat.com> 3538 3539 * config.bfd: Add powepc64-*-*bsd* target. 3540 3541 2002-08-22 Graeme Peterson <gp@qnx.com> 3542 3543 * Makefile.am: Add entries for elf32-shqnx.c 3544 * Makefile.in: Regenerate. 3545 * config.bfd: Add support sh-*-nto* target. 3546 * configure.in: Add support for bfd_elf32_sh{l}qnx_vec. 3547 * configure: Regenerate. 3548 * elf32-qnx.h: Changed typo "elf_i386qnx_*" to "elf_qnx_*" . 3549 * elf32-sh.c: Do not include elf32-target.h if 3550 ELF32_SH_C_INCLUDED is defined. 3551 * elf32-shqnx.c: New file: Support for QNX. 3552 * targets.c: Add bfd_elf32_sh{l}qnx_vec. 3553 3554 2002-08-22 Nick Clifton <nickc@redhat.com> 3555 3556 * po/tr.po: Updated Turkish translation. 3557 3558 * syms.c (_bfd_generic_read_minisymbols): Set bfd_error if the 3559 symbols are not read. 3560 3561 2002-08-22 Alan Modra <amodra@bigpond.net.au> 3562 3563 * elf32-m68hc11.c: Formatting fixes. 3564 (elf32_m68hc11_gc_mark_hook): Correct params. Remove unnecessary test. 3565 * elf32-m68hc12.c: Formatting fixes. 3566 (elf32_m68hc11_gc_mark_hook): Correct params. Remove unnecessary test. 3567 3568 2002-08-22 Alan Modra <amodra@bigpond.net.au> 3569 3570 * coff-rs6000.c (rs6000coff_vec <object_flags>): Add SEC_CODE and 3571 SEC_DATA. 3572 (pmac_xcoff_vec): Likewise. 3573 * coff64-rs6000.c (rs6000coff64_vec): Likewise. 3574 (aix5coff64_vec): Likewise. 3575 3576 2002-08-22 Alan Modra <amodra@bigpond.net.au> 3577 3578 * elf-bfd.h (struct elf_backend_data): Add struct elf_backend_data 3579 param to elf_backend_copy_indirect_symbol. 3580 (_bfd_elf_link_hash_copy_indirect): Likewise. 3581 * elflink.h (elf_add_default_symbol, elf_fix_symbol_flags): Adjust 3582 calls to copy_indirect_symbol. 3583 * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise. 3584 * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise. 3585 * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise. 3586 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. 3587 * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise. 3588 * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise. 3589 * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise. 3590 * elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise. 3591 * elfxx-mips.h (_bfd_mips_elf_copy_indirect_symbol): Likewise. 3592 * elf.c (_bfd_elf_link_hash_copy_indirect): Likewise. Properly 3593 test refcounts for "used" values. 3594 3595 2002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca> 3596 3597 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Add PARAMS to 3598 argument declaration. 3599 3600 2002-08-19 Elena Zannoni <ezannoni@redhat.com> 3601 3602 * archures.c (bfd_mach_ppc_e500): Added. 3603 * bfd-in2.h: Rebuilt. 3604 * cpu-powerpc.c (bfd_powerpc_archs): Added e500. 3605 3606 2002-08-19 Alan Modra <amodra@bigpond.net.au> 3607 3608 * elf32-m68hc12.c (elf_backend_can_gc_sections): False. 3609 3610 2002-08-17 Andrew Cagney <ac131313@redhat.com> 3611 3612 * elf.c (bfd_elf_get_elf_syms): Change type of `esym' to 3613 `bfd_byte'. 3614 3615 2002-08-17 Stan Cox <scox@redhat.com> 3616 3617 * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Use the 3618 IRIX 6 segment layout for NEWABI. 3619 3620 2002-08-16 Stephen Clarke <stephen.clarke@superh.com> 3621 3622 * bfd/elf32-sh.c (sh_elf_gc_mark_hook): For sh64, skip indirect 3623 symbols when looking for section referred to by a relocation. 3624 * bfd/elf64-sh.c (sh_elf64_gc_mark_hook): Likewise. 3625 3626 2002-08-15 Alan Modra <amodra@bigpond.net.au> 3627 3628 * elf32-i370.c: Move reloc enum to include/elf/i370.h. 3629 3630 2002-08-15 Hans-Peter Nilsson <hp@axis.com> 3631 3632 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Add 3633 missing check for whether the symbol is referenced by DSO before 3634 unexporting it as an unneeded dynamic symbol. 3635 3636 2002-08-14 H.J. Lu <hjl@gnu.org> 3637 3638 * libbfd.h: Regenerate. 3639 3640 2002-08-14 H.J. Lu <hjl@gnu.org> 3641 3642 * config.bfd: Always add 64bit vectors to 32bit Linux/mips. 3643 3644 2002-08-14 Stephane Carrez <stcarrez@nerim.fr> 3645 3646 * elf32-m68hc11.c (m68hc11_relax_group): New to relax group of 3647 instructions. 3648 (m68hc11_direct_relax): New to define table of relaxable instructions. 3649 (find_relaxable_insn): New, find a relaxable insn. 3650 (compare_reloc): New to compare two relocs. 3651 (m68hc11_elf_relax_section): New, relax text sections. 3652 (m68hc11_elf_relax_delete_bytes): New, delete bytes and adjust branchs. 3653 (elf32_m68hc11_check_relocs): New function for GC support. 3654 (elf32_m68hc11_relocate_section): New function for GC support. 3655 (bfd_elf32_bfd_relax_section): Define to support linker relaxation. 3656 (elf_backend_check_relocs): Likewise. 3657 (elf_backend_relocate_section): Likewise. 3658 3659 2002-08-13 H.J. Lu <hjl@gnu.org> 3660 3661 * elflink.h (NAME(bfd_elf,size_dynamic_sections): Don't count 3662 definitions in shared objects when checking symbol with 3663 undefined version. 3664 3665 2002-08-13 Stephane Carrez <stcarrez@nerim.fr> 3666 3667 * elf32-m68hc11.c (elf32_m68hc11_gc_mark_hook): New for section GC. 3668 (elf32_m68hc11_gc_sweep_hook): Likewise. 3669 (elf_backend_gc_mark_hook): Define for GC section support. 3670 (elf_backend_gc_sweep_hook): Likewise. 3671 (elf_backend_can_gc_sections): Likewise. 3672 3673 * elf32-m68hc12.c: Likewise. 3674 3675 2002-08-13 Stephane Carrez <stcarrez@nerim.fr> 3676 3677 * elf32-m68hc11.c (_bfd_m68hc11_elf_print_private_bfd_data): New. 3678 (_bfd_m68hc11_elf_merge_private_bfd_data): New function. 3679 (_bfd_m68hc11_elf_set_private_flags): New function. 3680 Use them to set/check/print ELF flags specific to 68HC11. 3681 3682 * elf32-m68hc12.c (_bfd_m68hc12_elf_print_private_bfd_data): New. 3683 (_bfd_m68hc12_elf_merge_private_bfd_data): New function. 3684 (_bfd_m68hc12_elf_set_private_flags): New function. 3685 Use them to set/check/print ELF flags specific to 68HC12. 3686 3687 2002-08-13 Stephane Carrez <stcarrez@nerim.fr> 3688 3689 * elf32-m68hc11.c (elf_m68hc11_howto_table): Add the new relocs; 3690 fix masks for PC-rel relocs. 3691 (m68hc11_elf_ignore_reloc): New function. 3692 3693 * elf32-m68hc12.c (m68hc12_elf_special_reloc): New to handle specific 3694 68HC12 banked addressing relocs. 3695 (m68hc12_phys_addr): New to compute physical address of banked memory. 3696 (m68hc12_phys_page): Likewise for page. 3697 (m68hc12_addr_is_banked): New to see if address is in banked area. 3698 (elf_m68hc12_howto_table): Add new relocs and rename to xx12. 3699 3700 2002-08-13 Stephane Carrez <stcarrez@nerim.fr> 3701 3702 * reloc.c (BFD_RELOC_M68HC11_RL_JUMP, BFD_RELOC_M68HC11_RL_GROUP, 3703 BFD_RELOC_M68HC11_LO16, BFD_RELOC_M68HC11_PAGE, 3704 BFD_RELOC_M68HC11_24): New relocs for 68HC11/68HC12. 3705 * bfd-in2.h: Regenerate. 3706 3707 2002-08-12 H.J. Lu <hjl@gnu.org> 3708 3709 * elflink.h (elf_add_default_symbol): Preserve section across 3710 elf_merge_symbol. 3711 3712 2002-08-09 Graeme Peterson <gp@qnx.com> 3713 3714 * Makefile.am: Add entries for elf32-ppcqnx.c, and add 3715 elf32-qnx.h dependency to elfarmqnx-nabi.c and elf32-i386qnx.c. 3716 * Makefile.in: Regenerate. 3717 * config.bfd: Add support for powerpc{le}-*-nto targets. 3718 * configure.in: Add support for bfd_elf32_powerpc{le}qnx_vec. 3719 * configure: Regenerate. 3720 * elf32-i386qnx.c: Moved backend functions into a QNX specific 3721 common file "elf32-qnx.h", and now include that file. 3722 * elf32-qnx.h: New file: QNX specific common elf backend. 3723 * elf32-ppc.c: Do not include elf32-target.h if 3724 ELF32_PPC_C_INCLUDED is defined. 3725 * elf32-ppcqnx.c: New file: Support for QNX. 3726 * elfarmqnx-nabi.c: Include elf32-qnx.h for qnx elf backend. 3727 * targets.c: Add bfd_elf32_powerpc{le}qnx_vec. 3728 3729 2002-08-09 Nick Clifton <nickc@redhat.com> 3730 3731 * po/sv.po: Updated Swedish translation. 3732 3733 2002-08-09 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 3734 3735 * elfxx-mips.c (mips_elf_global_got_index): Avoid segfault if 3736 g->global_gotsym is NULL. 3737 3738 2002-08-08 H.J. Lu <hjl@gnu.org> 3739 3740 * elflink.h (elf_add_default_symbol): Don't warn if a definition 3741 overrides an indirect versioned symbol. 3742 3743 2002-08-08 Jakub Jelinek <jakub@redhat.com> 3744 3745 * elf32-i386.c (elf_i386_relocate_section): Fill in proper addend 3746 for R_386_TLS_TPOFF32 relocs against symndx 0. 3747 3748 2002-08-07 H.J. Lu <hjl@gnu.org> 3749 3750 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Check symbol 3751 with undefined version if needed. 3752 (elf_link_assign_sym_version): Match a default symbol with a 3753 version without definition. No need to hide the default 3754 definition separately. 3755 3756 2002-08-08 Alan Modra <amodra@bigpond.net.au> 3757 3758 * elflink.h (elf_link_output_extsym): Don't output symbols from 3759 SEC_EXCLUDE sections. 3760 3761 * aoutx.h (aout_link_write_symbols): Correct handling of warning syms. 3762 3763 2002-08-07 Alan Modra <amodra@bigpond.net.au> 3764 3765 * elf64-ppc.c (edit_opd): Arrange to drop symbols for discarded .opd 3766 entries. 3767 3768 2002-08-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 3769 3770 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Cast signedness 3771 mismatch. 3772 3773 2002-08-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 3774 3775 * elfxx-mips.c (ABI_64_P): Remove superfluous check. 3776 3777 2002-08-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 3778 3779 * elf32-mips.c (mips_reloc_map): Fix typo. 3780 3781 2002-08-06 Alan Modra <amodra@bigpond.net.au> 3782 3783 * xcofflink.c (xcoff_write_global_symbol): Set n_scnum for abs_section. 3784 3785 2002-08-06 Alan Modra <amodra@bigpond.net.au> 3786 3787 * elf64-ppc.c (ppc64_elf_howto_raw): Zero all src_mask entries. 3788 3789 2002-08-06 Alan Modra <amodra@bigpond.net.au> 3790 3791 * libxcoff.h: Use PARAMS on function declarations. 3792 * coff-rs6000.c (xcoff_generate_rtinit): Simplify size calc. 3793 * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise. 3794 3795 * coff-rs6000.c: (xcoff_rtype2howto): Don't place reloc address in 3796 addend. 3797 * coff64-rs6000.c: (xcoff64_rtype2howto): Likewise. 3798 3799 2002-08-06 Alan Modra <amodra@bigpond.net.au> 3800 3801 * coff-rs6000.c: Formatting fixes. 3802 (xcoff_calculate_relocation): Use PARAMS in declaration. 3803 (xcoff_complain_overflow): Likewise. 3804 (xcoff_ppc_relocate_section): Use old-style function pointer call. 3805 (bfd_xcoff_backend_data): Remove useless comments. 3806 (rs6000coff_vec): Likewise. 3807 (bfd_pmac_xcoff_backend_data): Likewise. 3808 (pmac_xcoff_vec): Likewise. 3809 3810 * coff64-rs6000.c: Formatting fixes. 3811 (xcoff64_calculate_relocation): Use PARAMS in declaration. 3812 (xcoff64_ppc_relocate_section): Use old-style function pointer call. 3813 (bfd_xcoff_backend_data): Remove useless comments. 3814 (rs6000coff64_vec): Likewise. 3815 (bfd_xcoff_aix5_backend_data): Likewise. 3816 (aix5coff64_vec): Likewise. 3817 3818 2002-08-06 Alan Modra <amodra@bigpond.net.au> 3819 3820 * coff-rs6000.c (xcoff_howto_table): Revert some of last change to 3821 mask entries. Use complain_overflow_dont for R_REF. 3822 (xcoff_reloc_type_ba): Revert last change. 3823 (xcoff_reloc_type_br): Likewise. 3824 (xcoff_reloc_type_crel): Likewise. 3825 (xcoff_ppc_relocate_section): Likewise. 3826 * coff64-rs6000.c (xcoff64_reloc_type_br): Likewise. 3827 (xcoff64_ppc_relocate_section): Likewise. 3828 (xcoff64_howto_table): Revert some of last change to mask entries. 3829 Use complain_overflow_dont for R_REF. 3830 3831 * coff-rs6000.c (xcoff_howto_table): Fix src_mask entries. Make all 3832 relocs with bitsize == 16 have size = 1. 3833 (xcoff_reloc_type_ba): Correct src_mask and dst_mask adjustment. 3834 (xcoff_reloc_type_br): Likewise. 3835 (xcoff_reloc_type_crel): Likewise. 3836 (xcoff_ppc_relocate_section): Set up src_mask and dst_mask correctly. 3837 * coff64-rs6000.c (xcoff64_reloc_type_br): Correct src_mask and 3838 dst_mask adjustment. 3839 (xcoff64_ppc_relocate_section): Set up src_mask and dst_mask correctly. 3840 (xcoff64_howto_table): Fix src_mask entries. Make all relocs with 3841 bitsize == 16 have size = 1. 3842 3843 2002-08-01 Denis Chertykov <denisc@overta.ru> 3844 3845 * elf32-ip2k.c: Processor manufacturer changed to Ubicom. 3846 (struct misc): New field isymbuf. All free_* fields removed. 3847 (symbol_value): Pass in internal syms. No need to swap syms in. 3848 (ip2k_elf_relax_section): Use bfd_elf_get_elf_syms. Properly free 3849 possibly cached info. 3850 (tidyup_after_error): Removed. 3851 (ip2k_elf_relax_section_pass1): Don't use removed fields of struct 3852 misc. Use new field. 3853 (adjust_all_relocations): Use internal syms. No need to swap syms 3854 in and out. 3855 (add_page_insn): Don't use removed fields of struct misc. 3856 3857 2002-08-01 Nick Clifton <nickc@redhat.com> 3858 3859 * elf32-arm.h: Revert previous delta. 3860 3861 2002-08-01 Nick Clifton <nickc@redhat.com> 3862 3863 * configure.in (AM_INIT_AUTOMAKE): Bump version number. 3864 * configure: Regenerate. 3865 3866 2002-07-31 H.J. Lu <hjl@gnu.org> 3867 3868 * config.bfd: Add x86-64 vector to Linux/i386 if 64bit BFD is 3869 selected. 3870 3871 2002-07-31 H.J. Lu <hjl@gnu.org> 3872 3873 * config.bfd: Add n32 vectors to 32bit Linux/mips if 64bit BFD 3874 is selected. 3875 3876 2002-07-31 Jakub Jelinek <jakub@redhat.com> 3877 3878 * elf32-i386.c (elf_i386_copy_indirect_symbol): Swap tls_type 3879 if _bfd_elf_link_hash_copy_indirect will swap got.refcount. 3880 3881 2002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au> 3882 3883 * cpu-ns32k.c (_bfd_ns32k_put_immdeiate, _bfd_ns32k_get_immediate): 3884 There is no 8 byte relocation type for this architecture. 3885 (do_ns32k_reloc): Use bfd_vma instead of native types. 3886 (bfd_ns32k_put_immediate, _bfd_ns32k_relocate_contents) put_data 3887 returns void. 3888 (_bfd_ns32k_put_displacement): Don't check for overflow. We can 3889 rely on generic code to do that. 3890 * aout-ns32k.c (howto_table): Add appropriate overflow detection 3891 to all table entries. 3892 (_bfd_ns32k_relocate_contents): put_data returns void. 3893 * ns32k.h: (_bfd_ns32k_put_displacement, _bfd_ns32k_put_immediate) 3894 (_bfd_do_ns32k_reloc_contents): Fix prototypes. put data functions 3895 return void. 3896 3897 2002-07-31 Ian Dall <ian@sibyl.beware.dropbear.id.au> 3898 3899 * aoutx.h (aout_link_check_ar_symbols): Whether to include an 3900 archive object is target dependant. 3901 3902 2002-07-31 Adam Nemet <anemet@lnxw.com> 3903 3904 * elf32-arm.h (ARM_PLT_ENTRY_SIZE): Rename PLT_ENTRY_SIZE. 3905 (THUMB_PLT_ENTRY_SIZE): New macro. 3906 (PLT_ENTRY_SIZE): Return the appropriate *_PLT_ENTRY_SIZE. 3907 (elf32_arm_plt0_entry): Rename PLT_ENTRY_SIZE to 3908 ARM_PLT_ENTRY_SIZE. 3909 (elf32_arm_plt_entry): Likewise. 3910 (elf_backend_plt_header_size): Likewise. 3911 (elf32_thumb_plt0_entry): New global. 3912 (elf32_arm_finish_dynamic_sections): Use it. Put Thumb entries 3913 into .plt.thumb. 3914 (elf32_thumb_plt_entry): New global. 3915 (elf32_arm_finish_dynamic_symbol): Use it. Use .thumb.plt for 3916 Thumb entries. Set the bottom bit of the corresponding GOT entry 3917 for a Thumb PLT entry. 3918 (struct elf32_arm_plt_entry_info): New structure. 3919 (struct elf32_arm_link_hash_entry, plt_info): New member of this 3920 type. 3921 (elf32_arm_link_hash_newfunc): Initialize new member. 3922 (elf32_arm_final_link_relocate, R_ARM_THM_PC22 case): Handle 3923 relocations against the PLT. 3924 (elf32_arm_check_relocs, case R_ARM_PLT32 case): Set 3925 first_rel_type if this is the first time we encounter the symbol. 3926 (elf32_arm_check_relocs, case R_ARM_THM_PC22 case): New case. 3927 Determine if relocation needs a PLT entry. Set first_rel_type if 3928 this is the first time we encounter the symbol 3929 (elf32_arm_adjust_dynamic_symbol): Create PLT entries for Thumb 3930 functions as well. 3931 (elf32_arm_size_dynamic_sections): Handle .plt.thumb like .plt. 3932 (elf32_arm_create_dynamic_sections): New function. Create the 3933 .plt.thumb section. 3934 (elf_backend_create_dynamic_sections): Call it. 3935 3936 2002-07-31 Nick Clifton <nickc@redhat.com> 3937 3938 * bfd.c (bfd_alt_mach_code): Rename parameter 'index' to 3939 'alternative' in order to avoid shadowing global symbol of the 3940 same name. 3941 * bfd-in2.h: Regenerate. 3942 * libbfd.h: Regenerate. 3943 * libcoff.h: Regenerate. 3944 3945 2002-07-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 3946 3947 * Makefile.am: Add n32 ABI support. 3948 * Makefile.in: Regenerate. 3949 * config.bfd: Add n32 vectors to mips64*-*-linux* targets. Treat 64 3950 bit vectors for mips*-*-linux targets as optional. 3951 * configure.in: Add n32 ABI vectors. 3952 * configure: Regenerate. 3953 * elf32-mips.c (mips_elf32_object_p): Reject n32 ABI files. 3954 * elfn32-mips.c: New file, n32 ABI support. 3955 * targets.c: Add n32 ABI vectors. 3956 3957 2002-07-30 Graeme Peterson <gp@qnx.com> 3958 3959 * elfarmqnx-nabi.c: New file: Support for QNX. 3960 * config.bfd: Add support for arm-*-nto target. 3961 * configure.in: Add support for bfd_elf32_{big|little}armqnx_vec. 3962 * configure: Regenerate. 3963 * Makefile.am: Add entries for elfarmqnx-nabi.c. 3964 * Makefile.in: Regenerate. 3965 * elf32-arm.h (ELF_MAXPAGESIZE): Do not define if already defined. 3966 Do not define global function if ELFARM_NABI_C_INCLUDED is defined. 3967 * elfarm-nabi.c: Do not include elf32-arm.h if 3968 ELFARM_NABI_C_INCLUDED is defined. 3969 * targets.c: Add bfd_elf32_{big|little}armqnx_vec. 3970 3971 2002-07-30 Nick Clifton <nickc@redhat.com> 3972 3973 * po/sv.po: Updated Swedish translation. 3974 3975 2002-07-30 Jakub Jelinek <jakub@redhat.com> 3976 3977 * elf.c (elf_fake_sections): Fix up .tbss sh_size and sh_type. 3978 3979 2002-07-30 Alan Modra <amodra@bigpond.net.au> 3980 3981 * aoutx.h (some_aout_object_p): Clean up tdata properly on error. 3982 * archive.c (bfd_generic_archive_p): Likewise. 3983 * coff-rs6000.c (_bfd_xcoff_archive_p): Likewise. 3984 (_bfd_xcoff_archive_p): Use bfd_scan_vma in place of strtol. 3985 * coff64-rs6000.c (xcoff64_slurp_armap): Likewise. 3986 (xcoff64_archive_p): Likewise. 3987 (xcoff64_openr_next_archived_file): Likewise. 3988 (xcoff64_archive_p): Clean up tdata properly on error. 3989 * coffgen.c (coff_real_object_p): Likewise. 3990 (coff_object_p): Release filehdr and opthdr. 3991 * ecoff.c (_bfd_ecoff_archive_p): Clean up tdata properly on error. 3992 * ieee.c (ieee_archive_p): Likewise. 3993 * ihex.c (ihex_object_p): Likewise. 3994 (ihex_mkobject): Always allocate tdata. 3995 * peicode.h (pe_ILF_object_p): Release bfd_alloc'd buffer on error. 3996 * srec.c (srec_mkobject): Always allocate tdata. 3997 (srec_object_p): Clean up tdata properly on error. 3998 (symbolsrec_object_p): Likewise. 3999 * versados.c (versados_object_p): Likewise. 4000 * vms-misc.c (_bfd_vms_get_record): Use bfd_malloc instead of malloc, 4001 and bfd_realloc instead of realloc. 4002 (add_new_contents): Use bfd_alloc instead of bfd_malloc for sections. 4003 * vms.c (vms_initialize): Always allocate tdata. Use bfd_alloc in 4004 place of bfd_malloc, simplifying error freeing. Free hash table too. 4005 (vms_object_p): Clean up tdata on error. 4006 (vms_mkobject): Don't complain on stderr if vms_initialize fails. 4007 (vms_close_and_cleanup): Adjust for bfd_alloc use. 4008 4009 2002-07-30 Alan Modra <amodra@bigpond.net.au> 4010 4011 * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags. 4012 4013 2002-07-26 Chris Demetriou <cgd@broadcom.com> 4014 4015 * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE 4016 flags into resulting BFD. 4017 4018 2002-07-26 Alan Modra <amodra@bigpond.net.au> 4019 4020 From John Reiser <jreiser@BitWagon.com> 4021 * elf32-i386.c (elf_i386_link_hash_table_create): Clear 4022 tls_ldm_got.refcount. 4023 4024 2002-07-25 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 4025 4026 * elf64-mips.c: Update TODO comment. 4027 (mips_elf64_higher_reloc,mips_elf64_highest_reloc, 4028 mips_elf64_gprel16_reloca): Remove prototypes. 4029 (mips16_jump_reloc,mips16_gprel_reloc): Add functions. 4030 (UNUSED_RELOC): Replace by EMPTY_RELOC. 4031 (mips_elf64_howto_table_rel): Use special R_MIPS_HI16 handling. Remove 4032 wrong comments. Remove disfunctional support of R_MIPS_HIGHER and 4033 R_MIPS_HIGHEST. 4034 (mips_elf64_howto_table_rela): Fix handling of R_MIPS_GPREL16 and 4035 R_MIPS_GOT16. Remove wrong comments. 4036 (elf_mips16_jump_howto,elf_mips16_gprel_howto, 4037 elf_mips_gnu_vtinherit_howto,elf_mips_gnu_vtentry_howto): New, code 4038 from elf32-mips.c. 4039 (mips_elf64_hi16_reloc): Fix formatting. 4040 (mips_elf64_higher_reloc,mips_elf64_highest_reloc): Remove. 4041 (mips_elf64_got16_reloc): Fix formatting. Remove superfluous code. 4042 Better comment. Fall back to R_MIPS_GOT_DISP instead of abort(). 4043 (mips_elf64_gprel16_reloc): Make static. Add check for 4044 partial_inplace. 4045 (mips_elf64_gprel16_reloca): Remove. 4046 (mips_elf64_literal_reloc): New function. 4047 (mips_elf64_gprel32_reloc): Fix formatting. 4048 (mips_elf64_shift6_reloc): Fix comment. Make static. 4049 (mips16_jump_reloc,mips16_gprel_reloc): New functions, code from 4050 elf32-mips.c. 4051 (elf_reloc_map,mips_reloc_map): New mapping table, similiar as in 4052 elf32-mips.c 4053 (bfd_elf64_bfd_reloc_type_lookup): Use the mapping table. Enable GNU 4054 specific relocations. 4055 (mips_elf64_rtype_to_howto): Enable GNU specific relocations. 4056 (mips_elf64_object_p): Invert logic to check for SGI-ish ABI. 4057 (ELF_MAXPAGESIZE): Add comment. 4058 4059 2002-07-25 Nick Clifton <nickc@redhat.com> 4060 4061 * po/sv.po: Updated Swedish translation. 4062 * po/es.po: Updated Spanish translation. 4063 * po/fr.po: Updated French translation. 4064 4065 2002-07-25 Alan Modra <amodra@bigpond.net.au> 4066 4067 * elf-bfd.h (_bfd_elf32_link_record_local_dynamic_symbol): Define 4068 as elf_link_record_local_dynamic_symbol. 4069 (_bfd_elf64_link_record_local_dynamic_symbol): Likewise. 4070 (elf_link_record_local_dynamic_symbol): Declare. Now returns int. 4071 * elflink.h (elf_link_record_local_dynamic_symbol): Move to.. 4072 * elflink.c: .. here. Use bfd_elf_get_elf_syms. Check whether an 4073 attempt is made to record a symbol in a discarded section, and 4074 return `2' in that case. 4075 4076 2002-07-24 Nick Clifton <nickc@redhat.com> 4077 4078 * po/sv.po: Updated Swedish translation. 4079 * po/es.po: Updated Spanish translation. 4080 4081 2002-07-23 Alan Modra <amodra@bigpond.net.au> 4082 4083 * po/SRC-POTFILES.in: Regenerate. 4084 4085 * elf-hppa.h (elf_hppa_relocate_section): If relocatable, return 4086 immediately. Remove code handling relocatable linking. 4087 * elf32-avr.c (elf32_avr_relocate_section): Likewise. 4088 * elf32-cris.c (cris_elf_relocate_section): Likewise. 4089 * elf32-fr30.c (elf32_frv_relocate_section): Likewise. 4090 * elf32-frv.c (elf32_frv_relocate_section): Likewise. 4091 * elf32-h8300.c (elf32_h8_relocate_section): Likewise. 4092 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 4093 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. 4094 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 4095 * elf32-v850.c (v850_elf_relocate_section): Likewise. 4096 * elf32-vax.c (elf_vax_relocate_section): Likewise. 4097 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 4098 * elf32-avr.c (elf_backend_rela_normal): Define. 4099 * elf32-cris.c: Likewise. 4100 * elf32-fr30.c: Likewise. 4101 * elf32-frv.c: Likewise. 4102 * elf32-h8300.c: Likewise. 4103 * elf32-hppa.c: Likewise. 4104 * elf32-ip2k.c: Likewise. 4105 * elf32-sparc.c: Likewise. 4106 * elf32-v850.c: Likewise. 4107 * elf32-vax.c: Likewise. 4108 * elf64-hppa.c: Likewise. 493 4109 * elf64-sparc.c: Likewise. 494 495 2001-05-23 Alan Modra <amodra@one.net.au> 496 497 Merge from mainline. 498 2001-05-17 Alan Modra <amodra@one.net.au> 499 * elf32-hppa.c (hppa_build_one_stub): Add an assert to check 500 plt.offset. 501 502 2001-05-16 Alan Modra <amodra@one.net.au> 503 * section.c (asection): Add linker_has_input field. 504 (STD_SECTION): Adjust initialization to suit. 505 * ecoff.c (bfd_debug_section): Likewise. 506 * bfd-in2.h: Regenerate. 507 508 2001-05-07 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 509 * ecoff.c (bfd_debug_section): Fix initialization. 510 511 2001-05-12 Peter Targett <peter.targett@arccores.com> 512 * cpu-arc.c (arch_info_struct): Add entry 'base' representing old 513 name for 'arc5' core versions. 514 (bfd_arc_arch): Make bfd_mach_arc_6 default. 515 * elf32-arc.c (arc_elf_object_p): Make E_ARC_MACH_ARC6 default 516 architecture. 517 (arc_elf_final_write_processing): Make bfd_mach_arc_6 default. 518 519 2001-05-08 Ian Lance Taylor <ian@zembu.com> 520 * coff-i386.c (coff_i386_reloc): Don't dump core if output_bfd is 521 NULL or is not COFF. 522 (coff_i386_rtype_to_howto): Don't dump core if output section 523 owner is not COFF. 524 525 2001-04-13 Roger Sayle <roger@metaphorics.com> 526 * coff-i386.c (TARGET_SYM): SEC_READONLY is an applicable section 527 flag on pe-i386 targets. 528 529 2001-04-26 H.J. Lu <hjl@gnu.org> 530 * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is 531 valid. 532 533 2001-04-05 David Mosberger <davidm@hpl.hp.com> 534 * elf32-i386.c (elf_i386_fake_sections): Treat ".reloc" as an 535 ordinary "progbits" section. 536 537 2001-05-04 Richard Henderson <rth@redhat.com> 538 539 * elf64-alpha.c (SREL16, SREL32, SREL64): Set pcrel_offset true. 540 541 2001-04-30 Andreas Jaeger <aj@suse.de>, Andreas Schwab <schwab@suse.de> 542 543 * elf64-x86-64.c (elf64_x86_64_relocate_section): Correct test for 544 R_X86_64_GOTPCREL, don't use assignments instead of comparisons. 545 546 2001-04-27 Andreas Jaeger <aj@suse.de> 547 548 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap 549 out handled entries. 550 (elf64_x86_64_finish_dynamic_symbol): Set up GOT entries. 551 (elf64_x86_64_relocate_section): Fix GOTPCREL calculation. 552 (elf64_x86_64_relocate_section): Merge entries for GOTPCREL and 553 GOT32. 554 555 2001-04-30 Alan Modra <amodra@one.net.au> 556 557 * elf32-hppa.c (final_link_relocate): Branch to .+8 for 558 calls to undefined weak symbols. 559 560 2001-04-19 Andreas Jaeger <aj@suse.de> 561 562 * elf64-x86-64.c (elf64_x86_64_plt0_entry): Fix instructions. 563 (elf64_x86_64_plt_entry): Likewise. 564 (elf64_x86_64_finish_dynamic_sections): Fix PLT0 generation. 565 (elf64_x86_64_finish_dynamic_symbol): Fix PLT generation. 566 567 2001-03-31 Philip Blundell <philb@gnu.org> 568 569 From 2001-03-26 H.J. Lu <hjl@gnu.org> 570 * elf32-gen.c (elf32_generic_link_add_symbols): New. Check 571 if there are any relocations for generic ELF. 572 (bfd_elf32_bfd_link_add_symbols): Defined to 573 elf32_generic_link_add_symbols. 574 * elf64-gen.c (elf64_generic_link_add_symbols): New. Check 575 if there are any relocations for generic ELF. 576 (bfd_elf64_bfd_link_add_symbols): Defined to 577 elf64_generic_link_add_symbols. 578 579 2001-03-21 Alan Modra <alan@linuxcare.com.au> 580 581 * elf32-hppa.c (elf32_hppa_set_gp): Check sec->output_section 582 non-NULL before attempting to dereference. 583 584 2001-03-20 Andreas Schwab <schwab@suse.de> 585 586 * elf32-m68k.c (elf_m68k_relocate_section): Don't need the 587 relocation value when resolving a reference from a debugging 588 section. 589 590 2001-03-16 Philip Blundell <philb@gnu.org> 591 592 * configure: Regenerate. 593 594 2001-03-16 Alan Modra <alan@linuxcare.com.au> 595 596 * elf32-hppa.c (elf32_hppa_link_hash_entry): Add maybe_pic_call. 597 (hppa_link_hash_newfunc): Init it. 598 (hppa_type_of_stub): Only use non-PIC to PIC call stub if caller 599 section appears to be non-PIC. 600 (final_link_relocate): Likewise. 601 (elf32_hppa_adjust_dynamic_symbol): Set maybe_pic_call for any 602 possible candidate function, and set pic_call for those that will 603 only have a .plt entry for the PIC call stub. 604 (hppa_handle_PIC_calls): Set maybe_pic_call. 605 606 * elf32-hppa.c: Correct field selector in stub comments. 607 (clobber_millicode_symbols): Formatting fix. 608 609 2001-03-11 Philip Blundell <philb@gnu.org> 610 611 * configure.in: Set version to 2.11. 612 613 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT 614 entries that could serve as a definition for a weak symbol. 615 616 2001-03-07 Andreas Jaeger <aj@suse.de> 617 618 * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of 619 some relocation values. 620 621 2001-02-28 Andreas Jaeger <aj@suse.de> 622 623 * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation 624 to addend. 625 626 2001-02-26 Andreas Jaeger <aj@suse.de> 627 628 * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries. 629 630 2001-02-21 David Mosberger <davidm@hpl.hp.com> 631 632 * cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for 633 C8 said "1" instead of "8". Clarify error string for IMM22: 634 "signed integer" instead of just "integer". 635 636 2001-02-20 Andreas Jaeger <aj@suse.de> 637 638 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Don't make 639 PLT entries that could serve as a definition for a weak symbol. 640 641 2001-02-18 David O'Brien <obrien@FreeBSD> 642 643 * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat 644 FreeBSD/i386-CURRENT differently until I can figure out the needed 645 corefile changes. 646 * configure: Regenerate. 647 * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm, 648 FreeBSD/PowerPC, and FreeBSD/sparc64. 649 650 2001-02-14 Philip Blundell <pb@futuretv.com> 651 652 From 2001-02-06 H.J. Lu <hjl@gnu.org> 653 * bfd/peicode.h (coff_swap_filehdr_in): Remove the e_magic 654 checking. 655 (pe_bfd_object_p): Rewrite with external_PEI_DOS_hdr and 656 external_PEI_IMAGE_hdr. 657 658 2001-02-14 Bo Thorsen <bo@suse.de> 659 660 * elf64-x86-64.c: Small formatting fixes and rearrangements of code. 661 (elf64_86_64_size_info): Struct added to fix a problem 662 with the hashtable string entries. 663 (elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt. 664 (elf64_x86_64_size_dynamic_sections): A FIXME removed. 665 (elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and 666 remove the FIXME for this. 667 (elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt 668 section. Also removed the FIXME for it. 669 (x86_64_elf_howto_table): Use bfd_elf_generic_reloc. 670 (ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker. 671 (elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing. 672 673 2001-02-14 Philip Blundell <pb@futuretv.com> 674 675 From 2001-02-08 H.J. Lu <hjl@gnu.org> 676 * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_32 677 relocation entries for weak definitions when building DSO with 678 -Bsymbolic. 679 680 2001-02-13 Richard Henderson <rth@redhat.com> 681 682 * elfxx-ia64.c (elfNN_ia64_final_link): Set __gp if required 683 and not user provided. 684 685 2001-02-13 Alan Modra <alan@linuxcare.com.au> 686 687 * elf32-hppa.c (elf32_hppa_set_gp): Handle weak $global$. If 688 $global$ referenced but not defined, set its value here. 689 690 2001-02-09 Bo Thorsen <bo@suse.de> 691 692 * elf64-x86-64.c (elf64_x86_64_check_relocs): Set .rela.got section 693 alignment to 3. 694 (elf64_x86_64_check_relocs): Write R_X86_64_GOTPCREL GOT entry 695 and relocation. 696 (elf64_x86_64_relocate_section): Fix formatting. 697 (elf64_x86_64_relocate_section): Fix addend for relocation of 698 R_X86_64_(8|16|32|PC8|PC16|PC32). 699 700 Mon Feb 12 17:44:39 CET 2001 Jan Hubicka <jh@suse.cz> 701 702 * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL. 703 704 2001-02-10 Nick Clifton <nickc@redhat.com> 705 706 * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC 707 rel, it will be handled later on. 708 709 2001-02-09 David Mosberger <davidm@hpl.hp.com> 710 711 * elfxx-ia64.c (is_unwind_section_name): New function. Returns 712 true if section name is an unwind table section name. 713 (elfNN_ia64_additional_program_headers): Count each unwind section 714 separately. 715 (elfNN_ia64_modify_segment_map): Install one unwind program header 716 for each unwind separate section. Note: normally the linker 717 script merges the unwind sections that go into a single segment, 718 so this still generates at most one unwind program header per 719 segment. 720 721 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section 722 name for SHT_IA_64_UNWIND, not just .IA_64.unwind. 723 (elfNN_ia64_fake_sections): Mark sections with names that start 724 with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64 725 unwind section. 726 727 * elfxx-ia64.c (elfNN_ia64_final_write_processing): New function. 728 Use it to make sh_info in unwind section point to the text section 729 it applies to. 730 731 2001-02-07 Mark Elbrecht <snowball3@bigfoot.com> 732 733 * coffgen.c (coff_find_nearest_line): If stabs info is successfully 734 found, do not attempt to find dwarf2 info before returning. 735 736 2001-01-30 Alan Modra <alan@linuxcare.com.au> 737 738 * elf64-hppa.c (elf64_hppa_elf_get_symbol_type): New function. 739 (elf_backend_get_symbol_type): Define. 740 (elf64_hppa_object_p): Set architecture and machine from elf 741 header flags. 742 743 2001-01-30 Curtis L. Janssen <cljanss@ca.sandia.gov> 744 745 * elf64-alpha.c (elf64_alpha_find_nearest_line): Query dwarf2 746 before mdebug. 747 748 2001-01-26 Richard Henderson <rth@redhat.com> 749 750 * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Return false 751 for non-default visibility. 752 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise, but 753 delete ugly macro and replace with pretty function. 754 755 2001-01-25 Mark Elbrecht <snowball3@bigfoot.com> 756 757 * coff-go32.c: Update copyright. 758 * coff-stgo32.c: Likewise. 759 * coff-go32.c (COFF_LONG_FILENAMES): Define. 760 * coff-stgo32.c (COFF_LONG_FILENAMES): Likewise. 761 * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Remove .bss entry. 762 * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. 763 764 2001-01-25 Kazu Hirata <kazu@hxi.com> 765 766 * bfd-in2.h: Rebuild. 767 * libbfd.h: Likewise. 768 769 2001-01-23 H.J. Lu <hjl@gnu.org> 770 771 * bfd-in2.h: Rebuild. 772 773 2001-01-23 H.J. Lu <hjl@gnu.org> 774 775 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_buf) 776 is NULL or PRIV(vms_rec) is outside of the buffer. 777 778 2001-01-23 Kazu Hirata <kazu@hxi.com> 779 780 * coff64-rs6000.c: Fix formatting. 781 * coff-arm.c: Likewise. 782 * coffgen.c: Likewise. 783 * cofflink.c: Likewise. 784 * coff-mcore.c: Likewise. 785 * coff-mips.c: Likewise. 786 * coff-pmac.c: Likewise. 787 * coff-ppc.c: Likewise. 788 * coff-rs6000.c: Likewise. 789 * elf32.c: Likewise. 790 * elf32-fr30.c: Likewise. 4110 * elf32-fr30.c (elf32_frv_relocate_section): Edit comment. 4111 * elf32-frv.c (elf32_frv_relocate_section): Likewise. 4112 * elf32-i860.c (elf32_i860_relocate_section): Likewise. 4113 * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. 4114 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 4115 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. 4116 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. 4117 * elf-m10200.c (USE_RELA): Don't define. 4118 * elf-m10300.c: Likewise. 4119 * elfarm-oabi.c: Likewise. 791 4120 * elf32-i370.c: Likewise. 792 * elf32-i860.c: Likewise. 793 * elf32-m32r.c: Likewise. 4121 * elf32-ip2k.c: Likewise. 794 4122 * elf32-m68k.c: Likewise. 795 4123 * elf32-mcore.c: Likewise. 796 4124 * elf32-ppc.c: Likewise. 4125 * elf32-s390.c: Likewise. 4126 * elf32-vax.c: Likewise. 4127 * elf64-ppc.c: Likewise. 4128 * elf64-s390.c: Likewise. 4129 * elf64-x86-64.c: Likewise. 4130 * elfxx-ia64.c: Likewise. 4131 * elf32-avr.c (USE_REL): Don't undef. 4132 * elf32-ip2k.c: Likewise. 4133 4134 2002-07-23 Nick Clifton <nickc@redhat.com> 4135 4136 * elf-bfd.h (struct elf_backend_data): Add new bitfield 4137 'want_p_paddr_set_to_zero'. 4138 * elfxx-target.h: Set default value for want_p_paddr_set_to_zero 4139 to false; 4140 * elfxx-ia64.c: Set want_p_paddr_set_zero for HPUX target. 4141 * elf.c (copy_private_bfd_data): Test want_p_paddr_set_zero. 4142 4143 2002-07-23 Gabor Keresztfalvi <keresztg@mail.com> 4144 4145 * nlmcode.h (nlm_swap_auxiliary_headers_out): Swapped the order of 4146 the MeSsAgEs and CoPyRiGhT tags to make >=NW4.x NLM loaders to 4147 show the Copyright string. 4148 Minor formatting tidy ups. 4149 4150 2002-07-23 Nick Clifton <nickc@redhat.com> 4151 4152 * po/fr.po: Updated French translation. 4153 * po/sv.po: Updated Swedish translation. 4154 4155 2002-07-23 Alan Modra <amodra@bigpond.net.au> 4156 4157 * elflink.h (elf_link_input_bfd): Don't change internal symbols 4158 when outputting relocs. 4159 4160 2002-07-20 Jason Thorpe <thorpej@wasabisystems.com> 4161 4162 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only insert 4163 DT_PLTGOT into the dynamic section if there is a PLT. 4164 4165 2002-07-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 4166 4167 * elfxx-mips.c (_bfd_mips_elf_discard_info): New function, code from 4168 elf32-mips.c. 4169 (_bfd_mips_elf_write_section): Likewise. 4170 * elfxx-mips.h (_bfd_mips_elf_discard_info): New prototype. 4171 (_bfd_mips_elf_write_section): Likewise. 4172 * elf32-mips.c (elf32_mips_discard_info): Move to elfxx-mips.c. 4173 (elf32_mips_write_section): Likewise. 4174 * elf64-mips.c (_bfd_mips_elf_ignore_discarded_relocs): Use it. 4175 (_bfd_mips_elf_write_section): Likewise. 4176 4177 2002-07-19 Alan Modra <amodra@bigpond.net.au> 4178 4179 * elfxx-ia64.c: (elfNN_ia64_modify_segment_map): Properly scan 4180 PT_IA_64_UNWIND segments for a given section. 4181 4182 2002-07-17 H.J. Lu <hjl@gnu.org> 4183 4184 * Makefile.am: Fix a typo. 4185 * Makefile.in: Regenerate. 4186 4187 2002-07-15 Denis Chertykov <denisc@overta.ru> 4188 Frank Ch. Eigler <fche@redhat.com> 4189 Ben Elliston <bje@redhat.com> 4190 Alan Lehotsky <alehotsky@cygnus.com> 4191 John Healy <jhealy@redhat.com> 4192 Graham Stott <grahams@redhat.com> 4193 Jeff Johnston <jjohnstn@redhat.com> 4194 4195 * Makefile.am: Add support for ip2k. 4196 * Makefile.in: Regenerate. 4197 * doc/Makefile.in: Regenerate. 4198 * archures.c: Add support for ip2k. 4199 * config.bfd: Add support for ip2k. 4200 * configure.in: Add support for ip2k. 4201 * configure: Regenerate. 4202 * reloc.c: Add support for ip2k. 4203 * targets.c: Add support for ip2k. 4204 * bfd-in2.h: Regenerate. 4205 * libbfd.h: Regenerate. 4206 * cpu-ip2k.c: New file. 4207 * elf32-ip2k.c: New file. 4208 4209 2002-07-17 Ian Rickards <irickard@arm.com> 4210 4211 * dwarf2.c (concat_filename): If we can't establish the directory 4212 just return the filename. 4213 4214 2002-07-16 Moritz Jodeit <moritz@jodeit.org> 4215 4216 * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Correct order of memset args. 4217 4218 2002-07-16 Alan Modra <amodra@bigpond.net.au> 4219 4220 * elflink.h: Formatting fixes, tidy prototypes. 4221 (elf_link_assign_sym_version): Move common code out of loop. 4222 4223 2002-07-16 Alan Modra <amodra@bigpond.net.au> 4224 4225 * elflink.h (elf_link_input_bfd): Don't call reloc_emitter when 4226 reloc section size is zero. Correct reloc output location. 4227 4228 2002-07-16 John David Anglin <dave@hiauly1.hia.nrc.ca> 4229 4230 * elf-hppa.h (elf_hppa_reloc_final_type): Use R_PARISC_PCREL16F as 4231 the final type for the e_fsel selector when generating PA2.0W code. 4232 (elf_hppa_relocate_insn): Provide support for PA2.0W 16-bit format 1 4233 relocations. 4234 4235 2002-07-14 H.J. Lu <hjl@gnu.org> 4236 4237 * elflink.h (elf_link_assign_sym_version): Hide the default 4238 definition if there is a hidden versioned definition. 4239 4240 2002-07-12 Hans-Peter Nilsson <hp@axis.com> 4241 4242 * elf32-cris.c (cris_elf_relocate_section): Drop nonsensical 4243 dynamic reference test in assertion when initializing GOT with 4244 static contents. Just assert that there are either no dynamic 4245 sections, the symbol is defined in the regular objects or that the 4246 symbol is undef weak. Tweak comment. 4247 (elf_cris_finish_dynamic_symbol): Emit .got reloc for a program 4248 only if the symbol isn't defined in the program and isn't undef 4249 weak. 4250 (elf_cris_adjust_dynamic_symbol): Simplify condition for getting 4251 rid of PLT entry: only do it if the symbol isn't defined in a DSO. 4252 When doing so, clear ELF_LINK_HASH_NEEDS_PLT. Tweak comments. 4253 (elf_cris_discard_excess_program_dynamics): Don't consider 4254 ELF_LINK_HASH_REF_DYNAMIC when omitting .got runtime relocs. 4255 4256 2002-07-11 Alan Modra <amodra@bigpond.net.au> 4257 4258 * elf32-i386.c (elf_i386_relocate_section): Don't complain about 4259 unresolved debugging relocs in dynamic applications. 4260 * elf32-s390.c (elf_s390_relocate_section): Likewise. 4261 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 4262 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 4263 * elf64-s390.c (elf_s390_relocate_section): Likewise. 4264 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 4265 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 4266 4267 2002-07-10 Alan Modra <amodra@bigpond.net.au> 4268 4269 * elf64-ppc.c (ONES): Define. 4270 (ppc64_elf_howto_table): Use ONES here to avoid warnings. Fill in 4271 missing src_mask fields. Tweak R_PPC64_NONE, R_PPC64_COPY. Fill 4272 in missing dst_mask fields on R_PPC64_PLT32, R_PPC64_PLTREL32. 4273 4274 * elf64-ppc.c (ppc64_elf_get_symbol_info): Delete. 4275 (ppc64_elf_set_private_flags): Delete. 4276 (ppc64_elf_section_from_shdr): Delete. 4277 (ppc64_elf_merge_private_bfd_data): Remove flag checking/merging code. 4278 (ppc64_elf_fake_sections): Delete. 4279 (bfd_elf64_bfd_set_private_flags): Don't define. 4280 (bfd_elf64_get_symbol_info): Likewise. 4281 (elf_backend_section_from_shdr): Likewise. 4282 (elf_backend_fake_sections): Likewise. 4283 4284 2002-07-10 Marco Walther <Marco.Walther@sun.com> 4285 4286 * elf.c: (assign_section_numbers) Set sh_entsize for .stab only 4287 when not already set. 4288 * elf64-sparc.c: (sparc64_elf_fake_sections): New function. 4289 (elf_backend_fake_sections): Define. 4290 4291 2002-07-10 Alan Modra <amodra@bigpond.net.au> 4292 4293 * merge.c (_bfd_merge_section): Remove redundant output_section check. 4294 Formatting. 4295 (_bfd_merge_sections): Don't set SEC_EXCLUDE on unused sections. 4296 4297 2002-07-09 Hans-Peter Nilsson <hp@axis.com> 4298 4299 * elf32-cris.c (cris_elf_relocate_section): Move sanity-check for 4300 NULL sym_hashes to just before use. 4301 <case R_CRIS_32_GOTREL>: In test for local symbol, accept also 4302 symbol with non-default visibility. 4303 <case R_CRIS_32_GOTREL, case R_CRIS_32_PLT_GOTREL>: Ditto. 4304 <case R_CRIS_8_PCREL, case R_CRIS_16_PCREL, case R_CRIS_32_PCREL>: 4305 Ditto. 4306 (cris_elf_gc_sweep_hook): Only decrease h->plt.refcount for 4307 symbol with non-default visibility. 4308 (cris_elf_check_relocs): At tests for local symbol before 4309 increasing h->plt.refcount, also check for non-default 4310 visibility. Ditto when checking for local symbol to eliminate 4311 pc-relative runtime relocs. 4312 4313 2002-07-08 Alan Modra <amodra@bigpond.net.au> 4314 4315 * elf.c: Formatting. 4316 (IS_SOLARIS_PT_INTERP): Add p_paddr and p_memsz checks. 4317 (INCLUDE_SECTION_IN_SEGMENT): Remove IS_SOLARIS_PT_INTERP. 4318 (copy_private_bfd_data): Set p_vaddr on broken Solaris PT_INTERP 4319 segments. 4320 4321 2002-07-07 Mark Mitchell <mark@codesourcery.com> 4322 Alan Modra <amodra@bigpond.net.au> 4323 4324 * cofflink.c (_bfd_coff_final_link): On PE COFF systems, take into 4325 account the impact of relocation count overflow when computing 4326 section offsets. 4327 * coffcode.h (coff_write_relocs): Use obj_pe when deciding whether 4328 or not to apply the PE COFF reloc overflow handling. Fix a 4329 fencepost error in deciding whether or not to use that technique. 4330 4331 2002-07-07 Alan Modra <amodra@bigpond.net.au> 4332 4333 * elf-bfd.h (struct elf_reloc_cookie): Remove locsym_shndx, 4334 change type of locsyms. 4335 (bfd_elf_get_elf_syms): Declare. 4336 * elf.c (bfd_elf_get_elf_syms): New function. 4337 (group_signature): Use bfd_elf_get_elf_syms. 4338 (bfd_section_from_r_symndx): Likewise. 4339 * elfcode.h (elf_slurp_symbol_table): Likewise. 4340 * elflink.h (elf_link_is_defined_archive_symbol): Likewise. 4341 (elf_link_add_object_symbols): Likewise. Reorganise to increase 4342 locality of various data structures. Properly free internal relocs. 4343 (elf_bfd_final_link): Properly free internal relocs. 4344 (elf_link_check_versioned_symbol): Use bfd_elf_get_elf_syms. 4345 (elf_link_input_bfd): Likewise. 4346 (elf_gc_mark): Likewise. Properly free internal relocs. 4347 (elf_gc_sweep): Properly free internal relocs. 4348 (elf_reloc_symbol_deleted_p): No need to swap syms in. 4349 (elf_bfd_discard_info): Use bfd_elf_get_elf_syms. Properly free 4350 internal relocs. 4351 * elf-m10200.c (mn10200_elf_relax_section): Use bfd_elf_get_elf_syms. 4352 Properly free possibly cached info. 4353 (mn10200_elf_relax_delete_bytes): Remove symbol swapping code. 4354 (mn10200_elf_symbol_address_p): Pass in internal syms. Remove 4355 symbol swapping code. 4356 (mn10200_elf_get_relocated_section_contents): Use bfd_elf_get_elf_syms. 4357 Properly free possibly cached info. 4358 * elf-m10300.c (mn10300_elf_relax_section): As above for elf-m10200.c. 4359 (mn10300_elf_relax_delete_bytes): Likewise. 4360 (mn10300_elf_symbol_address_p): Likewise. 4361 (mn10300_elf_get_relocated_section_contents): Likewise. 4362 * elf32-h8300.c (elf32_h8_relax_section): As above for elf-m10200.c. 4363 (elf32_h8_relax_delete_bytes): Likewise. 4364 (elf32_h8_symbol_address_p): Likewise. 4365 (elf32_h8_get_relocated_section_contents): Likewise. 4366 * elf32-m32r.c (m32r_elf_relax_section): As above for elf-m10200.c. 4367 (m32r_elf_relax_delete_bytes): Likewise. 4368 (m32r_elf_get_relocated_section_contents): Likewise. 4369 * elf32-sh.c (sh_elf_reloc_loop): Free section contents using 4370 elf_section_data to determine whether cached. 4371 (sh_elf_relax_section): As above for elf-m10200.c. 4372 (sh_elf_relax_delete_bytes): Likewise. 4373 (sh_elf_get_relocated_section_contents): Likewise. 4374 * elf32-xstormy16.c (xstormy16_elf_relax_section): As above. 4375 * elf64-alpha.c (elf64_alpha_relax_section): As above. Also delay 4376 reading of local syms. 4377 * elf64-mmix.c (mmix_elf_relax_section): Likewise. 4378 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): As above. 4379 * elfxx-ia64.c (elfNN_ia64_relax_section): As above. 4380 * elfxx-mips.c (_bfd_mips_elf_check_relocs): Properly free internal 4381 relocs. 4382 * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Properly 4383 free internal relocs and section contents. Don't read symbols. 4384 * elf32-hppa.c (get_local_syms): Use bfd_elf_get_elf_syms. 4385 (elf32_hppa_size_stubs): Don't free local syms. 4386 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Delay 4387 reading of local syms. Use bfd_elf_get_elf_syms. Properly free 4388 possibly cached info. 4389 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise. 4390 * elf64-hppa.c (elf64_hppa_check_relocs): Use bfd_elf_get_elf_syms. 4391 * elf64-ppc.c (struct ppc_link_hash_table): Delete bfd_count and 4392 all_local_syms. 4393 (get_local_syms): Delete function. 4394 (edit_opd): Use bfd_elf_get_elf_syms. Free on error exit. Cache 4395 on exit. 4396 (ppc64_elf_size_stubs): Use bfd_elf_get_elf_syms. Free/cache on exit. 4397 4398 2002-07-05 Jim Wilson <wilson@redhat.com> 4399 4400 * syms.c (decode_section_type): New. 4401 (bfd_decode_symclass): Call decode_section_type. 4402 4403 2002-07-04 Jakub Jelinek <jakub@redhat.com> 4404 4405 * merge.c (_bfd_merged_section_offset): Avoid accessing byte before 4406 section content start. 4407 Reported by Michael Schumacher <mike@hightec-rt.com>. 4408 4409 2002-07-04 Alan Modra <amodra@bigpond.net.au> 4410 4411 * section.c (_bfd_strip_section_from_output): Remove unnecessary 4412 link order code. Don't actually remove the output section here; 4413 Just set a flag for the linker to do so. 4414 * elflink.c (_bfd_elf_link_renumber_dynsyms): Test for removed 4415 sections when setting up output section dynsyms. 4416 4417 2002-07-04 Alan Modra <amodra@bigpond.net.au> 4418 4419 * elflink.h (elf_link_add_object_symbols): Revert 1999-09-02 hpux 4420 fudge. 4421 * elf.c (bfd_section_from_shdr): Work around broken hpux shared 4422 libs here instead. 4423 4424 2002-07-02 Martin Schwidefsky <schwidefsky@de.ibm.com> 4425 4426 * elf64-s390.c (create_got_section): Set .got section alignment to 4427 8 bytes. 4428 (elf_s390_check_relocs): Set .rela.dyn section alignment to 8 bytes. 4429 4430 2002-07-02 Alan Modra <amodra@bigpond.net.au> 4431 4432 * elf.c (_bfd_elf_reloc_type_class): Fix comment grammar. 4433 4434 2002-07-01 Matt Thomas <matt@3am-software.com> 4435 4436 * elf32-vax.c (elf32_vax_print_private_bfd_data): Change EF_* 4437 to EF_VAX_*. 4438 4439 2002-07-01 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 4440 4441 * elfxx-mips.c (ABI_64_P): Fix comment. 4442 (MIPS_ELF_OPTIONS_SECTION_NAME,MIPS_ELF_STUB_SECTION_NAME): Use the 4443 new section names for N64 ABI. 4444 (mips_elf_output_extsym): No special _gp_disp handling for NewABI. 4445 (mips_elf_calculate_relocation): Code formatting. 4446 (mips_elf_create_dynamic_relocation): Likewise. 4447 (_bfd_mips_elf_fake_sections): IRIX6 needs this hack, too. 4448 (_bfd_mips_elf_size_dynamic_sections): Handle GOT_PAGE for any NewABI. 4449 (_bfd_mips_elf_relocate_section): No special handling for R_MIPS_64 4450 in any NewABI. 4451 (_bfd_mips_elf_finish_dynamic_symbol): No special _gp_disp handling 4452 for NewABI. 4453 (_bfd_mips_elf_modify_segment_map): Handle any N64 ABI. 4454 (_bfd_mips_elf_gc_sweep_hook): NewABI GOT relocs should be handled 4455 here, too. 4456 4457 2002-07-01 Andreas Schwab <schwab@suse.de> 4458 4459 * elf64-x86-64.c (elf64_x86_64_relocate_section): Only convert 4460 R_X86_64_64 to R_X86_64_RELATIVE. 4461 4462 2002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca> 4463 4464 * vaxbsd.c: New BFD backend for VAX BSD and Ultrix. 4465 * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add new backend. 4466 Run "make dep-am". 4467 * config.bfd (vax-*-bsd* | vax-*-ultrix*): Use vaxbsd_vec instead of 4468 host_aout_vec. 4469 * configure.in (vaxbsd_vec): Add. 4470 * targets.c (vaxbsd_vec): Add. 4471 * Makefile.in: Rebuild. 4472 * configure: Rebuild. 4473 * po/SRC-POTFILES.in: Rebuild. 4474 4475 2002-07-01 Alan Modra <amodra@bigpond.net.au> 4476 4477 * elflink.h (elf_gc_mark): Pass in the section whose relocs we are 4478 examining to gc_mark_hook, rather than the bfd. 4479 (elf_gc_sections): Adjust. 4480 * elf-bfd.h (struct elf_backend_data <gc_mark_hook>): Likewise. 4481 * elf-m10300.c (mn10300_elf_gc_mark_hook): Likewise. 4482 * elf32-arm.h (elf32_arm_gc_mark_hook): Likewise. 4483 * elf32-avr.c (elf32_avr_gc_mark_hook): Likewise. 4484 * elf32-cris.c (cris_elf_gc_mark_hook): Likewise. 4485 * elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise. 4486 * elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise. 4487 * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise. 4488 * elf32-i386.c (elf_i386_gc_mark_hook): Likewise. 4489 * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise. 4490 * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise. 4491 * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise. 4492 * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise. 4493 * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise. 4494 * elf32-s390.c (elf_s390_gc_mark_hook): Likewise. 4495 * elf32-sh.c (sh_elf_gc_mark_hook): Likewise. 4496 * elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise. 4497 * elf32-v850.c (v850_elf_gc_mark_hook): Likewise. 4498 * elf32-vax.c (elf_vax_gc_mark_hook): Likewise. 4499 * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise. 4500 * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise. 4501 * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise. 4502 * elf64-s390.c (elf_s390_gc_mark_hook): Likewise. 4503 * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise. 4504 * elfxx-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise. 4505 * elfxx-mips.h (_bfd_mips_elf_gc_mark_hook): Likewise. 4506 * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise. 4507 * elf32-frv.c (elf32_frv_gc_mark_hook): Likewise. Also remove 4508 redundant local sym tests. 4509 * elf64-ppc.c (struct ppc_link_hash_entry): Add is_entry. 4510 (link_hash_newfunc): Init is_entry. 4511 (ppc64_elf_copy_indirect_symbol): Copy is_entry. 4512 (ppc64_elf_link_hash_table_create): Init all_local_syms. 4513 (create_linkage_sections): Use bfd_make_section_anyway rather than 4514 bfd_make_section. 4515 (ppc64_elf_mark_entry_syms): New function. 4516 (ppc64_elf_check_relocs): Don't bother testing elf_bad_symtab. Set 4517 up opd entry to function section map. 4518 (ppc64_elf_gc_mark_hook): Special case opd section relocs, and 4519 relocs that reference the opd section. 4520 (edit_opd): New function. 4521 (ppc64_elf_size_dynamic_sections): Call get_local_syms and edit_opd. 4522 (ppc64_elf_setup_section_lists): Don't calculate htab->bfd_count here. 4523 (get_local_syms): Do so here. Exit if we already have local syms. 4524 Remove bogus comment imported from elf32-hppa.c. Don't attempt to 4525 read local syms on non-ELF input. 4526 (ppc64_elf_size_stubs): Call _bfd_elf64_link_read_relocs rather 4527 than duplicating it's function here. Adjust free of internal 4528 relocs to suit. 4529 (ppc64_elf_relocate_section): Adjust local syms in opd section. 4530 * elf64-ppc.h (ppc64_elf_mark_entry_syms): Declare. 4531 * elf32-hppa.c (elf32_hppa_size_stubs): Call 4532 _bfd_elf32_link_read_relocs rather than duplicating it's function 4533 here. Adjust free of internal relocs to suit. 4534 4535 2002-07-01 Andreas Jaeger <aj@suse.de> 4536 4537 * elf64-x86-64.c (elf64_x86_64_check_relocs): Certain relocations 4538 are not allowed in shared libs code, enforce -fPIC. 4539 4540 2002-06-29 Hans-Peter Nilsson <hp@bitrange.com> 4541 4542 * mmo.c (mmo_write_loc_chunk): Don't eliminate leading and 4543 trailing zero-sequences when there's previous left-over data. 4544 4545 2002-06-27 John David Anglin <dave@hiauly1.hia.nrc.ca> 4546 4547 * elf64-hppa.c (elf64_hppa_reloc_type_class): New function. 4548 (elf64_hppa_finish_dynamic_sections): Check other_rel_sec, dlt_rel_sec 4549 and opd_rel_sec in order for starting rela section. Check _raw_size. 4550 (elf_backend_reloc_type_class): Define. 4551 4552 2002-06-27 Kevin Buettner <kevinb@redhat.com> 4553 4554 * dwarf2.c (decode_line_info): Handle older, non-standard, 64-bit 4555 DWARF2 formats. 4556 4557 2002-06-27 Alan Modra <amodra@bigpond.net.au> 4558 4559 * cpu-powerpc.c: Comment on ordering of arch_info. 4560 * elf32-ppc.c (ppc_elf_object_p): New function. 4561 (elf_backend_object_p): Define. 4562 * elf64-ppc.c (ppc64_elf_object_p): New function. 4563 (elf_backend_object_p): Define. 4564 4565 2002-06-26 Jason Thorpe <thorpej@wasabisystems.com> 4566 4567 * configure.in (vax-*-netbsd*): Set COREFILE to netbsd-core.lo. 4568 * configure: Regenerate. 4569 4570 2002-06-25 Jason Eckhardt <jle@rice.edu> 4571 4572 * dwarf2.c (decode_line_info): Check unit->addr_size 4573 to read in the proper number of prologue bytes. 4574 4575 2002-06-25 Nick Clifton <nickc@cambridge.redhat.com> 4576 4577 * config.bfd (powerpc-*-aix5*): Only create a selvecs for 4578 aix5coff64_vec if 64-bit bfd support has been enabled. 4579 (powerpc64-*-aix5*): Only define if 64-bit bfd support has 4580 been enabled. 4581 4582 * targets.c (_bfd_target_vector[]): Only include 4583 aix5coff64_vec if 64-bit bfd support has been enabled. 4584 4585 2002-06-25 Alan Modra <amodra@bigpond.net.au> 4586 4587 * elf64-ppc.c (ppc_add_stub): Replace strcpy/strncpy with memcpy. 4588 * elf32-hppa.c (hppa_add_stub): Likewise. 4589 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise. 4590 * elflink.h (elf_add_default_symbol): Fix comment typo. 4591 (elf_add_default_symbol): Replace strcpy and strncpy with memcpy. 4592 (elf_link_add_object_symbols): Likewise. 4593 (elf_link_assign_sym_version): Likewise. 4594 * hash.c (bfd_hash_lookup): Likewise. 4595 * linker.c (_bfd_generic_link_add_one_symbol): Likewise. 4596 * section.c (bfd_get_unique_section_name): Likewise. 4597 * syms.c (_bfd_stab_section_find_nearest_line): Likewise. 4598 * elf.c (_bfd_elf_make_section_from_phdr): Likewise. 4599 (assign_section_numbers): Likewise. 4600 (_bfd_elfcore_make_pseudosection): Likewise. 4601 (elfcore_grok_lwpstatus): Likewise. 4602 (elfcore_grok_win32pstatus): Likewise. 4603 (elfcore_write_note): Constify input params. Use PTR instead of 4604 void *. Include terminating NUL in namesz. Correct padding. 4605 Support NULL "name" param. Use memcpy instead of strcpy. 4606 (elfcore_write_prpsinfo): Constify input params. 4607 (elfcore_write_prstatus): Likewise. Use PTR instead of void *. 4608 (elfcore_write_lwpstatus): Likewise. 4609 (elfcore_write_pstatus): Likewise. 4610 (elfcore_write_prfpreg): Likewise. 4611 (elfcore_write_prxfpreg): Likewise. 4612 * elf-bfd.h (elfcore_write_note): Update declaration. 4613 (elfcore_write_prpsinfo): Likewise. 4614 (elfcore_write_prstatus): Likewise. 4615 (elfcore_write_pstatus): Likewise. 4616 (elfcore_write_prfpreg): Likewise. 4617 (elfcore_write_prxfpreg): Likewise. 4618 (elfcore_write_lwpstatus): Likewise. 4619 4620 2002-06-25 Jason Eckhardt <jle@rice.edu> 4621 4622 * ecoff.c (ecoff_set_symbol_info): Set BSF_FUNCTION for 4623 symbols of type stProc and stStaticProc. 4624 4625 2002-06-25 Nick Clifton <nickc@redhat.com> 4626 4627 * ecoff.c: VArious formatting fixes. 4628 4629 2002-06-25 Alan Modra <amodra@bigpond.net.au> 4630 4631 * coff-rs6000.c (xcoff_generate_rtinit): Fix typo. 4632 4633 2002-06-25 Alan Modra <amodra@bigpond.net.au> 4634 4635 * aout-adobe.c: Don't compare against "true" or "false. 4636 * aout-target.h: Likewise. 4637 * aoutx.h: Likewise. 4638 * archive.c: Likewise. 4639 * bout.c: Likewise. 4640 * cache.c: Likewise. 4641 * coff-a29k.c: Likewise. 4642 * coff-alpha.c: Likewise. 4643 * coff-i386.c: Likewise. 4644 * coff-mips.c: Likewise. 4645 * coff-or32.c: Likewise. 4646 * coff64-rs6000.c: Likewise. 4647 * coffcode.h: Likewise. 4648 * coffgen.c: Likewise. 4649 * cpu-ns32k.c: Likewise. 4650 * ecoff.c: Likewise. 4651 * ecofflink.c: Likewise. 4652 * elf.c: Likewise. 4653 * elf32-arm.h: Likewise. 4654 * elf32-cris.c: Likewise. 4655 * elf32-d30v.c: Likewise. 4656 * elf32-i386.c: Likewise. 4657 * elf32-mcore.c: Likewise. 4658 * elf32-ppc.c: Likewise. 797 4659 * elf32-sh.c: Likewise. 4660 * elf32-sh64.c: Likewise. 798 4661 * elf32-v850.c: Likewise. 799 4662 * elf64-alpha.c: Likewise. 800 * elf64-sparc.c: Likewise. 801 * elflink.c: Likewise. 802 * elflink.h: Likewise. 803 * elf-m10200.c: Likewise. 804 * elf-m10300.c: Likewise. 805 * elfxx-ia64.c: Likewise. 806 807 * aoutx.h: Fix formatting. 808 * bfd.c: Likewise. 809 * bfd-in2.h: Likewise. 810 * bfd-in.h: Likewise. 811 * cpu-i386.c: Likewise. 812 * cpu-m68hc11.c: Likewise. 813 * dwarf2.c: Likewise. 814 * elf64-x86-64.c: Likewise. 815 * format.c: Likewise. 816 * freebsd.h: Likewise. 817 * hash.c: Likewise. 818 * hp300hpux.c: Likewise. 819 * hppabsd-core.c: Likewise. 820 * hpux-core.c: Likewise. 821 822 2001-01-22 Bo Thorsen <bo@suse.de> 823 824 * elf64-x86-64.c: Added PIC support for X86-64. 825 (elf64_x86_64_link_hash_newfunc): Function added. 826 (elf64_x86_64_link_hash_table_create): Likewise. 827 (elf64_x86_64_check_relocs): Likewise. 828 (elf64_x86_64_gc_mark_hook): Likewise. 829 (elf64_x86_64_gc_sweep_hook): Likewise. 830 (elf64_x86_64_adjust_dynamic_symbol): Likewise. 831 (elf64_x86_64_size_dynamic_sections): Likewise. 832 (elf64_x86_64_discard_copies): Likewise. 833 (elf64_x86_64_finish_dynamic_symbol): Likewise. 834 (elf64_x86_64_finish_dynamic_sections): Likewise. 835 (elf64_x86_64_relocate_section): Add relocation of PIC sections. 836 837 2001-01-21 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 838 839 * Makefile.am (install-data-local): Make use of $(DESTDIR). 840 * Makefile.in: Regenerate. 841 842 2001-01-21 Kazu Hirata <kazu@hxi.com> 843 844 * coff-a29k.c: Fix formatting. 845 846 2001-01-19 H.J. Lu <hjl@gnu.org> 847 848 * elf32-i386.c (elf_i386_check_relocs): Report files with bad 849 relocation section names. 850 (elf_i386_relocate_section): Report files with bad relocation 851 section names and return false. 852 853 2001-01-17 Bo Thorsen <bo@suse.de> 854 855 * targets.c: Alphabetize list of xvecs. 856 857 2001-01-14 Alan Modra <alan@linuxcare.com.au> 858 859 * config.bfd: Add linux target variant for elfxx-hppa. 860 * configure.in: Recognize bfd_elf32_hppa_linux_vec and 861 bfd_elf64_hppa_linux_vec. 862 * configure: Regenerate. 863 * elf64-hppa.c: Include elf64-target.h again to support linux 864 target variant. 865 (elf64_hppa_post_process_headers): Set ELFOSABI_LINUX for linux. 866 * elf32-hppa.c: Include elf32-target.h again to support linux 867 target variant. 868 (elf32_hppa_post_process_headers): New function. 869 (elf_backend_post_process_headers): Define. 870 * targets.c (bfd_target_vector): Add bfd_elf64_hppa_linux_vec and 871 bfd_elf32_hppa_linux_vec. 872 873 * elf32-hppa.c (elf32_hppa_link_hash_table): Add text_segment_base, 874 and data_segment_base fields. 875 (elf32_hppa_link_hash_table_create ): Init them. 876 (elf32_hppa_check_relocs): Update comments. 877 (hppa_record_segment_addr): New function. 878 (elf32_hppa_relocate_section): Call it. 879 (final_link_relocate): Handle R_PARISC_SEGREL32. 880 (elf32_hppa_final_link): New function. 881 (bfd_elf32_bfd_final_link): Define to call it. 882 (hppa_unwind_entry_compare): New function. 883 * cache.c (bfd_open_file): Create files in write+read mode. 884 885 * elf-hppa.h (elf_hppa_howto_table): Set bitsize value for 886 SEGREL32 and numerous other relocs. Change duplicate 887 R_PARISC_NONE relocs to R_PARISC_UNIMPLEMENTED. 888 889 * opncls.c (bfd_fdopenr): Add parens like the comment says around 890 O_ACCMODE. 891 892 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Don't create 893 .plt entries for DT_INIT and DT_FINI. 894 (elf32_hppa_finish_dynamic_sections): Remove special handling of 895 DT_INIT and DT_FINI. 896 897 * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Use 16-bit 898 offsets for stub .plt access if wide mode. Check offset in range. 899 900 2001-01-13 Nick Clifton <nickc@redhat.com> 901 902 * elf32-fr30.c (fr30_elf_howto_table): Remove spurious blank 903 line. 904 905 * coffcode.h (coff_canonicalize_reloc): Remove spurious blank 906 line. 907 908 2001-01-12 Alan Modra <alan@linuxcare.com.au> 909 910 * configure.in ([bfd_elf64_x86_64_vec]): Set target64. 911 * configure: Regenerate. 912 913 2001-01-11 Peter Targett <peter.targett@arccores.com> 914 915 * bfd-in2.h (bfd_architecture): Add bfd_mach_arc_5, 916 bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8 for ARC variants. 917 * cpu-arc.c (arch_info_struct): Add entries for variants. 918 (bfd_arc_arch) Set default to bfd_mach_arc_5. 919 (arc_get_mach) Don't assume machine names prefixed arc- before 920 testing. 921 * elf32-arc.c (arc_elf_object_p): Set machine number based on new 922 selections. 923 (arc_elf_final_write_processing) Likewise. 924 (ELF_MACHINE_CODE) Use EM_ARC. 925 926 2001-01-10 Nick Clifton <nickc@redhat.com> 927 928 * coff-arm.c (LOCAL_LABEL_PREFIX): Change definition to "". 929 930 2001-01-07 Philip Blundell <philb@gnu.org> 931 932 * README: Replace `bug-gnu-utils@gnu.org' with 933 `bug-binutils@gnu.org'. 934 935 2001-01-04 Kazu Hirata <kazu@hxi.com> 936 937 * som.c: Fix formatting. 938 939 2001-01-03 Kazu Hirata <kazu@hxi.com> 940 941 * ecoffswap.h: Fix formatting. 942 * elf-bfd.h: Likewise. 943 * elfarm-nabi.c: Likewise. 944 * elfarm-oabi.c: Likewise. 4663 * elf64-sh64.c: Likewise. 945 4664 * elfcode.h: Likewise. 946 4665 * elfcore.h: Likewise. 947 * elflink.c: Likewise.948 4666 * elflink.h: Likewise. 949 * elfxx-ia64.c: Likewise. 950 * elfxx-target.h: Likewise. 951 * libbfd.c: Likewise 4667 * elfxx-mips.c: Likewise. 4668 * i386os9k.c: Likewise. 4669 * ieee.c: Likewise. 4670 * libbfd.c: Likewise. 952 4671 * linker.c: Likewise. 953 * lynx-core.c: Likewise. 954 955 2001-01-02 Kazu Hirata <kazu@hxi.com> 956 957 * pc532-mach.c: Fix formatting. 958 * pe-arm.c: Likewise. 959 * pe-i386.c: Likewise. 960 * pe-mips.c: Likewise. 961 * pe-ppc.c: Likewise. 962 * pe-sh.c: Likewise. 963 * pei-mips.c: Likewise. 964 * pei-sh.c: Likewise. 965 * peicode.h: Likewise. 966 * ppcboot.c: Likewise. 967 * ptrace-core.c: Likewise. 968 969 2001-01-01 Kazu Hirata <kazu@hxi.com> 970 971 * reloc.c: Fix formatting. 972 * riscix.c: Likewise. 973 * rs6000-core.c: Likewise. 974 * xcoff-target.h: Likewise. 975 976 2000-12-29 Hans-Peter Nilsson <hp@bitrange.com> 977 978 * elfcode.h (elf_object_p): Also restore the bfd mach field on 979 error, by calling bfd_default_set_arch_mach with incoming 980 values. 981 982 2000-12-26 Kazu Hirata <kazu@hxi.com> 983 984 * vaxnetbsd.c: Fix formatting. 985 * versados.c: Likewise. 986 * vms-gsd.c: Likewise. 987 * vms-hdr.c: Likewise. 988 * vms-misc.c: Likewise. 989 990 2000-12-25 Alexandre Oliva <aoliva@redhat.com> 991 992 * archive.c (coff_write_armap): Don't write more than symbol_count 993 `archive_member_file_ptr's. 994 995 2000-12-25 Kazu Hirata <kazu@hxi.com> 996 997 * vms-tir.c: Fix formatting. 998 999 2000-12-23 Kazu Hirata <kazu@hxi.com> 1000 1001 * vms.c: Fix formatting. 1002 * vms.h: Likewise. 1003 1004 2000-12-21 Santeri Paavolainen <santtu@ssh.com> 1005 1006 * vms-hdr.c: Include alloca.h if HAVE_ALLOCA_H is defined. 1007 1008 * peicode.h (pe_ILF_object_p): Add const to import of TARGET_LITTLE_SYM. 1009 1010 * elf32-m32r.c (m32r_elf_generic_reloc): Add cast to avoid (void *) 1011 arithmetic. 1012 1013 * elf32-fr30.c: Add casts to avoid (void *) arithmetic. 1014 1015 * coffcode.h (styp_to_sec_flags): Add empty statement after label. 1016 1017 2000-12-21 Richard Sandiford <rsandifo@redhat.com> 1018 1019 * libbfd.c (bfd_get_bits): Added 1020 (bfd_put_bits): Likewise 1021 * bfd-in.h: Declared the above. 1022 * bfd-in2.h: Regenerated. 1023 1024 2000-12-20 Kazu Hirata <kazu@hxi.com> 1025 1026 * targets.c: Fix formatting. 1027 * tekhex.c: Likewise. 1028 * trad-core.c: Likewise. 1029 1030 2000-12-19 Kazu Hirata <kazu@hxi.com> 1031 1032 * sco5-core.c: Fix formatting. 1033 * section.c: Likewise. 1034 * sparclinux.c: Likewise. 1035 * sparclynx.c: Likewise. 1036 * sparcnetbsd.c: Likewise. 1037 * srec.c: Likewise. 1038 * stabs.c: Likewise. 1039 * stab-syms.c: Likewise. 1040 * sunos.c: Likewise. 1041 * syms.c: Likewise. 1042 * sysdep.h: Likewise. 1043 1044 2000-12-18 Nick Clifton <nickc@redhat.com> 1045 1046 * coff-arm.c (EXTRA_S_FLAGS): Only define if not already 1047 defined. 1048 * epoc-pe-arm.c (EXTRA_S_FLAGS): Define. 1049 * epoc-pei-arm.c (EXTRA_S_FLAGS): Define. 1050 1051 2000-12-18 Nick Clifton <nickc@redhat.com> 1052 1053 * vms-misc.c (_bfd_vms_get_record): Add default case to 1054 file_format switch. 1055 1056 2000-12-15 Miloslav Trmac <mitr@volny.cz> 1057 1058 * elfcore.h (elf_core_file_p): Move to the start of the program 1059 headers before attempting to read them. 1060 1061 2000-12-14 Kazu Hirata <kazu@hxi.com> 1062 1063 * peigen.c: Fix formatting. 1064 * som.c: Likewise. 1065 * som.h: Likewise. 1066 1067 2000-12-13 Kazu Hirata <kazu@hxi.com> 1068 1069 * peigen.c: Fix formatting. 1070 1071 2000-12-12 Jim Wilson <wilson@redhat.com> 1072 1073 * elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *. 1074 1075 2000-12-08 Mark Salter <msalter@redhat.com> 1076 1077 * binary.c (binary_set_section_contents): Ignore sections 1078 with zero size. 1079 1080 2000-12-12 Kazu Hirata <kazu@hxi.com> 1081 1082 * m68klinux.c: Fix formatting. 1083 * m68knetbsd.c: Likewise. 1084 * mipsbsd.c: Likewise. 1085 * netbsd-core.c: Likewise. 1086 * netbsd.h: Likewise. 1087 * newsos3.c: Likewise. 4672 * mmo.c: Likewise. 1088 4673 * nlm32-alpha.c: Likewise. 1089 4674 * nlm32-i386.c: Likewise. … … 1091 4676 * nlm32-sparc.c: Likewise. 1092 4677 * nlmcode.h: Likewise. 1093 * nlmswap.h: Likewise. 1094 * nlm-target.h: Likewise. 4678 * oasys.c: Likewise. 4679 * pdp11.c: Likewise. 4680 * peicode.h: Likewise. 4681 * reloc.c: Likewise. 4682 * som.c: Likewise. 4683 * srec.c: Likewise. 4684 * tekhex.c: Likewise. 4685 * vms.c: Likewise. 4686 * xcofflink.c: Likewise. 4687 * elf64-sparc.c: Edit comment to not use "== false". 4688 4689 * aoutf1.h: Don't use "? true : false". 4690 * ecoff.c: Likewise. 4691 * format.c: Likewise. 4692 * ieee.c: Likewise. 4693 * linker.c: Likewise. 4694 * mmo.c: Likewise. 4695 * oasys.c: Likewise. 4696 4697 2002-06-23 H.J. Lu <hjl@gnu.org> 4698 4699 * elflink.h (elf_link_add_archive_symbols): For the default 4700 version, check references with only one `@' first. 4701 4702 2002-06-23 John David Anglin <dave@hiauly1.hia.nrc.ca> 4703 4704 * elf64-hppa.c (elf64_hppa_mark_milli_and_exported_functions): New 4705 function. 4706 (allocate_global_data_dlt): Don't add millicode symbols to dynamic 4707 symbol table. 4708 (allocate_global_data_opd, allocate_dynrel_entries): Likewise. 4709 (elf64_hppa_size_dynamic_sections): Revise to use 4710 elf64_hppa_mark_milli_and_exported_functions. 4711 (elf64_hppa_finish_dynamic_symbol): Remove code to keep millicode 4712 symbols out of dynamic symbol table. 4713 4714 2002-06-23 Alan Modra <amodra@bigpond.net.au> 4715 4716 * Makefile.in: Regenerate. 4717 * libbfd.h: Regenerate. 4718 * bfd-in2.h: Regenerate. 4719 * configure: Regenerate. 4720 * po/SRC-POTFILES.in: Regenerate. 4721 4722 * elflink.h: Comment typo fixes. 4723 4724 2002-06-23 H.J. Lu <hjl@gnu.org> 4725 4726 * elf-bfd.h (elf_link_loaded_list): New structure. 4727 (elf_link_hash_table): Add "loaded". 4728 * elf.c (_bfd_elf_link_hash_table_init): Initialize "loaded". 4729 * elflink.h (elf_link_check_versioned_symbol): New function. 4730 (elf_link_output_extsym): Call elf_link_check_versioned_symbol. 4731 4732 2002-06-19 Nick Clifton <nickc@cambridge.redhat.com> 4733 4734 * elflink.h (size_dynamic_sections): If the target does not 4735 support an ELF style hash table, return true, indicating that 4736 nothing needed to be done, rather than false, indicating that the 4737 section's size could not be computed. 4738 4739 2002-06-18 Dave Brolley <brolley@redhat.com> 4740 4741 From Catherine Moore, Michael Meissner, Dave Brolley: 4742 * po/SRC-POTFILES.in: Add cpu-frv.c and elf32-frv.c 4743 * targets.c: Support bfd_elf32_frv_vec. 4744 * reloc.c: Add FRV relocs. 4745 * configure.in: Add support for bfd-elf32-frv-vec. 4746 * config.bfd (targ_cpu): Add support for frv-*-elf. 4747 * archures.c: Add frv arch and machines. 4748 * Makefile.am (ALL_MACHINES): Add cpu-frv.lo. 4749 (ALL_MACHINES_CFILES): Add cpu-frv.c. 4750 (BFD32_BACKENDS): Add elf32-frv.lo. 4751 (BFD32_BACKENDS_CFILES): Add elf32-frv.c 4752 (cpu-frv.lo): New target. 4753 (elf32-frv.lo): New target. 4754 * cpu-frv.c: New file. 4755 * elf32-frv.c: New file. 4756 4757 2002-06-18 Jakub Jelinek <jakub@redhat.com> 4758 4759 * elfcode.h (elf_object_p): Sanity check eh_shoff == 0 implies 4760 e_shnum == 0. 4761 Only read the first section header if e_shoff is non-zero. 4762 Don't consider e_shstrndx if there are no sections. 4763 4764 2002-06-17 Tom Rix <trix@redhat.com> 4765 4766 * elf32-d10v.c (elf_d10v_howto_table): Change R_D10V_10_PCREL_R, 4767 R_D10V_10_PCREL_L and R_D10V_18_PCREL to use 4768 complain_overflow_bitfield. 4769 4770 2002-06-17 Alan Modra <amodra@bigpond.net.au> 4771 4772 * opncls.c (bfd_openr): Remove redundant bfd_set_error. 4773 (bfd_fdopenr): Likewise. 4774 (bfd_openstreamr): Likewise. 4775 (bfd_openw): Likewise. 4776 4777 * targets.c: Sort target vecs. 4778 (_bfd_target_vector): Add aix5coff64_vec, bfd_elf32_sh64_vec, 4779 bfd_elf32_sh64l_vec, bfd_elf32_sh64lnbsd_vec, 4780 bfd_elf32_sh64nbsd_vec, bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec, 4781 bfd_elf64_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec. 4782 * configure.in: Sort target vecs. Add m88kmach3_vec. 4783 * configure: Regenerate. 4784 4785 2002-06-16 Hans-Peter Nilsson <hp@bitrange.com> 4786 4787 * elf64-mmix.c (bpo_reloc_request_sort_fn): Use member 4788 bpo_reloc_no to break sort order ties, not address of items. 4789 4790 2002-06-16 John David Anglin <dave@hiauly1.hia.nrc.ca> 4791 4792 * elf-hppa.h (elf_hppa_final_link): Fix formatting in comment. 4793 Skip excluded sections in determing __gp value. 4794 (elf_hppa_final_link_relocate): Use the symbol's address in 4795 R_PARISC_FPTR64 relocations that don't need an opd entry. 4796 * elf64-hppa.c (allocate_dynrel_entries): Simplify code. 4797 (elf64_hppa_finalize_dynreloc): Likewise. 4798 (elf64_hppa_size_dynamic_sections): Move comments and fix typo. 4799 (elf64_hppa_finish_dynamic_symbol): Break up assert. 4800 4801 2002-06-14 Sergey Grigoriev <serge@leopold.Physik.Uni-Augsburg.DE> 4802 4803 * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte 4804 alignment for .bss, .data and .text sections so that sse and sse2 4805 code will work. 4806 * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. 4807 4808 2002-06013 J"orn Rennecke <joern.rennecke@superh.com> 4809 4810 config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*, 4811 sh[1234]*-elf*. 4812 4813 2002-06-12 John David Anglin <dave@hiauly1.hia.nrc.ca> 4814 4815 * elflink.h (elf_bfd_final_link): Improve error handling for missing 4816 dynamic sections. 4817 4818 * elf64-hppa.c (allocate_global_data_opd): We don't need an opd entry 4819 for a symbol that has no output section. 4820 (allocate_dynrel_entries): Correct comment. 4821 (elf64_hppa_finalize_dynreloc): Likewise. Don't create an opd entry 4822 unless we want one. 4823 (elf64_hppa_finalize_opd): Prevent segfault if dyn_h is NULL. 4824 (elf64_hppa_finalize_dlt): Likewise. Prevent segfault for symbols 4825 with no section. Remove unnecessary parentheses. 4826 4827 2002-06-11 Tom Rix <trix@redhat.com> 4828 4829 * coffcode.h (coff_compute_section_file_positions): Add data 4830 section to AIX loader alignment check. 4831 4832 * coff-rs6000.c (_bfd_xcoff_mkobject): Set default text section 4833 alignment to 4 bytes. 4834 (_bfd_xcoff_copy_private_bfd_data): Use text and data alignment 4835 power accessor macro. 4836 (do_shared_object_padding): Remove invalid assertion. 4837 4838 2002-06-10 Richard Sandiford <rsandifo@redhat.com> 4839 4840 * section.c (_bfd_strip_section_from_output): Set SEC_EXCLUDE 4841 for removed output sections. 4842 4843 2002-06-10 Geoffrey Keating <geoffk@redhat.com> 4844 4845 * merge.c (merge_strings): Use htab_create_alloc with calloc, not 4846 htab_alloc. 4847 * elf-strtab.c (_bfd_elf_strtab_finalize): Likewise. 4848 4849 2002-06-08 H.J. Lu <hjl@gnu.org> 4850 4851 * elf.c (copy_private_bfd_data): Don't cast to bfd_size_type to 4852 work around a long long bug in gcc 2.96 on mips. 4853 4854 2002-06-08 Jason Thorpe <thorpej@wasabisystems.com> 4855 4856 * Makefile.am (BFD32_BACKENDS): Add vax1knetbsd.lo. 4857 (BFD32_BACKENDS_CFILES): Add vax1knetbsd.c. 4858 Regenerate dependency lists. 4859 * Makefile.in: Regenerate. 4860 * config.bfd (vax-*-netbsdelf*, vax-*-netbsdaout*): Add 4861 vax1knetbsd_vec to targ_selvecs. 4862 * configure.in: Add vax1knetbsd_vec. 4863 * configure: Regenerate. 4864 * targets.c (_bfd_target_vector): Add vax1knetbsd_vec. 4865 * vax1knetbsd.c: New file. 4866 * vaxnetbsd.c: Update copyright years. 4867 (TARGET_PAGE_SIZE): Set to 0x1000. 4868 (DEFAULT_MID): Set to M_VAX4K_NETBSD. 4869 4870 2002-06-08 Matt Thomas <matt@3am-software.com> 4871 4872 * libaout.h (enum machine_type): Add M_VAX4K_NETBSD. 4873 4874 2002-06-08 Alan Modra <amodra@bigpond.net.au> 4875 4876 * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Make static. 4877 4878 2002-06-08 Alan Modra <amodra@bigpond.net.au> 4879 4880 * Makefile.am: Run "make dep-am". 4881 * Makefile.in: Regenerate. 4882 4883 * armnetbsd.c: Replace CONST with const. 4884 * corefile.c: Likewise. 4885 * elf32-dlx.c: Likewise. 4886 * elf64-mips.c: Likewise. 4887 * mmo.c: Likewise. 1095 4888 * ns32knetbsd.c: Likewise. 1096 4889 1097 2000-12-10 Fred Fish <fnf@be.com> 1098 1099 * elflink.h (elf_link_output_extsym): Don't complain about undefined 1100 symbols in shared objects if allow_shlib_undefined is true. 1101 1102 2000-12-12 Nick Clifton <nickc@redhat.com> 1103 1104 * cpu-sh.c: Fix formattng. 1105 * elf.c: Fix formattng. 1106 * elf32-mips.c: Fix formattng. 1107 * elf32-sh.c: Fix formattng. 1108 * elf64-alpha.c: Fix formattng. 1109 1110 2000-12-09 Nick Clifton <nickc@redhat.com> 1111 1112 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Pass 1113 dwarf2_find_line_info as last parameter to invocation of 1114 _bfd_dwarf2_find_nearest_line. 1115 * elf32-arm.h (elf32_arm_find_nearest_line): Pass 1116 dwarf2_find_line_info as last parameter to invocation of 1117 _bfd_dwarf2_find_nearest_line. 1118 1119 2000-12-08 Mark Elbrecht <snowball3@bigfoot.com> 1120 1121 * Makefile.am (BFD32_BACKENDS): Move dwarf2.lo from here... 1122 (BFD_LIBS): ...to here. 1123 (BFD32_BACKENDS_CFILES): Move dwarf2.c from here... 1124 (BFD_LIBS_CFILES): ...to here. 4890 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Check the hash 4891 table is elf64-sparc. 4892 4893 2002-06-08 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 4894 4895 * elfxx-mips.c (_bfd_mips_elf_relocate_section): Simplify code. 4896 Fix RELA addends to get not shifted in the result. Don't do special 4897 handling of R_MIPS_64 for NewABI. 4898 4899 2002-06-07 Alan Modra <amodra@bigpond.net.au> 4900 4901 * aoutx.h (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc. 4902 (NAME(aout,slurp_reloc_table)): Likewise. 4903 * coff-mips.c (mips_relax_section): Use bfd_zalloc. 4904 * coff-rs6000.c (xcoff_write_armap_big): Use bfd_zmalloc. 4905 (xcoff_write_archive_contents_big): Likewise. 4906 (xcoff_generate_rtinit): Likewise. 4907 (xcoff_generate_rtinit): Likewise, and check error return. 4908 * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise. 4909 * coffgen.c (coff_section_symbol): Use bfd_zalloc. 4910 (coff_get_normalized_symtab): Likewise. 4911 (coff_make_empty_symbol): Likewise. 4912 (bfd_coff_set_symbol_class): Likewise. 4913 * cofflink.c (coff_link_add_symbols): Likewise. 4914 * ecoff.c (_bfd_ecoff_make_empty_symbol): Likewise. 4915 * ecofflink.c (ecoff_write_shuffle): Use bfd_zmalloc. 4916 (bfd_ecoff_write_accumulated_debug): Likewise. 4917 * elf64-alpha.c (get_got_entry): Use bfd_zalloc. 4918 * i386linux.c (bfd_i386linux_size_dynamic_sections): Likewise. 4919 * i386lynx.c (NAME(lynx,slurp_reloc_table)): Use bfd_zmalloc. 4920 * ieee.c (do_with_relocs): Use bfd_zalloc. 4921 * m68klinux.c (bfd_m68klinux_size_dynamic_sections): Likewise. 4922 * pdp11.c (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc. 4923 (NAME(aout,slurp_reloc_table)): Likewise. 4924 (NAME(aout,squirt_out_relocs)): Don't memset when zalloc'd. 4925 * reloc16.c (bfd_coff_reloc16_relax_section): Use bfd_zmalloc. 4926 * som.c (som_build_and_write_symbol_table): Likewise. 4927 (som_slurp_string_table): Likewise. 4928 (som_slurp_symbol_table): Likewise. 4929 (som_bfd_ar_write_symbol_stuff): Likewise. 4930 * sparclinux.c (bfd_sparclinux_size_dynamic_sections): Use bfd_zalloc. 4931 * sunos.c (bfd_sunos_size_dynamic_sections): Likewise. 4932 * tekhex.c (find_chunk): Likewise. Get rid of unused "sname". 4933 * vms-gsd.c (_bfd_vms_slurp_gsd): Use bfd_zmalloc. 4934 * xcofflink.c (xcoff_link_add_symbols): Use bfd_zalloc/bfd_zmalloc. 4935 4936 2002-06-07 Alan Modra <amodra@bigpond.net.au> 4937 4938 * elf-bfd.h (struct bfd_elf_section_data <group_name>): Replace with 4939 "group" union. 4940 (elf_group_name): Update. 4941 (elf_group_id): Define. 4942 (bfd_elf_set_group_contents): Declare. 4943 * elf.c (elf_fake_sections): Qualify use of elf_group_name. 4944 (set_group_contents): Rename to bfd_elf_set_group_contents. Remove 4945 ATTRIBUTE_UNUSED from failedptrarg. If elf_group_id is set, use 4946 that sym for the signature. 4947 (_bfd_elf_compute_section_file_positions): Don't call 4948 set_group_contents for "ld -r" case. 4949 (swap_out_syms): Use bfd_zalloc. 4950 * elflink.h (elf_link_add_archive_symbols): Likewise. 4951 (NAME(bfd_elf,size_dynamic_sections)): Likewise. 4952 (elf_bfd_final_link): Call bfd_elf_set_group_contents. 4953 4954 2002-06-07 Alan Modra <amodra@bigpond.net.au> 4955 4956 * elf64-ppc.c (ppc64_elf_relocate_section): Allow unresolved 4957 relocs in opd for non-shared too. 4958 4959 2002-06-06 Jeffrey Law <law@redhat.com> 4960 4961 * elf32-h8300.c (elf32_h8_relax_section): Ignore uninteresting 4962 relocations. 4963 4964 2002-06-06 Nick Clifton <nickc@cambridge.redhat.com> 4965 4966 * merge.c: Include libiberty.h. 4967 * elf-strtab.c: Include libiberty.h. 4968 4969 2002-06-06 Elias Athanasopoulos <eathan@otenet.gr> 4970 4971 * peXXigen.c (pe_print_idata): Remove unused variable. 4972 4973 2002-06-06 David Heine <dlheine@tensilica.com> 4974 4975 * elf.c (assign_file_positions_for_segments): Remove unallocated 4976 sections from the section to segment mapping for PT_LOAD segments. 4977 Update comment about empty loadable segments. 4978 4979 2002-06-06 Richard Sandiford <rsandifo@redhat.com> 4980 4981 * stabs.c (_bfd_link_section_stabs): Check that the symbol offset 4982 is within the .stabstr section. 4983 4984 2002-06-06 Alan Modra <amodra@bigpond.net.au> 4985 4986 * elf-bfd.h (struct elf_size_info <swap_symbol_in>): Function args 4987 are "const PTR", not "const PTR *". 4988 (bfd_elf32_swap_symbol_in): Likewise. 4989 (bfd_elf64_swap_symbol_in): Likewise. 4990 * elfcode.h (elf_swap_symbol_in): Change input args to const PTR. 4991 (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in. 4992 * elflink.h (elf_link_is_defined_archive_symbol): Likewise. 4993 (elf_link_add_object_symbols): Likewise. 4994 (elf_link_record_local_dynamic_symbol): Likewise. 4995 (elf_link_input_bfd): Likewise. 4996 (elf_gc_mark): Likewise. 4997 (elf_reloc_symbol_deleted_p): Likewise. 4998 * elf-m10200.c (mn10200_elf_relax_section): Likewise. 4999 (mn10200_elf_relax_delete_bytes): Likewise. 5000 (mn10200_elf_symbol_address_p): Likewise. 5001 (mn10200_elf_get_relocated_section_contents): Likewise. 5002 * elf-m10300.c (mn10300_elf_relax_section): Likewise. 5003 (mn10300_elf_relax_section): Likewise. 5004 (mn10300_elf_relax_delete_bytes): Likewise. 5005 (mn10300_elf_symbol_address_p): Likewise. 5006 (mn10300_elf_get_relocated_section_contents): Likewise. 5007 * elf32-h8300.c (elf32_h8_relax_section): Likewise. 5008 (elf32_h8_relax_delete_bytes): Likewise. 5009 (elf32_h8_symbol_address_p): Likewise. 5010 (elf32_h8_get_relocated_section_contents): Likewise. 5011 * elf32-hppa.c (get_local_syms): Likewise. 5012 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise. 5013 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise. 5014 * elf32-sh.c (sh_elf_relax_section): Likewise. 5015 (sh_elf_relax_delete_bytes): Likewise. 5016 (sh_elf_get_relocated_section_contents): Likewise. 5017 * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise. 5018 * elf64-alpha.c (elf64_alpha_relax_section): Likewise. 5019 * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. 5020 * elf64-mmix.c (mmix_elf_relax_section): Likewise. 5021 * elf64-ppc.c (get_local_syms): Likewise. 5022 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise. 5023 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. 5024 5025 2002-06-05 J"orn Rennecke <joern.rennecke@superh.com> 5026 5027 * config.bfd (sh64l*-*-elf*, shl*-*-elf*): New configurations. 5028 5029 2002-06-05 Alan Modra <amodra@bigpond.net.au> 5030 5031 * elf.c (group_signature): Swap in the whole symbol, and handle 5032 extracting section symbol names. 5033 (setup_group): Add comment. 5034 (set_group_contents): When called from objcopy or ld, arrange for 5035 section contents to be written. Write group member output section 5036 indices to allow objcopy to reorganize sections. 5037 (_bfd_elf_copy_private_section_data): Copy group info. 5038 5039 * elf-bfd.h (struct elf_size_info): Add swap_symbol_in field. 5040 (bfd_elf32_swap_symbol_in): Update prototype. 5041 (bfd_elf64_swap_symbol_in): Likewise. 5042 * elfcode.h (elf_swap_symbol_in): Change input args to const PTR *. 5043 (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in. 5044 * elflink.h (elf_link_is_defined_archive_symbol): Likewise. 5045 (elf_link_add_object_symbols): Likewise. 5046 (elf_link_record_local_dynamic_symbol): Likewise. 5047 (elf_link_input_bfd): Likewise. 5048 (elf_gc_mark): Likewise. 5049 (elf_reloc_symbol_deleted_p): Likewise. 5050 * elf-m10200.c (mn10200_elf_relax_section): Likewise. 5051 (mn10200_elf_relax_delete_bytes): Likewise. 5052 (mn10200_elf_symbol_address_p): Likewise. 5053 (mn10200_elf_get_relocated_section_contents): Likewise. 5054 * elf-m10300.c (mn10300_elf_relax_section): Likewise. 5055 (mn10300_elf_relax_section): Likewise. 5056 (mn10300_elf_relax_delete_bytes): Likewise. 5057 (mn10300_elf_symbol_address_p): Likewise. 5058 (mn10300_elf_get_relocated_section_contents): Likewise. 5059 * elf32-h8300.c (elf32_h8_relax_section): Likewise. 5060 (elf32_h8_relax_delete_bytes): Likewise. 5061 (elf32_h8_symbol_address_p): Likewise. 5062 (elf32_h8_get_relocated_section_contents): Likewise. 5063 * elf32-hppa.c (get_local_syms): Likewise. 5064 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise. 5065 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise. 5066 * elf32-sh.c (sh_elf_relax_section): Likewise. 5067 (sh_elf_relax_delete_bytes): Likewise. 5068 (sh_elf_get_relocated_section_contents): Likewise. 5069 * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise. 5070 * elf64-alpha.c (elf64_alpha_relax_section): Likewise. 5071 * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. 5072 * elf64-mmix.c (mmix_elf_relax_section): Likewise. 5073 * elf64-ppc.c (get_local_syms): Likewise. 5074 * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise. 5075 * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. 5076 * elfcode.h (NAME(_bfd_elf,size_info)): Update initialiser. 5077 * elf64-alpha.c (alpha_elf_size_info): Likewise. 5078 * elf64-hppa.c (hppa64_elf_size_info): Likewise. 5079 * elf64-mips.c (mips_elf64_size_info): Likewise. 5080 * elf64-s390.c (s390_elf64_size_info): Likewise. 5081 * elf64-sparc.c (sparc64_elf_size_info): Likewise. 5082 5083 2002-06-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 5084 5085 * elf32-mips.c (elf32_mips_ignore_discarded_relocs): Move to... 5086 elfxx-mips.c (_bfd_mips_elf_ignore_discarded_relocs): ... here. 5087 elf64-mips.c (elf_backend_ignore_discarded_relocs): Use 5088 _bfd_mips_elf_ignore_discarded_relocs. 5089 elfxx-mips.h (_bfd_mips_elf_ignore_discarded_relocs): Declare. 5090 5091 2002-06-05 H.J. Lu <hjl@gnu.org> 5092 5093 * elfxx-mips.c (mips_elf_calculate_relocation): Call 5094 _bfd_elf_rel_local_sym for STT_SECTION relocations against 5095 the SEC_MERGE section. 5096 5097 2002-06-05 Alan Modra <amodra@bigpond.net.au> 5098 5099 * coff-alpha.c: Update copyright date. 5100 * coff-mips.c: Likewise. 5101 * xcoff-target.h: Likewise. 5102 5103 * bfd-in.h: Remove "taken from the source" comment. 5104 * libbfd-in.h: Likewise. 5105 * libcoff-in.h: Likewise. 5106 * bfd-in2.h: Regenerate. 5107 * libbfd.h: Regenerate. 5108 * libcoff.h: Regenerate. 5109 5110 * elf.c (bfd_elf_discard_group): Return true. 5111 * elf-bfd.h (bfd_elf_discard_group): Declare. 5112 * bfd-in.h (bfd_elf_discard_group): Don't declare here. 5113 * section.c (bfd_discard_group): Rename to bfd_generic_discard_group. 5114 * bfd.c (bfd_discard_group): Define. 5115 * targets.c (struct bfd_target): Add _bfd_discard_group. 5116 (BFD_JUMP_TABLE_LINK): Here too. 5117 * libbfd-in.h (_bfd_nolink_bfd_discard_group): Define. 5118 * aout-adobe.c (aout_32_bfd_discard_group): Define. 5119 * aout-target.h (MY_bfd_discard_group): Define. 5120 * aout-tic30.c (MY_bfd_discard_group): Define. 5121 * binary.c (binary_bfd_discard_group): Define. 5122 * bout.c (b_out_bfd_discard_group): Define. 5123 * coff-alpha.c (_bfd_ecoff_bfd_discard_group): Define. 5124 * coffcode.h (coff_bfd_discard_group): Define. 5125 * coff-mips.c (_bfd_ecoff_bfd_discard_group): Define. 5126 * elfxx-target.h (bfd_elfNN_bfd_discard_group): Define. 5127 * i386msdos.c (msdos_bfd_discard_group): Define. 5128 * i386os9k.c (os9k_bfd_discard_group): Define. 5129 * ieee.c (ieee_bfd_discard_group): Define. 5130 * ihex.c (ihex_bfd_discard_group): Define. 5131 * mmo.c (mmo_bfd_discard_group): Define. 5132 * nlm-target.h (nlm_bfd_discard_group): Define. 5133 * oasys.c (oasys_bfd_discard_group): Define. 5134 * ppcboot.c (ppcboot_bfd_discard_group): Define. 5135 * som.c (som_bfd_discard_group): Define. 5136 * srec.c (srec_bfd_discard_group): Define. 5137 * tekhex.c (tekhex_bfd_discard_group): Define. 5138 * versados.c (versados_bfd_discard_group): Define. 5139 * vms.c (vms_bfd_discard_group): Define. 5140 * xcoff-target.h (_bfd_xcoff_bfd_discard_group): Define. 5141 * coff64-rs6000.c (rs6000coff64_vec): Update initialiser. 5142 (aix5coff64_vec): Likewise. 5143 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise. 5144 5145 2002-06-04 Jason Thorpe <thorpej@wasabisystems.com> 5146 5147 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-com.lo. 5148 (BFD32_BACKENDS_CFILES): Add elf32-sh64-com.c. 5149 (elf32-sh64-com.lo): New dependency list. 1125 5150 * Makefile.in: Regenerate. 1126 * configure.in: Remove dwarf.lo from the elf shell variable. 5151 * configure.in (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec) 5152 (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec): Add 5153 elf32-sh64-com.lo. 1127 5154 * configure: Regenerate. 1128 * libcoff-in.h (coff_tdata): Add pointer dwarf2_find_line_info. 5155 * elf32-sh64.c (sh64_address_in_cranges) 5156 (sh64_get_contents_type, sh64_address_is_shmedia): Move to... 5157 (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb): 5158 (crange_bsearch_cmpl): Prepend _bfd_sh64_ to name and move to... 5159 * elf32-sh64-com.c: ...here. New file. 5160 5161 2002-06-04 Alan Modra <amodra@bigpond.net.au> 5162 5163 * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove 5164 ATTRIBUTE_UNUSED on used params. 5165 * elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks 5166 before calling bfd_section_from_elf_index on local syms. 5167 * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise. 5168 5169 2002-06-04 Jason Thorpe <thorpej@wasabisystems.com> 5170 5171 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo. 5172 (BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c. 5173 (BFD64_BACKENDS): Add elf64-sh64-nbsd.lo. 5174 (BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c. 5175 (elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules. 5176 * Makefile.in: Regenerate. 5177 * config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*) 5178 (sh64-*-netbsd*): New targets. 5179 * configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec, 5180 bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec. 5181 * configure: Regenerate. 5182 * elf32-sh64-nbsd.c: New file. 5183 * elf64-sh64-nbsd.c: New file. 5184 * targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec, 5185 bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and 5186 bfd_elf64_sh64lnbsd_vec. 5187 5188 2002-06-04 Alan Modra <amodra@bigpond.net.au> 5189 5190 * elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups. 5191 (bfd_section_from_shdr): Likewise. Set section name of group 5192 sections from signature. 5193 (group_signature): Split out from setup_group. Ensure symbol table 5194 is available. 5195 (bfd_elf_discard_group): New function. 5196 (_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on 5197 .gnu.linkonce* sections if they are members of a group. 5198 (set_group_contents): Set GRP_COMDAT flag. 5199 * section.c (bfd_discard_group): New function. 5200 * bfd-in.h (bfd_elf_discard_group): Declare. 5201 * bfd-in2.h: Regenerate. 5202 * elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field. 5203 (elf_linkonce_p): Define. 5204 5205 2002-06-04 Alan Modra <amodra@bigpond.net.au> 5206 5207 * elf.c (bfd_section_from_shdr): Make "name" const. 5208 * elf-bfd.h (elf_backend_section_from_shdr): Likewise. 5209 * elf32-i370.c (i370_elf_section_from_shdr): Likewise. 5210 * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise. 5211 * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise. 5212 * elf32-v850.c (v850_elf_section_from_shdr): Likewise. 5213 * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise. 5214 * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise. 5215 * elf64-ppc.c (ppc64_elf_section_from_shdr): Likewise. 5216 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise. 5217 * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise. 5218 * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise. 5219 5220 2002-06-03 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 5221 5222 * elfxx-mips.c (ABI_64_P): Use backend's data to determine the 5223 ABI. 5224 5225 2002-06-02 Kazu Hirata <kazu@cs.umass.edu> 5226 5227 * elf32-arc.c: Fix formatting. 5228 * elf32-arm.h: Likewise. 5229 * elf32-cris.c: Likewise. 5230 * elf32-dlx.c: Likewise. 5231 * elf32-hppa.c: Likewise. 5232 * elf32-i386.c: Likewise. 5233 * elf32-i386qnx.c: Likewise. 5234 * elf32-or32.c: Likewise. 5235 * elf32-s390.c: Likewise. 5236 * elf32-sh64.c: Likewise. 5237 * elf32-vax.c: Likewise. 5238 * elf32-xstormy16.c: Likewise. 5239 * elf64-alpha.c: Likewise. 5240 * elf64-mmix.c: Likewise. 5241 * elf64-ppc.c: Likewise. 5242 * elf64-s390.c: Likewise. 5243 * elf64-sh64.c: Likewise. 5244 * elf64-x86-64.c: Likewise. 5245 5246 2002-06-02 Richard Henderson <rth@redhat.com> 5247 5248 * elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference 5249 null when there are no got entries for a symbol. 5250 (elf64_alpha_relax_find_tls_segment): Rearrange to avoid 5251 uninitialized variable warning. 5252 5253 2002-06-01 Richard Henderson <rth@redhat.com> 5254 5255 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for 5256 undefined symbols here. 5257 (elf64_alpha_relax_section): Do it here. Also test for not 5258 defined in the current module. 5259 (elf64_alpha_relocate_section_r): Split out of ... 5260 (elf64_alpha_relocate_section): ... here. Don't dereference 5261 NULL when looking up local got entries. 5262 5263 2002-06-01 Richard Henderson <rth@redhat.com> 5264 5265 * elf64-alpha.c (elf64_alpha_relax_with_lituse): Reject undefined 5266 symbols from JSR relaxation. 5267 (elf64_alpha_size_plt_section_1): New. 5268 (elf64_alpha_calc_dynrel_sizes): Split out .rela.got bits ... 5269 (elf64_alpha_size_rela_got_1): ... here. 5270 (elf64_alpha_size_dynamic_sections): Split out .rela.got bits ... 5271 (elf64_alpha_size_rela_got_section): ... here. 5272 (elf64_alpha_size_plt_section): New. 5273 (elf64_alpha_relax_section): Call them. 5274 (elf64_alpha_size_got_sections): Remove output_bfd arg. 5275 (elf64_alpha_finish_dynamic_symbol): Check gotent use_count. 5276 5277 2002-06-01 Richard Henderson <rth@redhat.com> 5278 5279 * elf64-alpha.c (alpha_get_dtprel_base, alpha_get_tprel_base): New. 5280 (elf64_alpha_relocate_section): Use them. Reject LE TLS relocs 5281 in shared libraries. Fix DTPRELHI and TPRELHI value. 5282 (INSN_ADDQ, INSN_RDUNIQ): New. 5283 (struct alpha_relax_info): Add symtab_hdr, tls_segment, first_gotent. 5284 (elf64_alpha_relax_with_lituse): Return boolean. Remove irelend 5285 argument. Reject dynamic symbols. Use LITUSE symbolic constants. 5286 (elf64_alpha_relax_got_load): Rename from relax_without_lituse. 5287 Handle GOTDTPREL and GOTTPREL relocations. 5288 (elf64_alpha_relax_gprelhilo): New. 5289 (elf64_alpha_relax_tls_get_addr): New. 5290 (elf64_alpha_relax_find_tls_segment): New. 5291 (elf64_alpha_relax_section): Handle TLS relocations. 5292 (ALPHA_ELF_LINK_HASH_TLS_IE): New. 5293 (elf64_alpha_check_relocs): Set it. 5294 5295 2002-06-01 Richard Henderson <rth@redhat.com> 5296 5297 * elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp. 5298 5299 * elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic 5300 check; don't suppress dynamic relocs for non-allocated sections. 5301 5302 * elf64-alpha.c: Remove dead code. 5303 5304 2002-05-31 Alan Modra <amodra@bigpond.net.au> 5305 5306 * bfd-in2.h: Regenerate. 5307 * libbfd.h: Regenerate. 5308 * po/SRC-POTFILES.in: Regenerate. 5309 5310 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Don't allocate 5311 space for bss .plt. 5312 5313 2002-05-31 Graeme Peterson <gp@qnx.com> 5314 5315 * Makefile.am (BFD32_BACKENDS): Add elf32-i386qnx.lo. 5316 (BFD32_BACKENDS_CFILES): Add elf32-i386qnx.c. 5317 Run "make dep-am". 5318 * Makefile.in: Regenerate. 5319 * config.bfd: Add i[3456]86-*-nto-qnx* support. 5320 * configure.in: Add bfd_elf32_i386qnx_vec support. 5321 * configure: Regenerate. 5322 * elf-bfd.h (struct elf_backend_data): Add set_nonloadable_filepos, 5323 is_contained_by_filepos, and copy_private_bfd_data_p. 5324 * elf.c (assign_file_positions_for_segments): Call backend 5325 set_nonloadable_filepos. Fix non-K&R call to _bfd_error_handler. 5326 (IS_CONTAINED_BY_FILEPOS): Define. 5327 (INCLUDE_SECTION_IN_SEGMENT): Also test IS_CONTAINED_BY_FILEPOS. 5328 (copy_private_bfd_data): Use IS_CONTAINED_BY_FILEPOS. Typo fix. 5329 Fix non-K&R call to _bfd_error_handler. 5330 (_bfd_elf_copy_private_section_data): Use backend 5331 copy_private_bfd_data_p. 5332 * elf32-i386.c: Don't include elfxx-target.h when 5333 ELF32_I386_C_INCLUDED is defined. 5334 * elf32-i386qnx.c: New QNX elf backend file. 5335 * elfxx-target.h: Add elf_backend_set_nonloadable_filepos, 5336 elf_backend_is_contained_by_filepos, and 5337 elf_backend_do_copy_private_bfd_data. 5338 * targets.c: Add bfd_target bfd_elf32_i386qnx_vec. 5339 5340 2002-05-31 Alan Modra <amodra@bigpond.net.au> 5341 5342 * elfarm-oabi.c (bfd_elf32_arm_add_glue_sections_to_bfd): Define. 5343 Move other similar defines to start of file. 5344 5345 2002-05-30 Tom Rix <trix@redhat.com> 5346 5347 * coff-rs6000.c (xcoff_rtype2howto): Handle 16 bit R_RBA. 5348 * coff64-rs6000.c (xcoff64_rtype2howto): Same. 5349 5350 2002-05-30 Richard Henderson <rth@redhat.com> 5351 5352 * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_TLSGD, 5353 ALPHA_ELF_LINK_HASH_LU_TLSLDM, ALPHA_ELF_LINK_HASH_LU_FUNC): New. 5354 (ALPHA_ELF_GOT_ENTRY_RELOCS_DONE): Remove. 5355 (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Remove. 5356 (struct alpha_elf_got_entry): Add reloc_type, reloc_done, reloc_xlated. 5357 (struct alpha_elf_obj_tdata): Rename total_got_entries and 5358 n_local_got_entries to total_got_size and local_got_size. 5359 (elf64_alpha_howto, elf64_alpha_reloc_map): Update for TLS relocs. 5360 (alpha_got_entry_size): New. 5361 (elf64_alpha_relax_with_lituse): Use it. 5362 (elf64_alpha_relax_without_lituse): Likewise. 5363 (MAX_GOT_SIZE): Rename from MAX_GOT_ENTRIES. 5364 (get_got_entry): New. 5365 (elf64_alpha_check_relocs): Handle TLS relocs. Reorganize. 5366 (elf64_alpha_adjust_dynamic_symbol): Test LU_FUNC as a mask. 5367 (elf64_alpha_merge_ind_symbols): Check gotent->reloc_type. 5368 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots): Likewise. 5369 (elf64_alpha_calc_got_offsets_for_symbol): Use alpha_got_entry_size. 5370 (elf64_alpha_calc_got_offsets): Likewise. 5371 (alpha_dynamic_entries_for_reloc): New. 5372 (elf64_alpha_calc_dynrel_sizes): Use it. 5373 (elf64_alpha_size_dynamic_sections): Likewise. 5374 (elf64_alpha_relocate_section): Handle TLS relocations. 5375 * reloc.c: Add Alpha TLS relocations. 5376 * bfd-in2.h, libbfd.h: Rebuild. 5377 5378 2002-05-29 Ralf Habacker <ralf.habacker@freenet.de> 5379 5380 * peXXigen.c (pe_print_idata): Remove double printed 5381 import table lines; add Bound-To comment. 5382 5383 2002-05-29 Matt Thomas <matt@3am-software.com> 5384 5385 * Makefile.am (BFD32_BACKENDS): Add elf32-vax.lo. 5386 (BFD32_BACKENDS_CFILES): Add elf32-vax.c. 5387 (elf32-vax.lo): New rule. 5388 * Makefile.in: Regenerate. 5389 * configure.in (bfd_elf32_vax_vec) 5390 (vaxnetbsd_vec): New vectors. 5391 * configure: Regenerate. 5392 * config.bfd (vax-*-netbsdelf*) 5393 (vax-*-netbsdaout*) 5394 (vax-*-netbsd*): New targets. 5395 * elf32-vax.c: New file. 5396 * reloc.c: Add VAX relocations. 5397 * bfd-in2.h: Regenerate. 5398 * targets.c (_bfd_target_vector): Add bfd_elf32_vax_vec. 5399 5400 2002-05-29 Jason Thorpe <thorpej@wasabisystems.com> 5401 5402 * config.bfd (arm-*-netbsd*): Add bfd_elf32_littlearm_vec 5403 and bfd_elf32_bigarm_vec to targ_selvecs. 5404 5405 2002-05-29 Ralf Habacker <ralf.habacker@freenet.de> 5406 5407 * peXXigen.c (pe_print_idata): Fix seg faults on printing import tables 5408 with auto-imported symbols. 5409 5410 2002-05-29 Adam Nemet <anemet@lnxw.com> 5411 5412 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Don't add glue 5413 sections only record bfd. 5414 (bfd_elf32_arm_add_glue_sections_to_bfd): New function. 5415 * bfd-in.h (bfd_elf32_arm_add_glue_sections_to_bfd): Declare it. 5416 * bfd-in2.h: Regenerate. 5417 5418 2002-05-28 Nick Clifton <nickc@cambridge.redhat.com> 5419 5420 * syms.c (_bfd_stab_section_find_nearest_line): Move 5421 declaration and initialisation of saw_line and saw_func out of 5422 for loop. 5423 5424 2002-05-29 Alan Modra <amodra@bigpond.net.au> 5425 5426 * elf64-ppc.c (ppc64_elf_get_symbol_info): New function. 5427 (bfd_elf64_get_symbol_info): Define. 5428 * elfxx-target.h (bfd_elfNN_get_symbol_info): Only define if undef. 5429 5430 2002-05-29 Andrey Volkov <avolkov@transas.com> 5431 5432 * cpu-h8300.c: Make default h8300 machine first in machine list. 5433 5434 2002-05-28 Kuang Hwa Lin <kuang@sbcglobal.net> 5435 5436 * config.bfd: Added DLX configuraton. 5437 * Makefile.am: Added DLX configuraton. 5438 * configure.in: Added DLX configuraton. 5439 * archures.c: Add DLX architecure. 5440 * reloc.c: Add DLX relocs. 5441 * targets.c: Added DLX target vector. 5442 * configure: Regenerate. 5443 * Makefile.in: Regenreate. 5444 * bfd-in2.h: Regenreate. 5445 * elf32-dlx.c: New file: Support DLX target. 5446 * cpu-dlx.c: New file: Support DLX target. 5447 5448 2002-05-25 Alan Modra <amodra@bigpond.net.au> 5449 5450 * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Formatting. 5451 5452 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Revert last change. 5453 (ppc64_elf_check_relocs): Don't set up function descriptor symbol 5454 strings to point inside function code sym string. 5455 (func_desc_adjust): Likewise. 5456 (ppc64_elf_hide_symbol): Rewrite code to look up function code sym. 5457 5458 2002-05-24 Michal Ludvig <mludvig@suse.cz> 5459 5460 * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Added. 5461 (elf64_x86_64_grok_psinfo): Added. 5462 5463 2002-05-24 TAMURA Kent <kent@netbsd.org> 5464 5465 * config.bfd: Add a target for i386-netbsdpe. 5466 5467 2002-05-24 Alan Modra <amodra@bigpond.net.au> 5468 5469 * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy is_func 5470 and is_func_descriptor. 5471 (func_desc_adjust): Hide function code sym in shared libs unless 5472 there is a matching exported function descriptor sym. 5473 5474 2002-05-23 Jakub Jelinek <jakub@redhat.com> 5475 5476 * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL 5477 for symbols from SHF_TLS section. 5478 (_bfd_elf_print_private_bfd_data): Add PT_TLS. 5479 (elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections. 5480 (map_sections_to_segments): Build PT_TLS segment if necessary. 5481 (assign_file_positions_for_segments): Likewise. 5482 (get_program_header_size): Account for PT_TLS segment. 5483 (swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from 5484 SEC_THREAD_LOCAL sections to STT_TLS. 5485 * reloc.c: Add 386 and IA-64 TLS relocs. 5486 * section.c (SEC_THREAD_LOCAL): Define. 5487 (SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS): 5488 Remove. 5489 * elflink.h (elf_link_add_object_symbols): Support .tcommon. 5490 (size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS 5491 unconditionally. 5492 (struct elf_final_link_info): Add first_tls_sec. 5493 (elf_bfd_final_link): Set first_tls_sec. 5494 Compute elf_hash_table (info)->tls_segment. 5495 (elf_link_output_extsym): Handle STT_TLS symbols. 5496 (elf_link_input_bfd): Likewise. 5497 * syms.c (BSF_THREAD_LOCAL): Define. 5498 * bfd-in2.h: Rebuilt. 5499 * libbfd.h: Rebuilt. 5500 * elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff, 5501 elf_i386_mkobject, elf_i386_object_p): New functions. 5502 (elf_howto_table): Add TLS relocs. 5503 (elf_i386_reloc_type_lookup): Support TLS relocs. 5504 (elf_i386_info_to_howto_rel): Likewise. 5505 (struct elf_i386_link_hash_entry): Add tls_type. 5506 (struct elf_i386_obj_tdata): New. 5507 (elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type): 5508 New macros. 5509 (struct elf_i386_link_hash_table): Add tls_ldm_got. 5510 (link_hash_newfunc): Clear tls_type. 5511 (elf_i386_check_relocs): Support TLS relocs. 5512 (elf_i386_gc_sweep_hook): Likewise. 5513 (allocate_dynrelocs): Likewise. 5514 (elf_i386_size_dynamic_sections): Likewise. 5515 (elf_i386_relocate_section): Likewise. 5516 (elf_i386_finish_dynamic_symbol): Likewise. 5517 (bfd_elf32_mkobject, elf_backend_object_p): Define. 5518 * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset, 5519 dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done, 5520 want_tprel, want_dtpmod, want_dtprel. 5521 (elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions. 5522 (ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to 5523 R_IA64_LTOFF_TPREL22. 5524 (elf_code_to_howto_index): Add TLS relocs. 5525 (elfNN_ia64_check_relocs): Support TLS relocs. 5526 (allocate_global_data_got): Account for TLS .got data. 5527 (allocate_dynrel_entries): Account for TLS dynamic relocations. 5528 (elfNN_ia64_install_value): Supprt TLS relocs. 5529 (set_got_entry): Support TLS relocs. 5530 (elfNN_ia64_relocate_section): Likewise. 5531 5532 2002-05-23 Nick Clifton <nickc@cambridge.redhat.com> 5533 5534 * elf32-arm.h (elf32_arm_final_link_relocate): For the Thumb 5535 BLX reloc round the relocation up rather than down. 5536 * coff-arm.c (coff_arm_relocate_section): Likewise. 5537 5538 2002-05-21 H.J. Lu (hjl@gnu.org) 5539 5540 * linker.c (_bfd_generic_link_add_one_symbol): Allow multiple 5541 definition. 5542 5543 2002-05-22 Alan Modra <amodra@bigpond.net.au> 5544 5545 * elf64-ppc.c (ppc64_elf_size_stubs): Don't strip .branch_lt. 5546 (ppc64_elf_relocate_section): Handle unresolved relocs in opd. 5547 5548 2002-05-22 Alan Modra <amodra@bigpond.net.au> 5549 5550 * elf64-ppc.c (ppc64_elf_relocate_section): Return false for 5551 unresolved relocs. 5552 (ppc64_elf_size_dynamic_sections): Check for splt NULL. 5553 5554 2002-05-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 5555 5556 * bfd.c (bfd_get_arch_size): Remove bfd_set_error call for 5557 non-ELF targets. 5558 5559 2002-05-21 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 5560 5561 * elf-bfd.h (elf_backend_emit_relocs): Change prototype to return 5562 an error value. 5563 * elflink.h (elf_link_output_relocs): Likewise. Improve error message. 5564 return with false on error. 5565 (elf_link_input_bfd): Check reloc_emitter return value. 5566 5567 2002-05-21 Jason Thorpe <thorpej@wasabisystems.com> 5568 5569 * config.bfd (armeb-*-netbsdelf*): New target. 5570 5571 2002-05-20 Alan Modra <amodra@bigpond.net.au> 5572 5573 * elf64-ppc.c (ppc_build_one_stub): Point undefined function syms 5574 at the plt call stub. 5575 5576 2002-05-19 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 5577 5578 * cpu-mips.c (mips_compatible): Don't try to check machine 5579 compatibility. 5580 5581 2002-05-18 Tom Rix <trix@redhat.com> 5582 5583 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_out): Fix C_FILE auxent. 5584 5585 2002-05-17 Alan Modra <amodra@bigpond.net.au> 5586 5587 * elf64-ppc.c (ppc64_elf_info_to_howto): Formatting. 5588 (ppc64_elf_relocate_section): Don't warn about reloc overflow when 5589 we've already warned about an undefined symbol. Report more 5590 detail on reloc errors. 5591 5592 2002-05-17 Alan Modra <amodra@bigpond.net.au> 5593 5594 * acinclude.m4 (AM_INSTALL_LIBBFD): New. 5595 * configure.in: Invoke AM_INSTALL_LIBBFD. 5596 * Makefile.am (install-data-local): Revert 2002-05-13. Move to.. 5597 (install_libbfd): .. New target. 5598 (uninstall_libbfd): Likewise. 5599 (install-bfdlibLTLIBRARIES): Likewise. 5600 (uninstall-bfdlibLTLIBRARIES): Likewise. 5601 (bfdlibdir): New. 5602 (bfdincludedir): New. 5603 (lib_LTLIBRARIES): Rename to bfdlib_LTLIBRARIES. 5604 * aclocal.m4: Regenerate. 5605 * configure: Regenerate. 5606 * Makefile.in: Regenerate. 5607 5608 2002-05-17 Stuart Balfour <sbalfour@cisco.com> 5609 5610 * hash.c (bfd_hash_lookup): Remove computation of len from inside 5611 hash loop. 5612 5613 2002-05-16 Nick Clifton <nickc@cambridge.redhat.com> 5614 5615 * config.bfd: Add targets for sh64-linux (little endian and 5616 big endian). 5617 5618 2002-05-15 Laurent Pinchart <laurent.pinchart@skynet.be> 5619 5620 * peXXigen.c (pe_print_idata): Do not assume that the first thunk 5621 is located in the same section as the import table. Instead 5622 check, and if necessary load the section containing the thunk. 5623 5624 2002-05-15 Nick Clifton <nickc@cambridge.redhat.com> 5625 5626 * aix5ppc-core.c (xcoff64_core_p): Replace bfd_read with 5627 bfd_bread. 5628 (xcoff64_core_file_matches_executable_p): Replace bfd_read 5629 with bfd_bread. 5630 5631 2002-05-15 Alan Modra <amodra@bigpond.net.au> 5632 5633 * aix5ppc-core.c: Warning fixes. 5634 * aout-adobe.c (aout_32_bfd_link_just_syms): Define. 5635 * aout-target.h (MY_bfd_link_just_syms): Define. 5636 * aout-tic30.c (MY_bfd_link_just_syms): Define. 5637 * bfd.c (bfd_link_just_syms): Define. 5638 * binary.c (binary_bfd_link_just_syms): Define. 5639 * bout.c (b_out_bfd_link_just_syms): Define. 5640 * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update initializer. 5641 * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise. 5642 * coffcode.h (coff_bfd_link_just_syms): Define. 5643 * elf-bfd.h (enum elf_link_info_type): Add ELF_INFO_TYPE_JUST_SYMS. 5644 (elf_discarded_section): Check for ELF_INFO_TYPE_JUST_SYMS. 5645 (_bfd_elf_link_just_syms): Declare. 5646 * elf.c (_bfd_elf_link_just_syms): New function. 5647 * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Check that 5648 sections haven't already been discarded by the linker. 5649 * elflink.h (elf_link_add_object_symbols): Likewise for stab 5650 sections and SEC_MERGE sections. 5651 (elf_bfd_discard_info): Similarly here. 5652 * elfxx-target.h (bfd_elfNN_bfd_link_just_syms): Define. 5653 * i386msdos.c (msdos_bfd_link_just_syms): Define. 5654 * i386os9k.c (os9k_bfd_link_just_syms): Define. 5655 * ieee.c (ieee_bfd_link_just_syms): Define. 5656 * ihex.c (ihex_bfd_link_just_syms): Define. 5657 * libbfd-in.h (_bfd_nolink_bfd_link_just_syms): Define. 5658 (_bfd_generic_link_just_syms): Declare. 5659 * libecoff.h (_bfd_ecoff_bfd_link_just_syms): Define. 5660 * linker.c (_bfd_generic_link_just_syms): New function. 5661 * mmo.c (mmo_bfd_link_just_syms): Define. 5662 * nlm-target.h (nlm_bfd_link_just_syms): Define. 5663 * oasys.c (oasys_bfd_link_just_syms): Define. 5664 * ppcboot.c (ppcboot_bfd_link_just_syms): Define. 5665 * som.c (som_bfd_link_just_syms): Define. 5666 * srec.c (srec_bfd_link_just_syms): Define. 5667 * targets.c (struct bfd_target): Add _bfd_link_just_syms. 5668 (BFD_JUMP_TABLE_LINK): And here. 5669 * tekhex.c (tekhex_bfd_link_just_syms): Define. 5670 * versados.c (versados_bfd_link_just_syms): Define. 5671 * vms.c (vms_bfd_link_just_syms): Define. 5672 * libbfd.h: Regenerate. 5673 * bfd-in2.h: Regenerate. 5674 5675 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 5676 5677 * elf32-mips.c: Remove superfluous definitions copied from 5678 elfxx-mips.c. 5679 (bfd_elf32_bigmips_vec,bfd_elf32_littlemips_vec): Use the 5680 SGIish vectors to check the special case. 5681 (mips_elf_hi16_reloc): Fix comment. 5682 (mips_elf_got16_reloc): Likewise. 5683 (_bfd_mips_elf32_gprel16_reloc): Likewise. 5684 (elf_reloc_map): Code cleanup. 5685 (mips_reloc_map): Add comment. 5686 (bfd_elf23_bfd_reloc_type_lookup): Code cleanup. 5687 (mips_elf32_rtype_to_howto): Likewise. 5688 (mips_elf32_discard_info): Likewise. 5689 (elf32_mips_irix_compat): Invert logic: Only SGIish vectors 5690 lead to IRIX compatibility now. 5691 5692 2002-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 5693 5694 * elfxx-mips.c: Call it IRIX, not Irix in comments. 5695 5696 2002-05-13 Jason Thorpe <thorpej@wasabisystems.com> 5697 5698 * config.bfd (shle-*-netbsdelf*): Add target which includes 5699 sh64 support. 5700 5701 2002-05-13 David Edelsohn <edelsohn@gnu.org> 5702 5703 * configure.in: Revert 2002-04-07. Instead, auto-configure 5704 HAVE_ST_C_IMPL. 5705 * configure: Regenerate. 5706 * config.in: Regenerate. 5707 * rs6000-core.c (CNEW_IMPL): Guard use of c_impl with HAVE_ST_C_IMPL 5708 or AIX_5_CORE. 5709 5710 2002-05-11 Federico G. Schwindt <fgsch@olimpo.com.br> 5711 5712 * configure.in (sparc*-*-openbsd*): Support sparc64-openbsd 5713 corefiles as well.2 5714 * configure: Regenerate. 5715 5716 2002-05-13 Alan Modra <amodra@bigpond.net.au> 5717 5718 * Makefile.am (install-data-local): Install headers to 5719 $(exec_prefix)/include. 5720 * Makefile.in: Regenerate. 5721 5722 2002-05-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de> 5723 Daniel Jacobowitz <drow@mvista.com> 5724 5725 * coff-sh.c (sh_reloc_map): Map to R_SH_IMM32 for non-PE. Don't 5726 map BFD_RELOC_RVA. 5727 5728 2002-05-11 Federico G. Schwindt <fgsch@olimpo.com.br> 5729 5730 * config.bfd (alpha*-*-openbsd*, sparc64*-*-openbsd*, 5731 hppa*-*-openbsd*): New targets. 5732 * configure.in (alpha*-*-openbsd*): Set COREFILE. 5733 * configure: Regenerate. 5734 5735 2002-05-10 Tom Rix <trix@redhat.com> 5736 5737 * coff64-rs6000.c (xcoff64_reloc_type_br): New function for 5738 xcoff64_ppc_relocate_section. 5739 * coff-rs6000.c : Extern common xcoff_reloc_type functions. 5740 * libxcoff.h: Common xcoff_reloc_type function declaration. 5741 5742 2002-05-10 Alan Modra <amodra@bigpond.net.au> 5743 5744 * elf32-i386.c (elf_i386_relocate_section): Remove overflow checks 5745 added in 2002-05-09 commit. 5746 5747 * elf32-hppa.c (elf32_hppa_size_stubs): Revert part of 2002-05-04, 5748 don't look for stubs on all undefined syms. 5749 5750 2002-05-09 Alan Modra <amodra@bigpond.net.au> 5751 5752 * elf64-ppc.c (RA_REGISTER_MASK, RA_REGISTER_SHIFT): Delete. 5753 (ppc64_elf_howto_raw <R_PPC64_RELATIVE>): Not pc_relative or 5754 pcrel_offset. 5755 5756 * elf32-i386.c (elf_howto_table): Comments. 5757 (elf_i386_relocate_section): Handle more relocs for relocatable 5758 linking and against SEC_MERGE sections. 5759 5760 2002-05-08 Alan Modra <amodra@bigpond.net.au> 5761 5762 * elf32-ppc.c (ppc_elf_create_got): New function. 5763 (ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before 5764 _bfd_elf_create_dynamic_sections. Correct .plt flags. 5765 (ppc_elf_check_relocs): Use ppc_elf_create_got in place of 5766 _bfd_elf_create_got_section. 5767 5768 2002-05-07 Alan Modra <amodra@bigpond.net.au> 5769 5770 * elf-bfd.h (struct elf_backend_data): Add rela_normal. 5771 * elfxx-target.h (elf_backend_rela_normal): Define. 5772 (elfNN_bed): Init rela_normal. 5773 * elflink.h (elf_link_input_bfd <emit_relocs>): Handle adjustment 5774 for section symbols here if rela_normal. Simplify abs section test. 5775 * elf-m10200.c (mn10200_elf_relocate_section): If relocatable, 5776 return immediately. Remove code handling relocatable linking. 5777 * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 5778 * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 5779 * elf32-i370.c (i370_elf_relocate_section): Likewise. 5780 * elf32-i860.c (elf32_i860_relocate_section): Likewise. 5781 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 5782 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 5783 * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. 5784 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 5785 * elf32-s390.c (elf_s390_relocate_section): Likewise. 5786 * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. 5787 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 5788 * elf64-s390.c (elf_s390_relocate_section): Likewise. 5789 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 5790 * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. 5791 * elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL. 5792 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 5793 * elf-m10200.c (elf_backend_rela_normal): Define. 5794 * elf-m10300.c (elf_backend_rela_normal): Define. 5795 * elf32-fr30.c (elf_backend_rela_normal): Define. 5796 * elf32-i370.c (elf_backend_rela_normal): Define. 5797 * elf32-i860.c (elf_backend_rela_normal): Define. 5798 * elf32-m68k.c (elf_backend_rela_normal): Define. 5799 * elf32-mcore.c (elf_backend_rela_normal): Define. 5800 * elf32-openrisc.c (elf_backend_rela_normal): Define. 5801 * elf32-ppc.c (elf_backend_rela_normal): Define. 5802 * elf32-s390.c (elf_backend_rela_normal): Define. 5803 * elf32-xstormy16.c (elf_backend_rela_normal): Define. 5804 * elf64-ppc.c (elf_backend_rela_normal): Define. 5805 * elf64-s390.c (elf_backend_rela_normal): Define. 5806 * elf64-x86-64.c (elf_backend_rela_normal): Define. 5807 * elfxx-ia64.c (elf_backend_rela_normal): Define. 5808 * elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL. 5809 * elf32-m32r.c (elf_backend_rela_normal): Likewise. 5810 5811 2002-05-06 Nick Clifton <nickc@cambridge.redhat.com> 5812 5813 * elf32-arm.h (elf32_arm_final_link_relocate): Convert 5814 'reloc_signed_max' and 'reloc_signed_min' into half-word offsets. 5815 5816 2002-05-06 Alan Modra <amodra@bigpond.net.au> 5817 5818 * elflink.h (elf_link_input_bfd <emit_relocs>): Adjust r_offset 5819 when not relocatable. Fix reloc_emitter call for K&R. 5820 5821 2002-05-04 Alan Modra <amodra@bigpond.net.au> 5822 5823 * elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code 5824 reloading local sym addend mistakenly removed in 2002-05-01 change. 5825 5826 * dwarf2.c (struct line_head): Make prologue_length a bfd_vma. 5827 (read_abbrevs): Change "offset" param to bfd_vma. 5828 (parse_comp_unit): Change "version" and addr_size to unsigned ints. 5829 Change "abbrev_offset" to bfd_vma. 5830 (read_indirect_string): Use correct conversion chars in error 5831 message format string, cast bfd_vma's to unsigned long. 5832 (read_abbrevs): Likewise. 5833 (read_attribute_value): Likewise. 5834 (decode_line_info): Likewise. 5835 (scan_unit_for_functions): Likewise. 5836 (parse_comp_unit): Likewise. 5837 5838 2002-05-04 Tom Rix <trix@redhat.com> 5839 5840 * coffswap.h (coff_swap_reloc_in): Remove XCOFF support. 5841 (coff_swap_reloc_out): Same. 5842 * coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h. 5843 (xcoff_swap_reloc_out): Same. 5844 (xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special 5845 case some 16 bit relocs. Add reloc value to output. 5846 (xcoff_howto_table): Remove 64 bit R_POS, add 16 bit 5847 R_RBR. Improve names. 5848 (_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS. 5849 (bfd_xcoff_backend_data): Update with new reloc swap names. 5850 (bfd_pmac_xcoff_backend_data) : Same. 5851 * coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h. 5852 (xcoff64_swap_reloc_out): Same. 5853 (xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit 5854 R_POS. Add reloc value to output. 5855 (xcoff64_howto_table): Move 64 bit R_POS to first entry. Add 16 5856 bit R_RBR. Improve names, masks. 5857 (xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS. 5858 (bfd_xcoff_backend_data): Update with new reloc swap names. 5859 (bfd_xcoff_aix5_backend_data) : Same. 5860 5861 2002-05-04 Alan Modra <amodra@bigpond.net.au> 5862 5863 * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add 5864 bfd_count top_index, input_list, all_local_syms. 5865 (elf32_hppa_setup_section_lists): New function, split from 5866 elf32_hppa_size_stubs. 5867 (elf32_hppa_next_input_section): Likewise. 5868 (group_sections): Likewise. 5869 (get_local_syms): Likewise. 5870 (elf32_hppa_size_stubs): Adjust for split out functions. Look for 5871 stubs on undefined syms too. 5872 (elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*. 5873 Only access htab elf fields when we have an elf hash table. 5874 * elf32-hppa.h (elf32_hppa_setup_section_lists): Declare. 5875 (elf32_hppa_next_input_section): Declare. 5876 5877 2002-05-04 Bob Byrnes <byrnes@curl.com> 5878 5879 * opncls.c (_bfd_new_bfd_contained_in): Check return value of 5880 _bfd_new_bfd. 5881 5882 2002-05-03 H.J. Lu (hjl@gnu.org) 5883 5884 * elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local. 5885 (mips_elf_link_hash_newfunc): Initialize forced_local to false. 5886 (mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol 5887 to hide a global symbol. 5888 (_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set 5889 forced_local to true. 5890 5891 2002-05-02 Richard Henderson <rth@redhat.com> 5892 5893 * elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs 5894 vs SHN_UNDEF to zero. 5895 5896 2002-05-02 Alan Modra <amodra@bigpond.net.au> 5897 5898 * elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_SECTOFF>): Change to a 5899 16 bit reloc. 5900 <R_PPC64_SECTOFF_DS>: Likewise. 5901 (ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to 5902 SECTOFF reloc. 5903 * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_SECTOFF>): Correct. 5904 (ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to 5905 SECTOFF reloc. 5906 5907 * elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete. 5908 (ppc64_elf_ha_reloc): New function. 5909 (ppc64_elf_brtaken_reloc): New function. 5910 (ppc64_elf_sectoff_reloc): New function. 5911 (ppc64_elf_sectoff_ha_reloc): New function. 5912 (ppc64_elf_toc_reloc): New function. 5913 (ppc64_elf_toc_ha_reloc): New function. 5914 (ppc64_elf_toc64_reloc): New function. 5915 (ppc64_elf_unhandled_reloc): New function. 5916 (ppc64_elf_howto_raw): Use the above. 5917 <R_PPC64_RELATIVE>: Mark pc_relative, pcrel_offset. 5918 <R_PPC64_SECTOFF>: Not pc_relative or pcrel_offset. Fix dst_mask. 5919 <R_PPC64_SECTOFF_DS>: Likewise. 5920 (IS_ABSOLUTE_RELOC): Update. 5921 (struct ppc_link_hash_table): Add have_undefweak. 5922 (ppc64_elf_link_hash_table_create): Init. 5923 (func_desc_adjust): Set have_undefweak. 5924 (ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier. Only 5925 add the .sfpr blr when have_undefweak. 5926 (ppc64_elf_setup_section_lists): Check hash table flavour. 5927 (ppc64_elf_next_input_section): Move output_section->owner test to 5928 ppc64elf.em. 5929 (ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param 5930 and relocatable test. Return TOCstart and don't set elf_gp. 5931 (ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch 5932 offset calculation. Add assert on weak sym branch tweaks. 5933 * elf64-ppc.h (ppc64_elf_set_toc): Delete. 5934 (ppc64_elf_toc): Declare. 5935 (ppc64_elf_next_input_section): Update. 5936 5937 2002-05-01 Alan Modra <amodra@bigpond.net.au> 5938 5939 * syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL 5940 file_name. 5941 5942 2002-05-01 Alan Modra <amodra@bigpond.net.au> 5943 5944 * elf64-ppc.c (CROR_151515, CROR_313131): Define. 5945 (ppc64_elf_relocate_section): Use them. Don't look for plt calls 5946 on R_PPC64_ADDR24 relocs. Require a nop or no link reg on plt 5947 call branches. Correct undefined weak destination. 5948 (ppc64_elf_func_desc_adjust): Always create at least one blr in 5949 .sfpr, and correct case where either only savef* or restf* is 5950 needed. 5951 5952 Long branch stubs, multiple stub sections. 5953 * elf64-ppc.h (ppc64_elf_setup_section_lists): Declare. 5954 (ppc64_elf_next_input_section): Declare. 5955 * elf64-ppc.c: Move linker-only prototypes. 5956 (STUB_SUFFIX): Define. 5957 (enum ppc_stub_type): New. 5958 (struct ppc_stub_hash_entry): New. 5959 (struct ppc_branch_hash_entry): New. 5960 (struct ppc_link_hash_entry): Add stub_cache, oh. 5961 (struct ppc_link_hash_table): Add stub_hash_table etc. Remove 5962 sstub. Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration. 5963 Rename plt_overflow to stub_error. 5964 (ppc_stub_hash_lookup): Define. 5965 (ppc_branch_hash_lookup): Define. 5966 (stub_hash_newfunc): New function. 5967 (branch_hash_newfunc): New function. 5968 (link_hash_newfunc): Init new fields. 5969 (ppc64_elf_link_hash_table_create): Likewise. 5970 (ppc64_elf_link_hash_table_free): New function. 5971 (ppc_stub_name): New function. 5972 (ppc_get_stub_entry): New function. 5973 (ppc_add_stub): New function. 5974 (create_linkage_sections): Use bfd_make_section_anyway. Create 5975 .branch_lt and .rela.branch_lt sections. Don't create .stub. 5976 (ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*, 5977 and set up for plt call stubs. Link func and func desc syms. 5978 (ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24. 5979 (func_desc_adjust): Avoid hash lookup when func desc sym available 5980 via shortcut, and set links when processing. 5981 (ppc64_elf_hide_symbol): Likewise. 5982 (allocate_dynrelocs): Don't allocate stub section here. 5983 (ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt. 5984 Remove sstub code. 5985 (ppc_type_of_stub): New function. 5986 (build_one_stub): Delete. 5987 (ppc_build_one_stub): New function. 5988 (ppc_size_one_stub): New function. 5989 (ppc64_elf_setup_section_lists): New function. 5990 (ppc64_elf_next_input_section): New function. 5991 (group_sections): New function. 5992 (get_local_syms): New function. 5993 (ppc64_elf_size_stubs): Rewrite. 5994 (ppc64_elf_build_stubs): Rewrite. 5995 (ppc64_elf_relocate_section): Look up stub entry for REL24 5996 relocs. Don't propagate REL14* to dynamic objects. Look for long 5997 branch stubs if REL14* or REL24 relocs won't reach. 5998 (bfd_elf64_bfd_link_hash_table_free): Define. 5999 6000 2002-04-30 Mark Mitchell <mark@codesourcery.com> 6001 6002 * config.bfd: Add support for powerpc-*-windiss. 6003 6004 2002-04-30 Tom Rix <trix@redhat.com> 6005 6006 * xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT 6007 symbol names into the hash table. 6008 6009 2002-04-28 Tom Rix <trix@redhat.com> 6010 6011 * coff-rs6000.c (xcoff_calculate_relocation) : Function table for 6012 calulating relocations. 6013 (xcoff_complain_overflow) : Function table for relocation errors. 6014 (xcoff_ppc_relocate_section): Use relocation and complain function 6015 tables. 6016 (xcoff_complain_overflow_unsigned_func): New complain function. 6017 (xcoff_complain_overflow_signed_func): Same. 6018 (xcoff_complain_overflow_bitfield_func): Same. 6019 (xcoff_complain_overflow_dont_func): Same. 6020 (xcoff_reloc_type_crel): New recot function. 6021 (xcoff_reloc_type_br): Same. 6022 (xcoff_reloc_type_ba): Same. 6023 (xcoff_reloc_type_toc): Same. 6024 (xcoff_reloc_type_rel): Same. 6025 (xcoff_reloc_type_neg): Same. 6026 (xcoff_reloc_type_pos): Same. 6027 (xcoff_reloc_type_fail): Same. 6028 (xcoff_reloc_type_noop): Same. 6029 * libxcoff.h : Declare common parts for xcoff64. 6030 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation 6031 and complain function tables. 6032 6033 2002-04-28 Alan Modra <amodra@bigpond.net.au> 6034 6035 * elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo. 6036 * elf32-hppa.c (elf32_hppa_final_link): Formatting. 6037 6038 2002-04-26 Alan Modra <amodra@bigpond.net.au> 6039 6040 * opncls.c (bfd_make_readable): Call bfd_section_list_clear. 6041 * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise. 6042 6043 * elflink.h (elf_bfd_final_link): Ensure input bfd class is the 6044 same as the output before calling elf_link_input_bfd. 6045 6046 * coffcode.h (coff_compute_section_file_positions): Set 6047 section_tail after shuffling section list. 6048 6049 2002-04-24 Christian Groessler <chris@groessler.org> 6050 6051 * coff-z8k.c (extra_case): Fix R_IMM32 relocations: The 6052 addresses are 23bit with a special layout, not plain 32bit 6053 values. Prevent relocation of immediate values. 6054 6055 2002-04-24 Chris G. Demetriou <cgd@broadcom.com> 6056 6057 * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or 6058 MIPS-16 ASE flags are set, print something to indicate that. 6059 6060 2002-04-23 Alan Modra <amodra@bigpond.net.au> 6061 6062 * elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition 6063 under which a plt call stub is used. 6064 (final_link_relocate): Similarly. 6065 (allocate_plt_static): Clear h-plabel except when plt entry is 6066 exclusively used for a plabel. 6067 (allocate_dynrelocs): Use the above to simplify plt sizing. 6068 (struct elf32_hppa_link_hash_table): Add has_22bit_branch. 6069 (elf32_hppa_link_hash_table_create): Init. 6070 (BL22_RP): Define. 6071 (hppa_build_one_stub): Use BL22_RP if has_22bit_branch. 6072 (elf32_hppa_check_relocs): Set has_22bit_branch. 6073 6074 * elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message. 6075 (final_link_relocate): Likewise. 6076 6077 2002-04-22 Jakub Jelinek <jakub@redhat.com> 6078 6079 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build 6080 search table if some FDE is DW_EH_PE_aligned encoded either. 6081 (_bfd_elf_write_section_eh_frame): Handle terminating FDE specially. 6082 6083 2002-04-22 Richard Smith <richard@ex-parrot.com> 6084 Jakub Jelinek <jakub@redhat.com> 6085 6086 * elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative. 6087 (_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel 6088 encoded personality. 6089 (_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality 6090 for CIE/FDE removal. 6091 6092 2002-04-20 Tom Rix <trix@redhat.com> 6093 6094 * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent. 6095 6096 2002-04-20 Alan Modra <amodra@bigpond.net.au> 6097 6098 * archures.c (bfd_lookup_arch): Move the list order comment.. 6099 (struct bfd_arch_info): ..to where it belongs. 6100 * bfd-in2.h: Regenerate. 6101 6102 * archures.c (bfd_lookup_arch): Add comment on list order. 6103 (bfd_default_set_arch_mach): Use bfd_lookup_arch. 6104 * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default 6105 is always at head of list. 6106 6107 2002-04-18 Nick Clifton <nickc@cambridge.redhat.com> 6108 6109 * coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9, 6110 insert_thumb_branch, record_thumb_to_arm_glue): Suppress 6111 definition of these functions for ARM_WINCE builds as they are 6112 not used. 6113 (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define 6114 for ARM_WINCE builds. 6115 6116 2002-04-18 Nick Clifton <nickc@cambridge.redhat.com> 6117 6118 * coff-arm.c (bfd_arm_process_before_allocation): 6119 6120 2002-04-17 J"orn Rennecke <joern.rennecke@superh.com> 6121 6122 * cpu-sh.c (scan_mach): Delete. 6123 (arch_info_struct): Replace scan_mach with bfd_default_scan. 6124 (bfd_sh_arch): Likewise. 6125 6126 2002-04-16 Nick Clifton <nickc@cambridge.redhat.com> 6127 6128 * ihex.c (ihex_write_object_contents): Fix check for records 6129 crossing 64K boundaries. 6130 6131 2002-04-16 Alan Modra <amodra@bigpond.net.au> 6132 6133 * elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table 6134 type rather than just assuming entries are ELF. 6135 * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise. 6136 * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise. 6137 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise. 6138 * elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry 6139 rather than elf_link_hash_entry. 6140 6141 2002-04-15 Richard Henderson <rth@redhat.com> 6142 6143 * elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow 6144 n32 binaries. 6145 6146 2002-04-15 Michael Snyder <msnyder@redhat.com> 6147 6148 * opncls.c (bfd_close): Write contents if writeable. 6149 Minor formatting tidy-ups. 6150 6151 2002-04-15 Alan Modra <amodra@bigpond.net.au> 6152 6153 * elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type. 6154 6155 2002-04-12 Michael Snyder <msnyder@redhat.com> 6156 6157 * bfd-in.h (bfd_get_section_lma): New access macro. 6158 Minor white-space fix-up. 6159 6160 2002-04-12 Alan Modra <amodra@bigpond.net.au> 6161 6162 * elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or 6163 header pad. 6164 6165 2002-04-09 DJ Delorie <dj@redhat.com> 6166 6167 * elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks. 6168 6169 2002-04-09 Casper S. Hornstrup <chorns@users.sourceforge.net> 6170 6171 * coffcode.h (coff_read_word): New. 6172 (coff_compute_checksum): New. 6173 (coff_apply_checksum): New. 6174 (coff_write_object_contents): Call coff_apply_checksum () to 6175 apply checksum to PE image. 6176 6177 2002-04-08 Randolph Chung <tausq@debian.org> 6178 6179 * elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h. 6180 (elf32_hppa_final_link): Split out sorting logic to.. 6181 * elf-hppa.h (elf_hppa_sort_unwind): ..here. 6182 (elf_hppa_final_link): Call elf_hppa_sort_unwind. 6183 6184 2002-04-07 Andrew Cagney <ac131313@redhat.com> 6185 6186 * configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]* 6187 pattern. 6188 * configure: Re-generate. 6189 6190 2002-04-07 Andrew Cagney <ac131313@redhat.com> 6191 6192 * configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version 6193 is greater or equal to 4.3.3. 6194 * configure: Regenerate. 6195 Fix PR gdb/344. 6196 6197 2002-04-05 Hans-Peter Nilsson <hp@axis.com> 6198 6199 * elf32-cris.c (cris_elf_howto_table) <R_CRIS_16_PCREL, 6200 R_CRIS_32_PCREL>: Fix typo in name. 6201 (cris_elf_check_relocs): Always create .rela.got here when 6202 R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen. 6203 (elf_cris_adjust_gotplt_to_got): Don't create .rela.got here; 6204 assume it's created. 6205 6206 2002-04-04 Daniel Jacobowitz <drow@mvista.com> 6207 6208 * aout-adobe.c (aout_32_bfd_link_hash_table_free): Define. 6209 * aout-target.h (MY_bfd_link_hash_table_free): Conditionally 6210 define. 6211 * aout-tic30.c (MY_bfd_link_hash_table_free): Likewise. 6212 * bfd.c (bfd_link_hash_table_free): Define. 6213 * binary.c (binary_bfd_link_hash_table_free): Define. 6214 * bout.c (b_out_bfd_link_hash_table_free): Define. 6215 * coff-rs6000.c (rs6000coff_vec): Include 6216 _bfd_generic_link_hash_table_free. 6217 (pmac_xcoff_vec): Likewise. 6218 * coff64-rs6000.c (rs6000coff64_vec): Likewise. 6219 (aix5coff64_vec): Likewise. 6220 * coffcode.h (coff_bfd_link_hash_table_free): Conditionally define. 6221 * elf-m10300.c (elf32_mn10300_link_hash_table_free): New function. 6222 (bfd_elf32_bfd_link_hash_table_free): Define. 6223 * elf32-hppa.c (elf32_hppa_link_hash_table_free): New function. 6224 (bfd_elf32_bfd_link_hash_table_free): Define. 6225 * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally 6226 define. 6227 * i386msdos.c (msdos_bfd_link_hash_table_free): Define. 6228 * i386os9k.c (os9k_bfd_link_hash_table_free): Define. 6229 * ieee.c (ieee_bfd_link_hash_table_free): Define. 6230 * ihex.c (ihex_bfd_link_hash_table_free): Define. 6231 * libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define. 6232 (_bfd_generic_link_hash_table_free): Add prototype. 6233 * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype. 6234 * libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define. 6235 * linker.c (_bfd_generic_link_hash_table_free): New function. 6236 * mmo.c (mmo_bfd_link_hash_table_free): Define. 6237 * nlm-target.h (nlm_bfd_link_hash_table_free): Define. 6238 * oasys.c (oasys_bfd_link_hash_table_free): Define. 6239 * ppcboot.c (ppcboot_bfd_link_hash_table_free): Define. 6240 * som.c (som_bfd_link_hash_table_free): Define. 6241 * srec.c (srec_bfd_link_hash_table_free): Define. 6242 * tekhex.c (tekhex_bfd_link_hash_table_free): Define. 6243 * versados.c (versados_bfd_link_hash_table_free): Define. 6244 * vms.c (vms_bfd_link_hash_table_free): New function. 6245 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function. 6246 6247 * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc 6248 instead of bfd_alloc. 6249 * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise. 6250 * coff-mcore.c (coff_mcore_link_hash_table_create): Likewise. 6251 * coff-ppc.c (ppc_coff_link_hash_table_create): Likewise. 6252 * cofflink.c (_bfd_coff_link_hash_table_create): Likewise. 6253 * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise. 6254 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise. 6255 * elf.c (_bfd_elf_link_hash_table_create): Likewise. 6256 * elf32-arm.h (elf32_arm_link_hash_table_create): Likewise. 6257 * elf32-cris.c (elf_cris_link_hash_table_create): Likewise. 6258 * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise. 6259 * elf32-i386.c (elf_i386_link_hash_table_create): Likewise. 6260 * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise. 6261 * elf32-s390.c (elf_s390_link_hash_table_create): Likewise. 6262 * elf32-sh.c (sh_elf_link_hash_table_create): Likewise. 6263 * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise. 6264 * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise. 6265 * elf64-s390.c (elf_s390_link_hash_table_create): Likewise. 6266 * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise. 6267 * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise. 6268 * elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise. 6269 * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise. 6270 * linker.c (_bfd_generic_link_hash_table_create): Likewise. 6271 * m68klinux.c (linux_link_hash_table_create): Likewise. 6272 * sparclinux.c (linux_link_hash_table_create): Likewise. 6273 * sunos.c (sunos_link_hash_table_create): Likewise. 6274 * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise. 6275 6276 * targets.c: Add _bfd_link_hash_table_free to xvec. 6277 6278 * bfd-in2.h: Regenerate. 6279 * libbfd.h: Regenerate. 1129 6280 * libcoff.h: Regenerate. 1130 * coffgen.c (coff_find_nearest_line): Call 1131 _bfd_dwarf2_find_nearest_line. 1132 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add parameter. Update 6281 6282 2002-04-04 Alan Modra <amodra@bigpond.net.au> 6283 6284 * dep-in.sed: Cope with absolute paths. 6285 * Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR. 6286 Run "make dep-am". 6287 * Makefile.in: Regenerate. 6288 * coff-arm.c: Fix copyright date. 6289 * cpu-h8300.c: Likewise. 6290 * cpu-i370.c: Likewise. 6291 * cpu-s390.c: Likewise. 6292 * cpu-mips.c: Likewise. 6293 * po/SRC-POTFILES.in: Regenerate. 6294 6295 2002-04-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> 6296 6297 * Makefile.am: Add elfxx-mips.c to the known backends. 6298 (elf32-mips.lo): remove dependency to coff/external.h. 6299 * Makefile.in: Regenerate. 6300 * configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo 6301 Remove elf32-mips.lo from 64 bit vectors. Update dependencies 1133 6302 accordingly. 1134 (read_abbrevs): Likewise 1135 (decode_line_info): Likewise. 1136 (parse_comp_unit): Likewise. 1137 (comp_unit_find_nearest_line): Likewise. 1138 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. 6303 * configure: Regenerate. 6304 * elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h. 6305 (irix_compat_t): IRIX compatibility level, moved from elf32-mips.c. 6306 (elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New 6307 MIPS specific backend functions. 6308 * elf32-mips.c: Moved most code to elfxx-mips.c. 6309 (mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make 6310 static. 6311 (mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc. 6312 (mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc. 6313 (mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc. 6314 (mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed 6315 interface to allow selection of the right REL or RELA howto table. 6316 (mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made 6317 static. Let it refuse n32 objects. 6318 (elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus. 6319 (elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo. 6320 (elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info. 6321 (elf32_mips_ignore_discarded_relocs): Rename from 6322 _bfd_elf32_mips_ignore_discarded_relocs. 6323 (elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section. 6324 (elf32_mips_irix_compat): New function, replaces IRIX_COMPAT. 6325 (elf_mips_howto_table_rela): Remove. 6326 * elf64-mips.c: Moved most code to elfxx-mips.c. 6327 (bfd_elf64_bfd_reloc_type_lookup): Make static. 6328 (mips_elf64_rtype_to_howto): New function. 6329 (mips_elf64_object_p): Likewise. 6330 (elf64_mips_irix_compat): Likewise. 6331 * elfxx-mips.c: New file containing common code merged together from 6332 elf32-mips.c and elf64-mips.c. 6333 * elfxx-mips.h: New file containing MIPS specific prototypes from 6334 elf-bfd.h. 6335 * elfxx-target.h: Add handling for elf_backend_mips_irix_compat and 6336 elf_backend_mips_rtype_to_howto. 6337 6338 2002-04-04 Alan Modra <amodra@bigpond.net.au> 6339 6340 * srec.c (MAXCHUNK, Chunk): Revise comments. 6341 (srec_write_record): Correct buffer size. 6342 (srec_write_header): Do without intermediate buffer. 6343 (srec_write_section): Validate Chunk. 6344 (srec_write_terminator): Pass NULL instead of dummy buffer. 6345 (srec_write_symbols): Pass file and symbol names directly to 6346 bfd_bwrite so sprintf won't overflow buffer. 6347 6348 2002-04-03 Jakub Jelinek <jakub@redhat.com> 6349 6350 * elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic 6351 PC relative relocs against hidden symbols. 6352 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 6353 6354 2002-04-03 Alan Modra <amodra@bigpond.net.au> 6355 6356 * elf.c (_bfd_elf_make_section_from_shdr): When setting section 6357 LMAs, loop over segments until p_vaddr and p_memsz specify an 6358 extent enclosing the section. 6359 6360 2002-04-02 Nick Clifton <nickc@cambridge.redhat.com> 6361 6362 * ihex.c (ihex_write_object_contents): Do not allow records to 6363 cross a 64K boundary - wrap if necessary. 6364 6365 2002-04-01 Nathan Williams <nathanw@wasabisystems.com> 6366 6367 * elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error 6368 which caused the returned LWP ID to always be 0. 6369 6370 2002-04-01 Richard Henderson <rth@redhat.com> 6371 6372 * elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New. 6373 (elf32_sparc_relocate_section): Use it to figure out when to 6374 initialize .got entries. 6375 * elf64-sparc.c: Similarly. 6376 6377 2002-03-28 Alan Modra <amodra@bigpond.net.au> 6378 6379 * linker.c (link_action): Ignore duplicate warning syms. 6380 (_bfd_generic_link_write_global_symbol): Follow warning symbol link. 6381 * elflink.h (elf_adjust_dynstr_offsets): Likewise. 6382 (elf_adjust_dynamic_symbol): Likewise. 6383 (elf_export_symbol): Likewise. 6384 (elf_link_find_version_dependencies): Likewise. 6385 (elf_link_assign_sym_version): Likewise. 6386 (elf_link_sec_merge_syms): Likewise. 6387 (elf_link_output_extsym): Likewise. 6388 (elf_gc_sweep_symbol): Likewise. 6389 (elf_gc_propagate_vtable_entries_used): Likewise. 6390 (elf_gc_smash_unused_vtentry_relocs): Likewise. 6391 (elf_gc_allocate_got_offsets): Likewise. 6392 (elf_collect_hash_codes): Likewise. 6393 * elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise. 6394 * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise. 6395 (elf_hppa_remark_useless_dynamic_symbols): Likewise. 6396 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise. 6397 * elf32-arm.h (elf32_arm_discard_copies): Likewise. 6398 * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise. 6399 (elf_cris_discard_excess_dso_dynamics): Likewise. 6400 * elf32-hppa.c (clobber_millicode_symbols): Likewise. 6401 (mark_PIC_calls): Likewise. 6402 (allocate_plt_static): Likewise. 6403 (allocate_dynrelocs): Likewise. 6404 (readonly_dynrelocs): Likewise. 6405 * elf32-i386.c (allocate_dynrelocs): Likewise. 6406 (readonly_dynrelocs): Likewise. 6407 * elf32-i370.c (i370_elf_adjust_dynindx): Likewise. 6408 * elf32-m68k.c (elf_m68k_discard_copies): Likewise. 6409 * elf32-mips.c (mips_elf_output_extsym): Likewise. 6410 (mips_elf_sort_hash_table_f): Likewise. 6411 (mips_elf_check_mips16_stubs): Likewise. 6412 * elf32-s390.c (allocate_dynrelocs): Likewise. 6413 (readonly_dynrelocs): Likewise. 6414 * elf32-sh.c (sh_elf_discard_copies): Likewise. 6415 * elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise. 6416 (xstormy16_relax_plt_realloc): Likewise. 6417 * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise. 6418 (elf64_alpha_output_extsym): Likewise. 6419 * elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise. 6420 * elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise. 6421 (mips_elf64_check_mips16_stubs): Likewise. 6422 (mips_elf64_output_extsym): Likewise. 6423 * elf64-ppc.c (func_desc_adjust): Likewise. 6424 (allocate_dynrelocs): Likewise. 6425 (readonly_dynrelocs): Likewise. 6426 * elf64-s390.c (allocate_dynrelocs): Likewise. 6427 (readonly_dynrelocs): Likewise. 6428 * elf64-sh64.c (sh64_elf64_discard_copies): Likewise. 6429 * elf64-x86-64.c (allocate_dynrelocs): Likewise. 6430 (readonly_dynrelocs): Likewise. 6431 * elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise. 6432 * aoutx.h (aout_link_write_other_symbol): Likewise. 6433 * cofflink.c (_bfd_coff_write_task_globals): Likewise. 6434 (_bfd_coff_write_global_sym): Likewise. 6435 * i386linux.c (linux_tally_symbols): Likewise. 6436 * m68klinux.c (linux_tally_symbols): Likewise. 6437 * sparclinux.c (linux_tally_symbols): Likewise. 6438 * pdp11.c (aout_link_write_other_symbol): Likewise. 6439 * sunos.c (sunos_scan_dynamic_symbol): Likewise. 6440 * xcofflink.c (xcoff_build_ldsyms): Likewise. 6441 (xcoff_write_global_symbol): Likewise. 6442 6443 * cofflink.c (_bfd_coff_final_link): Formatting. 6444 * cpu-mips.c (mips_compatible): Make static, prototype. 6445 * elf32-i386.c (elf_i386_check_relocs): Formatting. 6446 * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise. 6447 * elf64-alpha.c (elf64_alpha_output_extsym): Likewise. 6448 * elf64-mips.c (mips_elf64_sort_hash_table): Likewise. 6449 (mips_elf64_final_link): Likewise. 6450 * elflink.h (elf_link_find_version_dependencies): Remove duplicate 6451 prototype. 6452 6453 2002-03-27 Nick Clifton <nickc@cambridge.redhat.com> 6454 6455 * coff-arm.c (SWAP_IN_RELOC_OFFSET): Define. 6456 (SWAP_OUT_RELOC_OFFSET): Define. 6457 6458 2002-03-27 Gregory Steuck <greg@nest.cx> 6459 6460 * elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for 6461 terminating NULL if empty symbol table. 6462 (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise. 6463 6464 2002-03-26 H.J. Lu (hjl@gnu.org) 6465 6466 * elflink.h (elf_link_input_bfd): Revert the last change since 6467 the gcc exception handling isn't fixed yet. 6468 6469 2002-03-26 H.J. Lu (hjl@gnu.org) 6470 6471 * elflink.h (elf_link_input_bfd): Complain about relocations 6472 against local symbols in discarded sections. 6473 6474 2002-03-26 Alan Modra <amodra@bigpond.net.au> 6475 6476 * elflink.h (elf_gc_mark): Don't recurse into non-ELF sections. 6477 6478 2002-03-23 Alan Modra <amodra@bigpond.net.au> 6479 6480 * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on 6481 section file offset for !SEC_LOAD sections. 6482 6483 2002-03-21 Richard Earnshaw <rearnsha@arm.com> 6484 6485 * elf32-arm.h (elf32_arm_final_link_relocate <case R_ARM_GOTOFF>, 6486 <case R_ARM_GOT>): Handle relocations to Thumb functions. 6487 6488 2002-03-21 Alan Modra <amodra@bigpond.net.au> 6489 6490 * coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype. 6491 Whitespace changes. 6492 * archive.c: Update copyright date. 6493 * bfd-in2.h: Regenerate. 1139 6494 * libbfd.h: Regenerate. 1140 * elf.c (_bfd_elf_find_nearest_line): Update call. 1141 * elf-bfd.h (elf_obj_tdata): Change dwarf2_find_line_info to type PTR. 1142 * dwarf2.c (concat_filename): Use IS_ABSOLUTE_PATH. 1143 * coffcode.h (STYP_XCOFF_DEBUG, STYP_DEBUG_INFO): New macros. 1144 (sec_to_styp_flags): Use them. Handle DWARF2 sections. 1145 (styp_to_sec_flags): Handle DWARF2 sections. 1146 * elf32-arm.h (elf32_arm_find_nearest_line): Add parameter to call 1147 to _bfd_find_nearest_line. 1148 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Add parameter to 1149 call to _bfd_find_nearest_line. 1150 1151 2000-12-08 Kazu Hirata <kazu@hxi.com> 1152 1153 * coffgen.c: Fix formatting. 1154 * elf-m10300.c: Likewise. 1155 * elf32-i386.c: Likewise. 1156 * elf32-i960.c: Likewise. 1157 * elf32-m68k.c: Likewise. 1158 * elf32-mcore.c: Likewise. 1159 * elf32-ppc.c: Likewise. 1160 * elf32-sh.c: Likewise. 1161 * elf32-sparc.c: Likewise. 1162 * elf32-v850.c: Likewise. 1163 * elf64-alpha.c: Likewise. 1164 * elf64-hppa.c: Likewise. 1165 * elf64-mips.c: Likewise. 1166 * elf64-sparc.c: Likewise. 1167 1168 2000-12-07 Kazu Hirata <kazu@hxi.com> 1169 1170 * elf32-ppc.c: Fix formatting. 1171 * elf64-x86-64.c: Likewise. 1172 1173 2000-12-06 Ulf Carlsson <ulfc@engr.sgi.com> 1174 1175 From Ralf Baechle <ralf@gnu.org> 1176 1177 * elf32-mips.c (elf32_mips_merge_private_bfd_data): Always permit 1178 BFDs containing no sections or empty .text, .data or .bss sections 1179 to be merged, regardless of their flags. 1180 1181 2000-12-06 Kazu Hirata <kazu@hxi.com> 1182 1183 * elf32-m32r.c: Fix formatting. 1184 * elf32-m68hc11.c: Likewise. 1185 * elf32-m68hc12.c: Likewise. 1186 * elf32-m68k.c: Likewise. 1187 * elf32-mcore.c: Likewise. 1188 * elf32-pj.c: Likewise. 1189 * elf32-ppc.c: Likewise. 1190 1191 2000-12-05 Kazu Hirata <kazu@hxi.com> 1192 1193 * elf32-fr30.c: Fix formatting. 1194 * elf32-hppa.c: Likewise. 1195 * elf32-i370.c: Likewise. 1196 * elf32-i386.c: Likewise. 1197 * elf32-i860.c: Likewise. 1198 * elf32-i960.c: Likewise. 1199 1200 2000-12-03 Kazu Hirata <kazu@hxi.com> 1201 1202 * elf32-arm.h: Fix formatting. 1203 * elf32-avr.c: Likewise. 1204 * elf32-cris.c: Likewise. 1205 * elf32-d10v.c: Likewise. 1206 * elf32-d30v.c: Likewise. 1207 * elf-hppa.h: Likewise. 1208 * elf-m10200.c: Likewise. 1209 * elf-m10300.c: Likewise. 1210 1211 2000-12-01 Chris Demetriou <cgd@sibyte.com> 1212 1213 * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mips32 and 1214 bfd_mach_mips32_4k. Update FIXME comment. 1215 * archures.c (bfd_mach_mips32): New constant. 1216 (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to 1217 the latter, renumber it. 1218 * bfd-in2.h (bfd_mach_mips32): New constant. 1219 (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to 1220 the latter, renumber it. 1221 * cpu-mips.c (I_mips32): New constant. 1222 (I_mips4K, I_mips32_4k): Rename the former to the latter. 1223 (arch_info_struct): Add bfd_mach_mips32 entry, replace 1224 bfd_mach_mips4K entry with bfd_mach_mips32_4k entry. 1225 * elf32-mips.c (elf_mips_isa): Add E_MIPS_ARCH_32 case. 1226 (elf_mips_mach): Likewise. Also, replace E_MIPS_MACH_MIPS32 1227 with E_MIPS_MACH_MIPS32_4K. 1228 (_bfd_mips_elf_final_write_processing): Replace 1229 bfd_mach_mips4K with bfd_mach_mips32_4k case, add 1230 bfd_mach_mips32 case. 1231 (_bfd_mips_elf_merge_private_bfd_data): Generalize ISA mixing 1232 comparison with support for MIPS32. 1233 (_bfd_mips_elf_print_private_bfd_data): Print ISA name for 1234 MIPS32. 1235 1236 * aoutx.h (NAME(aout,machine_type)): Add cases for 1237 bfd_mach_mips5 and bfd_mach_mips64. 1238 * archures.c (bfd_mach_mips5, bfd_mach_mips64): New constants. 1239 * bfd-in2.h (bfd_mach_mips5, bfd_mach_mips64): Likewise. 1240 * cpu_mips.c (I_mips5, I_mips64): New definitions. 1241 (arch_info_struct): Add entries for bfd_mach_mips5 and 1242 bfd_mach_mips64. 1243 * elf32-mips.c (elf_mips_isa, elf_mips_mach, 1244 _bfd_mips_elf_print_private_bfd_data): Add cases for 1245 E_MIPS_ARCH_5 and E_MIPS_ARCH_64. 1246 (_bfd_mips_elf_final_write_processing): Add cases for 1247 bfd_mach_mips5 and bfd_mach_mips64. 1248 1249 * bfd/aoutx.h (NAME(aout,machine_type)): Add a 1250 bfd_mach_mips_sb1 case. 1251 * bfd/archures.c (bfd_mach_mips_sb1): New constant. 1252 * bfd/bfd-in2.h (bfd_mach_mips_sb1): New constant. 1253 * bfd/cpu-mips.c (I_sb1): New constant. 1254 (arch_info_struct): Add entry for bfd_mach_mips_sb1. 1255 * bfd/elf32-mips.c (elf_mips_mach): Add case for 1256 E_MIPS_MACH_SB1. 1257 (_bfd_mips_elf_final_write_processing): Add case for 1258 bfd_mach_mips_sb1. 1259 1260 2000-12-01 Joel Sherrill <joel@OARcorp.com> 1261 1262 * config.bfd (arm-*-rtems*, a29k-*rtems*): New targets. 1263 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets. 1264 (sparc*-*-rtems*): Switched from a.out to ELF. 1265 1266 2000-11-30 Jan Hubicka <jh@suse.cz> 1267 1268 * Makefile.am (BFD64_BACKENDS): Add elf64-x86-64.lo 1269 BFD64_BACKENDS_CFILES): Add elf64-x86-64.c 1270 (elf64-x86-64.lo): Add dependencies. 1271 * archures.c (DESCRIPTION): Add bfd_mach_x86_64, 1272 bfd_mach_x86_64_intel_syntax. 1273 * elf.c (prep_headers): Use EM_x86_64 for 64bit output. 1274 * config.bfd (x86_64): Add. 1275 * configure.in: Add support for bfd_elf64_x86_64_vec. 1276 * cpu-i386.c (bfd_x86_64_arch_intel_syntax, bfd_x86_64_arch): Add. 1277 (bfd_i386_arch, i8086_ar): Link in. 1278 * elf64-x86-64.c: New file. 1279 * reloc.c (ENUMDOC): Add BFD_RELOC_X86_64*. 1280 * targets.c (bfd_elf64_x86_64_vec): Add. 1281 (bfd_target_vect): Add bfd_elf64_x86_64_vec. 1282 1283 2000-11-30 Kazu Hirata <kazu@hxi.com> 1284 1285 * xcofflink.c: Fix formatting. 1286 1287 2000-11-28 Kazu Hirata <kazu@hxi.com> 1288 1289 * aoutx.h: Fix formatting. 1290 * bfd-in.h: Likewise. 1291 * bfd-in2.h: Likewise. 1292 * cache.c: Likewise. 1293 * cisco-core.c: Likewise. 1294 * coff64-rs6000.c: Likewise. 1295 * coffcode.h: Likewise. 1296 * coffswap.h: Likewise. 1297 * corefile.c: Likewise. 1298 * elf32-mips.c: Likewise. 1299 1300 2000-11-27 Kazu Hirata <kazu@hxi.com> 1301 1302 * aout-adobe.c: Fix formatting. 1303 * coff64-rs6000.c: Likewise. 1304 * coffgen.c: Likewise. 1305 * cofflink.c: Likewise. 1306 1307 2000-11-27 Philip Blundell <pb@futuretv.com> 1308 1309 * libcoff-in.h (coff_tdata): Add `strings_written' flag. 1310 (obj_coff_strings_written): New accessor macro for above. 1311 * libcoff.h: Regenerate. 1312 * cofflink.c (_bfd_coff_final_link): Say that we wrote the 1313 strings. 1314 * coffcode.h (coff_write_object_contents): No need to write out 1315 the string table if it's already been done. 1316 1317 2000-11-22 Philip Blundell <pb@futuretv.com> 1318 1319 * cofflink.c (_bfd_coff_generic_relocate_section): Don't object to 1320 weak undefined symbols. 1321 1322 2000-11-24 Nick Clifton <nickc@redhat.com> 1323 1324 * archures.c (bfd_mach_arm_5TE): Define. 1325 (bfd_mach_arm+XScale): Define. 6495 * Makefile.am: Run "make dep-am" 6496 * Makefile.in: Regenerate. 6497 * po/SRC-POTFILES.in: Regenerate. 6498 6499 2002-03-20 Daniel Jacobowitz <drow@mvista.com> 6500 6501 * dwarf2.c (struct funcinfo): Move up. 6502 (lookup_address_in_function_table): New argument function_ptr. 6503 Set it. 6504 (lookup_address_in_line_table): New argument function. If function 6505 is non-NULL, use it to handle ``addr'' before the first line note of 6506 the function. 6507 (comp_unit_find_nearest_line): Update and swap calls to 6508 lookup_address_in_function_table and lookup_address_in_line_table. 6509 * syms.c (_bfd_stab_section_find_nearest_line): Use the first 6510 N_SLINE encountered if we see an N_FUN before any N_SLINE. 6511 6512 2002-03-20 Tom Rix <trix@redhat.com> 6513 6514 * coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from 6515 _bfd_xcoff_generic_stat_arch_elt. Fix format check. 6516 * coff64-rs6000.c : Use _bfd_xcoff_stat_arch_elt. 6517 6518 2002-03-19 Tom Rix <trix@redhat.com> 6519 6520 * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all 6521 dynamic objects in archives. 6522 6523 2002-03-19 Hans-Peter Nilsson <hp@bitrange.com> 6524 6525 * elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set 6526 STT_NOTYPE symbols to STT_OBJECT. 6527 6528 2002-03-18 Jan Hubicka <jh@suse.cz> 6529 6530 * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64" 6531 6532 2002-03-18 Tom Rix <trix@redhat.com> 6533 6534 * aix5ppc.core.c : New file for AIX 5 64 bit core support. 6535 * bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration. 6536 * coff-rs6000 (do_pad) : New function for archive padding. 6537 (do_copy) : New function for object file copying in archives. 6538 (do_shared_object_padding) : New function for padding shared 6539 objects to their text section alignment in archives. 6540 (bfd_xcoff_ar_achive_set_magic) : Stub. 6541 (xcoff_write_armap_big) : Use do_copy and do_pad. 6542 (xcoff_write_archive_contents_big) : Use do_shared_object_padding, 6543 do_copy and do_pad. 6544 * coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use 6545 bfd_xcoff_magic_number. 6546 (xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook 6547 fop. 6548 (xcoff_backend_data_r) : Use xcoff64_bad_format_hook. 6549 (bfd_xcoff_aix5_backend_data) : New Aix 5 backend data. 6550 (aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000. 6551 * rs6000-core.c : Update copyright date. 6552 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL 6553 csectpp. 6554 * coffcode.h (coff_new_section_hook) : Use new accessor macros. 6555 (coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #. 6556 (coff_set_flags) : Use bfd_xcoff_magic_number. 6557 * libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC. 6558 * configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support. 6559 * Makefile.am : Same. 6560 * config.bfd : Same. 6561 * targets.c : Same. 6562 * configure : Regnerate. 6563 * Makefile.in : Same. 6564 * bfd-in2.h : Same. 6565 6566 2002-03-18 Nick Clifton <nickc@cambridge.redhat.com> 6567 6568 * po/fr.po: Updated version. 6569 6570 2002-03-18 Alan Modra <amodra@bigpond.net.au> 6571 6572 * libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success. 6573 * libbfd.h: Regenerate. 6574 * archive.c (coff_write_armap): Pass on failures from 6575 bfd_write_bigendian_4byte_int. 6576 6577 2002-03-14 H.J. Lu <hjl@gnu.org> 6578 6579 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD 6580 error to bfd_error_nonrepresentable_section for reinit_array 6581 section in DSO. 6582 6583 2002-03-14 Nick Clifton <nickc@cambridge.redhat.com> 6584 6585 * coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag, 6586 OR it in rather than replacing previously selected flags. 6587 6588 * elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15. 6589 (TARGET_LITTLE_SYM): Set ar_max_namelen to 15. 6590 6591 2002-03-14 Alan Modra <amodra@bigpond.net.au> 6592 6593 * cpu-mips.c (mips_compatible): New. Don't check bits_per_word. 6594 (N): Use the above. 6595 * elflink.h (elf_bfd_final_link): Revert last change. Instead, 6596 ensure reloc size matches before calling elf_link_input_bfd. 6597 Add an assert to check reloc size when counting output relocs. 6598 6599 2002-03-14 Nick Clifton <nickc@cambridge.redhat.com> 6600 6601 * mmo.c (mmo_get_loc): Return NULL rather than false. 6602 6603 2002-03-13 Nick Clifton <nickc@cambridge.redhat.com> 6604 6605 * po/fr.po: Updated version. 6606 6607 2002-03-13 Alan Modra <amodra@bigpond.net.au> 6608 6609 * archures.c (bfd_default_compatible): Test bits_per_word. 6610 * cpu-i386.c (i386_compatible): Remove. Replace occurrences with 6611 bfd_default_compatible. 6612 * cpu-i370.c (i370_compatible): Likewise. 6613 * cpu-sparc.c (sparc_compatible): Likewise. 6614 * cpu-h8300.c (compatible): Test in->arch == out->arch. 6615 6616 * elflink.h: Formatting fixes. 6617 (elf_link_output_extsym): Merge undefined and undef weak cases. 6618 6619 * elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd 6620 when word size of input matches output word size. 6621 6622 2002-03-12 Andreas Jaeger <aj@suse.de> 6623 6624 * cpu-i386.c (i386_compatible): New. Use it instead of 6625 bfd_default_compatible. 6626 6627 2002-03-07 H.J. Lu (hjl@gnu.org) 6628 6629 * coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type 6630 as the type for bfd_reloc_val. 6631 6632 2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca> 6633 6634 * elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function. 6635 (elf_hppa_relocate_section): Ignore undefined dynamic loader symbols. 6636 (elf_hppa_final_link_relocate): Correct relocations for indirect 6637 references to local data through the DLT. Fix .opd creation for 6638 local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64 6639 relocations. Use e_lsel selector for R_PARISC_DLTIND21L, 6640 R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per 6641 "Processor-Specific ELF for PA_RISC, Version 1.43" document. 6642 Similarly, use e_rsel for DLT and LTOFF 'R' relocations. 6643 * elf32-hppa.c (final_link_relocate): Revise relocation selectors 6644 as per "Processor-Specific ELF for PA_RISC, Version 1.43" document. 6645 6646 2002-03-05 Jakub Jelinek <jakub@redhat.com> 6647 6648 * merge.c (_bfd_merge_sections): Don't segfault if there 6649 is nothing to merge due to GC. 6650 6651 2002-03-05 Alan Modra <amodra@bigpond.net.au> 6652 6653 * elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep 6654 symbols that have been forced local. 6655 6656 * elflink.h (elf_bfd_final_link): Call elf_link_output_extsym 6657 to output forced local syms for non-shared link. 6658 (elf_link_output_extsym): Tweak condition for calling backend 6659 adjust_dynamic_symbol so that previous behaviour is kept. 6660 Whitespace changes throughout file. 6661 6662 2002-03-04 H.J. Lu <hjl@gnu.org> 6663 6664 * elf.c (bfd_section_from_shdr): Handle special sections, 6665 .init_array, .fini_array and .preinit_array. 6666 (elf_fake_sections): Likewise. 6667 6668 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the 6669 DT entry only if the section is in output for .init_array, 6670 .fini_array and .preinit_array. Complain about .preinit_array 6671 section in DSO. 6672 (elf_bfd_final_link): Warn zero size for .init_array, 6673 .fini_array and .preinit_array sections. 6674 6675 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove 6676 SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY. 6677 (elfNN_ia64_fake_sections): Remove .init_array, .fini_array and 6678 .preinit_array. 6679 6680 2002-03-04 Alan Modra <amodra@bigpond.net.au> 6681 6682 * configure.in (WIN32LIBADD): Don't eval PICFLAG assignment. 6683 * configure: Regenerate. 6684 6685 2002-03-02 Tom Rix <trix@redhat.com> 6686 6687 * coff64-rs6000.c (xcoff64_howto_table): Replace howto types with 6688 symbolic equiv. 6689 * coff-rs6000.c (xcoff_howto_table): Same. 6690 6691 2002-03-01 David Mosberger <davidm@hpl.hp.com> 6692 6693 * elflink.h (size_dynamic_sections): If section named 6694 ".preinit_array" exists, create DT_PREINIT_ARRAY and 6695 DT_PREINIT_ARRAYSZ entries in dynamic table. Analogously for 6696 ".init_array" and ".fini_array". 6697 (elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ, 6698 DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and 6699 DT_FINI_ARRAY. 6700 6701 2002-02-26 Andrew Macleod <amacleod@cygnus.com> 6702 6703 * elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local 6704 dynsyms. 6705 6706 2002-02-25 Alan Modra <amodra@bigpond.net.au> 6707 6708 * elf64-hppa.h: Update copyright date. 6709 6710 * elf64-ppc.c (ppc64_elf_check_relocs): Warning fix. 6711 (ppc64_elf_relocate_section): Don't generate power4 style branch 6712 hints for *_BRTAKEN and *_BRNTAKEN relocs. 6713 6714 2002-02-22 Jakub Jelinek <jakub@redhat.com> 6715 6716 * elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my 6717 last patch. 6718 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 6719 6720 2002-02-21 Andreas Jaeger <aj@suse.de> 6721 6722 * elf64-x86-64.c: Major rework that introduces all recent changes 6723 to the x86-64 backend. Get a closer match to elf32-i386. 6724 (struct elf64_x86_64_dyn_relocs): Rename from 6725 elf64_x86_64_pcrel_relocs_copied, add additional fields. Change 6726 all users. 6727 (struct elf64_x86_64_link_hash_table): Add short cuts to some 6728 sections. 6729 (link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc, 6730 remove casts, initialize new hash members. 6731 (create_got_section): New. 6732 (elf64_x86_64_create_dynamic_sections): New. 6733 (elf64_x86_64_copy_indirect_symbol): New. 6734 (elf64_x86_64_check_relocs): Don't allocate space for dynamic 6735 relocs, .got or .relgot here but do it in allocate_dynrelocs. 6736 Reference count possible .plt and .got entries. Don't test input 6737 section SEC_READONLY here to try to avoid copy relocs, and keep 6738 dyn_relocs regardless of ELF_LINK_NON_GOT_REF. Don't set 6739 DF_TEXTREL here. Delay setting of variables until needed. Cache 6740 pointer to "sreloc" section in elf_section_data. Tweak condition 6741 under which .got created. Report files with bad relocation 6742 section names. 6743 (elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. 6744 Reference count possible .plt entries. Don't deallocate .got and 6745 .relgot space here. 6746 (elf64_x86_64_adjust_dynamic_symbol): Handle nocopyreloc. Don't 6747 do copy reloc processing for weakdefs. Remove redundant casts and 6748 aborts. Delay setting of vars until needed. Move creation of 6749 dynamic symbols and allocation of .plt and .rela.plt to 6750 allocate_dynrelocs. Replace BFD_ASSERT with abort. 6751 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New. 6752 (allocate_dynrelocs): New. 6753 (readonly_dynrelocs): New. 6754 (elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs. 6755 Allocate space for dyn relocs. Replace BFD_ASSERT with abort. 6756 Zero out the dynamic allocated content space. 6757 (elf64_x86_64_discard_copies): Removed. 6758 (elf64_x86_64_relocate_section): Make use of dynamic section 6759 short-cuts. Localise vars, and delay setting. Better error 6760 reporting, replace BFD_ASSERT with abort. Check 6761 ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the 6762 regular object file and tread the weak definition as the normal 6763 one. Don't discard relocs for undefweak or undefined symbols and 6764 check !DEF_REGULAR as well as DEF_DYNAMIC in test for avoided copy 6765 relocs. 6766 (elf64_x86_64_finish_dynamic_symbol): Don't copy relocs for 6767 symbols that have been forced local. Use same test to decide if 6768 we can use a relative reloc for got as relocate_section. Expand 6769 SHN_UNDEF comment. Move expressions out of function calls. 6770 Replace BFD_ASSERT with abort. 6771 (bfd_elf64_bfd_final_link): Removed. 6772 (elf_backend_copy_indirect_symbol): Define. 6773 6774 2002-02-20 Tom Rix <trix@redhat.com> 6775 6776 * coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA. 6777 (_bfd_xcoff_reloc_type_lookup): Use it. 6778 * coff64-rs6000.c (xcoff64_howto_table): Same. 6779 (xcoff64_reloc_type_lookup): Same. 6780 6781 2002-02-20 Peter Schauer <pes@regent.e-technik.tu-muenchen.de> 6782 6783 * osf-core.c (osf_core_vec): OSF/1 (Digital Unix) core files are 6784 little endian. 6785 6786 2002-02-19 Martin Schwidefsky <schwidefsky@de.ibm.com> 6787 6788 * archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31. 6789 (bfd_mach_s390_esame): Rename to bfd_mach_s390_64. 1326 6790 * bfd-in2.h: Regenerate. 1327 1328 * coff-arm.c (coff_arm_reloc_type_lookup): Accept 1329 BFD_RELOC_ARM_PCREL_BLX. 1330 1331 * coffcode.h (coff_set_flags): Set flags for 5t, 5te and 1332 XScale machine numbers. 1333 1334 * config.bfd (xscale-elf): Add target. 1335 (xscale-coff): Add target. 1336 1337 * cpu-arm.c: Add xscale machine name. 1338 Add v5t, v5te and XScale machine numbers. 1339 1340 2000-11-23 Kazu Hirata <kazu@hxi.com> 1341 1342 * aix386-core.c: Fix formatting. 1343 1344 2000-11-22 Jim Wilson <wilson@redhat.com> 1345 1346 * coff-ia64.c (howto_table): Use EMPTY_HOWTO. 1347 (in_reloc_p): Add ATTRIBUTE_UNUSED to unused parameters. 1348 * cpu-ia64-opc.c (ins_rsvd, ext_rsvd, ins_const, ext_const): Likewise. 1349 (ins_imms_scaled): Initialize sign_bit at function entry. 1350 (elf64_ia64_operands): Add missing initializers. 1351 * elfxx-ia64.c (elfNN_ia64_reloc, elfNN_ia64_reloc_type_lookup, 1352 elfNN_ia64_info_to_howto, elfNN_ia64_fake_sections, 1353 elfNN_ia64_add_symbol_hook, elfNN_ia64_is_local_label_name, 1354 elfNN_ia64_local_hash_table_init, get_fptr, get_pltoff, 1355 elfNN_ia64_adjust_dynamic_symbol): Add ATTRIBUTE_UNUSED for unused 1356 parameters. 1357 (elfNN_ia64_info_to_howto): Initialize free_relocs, free_contents, 1358 and free_extsyms at function entry. 1359 (elfNN_add_symbol_hook): Add unsigned cast to bfd_get_gp_size result. 1360 (elfNN_ia64_create_dynamic_sections): Delete unused local h. 1361 (get_got): Delete unused local srel. 1362 (elfNN_ia64_check_relocs): Initialize dynrel_type when declared. 1363 (elfNN_ia64_relocate_section): Delete unused local dynindx. 1364 1365 2000-11-21 Kazu Hirata <kazu@hxi.com> 1366 1367 * coff-a29k.c: Fix formatting. 1368 * coff-h8500.c: Likewise. 1369 * coff-i960.c: Likewise. 1370 * coff-ppc.c: Likewise. 1371 * coff-rs6000.c: Likewise. 1372 * coff-stgo32.c: Likewise. 1373 * coff-tic54x.c: Likewise. 1374 * coff-w65.c: Likewise. 1375 * cpu-h8500.c: Likewise. 1376 * cpu-hppa.c: Likewise. 1377 * cpu-ns32k.c: Likewise. 1378 * ecoff.c: Likewise. 1379 * ecofflink.c: Likewise. 1380 1381 2000-11-21 Nick Clifton <nickc@redhat.com> 1382 1383 * elf32-sh.c (sh_elf_reloc_loop): Fix compile time warning, and 1384 remove possibility of infinite loop. 1385 1386 2000-11-20 Kazu Hirata <kazu@hxi.com> 1387 1388 * aix386-core.c: Fix formatting. 1389 * aout-adobe.c: Likewise. 1390 * aout-arm.c: Likewise. 1391 * aout-encap.c: Likewise. 1392 * aout-ns32k.c: Likewise. 1393 * aout-target.h: Likewise. 1394 * aout-tic30.c: Likewise. 1395 * aoutf1.h: Likewise. 1396 * aoutx.h: Likewise. 1397 * archive.c: Likewise. 1398 * bfd-in.h: Likewise. 1399 * bfd-in2.h: Likewise. 1400 * bfd.c: Likewise. 1401 * bout.c: Likewise. 1402 1403 2000-11-17 H.J. Lu <hjl@gnu.org> 1404 1405 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Don't create 1406 pltoff entries for DT_INIT and DT_FINI. 1407 (elfNN_ia64_final_link): Don't set DT_INIT/FINI entries. 1408 (elfNN_ia64_finish_dynamic_sections): Don't fill in DT_INIT/FINI 1409 entries. 1410 1411 2000-11-16 Richard Henderson <rth@redhat.com> 1412 1413 * elfxx-ia64.c (elfNN_ia64_check_relocs): Handle IPLT relocs. 1414 (allocate_dynrel_entries): Likewise. 1415 (elfNN_ia64_relocate_section): Likewise. Set REL addends correctly. 1416 (set_pltoff_entry): Likewise. 1417 (ia64_howto_table): Remove R_IA64_SEGBASE, and R_IA64_EPLT[ML]SB 1418 (elfNN_ia64_reloc_type_lookup): Likewise. 1419 (elfNN_ia64_install_value): Likewise. 1420 (elfNN_ia64_relocate_section): Likewise. 1421 * reloc.c (BFD_RELOC_IA64_SEGBASE): Remove. 1422 (BFD_RELOC_IA64_EPLTMSB, BFD_RELOC_IA64_EPLTLSB): Remove. 1423 1424 2000-11-16 Kazu Hirata <kazu@hxi.com> 1425 1426 * cpu-a29k.c: Fix formatting. 1427 * cpu-alpha.c: Likewise. 1428 * cpu-arm.c: Likewise. 1429 * cpu-avr.c: Likewise. 1430 * cpu-d10v.c: Likewise. 1431 * cpu-h8500.c: Likewise. 1432 * cpu-hppa.c: Likewise. 1433 * cpu-i370.c: Likewise. 1434 * cpu-i386.c: Likewise. 1435 * cpu-i960.c: Likewise. 1436 * cpu-ia64-opc.c: Likewise. 1437 * cpu-ia64.c: Likewise. 1438 * cpu-m32r.c: Likewise. 1439 * cpu-m68hc11.c: Likewise. 1440 * cpu-m68hc12.c: Likewise. 1441 * cpu-m68k.c: Likewise. 1442 * cpu-m88k.c: Likewise. 1443 * cpu-mips.c: Likewise. 1444 * cpu-ns32k.c: Likewise. 1445 * cpu-pj.c: Likewise. 1446 * cpu-powerpc.c: Likewise. 1447 * cpu-sh.c: Likewise. 1448 * cpu-sparc.c: Likewise. 1449 * cpu-tic54x.c: Likewise. 1450 * cpu-v850.c: Likewise. 1451 * cpu-vax.c: Likewise. 1452 * cpu-w65.c: Likewise. 1453 * cpu-we32k.c: Likewise. 1454 * cpu-z8k.c: Likewise. 1455 * dwarf1.c: Likewise. 1456 * dwarf2.c: Likewise. 1457 1458 2000-11-15 Kazu Hirata <kazu@hxi.com> 1459 1460 * coff-arm.c: Fix formatting. 1461 * coff-ppc.c: Likewise. 1462 * coff-rs6000.c: Likewise. 1463 * coff-sh.c: Likewise. 1464 * coff-sparc.c: Likewise. 1465 * coff-tic30.c: Likewise. 1466 * coff-tic54x.c: Likewise. 1467 * coff-tic80.c: Likewise. 1468 * coff-w65.c: Likewise. 1469 * coff-we32k.c: Likewise. 1470 * coff-z8k.c: Likewise. 1471 1472 2000-11-15 Richard Henderson <rth@redhat.com> 1473 1474 * elf64-alpha.c (elf64_alpha_check_relocs): Create the reloc 1475 section with the same ALLOC|LOAD flags as the source section. 1476 1477 2000-11-14 Jakub Jelinek <jakub@redhat.com> 1478 1479 * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used 1480 by STO_ALPHA constants. 1481 1482 2000-11-14 Kazu Hirata <kazu@hxi.com> 1483 1484 * coff-pmac.c: Fix formatting. 1485 * coff-ppc.c: Likewise. 1486 1487 2000-11-13 H.J. Lu <hjl@gnu.org> 1488 1489 * elflink.h (elf_link_add_object_symbols): Also add indirect 1490 symbols for common symbols with the default version. 1491 1492 2000-11-09 Philip Blundell <pb@futuretv.com> 1493 1494 * section.c (STD_SECTION): Set gc_mark flag. 1495 1496 2000-11-11 Kazu Hirata <kazu@hxi.com> 1497 1498 * coff-i960.c: Likewise. 1499 * coff-m68k.c: Likewise. 1500 * coff-m88k.c: Likewise. 1501 * coff-mcore.c: Likewise. 1502 * coff-mips.c: Likewise. 1503 1504 2000-11-11 Bernd Schmidt <bernds@cygnus.co.uk> 1505 1506 * elf32-sh.c (sh_elf_relocate_section): Ignore R_SH_NONE relocs. 1507 1508 2000-11-10 Kazu Hirata <kazu@hxi.com> 1509 1510 * coff-h8300.c: Fix formatting. 1511 * coff-h8500.c: Likewise. 1512 * coff-i386.c: Likewise. 1513 * coff-i860.c: Likewise. 1514 * coff-i960.c: Likewise. 1515 * coff-ia64.c: Likewise. 1516 1517 2000-11-09 Kazu Hirata <kazu@hxi.com> 1518 1519 * archive.c: Fix formatting. 1520 * archures.c: Likewise. 1521 1522 2000-11-07 Richard Henderson <rth@redhat.com> 1523 1524 * elfxx-ia64.c (elf64_ia64_final_link): New local unwind_output_sec. 1525 Set it before bfd_elf64_bfd_final_link call. Use it after the call. 1526 * section.c (bfd_set_section_contents): Call memcpy if 1527 section->contents set and location not equal to contents plus offset. 1528 1529 2000-11-08 Kazu Hirata <kazu@hxi.com> 1530 1531 * bfd-in.h: Fix formatting. 1532 * bfd-in2.h: Likewise. 1533 * bfd.c: Likewise. 1534 * binary.c: Likewise. 1535 * bout.c: Likewise. 1536 * coff-a29k.c: Likewise. 1537 * coff-alpha.c: Likewise. 1538 * coff-apollo.c: Likewise. 1539 * coff-aux.c: Likewise. 1540 1541 2000-11-07 Kazu Hirata <kazu@hxi.com> 1542 1543 * aix386-core.c: Fix formatting. 1544 * aoutf1.h: Likewise. 1545 * aoutx.h: Likewise. 1546 * archures.c: Likewise. 1547 * armnetbsd.c: Likewise. 1548 1549 2000-11-07 Alan Modra <alan@linuxcare.com.au> 1550 1551 * coff-h8300.c (special): Adjust reloc address. 1552 1553 2000-11-06 Steve Ellcey <sje@cup.hp.com> 1554 1555 * archures.c (bfd_mach_ia64_elf64, bfd_mach_ia64_elf32): Add defines 1556 to differentiate elf32 and elf64 on ia64. 6791 * cpu-s390.c (arch_info_struct): Use renamed architecture defines. 6792 Replace architecture name "s390" with "s390:31-bit" and "s390:esame" 6793 with "s390:64-bit". 6794 * elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations. 6795 (elf_s390_reloc_type_lookup): Likewise. 6796 (elf_s390_check_relocs): Likewise. 6797 (elf_s390_gc_sweep_hook): Likewise. 6798 (elf_s390_relocate_section): Likewise. 6799 (elf_s390_object_p): Use renamed architecture define. 6800 * elf64-s390.c (elf_s390_object_p): Use renamed architecture define. 6801 6802 2002-02-19 Frank Ch. Eigler <fche@redhat.com> 6803 6804 * syms.c (stt[]): Sorted. Added .init/.fini -> "t" mapping. 6805 6806 2002-02-19 Jakub Jelinek <jakub@redhat.com> 6807 6808 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable 6809 absptr -> pcrel optimization for shared libs. 6810 Only create minimal .eh_frame_hdr if absptr FDE encoding in shared 6811 library cannot be converted to pcrel. 6812 (_bfd_elf_eh_frame_section_offset): Return -2 if making absptr 6813 relative. 6814 * elf32-i386.c (elf_i386_relocate_section): If 6815 _bfd_elf_section_offset returned -2, skip, but make sure the 6816 relocation is installed. 6817 * elf32-arm.h (elf32_arm_final_link_relocate): Likewise. 6818 * elf32-cris.c (cris_elf_relocate_section): Likewise. 6819 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 6820 * elf32-i370.c (i370_elf_relocate_section): Likewise. 6821 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 6822 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 6823 * elf32-s390.c (elf_s390_relocate_section): Likewise. 6824 * elf32-sh.c (sh_elf_relocate_section): Likewise. 6825 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 6826 * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. 6827 * elf64-s390.c (elf_s390_relocate_section): Likewise. 6828 * elf64-sh64.c (sh_elf64_relocate_section): Likewise. 6829 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 6830 * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. 6831 * elf64-alpha.c (elf64_alpha_relocate_section): Handle 6832 _bfd_elf_section_offset returning -2 the same way as -1. 6833 * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise. 6834 * elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME 6835 and BFD_ASSERT. 6836 * elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise. 6837 6838 2002-02-18 Tom Rix <trix@redhat.com> 6839 6840 * xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support. 6841 (bfd_xcoff_size_dynamic_sections): Same. 6842 * bfd-in.h (bfd_xcoff_link_generate_rtinit): Same. 6843 (bfd_xcoff_size_dynamic_sections): Same. 6844 * coff-rs6000.c (xcoff_generate_rtinit): Same. 6845 * coff-rs646000.c (xcoff64_generate_rtinit): Same. 6846 * libxcoff.h (struct xcoff_backend_data_rec): Same. 6847 * xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean. 1557 6848 * bfd-in2.h: Regenerate. 1558 * config.bfd: Add target for "ia64*-*-hpux*". 1559 * configure.in: Add bfd_elf32_ia64_big_vec to selvecs switch. 6849 6850 2002-02-18 Alan Modra <amodra@bigpond.net.au> 6851 6852 * elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define. 6853 (struct ppc_link_hash_table): Add sfpr. 6854 (ppc64_elf_link_hash_table_create): Init it. 6855 (ppc64_elf_create_dynamic_sections): Split creation of .stub and 6856 .glink out to.. 6857 (create_linkage_sections): ..here. Make .sfpr too. 6858 (ppc64_elf_check_relocs): Call create_linkage_sections, and set 6859 dynobj early. 6860 (MIN_SAVE_FPR, MAX_SAVE_FPR): Define. 6861 (ppc64_elf_func_desc_adjust): Look for missing ._savef* and 6862 ._restf* functions, and create as needed. 6863 (func_desc_adjust): Only force_local for shared libs. 6864 6865 2002-02-18 David O'Brien <obrien@FreeBSD.org> 6866 6867 * configure.in: Bump version number post 2.12 branching. 1560 6868 * configure: Regenerate. 1561 * cpu-ia64.c (bfd_ia64_elf32_arch): Add elf32 arch info structure. 1562 * targets.c: Add bfd_target bfd_elf32_ia64_big_vec. 1563 1564 * Makefile.am: Make elf32-ia64.c and elf64-ia64.c derived objects 1565 from elfxx-ia64.c. Add depenency rules for making elf32-ia64.lo. 1566 * Makefile.in: Regnerate. 1567 * elf64-ia64.c: Deleted. 1568 * elfxx-ia64.c: New file, paramaterized version of elf64-ia64.c. 1569 1570 2000-11-06 Kazu Hirata <kazu@hxi.com> 1571 1572 * aout-adobe.c: Fix formatting. 1573 * aout-arm.c: Likewise. 1574 * aout-cris.c: Likewise. 1575 * aout-encap.c: Likewise. 1576 * aout-ns32k.c: Likewise. 1577 * aout-target.h: Likewise. 1578 * aout-tic30.c: Likewise. 1579 1580 2000-11-05 Philip Blundell <philb@gnu.org> 1581 1582 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit 1583 BFDs containing no sections to be merged, regardless of their flags. 1584 1585 2000-11-04 Philip Blundell <philb@gnu.org> 1586 1587 * elf32-arm.h (elf32_arm_relocate_section): Suppress error message 1588 if a relocation for an undefined symbol also results in an 1589 overflow. 1590 1591 2000-11-06 Christopher Faylor <cgf@cygnus.com> 1592 1593 * config.bfd: Add support for Sun Chorus. 1594 1595 2000-11-05 David O'Brien <obrien@FreeBSD.org> 1596 1597 * configure.in: Recognize alpha-*-freebsd*. 1598 * configure: Regenerate. 1599 1600 2000-11-02 Luciano Gemme <ishitawa@yahoo.com> 1601 1602 * srec.c (CHUNK): Rename to DEFAULT_CHUNK. 1603 (Chunk): New global variable set by a parameter in objcopy.c. 1604 (S3Forced): New global variable set by a parameter in 1605 objcopy.c. 1606 (srec_set_section_contents): If S3Forced is true, always generate 1607 S3 records. 1608 (srec_write_section): Use 'Chunk' to limit maximum length of S 1609 records. 1610 1611 2000-11-02 Per Lundberg <plundis@chaosdev.org> 1612 1613 * config.bfd: Add support for i[3456]86-chaosdev-storm-chaos. 6869 6870 2002-02-17 Hans-Peter Nilsson <hp@bitrange.com> 6871 6872 * mmo.c: Correct and improve comments. 6873 (mmo_write_chunk): Store trailing byte in bfd buffer; don't 6874 zero-pad. Use input to fill up non-empty bfd buffer. 6875 (mmo_flush_chunk): New function. 6876 (mmo_write_loc_chunk): Add parameter last_vmap, all callers 6877 changed. Don't emit location specifier if VMA is same as 6878 *LAST_VMAP after omitting leading zero contents. Call 6879 mmo_flush_chunk before emitting location specifier. 6880 (mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished 6881 with mmo_write_loc_chunk calls. 6882 (mmo_internal_write_section): Call mmo_flush_chunk after 6883 mmo_write_chunk. 6884 (mmo_write_symbols_and_terminator): Move :Main to first position 6885 in symbol array. Add faked one if it does not exist if there are 6886 other symbols. Don't add it if there are no symbols at all. Move 6887 out test for value of :Main from symbol loop. Rename table 6888 fakemain to maintable and variable mainsym to fakemain. 6889 6890 2002-02-15 Richard Henderson <rth@redhat.com> 6891 6892 * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target 6893 section with no got matches any got. Simplify error generaion. 6894 6895 2002-02-15 Alan Modra <amodra@bigpond.net.au> 6896 6897 Support arbitrary length fill patterns. 6898 * linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc. 6899 (_bfd_default_link_order): Remove bfd_fill_link_order code. 6900 Call default_data_link_order. 6901 (default_fill_link_order): Delete. 6902 (default_data_link_order): New function. 6903 * elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences 6904 of bfd_fill_link_order with bfd_data_link_order. 6905 * elf64-alpha.c (elf64_alpha_final_link): Likewise. 6906 * elf64-mips.c (mips_elf64_final_link): Likewise. 6907 6908 * bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value. 6909 Correct value returned in "end" for "0x<non-hex>". 6910 6911 2002-02-14 Nick Clifton <nickc@cambridge.redhat.com> 6912 6913 * cpu-arm.c (processors): Replace 'arch' field with 'mach'. 6914 (scan): Test against 'mach' field in info structure. 6915 6916 2002-02-14 Alan Modra <amodra@bigpond.net.au> 6917 6918 * elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD. 6919 6920 2002-02-14 Matt Fredette <fredette@netbsd.org> 6921 6922 * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize 6923 EF_M68000. 6924 6925 2002-02-13 Nick Clifton <nickc@cambridge.redhat.com> 6926 6927 * elf.c (_bfd_elf_make_section_from_shdr): Do not insist on 6928 non-zero physical addresses when adjusting the LMAs of new 6929 sections. 6930 6931 2002-02-12 John David Anglin <dave@hiauly1.hia.nrc.ca> 6932 6933 * elf-hppa.h (elf_hppa_reloc_final_type): New function stripped 6934 from _bfd_elf_hppa_gen_reloc_type. 6935 (_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype. 6936 * elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype. 6937 * elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h. 6938 * elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype. 6939 6940 2002-02-12 Alexandre Oliva <aoliva@redhat.com> 6941 6942 * elf-m10300.c (mn10300_elf_relax_section): Skip section before 6943 loading its contents if there's nothing to do in it. 6944 6945 2002-02-12 Alan Modra <amodra@bigpond.net.au> 6946 6947 * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing 6948 64k boundary. 6949 6950 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic 6951 DT_PPC64_OPD and DT_PPC64_OPDSZ tags. 6952 (ppc64_elf_finish_dynamic_sections): Set values for them. 6953 6954 2002-02-11 Michael Snyder <msnyder@redhat.com> 6955 6956 * elf-bfd.h (elfcore_write_lwpstatus): Add prototype. 6957 * elf.c (elfcore_grok_pstatus): Add prototype. 6958 (elfcore_grok_lwpstatus): Add prototype. 6959 (elfcore_write_lwpstatus): New function. 6960 (elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy. 6961 6962 2002-02-11 Alexandre Oliva <aoliva@redhat.com> 6963 6964 * elf32-sh.c: Added missing prototypes. 6965 * elf32-sh64.c: Likewise. 6966 (sh_elf_align_loads): Mark unused args as such. 6967 * elf64-sh64.c: Added missing prototypes. 6968 (struct elf_sh64_link_hash_entry): Fix typo. 6969 (sh_elf64_relocate_section): Fix info argument passed to 6970 _bfd_elf_section_offset. 6971 6972 2002-02-11 Alan Modra <amodra@bigpond.net.au> 6973 6974 * Makefile.am: "make dep-am". 1614 6975 * Makefile.in: Regenerate. 1615 * bfd-in2.h: Regenerate.1616 * po/bfd.pot: Regenerate.1617 1618 2000-10-31 Philip Blundell <philb@gnu.org>1619 1620 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle1621 EF_SOFT_FLOAT if it is defined.1622 1623 2000-10-27 Philip Blundell <philb@gnu.org>1624 1625 * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse1626 attempts to mix PIC code with non-PIC, just mark the output as1627 being position dependent.1628 (elf32_arm_merge_private_bfd_data): Likewise. Print an error1629 message for EF_SOFT_FLOAT mismatches. Display diagnostics for1630 all mismatches, not just the first one.1631 1632 2000-10-25 Chris Demetriou <cgd@sibyte.com>1633 1634 * ieee.c (ieee_archive_p): Plug one of many possible1635 memory leaks in error handling.1636 1637 2000-10-20 Jakub Jelinek <jakub@redhat.com>1638 1639 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data,1640 elf32_sparc_object_p, elf32_sparc_final_write_processing):1641 Support v8plusb.1642 * elf64-sparc.c (sparc64_elf_merge_private_bfd_data,1643 sparc64_elf_object_p): Support v9b.1644 * archures.c: Declare v8plusb and v9b machines.1645 * bfd-in2.h: Ditto.1646 * cpu-sparc.c: Ditto.1647 1648 2000-10-16 Geoffrey Keating <geoffk@shoggoth.cygnus.com>1649 1650 * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location1651 of a GOT reloc.1652 1653 * elf32-ppc.c (SYMBOL_REFERENCES_LOCAL): New macro.1654 (SYMBOL_CALLS_LOCAL): New macro.1655 (ppc_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL.1656 (ppc_elf_check_relocs): Use SYMBOL_REFERENCES_LOCAL.1657 (ppc_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL.1658 (ppc_elf_relocate_section): Use flag variable to determine1659 whether the relocation refers to a local symbol.1660 Test whether a PLTREL24 reloc will produce a reloc by looking1661 to see whether a PLT entry was made.1662 1663 2000-10-14 Geoffrey Keating <geoffk@shoggoth.cygnus.com>1664 1665 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT1666 entries that could serve as a definition for a weak symbol.1667 1668 2000-10-13 Ulf Carlsson <ulfc@engr.sgi.com>1669 1670 From Ralf Baechle <ralf@gnu.org>1671 1672 * elf32-mips.c (mips_elf_create_dynamic_relocation): New argument1673 local_p. Add symbol value only for non-R_MIPS_REL32 relocations1674 against local symbols.1675 (_bfd_mips_elf_finish_dynamic_sections): Undo patch from 2000-10-01.1676 1677 2000-10-12 Alan Modra <alan@linuxcare.com.au>1678 1679 * section.c (struct sec): Add kept_section.1680 (struct bfd_comdat_info): Remove sec, we can use above.1681 (STD_SECTION): Add initializer.1682 (bfd_make_section_anyway): Init here too.1683 1684 * bfd-in2.h: Regenerate.1685 1686 * elflink.h (elf_link_add_object_symbols): Remove unnecessary1687 zeroing of `flags'.1688 (elf_link_input_bfd): Set all asection->symbol->value's here, and1689 fudge values for discarded link-once section symbols.1690 1691 * elf64-hppa.c: Include alloca-conf.h1692 1693 2000-10-11 Alan Modra <alan@linuxcare.com.au>1694 1695 * elf.c (swap_out_syms): Revert 2000-10-07 changes.1696 1697 * ieee.c (ieee_make_empty_symbol): Oops, bfd_zalloc needs another arg.1698 1699 2000-10-10 Alan Modra <alan@linuxcare.com.au>1700 1701 * ieee.c (ieee_make_empty_symbol): Use bfd_zalloc, not bfd_zmalloc.1702 1703 2000-10-10 Tom Rix <trix@redhat.com>1704 1705 * section.c (bfd_make_section_anyway): Release newsect ptr when1706 newsect->symbol fails to alloc. Use bfd_release instead of free.1707 1708 2000-10-09 Richard Henderson <rth@cygnus.com1709 1710 * elf64-ia64.c (elf64_ia64_unwind_entry_compare_bfd): New.1711 (elf64_ia64_unwind_entry_compare): New.1712 (elf64_ia64_final_link): Sort the .IA_64.unwind section.1713 1714 2000-10-07 Alan Modra <alan@linuxcare.com.au>1715 1716 * elflink.h (size_dynamic_sections): Don't create various tags if1717 .dynstr is excluded from the link. Don't set first dynsym entry1718 if dynsymcount is zero.1719 (elf_bfd_final_link): Don't try to swap out dynamic syms if1720 .dynsym excluded from the link. Don't try to write any dynamic1721 sections excluded from the link.1722 1723 * elf.c (swap_out_syms): Handle global section symbols.1724 1725 2000-10-05 DJ Delorie <dj@redhat.com>1726 1727 * peigen.c (_bfd_pei_swap_scnhdr_out): note extended relocs1728 * coffcode.h (coff_set_alignment_hook): read extended reloc count1729 (coff_write_relocs): write extended reloc count1730 (coff_write_object_contents): account for extended relocs1731 1732 2000-10-05 Jim Wilson <wilson@cygnus.com>1733 1734 * elf-bfd.h (struct elf_backend_data): Add elf_backend_section_flags1735 field.1736 * elf.c (_bfd_elf_make_section_from_shdr): Call the1737 elf_backend_section_flags function.1738 * elf64-ia64.c (elf64_ia64_section_from_shdr): Delete flag conversion1739 code.1740 (elf64_ia64_section_flags): New function containing flag conversion1741 code.1742 (elf_backend_section_flags): Define to elf64_ia64_section_flags.1743 * elfxx-target.h (elf_backend_section_flags): Define.1744 (elfNN_bed): Initialize elf_backend_section_flags field.1745 1746 2000-10-02 Alan Modra <alan@linuxcare.com.au>1747 1748 * elf32-hppa.c (elf32_hppa_check_relocs): Correct call to1749 _bfd_elf32_gc_record_vtable. Correct a comment.1750 1751 2000-10-01 Ulf Carlsson <ulfc@engr.sgi.com>1752 1753 From Ralf Baechle <ralf@gnu.org>1754 1755 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Mark gld1756 produces binaries with got[1] = 0x80000001 to differenciate them1757 for the dynamic linker from the broken binaries produced by old1758 versions.1759 1760 2000-09-30 Petr Sorfa <petrs@sco.com>1761 1762 * elf.c (elfcore_grok_pstatus): Check for size of pxstatus_t.1763 (elfcore_grok_lwpstatus): Check for size of lwpxstatus_t.1764 * configure.in: Add check for pxstatus_t and lwpxstatus_t.1765 * configure: Regenerate.1766 1767 2000-09-27 Hans-Peter Nilsson <hp@axis.com>1768 1769 Define two bfd_targets for absence and presence of leading1770 underscore on symbols. Make sure to only link same kind.1771 * elf32-cris.c (cris_elf_object_p,1772 cris_elf_final_write_processing, cris_elf_print_private_bfd_data,1773 cris_elf_merge_private_bfd_data): New.1774 (elf_backend_object_p, elf_backend_final_write_processing,1775 bfd_elf32_bfd_print_private_bfd_data,1776 bfd_elf32_bfd_merge_private_bfd_data): Define.1777 <Target vector definition>: Include elf32-target.h twice with1778 different macro settings:1779 (TARGET_LITTLE_SYM): First as bfd_elf32_cris_vec, then as1780 bfd_elf32_us_cris_vec.1781 (TARGET_LITTLE_NAME): First as "elf32-cris", then "elf32-us-cris".1782 (elf_symbol_leading_char): First as 0, then '_'.1783 (INCLUDED_TARGET_FILE): Define for second include of elf32-target.h.1784 * config.bfd (cris-*-*): Add bfd_elf32_us_cris_vec to targ_selvecs.1785 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vector.1786 * configure: Regenerate.1787 * targets.c: Declare bfd_elf32_us_cris_vec.1788 * po/bfd.pot: Regenerate.1789 1790 2000-09-29 Momchil Velikov <velco@fadata.bg>1791 1792 * elf32-arm.h (arm_add_to_rel): Correctly adjust the addend for1793 R_ARM_THM_PC22 relocations.1794 1795 2000-09-29 NIIBE Yutaka <gniibe@chroot.org>1796 1797 * elflink.h (elf_link_add_object_symbols): Don't bfd_release runpath.1798 1799 2000-09-29 Momchil Velikov <velco@fadata.bg>1800 1801 * elf.c (elf_fake_sections): Do not mark the section SHT_NOBITS if1802 is has the SEC_HAS_CONTENTS flag set.1803 1804 2000-09-28 Örjan Friberg <orjanf@axis.com>1805 Hans-Peter Nilsson <hp@axis.com>1806 1807 * aout-cris.c (N_TXTADDR): Define.1808 1809 2000-09-28 John David Anglin <dave@hiauly1.hia.nrc.ca>1810 1811 * som.c: Include alloca-conf.h.1812 * Makefile.am: "make dep-am"1813 * Makefile.in: Regenerate.1814 1815 2000-09-27 Alan Modra <alan@linuxcare.com.au>1816 1817 * elf32-hppa.c (plt_stub): New.1818 (PLT_STUB_ENTRY): Define.1819 (elf32_hppa_link_hash_table): Change multi_subspace to packed1820 boolean. Add need_plt_stub, has_12bit_branch and has_17bit_branch.1821 (elf32_hppa_link_hash_table_create): Init to suit.1822 (elf32_hppa_check_relocs): Set has_12bit_branch and1823 has_17bit_branch as appropriate.1824 (elf32_hppa_adjust_dynamic_symbol): Set need_plt_stub for1825 non-local functions.1826 (elf32_hppa_size_dynamic_sections): Correct setting of reltext.1827 Add space for plt_stub as needed.1828 (elf32_hppa_finish_dynamic_symbol): Point .plt entries for global1829 functions at plt_stub.1830 (elf32_hppa_finish_dynamic_sections): Write plt_stub.1831 (elf32_hppa_create_dynamic_sections): Leave .plt executable.1832 1833 * elf32-hppa.h (elf32_hppa_size_stubs): Add group_size param.1834 * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. Use it instead1835 of fixed size, and if negative, disable handling of input sections1836 before stub section. Set up default stub group size depending1837 on detected branch relocs.1838 (hppa_build_one_stub): Use lrsel and rrsel for import stubs to1839 ensure different offsets from sym_value aren't rounded to1840 different 2k blocks. Use lrsel and rrsel for other stubs too for1841 consistency rather than necessity.1842 (elf32_hppa_check_relocs): Handle R_PARISC_DIR14F.1843 (final_link_relocate): Likewise.1844 (elf32_hppa_relocate_section): Likewise.1845 1846 * elf-hppa.h (elf_hppa_howto_table): Add R_PARISC_DIR14F reloc.1847 (_bfd_elf_hppa_gen_reloc_type): Generate them.1848 (elf_hppa_final_link_relocate): Handle them.1849 (elf_hppa_relocate_insn): Likewise.1850 (_bfd_elf_hppa_gen_reloc_type): Add missing e_ldsel and e_rdsel cases.1851 1852 2000-09-26 Hans-Peter Nilsson <hp@axis.com>1853 1854 * elfcode.h (elf_object_p): Preserve and clear abfd section1855 information. Restore at error.1856 1857 2000-09-26 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>1858 1859 * peigen.c (_bfd_pei_swap_aouthdr_in): If some DataDirectory1860 is empty, make sure that its rva also 0. NT loader dislikes1861 having otherwise.1862 1863 2000-09-26 Steve Ellcey <sje@cup.hp.com>1864 1865 * som.c (som_bfd_derive_misc_symbol_info): Make weak symbols1866 global by default.1867 1868 2000-09-21 Alan Modra <alan@linuxcare.com.au>1869 1870 * elf32-hppa.c (elf32_hppa_check_relocs): Fix weak sym handling in1871 currently unused RELATIVE_DYNAMIC_RELOCS code.1872 (hppa_discard_copies): Likewise.1873 (elf32_hppa_size_stubs): Size `input_list' array correctly. Correct1874 comments. Don't check non-code output sections for stub grouping.1875 1876 2000-09-20 Alan Modra <alan@linuxcare.com.au>1877 1878 * section.c (bfd_get_unique_section_name): Return NULL if1879 bfd_malloc fails.1880 1881 2000-09-19 Michael Sokolov <msokolov@ivan.Harhan.ORG>1882 1883 * elf32-m68k.c (elf_cpu32_plt0_entry): Change the PLT entry 01884 instruction sequence to actually work.1885 (elf_m68k_finish_dynamic_sections): Change the patch-in offset1886 accordingly.1887 1888 2000-09-18 Alexandre Oliva <aoliva@redhat.com>1889 1890 * elf32-sh.c (sh_elf_relocate_section): Use1891 _bfd_final_link_relocate to apply the relocation against a section1892 symbol, when doing relocatable links.1893 1894 2000-09-18 Alan Modra <alan@linuxcare.com.au>1895 1896 * elf32-hppa.c (elf32_hppa_stub_hash_entry): Rename input_section1897 to id_sec.1898 (stub_hash_newfunc): Here too.1899 (hppa_add_stub): And here.1900 (elf32_hppa_link_hash_table): Remove stub_section_created,1901 reloc_section_created, first_init_sec and first_fini_sec. Add1902 stub_group.1903 (elf32_hppa_link_hash_table_create): Init to suit.1904 (hppa_get_stub_entry): Add support for grouping stub sections.1905 (hppa_add_stub): Likewise. Remove sec_count param and init/fini1906 section code. Index stub vars by section->id.1907 (elf32_hppa_size_stubs): Likewise. Remove duplicated function1908 exit paths. Zap allocation of above removed vars. Refine1909 link-once test.1910 1911 * elf32-hppa.h (elf32_hppa_size_stubs): Add output_bfd param.1912 * elf32-hppa.c (elf32_hppa_size_stubs): Likewise.1913 (hppa_get_stub_entry): Pass in pointer to elf32_hppa_link_hash_table1914 rather than pointer to bfd_link_info.1915 (hppa_add_stub): Likewise.1916 (final_link_relocate): Likewise.1917 1918 2000-09-17 David Huggins-Daines <dhd@linuxcare.com>1919 1920 (elf32_hppa_size_stubs): Don't try to build stubs for discarded1921 link-once sections.1922 1923 2000-09-16 Alexandre Oliva <aoliva@redhat.com>1924 1925 * elf32-sh.c (ELF_MAXPAGESIZE): Define to 128, to match1926 ld/emulparams/shelf.sh.1927 1928 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>1929 1930 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): New function.1931 * bfd-in.h (bfd_m68k_elf32_create_embedded_relocs): Add declaration.1932 * bfd-in2.h: Regenerate.1933 1934 2000-09-15 Kenneth Block <Kenneth.Block@compaq.com>1935 1936 * bfd/elf64-alpha.c (elf64_alpha_relax_with_lituse): ld performs1937 LITUSE relocations incorrectly if -relax is specified on the ld1938 command line and the displacement field of the load or store1939 instruction is non-zero. (Patch by paul.winalski@compaq.com)1940 1941 2000-09-15 Alan Modra <alan@linuxcare.com.au>1942 1943 * elf32-hppa.c (hppa_add_stub): Dont set first_init_sec and1944 first_fini_sec here.1945 (elf32_hppa_size_stubs): Instead correctly find the first .init1946 and .fini section here.1947 1948 2000-09-15 David Huggins-Daines <dhd@linuxcare.com>1949 1950 * elf32-hppa.c (clobber_millicode_symbols): New function.1951 (elf32_hppa_size_dynamic_sections): Call it.1952 1953 2000-09-14 Alan Modra <alan@linuxcare.com.au>1954 1955 * elf32-hppa.c (elf32_hppa_link_hash_entry): Make pic_call1956 packed. Add plabel, plt_abs packed booleans.1957 (hppa_link_hash_newfunc): Init new fields.1958 (PLABEL_PLT_ENTRY_SIZE): Define.1959 (hppa_stub_name): Use size_t len vars.1960 (hppa_add_stub): Likewise.1961 (elf32_hppa_build_stubs): Likewise.1962 (hppa_build_one_stub): Kill some compiler warnings.1963 (elf32_hppa_check_relocs): Always generate a plt entry for PLABELs1964 if dynamic linking. Munge the local plt offsets into1965 local_got_refcounts. Set h->plabel for all global PLABELs. Use1966 size_t len vars. Add assert for plabel addend.1967 (elf32_hppa_gc_sweep_hook): Sweep local plt entries too.1968 (elf32_hppa_hide_symbol): New function.1969 (elf_backend_hide_symbol): Define.1970 (elf32_hppa_adjust_dynamic_symbol): Don't throw away plt entries1971 with h->plabel set. Don't make plt entries to have dynamic syms1972 when they have been forced local. If plt entry is used by a1973 plabel, make it PLABEL_PLT_ENTRY_SIZE.1974 (elf32_hppa_size_dynamic_sections): Set plt_abs for init fns.1975 Set up .plt offsets for local syms.1976 (elf32_hppa_relocate_section): Initialise plt entries for local1977 syms. Leave weak undefined plabels zero. Make global plabel1978 relocs against function symbol, and leave the addend zero.1979 Use *ABS* DIR32 relocs instead of SEGREL32 for dynamic got relocs.1980 (elf32_hppa_finish_dynamic_symbol): Set up IPLT relocs for1981 non-dynamic syms. Init extra plt for plabels. Use *ABS* DIR321982 relocs instead of SEGREL32 for dynamic got relocs.1983 (elf32_hppa_finish_dynamic_sections): Reserve one more .got entry.1984 (elf_backend_got_header_size): Adjust.1985 (elf32_hppa_set_gp): Calculate an "ideal" LTP.1986 1987 * elf32-hppa.c (LONG_BRANCH_VIA_PLT): Define.1988 (hppa_type_of_stub): Use it instead of #if 01989 (hppa_discard_copies): Use it here too.1990 (elf32_hppa_size_dynamic_sections): And here.1991 1992 * elf32-hppa.c (elf32_hppa_link_hash_table): Remove `offset' field.1993 (elf32_hppa_link_hash_table_create): And here.1994 (hppa_build_one_stub): And here. Instead keep track of stub1995 offset using _raw_size.1996 (elf32_hppa_size_stubs): Likewise.1997 (elf32_hppa_build_stubs): Likewise.1998 (hppa_size_one_stub): Likewise. Resize reloc section too.1999 2000 * elf32-hppa.c (hppa_add_stub): Correct first_init_sec and2001 first_fini_sec handling. Don't search for reloc section or set2002 hplink->reloc_section_created here.2003 (elf32_hppa_size_stubs): Instead search for reloc sections, and2004 set reloc_section_created here.2005 (hppa_handle_PIC_calls): Set ELF_LINK_HASH_NEEDS_PLT.2006 (elf32_hppa_size_dynamic_sections): Make a .plt entry for DT_INIT2007 and DT_FINI.2008 (elf32_hppa_finish_dynamic_sections): Set DT_INIT and DT_FINI.2009 2010 * elf32-hppa.c (hppa_build_one_stub): Replace `elf_hash_table (info)'2011 with `hplink->root.'.2012 (elf32_hppa_check_relocs): Likewise.2013 (elf32_hppa_gc_sweep_hook): Likewise.2014 (elf32_hppa_adjust_dynamic_symbol): Likewise.2015 (hppa_handle_PIC_calls): Likewise.2016 (elf32_hppa_size_dynamic_sections): Likewise.2017 (elf32_hppa_set_gp): Likewise.2018 (elf32_hppa_relocate_section): Likewise.2019 (elf32_hppa_finish_dynamic_symbol): Likewise.2020 (elf32_hppa_finish_dynamic_sections): Likewise.2021 2022 From David Huggins-Daines <dhd@linuxcare.com>2023 * elf32-hppa.c (hppa_type_of_stub): Generate import stubs for2024 defined weak symbols in shared links.2025 (final_link_relocate): Calls to defined weak symbols in shared2026 objects must go via import stubs, as the target might not be known2027 at link time.2028 2029 2000-09-14 Alexandre Oliva <aoliva@redhat.com>2030 2031 * elf32-sh.c (sh_elf_howto_table): Moved R_SH_GOT32, R_SH_PLT32,2032 R_SH_COPY, R_SH_GLOB_DAT, R_SH_JMP_SLOT, R_SH_RELATIVE,2033 R_SH_GOTOFF, R_SH_GOTPC) to the range from 160 to 167. Replaced2034 the original entries with EMPTY_HOWTOs, and added new ones to fill2035 in the gap.2036 (sh_elf_info_to_howto): Make sure the new gap isn't used.2037 (sh_elf_relocate_section): Likewise.2038 2039 2000-09-13 Anders Norlander <anorland@acc.umu.se>2040 2041 * cpu-mips.c (arch_info_struct): Add mips:4K2042 * bfd-in2.h (bfd_mach_mips4K): New define.2043 * archures.c: Add bfd_mach_mips4K to comment.2044 * elf32-mips.c (_bfd_mips_elf_final_write_processing): Return2045 E_MIPS_ARCH_2 for bfd_mach_mips4K.2046 2047 2000-09-13 Marco Franzen <marcof@thyron.com>2048 2049 * som.c (som_write_symbol_strings): Do not used fixed buffers,2050 use size_t as a counter.2051 (som_write_space_strings): Similarly.2052 2053 2000-09-12 Jason Eckhardt <jle@cygnus.com>2054 2055 * elf32-i860.c (elf32_i860_relocate_pc26): New function2056 and prototype.2057 (elf32_i860_relocate_section): Invoke new function from here.2058 2059 2000-09-11 Michael Sokolov <msokolov@ivan.Harhan.ORG>2060 2061 * elf.c (_bfd_elf_make_section_from_shdr): Make debug_sec_names2062 static.2063 2064 2000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG>2065 2066 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Emit 8 NULs for2067 target section name instead of dumping core when the target symbol is2068 undefined.2069 2070 2000-09-09 Kazu Hirata <kazu@hxi.com>2071 2072 * riscix.c: Remove DEFUN.2073 2074 2000-09-08 Nick Clifton <nickc@redhat.com>2075 2076 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not2077 initialise flags in output bfd if the input bfd is the default2078 architecture with the default flags.2079 2080 2000-09-08 Kazu Hirata <kazu@hxi.com>2081 2082 * archive.c: Fix formatting.2083 * coff-arm.c: Likewise.2084 * doc/chew.c: Likewise.2085 2086 2000-09-08 Alan Modra <alan@linuxcare.com.au>2087 2088 * section.c (bfd_get_unique_section_name): Put a dot before the2089 numeric suffix.2090 2091 2000-09-07 Kazu Hirata <kazu@hxi.com>2092 2093 * doc/chew.c: Remove all uses of DEFUN and DEFUN_VOID.2094 * elf.c: Fix formatting.2095 2096 2000-09-07 Alexandre Oliva <aoliva@redhat.com>2097 2098 * config.bfd (sh-*-linux*): Added.2099 * configure.in (bfd_elf32_shlin_vec, bfd_elf32_shblin_vec): New.2100 * targets.c: Declare them.2101 * elf32-sh-lin.c: New file.2102 * Makefile.am: Compile it.2103 * elf32-sh.c: Don't override defines from elf32-sh-lin.c.2104 * configure, Makefile.in: Rebuilt.2105 2106 2000-09-06 Geoffrey Keating <geoffk@cygnus.com>2107 2108 * xcofflink.c (xcoff_link_input_bfd): Include the .tocbss2109 pseduo-section when determining where the TOC ends.2110 2111 * coff-rs6000.c (_bfd_xcoff_swap_aux_out): Use bfd_h_put_16 to2112 output x_tvndx as it is only two bytes wide.2113 2114 * coff-rs6000.c (xcoff_howto_table): A modifiable branch-absolute2115 reloc is 26 or 32 bits wide.2116 2117 * coff-rs6000.c (_bfd_xcoff_rtype2howto): The bitsize is irrelevant2118 for relocs that don't change anything. Also look at the full2119 6 bits of bitsize.2120 2121 2000-09-06 Philip Blundell <philb@gnu.org>2122 2123 * config.bfd (arm*-*-uclinux*): New target.2124 2125 2000-09-06 Alexandre Oliva <aoliva@redhat.com>2126 2127 * configure: Rebuilt with new libtool.m4.2128 2129 2000-09-06 Alan Modra <alan@linuxcare.com.au>2130 2131 * section.c (bfd_get_unique_section_name): Avoid c++ reserved2132 word for variable name.2133 * bfd-in2.h: Regenerate.2134 2135 2000-09-05 Nick Clifton <nickc@redhat.com>2136 2137 * config.in: Regenerate.2138 * libbfd.h: Regenerate.2139 * po/bfd.pot: Regenerate.2140 * doc/bfdint.texi: Remove CVS date string - it foils compares with2141 local versions.2142 2143 2000-09-05 Steven Johnson <sbjohnson@ozemail.com.au>2144 2145 * cpu-powerpc.c (arch_info_struct): Added MPC860 Family entry.2146 2147 2000-09-05 Alan Modra <alan@linuxcare.com.au>2148 2149 Shared library and PIC support.2150 * elf32-hppa.c (PLT_ENTRY_SIZE): New.2151 (GOT_ENTRY_SIZE): New.2152 (ELF_DYNAMIC_INTERPRETER): New.2153 (STUB_SUFFIX): Define.2154 (LONG_BRANCH_PIC_IN_SHLIB): Define.2155 (RELATIVE_DYNAMIC_RELOCS): Define.2156 (enum elf32_hppa_stub_type): New.2157 (struct elf32_hppa_stub_hash_entry): Rename offset to2158 stub_offset. Add a number of new fields.2159 (struct elf32_hppa_link_hash_entry): New.2160 (struct elf32_hppa_link_hash_table): Add numerous fields. Remove2161 global_value.2162 (elf32_hppa_hash_table): Rename to hppa_link_hash_table.2163 (elf32_hppa_stub_hash_lookup): Rename to hppa_stub_hash_lookup.2164 (elf32_hppa_stub_hash_newfunc): Rename to stub_hash_newfunc. Init2165 new fields.2166 (hppa_link_hash_newfunc): New function.2167 (elf32_hppa_link_hash_table_create): Use above function. Init new2168 fields.2169 (elf32_hppa_stub_name): Rename to hppa_stub_name. Pass in reloc2170 instead of addend, and remove sym_name from args. Don't use2171 symbol name for local syms, instead use sym index.2172 (elf32_hppa_size_of_stub): Rename to hppa_type_of_stub, and return2173 stub type rather than size. Pass in hash and handle import stub2174 case. Also pass in reloc instead of offset so we can calculate2175 PCREL22F and PCREL12F branches properly.2176 (elf32_hppa_build_one_stub): Rename to hppa_build_one_stub. Build2177 import and export stubs too.2178 (elf32_hppa_size_one_stub): Rename to hppa_size_one_stub. Handle2179 import and export stub sizing.2180 (elf32_hppa_check_relocs): New function.2181 (elf32_hppa_adjust_dynamic_symbol): New function.2182 (hppa_discard_copies): New function.2183 (elf32_hppa_size_dynamic_sections): New function.2184 (elf_backend_size_dynamic_sections): Define.2185 (elf32_hppa_finish_dynamic_symbol): New function.2186 (elf_backend_finish_dynamic_symbol): Define.2187 (elf32_hppa_size_stubs): Stash params in link hash table, and move2188 some local vars into the link hash table too. For shared links,2189 trundle over function syms, generating export stubs. Handle2190 PCREL22F branches. Break out stub creation code from here..2191 (hppa_add_stub): .. to here. New function.2192 (elf32_hppa_final_link): Rename to elf32_hppa_set_gp, and don't2193 call the bfd linker. Use elf_gp to record global pointer.2194 Calculate a value from sections if $global$ is missing.2195 (bfd_elf32_bfd_final_link): Define as _bfd_elf32_gc_common_final_link.2196 (elf32_hppa_gc_mark_hook): New function.2197 (elf_backend_gc_mark_hook): Define.2198 (elf32_hppa_gc_sweep_hook): New function.2199 (elf_backend_gc_sweep_hook): Define.2200 (elf32_hppa_bfd_final_link_relocate): Rename to final_link_relocate.2201 Add rel to args, and remove howto, input_bfd, offset, addend,2202 sym_name as we can recalculate these locally. Handle calls to2203 dynamic objects, extra PIC relocs, PCREL22F branches. Change2204 handling of undefined weak syms. Check that stubs are in range.2205 Only look for import stubs on PCREL17F and PCREL22F relocs. Add2206 message on hitting a DPREL21L reloc that needs fixing. Subtract2207 off PC for PCREL14F. Break out code that does a stub lookup from2208 here..2209 (hppa_get_stub_entry): ..to here. New function.2210 (elf32_hppa_relocate_insn): Merge into final_link_relocate.2211 (elf32_hppa_relocate_section): Handle got and plt relocs, dynamic2212 relocs, etc. etc.2213 (elf32_hppa_finish_dynamic_sections): New function.2214 (elf_backend_finish_dynamic_sections): Define.2215 (elf_backend_final_write_processing) Define.2216 (hppa_handle_PIC_calls): New function.2217 (elf32_hppa_build_stubs): Call it. Pass link_info to2218 hppa_build_one_stub.2219 (elf32_hppa_create_dynamic_sections): New function2220 to create .plt and .got then set .plt flags correctly.2221 (elf_backend_create_dynamic_sections): Define.2222 (elf32_hppa_object_p): New function.2223 (elf_backend_object_p): Define.2224 (elf32_hppa_elf_get_symbol_type): New function.2225 (elf_backend_get_symbol_type): Define.2226 (elf_backend_can_gc_sections): Define.2227 (elf_backend_want_got_plt): Define.2228 (elf_backend_plt_alignment): Set to 2.2229 (elf_backend_plt_readonly): Define.2230 (elf_backend_want_plt_sym): Define.2231 (elf_backend_got_header_size): Reserve one entry.2232 2233 * elf32-hppa.h (elf32_hppa_build_stubs): Don't pass stub bfd.2234 (elf32_hppa_size_stubs): Pass in multi_subspace.2235 (elf32_hppa_set_gp): Declare.2236 2237 * section.c (SEC_HAS_GOT_REF): Define new flag for asection.2238 (bfd_get_unique_section_name): New function.2239 * bfd_in2.h: Regenerate.2240 2241 * elf64-hppa.c (elf64_hppa_check_relocs): Handle R_PARISC_PCREL12F.2242 (elf64_hppa_size_dynamic_sections): Remove the FIXME at bfd_zalloc2243 comment.2244 2245 From David Huggins-Daines <dhd@linuxcare.com>2246 * elf64-hppa.c (elf64_hppa_check_relocs): Fix a warning.2247 (elf64_hppa_mark_exported_functions): Set dyn_h->st_shndx.2248 (elf64_hppa_link_output_symbol_hook): Test dyn_h->st_shndx has2249 been updated in finish_dynamic_symbol before modifying function2250 symbol.2251 2252 * elf-hppa.h (elf_hppa_howto_table): Restructure into groups of2253 eight entries. Replace NULL with bfd_elf_generic_reloc. Add2254 R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT and R_PARISC_PCREL12F.2255 (_bfd_elf_hppa_gen_reloc_type): Handle R_PARISC_GNU_VT*. Add some2256 comments. Handle format == 12 for R_HPPA_PCREL_CALL.2257 (elf_hppa_final_link_relocate): Handle R_PARISC_PCREL12F.2258 (elf_hppa_relocate_insn): Likewise. Reformat some comments.2259 (elf_hppa_final_write_processing): Expose it for ARCH_SIZE == 32.2260 2261 From David Huggins-Daines <dhd@linuxcare.com>2262 * elf-hppa.h (elf_hppa_is_local_label_name): Accept the SysV/ELF2263 style of local labels as well.2264 2265 2000-09-03 Philip Blundell <philb@gnu.org>2266 2267 * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate2268 references to undefined symbols in debugging sections.2269 2270 2000-09-02 H.J. Lu <hjl@gnu.org>2271 2272 * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT,2273 BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE,2274 BFD_RELOC_SH_GOTPC): Move them from the MIPS section to the SH2275 section.2276 2277 2000-09-02 Jason Eckhardt <jle@cygnus.com>2278 2279 * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro.2280 (elf32_i860_is_local_label_name): New function and prototype.2281 2282 2000-09-02 Nick Clifton <nickc@redhat.com>2283 2284 * configure.in: Increase version number to 2.10.91.2285 * configure: Regenerate.2286 6976 * aclocal.m4: Regenerate. 2287 6977 * config.in: Regenerate. 2288 * po/bfd.pot: Regenerate. 2289 2290 2000-09-02 Daniel Berlin <dberlin@redhat.com> 2291 2292 * elf.c (_bfd_elf_make_section_from_shdr): Add 2293 .gnu.linkobce.wi. to the list of debug section names. 2294 2295 2000-09-02 Nick Clifton <nickc@redhat.com> 2296 2297 * dwarf2.c (find_debug_info): New function: Locate a section 2298 containing dwarf2 debug information. 2299 (bfd_dwarf2_find_nearest_line): Find all sections containing 2300 debug information and include them in the stash. 2301 2302 2000-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> 2303 2304 * elf32-sh.c (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT, 2305 R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New. 2306 (sh_reloc_map): Add new relocs. 2307 (sh_elf_check_relocs, sh_elf_link_hash_newfunc, 2308 sh_elf_link_hash_table_create, sh_elf_adjust_dynamic_symbol, 2309 sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_symbol, 2310 sh_elf_finishe_dynamic_sections, sh_elf_discard_copies): New 2311 functions. 2312 (ELF_DYNAMIC_INTERPRETER, PLT_ENTRY_SIZE): Define. 2313 (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le, 2314 elf_sh_plt_entry_be, elf_sh_plt_entry_le, 2315 elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): 2316 New array constants. 2317 (elf_sh_plt0_entry, elf_sh_plt_entry, elf_sh_pic_plt_entry): 2318 New variables. 2319 (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset, 2320 elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset, 2321 elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset, 2322 elf_sh_plt_reloc_offset): Define. 2323 (elf_sh_pcrel_relocs_copied, elf_sh_link_hash_entry, 2324 elf_sh_link_hash_table): New structs. 2325 (sh_elf_link_hash_traverse, sh_elf_hash_table): New macros. 2326 (sh_elf_relocate_section, sh_elf_check_relocs): Handle new 2327 relocation types. 2328 (elf_backend_create_dynamic_sections, 2329 bfd_elf32_bfd_link_hash_table_create, 6978 * configure: Regenerate. 6979 6980 2002-02-10 Daniel Jacobowitz <drow@mvista.com> 6981 6982 * coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized 6983 variable warnings. 6984 * elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned 6985 comparison warning. 6986 * trad-core.c (trad_unix_core_file_p): Silence pointer/integer 6987 cast warnings for the common case. 6988 6989 2002-02-10 Hans-Peter Nilsson <hp@bitrange.com> 6990 6991 * config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64 6992 vectors. 6993 (sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64 6994 vectors. 6995 6996 2002-02-09 Richard Henderson <rth@redhat.com> 6997 6998 * elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP. 6999 (elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise. 7000 (elf64_alpha_relocate_section): Likewise. 7001 * reloc.c (BFD_RELOC_ALPHA_BRSGP): New. 7002 * bfd-in2.h, libbfd.h: Rebuild. 7003 7004 2002-02-09 Hans-Peter Nilsson <hp@bitrange.com> 7005 7006 * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check 7007 that base-plus-offset reloc accounting is consistent. 7008 (mmix_elf_relax_section): Keep base-plus-offset reloc accounting 7009 up to date for undefined symbols. 7010 7011 2002-02-08 Eric Christopher <echristo@redhat.com> 7012 7013 From Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7014 7015 * elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela 7016 sections for the O32 ABI. 7017 7018 2002-02-08 Chris Demetriou <cgd@broadcom.com> 7019 7020 * elf32-arm.h: Fix formatting of _("..."). 7021 * elf32-d10v.c: Likewise. 7022 * elf32-m68k.c: Likewise. 7023 * elf32-mips.c: Likewise. 7024 7025 2002-02-08 Ivan Guzvinec <ivang@opencores.org> 7026 7027 * coff-or32.c: Fix compile time warning messages. 7028 7029 2002-02-08 Alexandre Oliva <aoliva@redhat.com> 7030 7031 Contribute sh64-elf. 7032 2002-01-23 Alexandre Oliva <aoliva@redhat.com> 7033 * reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16, 7034 R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16, 7035 R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16, 7036 R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16, 7037 R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16, 7038 R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16, 7039 R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16, 7040 R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8, 7041 R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64): 7042 New relocs. 7043 * libbfd.h, bfd-in2.h: Rebuilt. 7044 * elf32-sh.c (sh_elf_howto_table): Define new relocs. 7045 (sh_reloc_map): Map them. 7046 (PLT_ENTRY_SIZE, elf_sh_plt0_entry_be, elf_sh_plt0_entry_le, 7047 elf_sh_plt_entry_be, elf_sh_plt_entry_le, elf_sh_pic_plt_entry_be, 7048 elf_sh_pic_plt_entry_le, elf_sh_plt0_entry, elf_sh_plt_entry, 7049 elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset, 7050 elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset, 7051 elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset, 7052 movi_shori_putval) [INCLUDE_SHMEDIA]: New. 7053 (elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add 7054 datalabel_got_offset. 7055 (sh_elf_link_hash_newfunc): Initialize it. 7056 (sh_elf_relocate_section): Augment the scope of 7057 seen_stt_datalabel. Introduce GOTPLT support. Extend GOTPC, PLT, 7058 GOT and GOTOFF handling to new SHmedia relocation types. Support 7059 GOT_BIAS. 7060 (sh_elf_check_relocs): Likewise. 7061 (sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in 7062 PLT entries using movi_shori_putval. Support GOT_BIAS. 7063 (sh_elf_finish_dynamic_sections): Likewise. 7064 * elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to 7065 relocation, it's now done by the caller. 7066 (GOT_BIAS): New. 7067 * elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt, 7068 elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset, 7069 elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset, 7070 elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER, 7071 elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry, 7072 elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse, 7073 sh64_elf64_hash_table): New. 7074 (sh_elf64_howto_table): Introduce new relocs. 7075 (sh_elf64_info_to_howto): Accept new PIC relocs. 7076 (sh_elf64_relocate_section): Augment the scope of 7077 seen_stt_datalabel. Support new PIC relocs. 7078 (sh_elf64_check_relocs): Support new PIC relocs. 7079 (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le, 7080 elf_sh64_plt_entry_be, elf_sh64_plt_entry_le, 7081 elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le, 7082 elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry, 7083 sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create, 7084 movi_shori_putval, movi_3shori_putval, 7085 sh64_elf64_create_dynamic_sections, 7086 sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies, 7087 sh64_elf64_size_dynamic_sections, 7088 sh64_elf64_finish_dynamic_symbol, 7089 sh64_elf64_finish_dynamic_sections): New. 7090 (elf_backend_create_dynamic-sections, 7091 bfd_elf64_bfd_link_hash_table_create, 2330 7092 elf_backend_adjust_dynamic_symbol, 2331 7093 elf_backend_size_dynamic_sections, … … 2335 7097 elf_backend_got_header_size, elf_backend_plt_header_size): 2336 7098 Define. 2337 * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, 2338 BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC): 2339 New relocs. 2340 * bfd-in2.h, libbfd.h: Rebuilt. 2341 2342 2000-09-01 Alan Modra <alan@linuxcare.com.au> 2343 2344 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Revert 2000-08-27 2345 change. 2346 2347 2000-08-31 J"orn Rennecke <amylaar@cygnus.co.uk> 2348 2349 * elf32-sh.c (sh_elf_merge_private_data): If ibfd's elf header flags 2350 not initialized, set them to indicate the SH1 instruction set. 2351 2352 2000-08-31 Alexandre Oliva <aoliva@redhat.com> 2353 2354 * acinclude.m4: Include libtool and gettext macros from the 2355 top level. 2356 * aclocal.m4, configure: Rebuilt. 2357 2358 2000-08-29 Michael Snyder <msnyder@seadog.cygnus.com> 2359 2360 * elf.c: Eliminate references to __sparcv9 macro; replace with 2361 autoconf variables HAVE_PSINFO32_T etc. 2362 * configure.in: Auto-configure HAVE_PSINFO_32_T, HAVE_PRPSINFO32_T, 2363 HAVE_PSTATUS32_T, HAVE_PRSTATUS32_T, HAVE_PRSTATUS32_T_PR_WHO. 2364 * config.in: Ditto. 2365 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE) define _SYSCALL32 so it can 2366 detect the above typedefs. (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Ditto. 2367 * aclocal.m4: Ditto. 7099 2001-05-16 Alexandre Oliva <aoliva@redhat.com> 7100 * elf32-sh.c: Renumbered and renamed some SH5 relocations to 7101 match official numbers and names; moved unmaching ones to the 7102 range 0xf2-0xff. 7103 * elf32-sh64.c, elf64-sh64.c: Likewise. 7104 2001-03-12 DJ Delorie <dj@redhat.com> 7105 * elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia 7106 sections. 7107 2001-03-12 DJ Delorie <dj@redhat.com> 7108 * elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must 7109 be aligned. 7110 * elf64-sh64.c (sh_elf64_relocate_section): Ditto. 7111 2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com> 7112 * elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define. 7113 (sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a 7114 .cranges section with SEC_SORT_ENTRIES set. 7115 (sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an 7116 incoming sorted .cranges section. 7117 (sh64_bfd_elf_copy_private_section_data): New. 7118 (sh64_elf_final_write_processing): Only sort .cranges and modify 7119 start address if called by linker. 7120 2001-01-08 Ben Elliston <bje@redhat.com> 7121 * elf32-sh64.c (sh64_elf_final_write_processing): Activate 7122 Hans-Peter Nilsson's set bit 0 patch from 2001-01-06. 7123 * elf64-sh64.c (sh64_elf64_final_write_processing): Ditto. 7124 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com> 7125 * elf64-sh64.c (sh_elf64_howto_table): No open brace at start of 7126 line. Add comments before all entries. 7127 <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct and clarify describing 7128 comment. 7129 (sh_elf64_reloc): Correct head comment. 7130 (sh_elf64_relocate_section): Correct spacing. 7131 <relocating for a local symbol>: Do not honour STO_SH5_ISA32; 7132 instead call reloc_dangerous callback. 7133 <case R_SH_SHMEDIA_CODE>: New case. 7134 (sh_elf64_gc_mark_hook): Correct spacing. 7135 (sh_elf64_check_relocs): Ditto. 7136 * elf32-sh64.c (shmedia_prepare_reloc) <case R_SH_SHMEDIA_CODE>: 7137 New case. 7138 * elf32-sh.c: Correct #endif comments for #ifndef-wrapped 7139 functions. 7140 (sh_elf_howto_table) <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct, 7141 clarify describing comment. Add comments before all entries. 7142 (sh_elf_relocate_section) <relocating for a local symbol>: Do not 7143 honour STO_SH5_ISA32; instead call reloc_dangerous callback. 7144 2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com> 7145 Sort .cranges section in final link. Prepare to set bit 0 on 7146 entry address. 7147 * elf32-sh64.c (struct sh64_find_section_vma_data): New. 7148 (sh64_elf_link_output_symbol_hook): Fix typo in prototype. 7149 (sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming 7150 .cranges section. 7151 (sh64_backend_section_from_shdr): New, to recognize 7152 SHT_SH5_CR_SORTED on incoming .cranges section. 7153 (elf_backend_section_from_shdr): Define. 7154 (sh64_elf_final_write_processing): Sort outgoing .cranges 7155 section. (New, temporarily disabled:) Set bit 0 on entry address 7156 according to ISA type. 7157 (sh64_find_section_for_address): New. 7158 (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb, 7159 crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c. 7160 (sh64_address_in_cranges): Move here from opcodes/sh64-dis.c. Use 7161 bfd_malloc, not xmalloc. 7162 (sh64_get_contents_type): Move here from opcodes/sh64-dis.c. Make 7163 global. 7164 * elf32-sh64.c (sh64_elf64_final_write_processing): New, (but 7165 temporarily disabled) setting bit 0 on entry address. 7166 (elf_backend_final_write_processing): Define. 7167 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com> 7168 * elf32-sh.c (sh_elf_howto_table) <R_SH_PT_16>: Adjust fields to 7169 be a proper relocation for PTA and PTB rather than a marker. 7170 <R_SH_IMMU5, R_SH_IMMS6, R_SH_IMMU6, R_SH_IMMS10, R_SH_IMMS10BY2, 7171 R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16, 7172 R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16, 7173 R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL, 7174 R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL>: 7175 Zero src_mask. 7176 * elf64-sh64.c: Ditto. 7177 (sh_elf64_relocate_section) <case R_SH_PT_16>: New case. 7178 * elf32-sh64.c: Include opcodes/sh64-opc.h 7179 (shmedia_prepare_reloc): Take a bfd_link_info pointer as first 7180 argument. Drop const qualifiers from "bfd *" and "bfd_byte *" 7181 parameters. No unused parameters. Caller changed. 7182 <case R_SH_PT_16>: New case. 7183 * Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h. 7184 * Makefile.in: Regenerate. 7185 2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com> 7186 * elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for 7187 all code sections. 7188 (sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5. 7189 (sh64_elf_merge_private_data): Ditto. 7190 * elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data 7191 to access stored section flags. 7192 (sh64_elf_final_write_processing): Return immediately unless 7193 called by linker. Use sh64_elf_section_data (cranges) to get size 7194 of linker-generated cranges entries. 7195 (sh64_elf_copy_private_data): Add missing "return true". 7196 (sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5. 7197 (sh_elf64_merge_private_data): Ditto. 7198 2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com> 7199 * elf64-sh64.c (sh64_elf64_fake_sections): New, copy of 7200 elf64-sh64.c:sh64_elf_fake_sections. 7201 (elf_backend_fake_sections): Define as sh64_elf64_fake_sections. 7202 2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com> 7203 * elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete. 7204 (sh64_elf_final_write_processing): New. 7205 (elf_backend_final_write_processing): Define. 7206 (sh64_elf_fake_sections): Get header flags from tdata field. 7207 (sh64_elf_copy_private_data): Do not call 7208 sh64_elf_copy_private_data_internal, just copy e_flags field. 7209 (sh64_elf_merge_private_data): Do not call 7210 sh64_elf_copy_private_data_internal. 7211 2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com> 7212 Remove EF_SH64_ABI64, let ELF size make difference. 7213 Remove SH64-specific BFD section flag. 7214 * elf32-sh64.c (sh64_elf_fake_sections): Recognize section as 7215 containing SHmedia through elf_section_data (asect)->tdata 7216 non-zero, not using a BFD section flag. 7217 (sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64. 7218 (sh64_elf_merge_private_data): Similar. 7219 (elf_backend_section_flags): Don't define. 7220 (sh64_elf_backend_section_flags): Delete. 7221 * elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64, 7222 not EF_SH64_ABI64. 7223 (sh_elf64_merge_private_data): Similar. 7224 * section.c (Section flags definitions): Don't define 7225 SEC_SH_ISA_SHMEDIA. 7226 (bfd-in2.h): Regenerate. 7227 2000-12-09 Hans-Peter Nilsson <hpn@cygnus.com> 7228 Make DataLabel references work with partial linking. 7229 * elf32-sh64.c: Fix formatting. 7230 (sh64_elf_link_output_symbol_hook): New. 7231 (elf_backend_link_output_symbol_hook): Define to 7232 sh64_elf_link_output_symbol_hook. 7233 (sh64_elf_add_symbol_hook): Make DataLabel symbol just global 7234 undefined if partial linking. Adjust sanity check. 7235 * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New. 7236 (elf_backend_link_output_symbol_hook): Define to 7237 sh64_elf64_link_output_symbol_hook. 7238 (sh64_elf64_add_symbol_hook): Make DataLabel symbol just global 7239 undefined if partial linking. Adjust sanity check. 7240 2000-12-07 Hans-Peter Nilsson <hpn@cygnus.com> 7241 Implement semantics for inter-file DataLabel references. 7242 * elf64-sh64.c (DATALABEL_SUFFIX): Define. 7243 (sh64_elf64_add_symbol_hook): New. 7244 (sh_elf64_relocate_section): If passing an indirect symbol with 7245 st_type STT_DATALABEL on the way to a symbol with st_other 7246 STO_SH5_ISA32, do not bitor 1 to the relocation. 7247 (elf_backend_add_symbol_hook): Define to 7248 sh64_elf64_add_symbol_hook. 7249 * elf64-sh32.c: Tweak comments. 7250 (DATALABEL_SUFFIX): Define. 7251 (sh64_elf_add_symbol_hook): New. 7252 (elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook. 7253 * elf32-sh.c (sh_elf_relocate_section): If passing an indirect 7254 symbol with st_type STT_DATALABEL on the way to a symbol with 7255 st_other STO_SH5_ISA32, do not bitor 1 to the relocation. 7256 2000-12-05 Hans-Peter Nilsson <hpn@cygnus.com> 7257 Pass through STT_DATALABEL. 7258 * elf32-sh64.c (sh64_elf_get_symbol_type): New. 7259 (elf_backend_get_symbol_type): Define. 7260 * elf64-sh64.c (sh64_elf64_get_symbol_type): New. 7261 (elf_backend_get_symbol_type): Define. 7262 2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com> 7263 * elf32-sh64.c: Tweak comments. 7264 (sh64_elf_copy_private_data_internal): Add prototype. 7265 (bfd_elf32_bfd_set_private_flags): Define. 7266 (sh64_elf_copy_private_data_internal): Compare machine name, not 7267 textual BFD target name, to check whether to copy section flag 7268 SHF_SH5_ISA32. 7269 (sh64_elf_merge_private_data): Validize bfd_get_arch_size. 7270 Tweak section-contents-type-mismatch message. 7271 (shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers. 7272 Validize reloc-types. 7273 * elf64-sh64.c: New file. 7274 * targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare. 7275 * Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo. 7276 (BFD64_BACKENDS_CFILES): Add elf64-sh64.c. 7277 Regenerate dependencies. 7278 * Makefile.in: Regenerate. 7279 * config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and 7280 bfd_elf64_sh64l_vec. 7281 * configure.in: Handle bfd_elf64_sh64_vec and 7282 bfd_elf64_sh64l_vec. 2368 7283 * configure: Regenerate. 2369 2370 2000-08-27 Alan Modra <alan@linuxcare.com.au> 2371 2372 * elf32-i386.c (elf_i386_check_relocs): Keep info on relocs copied 2373 for any shared link, not just shared -Bsymbolic. 2374 (elf_i386_size_dynamic_sections): Call elf_i386_discard_copies on 2375 any shared link, and pass link info to it. 2376 (elf_i386_size_dynamic_sections): Update comment. 2377 (elf_i386_discard_copies): Modify to discard relocs for symbols 2378 that have been forced local. 2379 (elf_i386_finish_dynamic_symbol): Don't copy relocs for symbols 2380 that have been forced local. 2381 2382 2000-08-24 Denis Chertykov <denisc@overta.ru> & Nick Clifton <nickc@redhat.com> 2383 2384 * elflink.h (elf_link_add_object_symbols): Allow common 2385 symbols to have an alignment of 1 if explicitly requested, and 2386 not overridden by other definitions. 2387 2388 2000-08-22 Doug Kwan <dkwan@transmeta.com> 2389 2390 * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo. 2391 * coffcode.h (coff_set_flags): Add detection of w65 architecture. 2392 2393 2000-08-22 H.J. Lu <hjl@gnu.org> 2394 2395 * elf-bfd.h (elf_link_hash_table): Add runpath. 2396 2397 * bfd-in.h (bfd_elf_get_runpath_list): New prototype. 2398 * bfd-in2.h: Rebuilt. 2399 2400 * elf.c (_bfd_elf_link_hash_table_init): Initialize the 2401 "runpath" field to NULL. 2402 (bfd_elf_get_runpath_list): New function. 2403 2404 * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and 2405 DT_RUNPATH entries. 2406 2407 2000-08-22 Alexandre Oliva <aoliva@redhat.com> 2408 2409 * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W, 2410 R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them 2411 explicitly. Improve validation of r_type. 2412 2413 2000-08-21 H.J. Lu <hjl@gnu.org> 2414 2415 * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the 2416 dynamic allocated content space. Add a comment to remind us that 2417 one day this ought to be fixed. 2418 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. 2419 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. 2420 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. 2421 2422 2000-08-21 Jason Eckhardt <jle@cygnus.com> 2423 2424 * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate 2425 field with the newly relocated value instead of adding it to the 2426 existing immediate field. 2427 (elf32_i860_relocate_splitn): Likewise. 2428 (elf32_i860_relocate_highadj): Likewise. 2429 2430 2000-08-16 Jason Eckhardt <jle@cygnus.com> 2431 2432 * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it 2433 was previously just a stub). 2434 2435 2000-08-16 Alexandre Oliva <aoliva@redhat.com> 2436 2437 * elflink.c (_bfd_elf_create_got_section): Don't abort(). 2438 Formatting fixes. 2439 (_bfd_elf_create_dynamic_sections): Likewise. 2440 2441 2000-08-16 Andrew Macleod <amacleod@cygnus.com> 2442 2443 * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address 2444 for undefined symbols to be the beginning of the section. 2445 2446 * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate 2447 four extra entries at the beginning of the .rela.plt section. 2448 (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt 2449 section to account for the four reserved entries in the .plt section. 2450 2451 2000-08-15 Geoffrey Keating <geoffk@cygnus.com> 2452 2453 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0 2454 to the list of NOPs we recognize after a branch-and-link. 2455 Use the ori NOP when one is needed. 2456 2457 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation 2458 for large archives. 2459 2460 2000-08-14 Jim Wilson <wilson@cygnus.com> 2461 2462 * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle 2463 EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP. 2464 (elf64_ia64_print_private_bfd_data): Likewise. Also handle 2465 EF_IA_64_ABSOLUTE. 2466 2467 2000-08-11 Alexandre Oliva <aoliva@redhat.com> 2468 2469 * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static. 2470 2471 2000-08-10 Jason Eckhardt <jle@cygnus.com> 2472 2473 * elf32-i860.c (elf32_i860_relocate_section): New function. 2474 (i860_final_link_relocate): New function. 2475 (elf32_i860_relocate_splitn): New function. 2476 (elf32_i860_relocate_pc16): New function. 2477 (elf32_i860_relocate_highadj): New function. 2478 (elf32_i860_howto): Minor adjustments to some relocations. 2479 (elf_info_to_howto_rel): Define. 2480 (elf_backend_relocate_section): Define. 2481 2482 2000-08-10 Nick Clifton <nickc@cygnus.com> 2483 2484 * elf32-arm.h: Fix formatting. 2485 2486 2000-08-10 Bernd Schmidt <bernds@cygnus.co.uk> 2487 2488 * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static. 2489 2490 2000-08-08 Jason Eckhardt <jle@cygnus.com> 2491 2492 * elf32-i860.c (elf32_i860_howto_table): Updated some fields. 2493 2494 2000-08-07 Kazu Hirata <kazu@hxi.com> 2495 2496 * ieee.c (ieee_write_debug_part): Rewrite a comment. 2497 * elf64-ia64.c: Fix a typo. 2498 2499 2000-08-05 Jason Eckhardt <jle@cygnus.com> 2500 2501 * elf32-i860 (elf32_i860_howto_table): New structure. 2502 (lookup_howto): New function. 2503 (elf32_i860_reloc_type_lookup): New function. 2504 (elf32_i860_info_to_howto_rela): New function. 2505 (elf_code_to_howto_index): New structure. 2506 (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela. 2507 (bfd_elf32_bfd_reloc_type_lookup): Re-define as 2508 elf32_i860_reloc_type_lookup. 2509 2510 2000-08-04 Rodney Brown <RodneyBrown@pmsc.com> 2511 2512 * som.c (struct fixup_format): Constify `format'. 2513 (som_hppa_howto_table): Use SOM_HOWTO macro. 2514 (try_prev_fixup, hppa_som_reloc): Decorate unused parameter. 2515 (som_bfd_reloc_type_lookup): Likewise. 2516 (compare_subspaces): Remove unused `count1', `count2'. 2517 (som_begin_writing): Remove unused `total_reloc_size'. 2518 (som_bfd_derive_misc_symbol_info): Decorate unused parameter. 2519 (som_print_symbol, som_bfd_is_local_label_name): Likewise. 2520 (som_set_reloc_info): Constify `cp'. Remove unused `addend'. 2521 (som_find_nearest_line): Decorate unused parameter(s). 2522 (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise. 2523 (som_bfd_link_split_section): Likewise. 2524 2525 2000-08-03 Nick Clifton <nickc@cygnus.com> 2526 2527 * section.c: Restore backed out code. 2528 * elf.c: Restore backed out code. 2529 (copy_private_bfd_data): Fix bug preventing stipped dynamic 2530 binaries from working. 2531 * bfd-in2.h: Regenerate. 2532 2533 2000-08-03 H.J. Lu <hjl@gnu.org> 2534 2535 * section.c: Back out the change made by Nick Clifton 2536 <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic 2537 binaries. 2538 * bfd-in2.h: Likewise. 2539 * elf.c: Likewise. 2540 2541 2000-08-03 Alexandre Oliva <aoliva@redhat.com> 2542 2543 * elf32-sh.c (sh_elf_reloc_loop): Warning removal. 2544 2545 2000-07-31 Jason Eckhardt <jle@cygnus.com> 2546 2547 * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860. 2548 * bfd-in2.h, libbfd.h: Regenerate. 2549 2550 2000-07-31 Nick Clifton <nickc@cygnus.com> 2551 2552 * section.c (struct sec): Add new boolean field 'segment_mark'. 2553 (STD_SECTION): Initialise new field to zero. 2554 2555 * bfd-in2.h: Regenerate. 2556 2557 * elf.c (copy_private_bfd_data): Reorganise section to segment 2558 mapping to cope with moved sections requiring new segments, 2559 and overlapping segments. 2560 (SEGMENT_END): New macro: Return the end address of a segment. 2561 (IS_CONTAINED_BY_VMA): New macro: Determine if a segment 2562 contains a section by comparing their VMA addresses. 2563 (IS_CONTAINED_BY_LMA): New macro: Determine if a segment 2564 contains a section by comparing their LMA addresses. 2565 (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a 2566 section should be included in a segment. 2567 (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment 2568 follows another in memory. 2569 (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two 2570 segments overlap. 2571 2572 2000-07-22 Jason Eckhardt <jle@cygnus.com> 2573 2574 * cpu-i860.c: Added comments. 2575 2576 * elf32-i860.c (TARGET_LITTLE_SYM): Defined to 2577 bfd_elf32_i860_little_vec. 2578 (TARGET_LITTLE_NAME): Defined to "elf32-i860-little". 2579 (ELF_MAXPAGESIZE): Changed to 4096. 2580 2581 * targets.c (bfd_elf32_i860_little_vec): Declaration of 2582 new target. 2583 (bfd_target_vector): Added bfd_elf32_i860_little_vec. 2584 2585 * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added 2586 config for little endian elf32 i860. 2587 (targ_defvec): Define for the new config above 2588 as "bfd_elf32_i860_little_vec". 2589 (targ_selvecs): Define for the new config above 2590 as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec" 2591 2592 * configure.in (bfd_elf32_i860_little_vec): Added recognition 2593 of new target vec. 2594 2595 * configure: Regenerated. 2596 2597 2000-07-27 H.J. Lu <hjl@gnu.org> 2598 2599 * elflink.h (elf_merge_symbol): Take one more argument, 2600 dt_needed, to indicate if the symbol comes from a DT_NEEDED 2601 entry. Don't overide the existing weak definition if dt_needed 2602 is true. 2603 (elf_link_add_object_symbols): Pass dt_needed to 2604 elf_merge_symbol (). 2605 2606 2000-07-27 Nick Clifton <nickc@cygnus.com> 2607 2608 * elflink.h (elf_link_size_reloc_section): Zeroes the section's 2609 allocated contents. 2610 2611 2000-07-25 Geoffrey Keating <geoffk@cygnus.com> 2612 2613 * configure.host (*-*-aix*): AIX has 'long long' always. 2614 2615 * coff-rs6000.c (xcoff_write_one_armap_big): New procedure. 2616 (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps. 2617 (xcoff_write_archive_contents_big): Don't update the offset 2618 of the symbol table, xcoff_write_armap will do it. 2619 2620 2000-07-23 Ulf Carlsson <ulfc@engr.sgi.com> 2621 2622 * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead 2623 of dynobj for SGI_COMPAT checks. 2624 2625 2000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG> 2626 2627 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function. 2628 * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration. 2629 * bfd-in2.h: Regenerate. 2630 2631 2000-07-21 Nick Clifton <nickc@cygnus.com> 2632 2633 * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of 2634 range symbol indices in relocs and issue an error message. 2635 2636 2000-07-20 H.J. Lu <hjl@gnu.org> 2637 2638 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check 2639 info->new_dtags when setting DT_FLAGS_1. It will only be set 2640 by the new linker options. It shouldn't break anything. 2641 2642 2000-07-20 H.J. Lu <hjl@gnu.org> 2643 2644 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1 2645 only if info->new_dtags is true. 2646 2647 2000-07-20 H.J. Lu <hjl@gnu.org> 2648 2649 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set 2650 DT_RUNPATH and DT_FLAGS only if info->new_dtags is true. 2651 2652 2000-07-20 Hans-Peter Nilsson <hp@axis.com> 2653 2654 * Makefile.am (ALL_MACHINES): Add cpu-cris.lo. 2655 (ALL_MACHINES_CFILES): Add cpu-cris.c. 2656 (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo. 2657 (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c. 2658 (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules. 2659 * Makefile.in: Rebuild. 2660 * aclocal.m4: Rebuild. 2661 * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris. 2662 * archures.c (enum bfd_architecture): Add bfd_arch_cris. 2663 (bfd_cris_arch): Declare. 2664 (bfd_archures_list): Add bfd_cris_arch. 2665 * bfd-in2.h: Rebuild. 2666 * config.bfd: (cris-*-*): New target. 2667 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors. 2668 * configure: Rebuild. 2669 * elf.c (prep_headers): Add bfd_arch_cris. 2670 * libbfd.h: Rebuild. 2671 * libaout.h (enum machine_type): Add M_CRIS. 2672 * reloc.c: Add CRIS relocations. 2673 * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare. 2674 (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec. 2675 * cpu-cris.c, aout-cris.c, elf32-cris.c: New files. 2676 * po/POTFILES.in, po/bfd.pot: Regenerate. 2677 2678 2000-07-19 H.J. Lu <hjl@gnu.org> 2679 2680 * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set 2681 DF_TEXTREL if DT_TEXTREL is set. 2682 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. 2683 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. 2684 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. 2685 * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise. 2686 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. 2687 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. 2688 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. 2689 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. 2690 * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise. 2691 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. 2692 2693 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also 2694 set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if 2695 DT_RPATH is set. 2696 Set the DT_FLAGS and DT_FLAGS_1 entries if necessary. 2697 2698 2000-07-19 H.J. Lu <hjl@gnu.org> 2699 2700 * bfd-in.h (bfd_elf_set_dt_needed_soname): New. 2701 * bfd-in2.h: Rebuild. 2702 2703 * elf-bfd.h (elf_obj_tdata): Add dt_soname. 2704 (elf_dt_soname): New. 2705 2706 * elf.c (bfd_elf_set_dt_needed_soname): New. 2707 2708 * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED 2709 entry if the shared object loaded by DT_NEEDED is used to 2710 resolve the reference in a regular object. 2711 2712 2000-07-19 H.J. Lu <hjl@gnu.org> 2713 2714 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG, 2715 DT_DEPAUDIT and DT_AUDIT as strings. 2716 2717 2000-07-19 Nick Clifton <nickc@cygnus.com> 2718 2719 * format.c: Fix formatting. 2720 2721 2000-07-19 H.J. Lu <hjl@gnu.org> 2722 2723 * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM. 2724 2725 2000-07-19 H.J. Lu <hjl@gnu.org> 2726 2727 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW, 2728 DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ, 2729 DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ, 2730 DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1, 2731 DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT, 2732 DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT, 2733 DT_FLAGS_1, DT_USED and DT_CHECKSUM. 2734 2735 2000-07-18 Andrew Cagney <cagney@b1.cygnus.com> 2736 2737 * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move 2738 renamed functions from here... 2739 (assign_section_numbers): Use renamed functions. 2740 (prep_headers): Use renamed functions. 2741 2742 * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here. 2743 * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update. 2744 * bfd-in2.h: Regenerate. 2745 2746 2000-07-18 Ulf Carlsson <ulfc@engr.sgi.com> 2747 2748 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add 2749 parenthesis in if statement. 2750 2751 2000-07-17 Koundinya K <kk@ddeorg.soft.net> 2752 2753 Enable the support for Traditional MIPS. 2754 * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand 2755 return ict_none appropriately for traditional mips targets. 2756 (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips. 2757 (STUB_MOVE): Conditionalize for traditonal mips. 2758 (STUB_LI16): Likewise. 2759 (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making 2760 room for RTPROC header. 2761 (_bfd_mips_elf_modify_segment_map): For a normal mips executable set 2762 the permission for the PT_DYNAMIC as read, write and execute. 2763 (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING 2764 for traditonal mips. 2765 (_bfd_mips_elf_create_dynamic_sections): Add the symbol 2766 _DYNAMIC_LINKING for traditonal mips. 2767 (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP 2768 in case of traditonal mips. 2769 (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT 2770 entry is required. For a function if PLT is not required then set the 2771 corresponding hash table entry to 0. 2772 (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for 2773 traditonal mips. 2774 (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a 2775 shared object set the value to 0. 2776 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol 2777 _DYNAMIC_LINKING for traditonal mips. 2778 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP 2779 for traditonal mips. 2780 2781 2000-07-15 H.J. Lu <hjl@gnu.org> 2782 2783 * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL. 2784 2785 2000-07-12 Charles Wilson <cwilson@ece.gatech.edu> 2786 2787 * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing 2788 out a structure that is BFD_IN_MEMORY. 2789 2790 2000-07-11 Alan Modra <alan@linuxcare.com.au> 2791 2792 * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of 2793 bfd pointer. Print section id instead of bfd pointer for local 2794 syms. Prefix addend with `+' for global syms as well as local. 2795 Correct calculation of name component lengths. 2796 (elf64_hppa_check_relocs): Update call to get_dyn_name. 2797 2798 From David Huggins-Daines <dhd@linuxcare.com> 2799 * elf-hppa.h (elf_hppa_relocate_section): Update calls here too. 2800 * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings. 2801 (elf64_hppa_modify_segment_map): Likewise. 2802 2803 2000-07-11 Andrew Cagney <cagney@b1.cygnus.com> 2804 2805 * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA 2806 addresses to be "naturally" sign extended. Return -1 if unknown. 2807 * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration. 2808 * bfd-in2.h: Regenerate. 2809 2810 2000-07-11 Andrew Cagney <cagney@b1.cygnus.com> 2811 2812 * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32 2813 and ECOF_SIGNED_64 to list ways to extract an offset. 2814 (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in, 2815 ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out): 2816 Update. 2817 * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64. 2818 * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32. 2819 2820 2000-07-11 Andrew Cagney <cagney@b1.cygnus.com> 2821 2822 * elfcode.h (elf_object_p): Use bfd_set_start_address and not 2823 bfd_get_start_address. 2824 (elf_swap_ehdr_in): Sign extend e_entry when applicable. 2825 (elf_swap_ehdr_out): Ditto. 2826 2827 2000-07-10 Alexander Aganichev <AAganichev@hypercom.com> 2828 2829 * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for 2830 compatibility with older binutils. 2831 2832 2000-07-10 Alan Modra <alan@linuxcare.com.au> 2833 2834 * section.c (bfd_make_section_anyway): Start section_id at 0x10. 2835 (STD_SECTION): Avoid negative ids, instead use 0 to 3. 2836 2837 From Ryan Bradetich <rbradetich@uswest.net> 2838 * dwarf1.c (parse_die): Cure signed/unsigned char warnings. 2839 (parse_line_table): Ditto. 2840 (_bfd_dwarf1_find_nearest_line): Ditto. 2841 * syms.c (cmpindexentry): Remove extra `*' from params. 2842 2843 2000-07-09 Koundinya K <kk@ddeorg.soft.net> 2844 2845 * elf32-mips.c (sort_dynamic_relocs): New Function. 2846 (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs 2847 via qsort to sort the dynamic relocations in increasing r_symndx 2848 value. 2849 2850 2000-07-09 Alan Modra <alan@linuxcare.com.au> 2851 2852 * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add 2853 ATTRIBUTE_UNUSED to unused args. 2854 (get_opd): Likewise. 2855 (get_plt): Likewise. 2856 (get_dlt): Likewise. 2857 (get_stub): Likewise. 2858 (elf64_hppa_adjust_dynamic_symbol): Likewise. 2859 (elf64_hppa_link_output_symbol_hook): Likewise. 2860 (elf64_hppa_check_relocs): Delete unused var. 2861 (elf64_hppa_size_dynamic_sections): Likewise. 2862 (elf64_hppa_finalize_opd): Likewise. 2863 (elf64_hppa_finalize_dynreloc): Likewise. 2864 (elf64_hppa_modify_segment_map): Likewise. 2865 (elf64_hppa_finish_dynamic_sections): Likewise. 2866 2867 * elf-hppa.h (elf_hppa_final_write_processing): Add 2868 ATTRIBUTE_UNUSED to unused args. 2869 (elf_hppa_final_link_relocate): Likewise. 2870 (elf_hppa_record_segment_addrs): Add paretheses. 2871 (elf_hppa_relocate_section): Constify dyn_name. 2872 2873 From David Huggins-Daines <dhd@linuxcare.com> 2874 * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and 2875 rearrange case statement so that it gets preferred to 32-bit ones. 2876 2877 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use 2878 asection->id instead of address of asection structure. 2879 (elf32_hppa_size_stubs): Likewise. 2880 2881 * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section 2882 for .init* and .fini*. 2883 2884 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers 2885 and addends used in stub names to 32 bits. 2886 (elf32_hppa_size_stubs): Likewise. 2887 2888 * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend 2889 twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32, 2890 not bfd_put_64. Fix minor comment typo and formatting. 2891 2892 Changes to create multiple linker stubs, positioned immediately 2893 before the section where they are required. 2894 * elf32-hppa.c: Don't include hppa_stubs.h. 2895 (elf32_hppa_stub_hash_entry): Add a pointer to the stub section. 2896 (elf32_hppa_stub_hash_table): Delete. 2897 (elf32_hppa_link_hash_entry): Delete. 2898 (elf32_hppa_link_hash_table): Use plain bfd_hash_table for 2899 stub_hash_table, and store the struct here rather than a pointer. 2900 Delete output_symbol_count. Add offset array. Change 2901 global_value to a bfd_vma. 2902 (elf32_hppa_stub_hash_lookup): Use table instead of table->root. 2903 (elf32_hppa_stub_hash_traverse): Delete. 2904 (elf32_hppa_name_of_stub): Delete. 2905 (elf32_hppa_link_hash_lookup): Delete. 2906 (elf32_hppa_link_hash_traverse): Delete. 2907 (elf32_hppa_stub_hash_table_init): Delete. 2908 (elf32_hppa_size_of_stub): Pass input section and offset rather 2909 than location and calculate location here. Don't pass name as all 2910 stubs are now the same size. 2911 (elf32_hppa_stub_hash_newfunc): Init new fields. 2912 (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table 2913 too. 2914 (elf32_hppa_bfd_final_link_relocate): Cast enums to int before 2915 comparing against ints. Rewrite stub handling code. 2916 (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned. 2917 Case enums to int before comparing against ints. Remove 2918 bfd_reloc_dangerous case. 2919 (elf32_hppa_build_one_stub): Rewrite. 2920 (elf32_hppa_size_one_stub): New function. 2921 (elf32_hppa_build_stubs): Rewrite. 2922 (elf32_hppa_size_stubs): Pass in linker call-back functions. 2923 Rewrite stub-handling specific code. 2924 2925 * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype. 2926 2927 * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo. 2928 2929 * hppa_stubs.h: Delete. 2930 * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h 2931 (elf32-hppa.lo): Remove hppa_stubs.h from dependencies. 7284 * po/POTFILES.in: Regenerate. 7285 * po/bfd.pot: Regenerate. 7286 2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com> 7287 * elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize 7288 anything else but EF_SH64 and EF_SH64_ABI64. 7289 (sh64_elf_merge_private_data): Emit error for anything else but 7290 EF_SH64 and EF_SH64_ABI64. 7291 * config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec 7292 from targ_selvecs. 7293 * configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and 7294 bfd_elf32_sh64l_vec as a temporary measure. 7295 * configure: Regenerate. 7296 2000-11-27 Hans-Peter Nilsson <hpn@cygnus.com> 7297 * cpu-sh.c (arch_info_struct): Include sh5 item 7298 unconditionalized. 7299 * config.bfd (sh64-*-elf*): Do not set targ_cflags. 7300 Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec, 7301 bfd_elf32_shblin_vec and bfd_elf32_shlin_vec. 7302 * elf32-sh64.c: Tweak comments. 7303 (sh64_elf_set_mach_from_flags): Recognize all machine flags that 7304 are proper subsets of SH64 as bfd_mach_sh5. Add EF_SH64_ABI64. 7305 (sh64_elf_copy_private_data_internal): Wrap long line. 7306 (sh64_elf_merge_private_data): Rewrite to allow objects from 7307 SH64 subsets to be linked together. 7308 (INCLUDE_SHMEDIA): Define. 7309 * elf32-sh.c (sh_elf_relocate_section) <local symbol>: 7310 Parenthesize plus-expression inside or-expression. 7311 <global symbol>: Ditto. 7312 (sh_elf_set_mach_from_flags): Remove code refusing 7313 deleted EF_SH64_32BIT_ABI flag. 7314 2000-11-26 Hans-Peter Nilsson <hpn@cygnus.com> 7315 * elf32-sh.c (sh_elf_howto_table) <R_SH_IMM_LOW16_PCREL, 7316 R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16_PCREL, 7317 R_SH_IMM_HI16_PCREL, R_SH_64_PCREL>: Set pcrel_offset to true. 7318 (sh_elf_relocate_section) <local symbol>: Or 1 in 7319 calculation of relocation if sym->st_other & STO_SH5_ISA32. 7320 <global symbol>: Ditto if h->other & STO_SH5_ISA32. 7321 * elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to 7322 relocation. 7323 2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com> 7324 * Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo. 7325 (BFD32_BACKENDS_CFILES): Add elf32-sh64.c. 7326 Regenerate dependencies. 2932 7327 * Makefile.in: Regenerate. 2933 2934 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and 2935 e_nlrsel. 2936 2937 * libhppa.h (hppa_field_adjust): Correct e_nsel case. 2938 2939 * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset 2940 and section name for bfd_reloc_notsupported error message. 2941 (elf32_hppa_bfd_final_link_relocate): Print reasons for returning 2942 bfd_reloc_notsupported. 2943 (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd. 2944 2945 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle 2946 undefined weak symbols for all relocs. 2947 (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch 2948 offsets are relative to one past the delay slot. 2949 (elf32_hppa_size_stubs): Account for reloc addend when calculating 2950 branch destination. Put addend into stub name too. 2951 (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and 2952 adjust by 8 when deciding whether a linker stub is needed. Put 2953 addend into stub name as for above. 2954 2955 * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on 2956 various args and vars. 2957 (elf32_hppa_bfd_final_link_relocate): Here too. 2958 (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for 2959 inner block var to avoid shadowing. 2960 2961 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg 2962 unsigned. 2963 * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto. 2964 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto. 2965 (elf_hppa_fake_sections): Rename local var to avoid shadowing. 2966 2967 * libhppa.h: Change practically all unsigned ints to plain ints. 2968 Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for 2969 prototypes. 2970 2971 From Ryan Bradetich <rbradetich@uswest.net> 2972 * libhppa.h (hppa_opcode_type): New enum to replace #define's. 2973 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to 2974 suit above. 2975 From David Huggins-Daines <dhd@linuxcare.com> 2976 * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants 2977 to the new OP_* ones. 2978 2979 * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on 2980 error exit. Bail out earlier on plabel relocs that we aren't 2981 interested in. Don't tell elf32_hppa_stub_hash_lookup to copy 2982 string, and then don't free our copy. 2983 (elf32_hppa_build_one_stub): Make insn unsigned int. 2984 2985 * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only 2986 available with BL, not BE and BLE. 2987 2988 * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example 2989 code for elf arg relocs. 2990 (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local 2991 argument with elf_link_hash_entry h. Handle undefined weak 2992 symbols. Move $global$ lookup from here... 2993 (elf32_hppa_relocate_section): ...to here. Return correct error 2994 message for non-handled relocs. 2995 (elf32_hppa_size_of_stub): Correctly test branch range. Previous 2996 wrong test was -0x3ffff to +0x40000. 2997 2998 * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R, 2999 R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches; 3000 Handle them as such. 3001 (elf_hppa_relocate_insn): Fix a typo. 3002 3003 * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete. 3004 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, 3005 assemble_17, assemble_21): Delete. 3006 Supply defines for all 64 possible opcodes. 3007 (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode 3008 formats. Handle COMICLR. 3009 (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11, 3010 -10, -16, 16, 22. 3011 3012 * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite. 3013 (elf32_hppa_bfd_final_link_relocate): Major rewrite. 3014 (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls 3015 to suit. 3016 (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all 3017 the local syms - did this code get deleted accidentally? Ignore 3018 undefined and undefweak syms. 3019 3020 * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost 3021 block. Use it instead of elf64_hppa_hash_table (info). 3022 (elf_hppa_final_link_relocate): Use hppa_info instead of 3023 elf64_hppa_hash_table (info). 3024 3025 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, 3026 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. 3027 (hppa_rebuild_insn): Mask immediate bits here instead. 3028 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. 3029 3030 2000-07-08 Alan Modra <alan@linuxcare.com.au> 3031 3032 * section.c (struct sec): Add id field. Tidy comment formatting. 3033 (bfd_make_section_anyway): Set id. 3034 (STD_SECTION): Init id too. 3035 Change CONST to const throughout. 3036 * archures.c (bfd_arch_info): Tidy comment. 3037 (bfd_arch_list): Change a CONST to const. 3038 * libbfd-in.h: Tidy comments and replace CONST with const. 3039 * elf-bfd.h: Likewise. 7328 * archures.c: Add bfd_mach_sh5. 7329 * config.bfd: Map targ_cpu sh* to bfd_sh_arch. 7330 Handle sh64-*-elf*. Set targ_cflags to -DINCLUDE_SHMEDIA. 7331 * configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec. 7332 * configure: Regenerate. 7333 * reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5, 7334 BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6, 7335 BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2, 7336 BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8, 7337 BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16, 7338 BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16, 7339 BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16, 7340 BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16, 7341 BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations. 7342 * cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link 7343 in item for SH5. 7344 * elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items 7345 for SHmedia relocs. 7346 [INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs. 7347 [INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call 7348 shmedia_prepare_reloc, goto final_link_relocate if it returns 7349 non-zero, else fail as before. 7350 (sh_elf_set_mach_from_flags): Provide function only if not defined 7351 as macro. Do not recognize objects with EF_SH64_32BIT_ABI set. 7352 (sh_elf_set_private_flags): Provide function only if not defined 7353 as a macro. 7354 (sh_elf_copy_private_data): Similar. 7355 (sh_elf_merge_private_data): Similar. 7356 * section.c (SEC_SH_ISA_SHMEDIA): New. 7357 * targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare. 7358 * elf32-sh64.c: New file. 3040 7359 * libbfd.h: Regenerate. 3041 7360 * bfd-in2.h: Regenerate. 3042 * libcoff.h: Regenerate. 3043 3044 2000-07-07 DJ Delorie <dj@redhat.com> 3045 3046 * archive.c (_bfd_write_archive_contents): Add an informative 3047 comment. 3048 3049 2000-07-06 Kazu Hirata <kazu@hxi.com> 3050 3051 * srec.c: Fix formatting. 3052 3053 2000-06-05 DJ Delorie <dj@redhat.com> 3054 3055 * MAINTAINERS: new 3056 3057 2000-07-04 Alexandre Oliva <aoliva@redhat.com> 3058 3059 * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol 3060 value of PC-relative offsets. 3061 3062 2000-07-03 Jim Wilson <wilson@cygnus.com> 3063 3064 * elf64-alpha.c (alpha_elf_size_info): New. 3065 (elf_backend_size_info): Define to alpha_elf_size_info. 3066 * elfcode.h (elf_size_info): Change hash bucket size to 4. 3067 3068 2000-07-03 Ulf Carlsson <ulfc@engr.sgi.com> 3069 3070 * elf32-mips.c: Include elf32-target.h again for the traditional 3071 MIPS targets. 3072 3073 2000-07-03 Marek Michalkiewicz <marekm@linux.org.pl> 3074 3075 * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup): 3076 Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings. 3077 (avr_info_to_howto_rela): Likewise. 3078 (elf32_avr_gc_mark_hook): Likewise. 3079 (elf32_avr_gc_sweep_hook): Likewise. 3080 (elf32_avr_relocate_section): Likewise. 3081 3082 2000-07-03 Mark Elbrecht <snowball3@bigfoot.com> 3083 3084 * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into 3085 an external symbol for a non-shared, non-relocatable link. 3086 3087 2000-07-03 Nick Clifton <nickc@redhat.com> 3088 3089 * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol 3090 is an external symbol. 3091 (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak 3092 external symbol. 3093 3094 2000-07-03 Kazu Hirata <kazu@hxi.com> 3095 3096 * reloc16.c: Fix formatting. 3097 3098 2000-07-01 Koundinya K <kk@ddeorg.soft.net> 3099 3100 * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4* 3101 to add a new target for traditional mips i.e 3102 bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec. 3103 * configure.in: Likewise. 3104 * configure: Rebuild. 3105 * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in 3106 bfd_target_vector. 3107 (bfd_elf32_tradlittlemips_vec): Likewise. 3108 * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test 3109 to see that elfNN_bed does not get redefined even if the target file 3110 is included twice for a chip. See elf32-mips.c. 3111 3112 2000-07-01 Alan Modra <alan@linuxcare.com.au> 3113 3114 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed 3115 (CLEANFILES): Add DEPA. 7361 * po/POTFILES.in: Regenerate. 7362 * po/bfd.pot: Regenerate. 7363 * bfd-in2.h: Regenerate. 7364 * libbfd.h: Regenerate. 7365 7366 2002-02-07 Daniel Jacobowitz <drow@mvista.com> 7367 7368 * bfd-in.h: Update <stdbool.h> check to only see if <stdbool.h> has 7369 been included, not drag it in. 7370 * bfd-in2.h: Regenerate. 7371 7372 2002-02-06 H.J. Lu (hjl@gnu.org) 7373 7374 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update 7375 the mach and ISA fields if necessary. 7376 7377 2002-02-06 Nick Clifton <nickc@cambridge.redhat.com> 7378 7379 * coffcode.h (coff_set_arch_mach_hook): Select the highest known 7380 ARM architecture when an F_ARM_5 flag is detected, since we cannot 7381 be sure exactly which architecture this represents. 7382 7383 2002-02-05 Nick Clifton <nickc@redhat.com> 7384 7385 * po/tr.po: Updated translation. 7386 7387 2002-02-05 Alan Modra <amodra@bigpond.net.au> 7388 7389 From Jimi X <jimix@watson.ibm.com> 7390 * archures (bfd_mach_ppc64): Define. 7391 (bfd_powerpc_arch): Rename to bfd_powerpc_archs. 7392 (bfd_powerpc_arch): Define. 7393 * bfd-in2.h: Regenerate. 7394 * cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs. 7395 (bfd_powerpc_arch): Move to tail of bfd_powerpc_archs. 7396 (bfd_powerpc_archs): Add default powerpc64 arch. 7397 7398 2002-02-05 Alan Modra <amodra@bigpond.net.au> 7399 7400 * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs 7401 against section syms in readonly sections. Don't do the global 7402 sym check if we find one. 7403 * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise. 7404 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise. 7405 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. 7406 * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise. 7407 (elf_s390_grok_prstatus): Add missing prototype. 7408 7409 2002-02-04 Hans-Peter Nilsson <hp@bitrange.com> 7410 7411 * elf64-mmix.c (mmix_dump_bpo_gregs): New function. 7412 (mmix_elf_check_common_relocs) <case R_MMIX_BASE_PLUS_OFFSET>: 7413 Call bfd_get_section_by_name only once. Initialize 7414 bpodata->n_bpo_relocs_this_section. 7415 (_bfd_mmix_prepare_linker_allocated_gregs): Remove comment 7416 referring to DSOs. 7417 (bpo_reloc_request_sort_fn): Don't use difference of values as 7418 return-value. 7419 7420 2002-02-02 David O'Brien <obrien@FreeBSD> 7421 7422 * configure.in: Tweak the FreeBSD 4.x recognition more. Only treat 7423 version 4.5 and later the same as 5-CURRENT. 7424 * configure: Re-generate. 7425 7426 2002-02-02 Jason Thorpe <thorpej@wasabisystems.com> 7427 7428 * config.bfd (hppa*-*-netbsd*): New target. 7429 7430 2002-01-31 Philipp Thomas <pthomas@suse.de> 7431 7432 * coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR 7433 to front of message. Unify messages with elf32-arm.h. Use 7434 commas where neccessary. 7435 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase 7436 ERROR in messages. Unify messages with coff-arm.c. Correct 7437 VFP/FPA error message. 7438 (elf32_arm_print_private_bfd_data): Don't mark APCS-26 and 7439 APCS-32 for translation. 7440 7441 2002-02-01 Hans-Peter Nilsson <hp@bitrange.com> 7442 7443 Perform on-demand global register allocation from 7444 R_MMIX_BASE_PLUS_OFFSET relocs. 7445 * elf64-mmix.c (struct bpo_reloc_section_info, struct 7446 bpo_reloc_request, struct bpo_greg_section_info): New. 7447 (mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook, 7448 bpo_reloc_request_sort_fn, mmix_elf_relax_section, 7449 _bfd_mmix_check_all_relocs, 7450 _bfd_mmix_prepare_linker_allocated_gregs, 7451 _bfd_mmix_finalize_linker_allocated_gregs): New functions. 7452 (elf_mmix_howto_table): Correct src_mask for most relocs. 7453 (mmix_elf_perform_relocation) <case R_MMIX_BASE_PLUS_OFFSET>: New 7454 case. 7455 (mmix_final_link_relocate) <case R_MMIX_BASE_PLUS_OFFSET>: New 7456 case. Fix typo in comment. New label do_mmix_reloc. 7457 (mmix_elf_check_relocs): Abuse bfd_link_info member base_file to 7458 store first object file with a base-plus-offset reloc. Call 7459 mmix_elf_check_common_relocs for the part common with mmo. 7460 (mmix_elf_final_link): Write out linker-allocated register 7461 contents section. 7462 (elf_backend_gc_sweep_hook): Define. 7463 (bfd_elf64_bfd_relax_section): Define. 7464 7465 * mmo.c: Don't include <ctype.h> 7466 (mmo_init): Correct init-once logic. 7467 7468 2002-02-01 Tom Rix <trix@redhat.com> 7469 7470 * config.bfd: Conditionally support <aiaff> for pre AIX 4.3. 7471 7472 2002-02-01 Alan Modra <amodra@bigpond.net.au> 7473 7474 * Makefile.am: Run "make dep-am" 3116 7475 * Makefile.in: Regenerate. 3117 7476 3118 2000-06-30 DJ Delorie <dj@cygnus.com> 3119 3120 * peicode.h (coff_swap_filehdr_in): can't use e_magic because we 3121 can't assume the PE header is at 0x80. 3122 3123 2000-06-29 Mark Elbrecht <snowball3@bigfoot.com> 3124 3125 * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH. 3126 3127 2000-06-28 Mark Elbrecht <snowball3@bigfoot.com> 3128 3129 * go32stub.h: Update stub. 3130 3131 2000-06-26 Marek Michalkiewicz <marekm@linux.org.pl> 3132 3133 * archures.c (bfd_mach_avr5): Define. 3134 * bfd-in2.h (bfd_mach_avr5): Define. 3135 * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to 3136 bfd_mach_avr5, add bfd_mach_avr4. Update comments. 3137 (compatible): Update comment. Add missing test. 3138 * elf32-avr.c (avr_final_link_relocate): Support 8K wrap 3139 for avr2 and avr4. Simplify 8K wrap code. 3140 (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5. 3141 (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5. 3142 3143 2000-06-26 Kazu Hirata <kazu@hxi.com> 3144 3145 * coff-h8300.c: Fix formatting. 3146 * cpu-h8300.c: Likewise. 3147 3148 2000-06-24 Alexandre Oliva <aoliva@redhat.com> 3149 3150 * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)' 3151 for local symbols whose names are unknown. 3152 3153 2000-06-22 Alan Modra <alan@linuxcare.com.au> 3154 3155 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we 3156 find one. 7477 2002-01-31 David O'Brien <obrien@FreeBSD> 7478 7479 * configure.in: Recognize the differences in core files from FreeBSD 7480 4.{0,1} and later versions of 4.x. This treats 4.2+ the same as 7481 5-CURRENT. 7482 * configure: Regenerate. 7483 7484 2002-01-31 Ivan Guzvinec <ivang@opencores.org> 7485 7486 * coff-or32.c: New file. 7487 * cpu-or32.c: New file. 7488 * elf32-or32.c: New file. 7489 * archures.c: Add support for or32. 7490 * targets.c: Add support for or32. 7491 * bfd-in2.h: Regenerate. 7492 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags, 7493 coff_write_object_contents): Add support for or32. 7494 * config.bfd: Add target. 7495 * configure.in: Add support for or32. 7496 * configure: Regenerate. 7497 * Makefile.am: Add support for or32. 3157 7498 * Makefile.in: Regenerate. 3158 * doc/Makefile.in: Regenerate. 3159 3160 2000-06-20 H.J. Lu <hjl@gnu.org> 3161 3162 * Makefile.am: Rebuild dependency. 3163 * Makefile.in: Rebuild. 3164 3165 2000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 3166 3167 * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function. 3168 (elf_backend_copy_indirect_symbol): Map to the new function. 3169 3170 2000-06-20 Alan Modra <alan@linuxcare.com.au> 3171 3172 * archive.c (normalize): Correct pointer comparison when checking 3173 for backslashes. 3174 (bfd_bsd_truncate_arname): Likewise. 3175 (bfd_gnu_truncate_arname): Likewise. 3176 3177 2000-06-20 Ulf Carlsson <ulfc@engr.sgi.com> 3178 3179 * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual 3180 sections elf_{text,data}_{section,symbol}. 3181 * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove. 3182 (_bfd_mips_elf_hide_symbol): New function. 3183 (elf_backend_hide_symbol): Map to the new function. 3184 (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD 3185 definitions of mips_elf_{text,data}_{section,symbol}. 3186 (mips_elf_local_relocation_p): Try to find the direct symbol 3187 based on new check_forced argument. 3188 (mips_elf_calculate_relocation): Use new version of 3189 mips_elf_local_relocation_p. 3190 (mips_elf_relocate_section): Likewise. 3191 (_bfd_mips_elf_relocate_section): Likewise. 3192 (mips_elf_sort_hash_table): Only assert that have enough GOT 3193 space. 3194 (mips_elf_got16_entry): Match all 32 bits to the existing GOT 3195 entry if the relocation based on the new external argument. 3196 (mips_elf_create_dynamic_relocation): Assert that we have a 3197 section contents allocated where we can swap out the dynamic 3198 relocations. 3199 (mips_elf_calculate_relocation): Find the real hash-table entry 3200 correctly by using h->root.root.type. Only create a dynamic 3201 relocation entry if the symbol is defined in a shared library. 3202 Create an external GOT entry for the GOT16 relocation if the 3203 symbol was forced local. 3204 (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a 3205 dynamic index if the symbol was forced local. 3206 3207 2000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 3208 3209 * elf32-mips.c: Fix typos in comments. 3210 3211 2000-06-19 Mark Kettenis <kettenis@gnu.org> 3212 3213 * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef 3214 CORE_VERSION_1. 3215 3216 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr> 3217 3218 * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild. 3219 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS, 3220 BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files. 3221 * configure.in (bfd_elf32_m68hc12_vec): Recognize. 3222 (bfd_elf32_m68hc11_vec): Likewise. 3223 * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11. 3224 Supports 68hc11 & 68hc12 at the same time. 3225 * targets.c (bfd_elf32_m68hc12_vec): Declare and put in 3226 bfd_target_vector. 3227 (bfd_elf32_m68hc11_vec): Likewise. 3228 * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11. 3229 * archures.c (bfd_m68hc12_arch): Define and register in global list 3230 (bfd_m68hc11_arch): Likewise. 3231 * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8, 3232 BFD_RELOC_M68HC11_3B): Define. 3233 * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support. 3234 * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support. 3235 3236 2000-06-18 Ulf Carlsson <ulfc@engr.sgi.com> 3237 3238 * elf_bfd.h (struct elf_backend_data): Add info argument to 7499 * po/SRC-POTFILES.in: Add or32 files. 7500 * po/bfd.pot: Regenerate. 7501 7502 2002-01-31 Nick Clifton <nickc@cambridge.redhat.com> 7503 Don Lindsay <lindsayd@cisco.com> 7504 7505 * elf32-mips.c (mips_elf_calculate_relocation): Replace 'return 7506 false' with a return of a bfd_reloc_ error code. 7507 7508 2002-01-31 Hans-Peter Nilsson <hp@axis.com> 7509 7510 * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't 7511 unexport unreferenced symbols when --export-dynamic. Call 7512 _bfd_elf_strtab_delref when unexporting. 7513 7514 2002-01-30 Daniel Jacobowitz <drow@mvista.com> 7515 7516 * bfd-in.h: Include <stdbool.h> if it is available. 7517 * bfd-in2.h: Regenerated. 7518 7519 2002-01-31 Alan Modra <amodra@bigpond.net.au> 7520 7521 * elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should 7522 not go via the plt. 7523 7524 2002-01-30 Nick Clifton <nickc@cambridge.redhat.com> 7525 7526 * archures.c: Tidy up formatting of embedded comments. 7527 * bfd.c: Tidy up formatting of embedded comments. 7528 * bfd-in.h: Fix formatting of comments. 7529 * reloc.c: Tidy up formatting of ordinary & embedded comments. 7530 * section.c: Tidy up formatting of embedded comments. 7531 * syms.c: Tidy up formatting of embedded comments. 7532 * targets.c: Tidy up formatting of embedded comments. 7533 7534 * bfd-in2.h: Regenerate. 7535 7536 2002-01-30 Nick Clifton <nickc@cambridge.redhat.com> 7537 7538 * vms-tir.c (cmd_name): New function. 7539 (tir_cmd_name): New function. 7540 (etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name(). 7541 (tir_opr, tir_ctl, tir_cmd): use tir_cmd_name(). 7542 Fix formatting. 7543 7544 * peXXigen.c (pe_print_idata): Rearrange message to aid in 7545 translation. 7546 (pe_print_pdata): Rearrange message to aid in translation. 7547 7548 * libbfd.c (warn_deprecated): Rearrange error message to aid in 7549 translation. 7550 7551 * ihex.c (ihex_write_object_contents): Fix spelling typo. 7552 7553 * ieee.c (ieee_slurp_external_symbols): Remove spurious space. 7554 7555 * elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error 7556 message to aid in translation. 7557 7558 * elf64-mmix.c (mmix_final_link_relocate): Rearrange error message 7559 to aid in translation. 7560 7561 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo. 7562 7563 2002-01-30 Philipp Thomas <pthomas@suse.de> 7564 7565 * coff-arm.c, elf32-elf.h: Unify messages. 7566 7567 2002-01-30 Nick Clifton <nickc@redhat.com> 7568 7569 * po/sv.po: Updated translation. 7570 7571 2002-01-30 Philipp Thomas <pthomas@suse.de> 7572 7573 * dwarf2.c (read_abbrev): Use full section name in error message. 7574 (decode_line_info): Likewise. 7575 7576 * elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging 7577 message. 7578 7579 2002-01-30 Alan Modra <amodra@bigpond.net.au> 7580 7581 * elf64-ppc.c (func_desc_adjust): Only provide missing function 7582 descriptor symbols for undefined function code syms. Clear 7583 ELF_LINK_NON_ELF so that they can stay weak. 7584 7585 2002-01-29 Chris Demetriou <cgd@broadcom.com> 7586 Mitch Lichtenberg <mpl@broadcom.com> 7587 7588 * bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype. 7589 * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function 7590 to handle 32-bit ELF embedded reloc (ld --embedded-relocs) 7591 generation. 7592 * bfd-in2.h: Regenerate. 7593 7594 2002-01-29 Chris Demetriou <cgd@broadcom.com> 7595 7596 * elf32-mips.c: Add additional comments about HI16 relocation 7597 processing. 7598 (_bfd_mips_elf_hi16_reloc): Don't subtract address here for 7599 pc-relative relocations. (Reverts change made on 2001-10-31.) 7600 (_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here 7601 for pc-relative relocations. 7602 (mips_elf_calculate_relocation): Add a comment about a kludge 7603 in the R_MIPS_GNU_REL_HI16 handling. 7604 (_bfd_mips_elf_relocate_section): Implement that kludge; 7605 adjust pc-relative HI16 relocation for difference in HI16 and 7606 LO16 addresses, since it can't easily be done in 7607 mips_elf_calculate_relocation. 7608 7609 2002-01-29 Martin Schwidefsky <schwidefsky@de.ibm.com> 7610 7611 * elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32 7612 relocations with PC32 relocations for undefined or weak symbols. 7613 * elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise. 7614 * elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise. 7615 7616 2002-01-28 Jason Thorpe <thorpej@wasabisystems.com> 7617 7618 * elfcore.h (elf_core_file_p): Improve comment for last change. 7619 7620 2002-01-27 Daniel Jacobowitz <drow@mvista.com> 7621 7622 * configure: Regenerated. 7623 7624 2002-01-27 Jason Thorpe <thorpej@wasabisystems.com> 7625 7626 * elfcore.h (elf_core_file_p): Set the machine architecture 7627 before processing the program headers. 7628 7629 2002-01-26 Hans-Peter Nilsson <hp@bitrange.com> 7630 7631 * configure.in <64-bit configuration>: If using gcc, check and 7632 emit error for egcs-1.1.2. 7633 * configure: Regenerate. 7634 7635 2002-01-26 Egor Duda <deo@logos-m.ru> 7636 7637 * elf.c (elfcore_grok_win32pstatus): Copy only as much information 7638 as possible to avoid stack corruption. 7639 7640 2002-01-26 Richard Henderson <rth@redhat.com> 7641 7642 * elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext 7643 for non-allocated sections. 7644 7645 2002-01-25 Mark Kettenis <kettenis@gnu.org> 7646 7647 * elf.c (elfcore_write_prstatus): Make sure we pass the address of 7648 prstat.pr_reg even if it is a struct. 7649 7650 2002-01-25 Steve Ellcey <sje@cup.hp.com> 7651 7652 * elfxx-ia64.c: Reset AIX vector function overrides for HP-UX. 7653 7654 2002-01-25 Philipp Thomas <pthomas@suse.de> 7655 7656 * coffgen.c (coff_print_symbol): Don't mark info message 7657 for translation. 7658 7659 2002-01-25 Nick Clifton <nickc@redhat.com> 7660 7661 * po/fr.po: Updated translation. 7662 * po/es.po: Updated translation. 7663 7664 2002-01-25 Philipp Thomas <pthomas@suse.de> 7665 7666 * coff-alpha.c (alpha_relocate_section): Unify warning message 7667 for GP relative relocations without GP defined. 7668 * coff-mips.c (mips_relocate_section): Likewise. 7669 7670 2002-01-25 Alan Modra <amodra@bigpond.net.au> 7671 7672 * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid 7673 unsigned overflow when new_offset < old_offset. 7674 7675 2002-01-24 Philipp Thomas <pthomas@suse.de> 7676 7677 * bfd.c (_bfd_abort): Fix typo. 7678 7679 2002-01-23 Richard Henderson <rth@redhat.com> 7680 7681 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress 7682 plt entries for undefweak symbols. 7683 7684 2002-01-23 Steve Ellcey <sje@cup.hp.com> 7685 7686 * targets.c (bfd_elf32_ia64_hpux_big_vec): Add to DEFAULT_VECTOR. 7687 (bfd_elf64_ia64_hpux_big_vec): Ditto. 7688 (bfd_elf32_h8300_vec): Ditto. 7689 7690 2002-01-23 Alan Modra <amodra@bigpond.net.au> 7691 7692 * elf64-ppc.c: Remove stale part of ABI comment. 7693 (NO_OPD_RELOCS): Define. 7694 (ppc64_elf_check_relocs): Use it. 7695 (ppc64_elf_relocate_section): Here too. 7696 (build_one_stub): Don't point function syms at the stub. Instead, 7697 hijack plt.offset. 7698 (ppc64_elf_relocate_section): Check whether REL24 relocs should 7699 really go to the stub. Make all dynamic relocs in opd against 7700 locals. 7701 (ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of 7702 plt.offset. 7703 7704 2002-01-22 Richard Henderson <rth@redhat.com> 7705 7706 * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp. 7707 7708 2002-01-22 Alan Modra <amodra@bigpond.net.au> 7709 7710 * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of 7711 TOC_BASE_OFF adjustment. 7712 7713 * Makefile.am: Run "make dep-am". 7714 * Makefile.in: Regenerate. 7715 * po/SRC-POTFILES.in: Regenerate. 7716 7717 2002-01-22 John David Anglin <dave@hiauly1.hia.nrc.ca> 7718 7719 * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new 7720 host defines. 7721 7722 2002-01-21 Hans-Peter Nilsson <hp@axis.com> 7723 7724 * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GOTREL>: 7725 Check for and emit error if sgot is NULL at this point. 7726 7727 2002-01-21 Jason Thorpe <thorpej@wasabisystems.com> 7728 7729 * config.bfd (ia64*-*-netbsd*): New target. 7730 7731 2002-01-21 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at> 7732 7733 * som.c (som_write_space_strings): Comment typo fix. 7734 7735 2002-01-21 Alan Modra <amodra@bigpond.net.au> 7736 7737 * elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and 7738 is_func_descriptor fields. 7739 (link_hash_newfunc): Init them. 7740 (ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a 7741 dot are candidates for plt entries. When processing .opd relocs, 7742 set function descriptor strings to point inside function code 7743 string, and set new ppc_link_hash_entry fields. 7744 (ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs. 7745 (ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with 7746 function descriptors. It's now done in.. 7747 (func_desc_adjust): New. 7748 (ppc64_elf_func_desc_adjust): New. 7749 (define elf_backend_always_size_sections): Define. 7750 (ppc64_elf_hide_symbol): New. 7751 (define elf_backend_hide_symbol): Define. 7752 (allocate_dynrelocs): Remove code looking up function descriptors 7753 as that has been done earlier. 7754 (ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash 7755 table. 7756 (ppc64_elf_finish_dynamic_symbol): Likewise. Remove code looking 7757 up function descriptor. 7758 (build_one_stub): Look up the function code sym. Check for 7759 invalid plt offsets. 7760 (ppc64_elf_relocate_section): Tweak calls to undefined weak syms. 7761 Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs. 7762 7763 * elf-bfd.h (elf_backend_data <elf_backend_hide_symbol>): Add 7764 boolean param. 7765 (_bfd_elf_link_hash_hide_symbol): Likewise. 7766 * elflink.h (elf_link_add_object_symbols): Adjust call to 3239 7767 elf_backend_hide_symbol. 3240 (_bfd_elf_link_hash_hide_symbol): Likewise. 3241 * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise. 3242 * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise. 3243 * elflink.h (elf_link_add_object_symbols): Likewise. 3244 (elf_link_assign_sym_version): Likewise. 3245 3246 2000-06-18 H.J. Lu <hjl@gnu.org> 3247 3248 * coff-i386.c (coff_i386_reloc): Don't return in case of 3249 output_bfd == (bfd *) NULL if COFF_WITH_PE is defined. 3250 Compensate PE relocations when linking with non-PE object 3251 files to generate a non-PE executable. 3252 3253 2000-06-17 Ulf Carlsson <ulfc@engr.sgi.com> 3254 3255 * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write 3256 GOT entries if we're doing a static link or -Bsymbolic link. 3257 3258 2000-06-15 Ulf Carlsson <ulfc@engr.sgi.com> 3259 3260 * elflink.h (elf_link_adjust_relocs): Check for and call backend 3261 specifific swap_reloc_{in,out} and swap_reloca_{in,out} if 3262 available. 3263 (elf_link_output_relocs): Likewise. 3264 (elf_reloc_link_order): Likewise. 3265 3266 2000-06-16 Nicholas Duffek <nsd@redhat.com> 3267 3268 * archures.c (enum bfd_architecture): #define constants for 3269 PowerPc and RS6000 machine numbers. 3270 * bfd-in2.h: Regenerate. 3271 * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch 3272 to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc 3273 and RS6000 machine numbers using #defined constants from 3274 archures.c. 3275 * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000 3276 machine numbers using #defined constants from archures.c. Add 3277 entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify 3278 64-bit words in 620 entry. 3279 * cpu-rs6000.c (arch_info_struct): Create with entries for RS1, 3280 RSC, and RS2. 3281 (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k). 3282 3283 2000-06-16 Nicholas Duffek <nsd@cygnus.com> 3284 3285 * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64. 3286 * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field. 3287 * libcoff.h (struct xcoff_tdata): Define xcoff64 field. 3288 3289 2000-06-16 Nicholas Duffek <nsd@redhat.com> 3290 3291 * bfd-in.h (bfd_family_coff): Define. 3292 * bfd-in2.h: Regenerate. 3293 * coffgen.c (coff_count_linenumbers, coff_symbol_from, 3294 coff_find_nearest_line): Check COFFness using bfd_family_coff() 3295 instead of bfd_target_coff_flavour. 3296 * cofflink.c (_bfd_coff_final_link): Likewise. 3297 * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to 3298 exclude XCOFF files. 3299 * reloc.c (bfd_perform_relocation, bfd_install_relocation): 3300 Likewise. 3301 * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour. 3302 * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour. 3303 * xcofflink.c (XCOFF_XVECP): Delete. 3304 (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol, 3305 bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc, 3306 bfd_xcoff_record_link_assignment, 3307 bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with 3308 check for bfd_target_xcoff_flavour. 3309 3310 2000-06-16 Nicholas Duffek <nsd@redhat.com> 3311 3312 * rs6000-core.c: Support 64-bit core files, support pre-4.3 core 3313 files on AIX 4.3. 3314 (read_hdr): New function. 3315 (rs6000coff_core_p): Store mstsave or __context64 struct instead 3316 of trying to extract individual registers. Set abfd->arch_info 3317 to match the architecture that created the core file. 3318 (rs6000coff_get_section_contents): Delete. 3319 * xcoff-target.h (rs6000coff_get_section_contents): Delete. 3320 3321 2000-06-14 H.J. Lu <hjl@gnu.org> 3322 3323 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec) 3324 is NULL. 3325 3326 2000-06-13 H.J. Lu <hjl@gnu.org> 3327 7768 (elf_fix_symbol_flags): Likewise. 7769 (elf_link_assign_sym_version): Likewise. Use bfd_malloc rather 7770 than bfd_alloc. 7771 * elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param. 7772 Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref. 7773 * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise. 7774 (clobber_millicode_symbols): Adjust to suit new hide_symbol. 7775 * elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param 7776 and adjust to suit. 7777 * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call 7778 _bfd_elf_link_hash_hide_symbol rather than duplicating code. 7779 * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise. 7780 7781 2002-01-18 Alan Modra <amodra@bigpond.net.au> 7782 7783 * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a 7784 dynamic function descriptor symbol, not the associated function 7785 symbol. 7786 7787 2002-01-17 Eric Christopher <echristo@redhat.com> 7788 7789 * elf32-mips.c (mips_elf_calculate_relocation): Fix typo. 7790 7791 2002-01-17 Nick Clifton <nickc@cambridge.redhat.com> 7792 7793 * po/bfd.pot: Regenerate. 7794 * po/fr.po: Regenerate. 7795 7796 2002-01-17 Alan Modra <amodra@bigpond.net.au> 7797 7798 * elf-bfd.h (elf_backend_data <elf_backend_section_from_bfd_section>): 7799 Remove "Elf_Internal_Shdr *" param. 7800 (_bfd_mips_elf_section_from_bfd_section): Ditto. 7801 * elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto. 7802 * elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto. 7803 * elf32-v850.c (v850_elf_section_from_bfd_section): Ditto. 7804 * elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto. 7805 * elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto. 7806 * elf.c (_bfd_elf_section_from_bfd_section): Allow backend 7807 function to override special sections. Remove hdr arg from 7808 backend call, and don't loop. 7809 7810 2002-01-16 Eric Christopher <echristo@redhat.com> 7811 7812 * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp 7813 on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of 7814 relocations requiring gp0 and gp. 7815 7816 2002-01-16 Richard Earnshaw <rearnsha@arm.com> 7817 7818 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle 7819 EF_ARM_VFP_FLOAT. 7820 (elf32_arm_print_private_bfd_data): Likewise. 7821 7822 2002-01-16 Nick Clifton <nickc@cambridge.redhat.com> 7823 7824 * po/tr.po: Import new version. 7825 7826 2002-01-16 Alan Modra <amodra@bigpond.net.au> 7827 7828 * elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs. 7829 (ppc64_elf_reloc_type_lookup): Use proper CTOR reloc. 7830 (ORI_R0_R0_0): Correct. 7831 7832 2002-01-16 Alan Modra <amodra@bigpond.net.au> 7833 7834 * elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE 7835 when plt_not_loaded. 7836 * elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to 7837 clear .plt SEC_CODE here. Create .stub and correct .glink flags. 7838 (PLT_INITIAL_ENTRY_SIZE): Set to 24. 7839 (ppc64_elf_glink_code): Delete. 7840 (PPC64_ELF_GLINK_SIZE): Delete. 7841 (ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11, 7842 BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0, 7843 ORI_R0_R0_0): Define. 7844 (PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define. 7845 (struct ppc_link_hash_table): Add sstub and plt_overflow. 7846 (ppc64_elf_link_hash_table_create): Init them. 7847 (ppc64_elf_check_relocs <R_PPC64_REL24>): Refcount .plt entry. 7848 Don't copy to shared lib. 7849 (ppc64_elf_check_relocs): Call bfd_set_error on errors. 7850 (ppc64_elf_gc_sweep_hook <R_PPC64_REL24>): Sweep plt refcount. 7851 (allocate_dynrelocs <plt>): Don't change function sym here. Make 7852 room for .stub and .glink code. 7853 (ppc64_elf_size_dynamic_sections): Handle .stub. Make entry for 7854 DT_PPC64_GLINK. 7855 (ppc64_elf_final_link): Rename to ppc64_elf_set_toc. Don't call 7856 bfd_elf64_bfd_final_link. 7857 (bfd_elf64_bfd_final_link): Don't define. 7858 (ppc64_elf_size_stubs): New. 7859 (build_plt_stub): New. 7860 (build_one_stub): New. 7861 (ppc64_elf_build_stubs): New. 7862 (ppc64_elf_relocate_section <toc relocs>): Remove assert. 7863 (ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs. 7864 (ppc64_elf_finish_dynamic_symbol): Don't build stubs here. Set 7865 DT_PPC64_GLINK entry. Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in 7866 case output sections not separate. Adjust DT_RELASZ to not 7867 include plt relocs. Set reserved got entry. Set got and plt 7868 entry size. 7869 (elf_backend_got_header_size): Set to 8. 7870 * elf64-ppc.h: New file. 7871 7872 2002-01-16 Alan Modra <amodra@bigpond.net.au> 7873 7874 * elf32-arm.h (elf32_arm_size_dynamic_sections): When removing 7875 sections, use bfd_section_list_remove. 7876 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. 7877 * elflink.h (elf_link_add_object_symbols): When removing all 7878 sections, use bfd_section_list_clear. 7879 7880 2002-01-15 Nick Clifton <nickc@cambridge.redhat.com> 7881 7882 * po/sv.po: New file: Swedish translation. 7883 * configure.in (ALL_LINGUAS): Add sv. 3328 7884 * configure: Regenerate. 3329 7885 3330 2000-06-13 J"orn Rennecke <amylaar@cygnus.co.uk> 3331 3332 * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of 3333 armpei_little_vec. 3334 3335 2000-06-08 David O'Brien <obrien@FreeBSD.org> 3336 3337 * configure.in (VERSION): Update to show this is the CVS mainline. 3338 3339 2000-06-07 Alan Modra <alan@linuxcare.com.au> 3340 3341 * elf32-d10v.c: Include elf/d10v.h 3342 (enum reloc_type): Delete. 3343 * elf32-d30v.c: Include elf/d30v.h 3344 (enum reloc_type): Delete. 3345 3346 * Makefile.am: Run "make dep-am" to regenerate dependencies. 7886 2002-01-15 Jakub Jelinek <jakub@redhat.com> 7887 7888 * elflink.h (elf_link_input_bfd): Back out 2002-01-07 change. 7889 * elf.c (merge_sections_remove_hook): New function. 7890 (_bfd_elf_merge_sections): Pass it as 3rd argument to 7891 _bfd_merge_sections. 7892 * libbfd-in.h (_bfd_merge_sections): Add 3rd argument. 7893 * libbfd.h: Rebuilt. 7894 * merge.c (_bfd_merge_sections): Add remove_hook argument. 7895 Call remove_hook if a SEC_EXCLUDE section is encountered. 7896 7897 2002-01-15 Nick Clifton <nickc@cambridge.redhat.com> 7898 7899 * elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'. 7900 (xstormy16_reloc_map): Initialise new field with correct howto 7901 table. 7902 (xstormy16_reloc_type_lookup): Use 'table' field to locate correct 7903 howto entry. 7904 7905 2002-01-10 Michael Snyder <msnyder@redhat.com> 7906 7907 * elf.c (elfcore_write_prstatus): Use long instead of pid_t; 7908 (elfcore_write_pstatus): Use long instead of pid_t; 7909 * elf-bfd.h: Change prototypes to use long instead of pid_t; 7910 7911 2002-01-09 Jason Thorpe <thorpej@wasabisystems.com> 7912 7913 * elf.c: Update copyright years. 7914 (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO 7915 and NT_NETBSDCORE_FIRSTMACH. Improve a comment. 7916 7917 2002-01-08 Michael Snyder <msnyder@redhat.com> 7918 7919 Add capability to write corefile note sections, for gdb. 7920 * elf.c (elfcore_write_note): New function. 7921 (elfcore_write_prpsinfo): New function. 7922 (elfcore_write_prstatus): New function. 7923 (elfcore_write_pstatus): New function. 7924 (elfcore_write_prfpreg): New function. 7925 (elfcore_write_prxfpreg): New function. 7926 * elf-bfd.h: Add prototypes for above functions. 7927 7928 2002-01-08 Alexandre Oliva <aoliva@redhat.com> 7929 7930 * elf.c (elf_fake_sections): Propagate errors from 7931 elf_backend_fake_section. 7932 7933 2002-01-07 Jason Thorpe <thorpej@wasabisystems.com> 7934 7935 * Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo. 7936 (BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c. 7937 (elf32-sh-nbsd.lo): New rule. 3347 7938 * Makefile.in: Regenerate. 3348 3349 * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs. 3350 (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and 3351 move HOWTOs into elf_howto_table. 3352 (R_386_standard, R_386_ext_offset): Define. 3353 (R_386_ext, R_386_vt_offset, R_386_vt): Define. 3354 (elf_i386_reloc_type_lookup): Modify calculation of index into 3355 elf_howto_table since we've removed the padding. 3356 (elf_i386_info_to_howto_rel): Likewise. 3357 (elf_i386_relocate_section): Likewise. 3358 3359 2000-06-06 Michael Snyder <msnyder@seadog.cygnus.com> 3360 3361 * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t. 3362 3363 2000-06-05 H.J. Lu <hjl@gnu.org> 3364 3365 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag 3366 an error when seeing an undefined symbol with hidden/internal 3367 attribute. It is handled in *_relocate_section (). 3368 3369 2000-06-05 H.J. Lu <hjl@gnu.org> 3370 3371 * elflink.h (elf_fix_symbol_flags): Follow the link for the 3372 indirect symbol for the ELF_LINK_NON_ELF bit. 3373 (elf_link_output_extsym): Don't output the indirect symbol even 3374 if the ELF_LINK_NON_ELF bit is set. 3375 3376 2000-06-01 J.T. Conklin <jtc@redback.com> 3377 3378 * config.bfd (i[3456]86-*-netbsdelf*): New target. 3379 (i[3456]86-*-netbsdaout*): New target. 3380 (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs. 3381 (i[3456]86-*-openbsd*): Likewise. 3382 3383 2000-05-30 Andrew Cagney <cagney@b1.cygnus.com> 3384 3385 * trad-core.c: From hpux-core.c, include <dirent.h> or 3386 <sys/ndir.h> when possible. 3387 3388 2000-05-31 Nick Clifton <nickc@cygnus.com> 3389 3390 * opintl.h (_(String)): Explain why dgettext is used instead 3391 of gettext. 3392 3393 2000-05-31 Ulrich Drepper <drepper@redhat.com> 3394 3395 * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version 3396 definitions. We must not assume they are sorted in the file 3397 according to their index numbers. 3398 3399 2000-05-31 Alan Modra <alan@linuxcare.com.au> 3400 3401 * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field 3402 selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and 3403 R_PARISC_DIR17F are for absolute branches; Handle them as such. 3404 3405 2000-05-30 Nick Clifton <nickc@cygnus.com> 3406 3407 * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB, 3408 80960CA, 80960MC as valid machine names. 3409 3410 2000-05-30 H.J. Lu <hjl@gnu.org> 3411 3412 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the 3413 visibility bits if the symbol is undefined. Correctly handle 3414 weak undefined symbols with hidden and internal attributes. 3415 3416 * elflink.h (elf_link_add_object_symbols): Always turn the 3417 symbol into local if it has the hidden or internal attribute. 3418 3419 2000-05-29 Philip Blundell <philb@gnu.org> 3420 3421 * ppcboot.c: Add packed attribute if compiling with GCC. 3422 3423 2000-05-29 Anatoly Vorobey <mellon@pobox.com> 3424 3425 * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal. 3426 3427 2000-05-26 Michael Snyder <msnyder@seadog.cygnus.com> 3428 3429 * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus, 3430 elfcore_grok_psinfo): Add code to allow debugging a 32-bit 3431 corefile on a 64-bit (Sparc Solaris) host. Also clean up 3432 a few old comments. 3433 3434 2000-05-26 Alan Modra <alan@linuxcare.com.au> 3435 3436 * Makefile.am: Update dependencies with "make dep-am" 3437 * Makefile.in: Regenerate. 3438 3439 * sysdep.h (gettext, dgettext, dcgettext, textdomain, 3440 bindtextdomain): Replace defines with those from intl/libgettext.h 3441 to quieten gcc warnings. 3442 3443 2000-05-26 Eli Zaretskii <eliz@is.elta.co.il> 3444 3445 * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH. 3446 3447 * archive.c (normalize, bfd_bsd_truncate_arname, 3448 bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support 3449 file names with backslashes. 3450 3451 * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file 3452 before opening it. 3453 3454 * sysdep.h: Include filenames.h. 3455 3456 2000-05-26 Alan Modra <alan@linuxcare.com.au> 3457 3458 * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777. 3459 3460 2000-05-26 Jakub Jelinek <jakub@redhat.com> 3461 3462 * elf64-sparc.c (sparc64_elf_relax_section): New. 3463 (sparc64_elf_relocate_section): Optimize tail call into branch always 3464 if possible. 3465 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 3466 (elf32_sparc_relax_section): New. 3467 3468 2000-05-26 Jakub Jelinek <jakub@redhat.com> 3469 3470 * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters. 3471 Remove unusued variables. 3472 (sparc64_elf_relocate_section): Change r_symndx type to unsigned long. 3473 (sparc64_elf_merge_private_bfd_data): Fix shared library case from 3474 previous fix, so that shared libs really don't influence targets 3475 extension mask and memory model. 3476 3477 2000-05-23 H.J. Lu <hjl@gnu.org> 3478 3479 * elf64-alpha.c (elf64_alpha_relocate_section): Check 3480 h->root.other not h->other. 3481 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 3482 3483 * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo. 3484 3485 2000-05-23 H.J. Lu <hjl@gnu.org> 3486 3487 * elf32-i386.c (elf_i386_relocate_section): Don't allow the 3488 undefined symbol with the non-default visibility attributes. 3489 * elf-hppa.h (elf_hppa_relocate_section): Likewise. 3490 * elf32-arm.h (elf32_arm_relocate_section): Likewise. 3491 * elf32-i370.c (i370_elf_relocate_section): Likewise. 3492 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 3493 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 3494 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 3495 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 3496 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 3497 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 3498 * elf64-ia64.c (elf64_ia64_relocate_section): Likewise. 3499 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 3500 3501 2000-05-22 Richard Henderson <rth@cygnus.com> 3502 3503 * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI, 3504 PCREL22, PCREL64I. Zero size of special relocs. 3505 (elf64_ia64_reloc_type_lookup): Likewise. 3506 (USE_BRL, oor_brl, oor_ip): New. 3507 (elf64_ia64_relax_section): New. 3508 (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I. 3509 (elf64_ia64_install_value): Likewise, plus PCREL21BI. 3510 (elf64_ia64_relocate_section): Likewise. 3511 (bfd_elf64_bfd_relax_section): New. 3512 * reloc.c (BFD_RELOC_IA64_PCREL21BI): New. 3513 (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New. 3514 * bfd-in2.h, libbfd.h: Regenerate. 3515 3516 2000-05-22 Nick Clifton <nickc@cygnus.com> 3517 3518 * configure.in : Add peigen.lo to MIPS PE targets. 7939 * config.bfd (sh*le-*-netbsdelf*): New target. 7940 (sh*-*-netbsdelf*): New target. 7941 * configure.in: Include netbsd-core.lo for native sh*-*-netbsd*. 7942 (bfd_elf32_shnbsd_vec): New vector. 7943 (bfd_elf32_shlnbsd_vec): New vector. 3519 7944 * configure: Regenerate. 3520 3521 2000-05-22 Momchil Velikov <velco@fadata.bg> 3522 3523 * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess 3524 only if it is known for both input and output bfds. Separate 3525 error message strings as in some languages, it may be necessary 3526 to change more than one place in the string to change between 3527 'big' and 'little'. 3528 3529 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline 3530 endianess checks, call _bfd_generic_verify_endian_match() instead. 3531 3532 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise. 3533 3534 * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise. 3535 3536 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify 3537 endianess before checking bfd flavours. 3538 3539 2000-05-22 H.J. Lu <hjl@gnu.org> 3540 3541 * elflink.h (elf_link_output_extsym): Clear the visibility 3542 field for symbols not defined locally. 3543 3544 2000-05-18 Alan Modra <alan@linuxcare.com.au> 3545 3546 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, 3547 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. 3548 (hppa_rebuild_insn): Mask immediate bits here instead. 3549 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. 3550 3551 2000-05-18 Momchil Velikov <velco@fadata.bg> 3552 3553 * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting 3554 relocs for an executable, ensure that they are virtual addresses. 3555 3556 2000-05-18 Jeffrey A Law (law@cygnus.com) 3557 3558 * config.bfd (hppa*64*-*-hpux11*): New target triplet. 3559 3560 2000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com> 3561 Rick Gorton <gorton@scrugs.lkg.dec.com> 3562 3563 * elflink.h: Add emitrelocations support: when enabled, relocation 3564 information and relocation sections are put into final output 3565 executables. If the emitrelocations flag is set, do the following: 3566 (elf_bfd_final_link): Emit relocation sections. 3567 (elf_link_input_bfd): Compute relocation section contents. 3568 (elf_gc_sections): Don't clean relocation sections. 3569 3570 2000-05-16 Catherine Moore <clm@cygnus.com> 3571 3572 * som.c (som_decode_symclass): Recognize weak symbols. 3573 3574 2000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com> 3575 3576 * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that 3577 read idata section only from dataoff. 3578 (pe_print_edata): Correctly check for valid eat_member. 3579 3580 2000-05-16 J"orn Rennecke <amylaar@cygnus.co.uk> 3581 3582 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8. 3583 3584 2000-05-14 Philip Blundell <philb@gnu.org> 3585 3586 * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets. 3587 3588 2000-05-12 Alan Modra <alan@linuxcare.com.au> 3589 3590 * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec 3591 3592 * peigen.c (pe_print_idata): Look for .idata section and print 3593 info even if data directory has zero entries. Read idata section 3594 starting from dataoff, and adjust all data offsets to suit. Cast 3595 all bfd_vma vars to unsigned long before passing to fprintf. 3596 * peigen.c (pe_print_edata): Similarly, look for .edata section 3597 and print info even if data directory has zero entries. Cast 3598 all bfd_vma vars to unsigned long before passing to fprintf. 3599 3600 From Szabolcs Szakacsits <szaka@F-Secure.com> 3601 * peigen.c (pe_print_idata): Use bfd_section_size rather than data 3602 directory size which may be bogus. 3603 * peigen.c (pe_print_edata): Similarly. 3604 3605 2000-05-09 Alan Modra <alan@linuxcare.com.au> 3606 3607 * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela 3608 section is empty. 3609 (copy_private_bfd_data): Allow for space possibly taken up by elf 3610 headers when calculating segment physical address from lma. 3611 3612 2000-05-08 Alan Modra <alan@linuxcare.com.au> 3613 3614 * versados.c (versados_scan): Init stringlen and pass_2_done. 3615 3616 * trad-core.c (trad_unix_core_file_p): Return 3617 bfd_error_wrong_format rather than bfd_error_file_truncated. 3618 3619 * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to 3620 add_data_entry. DataDirectory virtual address is relative. 3621 (pe_print_idata): Account for relative DataDirectory virtual 3622 addresses. Don't trash datasize inside POWERPC_LE_PE code. 3623 (pe_print_edata): Similarly. 3624 3625 From Szabolcs Szakacsits <szaka@F-Secure.com> 3626 * peigen.c (dir_names): Add Delay Import Directory. 3627 (pe_print_idata): Always search for bfd section containing 3628 idata address rather than looking up section name. Print this 3629 section name rather than .idata. 3630 (pe_print_edata): Similarly. Also print some fields as %08lx. 3631 (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as 3632 Win32Version. 3633 3634 2000-05-05 Clinton Popetz <cpopetz@cygnus.com> 3635 3636 * xcoff.h: Rename to xcoff-target.h 3637 * Makefile.am: Change all instances of xcoff.h to xcoff-target.h 3638 * coff-rs6000.c: Ditto. 3639 * coff64-rs6000.c: Ditto. 3640 * coff-pmac.c: Ditto. 3641 * Makefile.in: Regenerate. 3642 3643 2000-05-05 Clinton Popetz <cpopetz@cygnus.com> 3644 3645 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): 3646 Change U802TOC64MAGIC to U803XTOCMAGIC. 3647 3648 2000-05-04 Michael Snyder <msnyder@seadog.cygnus.com> 3649 3650 * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1. 3651 * bfd-in.h: Prototype bfd_elf_get_arch_size. 3652 * bfd-in2.h: Prototype bfd_elf_get_arch_size. 3653 3654 2000-05-04 Alan Modra <alan@linuxcare.com.au> 3655 3656 * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma. 3657 3658 2000-05-03 Martin v. Löwis <loewis@informatik.hu-berlin.de> 3659 3660 * elflink.h (elf_link_add_object_symbols): Reset dynindx for 3661 hidden and internal symbols. 3662 (elf_fix_symbol_flags): Clear NEEDS_PLT for symbols with 3663 visibility. 3664 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Do not 3665 assign a PLT or GOT entry to symbols with hidden and 3666 internal visibility. 3667 3668 2000-05-03 Mark Elbrecht <snowball3@bigfoot.com> 3669 3670 * bfd/coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for 3671 the .bss section. 3672 * bfd/coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. 3673 3674 2000-05-02 H.J. Lu <hjl@gnu.org> 3675 3676 * elf.c (prep_headers): Use ELFOSABI_NONE instead of 3677 ELFOSABI_SYSV. 3678 3679 2000-05-02 Alan Modra <alan@linuxcare.com.au> 3680 3681 * targets.c (bfd_target_vector): Restore bfd_elf32_hppa_vec. 3682 * Makefile.am (BFD32_BACKENDS): Restore elf32-hppa.lo. Regenerate 3683 dependencies. 3684 * Makefile.in: Regenerate. 3685 3686 2000-05-01 Jim Wilson <wilson@cygnus.com> 3687 3688 * Makefile.am (BFD32_BACKENDS): Add efi-app-ia32.lo. 3689 (BFD32_BACKENDS_CFILES): Add efi-app-ia32.c. 3690 (BFD64_BACKENDS): Delete coff-ia64.lo. Add efi-app-ia64.lo. 3691 (BFD64_BACKENDS_CFILES): Delete coff-ia64.c. Add efi-app-ia64.c. 3692 * Makefile.in: Rebuild. 3693 3694 2000-05-02 Alan Modra <alan@linuxcare.com.au> 3695 3696 * config.bfd: Re-enable elf32-hppa. It now compiles, even if it 3697 doesn't work very well. 3698 3699 * elf-hppa.h (elf_hppa_internal_shdr): Define. 3700 (elf_hppa_fake_sections): hdr is elf_hppa_internal_shdr. 3701 Set hdr->s_type to 1 if ARCH_SIZE == 32. 3702 (_bfd_elf_hppa_gen_reloc_type): Add prototype. 3703 (elf_hppa_info_to_howto): Likewise. 3704 (elf_hppa_info_to_howto_rel): Likewise. 3705 (elf_hppa_reloc_type_lookup): Likewise. 3706 (elf_hppa_is_local_label_name): Likewise. 3707 (elf_hppa_fake_sections): Likewise. 3708 (elf_hppa_final_write_processing): Likewise. 3709 (elf_hppa_howto_table): Fully initialise all entries. 3710 (_bfd_elf_hppa_gen_reloc_type): Add ATTRIBUTE_UNUSED to args. 3711 (elf_hppa_info_to_howto): Likewise. 3712 (elf_hppa_info_to_howto_rel): Likewise. 3713 (elf_hppa_reloc_type_lookup): Likewise. 3714 (elf_hppa_final_write_processing, elf_hppa_add_symbol_hook, 3715 elf_hppa_unmark_useless_dynamic_symbols, 3716 elf_hppa_remark_useless_dynamic_symbols, 3717 elf_hppa_record_segment_addrs, elf_hppa_final_link, 3718 elf_hppa_relocate_section, elf_hppa_final_link_relocate, 3719 elf_hppa_relocate_insn): Compile only if ARCH_SIZE == 64 until 3720 elf32-hppa.c mess is cleaned up. 3721 (elf_hppa_final_link_relocate): Make insn and r_type unsigned 3722 int. Delete r_field. In case R_PARISC_PCREL21L, don't set 3723 r_field then call hppa_field_adjust inline func with variable 3724 r_field arg, instead call hppa_field_adjust with fixed arg. 3725 In case R_PARISC_PCREL22F, don't set r_field. 3726 (elf_hppa_relocate_insn): Change args and return type to unsigned 3727 int. Call re_assemble_* funcs to do the work. 3728 3729 * elf32-hppa.c (hppa_elf_relocate_insn): Don't assume 32 bit when 3730 sign extending. 3731 3732 * libhppa.h (HPPA_R_CONSTANT): Don't assume 32 bit when sign 3733 extending. 3734 (sign_extend): Mask first before sign extending. 3735 (low_sign_extend): Rewrite without condition expression. 3736 (ones, dis_assemble_3, dis_assemble_12, dis_assemble_16, 3737 dis_assemble_17, dis_assemble_21, dis_assemble_22): Delete. 3738 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, 3739 assemble_17, assemble_21, sign_unext, low_sign_unext): Return 3740 result as function return value rather than through pointer arg. 3741 Accept unsigned int args, and return unsigned int. 3742 (re_assemble_3): New. Combines function of dis_assemble_3 with 3743 re-assembly of opcode and immediate. 3744 (re_assemble_12): Likewise. 3745 (re_assemble_16): Likewise. 3746 (re_assemble_17): Likewise. 3747 (re_assemble_21): Likewise. 3748 (re_assemble_22): Likewise. 3749 (hppa_field_adjust): Rewrite and document, paying attention to 3750 size of types and signed/unsigned issues. 3751 (get_opcode): Shift before masking. 3752 (FDLW): Rename to FLDW. 3753 (bfd_hppa_insn2fmt): Change arg to unsigned int. Delete fmt. 3754 (hppa_rebuild_insn): Change args and return value to unsigned 3755 int. Make use of re_assemble_*. Correct case 11. 3756 3757 * dep-in.sed: Handle ../opcodes/. 3758 * Makefile.am (SOURCE_HFILES): Add elf-hppa.h, elf32-hppa.h, 3759 elf64-hppa.h, hppa_stubs.h, xcoff.h. 3760 (BFD32_BACKENDS_CFILES): Restore elf32-hppa.c. 3761 Remove elf64-hppa.lo, cpu-ia64.lo, elf64-ia64.lo, elfarm-oabi.lo, 3762 elfarm-nabi.lo dependencies outside of auto-dependency area. 3763 Regenerate dependencies. 3764 * Makefile.in: Regenerate. 3765 3766 * configure.in (TRAD_HEADER): Test non-null before 3767 AC_DEFINE_UNQUOTED. 7945 * elf32-sh-nbsd.c: New file. 7946 * targets.c: Update copyright years. 7947 (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and 7948 bfd_elf32_shnbsd_vec. 7949 7950 2002-01-07 Aldy Hernandez <aldyh@redhat.com> 7951 7952 * coff-rs6000.c (READ20): Use bfd_scan_vma. 7953 7954 2002-01-07 Geoffrey Keating <geoffk@redhat.com> 7955 7956 * elflink.h (elf_link_input_bfd): Don't ask for the merged offset 7957 of a symbol in a section that will be deleted. 7958 7959 2002-01-07 Nick Clifton <nickc@cambridge.redhat.com> 7960 7961 * po/es.po: New file: Spanish translation. 7962 * configure.in (ALL_LINGUAS): Add es. 3768 7963 * configure: Regenerate. 3769 7964 3770 * reloc.c: Fix mis-spelling in comment. 3771 3772 2000-05-01 Alan Modra <alan@linuxcare.com.au> 3773 3774 * coff-sh.c (bfd_coff_small_swap_table): Fix Fri Apr 28 change. 3775 * vms.c (vms_openr_next_archived_file): Return NULL. 3776 3777 2000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3778 3779 * coffcode.h Copy changes mistakenly done to libcoff.h in 3780 4/24/2000 patch. 3781 3782 2000-04-29 Andreas Jaeger <aj@suse.de> 3783 3784 * libbfd-in.h: Correctly check GCC version. 3785 * bfd-in.h: Likewise. 3786 * libhppa.h: Likewise. 7965 2002-01-06 Steve Ellcey <sje@cup.hp.com> 7966 7967 * elfxx-ia64.c (is_unwind_section_name): Add target vector as 7968 argument so we can handle HP-UX specially. 7969 (elfNN_ia64_hpux_vec): New for use in is_unwind_section_name. 7970 (elfNN_hpux_backend_section_from_bfd_section): New for support 7971 of SHN_IA_64_ANSI_COMMON. 7972 (elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON. 7973 (is_unwind_section_name): Add special HP-UX support. 7974 (elfNN_ia64_section_from_shdr): Add support for more sections. 7975 (elfNN_ia64_fake_sections): Modify is_unwind_section_name call and 7976 add support for more sections. 7977 (elfNN_ia64_additional_program_headers): Modify 7978 is_unwind_section_name call. 7979 (elfNN_ia64_modify_segment_map): Remove assumption that there is 7980 only one unwind section in segment. 7981 7982 2002-01-06 Alan Modra <amodra@bigpond.net.au> 7983 7984 * syms.c (_bfd_generic_make_empty_symbol): New function. 7985 * libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as 7986 _bfd_generic_make_empty_symbol. 3787 7987 * libbfd.h: Regenerate. 3788 7988 * bfd-in2.h: Regenerate. 3789 3790 2000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3791 3792 * Makefile.am (BFD64_BACKENDS, BFD64_BACKENDS_CFILES): Add 3793 coffdu-rs6000.{lo,c}. 3794 (coff-pmac.lo, coff-rs6000.lo, coff64-rs6000.lo): Add dependency 3795 on xcoff.h 3796 * Makefile.in: Regenerate. 3797 * xcoff.h: New file. 3798 * coff-pmac.c: Use xcoff.h instead of coff-rs6000.c. 3799 * coff-rs6000.c: Move all declarations and defines that are 3800 common to the xcoff backends into xcoff.h 3801 * coff64-rs6000.c: Ditto, 3802 3803 2000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3804 3805 * coff-mips.c (mips_ecoff_backend_data): Add initialization of 3806 _bfd_coff_force_symnames in strings and 3807 _bfd_coff_debug_string_prefix_length to their default values. 3808 * coff-sh.c: (bfd_coff_small_swap_table): Ditto. 3809 3810 2000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3811 3812 * coff-alpha.c (alpha_ecoff_backend_data): Add initialization of 3813 _bfd_coff_force_symnames in strings and 3814 _bfd_coff_debug_string_prefix_length to their default values. 3815 3816 2000-04-27 Alan Modra <alan@linuxcare.com.au> 3817 3818 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return if dynobj NULL. 3819 Check local_got_refcounts before dereferencing. 3820 3821 * elf32-ppc.c (ppc_elf_relocate_section): Check splt != NULL 3822 before deciding we don't need R_PPC_PLT32 relocation. 3823 (ppc_elf_gc_sweep_hook): Check local_got_refcounts before 3824 dereferencing. 3825 3826 * elflink.h (elf_gc_common_finalize_got_offsets): Fix comment. 3827 3828 * elf32-i386.c (elf_i386_check_relocs): Reference count .got and 3829 .plt entries. 3830 (elf_i386_gc_sweep_hook): Garbage collect .got and .plt entries. 3831 (elf_i386_adjust_dynamic_symbol): Recognize unused .plt entries. 3832 (elf_i386_relocate_section): Allow for .plt to go missing. 3833 (elf_i386_finish_dynamic_symbol): Use same test to decide if we 3834 can use a relative reloc for got as elf_i386_relocate_section. 3835 (bfd_elf32_bfd_final_link): Define to use gc form of final link. 3836 3837 2000-04-26 Clinton Popetz <cpopetz@cygnus.com> 3838 3839 * config.bfd: Remove extraneous bfd_powerpc_64_arch. 3840 3841 2000-04-24 Clinton Popetz <cpopetz@cygnus.com> 3842 3843 * Makefile.am (coff64-rs6000.lo): New rule. 3844 * Makefile.in: Regenerate. 3845 * coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data, 3846 xcoff_is_local_label_name, xcoff_rtype2howto, 3847 xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p, 3848 xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap, 3849 xcoff_write_archive_contents): No longer static, and prefix with _bfd_. 3850 (NO_COFF_SYMBOLS): Define. 3851 (xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in, 3852 xcoff64_swap_aux_out): New functions; handle xcoff symbol tables 3853 internally. 3854 (MINUS_ONE): New macro. 3855 (xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS 3856 relocation. 3857 (coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in, 3858 coff_SWAP_aux_out): Map to the new functions. 3859 * coff64-rs6000.c: New file. 3860 * libcoff.h (bfd_coff_backend_data): Add new fields 3861 _bfd_coff_force_symnames_in_strings and 3862 _bfd_coff_debug_string_prefix_length. 3863 (bfd_coff_force_symnames_in_strings, 3864 bfd_coff_debug_string_prefix_length): New macros for above fields. 3865 * coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic. 3866 Set machine to 620 for XCOFF64. Use bfd_coff_swap_sym_in instead 3867 of using coff_swap_sym_in directly. 3868 (FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64. 3869 (coff_set_flags) Set magic for XCOFF64. 3870 (coff_compute_section_file_positions): Add symbol name length to 3871 string section length if bfd_coff_debug_string_prefix_length is 3872 true. 3873 (coff_write_object_contents): Don't do reloc overflow for XCOFF64. 3874 (coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of 3875 using coff_swap_lineno_in directly. 3876 (bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings 3877 and _bfd_coff_debug_string_prefix_length fields. 3878 * coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force 3879 symbol names into strings table when 3880 bfd_coff_force_symnames_in_strings is true. 3881 * coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR, 3882 SET_RELOC_VADDR): New macros. 3883 (coff_swap_reloc_in, coff_swap_reloc_out): Use above macros. 3884 (coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C 3885 code. 3886 (coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64 3887 changes within RS6000COFF_C specific code. 3888 (coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC, 3889 MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO. 3890 * reloc.c (bfd_perform_relocation, bfd_install_relocation): 3891 Extend existing hack on target name. 3892 * xcofflink.c (XCOFF_XVECP): Extend existing hack on 3893 target name. 3894 * coff-tic54x.c (ticof): Keep up to date with new fields 3895 in bfd_coff_backend_data. 3896 * config.bfd: Add bfd_powerpc_64_arch to targ_arch and define 3897 targ_selvecs to include rs6000coff64_vec for rs6000. 3898 * configure.in: Add rs6000coff64_vec case. 3899 * cpu-powerpc.c: New bfd_arch_info_type. 3900 3901 2000-04-24 Jeffrey A Law (law@cygnus.com) 3902 3903 * config.bfd: Only disable elf32-hppa vectors, not all of the 3904 BSD and OSF configuration support. Provide (disabled) clauses 3905 for PA64 support. 3906 * configure.in: Add clause for PA64 support. 3907 * configure: Rebuilt. 3908 3909 * targets.c (bfd_target_vector): Add bfd_elf64_hppa_vec. 3910 (bfd_elf64_hppa_vec): Declare. 3911 3912 * Makefile.am (BFD64_BACKENDS): Add elf64-hppa.lo 3913 (BFD64_BACKENDS_CFILES): Add elf64-hppa.c 3914 (elf64-hppa.lo): Add dependencies. 3915 * Makefile.in: Rebuilt. 3916 3917 * elf64-hppa.c, elf64-hppa.h: New files with PA64 support. 3918 3919 2000-04-24 Jason Eckhardt <jle@cygnus.com> 3920 3921 * libhppa.h (dis_assemble_16): New function. 3922 (pa_arch): Added pa20w element. 3923 3924 2000-04-24 Ulrich Drepper <drepper@cygnus.com> 3925 3926 * elf-bfd.h: Add prototypes for bfd_elf32_write_relocs, 3927 bfd_elf32_slurp_reloc_table, bfd_elf64_write_relocs, and 3928 bfd_elf64_slurp_reloc_table. 3929 3930 * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): New 3931 definitions to get external names. 3932 (elf_write_relocs): Renamed from write_relocs and make global. 3933 (elf_slurp_reloc_table): Make global. 3934 (_bfd_elf,size_info): Use elf_write_relocs instead of write_relocs. 3935 3936 * archive.c (hpux_uid_gid_encode): New function. 3937 (bfd_ar_hdr_from_filesystem): Use it if HPUX_LARGE_AR_IDS is 3938 defined and the ID is greater than 99999. 3939 (bfd_generic_stat_arch_elt): If HPUX_LARGE_AR_IDS is defined decode 3940 special uid/gid fields into 32 bit values. 3941 3942 2000-04-21 Matthew Green <mrg@cygnus.com> 3943 3944 * config.bfd: Add NetBSD/sparc64 support. 3945 3946 Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com> 3947 David Mosberger <davidm@hpl.hp.com> 3948 Timothy Wall <twall@cygnus.com> 3949 Jim Wilson <wilson@cygnus.com> 3950 3951 * Makefile.am (ALL_MACHINES): Add cpu-ia64.lo. 3952 (ALL_MACHINES_CFILES): Add cpu-ia64.c. 3953 (BFD64_BACKENDS): Add elf64-ia64.lo. 3954 (BFD64_BACKENDS_CFILES): Add elf64-ia64.c. 3955 (cpu-ia64.lo, elf64-ia64.lo): New rules. 3956 * Makefile.in: Rebuild. 3957 * archures.c (enum bfd_architecture): Add bfd_arch_ia64. 3958 (bfd_ia64_arch): Declare. 3959 (bfd_archures_list): Add bfd_ia64_arch. 3960 * bfd-in2.h: Rebuild. 3961 * config.bfd: (ia64*-*-linux-gnu*, ia64*-*-elf*): New targets. 3962 * configure: Rebuild. 3963 * configure.host: (ia64-*-linux*): New host. 3964 * configure.in (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec, 3965 bfd_efi_app_ia64_vec, bfd_efi_app_ia64_vec): New vectors. 3966 * elf.c (prep_headers): Add bfd_arch_ia64. 3967 * libbfd.h: Rebuild. 3968 * reloc.c: Add IA-64 relocations. 3969 * targets.c (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec): 3970 Declare. 3971 (bfd_target_vect): Add bfd_elf64_ia64_little_vec. 3972 * cpu-ia64-opc.c, cpu-ia64.c, elf64-ia64.c: New files. 3973 3974 2000-04-21 Richard Henderson <rth@cygnus.com> 3975 3976 * elf32-d30v.c (bfd_elf_d30v_reloc): Don't modify section 3977 contents when performing a partial link. 3978 (bfd_elf_d30v_reloc_21): Likewise. 3979 3980 2000-04-20 H.J. Lu <hjl@gnu.org> 3981 3982 * elf32-i386.c (elf_i386_relocate_section): Restrict 1998-12-10 3983 patch to symbols defined by a shared object. 3984 * elf32-ppc.c (ppc_elf_relocate_section): Similarly. 3985 3986 2000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> 3987 3988 K&R compiler fixes. 3989 * dwarf2.c (concat_filename): Avoid string literal concatenation. 3990 * ieee.c (ieee_get_symtab): Don't initialise union in struct. 3991 3992 Mon Apr 17 19:14:36 2000 David Mosberger <davidm@hpl.hp.com> 3993 3994 * Makefile.am (BFD64_BACKENDS): Mention coff-ia64.lo. 3995 (BFD64_BACKENDS_CFILES): Mention coff-ia64.c 3996 (coff-ia64.lo): Add dependency. 3997 * Makefile.in: Regenerate. 3998 * coff-ia64.c: New file. 3999 * efi-app-ia32.c: Ditto. 4000 * efi-app-ia64.c: Ditto. 4001 * coffcode.h (coff_set_arch_mach_hook): Handle IA64MAGIC. 4002 (coff_set_flags): Ditto. 4003 (coff_write_object_contents) [IA64]: Set magic number to ZMAGIC. 4004 * config.bfd (i[3456]86-*-linux-gnu*): Mention bfd_efi_app_ia32_vec. 4005 * configure.in (elf): Handle bfd_efi_app_ia32 and bfd_efi_app_ia64_vec. 7989 * hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function. 7990 (hppabsd_core_get_symtab_upper_bound): Don't define. 7991 (hppabsd_core_get_symtab): Likewise. 7992 (hppabsd_core_print_symbol): Likewise. 7993 (hppabsd_core_get_symbol_info): Likewise. 7994 (hppabsd_core_bfd_is_local_label_name): Likewise. 7995 (hppabsd_core_get_lineno): Likewise. 7996 (hppabsd_core_find_nearest_line): Likewise. 7997 (hppabsd_core_bfd_make_debug_symbol): Likewise. 7998 (hppabsd_core_read_minisymbols): Likewise. 7999 (hppabsd_core_minisymbol_to_symbol): Likewise. 8000 (hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols). 8001 Formatting fixes. 8002 * hpux-core.c: Similarly. 8003 * irix-core.c: Similarly. 8004 * osf-core.c: Similarly. 8005 * sco5-core.c: Similarly. 8006 * binary.c (binary_make_empty_symbol): Remove function, define as 8007 _bfd_generic_make_empty_symbol. 8008 * ihex.c (ihex_make_empty_symbol): Likewise. 8009 * mmo.c (mmo_make_empty_symbol): Likewise. 8010 * ppcboot.c (ppcboot_make_empty_symbol): Likewise. 8011 * srec.c (srec_make_empty_symbol): Likewise. 8012 * versados.c (versados_make_empty_symbol): Likewise. 8013 * vms.c (_bfd_vms_make_empty_symbol): Remove. 8014 (vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol. 8015 * vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol 8016 rather than _bfd_vms_make_empty_symbol. 8017 * vms-misc.c (new_symbol): Likewise. 8018 8019 2002-01-05 Alan Modra <amodra@bigpond.net.au> 8020 8021 * section.c (bfd_section_init): Remove unnecessary initialisations. 8022 (bfd_section_list_clear): New function. 8023 (bfd_section_list_remove, bfd_section_list_insert): New macros. 8024 (_bfd_strip_section_from_output): Use them. 8025 * coffcode.h (coff_set_alignment_hook): Likewise. 8026 * elf32-mips.c (_bfd_mips_elf_final_link): Likewise. 8027 * elf64-mips.c (mips_elf64_final_link): Likewise. 8028 * elf64-mmix.c (mmix_elf_final_link): Likewise. 8029 * sunos.c (sunos_add_dynamic_symbols): Likewise. 8030 * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise. 8031 * bfd-in2.h: Regenerate. 8032 8033 * netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway 8034 rather than doing our own section handling. Clean up after errors 8035 with bfd_release and bfd_section_list_clear. Handle unexpected 8036 flags. 8037 * aoutf1.h (sunos4_core_file_p): Likewise. 8038 * aix386-core.c (aix386_core_file_p): Likewise. 8039 * cisco-core.c (cisco_core_file_validate): Likewise. 8040 * ptrace-core.c (ptrace_unix_core_file_p): Likewise. 8041 * trad-core.c (trad_unix_core_file_p): Likewise. 8042 8043 * hppabsd-core.c (hppabsd_core_core_file_p): Clean up after errors 8044 with bfd_release and bfd_section_list_clear. 8045 * hpux-core.c (hpux_core_core_file_p): Likewise. 8046 * irix-core.c (irix_core_core_file_p): Likewise. 8047 * lynx-core.c (lynx_core_file_p): Likewise. 8048 * osf-core.c (osf_core_core_file_p): Likewise. 8049 * rs6000-core.c (rs6000coff_core_p): Likewise. 8050 * sco5-core.c (sco5_core_file_p): Likewise. 8051 8052 * elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform 8053 sign extension adjustments without conditionals. 8054 8055 2002-01-04 Jakub Jelinek <jakub@redhat.com> 8056 8057 * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if 8058 CIE at .eh_frame start is removed due to no FDEs referencing it. 8059 8060 2002-01-04 Jason Thorpe <thorpej@wasabisystems.com> 8061 8062 * config.bfd (x86_64-*-netbsd*): New target. 8063 * configure.in (x86_64-*-netbsd*): Set COREFILE 8064 to netbsd-core.lo. 8065 * configure: Regenerated. 8066 8067 2002-01-03 Tom Rix <trix@redhat.com> 8068 8069 * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering 8070 for recent bfd_make_section_anyway change. 8071 8072 2002-01-03 Nick Clifton <nickc@cambridge.redhat.com> 8073 8074 * elf32-arm.h (elf32_arm_final_link_relocate): Handle 8075 R_ARM_THM_PC11 reloc. 8076 8077 2002-01-02 Nick Clifton <nickc@cambridge.redhat.com> 8078 8079 * configure.in (LINGUAS): Add ja. 4006 8080 * configure: Regenerate. 4007 * libpei.h (GET_OPTHDR_IMAGE_BASE): New macro. 4008 (PUT_OPTHDR_IMAGE_BASE): Ditto. 4009 (GET_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. 4010 (PUT_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. 4011 (GET_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. 4012 (PUT_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. 4013 (GET_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. 4014 (PUT_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. 4015 (GET_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. 4016 (PUT_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. 4017 (GET_PDATA_ENTRY): Ditto. 4018 * peigen.c (_bfd_pei_swap_aouthdr_in) [COFF_WITH_PEP64]: Don't read 4019 data_start. Use above macros to read fields that are 64 bit wide for 4020 COFF_WITH_PEP64. Don't truncate entry and text_start to 32 bits. 4021 (_bfd_pei_swap_aouthdr_out) [PEI_FORCE_MINIMUM_ALIGNMENT]: Force 4022 FileAlignment and SectionAlignment to minimum alignment if they 4023 are zero. 4024 (_bfd_pei_swap_aouthdr_out) [PEI_DEFAULT_TARGET_SUBSYSTEM]: Set 4025 Subsystem to default PEI_DEFAULT_TARGET_SUBSYSTEM. 4026 (_bfd_pei_swap_aouthdr_out) [COFF_WITH_PEP64]: Don't set data_start. 4027 Use above macros to write fields that are 64 bit wide for 4028 COFF_WITH_PEP64. 4029 (pe_print_pdata): Set PDATA_ROW_SIZE to 3*8 for COFF_WITH_PEP64, 4030 5*4 otherwise. This should be right for IA-32 and IA-64, but may 4031 be wrong for platforms. Use PDATA_ROW_SIZE instead of hardcoded 4032 value of 20 bytes. Modify printing for COFF_WITH_PEP64 to print 4033 begin address, end address, and unwind info address only. Use 4034 GET_PDATA_ENTRY() to read .pdata entries. Use fprintf_vma() to 4035 print addresses. 4036 (tbl): Add SECTION, REL32, RESERVED1, MIPS_JMPADDR16, DIR64, and 4037 HIGH3ADJ relocation names. 4038 (_bfd_pe_print_private_bfd_data): Print Subsystem name in legible form. 4039 * targets.c: Declare bfd_efi_app_ia32_vec and 4040 bfd_efi_app_ia64_vec. 4041 (bfd_target_vector): Mention bfd_efi_app_ia32_vec and 4042 bfd_efi_app_ia64_vec. 4043 4044 2000-04-17 Timothy Wall <twall@cygnus.com> 4045 4046 * bfd-in2.h: Add prototypes for tic54x load page access. 4047 * bfd-in.h: Regenerate. 4048 * coff-tic54x.c: Add load page functions; allow bfd_arch_unknown 4049 in customized _set_arch_mach function. 4050 * coffcode.h (coff_set_alignment_hook): Set section load page if 4051 the appropriate macro is defined. 4052 (write_object_contents): Read section load page. 4053 4054 2000-04-13 Alan Modra <alan@linuxcare.com.au> 4055 4056 * elf32-hppa.h: Update copyright date. 4057 4058 * elf32-fr30.c (fr30_elf_i20_reloc): Don't use U suffix. 4059 * elf32-mips.c (_bfd_mips_elf_relocate_section): And here. 4060 4061 * elf32-d30v.c (MAX32): Don't use LL suffix. 4062 (MIN32): Define in terms of MAX32. 4063 (bfd_elf_d30v_reloc): Make relocation a bfd_signed_vma. 4064 4065 * coff-a29k.c (SIGN_EXTEND_HWORD): Replace with more concise 4066 expression. 4067 4068 * peicode.h (pe_ILF_build_a_bfd): Remove UL from hex constants. 4069 4070 2000-04-12 Alan Modra <alan@linuxcare.com.au> 4071 4072 * dep-in.sed: Match space before file name, not after. 4073 * Makefile.am: Regenerate dependencies. 4074 * Makefile.in: Regenerate. 4075 4076 * reloc.c (_bfd_relocate_contents): In complain_overflow_bitfield 4077 case, allow address wrap-around stupidly removed 2000-03-17. Sign 4078 extend without an if statement. 4079 4080 2000-04-11 Alan Modra <alan@linuxcare.com.au> 4081 4082 * coff-mips.c (mips_gprel_reloc): Test for 16 bit range using 4083 signed quantites. 4084 * elf32-mips.c (gprel16_with_gp): Likewise. 4085 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Test range 4086 here using -0x40000, not (int)0xfffc0000. 4087 (elf32_hppa_size_of_stub): Likewise. 4088 4089 2000-04-11 Timothy Wall <twall@cygnus.com> 4090 4091 * coff-tic54x.c: Now builds with all targets. 4092 * Makefile.am: Add coff/tic54x.h to coff-tic54x.o dependencies. 4093 * Makefile.in: Regenerate. 4094 * coffcode.h (coff_set_arch_mach_hook): Eliminate warning on 4095 unitialized variable. 4096 4097 Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com> 4098 4099 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add 4100 --enable-build-warnings option. 4101 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions. 4102 * Makefile.in, configure: Re-generate. 4103 4104 2000-04-07 Nick Clifton <nickc@cygnus.com> 4105 4106 * reloc.c: Add BFD_RELOC_ARM_PCREL_BLX and 4107 BFD_RELOC_THUMB_PCREL_BLX. 4108 4109 * elf32-arm.h (elf32_arm_final_link_relocate): Handle 4110 R_ARM_XPC25 and R_ARM_THM_PC22. 4111 4112 * elfarm-nabi.c (elf32_arm_howto_): Fix definitions of 4113 R_ARM_XPC25 and R_ARM_THM_XPC22. 4114 (elf32_arm_reloc_map): Make BFD_RELOC_{ARM|THUMB}_PCREL_BLX to 4115 R_ARM_[XPC25|THM_XPC22]. 4116 4117 * elfarm-oabi.c: Define OLD_ARM_ABI and change include from 4118 elf/arm-oabi.h to elf/arm.h 4119 4120 * Makefile.am: Fix dependency for elfarm-oabi.c 4121 * Makefile.in: Regenerate. 4122 4123 * bfd-in2.h: Regenerate. 4124 * libbfd.h: Regenerate. 4125 4126 2000-04-06 Michael Snyder <msnyder@seadog.cygnus.com> 4127 4128 * elfcore.h (elf_core_file_p): preserve value of tdata at entry, 4129 and restore it on failure. Release newly allocated tdata on 4130 failure. 4131 4132 Fri Apr 7 11:33:47 2000 Jim Wilson <wilson@cygnus.com> 4133 4134 * dwarf2.c (struct dwarf2_debug): New field dwarf_line_size. 4135 (decode_line_info): Set it. Report error if unit->line_offset is 4136 equal to or larger than it. 4137 4138 2000-04-07 Timothy Wall <twall@cygnus.com> 4139 4140 * targets.c: Added vecs for tic54x. 4141 * reloc.c: Added relocs for tic54x. 4142 * libbfd.h: Regenerated. 4143 * configure: Add TI COFF vecs for tic54x. 4144 * configure.in: Ditto. 4145 * config.bfd (targ_cpu): Recognize new tic54x target. 4146 * coffcode.h (coff_slurp_symbol_table): Additions for TI COFF handling. 4147 * bfd-in2.h: Add tic54x target and relocations. 4148 * Makefile.am, Makefile.in: Add tic54x target. 4149 * archures.c (bfd_archures_list): Add tic54x target. 4150 * coff-tic54x.c: New. 4151 * cpu-tic54x.c: New. 4152 4153 2000-04-06 Michael Snyder <msnyder@seadog.cygnus.com> 4154 4155 * elfcore.h (elf_core_file_p): call backend_object_p which 4156 thereby gets an opportunity to update the arch/machine type. 4157 4158 2000-04-06 Timothy Wall <twall@cygnus.com> 4159 4160 * coffcode.h (coff_slurp_symbol_table): Handle C_STATLAB storage 4161 class. Handle SEC_CLINK and SEC_BLOCK flags. 4162 * section.c: Add SEC_CLINK and SEC_BLOCK flags. 4163 * bfd-in2.h: Add SEC_CLINK and SEC_BLOCK flags. 4164 4165 2000-04-06 Nick Clifton <nickc@cygnus.com> 4166 4167 * elf32-arm.h (elf32_arm_set_private_flags): Only check for 4168 EF_INTERWORK if this is an unknown EABI. 4169 (elf32_arm_merge_private_bfd_data): Check EABI version 4170 numbers. Only check EF_xxx flags if the EABI version number 4171 is unknown. 4172 (elf32_arm_check_private_bfd_data): Only check EF_xxx flags 4173 if the EABI version number is unknown. 4174 (elf32_arm_print_private_bfd_data): Only decode EF_xxx flags 4175 if the EABI version number is unknown. 4176 4177 Wed Apr 5 22:04:20 2000 J"orn Rennecke <amylaar@cygnus.co.uk> 4178 4179 * reloc.c (_bfd_relocate_contents): Add BFD_RELOC_SH_LOOP_START and 4180 BFD_RELOC_SH_LOOP_END. 4181 * elf32-sh.c (sh_elf_howto_tab): Change special_func to 4182 sh_elf_ignore_reloc for all entries that sh_elf_reloc used to ignore. 4183 Add entries for R_SH_LOOP_START and R_SH_LOOP_END. 4184 (sh_elf_reloc_loop): New function. 4185 (sh_elf_reloc): No need to test for always-to-be-ignored relocs 4186 any more. 4187 (sh_rel): Add entries for BFD_RELOC_SH_LOOP_{START,END}. 4188 (sh_elf_relocate_section): Handle BFD_RELOC_SH_LOOP_{START,END}. 4189 * bfd-in2.h, libbfd.h: Regenerate. 4190 4191 2000-04-04 Alan Modra <alan@linuxcare.com.au> 4192 4193 * po/bfd.pot: Regenerate. 4194 4195 * Makefile.am: Remove extraneous mkdep comment. 4196 (MKDEP): Use gcc -MM rather than mkdep. 4197 (DEP): Quote when passing vars to sub-make. Add warning 4198 message to end. 4199 (DEP1): Rewrite for "gcc -MM". 4200 (CLEANFILES): Add DEP2. 4201 Update dependencies. 4202 * Makefile.in: Regenerate. 4203 4204 2000-04-03 Kevin Buettner <kevinb@redhat.com> 4205 4206 * configure.in: Added corefile support for AIX 4.3. In particular, 4207 AIX_CORE_DUMPX_CORE will be defined in addition to AIX_CORE when 4208 compiling rs6000-core.c. 4209 * configure: Regenerated. 4210 4211 2000-04-03 H.J. Lu <hjl@gnu.org> 4212 4213 * cache.c (bfd_open_file): Unlink the output file only if 4214 it has non-zero size. 4215 4216 2000-04-01 Ken Block USG <block@zk3.dec.com> 4217 4218 * elf64-alpha.c (elf64_alpha_relocate_section): Don't emit 4219 relative relocations for non-loaded sections in shared objects. 4220 (elf64_alpha_check_relocs): Similarly. 4221 4222 Mon Apr 3 13:37:15 2000 Hans-Peter Nilsson <hp@axis.com> 4223 4224 * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and 4225 BFD_RELOC_16 to switch for extended relocs. 4226 (MY_swap_ext_reloc_in): New. 4227 (MY_swap_ext_reloc_out): New. 4228 (NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather 4229 than NAME(aout,swap_ext_reloc_in) for extended relocs. 4230 (NAME(aout,squirt_out_relocs)): Similarly use 4231 MY_swap_ext_reloc_out. 4232 (aout_link_reloc_link_order): Use MY_put_ext_reloc if defined. 4233 4234 2000-04-03 Kazu Hirata <kazu@hxi.com> 4235 4236 * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to 4237 the R_PCRWORD_B case. 4238 4239 2000-03-31 Thomas de Lellis <tdel@wrs.com> 4240 4241 * srec.c : Set CHUNK size to 16 bytes to prevent download failures 4242 on some targets. 4243 * ihex.c : Ditto. 4244 4245 Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> 4246 4247 * elf32-m32r.c (m32r_elf_generic_reloc): new function. All 4248 HOWTO references to bfd_elf_generic_reloc, that have 4249 partial_inplace == true, now use the new function. The function 4250 is based on the recent rewrite of m32r_elf_lo16_reloc(), and 4251 extends its fixes to the R_M32R_{16,24,32} relocs. 4252 The new logic in m32r_elf_lo16_reloc() has been removed, and 4253 it instead calls the new routine to obtain that functionality. 4254 4255 2000-03-27 Alan Modra <alan@linuxcare.com.au> 4256 4257 * elf32-avr.c (elf32_avr_gc_mark_hook, elf32_avr_gc_sweep_hook, 4258 elf32_avr_check_relocs, avr_final_link_relocate, 4259 elf32_avr_relocate_section, bfd_elf_avr_final_write_processing, 4260 elf32_avr_object_p): Add prototypes. 4261 (elf32_avr_gc_mark_hook): Add default for h->root.type. 4262 (bfd_elf_avr_final_write_processing): Make static. 4263 4264 2000-03-27 Denis Chertykov <denisc@overta.ru> 4265 4266 * cpu-avr.c: New file. BFD support routines for AVR architecture. 4267 * archures.c (bfd_architecture): Add AVR architecture. 4268 (bfd_archures_list): Add reference to AVR architecture info. 4269 * elf.c (prep_headers): Handle bfd_arch_avr. 4270 * reloc.c: Add various AVR relocation enums. 4271 * targets.c (bfd_elf32_avr_vec): Declare and add to target vector 4272 list. 4273 * Makefile.am: Add support for AVR elf. 4274 * configure.in: Likewise. 4275 * config.bfd: Likewise. 4276 * Makefile.in: Regenerate. 4277 * configure: This too. 4278 * bfd-in2.h: And this. 4279 * libbfd.h: And this. 4280 4281 2000-03-24 H.J. Lu <hjl@gnu.org> 4282 4283 * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Add prototype. 4284 (elf64_alpha_find_reloc_at_ofs): Likewise. 4285 4286 2000-03-17 Alan Modra <alan@linuxcare.com.au> 4287 4288 * reloc.c (bfd_check_overflow): In case complain_overflow_bitfield, 4289 flag an overflow if the bitfield is outside -2**n to 2**n-1. The 4290 allowable range used to be -2**(n-1) to 2**n-1. 4291 * reloc.c (_bfd_relocate_contents): Same here. Also replace 4292 "boolean overflow" with "bfd_reloc_status_type flag". 4293 4294 2000-03-14 Doug Evans <dje@casey.transmeta.com> 4295 4296 * elf32-m32r.c (m32r_elf_lo16_reloc): Rewrite. 4297 4298 2000-03-14 Kazu Hirata <kazu@hxi.com> 4299 4300 * reloc16.c (bfd_coff_reloc16_relax_section): Count the total number 4301 of shrinks properly, including the last reloc. 4302 4303 2000-03-13 Kazu Hirata <kazu@hxi.com> 4304 4305 * coff-h8300.c (h8300_reloc16_extra_cases): Fix the sanity 4306 check for R_MOVL2. 4307 4308 2000-03-11 Alan Modra <alan@linuxcare.com.au> 4309 4310 * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on 4311 a format mismatch rather than an "error" from bfd_read such as 4312 bfd_error_file_truncated. 4313 4314 2000-03-10 Geoff Keating <geoffk@cygnus.com> 4315 4316 * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper 4317 sign-extension and big-endian compensation for 4318 R_MIPS_64 even in ld -r. 4319 4320 2000-03-10 Geoffrey Keating <geoffk@cygnus.com> 4321 4322 * elf32-mips.c (mips_elf_next_relocation): Rename from 4323 mips_elf_next_lo16_relocation, and generalize to look 4324 for any relocation type. 4325 (elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset. 4326 (elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16. 4327 (elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16. 4328 (elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2. 4329 (elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64. 4330 (elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32. 4331 (bfd_elf32_bfd_reloc_type_lookup): Add new relocs. 4332 (mips_rtype_to_howto): Likewise. 4333 (mips_elf_calculate_relocation): Handle new relocs. 4334 (_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs 4335 are paired. The addend for R_MIPS_GNU_REL16_S2 4336 is shifted right two bits. 4337 4338 2000-03-10 Alan Modra <alan@linuxcare.com.au> 4339 4340 * reloc.c (bfd_perform_relocation): Undo emacs formatting of 4341 comment, and ensure it doesn't happen again. 4342 (bfd_install_relocation): Same here. 4343 (_bfd_relocate_contents): Don't bother assigning unused signmask 4344 shift result. Fix typos in comments. 4345 Remove trailing whitespace throughout file. 4346 4347 2000-03-07 Doug Evans <dje@casey.transmeta.com> 4348 4349 * reloc.c (reloc_howto_struct): Fix partial_inplace comment. 4350 * bfd-in2.h: Rebuild. 4351 4352 2000-03-06 Nick Clifton <nickc@cygnus.com> 4353 4354 * peicode.h (struct pe_ILF_vars): Add sym_ptr_table and 4355 sym_ptr_ptr fields. 4356 (SIZEOF_ILF_SYM_PTR_TABLE): Define. 4357 (SIZEOF_ILF_STRINGS): Redefine. 4358 (pe_ILF_make_a_symbol-reloc): New function. Creates a symbol 4359 relative reloc, as opposed to a section relative reloc. 4360 (pe_ILF_make_a_symbol): Set the class of local symbols to C_STAT 4361 not C_LABEL. 4362 Add length of symbol's prefix to string pointer. 4363 Store a pointer to the symbol in the symbol pointer table. 4364 (pe_ILF_build_a_bfd): Do not build .idata$2 or .idata$7. 4365 Initialise the symbol pointer table. 4366 Store the hint in the Hint/Name table. 4367 Make the jump reloc be symbol realtive, not section relative. 4368 Create an import symbol for imported code. 4369 4370 2000-03-06 Catherine Moore <clm@cygnus.com> 4371 4372 * elf.c (swap_out_syms): Check for null type_ptr. 4373 4374 2000-03-01 Hans-Peter Nilsson <hp@axis.com> 4375 4376 * aout-target.h (MY(write_object_contents)): Remove unused 4377 and unusable "#if CHOOSE_RELOC_SIZE". 4378 * pc532-mach.c (MY(write_object_contents)): Ditto. 4379 * netbsd.h (MY(write_object_contents)): Ditto. 4380 * hp300hpux.c (MY(write_object_contents)): Ditto. 4381 * freebsd.h (MY(write_object_contents)): Ditto. 4382 * aout-tic30.c (tic30_aout_write_object_contents): Ditto. 4383 4384 2000-02-29 H.J. Lu <hjl@gnu.org> 4385 4386 * peicode.h (jtab): Make it static. 4387 4388 * coff-sh.c (sh_align_load_span): Declared if COFF_WITH_PE is 4389 defined and COFF_IMAGE_WITH_PE is not defined. 4390 (_bfd_sh_align_load_span): Defined as sh_align_load_span if 4391 COFF_WITH_PE is defined and COFF_IMAGE_WITH_PE is not defined. 4392 4393 2000-03-01 Nick Clifton <nickc@cygnus.com> 4394 4395 * coff-arm.c (bfd_arm_process_before_allocation): Make 4396 'symndx' signed to prevent compile time warning. 4397 4398 * coff-mcore.c: Remove unused prototype for pe_object_p. 4399 4400 * coff-sh.c: Add "#ifndef COFF_IMAGE_WITH_PE" around static 4401 functions that are not used when COFF_IMAGE_WITH_PE is 4402 defined. 4403 (struct sh_opcode): Change type of 'flags' field to unsigned 4404 long so that it can hold the USESAS flag. 4405 4406 * coffcode.h (styp_to_sec_flags): Initialise 'target_name'. 4407 4408 * elf-m10300.c (mn10300_elf_relax_section): Initialise 4409 'sym_sec'. 4410 4411 * elf32-i370.c: Add ATTRIBUTE_UNUSED to unused function 4412 parameters. 4413 Remove unusued variables and code. 4414 (elf_backend_add_symbol_hook): Fix prototype. 4415 4416 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Initialise 'sgot' and 4417 'srelgot'. 4418 4419 * elf32-mcore.c (mcore_elf_relocate_section): Initialise 4420 'oldinst'. 4421 4422 * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function 4423 parameters. 4424 Remove unusued variables and code. 4425 (elf_backend_add_symbol_hook): Fix prototype. 4426 4427 * elf32-sh.c (sh_elf_set_mach_from_flags): Use 'flags'. 4428 4429 * elflink.h (elf_bfd_link_add_symbols): Add ATTRIBUTE_UNUSED 4430 to unused function parameter. 4431 4432 * pe-mips.c: Add ATTRIBUTE_UNUSED to unused function 4433 parameters. 4434 Use EMPTY_HOWTO to initialise empty howto slots. 4435 Remove unused variables. 4436 4437 * peicode.h (pe_ILF_build_a_bfd): Initialise id6. 4438 4439 2000-03-01 H.J. Lu <hjl@gnu.org> 4440 4441 * aoutx.h (aout_link_input_section_std): Pass "true" to 4442 the undefined_symbol callback. 4443 (aout_link_input_section_ext): Likewise. 4444 * bout.c (get_value): Likewise. 4445 * coff-a29k.c (coff_a29k_relocate_section): Likewise. 4446 * coff-alpha.c (alpha_ecoff_get_relocated_section_conten): 4447 Likewise. 4448 (alpha_relocate_section): Likewise. 4449 * coff-arm.c (coff_arm_relocate_section): Likewise. 4450 * coff-i960.c (coff_i960_relocate_section): Likewise. 4451 * coff-mcore.c (coff_mcore_relocate_section): Likewise. 4452 * coff-mips.c (mips_relocate_section): Likewise. 4453 * coff-ppc.c (coff_ppc_relocate_section): Likewise. 4454 * coff-sh.c (sh_relocate_section): Likewise. 4455 * coff-tic80.c (coff_tic80_relocate_section): Likewise. 4456 * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. 4457 * elf-m10200.c (mn10200_elf_relocate_section): Likewise. 4458 * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 4459 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 4460 * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 4461 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 4462 * elf32-i370.c (i370_elf_relocate_section): Likewise. 4463 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 4464 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 4465 * elf32-sh.c (sh_elf_relocate_section): Likewise. 4466 * elf32-v850.c (v850_elf_relocate_section): Likewise. 4467 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise. 4468 * elflink.h (elf_link_output_extsym): Likewise. 4469 * pe-mips.c (coff_pe_mips_relocate_section): Likewise. 4470 * reloc.c (bfd_generic_get_relocated_section_conten): Likewise. 4471 * reloc16.c (_bfd_ppc_xcoff_relocate_section): Likewise. 4472 4473 * elf-hppa.h (elf_hppa_relocate_section): Pass "false" to the 4474 undefined_symbol callback when building shared library with 4475 -Bsymbolic and undefined symbols are allowed. Otherwise, pass 4476 "true". 4477 * elf32-arm.h (elf32_arm_relocate_section): Likewise. 4478 * elf32-i386.c (elf_i386_relocate_section): Likewise. 4479 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 4480 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 4481 (elf32_mips_get_relocated_section_content): Likewise. 4482 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 4483 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 4484 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 4485 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 4486 4487 2000-02-28 Nick Clifton <nickc@cygnus.com> 4488 4489 * Makefile.am: Add rules to build pe[i]-{sh|mips}.lo objects. 4490 * Makefile.in: Regenerate. 4491 4492 * configure.in: Add support for mips and sh pe vectors. 4493 * configure: regenerate. 4494 4495 * config.bfd: Add support for arm-wince, mips-pe and sh-pe 4496 targets. 4497 4498 * targets.c: Add mips and sh pe vectors. 4499 4500 * libpei.h (coff_final_link_postscript): Only define if not 4501 already defined. 4502 4503 * coffcode.h: Add support for WinCE magic numbers. 4504 4505 * peigen.c (pe_print_reloc): Update comment and rearrange 4506 appending of newline character. 4507 4508 * peicode.h: Add support for Image Library Format. 4509 (pe_ILF_vars): Structure containing data used by ILF code. 4510 (pe_ILF_make_a_section): New function. Create a section based 4511 on ILF data. 4512 (pe_ILF_make_a_reloc): New function. Create a reloc based on 4513 ILF data. 4514 (pe_ILF_make_a_symbol): New function. Create a symbol based 4515 on ILF data. 4516 (pe_ILF_save_relocs): New function. Store the relocs created 4517 by pe_ILF_make_a_reloc in a section. 4518 (pe_ILF_build_a_bfd): New function. Create a BFD describing 4519 an ILF object. 4520 (pe_ILF_object_p): New function. Return a bfd_target pointer 4521 for an ILF object. 4522 (pe_bfd_object_p): If an ILF object is detected call 4523 pe_ILF_object_p on it. 4524 4525 * coff-arm.c: Add support for WinCE relocs which are different 4526 from normal ARM COFF relocs. 4527 * pe-arm.c: Unset TARGET_UNDERSCORE for a WinCE target. 4528 4529 * coff-sh.c: Add support for sh-pe target. 4530 * pe-sh.c: New file. Support code for sh-pe target. 4531 * pei-sh.c: New file. Support code for sh-pe target. 4532 4533 * pe-mips.c: New file. Support code for mips-pe target. 4534 * pei-mips.c: New file. Support code for mips-pe target. 4535 4536 2000-02-27 Jakub Jelinek <jakub@redhat.com> 4537 4538 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Don't bump 4539 architecture if the object causing the bump is dynamic. 4540 * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): Likewise, 4541 and also don't it for memory ordering. 4542 (sparc64_elf_write_relocs): Take src_rela out of the loop. 4543 4544 2000-02-27 Ian Lance Taylor <ian@zembu.com> 4545 4546 * dwarf2.c (read_abbrevs): Use _raw_size directly rather than 4547 calling bfd_get_section_size_before_reloc. 4548 (decode_line_info): Likewise. 4549 (_bfd_dwarf2_find_nearest_line): Likewise. 4550 4551 2000-02-27 Eli Zaretskii <eliz@is.elta.co.il> 4552 4553 * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the 4554 name of the libtool directory. 4555 * Makefile.in: Rebuild. 4556 4557 Fri Feb 25 18:39:26 2000 Rodney Brown (RodneyBrown@pmsc.com) 4558 4559 * som.c (SOM_HOWTO): Define. 4560 (som_hppa_howto_table): Use it. 4561 4562 2000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br> 4563 4564 * config.bfd: Enable 64 bit support for GNU/Linux/sparc. 4565 4566 * config.bfd: Enable 64 bit support for Solaris7+/sparc. 4567 4568 2000-02-24 Catherine Moore <clm@cygnus.com> 4569 4570 * som.c (som_misc_symbol_info): Add field 4571 secondary_def. 4572 (som_bfd_derive_misc_symbol_info): Initialize 4573 secondary_def. 4574 (som_build_and_write_symbol_table): Keep track 4575 of secondary_def field. 4576 (som_slurp_symbol_table): Set BSF_WEAK symbol flag 4577 if secondary_def field is set. 4578 (som_bfd_ar_write_symbol_stuff): Initialize 4579 secondary_def. 4580 4581 2000-02-23 Stephane Carrez <stcarrez@worldnet.fr> 4582 4583 * dwarf2.c (read_address): Read 16-bits addresses. 4584 (parse_comp_unit): Accept addr_size == 2. 4585 4586 2000-02-23 Alan Modra <alan@spri.levels.unisa.edu.au> 4587 4588 * bfd-in.h: Update copyright date. 4589 4590 2000-02-23 Linas Vepstas <linas@linas.org> 4591 4592 * cpu-i370.c: New file. 4593 * elf32-i370.c: New file. 4594 * archures.c (enum bfd_architecture): Add bfd_arch_i370. 4595 (bfd_i370_arch): New. 4596 (bfd_archures_list): Add bfd_i370_arch. 4597 * elf.c (prep_headers): Add bfd_arch_i370. 4598 * Makefile.am: Add support for IBM 370 elf. 4599 * config.bfd: Likewise. 4600 * configure.in: Likewise. 4601 * libbfd.h (bfd_reloc_code_real_names): Likewise. 4602 * reloc.c (bfd_reloc_code_type): Likewise. 4603 * targets.c: Likewise. 4604 4605 * Makefile.in: Regenerate. 4606 * configure: Regenerate. 4607 * bfd-in2.h: Regenerate. 4608 4609 2000-02-22 Ian Lance Taylor <ian@zembu.com> 4610 4611 * elf32-i386.c (elf_i386_info_to_howto_rel): Give a warning for 4612 invalid relocation types, and change them to R_386_NONE. 4613 4614 2000-02-22 H.J. Lu <hjl@gnu.org> 4615 4616 * elflink.h (elf_link_add_object_symbols): If a version symbol is 4617 not defined, don't add a second ELF_VER_CHR. 4618 4619 * elflink.h (elf_bfd_final_link): Call output_extsym for global 4620 symbols converted to local symbols even when stripping all 4621 symbols. 4622 (elf_link_output_extsym): Process global symbols converted to 4623 local symbols even if they are being stripped. 4624 4625 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au> 4626 4627 * archures.c (bfd_octets_per_byte): Return unsigned int. 4628 (bfd_arch_mach_octets_per_byte): Ditto. 4629 * libbfd.c (bfd_read, bfd_seek): Quell signed vs. unsigned 4630 comparison warning. 4631 * section.c (bfd_get_section_size_before_reloc): Quell signed 4632 vs. unsigned comparison warning. 4633 (bfd_get_section_size_after_reloc): Same here. Fix parentheses too. 4634 * trad-core.c (trad_unix_core_file_p): Correct 2000-01-27 4635 change. What was I thinking? 4636 * bfd-in2.h: Regenerate. 4637 4638 * elflink.h (elf_gc_sweep): Skip non-elf input bfds. 4639 (elf_gc_sections): Same here. 4640 (elf_gc_common_finalize_got_offsets): And here. 4641 4642 2000-02-21 Ian Lance Taylor <ian@zembu.com> 4643 4644 ELF HPPA doesn't work at present; remove it until it does. 4645 * config.bfd: Comment out setting targ_defvec to 4646 bfd_elf32_hppa_vec. 4647 * Makefile.am: Rebuild dependencies. 4648 (BFD32_BACKENDS): Remove elf32-hppa.lo. 4649 (BFD32_BACKENDS_CFILES): Remove elf32-hppa.c. 4650 (SOURCE_HFILES): Remove elf32-hppa.h and hppa_stubs.h. 4651 * Makefile.in: Rebuild. 4652 * targets.c (bfd_target_vector): Comment out bfd_elf32_hppa_vec. 4653 4654 2000-02-18 Geoff Keating <geoffk@cygnus.com> 4655 4656 * coffcode.h (coff_set_arch_mach_hook): Use free(), because there 4657 is no bfd_free(). Revert bfd_free part of previous change. 4658 4659 2000-02-18 Geoff Keating <geoffk@cygnus.com> 4660 4661 * coffcode.h (coff_set_arch_mach_hook): Don't use variable-size 4662 arrays. 4663 (coff_compute_section_file_positions): Use bfd_free to pair 4664 bfd_malloc. 4665 (coff_write_object_contents): Likewise. 4666 4667 * coff-rs6000.c (xcoff_howto_table_16): New variable. 4668 (xcoff_rtype2howto): Handle 16-bit variants of 32-bit relocs. 4669 4670 2000-02-18 Ulrich Drepper <drepper@cygnus.com> 4671 4672 * coff-rs6000.c (XCOFFARMAGBIG): New macro. 4673 (xcoff_ar_file_hdr_big): New structure. 4674 (SIZEOF_AR_FILE_HDR_BIG): New macro. 4675 (xcoff_ar_hdr_big): New structure. 4676 (SIZEOF_AR_HDR_BIG): New macro. 4677 (xcoff_big_format_p): New macro. 4678 (xcoff_ardata_big): New macro. 4679 (arch_xhdr_big): New macro. 4680 (xcoff_slurp_armap): Handle large archives. 4681 (xcoff_archive_p): Detect large archives. 4682 (xcoff_read_ar_hdr): Handle large archives. 4683 (xcoff_openr_next_archived_file): Handle large archives. 4684 (xcoff_generic_stat_arch_elt): Handle large archives. 4685 (xcoff_write_armap_old): Rename from xcoff_write_armap. 4686 (xcoff_write_armap_big): New function. 4687 (xcoff_write_armap): New function, dispatch to _old or _big. 4688 (xcoff_write_archive_contents_old): Rename from 4689 xcoff_write_archive_contents. 4690 (xcoff_write_archive_contents_big): New function. 4691 (xcoff_write_archive_contents): New function, dispatch to _old or 4692 _big. 4693 4694 2000-02-18 Richard Henderson <rth@cygnus.com> 4695 4696 * elf-bfd.h (struct elf_link_hash_table): Remove copy_indirect 4697 and hide_symbol members. 4698 (elf_link_hash_copy_indirect): Remove. 4699 (elf_link_hash_hide_symbol): Remove. 4700 (struct elf_backend_data): Add elf_backend_copy_indirect_symbol 4701 and elf_backend_hide_symbol. 4702 (_bfd_elf_link_hash_copy_indirect): Declare. 4703 (_bfd_elf_link_hash_hide_symbol): Declare. 4704 * elf.c (_bfd_elf_link_hash_copy_indirect): Remove table argument. 4705 (_bfd_elf_link_hash_hide_symbol): Likewise. 4706 (_bfd_elf_link_hash_table_init): Don't init killed members. 4707 * elflink.h (elf_link_add_object_symbols): Use the bed function 4708 pointers not elf_link_hash_{copy_indirect,hide_symbol}. 4709 (elf_link_assign_sym_version): Likewise. 4710 * elfxx-target.h (elf_backend_copy_indirect_symbol): Default. 4711 (elf_backend_hide_symbol): Likewise. 4712 (elfNN_bed): Update for new members. 4713 4714 2000-02-17 Kevin Buettner <kevinb@redhat.com> 4715 4716 * rs6000-core.c (CORE_DATA_SIZE_FIELD, CORE_COMM_FIELD, SAVE_FIELD, 4717 STACK_END_ADDR): Define for new core file format. 4718 (LOADER_OFFSET_FIELD, LOADER_REGION_SIZE, CORE_DUMP): New defines 4719 for handling the vagaries of the various core file structures used 4720 by AIX over the years. 4721 (rs6000coff_core_p, rs6000coff_core_file_matches_executable, 4722 Rs6kCorData): Use above defines to adapt code to use AIX 4.3's 4723 core_dumpx structure. 4724 4725 Thu Feb 17 00:04:48 2000 J"orn Rennecke <amylaar@cygnus.co.uk> 4726 4727 * archures.c (bfd_mach_sh2, bfd_mach_sh_dsp): New macros. 4728 (bfd_mach_sh3_dsp): Likewise. 4729 (bfd_mach_sh4): Reinstate. 4730 (bfd_default_scan): Recognize 7410, 7708, 7729 and 7750. 4731 * bfd-in2.h: Regenerate. 4732 * coff-sh.c (struct sh_opcode): flags is no longer short. 4733 (USESAS, USESAS_REG, USESR8, SETSAS, SETSAS_REG): New macros. 4734 (sh_opcode41, sh_opcode42): Integrate as sh_opcode41. 4735 (sh_opcode01, sh_opcode02, sh_opcode40): Add sh-dsp opcodes. 4736 (sh_opcode41, sh_opcode4, sh_opcode80): Likewise. 4737 (sh_opcodes): No longer const. 4738 (sh_dsp_opcodef0, sh_dsp_opcodef): New arrays. 4739 (sh_insn_uses_reg): Check for USESAS and USESR8. 4740 (sh_insn_sets_reg, sh_insns_conflict): Check for SETSAS. 4741 (_bfd_sh_align_load_span): Return early for SH4. 4742 Modify sh_opcodes lookup table for sh-dsp / sh3-dsp. 4743 Take into account that field b of a parallel processing insn 4744 could be mistaken for a separate insn. 4745 * cpu-sh.c (arch_info_struct): New array elements for 4746 sh2, sh-dsp and sh3-dsp. 4747 Reinstate element for sh4. 4748 (SH2_NEXT, SH_DSP_NEXT, SH3_DSP_NEXT): New macros. 4749 (SH4_NEXT): Reinstate. 4750 (SH3_NEXT, SH3E_NEXT): Adjust. 4751 * elf-bfd.h (_sh_elf_set_mach_from_flags): Declare. 4752 * elf32-sh.c (sh_elf_set_private_flags): New function. 4753 (sh_elf_copy_private_data, sh_elf_set_mach_from_flags): Likewise. 4754 (sh_elf_merge_private_data): New function. 4755 (elf_backend_object_p, bfd_elf32_bfd_set_private_bfd_flags): Define. 4756 (bfd_elf32_bfd_copy_private_bfd_data): Define. 4757 (bfd_elf32_bfd_merge_private_bfd_data): Change to 4758 sh_elf_merge_private_data. 4759 4760 2000-02-13 Richard Henderson <rth@cygnus.com> 4761 4762 * elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and 4763 hide_symbol members. 4764 (elf_link_hash_copy_indirect): New. 4765 (elf_link_hash_hide_symbol): New. 4766 * elflink.h (elf_link_add_object_symbols): Break out copy from 4767 indirect new new symbol to elf.c. 4768 (elf_link_assign_sym_version): Break out privatization of 4769 non-exported symbol to elf.c. 4770 * elf.c (_bfd_elf_link_hash_copy_indirect): New. 4771 (_bfd_elf_link_hash_hide_symbol): New. 4772 (_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol. 4773 4774 2000-02-13 Ian Lance Taylor <ian@zembu.com> 4775 4776 * section.c (_bfd_strip_section_from_output): Add info parameter. 4777 If it passed as non-NULL, use it to check whether any input BFD 4778 has an input section which uses this output section. Change all 4779 callers. 4780 * bfd-in2.h: Rebuild. 4781 4782 * bfd-in.h: Move declarations of bfd_get_elf_phdr_upper_bound and 4783 bfd_get_elf_phdrs in from bfd-in2.h, correcting patch of 4784 1999-11-29. 4785 * bfd-in2.h: Rebuild. 4786 4787 2000-02-10 Timothy Wall <twall@cygnus.com> 4788 4789 * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to 4790 allow final modifications of swapped-in symbol. 4791 (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST. 4792 * coffcode.h (coff_write_relocs): Use macro 4793 SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether 4794 symbol index should be set to -1. 4795 4796 Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) 4797 4798 * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG, 4799 USESF1_REG, USESF2_REG, SETSF1_REG, SETSF2_REG): New macros. 4800 * (sh_insn_sets_reg, sh_insn_sets_freg): New prototypes. 4801 * (sh_insn_sets_reg, sh_insn_uses_or_sets_reg, sh_insns_sets_freg, 4802 sh_insns_uses_or_sets_freg): New functions. 4803 * (sh_insn_uses_reg, sh_insn_uses_freg): Use new macros. 4804 * (sh_insns_conflict): Use new functions and new macros to 4805 detect conflicts when two instructions both set same integer registers, 4806 both set same fp register, and both set special register. 4807 4808 2000-02-09 Timothy Wall <twall@cygnus.com> 4809 4810 * coffgen.c (coff_real_object_p): Set arch/mach info prior to 4811 swapping in sections, so that the swapping routines have access to 4812 the arch/mach info. 4813 4814 2000-02-08 Mark Elbrecht <snowball3@bigfoot.com> 4815 4816 * coff-go32.c: Update comment. Update copyright. 4817 4818 2000-01-27 Thomas de Lellis <tdel@windriver.com> 4819 4820 * syms.c (bfd_decode_symclass) 4821 Two new class characters were added - 'V' and 'v'. The 4822 meaning of 'W' is now restricted to just weak non-object 4823 symbols. This allows differentiation between, for example, 4824 weak functions vs weak objects. nm for example now dumps: 4825 'W' = weak global 4826 'w' = weak unresolved 4827 'V' = weak global object 4828 'v' = weak unresolved object 4829 4830 (bfd_is_undefined_symclass): New function. Return true if the 4831 given symbol class represents and undefined/unresolved symbol. 4832 4833 (bfd_symbol_info): Use bfd_is_undefined_symclass to check for 4834 unresolved symbols. 4835 4836 * bfd-in2.h: Add prototype for bfd_is_undefined_symbol(). 4837 4838 * elf32-arm.h (elf32_arm_get_symbol_type): If a symbol has the 4839 STT_ARM_16BIT flag set, but it is not attached to a data object 4840 return STT_ARM_16BIT so that it will be treated as code by the 4841 disassembler. 4842 4843 2000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au> 4844 4845 * coff-i386.c (i3coff_object_p): Remove prototype. 4846 Update copyright. 4847 4848 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Add const 4849 to name. Update copyright. 4850 4851 * trad-core.c (trad_unix_core_file_p): Cast core_regsec 4852 assignment to avoid warning. Update copyright. 4853 4854 2000-01-24 Robert Lipe (robertl@sco.com) 4855 4856 * coffcode.h (coff_write_object_contents): Get buff via bfd_malloc 4857 instead of using GNU C extension. 4858 4859 2000-01-21 Nick Clifton <nickc@cygnus.com> 4860 4861 * libbfd.c (bfd_read): Do not attempt to get a negativly sized 4862 amount from a bfd_in_memory structure. 4863 (bfd_seek): Do not allow seeks past the end of a bfd_in_memory 4864 structure. 4865 4866 2000-01-14 Nick Clifton <nickc@cygnus.com> 4867 4868 * linker.c (default_indirect_link_order): oops - fix incorrectly 4869 applied patch from Tim Wall. 4870 4871 2000-01-13 Timothy Wall (twall@tiac.net> 4872 4873 * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx 4874 = scnhsz, filhsz, relsz, aoutsz, etc) 4875 4876 * coffswap.h: Ditto. 4877 4878 2000-01-13 Nick Clifton <nickc@cygnus.com> 4879 4880 * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to 4881 interwork thumb to arm stub. 4882 4883 2000-01-13 Timothy Wall (twall@tiac.net> 4884 4885 * archures.c (bfd_octets_per_byte): New function: Return 4886 target byte size. 4887 (bfd_arch_mach_octets_per_byte): New function: Return target 4888 byte size. 4889 4890 * section.c: Distinguish between octets and bytes for usage of 4891 _cooked_size, _raw_size, and output_offset. Clarify 4892 description of bfd_set_section_contents. 4893 4894 * bfd-in2.h: Regenerate. 4895 4896 * coffgen.c: Indicate that the offset parameter is in bytes, not 4897 octets. 4898 4899 * cofflink.c (bfd_coff_link_input_bfd): Use bfd_octets_per_byte 4900 where appropriate to get the octet offset when calling 4901 bfd_set_section_contents. 4902 (bfd_coff_reloc_link_order): Ditto. 4903 4904 * linker.c (bfd_generic_reloc_link_order): Ditto. 4905 (_bfd_default_link_order): Ditto. 4906 4907 * reloc.c (bfd_perform_relocation): Distinguish between octets 4908 and bytes. Use octets when indexing into octet data; use bytes 4909 when calculating target addresses. 4910 (bfd_install_relocation): Ditto. 4911 4912 * srec.c (srec_write_section): Ditto. 4913 4914 2000-01-13 Nick Clifton <nickc@cygnus.com> 4915 4916 * coff-mcore.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from 4917 3 to 2. This allows 4 byte sized sections, which is necessary for 4918 dlltool to build functioning DLLs. 4919 4920 2000-01-10 Philip Blundell <pb@futuretv.com> 4921 4922 * config.bfd (arm*-*-linux-gnu*): Match instead of arm*-*-linux-gnu. 4923 (arm*-*-conix*): New target. 4924 4925 2000-01-10 Egor Duda <deo@logos-m.ru> 4926 4927 * config.bfd: Include elf32_i386 vector to target list for cygwin 4928 and mingw. 4929 4930 * config.in: Undefine HAVE_WIN32_PSTATUS_T. 4931 * configure.in: Test for structure win32_pstatus_t in 4932 <sys/procfs.h> 4933 * configure: Regenerate. 4934 4935 * elf.c (elfcore_grok_win32pstatus): New function: process 4936 win32_pstatus_t notes in elf core file. 4937 (elfcore_grok_note): Detect win32_pstatus notes. 4938 4939 2000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de> 4940 4941 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Process symbol 4942 visibility. 4943 * elflink.h (elf_link_add_object_symbols): Combine visibilities. 4944 * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility. 4945 4946 For older changes see ChangeLog-9899 8081 * po/ja.po: Import from translation project's web site. 8082 8083 2002-01-02 Nick Clifton <nickc@cambridge.redhat.com> 8084 8085 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error 8086 messages to ease translation into other languages. 8087 8088 For older changes see ChangeLog-0001 4947 8089 4948 8090 -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.
