ChangeLog revision 68765
12000-11-07 Alan Modra <alan@linuxcare.com.au> 2 3 * coff-h8300.c (special): Adjust reloc address. 4 5 From mainline 2000-04-03 Kazu Hirata <kazu@hxi.com> 6 * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to 7 the R_PCRWORD_B case. 8 92000-11-05 Philip Blundell <philb@gnu.org> 10 11 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit 12 BFDs containing no sections to be merged, regardless of their flags. 13 142000-11-04 Philip Blundell <philb@gnu.org> 15 16 * elf32-arm.h (elf32_arm_relocate_section): Suppress error message 17 if a relocation for an undefined symbol also results in an 18 overflow. 19 202000-10-31 Philip Blundell <philb@gnu.org> 21 22 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle 23 EF_SOFT_FLOAT if it is defined. 24 25 From 2000-05-23 H.J. Lu <hjl@gnu.org> 26 * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo. 27 282000-10-27 Philip Blundell <philb@gnu.org> 29 30 * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse 31 attempts to mix PIC code with non-PIC, just mark the output as 32 being position dependent. 33 (elf32_arm_merge_private_bfd_data): Likewise. Print an error 34 message for EF_SOFT_FLOAT mismatches. Display diagnostics for 35 all mismatches, not just the first one. 36 372000-10-23 Philip Blundell <pb@futuretv.com> 38 39 From 2000-05-23 H.J. Lu <hjl@gnu.org> 40 * elf64-alpha.c (elf64_alpha_relocate_section): Check 41 h->root.other not h->other. 42 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 43 442000-10-23 Philip Blundell <pb@futuretv.com> 45 46 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Undo previous 47 accidental checkin. 48 492000-10-22 Philip Blundell <philb@gnu.org> 50 51 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make 52 PLT entries that could serve as a definition for a weak symbol. 53 54 From 2000-06-05 H.J. Lu <hjl@gnu.org> 55 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag 56 an error when seeing an undefined symbol with hidden/internal 57 attribute. It is handled in *_relocate_section (). 58 59 From 2000-05-23 H.J. Lu <hjl@gnu.org> 60 * elf32-i386.c (elf_i386_relocate_section): Don't allow the 61 undefined symbol with the non-default visibility attributes. 62 * elf-hppa.h (elf_hppa_relocate_section): Likewise. 63 * elf32-arm.h (elf32_arm_relocate_section): Likewise. 64 * elf32-i370.c (i370_elf_relocate_section): Likewise. 65 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 66 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 67 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 68 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 69 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 70 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 71 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 72 732000-10-16 Geoffrey Keating <geoffk@cygnus.com> 74 75 From 2000-10-14 Geoffrey Keating <geoffk@cygnus.com> 76 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT 77 entries that could serve as a definition for a weak symbol. 78 792000-10-15 Philip Blundell <philb@gnu.org> 80 81 From 2000-09-08 Nick Clifton <nickc@redhat.com> 82 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not 83 initialise flags in output bfd if the input bfd is the default 84 architecture with the default flags. 85 86 From 2000-09-03 Philip Blundell <philb@gnu.org> 87 * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate 88 references to undefined symbols in debugging sections. 89 90 From 2000-05-30 H.J. Lu <hjl@gnu.org> 91 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the 92 visibility bits if the symbol is undefined. Correctly handle 93 weak undefined symbols with hidden and internal attributes. 94 * elflink.h (elf_link_add_object_symbols): Always turn the 95 symbol into local if it has the hidden or internal attribute. 96 97 From 2000-05-22 H.J. Lu <hjl@gnu.org> 98 * elflink.h (elf_link_output_extsym): Clear the visibility 99 field for symbols not defined locally. 100 101 From 2000-05-03 Martin v. L�wis <loewis@informatik.hu-berlin.de> 102 * elflink.h (elf_link_add_object_symbols): Reset dynindx for 103 hidden and internal symbols. 104 (elf_fix_symbol_flags): Clear NEEDS_PLT for symbols with 105 visibility. 106 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Do not 107 assign a PLT or GOT entry to symbols with hidden and 108 internal visibility. 109 1102000-10-16 Philip Blundell <pb@futuretv.com> 111 112 * configure.in: Set version to 2.10.1. 113 * configure: Regenerate. 114 1152000-09-24 H.J. Lu <hjl@gnu.org> 116 117 From 2000-04-20 H.J. Lu <hjl@gnu.org> 118 * elf32-i386.c (elf_i386_relocate_section): Restrict 1998-12-10 119 patch to symbols defined by a shared object. 120 1212000-09-06 Philip Blundell <philb@gnu.org> 122 123 Merge from mainline: 124 125 2000-05-31 Ulrich Drepper <drepper@redhat.com> 126 127 * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version 128 definitions. We must not assume they are sorted in the file 129 according to their index numbers. 130 1312000-09-06 Philip Blundell <philb@gnu.org> 132 133 * config.bfd (arm*-*-uclinux*): New target. 134 (armeb-*-elf, arm*b-*-linux-gnu*): Likewise. 135 1362000-08-22 Doug Kwan <dkwan@transmeta.com> 137 138 * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo. 139 * coffcode.h (coff_set_flags): Add detection of w65 architecture. 140 1412000-04-14 Matthew Green <mrg@cygnus.com> 142 143 * config.bfd: Add NetBSD/sparc64 support. 144 1452000-05-31 Mark Kettenis <kettenis@gnu.org> 146 147 Add support for FreeBSD/Alpha. 148 * configure.in: Add alpha*-*-freebsd* entry to prevent including 149 OSF core file support. 150 * configure: Regenerate. 151 1522000-05-29 Philip Blundell <philb@gnu.org> 153 154 * ppcboot.c: Add packed attribute if compiling with GCC. 155 1562000-05-29 Anatoly Vorobey <mellon@pobox.com> 157 158 * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal. 159 1602000-05-26 Alan Modra <alan@linuxcare.com.au> 161 162 * sysdep.h (gettext, dgettext, dcgettext, textdomain, 163 bindtextdomain): Replace defines with those from intl/libgettext.h 164 to quieten gcc warnings. 165 1662000-05-26 Eli Zaretskii <eliz@is.elta.co.il> 167 168 * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH. 169 170 * archive.c (normalize, bfd_bsd_truncate_arname, 171 bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support 172 file names with backslashes. 173 174 * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file 175 before opening it. 176 177 * sysdep.h: Include filenames.h. 178 1792000-05-26 Alan Modra <alan@linuxcare.com.au> 180 181 * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777. 182 1832000-05-23 Philip Blundell <pb@futuretv.com> 184 185 * configure.in: Set version to 2.10. 186 * configure: Regenerate. 187 188Sat Jul 3 10:35:19 CDT 1999 Joel Sherrill <joel@OARcorp.com> 189 190 * config.bfd (sparc-rtemself): Added. 191 (sparc-rtemsaout): Added as alternate name for current sparc-rtems. 192 (sparc-rtems): Switched to ELF from a.out 193 (i386-rtemscoff): Added as alternate name for current i386-rtems. 194 (i386-rtems): Switched to ELF. 195 1962000-05-09 Alan Modra <alan@linuxcare.com.au> 197 198 * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela 199 section is empty. 200 (copy_private_bfd_data): Allow for space possibly taken up by elf 201 headers when calculating segment physical address from lma. 202 2032000-05-08 Alan Modra <alan@linuxcare.com.au> 204 205 * versados.c (versados_scan): Init stringlen and pass_2_done. 206 207 * trad-core.c (trad_unix_core_file_p): Return 208 bfd_error_wrong_format rather than bfd_error_file_truncated. 209 210 * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to 211 add_data_entry. DataDirectory virtual address is relative. 212 (pe_print_idata): Account for relative DataDirectory virtual 213 addresses. Don't trash datasize inside POWERPC_LE_PE code. 214 (pe_print_edata): Similarly. 215 216 From Szabolcs Szakacsits <szaka@F-Secure.com> 217 * peigen.c (dir_names): Add Delay Import Directory. 218 (pe_print_idata): Always search for bfd section containing 219 idata address rather than looking up section name. Print this 220 section name rather than .idata. 221 (pe_print_edata): Similarly. Also print some fields as %08lx. 222 (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as 223 Win32Version. 224 2252000-05-03 Mark Elbrecht <snowball3@bigfoot.com> 226 227 * bfd/coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for 228 the .bss section. 229 * bfd/coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. 230 2312000-05-02 H.J. Lu <hjl@gnu.org> 232 233 * elf.c (prep_headers): Use ELFOSABI_NONE instead of 234 ELFOSABI_SYSV. 235 2362000-04-29 Andreas Jaeger <aj@suse.de> 237 238 * libbfd-in.h: Correctly check GCC version. 239 * bfd-in.h: Likewise. 240 * libhppa.h: Likewise. 241 * libbfd.h: Regenerate. 242 * bfd-in2.h: Regenerate. 243 2442000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> 245 246 K&R compiler fixes. 247 * dwarf2.c (concat_filename): Avoid string literal concatenation. 248 * ieee.c (ieee_get_symtab): Don't initialise union in struct. 249 2502000-04-12 Alan Modra <alan@linuxcare.com.au> 251 252 * dep-in.sed: Match space before file name, not after. 253 * Makefile.am: Regenerate dependencies. 254 * Makefile.in: Regenerate. 255 256 * reloc.c (_bfd_relocate_contents): In complain_overflow_bitfield 257 case, allow address wrap-around stupidly removed 2000-03-17. Sign 258 extend without an if statement. 259 2602000-04-04 Alan Modra <alan@linuxcare.com.au> 261 262 * po/bfd.pot: Regenerate. 263 264 * Makefile.am: Remove extraneous mkdep comment. 265 (MKDEP): Use gcc -MM rather than mkdep. 266 (DEP): Quote when passing vars to sub-make. Add warning 267 message to end. 268 (DEP1): Rewrite for "gcc -MM". 269 (CLEANFILES): Add DEP2. 270 Update dependencies. 271 * Makefile.in: Regenerate. 272 2732000-04-03 H.J. Lu <hjl@gnu.org> 274 275 * cache.c (bfd_open_file): Unlink the output file only if 276 it has non-zero size. 277 2782000-04-01 Ken Block USG <block@zk3.dec.com> 279 280 * elf64-alpha.c (elf64_alpha_relocate_section): Don't emit 281 relative relocations for non-loaded sections in shared objects. 282 (elf64_alpha_check_relocs): Similarly. 283 2842000-03-31 Thomas de Lellis <tdel@wrs.com> 285 286 * srec.c : Set CHUNK size to 16 bytes to prevent download failures 287 on some targets. 288 * ihex.c : Ditto. 289 290Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> 291 292 * elf32-m32r.c (m32r_elf_generic_reloc): new function. All 293 HOWTO references to bfd_elf_generic_reloc, that have 294 partial_inplace == true, now use the new function. The function 295 is based on the recent rewrite of m32r_elf_lo16_reloc(), and 296 extends its fixes to the R_M32R_{16,24,32} relocs. 297 The new logic in m32r_elf_lo16_reloc() has been removed, and 298 it instead calls the new routine to obtain that functionality. 299 3002000-03-27 Alan Modra <alan@linuxcare.com.au> 301 302 * elf32-avr.c (elf32_avr_gc_mark_hook, elf32_avr_gc_sweep_hook, 303 elf32_avr_check_relocs, avr_final_link_relocate, 304 elf32_avr_relocate_section, bfd_elf_avr_final_write_processing, 305 elf32_avr_object_p): Add prototypes. 306 (elf32_avr_gc_mark_hook): Add default for h->root.type. 307 (bfd_elf_avr_final_write_processing): Make static. 308 3092000-03-27 Denis Chertykov <denisc@overta.ru> 310 311 * cpu-avr.c: New file. BFD support routines for AVR architecture. 312 * archures.c (bfd_architecture): Add AVR architecture. 313 (bfd_archures_list): Add reference to AVR architecture info. 314 * elf.c (prep_headers): Handle bfd_arch_avr. 315 * reloc.c: Add various AVR relocation enums. 316 * targets.c (bfd_elf32_avr_vec): Declare and add to target vector 317 list. 318 * Makefile.am: Add support for AVR elf. 319 * configure.in: Likewise. 320 * config.bfd: Likewise. 321 * Makefile.in: Regenerate. 322 * configure: This too. 323 * bfd-in2.h: And this. 324 * libbfd.h: And this. 325 3262000-03-24 H.J. Lu <hjl@gnu.org> 327 328 * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Add prototype. 329 (elf64_alpha_find_reloc_at_ofs): Likewise. 330 3312000-03-17 Alan Modra <alan@linuxcare.com.au> 332 333 * reloc.c (bfd_check_overflow): In case complain_overflow_bitfield, 334 flag an overflow if the bitfield is outside -2**n to 2**n-1. The 335 allowable range used to be -2**(n-1) to 2**n-1. 336 * reloc.c (_bfd_relocate_contents): Same here. Also replace 337 "boolean overflow" with "bfd_reloc_status_type flag". 338 3392000-03-14 Doug Evans <dje@casey.transmeta.com> 340 341 * elf32-m32r.c (m32r_elf_lo16_reloc): Rewrite. 342 3432000-03-14 Kazu Hirata <kazu@hxi.com> 344 345 * reloc16.c (bfd_coff_reloc16_relax_section): Count the total number 346 of shrinks properly, including the last reloc. 347 3482000-03-13 Kazu Hirata <kazu@hxi.com> 349 350 * coff-h8300.c (h8300_reloc16_extra_cases): Fix the sanity 351 check for R_MOVL2. 352 3532000-03-11 Alan Modra <alan@linuxcare.com.au> 354 355 * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on 356 a format mismatch rather than an "error" from bfd_read such as 357 bfd_error_file_truncated. 358 3592000-03-10 Geoff Keating <geoffk@cygnus.com> 360 361 * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper 362 sign-extension and big-endian compensation for 363 R_MIPS_64 even in ld -r. 364 3652000-03-10 Geoffrey Keating <geoffk@cygnus.com> 366 367 * elf32-mips.c (mips_elf_next_relocation): Rename from 368 mips_elf_next_lo16_relocation, and generalize to look 369 for any relocation type. 370 (elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset. 371 (elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16. 372 (elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16. 373 (elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2. 374 (elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64. 375 (elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32. 376 (bfd_elf32_bfd_reloc_type_lookup): Add new relocs. 377 (mips_rtype_to_howto): Likewise. 378 (mips_elf_calculate_relocation): Handle new relocs. 379 (_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs 380 are paired. The addend for R_MIPS_GNU_REL16_S2 381 is shifted right two bits. 382 3832000-03-10 Alan Modra <alan@linuxcare.com.au> 384 385 * reloc.c (bfd_perform_relocation): Undo emacs formatting of 386 comment, and ensure it doesn't happen again. 387 (bfd_install_relocation): Same here. 388 (_bfd_relocate_contents): Don't bother assigning unused signmask 389 shift result. Fix typos in comments. 390 Remove trailing whitespace throughout file. 391 3922000-03-07 Doug Evans <dje@casey.transmeta.com> 393 394 * reloc.c (reloc_howto_struct): Fix partial_inplace comment. 395 * bfd-in2.h: Rebuild. 396 3972000-03-06 Nick Clifton <nickc@cygnus.com> 398 399 * peicode.h (struct pe_ILF_vars): Add sym_ptr_table and 400 sym_ptr_ptr fields. 401 (SIZEOF_ILF_SYM_PTR_TABLE): Define. 402 (SIZEOF_ILF_STRINGS): Redefine. 403 (pe_ILF_make_a_symbol-reloc): New function. Creates a symbol 404 relative reloc, as opposed to a section relative reloc. 405 (pe_ILF_make_a_symbol): Set the class of local symbols to C_STAT 406 not C_LABEL. 407 Add length of symbol's prefix to string pointer. 408 Store a pointer to the symbol in the symbol pointer table. 409 (pe_ILF_build_a_bfd): Do not build .idata$2 or .idata$7. 410 Initialise the symbol pointer table. 411 Store the hint in the Hint/Name table. 412 Make the jump reloc be symbol realtive, not section relative. 413 Create an import symbol for imported code. 414 4152000-03-06 Catherine Moore <clm@cygnus.com> 416 417 * elf.c (swap_out_syms): Check for null type_ptr. 418 4192000-03-01 Hans-Peter Nilsson <hp@axis.com> 420 421 * aout-target.h (MY(write_object_contents)): Remove unused 422 and unusable "#if CHOOSE_RELOC_SIZE". 423 * pc532-mach.c (MY(write_object_contents)): Ditto. 424 * netbsd.h (MY(write_object_contents)): Ditto. 425 * hp300hpux.c (MY(write_object_contents)): Ditto. 426 * freebsd.h (MY(write_object_contents)): Ditto. 427 * aout-tic30.c (tic30_aout_write_object_contents): Ditto. 428 4292000-02-29 H.J. Lu <hjl@gnu.org> 430 431 * peicode.h (jtab): Make it static. 432 433 * coff-sh.c (sh_align_load_span): Declared if COFF_WITH_PE is 434 defined and COFF_IMAGE_WITH_PE is not defined. 435 (_bfd_sh_align_load_span): Defined as sh_align_load_span if 436 COFF_WITH_PE is defined and COFF_IMAGE_WITH_PE is not defined. 437 4382000-03-01 Nick Clifton <nickc@cygnus.com> 439 440 * coff-arm.c (bfd_arm_process_before_allocation): Make 441 'symndx' signed to prevent compile time warning. 442 443 * coff-mcore.c: Remove unused prototype for pe_object_p. 444 445 * coff-sh.c: Add "#ifndef COFF_IMAGE_WITH_PE" around static 446 functions that are not used when COFF_IMAGE_WITH_PE is 447 defined. 448 (struct sh_opcode): Change type of 'flags' field to unsigned 449 long so that it can hold the USESAS flag. 450 451 * coffcode.h (styp_to_sec_flags): Initialise 'target_name'. 452 453 * elf-m10300.c (mn10300_elf_relax_section): Initialise 454 'sym_sec'. 455 456 * elf32-i370.c: Add ATTRIBUTE_UNUSED to unused function 457 parameters. 458 Remove unusued variables and code. 459 (elf_backend_add_symbol_hook): Fix prototype. 460 461 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Initialise 'sgot' and 462 'srelgot'. 463 464 * elf32-mcore.c (mcore_elf_relocate_section): Initialise 465 'oldinst'. 466 467 * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function 468 parameters. 469 Remove unusued variables and code. 470 (elf_backend_add_symbol_hook): Fix prototype. 471 472 * elf32-sh.c (sh_elf_set_mach_from_flags): Use 'flags'. 473 474 * elflink.h (elf_bfd_link_add_symbols): Add ATTRIBUTE_UNUSED 475 to unused function parameter. 476 477 * pe-mips.c: Add ATTRIBUTE_UNUSED to unused function 478 parameters. 479 Use EMPTY_HOWTO to initialise empty howto slots. 480 Remove unused variables. 481 482 * peicode.h (pe_ILF_build_a_bfd): Initialise id6. 483 4842000-03-01 H.J. Lu <hjl@gnu.org> 485 486 * aoutx.h (aout_link_input_section_std): Pass "true" to 487 the undefined_symbol callback. 488 (aout_link_input_section_ext): Likewise. 489 * bout.c (get_value): Likewise. 490 * coff-a29k.c (coff_a29k_relocate_section): Likewise. 491 * coff-alpha.c (alpha_ecoff_get_relocated_section_conten): 492 Likewise. 493 (alpha_relocate_section): Likewise. 494 * coff-arm.c (coff_arm_relocate_section): Likewise. 495 * coff-i960.c (coff_i960_relocate_section): Likewise. 496 * coff-mcore.c (coff_mcore_relocate_section): Likewise. 497 * coff-mips.c (mips_relocate_section): Likewise. 498 * coff-ppc.c (coff_ppc_relocate_section): Likewise. 499 * coff-sh.c (sh_relocate_section): Likewise. 500 * coff-tic80.c (coff_tic80_relocate_section): Likewise. 501 * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. 502 * elf-m10200.c (mn10200_elf_relocate_section): Likewise. 503 * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 504 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 505 * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 506 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 507 * elf32-i370.c (i370_elf_relocate_section): Likewise. 508 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 509 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 510 * elf32-sh.c (sh_elf_relocate_section): Likewise. 511 * elf32-v850.c (v850_elf_relocate_section): Likewise. 512 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise. 513 * elflink.h (elf_link_output_extsym): Likewise. 514 * pe-mips.c (coff_pe_mips_relocate_section): Likewise. 515 * reloc.c (bfd_generic_get_relocated_section_conten): Likewise. 516 * reloc16.c (_bfd_ppc_xcoff_relocate_section): Likewise. 517 518 * elf-hppa.h (elf_hppa_relocate_section): Pass "false" to the 519 undefined_symbol callback when building shared library with 520 -Bsymbolic and undefined symbols are allowed. Otherwise, pass 521 "true". 522 * elf32-arm.h (elf32_arm_relocate_section): Likewise. 523 * elf32-i386.c (elf_i386_relocate_section): Likewise. 524 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 525 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 526 (elf32_mips_get_relocated_section_content): Likewise. 527 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 528 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 529 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 530 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 531 5322000-02-28 Nick Clifton <nickc@cygnus.com> 533 534 * Makefile.am: Add rules to build pe[i]-{sh|mips}.lo objects. 535 * Makefile.in: Regenerate. 536 537 * configure.in: Add support for mips and sh pe vectors. 538 * configure: regenerate. 539 540 * config.bfd: Add support for arm-wince, mips-pe and sh-pe 541 targets. 542 543 * targets.c: Add mips and sh pe vectors. 544 545 * libpei.h (coff_final_link_postscript): Only define if not 546 already defined. 547 548 * coffcode.h: Add support for WinCE magic numbers. 549 550 * peigen.c (pe_print_reloc): Update comment and rearrange 551 appending of newline character. 552 553 * peicode.h: Add support for Image Library Format. 554 (pe_ILF_vars): Structure containing data used by ILF code. 555 (pe_ILF_make_a_section): New function. Create a section based 556 on ILF data. 557 (pe_ILF_make_a_reloc): New function. Create a reloc based on 558 ILF data. 559 (pe_ILF_make_a_symbol): New function. Create a symbol based 560 on ILF data. 561 (pe_ILF_save_relocs): New function. Store the relocs created 562 by pe_ILF_make_a_reloc in a section. 563 (pe_ILF_build_a_bfd): New function. Create a BFD describing 564 an ILF object. 565 (pe_ILF_object_p): New function. Return a bfd_target pointer 566 for an ILF object. 567 (pe_bfd_object_p): If an ILF object is detected call 568 pe_ILF_object_p on it. 569 570 * coff-arm.c: Add support for WinCE relocs which are different 571 from normal ARM COFF relocs. 572 * pe-arm.c: Unset TARGET_UNDERSCORE for a WinCE target. 573 574 * coff-sh.c: Add support for sh-pe target. 575 * pe-sh.c: New file. Support code for sh-pe target. 576 * pei-sh.c: New file. Support code for sh-pe target. 577 578 * pe-mips.c: New file. Support code for mips-pe target. 579 * pei-mips.c: New file. Support code for mips-pe target. 580 5812000-02-27 Jakub Jelinek <jakub@redhat.com> 582 583 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Don't bump 584 architecture if the object causing the bump is dynamic. 585 * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): Likewise, 586 and also don't it for memory ordering. 587 (sparc64_elf_write_relocs): Take src_rela out of the loop. 588 5892000-02-27 Ian Lance Taylor <ian@zembu.com> 590 591 * dwarf2.c (read_abbrevs): Use _raw_size directly rather than 592 calling bfd_get_section_size_before_reloc. 593 (decode_line_info): Likewise. 594 (_bfd_dwarf2_find_nearest_line): Likewise. 595 5962000-02-27 Eli Zaretskii <eliz@is.elta.co.il> 597 598 * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the 599 name of the libtool directory. 600 * Makefile.in: Rebuild. 601 602Fri Feb 25 18:39:26 2000 Rodney Brown (RodneyBrown@pmsc.com) 603 604 * som.c (SOM_HOWTO): Define. 605 (som_hppa_howto_table): Use it. 606 6072000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br> 608 609 * config.bfd: Enable 64 bit support for GNU/Linux/sparc. 610 611 * config.bfd: Enable 64 bit support for Solaris7+/sparc. 612 6132000-02-24 Catherine Moore <clm@cygnus.com> 614 615 * som.c (som_misc_symbol_info): Add field 616 secondary_def. 617 (som_bfd_derive_misc_symbol_info): Initialize 618 secondary_def. 619 (som_build_and_write_symbol_table): Keep track 620 of secondary_def field. 621 (som_slurp_symbol_table): Set BSF_WEAK symbol flag 622 if secondary_def field is set. 623 (som_bfd_ar_write_symbol_stuff): Initialize 624 secondary_def. 625 6262000-02-23 Stephane Carrez <stcarrez@worldnet.fr> 627 628 * dwarf2.c (read_address): Read 16-bits addresses. 629 (parse_comp_unit): Accept addr_size == 2. 630 6312000-02-23 Alan Modra <alan@spri.levels.unisa.edu.au> 632 633 * bfd-in.h: Update copyright date. 634 6352000-02-23 Linas Vepstas <linas@linas.org> 636 637 * cpu-i370.c: New file. 638 * elf32-i370.c: New file. 639 * archures.c (enum bfd_architecture): Add bfd_arch_i370. 640 (bfd_i370_arch): New. 641 (bfd_archures_list): Add bfd_i370_arch. 642 * elf.c (prep_headers): Add bfd_arch_i370. 643 * Makefile.am: Add support for IBM 370 elf. 644 * config.bfd: Likewise. 645 * configure.in: Likewise. 646 * libbfd.h (bfd_reloc_code_real_names): Likewise. 647 * reloc.c (bfd_reloc_code_type): Likewise. 648 * targets.c: Likewise. 649 650 * Makefile.in: Regenerate. 651 * configure: Regenerate. 652 * bfd-in2.h: Regenerate. 653 6542000-02-22 Ian Lance Taylor <ian@zembu.com> 655 656 * elf32-i386.c (elf_i386_info_to_howto_rel): Give a warning for 657 invalid relocation types, and change them to R_386_NONE. 658 6592000-02-22 H.J. Lu <hjl@gnu.org> 660 661 * elflink.h (elf_link_add_object_symbols): If a version symbol is 662 not defined, don't add a second ELF_VER_CHR. 663 664 * elflink.h (elf_bfd_final_link): Call output_extsym for global 665 symbols converted to local symbols even when stripping all 666 symbols. 667 (elf_link_output_extsym): Process global symbols converted to 668 local symbols even if they are being stripped. 669 6702000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au> 671 672 * archures.c (bfd_octets_per_byte): Return unsigned int. 673 (bfd_arch_mach_octets_per_byte): Ditto. 674 * libbfd.c (bfd_read, bfd_seek): Quell signed vs. unsigned 675 comparison warning. 676 * section.c (bfd_get_section_size_before_reloc): Quell signed 677 vs. unsigned comparison warning. 678 (bfd_get_section_size_after_reloc): Same here. Fix parentheses too. 679 * trad-core.c (trad_unix_core_file_p): Correct 2000-01-27 680 change. What was I thinking? 681 * bfd-in2.h: Regenerate. 682 683 * elflink.h (elf_gc_sweep): Skip non-elf input bfds. 684 (elf_gc_sections): Same here. 685 (elf_gc_common_finalize_got_offsets): And here. 686 6872000-02-21 Ian Lance Taylor <ian@zembu.com> 688 689 ELF HPPA doesn't work at present; remove it until it does. 690 * config.bfd: Comment out setting targ_defvec to 691 bfd_elf32_hppa_vec. 692 * Makefile.am: Rebuild dependencies. 693 (BFD32_BACKENDS): Remove elf32-hppa.lo. 694 (BFD32_BACKENDS_CFILES): Remove elf32-hppa.c. 695 (SOURCE_HFILES): Remove elf32-hppa.h and hppa_stubs.h. 696 * Makefile.in: Rebuild. 697 * targets.c (bfd_target_vector): Comment out bfd_elf32_hppa_vec. 698 6992000-02-18 Geoff Keating <geoffk@cygnus.com> 700 701 * coffcode.h (coff_set_arch_mach_hook): Use free(), because there 702 is no bfd_free(). Revert bfd_free part of previous change. 703 7042000-02-18 Geoff Keating <geoffk@cygnus.com> 705 706 * coffcode.h (coff_set_arch_mach_hook): Don't use variable-size 707 arrays. 708 (coff_compute_section_file_positions): Use bfd_free to pair 709 bfd_malloc. 710 (coff_write_object_contents): Likewise. 711 712 * coff-rs6000.c (xcoff_howto_table_16): New variable. 713 (xcoff_rtype2howto): Handle 16-bit variants of 32-bit relocs. 714 7152000-02-18 Ulrich Drepper <drepper@cygnus.com> 716 717 * coff-rs6000.c (XCOFFARMAGBIG): New macro. 718 (xcoff_ar_file_hdr_big): New structure. 719 (SIZEOF_AR_FILE_HDR_BIG): New macro. 720 (xcoff_ar_hdr_big): New structure. 721 (SIZEOF_AR_HDR_BIG): New macro. 722 (xcoff_big_format_p): New macro. 723 (xcoff_ardata_big): New macro. 724 (arch_xhdr_big): New macro. 725 (xcoff_slurp_armap): Handle large archives. 726 (xcoff_archive_p): Detect large archives. 727 (xcoff_read_ar_hdr): Handle large archives. 728 (xcoff_openr_next_archived_file): Handle large archives. 729 (xcoff_generic_stat_arch_elt): Handle large archives. 730 (xcoff_write_armap_old): Rename from xcoff_write_armap. 731 (xcoff_write_armap_big): New function. 732 (xcoff_write_armap): New function, dispatch to _old or _big. 733 (xcoff_write_archive_contents_old): Rename from 734 xcoff_write_archive_contents. 735 (xcoff_write_archive_contents_big): New function. 736 (xcoff_write_archive_contents): New function, dispatch to _old or 737 _big. 738 7392000-02-18 Richard Henderson <rth@cygnus.com> 740 741 * elf-bfd.h (struct elf_link_hash_table): Remove copy_indirect 742 and hide_symbol members. 743 (elf_link_hash_copy_indirect): Remove. 744 (elf_link_hash_hide_symbol): Remove. 745 (struct elf_backend_data): Add elf_backend_copy_indirect_symbol 746 and elf_backend_hide_symbol. 747 (_bfd_elf_link_hash_copy_indirect): Declare. 748 (_bfd_elf_link_hash_hide_symbol): Declare. 749 * elf.c (_bfd_elf_link_hash_copy_indirect): Remove table argument. 750 (_bfd_elf_link_hash_hide_symbol): Likewise. 751 (_bfd_elf_link_hash_table_init): Don't init killed members. 752 * elflink.h (elf_link_add_object_symbols): Use the bed function 753 pointers not elf_link_hash_{copy_indirect,hide_symbol}. 754 (elf_link_assign_sym_version): Likewise. 755 * elfxx-target.h (elf_backend_copy_indirect_symbol): Default. 756 (elf_backend_hide_symbol): Likewise. 757 (elfNN_bed): Update for new members. 758 7592000-02-17 Kevin Buettner <kevinb@redhat.com> 760 761 * rs6000-core.c (CORE_DATA_SIZE_FIELD, CORE_COMM_FIELD, SAVE_FIELD, 762 STACK_END_ADDR): Define for new core file format. 763 (LOADER_OFFSET_FIELD, LOADER_REGION_SIZE, CORE_DUMP): New defines 764 for handling the vagaries of the various core file structures used 765 by AIX over the years. 766 (rs6000coff_core_p, rs6000coff_core_file_matches_executable, 767 Rs6kCorData): Use above defines to adapt code to use AIX 4.3's 768 core_dumpx structure. 769 770Thu Feb 17 00:04:48 2000 J"orn Rennecke <amylaar@cygnus.co.uk> 771 772 * archures.c (bfd_mach_sh2, bfd_mach_sh_dsp): New macros. 773 (bfd_mach_sh3_dsp): Likewise. 774 (bfd_mach_sh4): Reinstate. 775 (bfd_default_scan): Recognize 7410, 7708, 7729 and 7750. 776 * bfd-in2.h: Regenerate. 777 * coff-sh.c (struct sh_opcode): flags is no longer short. 778 (USESAS, USESAS_REG, USESR8, SETSAS, SETSAS_REG): New macros. 779 (sh_opcode41, sh_opcode42): Integrate as sh_opcode41. 780 (sh_opcode01, sh_opcode02, sh_opcode40): Add sh-dsp opcodes. 781 (sh_opcode41, sh_opcode4, sh_opcode80): Likewise. 782 (sh_opcodes): No longer const. 783 (sh_dsp_opcodef0, sh_dsp_opcodef): New arrays. 784 (sh_insn_uses_reg): Check for USESAS and USESR8. 785 (sh_insn_sets_reg, sh_insns_conflict): Check for SETSAS. 786 (_bfd_sh_align_load_span): Return early for SH4. 787 Modify sh_opcodes lookup table for sh-dsp / sh3-dsp. 788 Take into account that field b of a parallel processing insn 789 could be mistaken for a separate insn. 790 * cpu-sh.c (arch_info_struct): New array elements for 791 sh2, sh-dsp and sh3-dsp. 792 Reinstate element for sh4. 793 (SH2_NEXT, SH_DSP_NEXT, SH3_DSP_NEXT): New macros. 794 (SH4_NEXT): Reinstate. 795 (SH3_NEXT, SH3E_NEXT): Adjust. 796 * elf-bfd.h (_sh_elf_set_mach_from_flags): Declare. 797 * elf32-sh.c (sh_elf_set_private_flags): New function. 798 (sh_elf_copy_private_data, sh_elf_set_mach_from_flags): Likewise. 799 (sh_elf_merge_private_data): New function. 800 (elf_backend_object_p, bfd_elf32_bfd_set_private_bfd_flags): Define. 801 (bfd_elf32_bfd_copy_private_bfd_data): Define. 802 (bfd_elf32_bfd_merge_private_bfd_data): Change to 803 sh_elf_merge_private_data. 804 8052000-02-13 Richard Henderson <rth@cygnus.com> 806 807 * elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and 808 hide_symbol members. 809 (elf_link_hash_copy_indirect): New. 810 (elf_link_hash_hide_symbol): New. 811 * elflink.h (elf_link_add_object_symbols): Break out copy from 812 indirect new new symbol to elf.c. 813 (elf_link_assign_sym_version): Break out privatization of 814 non-exported symbol to elf.c. 815 * elf.c (_bfd_elf_link_hash_copy_indirect): New. 816 (_bfd_elf_link_hash_hide_symbol): New. 817 (_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol. 818 8192000-02-13 Ian Lance Taylor <ian@zembu.com> 820 821 * section.c (_bfd_strip_section_from_output): Add info parameter. 822 If it passed as non-NULL, use it to check whether any input BFD 823 has an input section which uses this output section. Change all 824 callers. 825 * bfd-in2.h: Rebuild. 826 827 * bfd-in.h: Move declarations of bfd_get_elf_phdr_upper_bound and 828 bfd_get_elf_phdrs in from bfd-in2.h, correcting patch of 829 1999-11-29. 830 * bfd-in2.h: Rebuild. 831 8322000-02-10 Timothy Wall <twall@cygnus.com> 833 834 * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to 835 allow final modifications of swapped-in symbol. 836 (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST. 837 * coffcode.h (coff_write_relocs): Use macro 838 SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether 839 symbol index should be set to -1. 840 841Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) 842 843 * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG, 844 USESF1_REG, USESF2_REG, SETSF1_REG, SETSF2_REG): New macros. 845 * (sh_insn_sets_reg, sh_insn_sets_freg): New prototypes. 846 * (sh_insn_sets_reg, sh_insn_uses_or_sets_reg, sh_insns_sets_freg, 847 sh_insns_uses_or_sets_freg): New functions. 848 * (sh_insn_uses_reg, sh_insn_uses_freg): Use new macros. 849 * (sh_insns_conflict): Use new functions and new macros to 850 detect conflicts when two instructions both set same integer registers, 851 both set same fp register, and both set special register. 852 8532000-02-09 Timothy Wall <twall@cygnus.com> 854 855 * coffgen.c (coff_real_object_p): Set arch/mach info prior to 856 swapping in sections, so that the swapping routines have access to 857 the arch/mach info. 858 8592000-02-08 Mark Elbrecht <snowball3@bigfoot.com> 860 861 * coff-go32.c: Update comment. Update copyright. 862 8632000-01-27 Thomas de Lellis <tdel@windriver.com> 864 865 * syms.c (bfd_decode_symclass) 866 Two new class characters were added - 'V' and 'v'. The 867 meaning of 'W' is now restricted to just weak non-object 868 symbols. This allows differentiation between, for example, 869 weak functions vs weak objects. nm for example now dumps: 870 'W' = weak global 871 'w' = weak unresolved 872 'V' = weak global object 873 'v' = weak unresolved object 874 875 (bfd_is_undefined_symclass): New function. Return true if the 876 given symbol class represents and undefined/unresolved symbol. 877 878 (bfd_symbol_info): Use bfd_is_undefined_symclass to check for 879 unresolved symbols. 880 881 * bfd-in2.h: Add prototype for bfd_is_undefined_symbol(). 882 883 * elf32-arm.h (elf32_arm_get_symbol_type): If a symbol has the 884 STT_ARM_16BIT flag set, but it is not attached to a data object 885 return STT_ARM_16BIT so that it will be treated as code by the 886 disassembler. 887 8882000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au> 889 890 * coff-i386.c (i3coff_object_p): Remove prototype. 891 Update copyright. 892 893 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Add const 894 to name. Update copyright. 895 896 * trad-core.c (trad_unix_core_file_p): Cast core_regsec 897 assignment to avoid warning. Update copyright. 898 8992000-01-24 Robert Lipe (robertl@sco.com) 900 901 * coffcode.h (coff_write_object_contents): Get buff via bfd_malloc 902 instead of using GNU C extension. 903 9042000-01-21 Nick Clifton <nickc@cygnus.com> 905 906 * libbfd.c (bfd_read): Do not attempt to get a negativly sized 907 amount from a bfd_in_memory structure. 908 (bfd_seek): Do not allow seeks past the end of a bfd_in_memory 909 structure. 910 9112000-01-14 Nick Clifton <nickc@cygnus.com> 912 913 * linker.c (default_indirect_link_order): oops - fix incorrectly 914 applied patch from Tim Wall. 915 9162000-01-13 Timothy Wall (twall@tiac.net> 917 918 * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx 919 = scnhsz, filhsz, relsz, aoutsz, etc) 920 921 * coffswap.h: Ditto. 922 9232000-01-13 Nick Clifton <nickc@cygnus.com> 924 925 * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to 926 interwork thumb to arm stub. 927 9282000-01-13 Timothy Wall (twall@tiac.net> 929 930 * archures.c (bfd_octets_per_byte): New function: Return 931 target byte size. 932 (bfd_arch_mach_octets_per_byte): New function: Return target 933 byte size. 934 935 * section.c: Distinguish between octets and bytes for usage of 936 _cooked_size, _raw_size, and output_offset. Clarify 937 description of bfd_set_section_contents. 938 939 * bfd-in2.h: Regenerate. 940 941 * coffgen.c: Indicate that the offset parameter is in bytes, not 942 octets. 943 944 * cofflink.c (bfd_coff_link_input_bfd): Use bfd_octets_per_byte 945 where appropriate to get the octet offset when calling 946 bfd_set_section_contents. 947 (bfd_coff_reloc_link_order): Ditto. 948 949 * linker.c (bfd_generic_reloc_link_order): Ditto. 950 (_bfd_default_link_order): Ditto. 951 952 * reloc.c (bfd_perform_relocation): Distinguish between octets 953 and bytes. Use octets when indexing into octet data; use bytes 954 when calculating target addresses. 955 (bfd_install_relocation): Ditto. 956 957 * srec.c (srec_write_section): Ditto. 958 9592000-01-13 Nick Clifton <nickc@cygnus.com> 960 961 * coff-mcore.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from 962 3 to 2. This allows 4 byte sized sections, which is necessary for 963 dlltool to build funcitoning DLLs. 964 9652000-01-10 Philip Blundell <pb@futuretv.com> 966 967 * config.bfd (arm*-*-linux-gnu*): Match instead of arm*-*-linux-gnu. 968 (arm*-*-conix*): New target. 969 9702000-01-10 Egor Duda <deo@logos-m.ru> 971 972 * config.bfd: Include elf32_i386 vector to target list for cygwin 973 and mingw. 974 975 * config.in: Undefine HAVE_WIN32_PSTATUS_T. 976 * configure.in: Test for structure win32_pstatus_t in 977 <sys/procfs.h> 978 * configure: Regenerate. 979 980 * elf.c (elfcore_grok_win32pstatus): New function: process 981 win32_pstatus_t notes in elf core file. 982 (elfcore_grok_note): Detect win32_pstatus notes. 983 9842000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de> 985 986 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Process symbol 987 visibility. 988 * elflink.h (elf_link_add_object_symbols): Combine visibilities. 989 * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility. 990 9911999-12-29 Richard Henderson <rth@cygnus.com> 992 993 * elflink.h (bfd_elf,size_dynamic_sections): Don't export all 994 if no dynamic sections created. 995 9961999-12-27 Nick Clifton <nickc@cygnus.com> 997 998 * peicode.h (pe_bfd_object_p): Only define for PE format 999 targets. 1000 10011999-12-17 Nick Clifton <nickc@cygnus.com> 1002 1003 * coff-i386.c (i3coff_object_p): Delete. 1004 (i386coff_vec): Replace reference to i3coff_object_p with a 1005 reference to coff_object_p. 1006 1007 * coff-mcore.c (pe_object_p): Delete. 1008 1009 * peicode.h (pe_bfd_object_p): New function: Detect the 1010 presence of a PE format COFF object file. Also detect and 1011 warn about the presence of LINK6 format Image Library Format 1012 object files. 1013 10141999-12-16 Nick Clifton <nickc@cygnus.com> 1015 1016 * coff-arm.c (NUM_ELEM): New macro. 1017 (NUM_RELOCS): New macro: The number of known ARM relocs. 1018 (RTYPE2HOWTO): Return NULL if the reloc type is out of range. 1019 (coff_arm_rtype_to_howto): Return NULL if the reloc type is out 1020 of range. 1021 (bfd_arm_process_before_allocation): Produce a warning message if 1022 an out of range symbol index is encountered. 1023 10241999-12-14 Nick Clifton <nickc@cygnus.com> 1025 1026 * elflink.h (is_global_symbol_definition): New Function: Return 1027 true iff the symbol is being given a global definition in this 1028 bfd. 1029 (elf_link_is_defined_archive_symbol): Do not bother processing 1030 symbols for an archive element that has already been included 1031 in the link. 1032 Use is_global_symbol_definition(). 1033 10341999-12-09 Andrew Cagney <cagney@cygnus.com> 1035 1036 * config.bfd: Add support for sparc-*-netbsdelf* and 1037 sparc-*-netbsdaout*. 1038 10391999-12-13 Nick Clifton <nickc@cygnus.com> 1040 1041 * elflink.h (elf_link_is_defined_archive_symbol): Check to see 1042 if the symbol is in the common section. 1043 10441999-12-10 Nick Clifton <nickc@cygnus.com> 1045 1046 * elflink.h (elf_link_is_defined_archive_symbol): New 1047 function: Decide if a symbol, in an archive map is there 1048 because it is defined in the archive element, or because it is 1049 just another common declaration of it. 1050 (elf_link_add_archive_symbols): Use 1051 elf_link_is_defined_archive_symbol to decide if an archive 1052 element contain a reference to a common symbol should be 1053 linked in or not. 1054 10551999-12-10 Nick Clifton <nickc@cygnus.com> 1056 1057 * elflink.h: Revert previous patch. 1058 * targets.c: Revert previous patch. 1059 * libbfd-in2.h: Revert previous patch. 1060 * libbfd.h: Revert previous patch. 1061 * elfxx-target.h: Revert previous patch. 1062 * archive.c: Revert previous patch. 1063 * aout-target.h: Revert previous patch. 1064 * aout-tic30.h: Revert previous patch. 1065 * bfd.c: Revert previous patch. 1066 * coff-alpha.c: Revert previous patch. 1067 * coff-rs6000.c: Revert previous patch. 1068 * elf64-mips.c: Revert previous patch. 1069 * ieee.c: Revert previous patch. 1070 * libecoff.h: Revert previous patch. 1071 * oasys.c: Revert previous patch. 1072 * som.c: Revert previous patch. 1073 * vms.c: Revert previous patch. 1074 10751999-12-09 Nick Clifton <nickc@cygnus.com> 1076 1077 * elflink.h (elf_link_add_archive_symbols): Add an archive 1078 element even if contains a symbol which is currently only 1079 considered to be a common. 1080 1081 * targets.c (struct bfd_target): Add new field 1082 _bfd_allow_commons_in_armap. 1083 * bfd-in2.h:Regenerate. 1084 1085 * libbfd-in2.h (_bfd_noarchive_allow_commons_in_armap): 1086 Define. 1087 (_bfd_archive_bsd_allow_commons_in_armap): Define. 1088 * libbfd.h: Regenerate. 1089 1090 * elfxx-target.h: If using COFF archive map, override 1091 definition of allow_commons_in_armap and replace with 1092 bfd_false. 1093 1094 * archive.c (bfd_compute_and_write_armap): Do not place common 1095 symbols into the archive map unless _bfd_allow_commons_in_armap 1096 returns true. 1097 1098 * aout-target.h (MY_allow_commons_in_armap): Define. 1099 * aout-tic30.h (MY_allow_commons_in_armap): Define. 1100 * bfd.c (bfd_allow_commons_in_armap): Define. 1101 * coff-alpha.h (alpha_ecoff_allow_commons_in_armap): Define. 1102 * coff-rs6000.h (xcoff_allow_commons_in_armap): Define. 1103 * elf64-mips.c (bfd_elf64_allow_commons_in_armap): Define. 1104 * ieee.c (ieee_ecoff_allow_commons_in_armap): Define. 1105 * libecoff.h (_bfd_ecoff_allow_commons_in_armap): Define. 1106 * oasys.c (oasys_allow_commons_in_armap): Define. 1107 * som.c (som_allow_commons_in_armap): Define. 1108 * vms.c (vms_allow_commons_in_armap): Define. 1109 11101999-12-07 Jim Blandy <jimb@cygnus.com> 1111 1112 Add support for SSE registers in ELF core files. 1113 * elf.c (elfcore_make_note_pseudosection): New function. 1114 (elfcore_grok_prfpreg): Use it. 1115 (elfcore_grok_prxfpreg): New function. 1116 (elfcore_grok_note): Recognize Linux NT_PRXFPREG notes. 1117 11181999-12-03 Ian Lance Taylor <ian@zembu.com> 1119 1120 * elf32-mips.c (mips_elf_calculate_relocation): Divide R_MIPS_PC16 1121 value by 4 before storing it back in the field. From 1122 Koundinya. K <kk@ddeorg.soft.net>. 1123 1124Tue Nov 30 22:41:14 1999 Jeffrey A Law (law@cygnus.com) 1125 1126 * archures.c (bfd_mach_am33): Define. 1127 * bfd-in2.h: Rebuilt. 1128 * cpu-m10300.c (bfd_am33_arch): Add to the mn103 architecture list 1129 * elf-m10300.c (mn10300_elf_relax_section): Handle am33 instructions. 1130 (compute_function_info): Handle additional registers saved by 1131 movm on the am33. 1132 (elf_mn10300_mach): Handle E_MN10300_MACH_AM33. 1133 (_bfd_mn10300_elf_final_write_processing): Handle bfd_mach_am33. 1134 11351999-11-29 Jim Blandy <jimb@cygnus.com> 1136 1137 * elf.c (bfd_get_elf_phdrs, bfd_get_elf_phdr_upper_bound): New 1138 functions. 1139 * bfd-in2.h (bfd_get_elf_phdrs, bfd_get_elf_phdr_upper_bound): New 1140 declarations. 1141 11421999-11-27 Michael Meissner <meissner@cygnus.com> 1143 1144 * reloc.c (BFD_RELOC_ALPHA_USER_LITERAL): New relocation for 1145 internal use within gas for alpha explicit relocations. 1146 (BFD_RELOC_ALPHA_USER_LITUSE_BASE): Ditto. 1147 (BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF): Ditto. 1148 (BFD_RELOC_ALPHA_USER_LITUSE_JSR): Ditto. 1149 (BFD_RELOC_ALPHA_USER_GPDISP): Ditto. 1150 (BFD_RELOC_ALPHA_USER_GPRELHIGH): Ditto. 1151 (BFD_RELOC_ALPHA_USER_GPRELLOW): Ditto. 1152 1153 * elf64-alpha.c (elf64_alpha_reloc_map): Add mappings for 1154 BFD_RELOC_ALPHA_USER_*. 1155 1156 * bfd-in2.h: Regenerate. 1157 * libbfd.h: Regenerate. 1158 11591999-11-26 Fred Fish <fnf@cygnus.com> 1160 1161 * elf.c (elfcore_read_notes): Add prototype for static function. 1162 (_bfd_elf_make_section_from_phdr): Renamed from bfd_section_from_phdr. 1163 (bfd_section_from_phdr): Replacement function that calls 1164 _bfd_elf_make_section_from_phdr for generic segment types and 1165 backend fucntion pointed to by elf_backend_section_from_phdr for 1166 backend specific segment types. 1167 (_bfd_elfcore_section_from_phdr): Remove call to elfcore_read_notes, 1168 now called by _bfd_elf_make_section_from_phdr. Note that this func 1169 is now just a stub between the caller and bfd_section_from_phdr. 1170 1171 * elf-bfd.h (struct elf_backend_data): Add new function pointer 1172 elf_backend_section_from_phdr. 1173 (elf_backend_section_from_phdr): Add prototype. 1174 1175 * elfxx-target.h (elf_backend_section_from_phdr): Define default. 1176 (elfNN_bed): Add elf_backend_section_from_phdr. 1177 11781999-11-25 Nick Clifton <nickc@cygnus.com> 1179 1180 * coff-arm.c (bfd_arm_get_bfd_for_interworking): Add 1181 SEC_CODE and SEC_READONLY flags to glue sections. 1182 1183 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Add 1184 SEC_CODE and SEC_READONLY flags to glue sections. 1185 11861999-11-20 Nick Clifton <nickc@cygnus.com> 1187 1188 * coff-mcore.c (coff_mcore_relocate_section): Fix typo in previous 1189 delta. 1190 11911999-11-19 Catherine Moore <clm@cygnus.com> 1192 1193 * elf32-m68k.c (elf_cpu32_plt0_entry): Fix encoding. 1194 (elf_cpu32_plt_entry): Likewise. 1195 11961999-11-18 Nick Clifton <nickc@cygnus.com> 1197 1198 * coff-mcore.c (coff_mcore_rtype_to_howto): Special case handling 1199 for RVA relocs. 1200 (coff_mcore_relocate_section): Initialise addend to 0. 1201 Special case processing of RVA reloc. 1202 12031999-11-17 Richard Henderson <rth@cygnus.com> 1204 1205 * elf-bfd.h (struct elf_backend_data): Reorder collect and 1206 type_change_ok; add sign_extend_vma. 1207 * elf32-mips.c (elf_backend_sign_extend_vma): Define. 1208 * elfcode.h (elf_swap_symbol_in): Mind be->sign_extend_vma. 1209 (elf_swap_shdr_in, elf_swap_phdr_in): Likewise. 1210 * elfxx-target.h (elf_backend_sign_extend_vma): Default. 1211 (elfNN_bed): Follow struture changes. 1212 12131999-11-09 Ian Lance Taylor <ian@zembu.com> 1214 1215 * libbfd.c (bfd_read): Check result of read against desired result 1216 using !=, not <. 1217 (_bfd_generic_get_section_contents): Set bfd_error if the seek is 1218 invalid compared to the section size. 1219 1220 * ieee.c (ieee_slurp_debug): Get the length of the debug 1221 information right if there is no data part. 1222 1223Tue Nov 2 01:44:41 1999 Jeffrey A Law (law@cygnus.com) 1224 1225 * som.c (som_fixup_formats): Improve handling of R_AUX_UNWIND, 1226 R_LINETAB, R_LINETAB_ESC, and R_COMMENT. 1227 12281999-10-28 Ian Lance Taylor <ian@zembu.com> 1229 1230 * elflink.h (elf_bfd_final_link): Make last_local signed. 1231 12321999-10-27 Ian Lance Taylor <ian@zembu.com> 1233 1234 * stabs.c (_bfd_link_section_stabs): Make sure .stabstr section 1235 starts with a zero. 1236 1237Sat Oct 23 17:36:12 1999 Andrew Cagney <cagney@b1.cygnus.com> 1238 1239 * archures.c: Add definitions bfd_mach_d10v, bfd_mach_d10v_ts2 and 1240 bfd_mach_d10v_ts3. 1241 * cpu-d10v.c (d10v_ts3_info, d10v_ts2_info): Add. 1242 * bfd-in2.h: Regenerate. 1243 12441999-10-15 Andrew Haley <aph@cygnus.com> 1245 1246 * dwarf1.c (parse_die): Fail to parse a die if its length is zero. 1247 1248Sun Oct 17 17:19:00 1999 Jeffrey A Law (law@cygnus.com) 1249 1250 * libhppa.h (bfd_hppa_insn2fmt): Change to return an int. 1251 12521999-10-08 Ian Lance Taylor <ian@zembu.com> 1253 1254 * elflink.h (elf_merge_symbol): When overriding a weak symbol with 1255 a defined symbol in a shared library, clear the DEF_DYNAMIC flag 1256 too. 1257 1258Fri Oct 8 13:03:45 1999 Geoffrey Keating <geoffk@cygnus.com> 1259 1260 * elf32-mips.c (mips_elf_calculate_relocation): R_MIPS_LITERAL 1261 relocs also need the GP value. 1262 (_bfd_mips_elf_relocate_section): Handle unpaired LO16 relocs 1263 properly. Handle sign-extension for R_MIPS_64 correctly. Correct 1264 the GP value for R_MIPS_LITERAL relocs too. Handle 1265 R_MIPS_64 relocs properly on big-endian MIPS. 1266 (mips_elf_sign_extend): Behave properly with 'long long'. 1267 (mips_elf_highest): Correct typo. 1268 1269Mon Oct 4 17:49:45 1999 Nick Clifton <nickc@cygnus.com> 1270 1271 * cpu-m32r.c (arch_info_struct): New static global. 1272 (bfd_m32r_arch): Refer to it. 1273 * elf32-m32r.c (m32r_elf_object_p): Recognize E_M32RX_ARCH. 1274 (m32r_elf_print_private_bfd_data): Ditto. 1275 (m32r_elf_final_write_processing): Handle bfd_mach_m32rx. 1276 * archures.c (bfd_mach_m32rx): Define it. 1277 * bfd-in2.h: Rebuild. 1278 12791999-09-28 Fred Fish <fnf@cygnus.com> 1280 1281 * targets.c (cisco_core_vec): Replaced with two new vecs ... 1282 (cisco_core_big_vec): Add new bigendian vec. 1283 (cisco_core_little_vec): Add new little endian vec. 1284 1285 * cisco-core.c (CRASH_INFO): Fixed offset replaced with ... 1286 (crash_info_locs): Add array of possible offsets. 1287 (MASK_ADDR): Mask to apply to crash info offset. 1288 (crashinfo_external): Add textbase, database, bssbase and 1289 turn into a typedef. 1290 (cisco_core_file_validate): Renamed from cisco_core_file_p. 1291 Many small changes to account for additional hardware versions. 1292 Pick a reasonable size for ".reg" section. Add a ".crash" 1293 section to allow access to crashinfo_external struct. 1294 (cisco_core_file_p): New version of this function that 1295 iterates over crash_info_locs, calling cisco_core_file_validate. 1296 (cisco_core_vec): Old big endian only vec replaced with ... 1297 (cisco_core_big_vec): Add big endian version. 1298 (cisco_core_little_vec): Add little endian version. 1299 1300 * configure.in (cisco_core_vec): Split to two new vectors ... 1301 (cisco_core_big_vec): New target vector. 1302 (cisco_core_little_vec): New target vector. 1303 * configure: Regenerate. 1304 * config.bfd (targ): For m68*-*-aout* targ, change cisco_core_vec 1305 to cisco_core_big_vec in targ_selvecs. 1306 13071999-09-28 Geoffrey Keating <geoffk@cygnus.com> 1308 1309 * elf32-mips.c (mips_elf_relocate_hi16): Unused, delete. 1310 (mips_elf_relocate_got_local): Unused, delete. 1311 (mips_elf_relocate_global_got): Unused, delete. 1312 13131999-09-24 Fred Fish <fnf@cygnus.com> 1314 1315 * elf.c (bfd_section_from_phdr): Add typename variable. Use p_type 1316 to initialize it to something meaningful. Then use it to generate 1317 more useful segment names. 1318 1319Sun Sep 19 12:16:47 1999 Jeffrey A Law (law@cygnus.com) 1320 1321 * som.c (NO_PCREL_MODES): Define if the system does not define 1322 R_SHORT_PCREL_MODE. 1323 (hppa_som_gen_reloc_type): Handle both short and long pcrel branches. 1324 (som_write_fixups): Eliminate redundant pcrel mode relocs. Handle 1325 R_LONG_PCREL_MODE and R_SHORT_PCREL_MODE 1326 * libhppa.h (dis_assemble_22): New function. 1327 (bfd_hppa_insn2fmt): Handle long branch. 1328 1329 * libhppa.h (bfd_hppa_insn2fmt): Decode and handle formats found 1330 in PA2.0. 1331 13321999-09-17 Alan Modra <alan@spri.levels.unisa.edu.au> 1333 1334 * coff-i386.c (coff_i386_reloc_type_lookup): Support BFD_RELOC_16, 1335 BFD_RELOC_16_PCREL, BFD_RELOC_8, BFD_RELOC_8_PCREL relocs. 1336 (reloc_howto_type howto_table): Tidy comments and whitespace. 1337 13381999-09-17 Nick Clifton <nickc@cygnus.com> 1339 1340 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Undo 1341 previous delta. Set sec->gc_mark instead. 1342 1343Thu Sep 16 11:21:13 1999 Catherine Moore <clm@cygnus.com> 1344 1345 * elf32-m68k.c (elf_cpu32_plt0_entry): Use a1 instead of a0. 1346 (elf_cpu32_plt_entry): Likewise. 1347 1348Thu Sep 16 10:48:17 1999 Jeffrey A Law (law@cygnus.com) 1349 1350 * elf-hppa.h (elf_hppa_final_write_processing): Turn on TRAPNIL. 1351 1352 * elf-hppa.h (elf_hppa_final_link): If unable to find __gp in the 1353 symbol table, then just compute a suitable value (but do not 1354 create a __gp symbol). 1355 1356 * elf-hppa.h (elf_hppa_relocate_section): Allow undefined 1357 symbols when building shared libraries. 1358 (elf_hppa_final_link_relocate): Correct handling of PCREL 1359 relocations against undefined symbols. 1360 13611999-09-16 Nick Clifton <nickc@cygnus.com> 1362 1363 * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Mark 1364 interworking sections as linker created so that they will not 1365 be removed by garbage collection. 1366 1367Wed Sep 15 02:31:57 1999 Jeffrey A Law (law@cygnus.com) 1368 1369 * elf-hppa.h (elf_hppa_final_link): Revamp __gp handling. 1370 (elf_hppa_final_link_relocate): Consistently create an absolute 1371 address, then subtract out the value of __gp. 1372 13731999-09-14 Michael Meissner <meissner@cygnus.com> 1374 1375 * configure.in (Canonicalization of target names): Remove adding 1376 ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14 1377 generates $ac_config_sub with a ${CONFIG_SHELL} already. 1378 * configure: Regenerate. 1379 13801999-09-14 Nick Clifton <nickc@cygnus.com> 1381 1382 * elf32-m32r.c (ELF_MAXPAGESIZE): Change to 0x1 (at request of 1383 Mitsubishi). 1384 1385Mon Sep 13 20:01:47 1999 Jeffrey A Law (law@cygnus.com) 1386 1387 * elf-hppa.h (elf_hppa_record_segment_addrs): New function. 1388 (elf_hppa_final_link): Initialize text_segment_base and 1389 data_segment_base. 1390 (elf_hppa_final_link_relocate): Handle SEGREL relocations. 1391 1392 * elf-hppa.h (elf_hppa_final_link): Remove unused variables. 1393 (elf_hppa_final_link_relocate): Likewise. 1394 (elf_hppa_relocate_insn): Likewise. 1395 (elf_hppa_relocate_section): Initialize HOWTO. 1396 13971999-09-13 Donn Terry <donn@interix.com> 1398 1399 * coffcode.h (styp_to_sec_flags): Further refinement of COMDAT 1400 handling to support both GNU and MS objects. 1401 1402 * coffcode.h (coff_write_object_contents): Don't check reloc_count 1403 when determining whether to set F_RELFLG. 1404 14051999-09-13 Philip Blundell <pb@nexus.co.uk> 1406 1407 * elf32-arm.h (elf32_arm_final_link_relocate): Don't range-check 1408 PC24 relocs if the target is an undefined weak symbol. 1409 (arm_add_to_rel): Fix compiler warning. 1410 (elf32_arm_plt0_entry): Correct comments. 1411 14121999-09-13 Alan Modra <alan@spri.levels.unisa.edu.au> 1413 1414 * elfcode.h (write_relocs): Check for the_bfd NULL when handling 1415 an absolute symbol in REL relocs. 1416 1417Sun Sep 12 23:47:58 1999 Jeffrey A Law (law@cygnus.com) 1418 1419 * elf-hppa.h (elf_hppa_final_link_relocate): Handle SECREL32. 1420 Stub SEGREL32. Return an error for any relocation not handled. 1421 14221999-09-12 Ian Lance Taylor <ian@zembu.com> 1423 1424 * cofflink.c (coff_link_add_symbols): Look for special MSVC string 1425 constant symbols, and avoid multiple definition errors on them. 1426 14271999-09-12 Donn Terry <donn@interix.com> 1428 1429 * libbfd.c (bfd_log2): Rewrite to avoid infinite loop if most 1430 significant bit is set. 1431 14321999-09-11 Ian Lance Taylor <ian@zembu.com> 1433 1434 * coff-ppc.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define. 1435 1436 * elfcode.h (write_relocs): Handle an absolute symbol in REL 1437 relocs as we do for RELA relocs. 1438 14391999-09-11 Donn Terry <donn@interix.com> 1440 1441 * libpei.h (_bfd_pei_final_link_postscript): Declare. 1442 (coff_final_link_postscript): Define. 1443 * peigen.c (_bfd_pei_swap_aouthdr_out): Don't set value for data 1444 directory entries here. 1445 (_bfd_pei_final_link_postscript): New function. 1446 1447 * peigen.c (_bfd_pei_swap_scnhdr_out): Remove code which sets 1448 section flags based on the section name. 1449 1450 * peicode.h (coff_swap_scnhdr_in): If COFF_IMAGE_WITH_PE, the 1451 get the overflow of the s_nlnno field from the s_nreloc field. 1452 * peigen.c (_bfd_pei_swap_scnhdr_out): If doing a final link, swap 1453 the s_nlnno overflow of the .text section into the s_nreloc 1454 field. 1455 1456 * peigen.c (add_data_entry): Declare. 1457 (pei_swap_aouthdr_out): Get image size right. Set linker version 1458 more intuitively. 1459 (pei_swap_scnhdr_out): Test for UNINIT section, not .bss. 1460 (pe_print_idata): Code cleanup, print more info, get rid of (now) 1461 extraneous ImageBase. 1462 (pe_print_edata): Likewise. 1463 (pe_print_pdata): Likewise. Print exception entries. 1464 (pe_print_reloc): Likewise. Print MIPS_JMPADDR. 1465 (tbl): Make const, add "UNKNOWN". 1466 (_bfd_pe_print_private_bfd_data_common): Print timestamp. 1467 (_bfd_pe_bfd_copy_private_bfd_data_common): Don't copy deleted 1468 section data directory. 1469 (_bfd_pe_bfd_copy_private_section_data): Copy pe_flags. 1470 1471 * libpei.h (_bfd_pe_bfd_get_symbol_info): Declare. 1472 * peigen.c (_bfd_pe_bfd_get_symbol_info): New function. 1473 * peicode.h (coff_get_symbol_info): Define. 1474 1475 * config.bfd (i[3456]86-*-interix*): Set targ_cflags to 1476 -DSTRICT_PE_FORMAT. 1477 * coffcode.h (styp_to_sec_flags): Check STRICT_PE_FORMAT rather 1478 than __INTERIX. 1479 (coff_classify_symbol): Re-revert 1999-08-08 patch if 1480 STRICT_PE_FORMAT. 1481 1482 * libpei.h: New file, broken out of peicode.h. 1483 * peigen.c: New file, broken out of peicode.h. 1484 * peicode.h: A bunch of code moved out to libpei.h and peigen.c. 1485 * configure.in: Add peigen.lo to list of files required for each 1486 PE target. 1487 * Makefile.am: Rebuild dependencies. 1488 (BFD32_BACKENDS): Add peigen.lo. 1489 (BFD32_BACKENDS_CFILES): Add peigen.c. 1490 (SOURCE_HFILES): Add libpei.h. 1491 * configure, Makefile.in: Rebuild. 1492 1493 * peicode.h (coff_swap_scnhdr_in): Don't check for a special 1494 section name of _BSS; check IMAGE_SCN_CNT_UNINITIALIZED_DATA 1495 instead. Don't clear the s_paddr field for an uninitialized data 1496 section. 1497 1498 * coffcode.h (coff_mkobject_hook): Set timestamp field in 1499 coff_data_type to f_timdat. 1500 * peicode.h (pe_mkobject_hook): Likewise. 1501 1502 * peicode.h (coff_swap_filehdr_in): Check the NT executable magic 1503 number if COFF_IMAGE_WITH_PE. 1504 1505 * coffcode.h (coff_mkobject_hook): If COFF_WITH_PE, set HAS_DEBUG 1506 to the reverse of IMAGE_FILE_DEBUG_STRIPPED. 1507 (coff_write_object_contents): Set IMAGE_FILE_DEBUG_STRIPPED if 1508 there is no SEC_DEBUGGING section. 1509 * peicode.h (pe_mkobject_hook): Set HAS_DEBUG to the reverse of 1510 IMAGE_FILE_DEBUG_STRIPPED. 1511 1512 * pe-i386.c (COFF_LONG_FILENAMES): Define. 1513 (COFF_SECTION_ALIGNMENT_ENTRIES): Define. 1514 * pei-i386.c (COFF_LONG_FILENAMES): Define. 1515 (COFF_SECTION_ALIGNMENT_ENTRIES): Define. 1516 1517 * coffswap.h (IMAGE_BASE): Don't define. 1518 * pei-arm.c (IMAGE_BASE): Don't define. 1519 * pei-i386.c (IMAGE_BASE): Don't define. 1520 * pei-mcore.c (IMAGE_BASE): Don't define. 1521 * pei-ppc.c (IMAGE_BASE): Don't define. 1522 1523 * cofflink.c (_bfd_coff_link_input_bfd): When writing out a 1524 symbol, switch on the class when determining whether to modify the 1525 value. For PE, don't modify the value of a C_FCN symbol not named 1526 .bf. 1527 1528 * libbfd-in.h (_bfd_abort): Declare. 1529 (abort): Define. 1530 * bfd.c (_bfd_abort): New function. 1531 * libbfd.h: Rebuild. 1532 1533 * coffcode.h (coff_set_alignment_hook): Delete POWERPC_LE_PE 1534 special handling. 1535 1536 * cofflink.c (_bfd_coff_link_input_bfd): If a symbol is stripped, 1537 don't write out the associated line numbers. 1538 1539 * cofflink.c (_bfd_coff_write_global_sym): Handle section symbol 1540 aux entries. 1541 1542 * cofflink.c (coff_link_add_symbols): Don't warn about symbol type 1543 changes when the base type is unknown. 1544 1545 * coffgen.c (coff_print_symbol): Fix printing of aux record for 1546 function symbols. 1547 1548 * syms.c (BSF_DEBUGGING_RELOC): Define. 1549 * coffcode.h (coff_slurp_symbol_table): If PE, set BSF_DEBUGGING 1550 for C_FCN/C_EFCN symbols, and set BSF_DEBUGGING_RELOC for such 1551 symbols named .bf. 1552 * coffgen.c (fixup_symbol_value): Relocate a symbol which has 1553 BSF_DEBUGGING_RELOC set. 1554 * bfd-in2.h: Rebuild. 1555 15561999-09-10 Ian Lance Taylor <ian@zembu.com> 1557 1558 * ecoff.c (bfd_debug_section): Update initialization for new 1559 comdat_info field. 1560 (_bfd_ecoff_styp_to_sec_flags): Add section parameter. 1561 * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Update declaration. 1562 15631999-09-10 H.J. Lu <hjl@gnu.org> 1564 1565 * coff-alpha.c (alpha_ecoff_backend_data): Initialize the new 1566 _bfd_filnmlen field. 1567 * coff-mips.c (mips_ecoff_backend_data): Likewise. 1568 1569Fri Sep 10 00:35:14 1999 Jeffrey A Law (law@cygnus.com) 1570 1571 * elf-hppa.h (elf_hppa_final_link_relocate): Create .opd entries 1572 for FPTR relocs involving local symbols. 1573 1574 * elf-hppa.h (elf_hppa_final_link_relocate): Get the right 1575 value for the stub address in a call through a stub. 1576 Install the value for a local symbol directly into the DLT 1577 instead of generating a reloc. Correctly handle FPTR64 relocs. 1578 1579 * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): New function. 1580 (elf_hppa_remark_useless_dynamic_symbols): Similarly. 1581 (elf_hppa_final_link): Call them. 1582 15831999-09-10 Ian Lance Taylor <ian@zembu.com> 1584 1585 * elflink.h (elf_fix_symbol_flags): Move weakdef handling here... 1586 (elf_adjust_dynamic_symbol): ...from here. 1587 1588Wed Sep 8 17:56:11 1999 Jeffrey A Law (law@cygnus.com) 1589 1590 * elf-hppa.h (elf_hppa_howto_table); There is no DIR64WR, DIR64DR 1591 relocation, remove them. SECREL64->LTOFF16WF. 1592 (elf_hppa_final_link_relocate): Handle LTOFF* relocations. Handle 1593 DIR* relocations. 1594 (elf_hppa_relocate_insn): Similarly. 1595 1596 * elf-hppa.h (elf_hppa_final_link_relocate): Handle PLTOFF* relocs. 1597 (elf_hppa_relocate_insn): Similarly. 1598 1599 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DPREL* and 1600 GPREL* relocations. 1601 (elf_hppa_relocate_insn): Similarly. 1602 1603 * elf-hppa.h (elf_hppa_link_final_relocate): Fix typos. 1604 Handle LTOFF_TP* relocs. 1605 (elf_hppa_relocate_insn): Similarly. 1606 1607 * elf-hppa.h (elf_hppa_final_link_relocate): Handle PCREL* relocs. 1608 Consistently deal with addends. Handle DLTIND14F and DLTREL14F. 1609 (elf_hppa_relocate_insn): Handle PCREL* relocs. 1610 1611 * elf-hppa.h (elf_hppa_final_link_relocate): Handle LT_OFF_FPTR*, 1612 DIR32, DIR64 and FPTR64 relocations. 1613 (elf_hppa_relocate_insn): Similarly. 1614 1615 * elf-hppa.h (elf_hppa_final_link): Set the value of __gp to the 1616 address of the .PARISC.global section. 1617 (elf_hppa_relocate_section): Lookup and pass the PA64 hash 1618 table entry elf_hppa_final_link_relocate. Do not give a warning 1619 for a reloc against an external symbol if it has a PA64 hash 1620 table entry. 1621 (elf_hppa_final_link_relocate): Significantly rework. Handle 1622 DLTIND relocations. Compute the final value of the relocation 1623 before passing the value of elf_hppa_relocate_insn. 1624 (elf_hppa_relocate_insn): Revamp to handle just bit tiwiddling 1625 relocation support. Handle DLTIND relocation requests just like 1626 DLTREL relocation requests. Simplify branch handling. 1627 16281999-09-08 Ulrich Drepper <drepper@cygnus.com> 1629 1630 * elf-hppa.h (elf_hppa_relocate_section): Catch problems with 1631 non-allocated section as done in i386 version. 1632 (elf_hppa_final_link_relocate): Uncomment R_PARISC_14F in switch 1633 statement since this is no know relocation. 1634 1635Tue Sep 7 17:25:12 1999 Jeffrey A Law (law@cygnus.com) 1636 1637 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14F 1638 relocs. 1639 (elf_hppa_relocate_insn): Similarly. 1640 1641 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14WR and 1642 DLTREL14WD relocs. 1643 (elf_hppa_relocate_insn): Similarly. 1644 1645 * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14R and 1646 DLTREL21L relocs. Pass the output bfd to elf_hppa_relocate_insn. 1647 Pass the relocate type rather than the insn format to 1648 elf_hppa_relocate_insn. 1649 (elf_hppa_relocate_insn): Make switch dependent on relocation type 1650 rather than the opcode. Handle DLTREL21L and DLTREL14R relocs. 1651 16521999-09-07 Ian Lance Taylor <ian@zembu.com> 1653 1654 * coffcode.h (bfd_coff_backend_data): Add _bfd_filnmlen field. 1655 (bfd_coff_filnmlen): Define. 1656 (bfd_coff_std_swap_table): Initialize new field. 1657 * coffgen.c (coff_fix_symbol_name): Use bfd_coff_filnmlen rather 1658 than FILNMLEN. 1659 (coff_write_symbols): Likewise. 1660 (coff_get_normalized_symtab): Likewise. 1661 * coff-sh.c (bfd_coff_small_swap_table): Initialize new field. 1662 * libcoff.h: Rebuild. 1663 16641999-09-06 Donn Terry <donn@interix.com> 1665 1666 * coffcode.h (sort_by_secaddr): New static function if 1667 COFF_IMAGE_WITH_PE. 1668 (coff_compute_section_file_positions): If COFF_IMAGE_WITH_PE, sort 1669 sections by VMA when assigning target_index values. Always set 1670 virt_size. 1671 1672 * libcoff-in.h (struct pei_section_tdata): Add pe_flags field. 1673 * coffcode.h (coff_set_alignment_hook) [COFF_WITH_PE version]: Set 1674 pe_flags field. 1675 * libcoff.h: Rebuild. 1676 1677 * coffcode.h (coff_set_custom_section_alignment): Add const to 1678 declaration to match definition. 1679 (coff_write_object_contents): Don't set F_AR32W(R)? if 1680 COFF_WITH_PE. 1681 1682 * coff-i386.c (in_reloc_p): Add declaration. 1683 (i386coff_vec): Simplify initialization of 1684 application_section_flags. 1685 1686 * coffcode.h (sec_to_styp_flags): Write separate COFF_WITH_PE 1687 version. Move COFF_WITH_PE specific code to new version. 1688 (stype_to_sec_flags): Likewise. Add section parameter. 1689 * coffgen.c (make_a_section_from_file): Set target_index before 1690 calling styp_to_sec_flags. Pass section to styp_to_sec_flags. 1691 * libcoff.h: Rebuild. 1692 1693 * syms.c (stt): Add some PE/PEI section names. 1694 (bfd_decode_symclass): Return 'w', not 'U', for a weak undefined 1695 symbol. 1696 (bfd_symbol_info): Check for 'w'. 1697 1698 * section.c (struct bfd_comdat_info): Define. 1699 (asection): Add comdat field. 1700 (STD_SECTION): Initialize comdat field. 1701 (bfd_make_section_anyway): Likewise. 1702 * bfd-in2.h: Rebuild. 1703 17041999-09-06 Andreas Schwab <schwab@suse.de> 1705 1706 * elflink.h (elf_link_add_object_symbols): Copy NON_GOT_REF flag 1707 to version symbols. 1708 17091999-09-06 Nick Clifton <nickc@cygnus.com> 1710 1711 * elflink.h (elf_gc_record_vtentry): Use bfd_zmalloc and 1712 bfd_realloc instead of calloc and realloc. 1713 17141999-09-04 Steve Chamberlain <sac@pobox.com> 1715 1716 * cpu-pj.c: New file. 1717 * elf32-pj.c: New file. 1718 * config.bfd (pj*): New cpu. 1719 (pj-*-*, pjl-*-*): New targets. 1720 * configure.in (bfd_elf32_pj_vec): New target vector. 1721 (bfd_elf32_pjl_vec): New target vector. 1722 * archures.c (bfd_arch_pj): Define. 1723 * elf.c (prep_headers): Handle bfd_arch_pj. 1724 * reloc.c: Define BFD_RELOC_PJ_* relocations. 1725 * targets.c (bfd_elf32_pj_vec, bfd_elf32_pjl_vec): Declare and add 1726 to target vector list. 1727 * Makefile.am: Rebuild dependencies. 1728 (ALL_MACHINES): Add cpu-pj.lo. 1729 (ALL_MACHINES_CFILES): Add cpu-pj.c. 1730 (BFD32_BACKENDS): Add elf32-pj.lo. 1731 (BFD32_BACKENDS_CFILES): Add elf32-pj.c. 1732 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild. 1733 17341999-09-04 Ian Lance Taylor <ian@zembu.com> 1735 1736 * elf-bfd.h (ELF_LINK_NON_GOT_REF): Define. 1737 * elflink.h (elf_adjust_dynamic_symbol): Copy REF_REGULAR_NONWEAK 1738 and NON_GOT_REF from weak defined symbol to real symbol. 1739 * elf32-i386.c (elf_i386_check_relocs): Set NON_GOT_REF. 1740 (elf_i386_adjust_dynamic_symbol): If NON_GOT_REF is not set, don't 1741 create a COPY reloc. 1742 * elf32-sparc.c (elf32_sparc_check_relocs): Set NON_GOT_REF. 1743 (elf32_sparc_adjust_dynamic_symbol): If NON_GOT_REF is not set, 1744 don't create a COPY reloc. 1745 17461999-09-03 Ian Lance Taylor <ian@zembu.com> 1747 1748 * elflink.h (elf_bfd_final_link): When counting relocations, don't 1749 count those in sections we are not including in the link. 1750 1751Thu Sep 2 17:41:20 1999 Jeffrey A Law (law@cygnus.com) 1752 1753 * elflink.h (elf_link_add_object_symbols): Work around bogus SH_LINK 1754 field in hpux11 shared libraries. 1755 17561999-09-02 Nick Clifton <nickc@cygnus.com> 1757 1758 * elflink.h (elf_gc_record_vtentry): Fix memory leak. 1759 1760Wed Sep 1 13:34:29 1999 Jeffrey A Law (law@cygnus.com) 1761 1762 * elf-hppa.h (elf_hppa_add_symbol_hook): New function. 1763 (elf_hppa_final_link, elf_hppa_relocate_section): Likewise. 1764 (elf_hppa_final_link_relocate, elf_hppa_relocate_insn): Likewise. 1765 17661999-08-31 Alexandre Petit-Bianco <apbianco@cygnus.com> 1767 1768 * elflink.h (record_link_assignment): When possible, keep the 1769 original type of the symbol. 1770 1771Mon Aug 30 15:26:48 1999 Jeffrey A Law (law@cygnus.com) 1772 1773 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Allow both 1774 R_PARISC_DIR32 and R_PARISC_DIR64 regardless of how the 1775 tools were configured. 1776 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Declare. 1777 17781999-08-26 Mark Mitchell <mark@codesourcery.com> 1779 1780 * elf32-mips.c (_bfd_mips_elf_check_relocs): Don't allocate local 1781 GOT entries for GOT16 relocations; they're not required. 1782 17831999-08-24 Nick Clifton <nickc@cygnus.com> 1784 1785 From a patch submitted by Roland McGrath <roland@baalperazim.frob.com> 1786 1787 * config.bfd (arm-*-netbsd*): New target. 1788 * configure.in (armnetbsd_vec): New target vector. 1789 * configure: Regenerate 1790 * targets.c (bfd_target_vector): Add &armnetbsd_vec. 1791 1792 * Makefile.am (BFD32_BACKENDS): Add armnetbsd.lo. 1793 (ALL_MACHINES_CFILES): Add armnetbsd.c. 1794 (armnetbsd.lo): New rule with deps. 1795 * Makefile.in: Regenerate. 1796 1797 * armnetbsd.c: New file: Definitions specific to arm-netbsd 1798 target. 1799 1800Tue Aug 24 00:25:58 1999 Jeffrey A Law (law@cygnus.com) 1801 1802 * som.c (som_slurp_symbol_table): Fix typo in comment. 1803 1804Fri Aug 20 17:01:23 1999 Jeffrey A Law (law@cygnus.com) 1805 1806 * elf-hppa.h (elf_hppa_fake_sections): Compute section indices 1807 here instead of using elf_section_data... 1808 18091999-08-19 Nick Clifton <nickc@cygnus.com> 1810 1811 * coff-mcore.c (mcore_emit_base_file_entry): New function: Emit 1812 relocations into the base file. 1813 (coff_mcore_relocate_section): Call mcore_emit_base_file_entry if 1814 we are building a base file. 1815 18161999-08-19 Nick Clifton <nickc@cygnus.com> 1817 1818 * elf32-arm.h (arm_add_to_rel): New function. Add a value to 1819 a REL style reloc. 1820 (elf32_arm_relocate_section): Use arm_add_to_rel to increment 1821 REL relocs when performing a partial relocation. 1822 18231999-08-18 Donn Terry <donn@interix.com> 1824 1825 * cofflink.c: Move definitions of N_TMASK, et. al., out of 1826 _bfd_coff_link_input_bfd into top level. 1827 1828 * coff-i386.c (coff_i386_reloc): Handle R_IMAGEBASE. 1829 (RTYPE2HOWTO): Return NULL if reloc type is out of range. 1830 (coff_i386_rtype_to_howto): Likewise. 1831 * coffcode.h (coff_slurp_symbol_table): Change a -2 to N_DEBUG. 1832 Completely ignore symbols which are all zero. 1833 (dummy_reloc16_estimate): Add return 0. 1834 * cofflink.c (_bfd_coff_link_input_bfd): Rename inner scope 1835 variable copy to name_copy to avoid shadowing outer scope 1836 variable. 1837 * libcoff-in.h (coff_data_type): Change raw_syment_count field 1838 from unsigned int to unsigned long. Add timestamp field. 1839 * libcoff.h: Rebuild. 1840 18411999-08-17 H.J. Lu <hjl@gnu.org> 1842 1843 * elf32-hppa.c (bfd_elf32_bfd_is_local_label_name): Fix typo in 1844 macro definition. 1845 18461999-08-17 Ian Lance Taylor <ian@zembu.com> 1847 1848 * elf32-mips.c (_bfd_mips_elf_add_symbol_hook): Set BSF_DYNAMIC 1849 for special section symbols. 1850 * elflink.h (elf_merge_symbol): If we have no old BFD, check 1851 BSF_DYNAMIC on the section symbol to see whether the old BFD is 1852 dynamic. 1853 18541999-08-15 Mark Mitchell <mark@codesourcery.com> 1855 1856 * elf32-mips.c (mips_elf_calculate_relocation): Fix unfortunate 1857 coincidence of variable names between old and new code. 1858 18591999-08-12 Nick Clifton <nickc@cygnus.com> 1860 1861 * elf32-arm.h (elf32_arm_to_thumb_stub): Make 'offset' parameter 1862 into a bfd_vma and 'addend' parameter a 'bfd_signed_vma'. 1863 (elf32_thumb_to_arm_stub): Make 'offset' parameter into a bfd_vma 1864 and 'addend' parameter a 'bfd_signed_vma'. 1865 (elf32_arm_final_link_relocate): Do not involve stubs in 1866 R_ARM_THM_PC22 relocs relative to section symbols, they are long 1867 jumps, not function calls. 1868 18691999-08-11 Robin Farine <advanc@dial.eunet.ch> 1870 1871 * elf32-arm.h (elf32_arm_final_link_relocate): Check for overflow 1872 in R_ARM_PC24 relocs. 1873 1874Tue Aug 10 12:48:09 1999 Jeffrey A Law (law@cygnus.com) 1875 1876 * elf-hppa.h (elf_hppa_fake_sections): New function. 1877 * elf32-hppa.c (elf_backend_fake_sections): Define. 1878 1879 * elf-hppa.h (elf_hppa_final_write_processing): Update for 1880 recent changes to the arch_info structure. 1881 1882 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle 1883 R_HPPA_SEGBASE and R_HPPA_SEGREL32. 1884 * cpu-hppa.c (bfd_hppa20w_arch): New entry in architecture info 1885 list. 1886 1887Tue Aug 10 00:34:29 1999 Mark P. Mitchell <mark@codesourcery.com> 1888 Ralf Baechle <ralf@uni-koblenz.de> 1889 1890 * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Always 1891 output DT_MIPS_GOTSYM. 1892 (_bfd_mips_elf_finish_dynamic_sections): Use the same value as 1893 DT_MIPS_SYMTABNO if there are no global GOT symbols. 1894 1895Tue Aug 10 00:21:08 1999 Mark P. Mitchell <mark@codesourcery.com> 1896 1897 * elf32-mips.c (mips_elf_create_dynamic_relocation): Change 1898 prototype. Handle local symbols. Add commentary. 1899 (mips_elf_calculate_relocation): Adjust accordingly. 1900 (_bfd_mips_elf_check_relocs): Handle local symbols in R_MIPS_32 1901 relocations. 1902 1903 * elflink.h (elf_bfd_final_link): Tweak last change. 1904 19051999-08-09 Mark Mitchell <mark@codesourcery.com> 1906 1907 * elflink.h (elf_link_size_reloc_section): Use the counts in the 1908 elf-section data to allocate just the right amount of relocation 1909 space. Don't allocate the hash space twice. 1910 (elf_bfd_final_link): Calculate the amount of space to allocate in 1911 each relocation section. 1912 1913Mon Aug 9 17:37:30 1999 Jeffrey A Law (law@cygnus.com) 1914 1915 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case 32): When in 1916 64bit mode, generate a section relative relocation for a 32bit 1917 wide relocation. 1918 (elf_hppa_is_local_label_name): New function. 1919 * elf32-hppa.c (elf_hppa_is_local_label_name): Deleted. To be 1920 shared between 32bit and 64bit port. 1921 19221999-08-09 Mark Mitchell <mark@codesourcery.com> 1923 1924 * elf32-mips.c (elf_mips_howto_table): Fix src_mask for 1925 R_MIPS_GOT16 and R_MIPS_CALL16. 1926 (mips_elf_got16_entry): Use mips_elf_high to calculate the value 1927 to use when looking for a preexisting GOT entry. 1928 19291999-08-09 Jakub Jelinek <jj@ultra.linux.cz> 1930 1931 * elf64-sparc.c (sparc64_elf_relocate_section): Back out part of 1932 the Sep. 4th, 1998 change. glibc 2.0.x dynamic linker had bug, 1933 not binutils. 1934 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 1935 19361999-08-09 Geoff Keating <geoffk@cygnus.com> 1937 1938 * elflink.h (elf_link_output_extsym): Don't output a weak 1939 reference to an undefined symbol just because it was defined weak 1940 in a shared object. 1941 19421999-08-09 Eli Zaretskii <eliz@is.elta.co.il> 1943 1944 * coffgen.c (coff_find_nearest_line): When looking for file, use 1945 last best match rather than first. If address is beyond last line 1946 number record, don't return the last line as the correct value. 1947 19481999-08-08 Ian Lance Taylor <ian@zembu.com> 1949 1950 * section.c (SEC_SMALL_DATA): Rename from SEC_SHORT. 1951 * bfd-in2.h: Rebuild. 1952 19531999-08-08 Mark Elbrecht <snowball3@bigfoot.com> 1954 1955 * libcoff-in.h (struct coff_section_alignment_entry): Define. 1956 * coffcode.h (coff_set_custom_section_alignment): New static 1957 function. 1958 (coff_section_alignment_table): New static array. 1959 (coff_new_section_hook): Use coff_set_customer_section_alignment. 1960 * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define. 1961 * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define. 1962 * libcoff.h: Rebuild. 1963 19641999-08-08 Ian Lance Taylor <ian@zembu.com> 1965 1966 * Makefile.am: Rename .dep* files to DEP*. Change DEP variable to 1967 MKDEP. 1968 * Makefile.in: Rebuild. 1969 19701999-08-08 Mumit Khan <khan@xraylith.wisc.edu> 1971 1972 * section.c (SEC_SHARED): Define. 1973 * coffcode.h (sec_to_styp_flags): Handle SEC_SHARED. 1974 (styp_to_sec_flags): Likewise. 1975 * peicode.h (coff_swap_scnhdr_out): Likewise. 1976 * bfd-in2.h: Rebuild. 1977 19781999-08-08 Ian Lance Taylor <ian@zembu.com> 1979 1980 * coffcode.h (coff_classify_symbol): Comment out part of 1981 1999-08-05 change which breaks cygwin DLLs. 1982 1983 * acinclude.m4 (BFD_BINARY_FOPEN): Change -windows to -windows*. 1984 * aclocal.m4, configure: Rebuild. 1985 19861999-08-06 Ian Lance Taylor <ian@zembu.com> 1987 1988 * section.c (global_syms): Only initialize union field if 1989 __STDC__. 1990 19911999-08-04 Mark Mitchell <mark@codesourcery.com> 1992 1993 * elf32-mips.c (mips_elf_got16_entry): Don't multiply GOT index by 1994 the size of a GOT entry here. 1995 (mips_elf_calculate_relocation): Don't create a local GOT entry 1996 for the symbol in a GOT16 relocation; just for it's high-order bit 1997 (_bfd_mips_elf_relocate_section): Fix thinko. 1998 19991999-08-05 Ian Lance Taylor <ian@zembu.com> 2000 2001 Based on patches from Donn Terry <donn@interix.com>: 2002 * coffcode.h (enum coff_symbol_classification): Define. 2003 (bfd_coff_backend_data): Rename _bfd_coff_sym_is_global to 2004 _bfd_coff_classify_symbol. Change return type. 2005 (bfd_coff_classify_symbol): Rename from bfd_coff_sym_is_global. 2006 (coff_slurp_symbol_table): Use coff_classify_symbol. 2007 (coff_classify_symbol): New static function. 2008 (coff_sym_is_global): Never define. 2009 (bfd_coff_std_swap_table): Initialize with coff_classify_symbol. 2010 * cofflink.c (coff_link_check_ar_symbols): Use 2011 bfd_coff_classify_symbol rather than bfd_coff_sym_is_global. 2012 (coff_link_add_symbols): Likewise. 2013 (_bfd_coff_link_input_bfd): Likewise. 2014 * coff-sh.c (bfd_coff_small_swap_table): Initialize with 2015 coff_classify_symbol. 2016 * libcoff.h: Rebuild. 2017 2018Wed Aug 4 18:08:07 1999 Jeffrey A Law (law@cygnus.com) 2019 2020 * libhppa.h (R_HPPA_LTPSEL, R_HPPA_RTPSEL): New field selectors 2021 (e_ltpsel, e_rtpsel): Similarly. 2022 2023 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle 21bit e_ltpsel 2024 and 14bit ertpsel. Handle 64bit psel. 2025 20261999-08-04 Mark Mitchell <mark@codesourcery.com> 2027 2028 * elf32-mips.c (_bfd_mips_elf_relocate_section): Tweak HI16/LO16 2029 handling for REL relocations. And only left-shift R_MIPS26 2030 relocation addends where necessary. 2031 20321999-08-03 Mark Mitchell <mark@codesourcery.com> 2033 2034 * elf32-mips.c (mips_elf_next_lo16_addend): Rename to ... 2035 (mips_elf_next_lo16_relocation): Don't compute the addend here. 2036 Just return the relocation found. 2037 (mips_elf_relocate_section): Pull the LO16 addend out of the 2038 section itself when using REL relocations. 2039 2040 * elf32-mips.c (mips_elf_calculate_relocation): Restore 2041 _DYNAMIC_LINK handling and handling of undefined symbols in shared 2042 libraries. 2043 20441999-08-03 Ian Lance Taylor <ian@zembu.com> 2045 2046 * elf32-ppc.c (ppc_elf_relocate_section): Don't use the relocation 2047 value of a symbol in a SEC_DEBUGGING section. Warn when doing a 2048 relocation against a symbol in an input section with no output 2049 section. From Daniel Jacobowitz <drow@false.org>. 2050 2051 * coff-stgo32.c (go32_stubbed_coff_object_p): Remove; not used. 2052 2053 * acinclude.m4 (BFD_CC_FOR_BUILD): Change to use conftest, and to 2054 look for generated file correctly. 2055 * aclocal.m4, configure: Rebuild. 2056 20571999-08-02 Mark Mitchell <mark@codesourcery.com> 2058 2059 * elf32-mips.c (_bfd_mips_elf_relocate_section): Handle R_MIPS_26 2060 and R_MIPS16_26 relocations correctly when relocating. 2061 (_bfd_mips_elf_check_relocs): Don't assume that R_MIPS_CALL_HI16 2062 and R_MIPS_CALL_LO16 are for global symbols. 2063 20641999-08-02 Jakub Jelinek <jj@ultra.linux.cz> 2065 2066 * elflink.h (elf_bfd_final_link): Copy the whole isym, not just 2067 some fields. 2068 * elf64-sparc.c (sparc64_elf_output_arch_syms): Declare used 2069 variables and initialize them. 2070 20711999-08-01 Mark Mitchell <mark@codesourcery.com> 2072 2073 * elf32-mips.c (_bfd_mips_elf_final_link): Handle the case where 2074 there are no global symbols requiring GOT entries. 2075 (_bfd_mips_elf_size_dynamic_sections): Likewise. 2076 (_bfd_mips_elf_finish_dynamic_symbol): Likewise. 2077 (_bfd_mips_elf_finish_dynamic_sections): Likewise. 2078 2079 * elf32-mips.c (mips_elf_calculate_relocation): Undefined weak 2080 symbols are considered to have the value zero. 2081 (_bfd_mips_elf_relocate_section): Don't try to perform a 2082 relocation for an undefined symbol. 2083 (_bfd_mips_elf_check_relocs): Allocate locate GOT space for local 2084 GOT16 relocations. 2085 20861999-07-30 Jakub Jelinek <jj@ultra.linux.cz> 2087 2088 * elf64-sparc.c (sparc64_elf_build_plt): Cosmetic change - ABI 2089 wants ba,a,pt %xcc instead of %icc. 2090 Emit correct .PLT0-(.PLTN+4) initial value into the pointer slots 2091 of large PLT entries. 2092 (sparc64_elf_plt_ptr_offset): Fix calculation. 2093 (sparc64_elf_finish_dynamic_symbol): Negative value of R_SPARC_JMP_SLOT 2094 addend should be relative to load address, not .plt section start. 2095 (sparc64_elf_size_info): Sparc64 uses 32bit .hash entries. 2096 20971999-07-30 Jakub Jelinek <jj@ultra.linux.cz> 2098 2099 * elf-bfd.h (struct elf_backend_data): Add 2100 print_symbol_all and output_arch_syms backend methods. 2101 * elfxx-target.h: Likewise. 2102 * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create, 2103 sparc64_elf_add_symbol_hook, sparc64_elf_output_arch_syms, 2104 sparc64_elf_get_symbol_type, sparc64_elf_symbol_processing): New 2105 functions. 2106 (sparc64_elf_size_dynamic_sections): Leave space for STT_REGISTER 2107 symbols in .dynsym, add their names into .dynstr. Put those symbols 2108 into dynlocal. 2109 (sparc64_elf_finish_dynamic_sections): Fix up DT_SPARC_REGISTER 2110 pointers to STT_REGISTER symbols in dynsym section. 2111 (sparc64_elf_print_symbol_all): New function. 2112 * elf.c (bfd_elf_print_symbol): Allow special backend symbol 2113 printing using the print_symbol_all hook. 2114 21151999-07-30 Catherine Moore <clm@cygnus.com> 2116 2117 * elf32-arm.h (elf32_arm_check_relocs): Use r_offset for 2118 R_ARM_GNU_VTENTRY. 2119 21201999-07-29 Richard Henderson <rth@cygnus.com> 2121 2122 * elf32-mips.c (_bfd_mips_elf_final_link): Only re-sort dynsyms if 2123 dynamic_sections_created. 2124 21251999-07-29 Richard Henderson <rth@cygnus.com> 2126 2127 * elf32-mips.c (mips_info_to_howto_rel): Split out switch to ... 2128 (mips_rtype_to_howto): ... new function. 2129 (_bfd_mips_elf_relocate_section): Use it. 2130 21311999-07-28 Mark Mitchell <mark@codesourcery.com> 2132 2133 * elf32-mips.c (_bfd_mips_elf_relocate_section): Fix typo. 2134 21351999-07-27 Nick Clifton <nickc@cygnus.com> 2136 2137 Patch generated by Bernd Schmidt. <bernds@cygnus.co.uk> 2138 2139 * coff-arm.c (coff_arm_is_local_label_name): Change to strip 2140 out only symbols that start with LOCAL_LABEL_PREFIX followed by 'L'. 2141 21421999-07-23 Donn Terry <donn@interix.com> 2143 2144 * libcoff-in.h (coff_link_hash_entry): Add coff_link_hash_flags 2145 field, and define COFF_LINK_HASH_PE_SECTION_SYMBOL. 2146 * cofflink.c (coff_link_add_symbols): If PE, handle section 2147 symbols specially. 2148 * libcoff.h: Rebuild. 2149 2150 * config.bfd (i[3456]86-*-interix*): New target. 2151 21521999-07-21 Mark Elbrecht <snowball3@bigfoot.com> 2153 2154 * coffcode.h (styp_to_sec_flags): If COFF_LONG_SECTION_NAMES and 2155 COFF_SUPPORT_GNU_LINKONCE, mark sections whose names begin with 2156 .gnu.linkonce with SEC_LINKONCE and SEC_LINK_DUPLICATES_DISCARD. 2157 * coff-go32.c: (COFF_LONG_SECTION_NAMES): Define. 2158 (COFF_SUPPORT_GNU_LINKONCE): Define. 2159 * coff-stgo32.c: (COFF_LONG_SECTION_NAMES): Define. 2160 (COFF_SUPPORT_GNU_LINKONCE): Define. 2161 21621999-07-21 Ian Lance Taylor <ian@zembu.com> 2163 2164 From Mark Elbrecht: 2165 * makefile.dos: Remove; obsolete. 2166 * configure.bat: Remove; obsolete. 2167 21681999-07-21 H.J. Lu <hjl@gnu.org> 2169 2170 * config.bfd (i[3456]86-*-vxworks*): Add targ_underscore=yes. 2171 21721999-07-21 Philippe De Muyter <phdm@macqel.be> 2173 2174 * cofflink.c (_bfd_coff_generic_relocate_section): Issue an error 2175 message and fail if a symbol index is out of range. 2176 21771999-07-21 Ian Lance Taylor <ian@zembu.com> 2178 2179 * elf32-mips.c (mips_elf_calculate_relocation): Get the GP value 2180 when looking at a R_MIPS_GOT16 relocation. 2181 21821999-07-20 Nick Clifton <nickc@cygnus.com> 2183 2184 * coff-m88k.c: Use CREATE_BIG_COFF_TARGET_VEC. 2185 2186Mon Jul 19 14:03:44 1999 Mark P. Mitchell <mark@codesourcery.com> 2187 2188 * elf32-mips.c (_bfd_mips_elf_final_link): Restore setting of GP 2189 removed in previous change. 2190 (_bfd_mips_elf_relocate_section): Adjust GP relative relocations 2191 in relocateable output. 2192 21931999-07-19 Ian Lance Taylor <ian@zembu.com> 2194 2195 * coff-m88k.c (m88kbcs_vec): Initialize new field of bfd_target 2196 structure. 2197 2198 * elflink.h (elf_merge_symbol): Do merge symbols from the same BFD 2199 if they appear to be specially created by the linker. 2200 22011999-07-19 Nick Clifton <nickc@cygnus.com> 2202 2203 * targets.c (alternative_target): New field in bfd_target 2204 structure. 2205 (bfd_search_for_target): New function: Find a target that 2206 satisifies a search function. 2207 * bfd-in2.h: Regenerate. 2208 2209 * elfxx-target.h: Initialise the alternative_target field of 2210 the bfd_target structures to point to the other target (if 2211 defined). 2212 * nlm-target.h: Initialise the alternative_target field of 2213 the bfd_target structures to point to the other target (if 2214 defined). 2215 2216 * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): New macro. 2217 (CREATE_LITTLE_COFF_TARGET_VEC): New macro. 2218 2219 * aix386-core.c: Initialise new field of bfd_target structure. 2220 * aout-adobe.c: Initialise new field of bfd_target structure. 2221 * aout-arm.c: Initialise new field of bfd_target structure. 2222 * aout-target.h: Initialise new field of bfd_target structure. 2223 * aout-tic30.c: Initialise new field of bfd_target structure. 2224 * binary.c: Initialise new field of bfd_target structure. 2225 * bout.c: Initialise new field of bfd_target structure. 2226 * cisco-core.c: Initialise new field of bfd_target structure. 2227 * coff-a29k.c: Use CREATE_BIG_COFF_TARGET_VEC. 2228 * coff-alpha.c: Initialise new field of bfd_target structure. 2229 * coff-apollo.c: Use CREATE_BIG_COFF_TARGET_VEC. 2230 * coff-arm.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC. 2231 * coff-h8300.c: Use CREATE_BIG_COFF_TARGET_VEC. 2232 * coff-h8500.c: Use CREATE_BIG_COFF_TARGET_VEC. 2233 * coff-i386.c: Initialise new field of bfd_target structure. 2234 * coff-i860.c: Initialise new field of bfd_target structure. 2235 * coff-i960.c: Use CREATE_LITTLE_COFF_TARGET_VEC. 2236 * coff-m68k.c: Use CREATE_BIG_COFF_TARGET_VEC. 2237 * coff-mcore.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC. 2238 * coff-mips.c: Initialise new field of bfd_target structure. 2239 * coff-ppc.c: Initialise new field of bfd_target structure. 2240 * coff-rs6000.c: Initialise new field of bfd_target structure. 2241 * coff-sh.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC. 2242 * coff-sparc.c: Use CREATE_BIG_COFF_TARGET_VEC. 2243 * coff-tic30.c: Initialise new field of bfd_target structure. 2244 * coff-tic80.c: Use CREATE_LITTLE_COFF_TARGET_VEC. 2245 * coff-w65.c: Use CREATE_LITTLE_COFF_TARGET_VEC. 2246 * coff-we32k.c: Use CREATE_BIG_COFF_TARGET_VEC. 2247 * coff-z8k.c: Use CREATE_BIG_COFF_TARGET_VEC. 2248 * hppabsd-core.c: Initialise new field of bfd_target structure. 2249 * hpux-core.c: Initialise new field of bfd_target structure. 2250 * i386msdos.c: Initialise new field of bfd_target structure. 2251 * i386os9k.c: Initialise new field of bfd_target structure. 2252 * ieee.c: Initialise new field of bfd_target structure. 2253 * ihex.c: Initialise new field of bfd_target structure. 2254 * irix-core.c: Initialise new field of bfd_target structure. 2255 * mipsbsd.c: Initialise new field of bfd_target structure. 2256 * netbsd-core.c: Initialise new field of bfd_target structure. 2257 * oasys.c: Initialise new field of bfd_target structure. 2258 * osf-core.c: Initialise new field of bfd_target structure. 2259 * ppcboot.c: Initialise new field of bfd_target structure. 2260 * ptrace-core.c: Initialise new field of bfd_target structure. 2261 * sco5-core.c: Initialise new field of bfd_target structure. 2262 * som.c: Initialise new field of bfd_target structure. 2263 * srec.c: Initialise new field of bfd_target structure. 2264 * tekhex.c: Initialise new field of bfd_target structure. 2265 * trad-core.c: Initialise new field of bfd_target structure. 2266 * versados.c: Initialise new field of bfd_target structure. 2267 * vms.c: Initialise new field of bfd_target structure. 2268 22691999-07-19 Andreas Schwab <schwab@suse.de> 2270 2271 * elflink.h (elf_bfd_final_link): Remove unused variables rel_hash 2272 and rel_hdr. 2273 2274Sat Jul 17 02:28:28 1999 Mark P. Mitchell <mark@codesourcery.com> 2275 2276 * elflink.h (elf_link_adjust_relocs): New function. 2277 (elf_bfd_final_link): Use it. 2278 (elf_link_input_bfd): Deal with the fact that there can be 2279 two relocation sections for a single section. 2280 (elf_reloc_link_order): Likewise. 2281 2282 * elf32-mips.c (_bfd_mips_elf_final_link): Don't set GP for 2283 a relocateable object. 2284 (_bfd_mips_elf_relocate_section): Handle relocateable links. 2285 22861999-07-16 Jakub Jelinek <jj@ultra.linux.cz> 2287 2288 * elf64-sparc.c (sparc64_elf_info_to_howto): Use ELF64_R_TYPE_ID. 2289 (sparc64_elf_get_reloc_upper_bound, 2290 sparc64_elf_get_dynamic_reloc_upper_bound, 2291 sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table, 2292 sparc64_elf_canonicalize_dynamic_reloc, sparc64_elf_write_relocs): 2293 New functions. 2294 (sparc64_elf_check_relocs, sparc64_elf_relocate_section): Use 2295 ELF64_R_TYPE_ID/DATA where appropriate. 2296 22971999-07-16 Jakub Jelinek <jj@ultra.linux.cz> 2298 2299 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Remove 2300 DT_SPARC_PLTFMT. 2301 23021999-07-16 Ian Lance Taylor <ian@zembu.com> 2303 2304 * elf32-mips.c (mips_elf_local_relocation_p): New static 2305 function. 2306 (mips_elf_next_lo16_addend): Call bfd_set_error on failure. 2307 (mips_elf_calculate_relocation): Use mips_elf_local_relocation_p. 2308 Always set *require_jalxp. 2309 (mips_elf_stub_section_p): Mark abfd parameter as unused. 2310 (_bfd_mips_elf_relocate_section): Only look for LO16 following 2311 GOT16 if the GOT16 is against a local symbol. Don't return false 2312 for an undefined symbol. If there is an overflow, assert that we 2313 have a name. 2314 23151999-07-16 Andreas Schwab <schwab@suse.de> 2316 2317 * elflink.h (elf_link_record_local_dynamic_symbol): Remove unused 2318 variables `link' and `elfsec'. 2319 (elf_bfd_final_link): Remove unused variable `os'. 2320 2321Thu Jul 15 17:55:31 1999 Mark P. Mitchell <mark@codesourcery.com> 2322 2323 * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Don't require 2324 a PT_PHDR program headers. 2325 (_bfd_mips_elf_final_link): Don't assume there are going to be 2326 section symbols when we're not building a shared object. 2327 (_bfd_mips_elf_check_relocs): Make sure we have a GOT when 2328 we need one. 2329 23301999-07-15 J.T. Conklin <jtc@redback.com> 2331 2332 * config.bfd (i[3456]86-*-vxworks*): New target. 2333 23341999-07-15 Mark Mitchell <mark@codesourcery.com> 2335 2336 * elf32-mips.c (mips_elf_stub_section_p): New function. 2337 (mips_elf_calculate_relocation): Handle MIPS16 stub functions. 2338 (mips_elf_relocate_section): Adjust calling sequence for 2339 mips_elf_calculate_relocation and mips_elf_perform_relocation. 2340 (mips_elf_perform_relocation): Turn `jal' into `jalx' where 2341 required. 2342 23431999-07-15 Ian Lance Taylor <ian@zembu.com> 2344 2345 * configure.in: Bump version number to 2.9.5. 2346 * configure: Rebuild. 2347 2348Thu Jul 15 02:56:15 1999 Jeffrey A Law (law@cygnus.com) 2349 2350 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case R_HPPA): Handle 2351 64bit format. 2352 (_bfd_elf_hppa_gen_reloc_type, case R_GOTOFF): Use base reloc type 2353 to derive final type instead of hardwiring a selection. 2354 23551999-07-14 Mark Mitchell <mark@codesourcery.com> 2356 2357 * elf32-mips.c (mips_elf_obtain_contents): Swap 16-bit halves of 2358 things relocated by R_MIPS16_GPREL. 2359 (mips_elf_perform_relocation): Likewise. 2360 2361Wed Jul 14 15:23:19 1999 Jim Wilson <wilson@cygnus.com> 2362 2363 * elfxx-target.h (elfNN_bed): Add elf_backend_want_dynbss. 2364 23651999-07-14 Richard Henderson <rth@cygnus.com> 2366 2367 * elf32-mips.c (struct mips_got_info): Add global_gotno. 2368 (_bfd_mips_elf_size_dynamic_sections): Set it. 2369 (_bfd_mips_elf_final_link): Re-sort; verify the got did not grow. 2370 (mips_elf_sort_hash_table): Set max_non_got_dynindex based off 2371 new argument max_local. 2372 23731999-07-14 Mark Mitchell <mark@codesourcery.com> 2374 2375 * elf32-mips.c (mips_elf_obtain_contents): Swap the 16-bit 2376 subwords when handling an R_MIPS16_26 relocation. 2377 (mips_elf_perform_relocation): Don't be paranoid abour right-shift 2378 semantics. 2379 2380 * elf32-mips.c (elf_mips16_gprel_howto): Adjust src_mask and 2381 dst_mask to match reality. 2382 (_bfd_mips_elf_calculate_relocation): Handle R_MIPS16_GPREL. 2383 (mips_elf_obtain_contents): Use bfd_get. 2384 (mips_elf_perform_relocation): Handle R_MIPS16_GPREL. 2385 (mips_elf_relocate_section): Likewise. 2386 23871999-07-13 Mark Mitchell <mark@codesourcery.com> 2388 2389 * elf32-mips.c (mips_elf_calculate_relocation): Handle R_MIPS16_26. 2390 (mips_elf_relocate_section): Adjust calling sequence for 2391 mips_elf_perform_relocation. 2392 (mips_elf_perform_relocation): Take additional argument. Handle 2393 R_MIPS16_26. Use bfd_put for convenience. 2394 23951999-07-13 Richard Henderson <rth@cygnus.com> 2396 2397 * elf.c (assign_file_positions_for_segments): Thinko last change. 2398 Always overwrite p_flags. 2399 24001999-07-13 Richard Henderson <rth@cygnus.com> 2401 2402 * elf-bfd.h (struct elf_backend_data): Add want_dynbss. 2403 * elflink.c (_bfd_elf_create_dynamic_sections): Only create 2404 .dynbss and .rel[a].bss if want_dynbss. 2405 * elfxx-target.h (elf_backend_want_dynbss): Provide default. 2406 24071999-07-13 Richard Henderson <rth@cygnus.com> 2408 2409 * elf.c (assign_file_positions_for_segments): Don't overwrite p_flags. 2410 24111999-07-13 Richard Henderson <rth@cygnus.com> 2412 2413 * elf-bfd.h (struct elf_link_local_dynamic_entry): New. 2414 (struct elf_link_hash_table): Add dynlocal. 2415 (_bfd_elf_link_lookup_local_dynindx): Prototype. 2416 (_bfd_elf_link_adjust_dynindx): Delete. 2417 (_bfd_elf_link_renumber_dynsyms): Prototype. 2418 (_bfd_elf,link_record_local_dynamic_symbol): Prototype. 2419 * elfcode.h (elf_link_record_local_dynamic_symbol): New alias. 2420 * elflink.c (_bfd_elf_link_adjust_dynindx): Delete. 2421 (_bfd_elf_link_lookup_local_dynindx): New function. 2422 (elf_link_renumber_hash_table_dynsyms): New function. 2423 (_bfd_elf_link_renumber_dynsyms): New function. 2424 * elflink.h (elf_link_record_local_dynamic_symbol): New function. 2425 (struct elf_assign_sym_version_info): Delete removed_dynamic. 2426 (bfd_elf,size_dynamic_sections): Use _bfd_strip_section_from_output 2427 instead of elf_link_remove_section_and_adjust_dynindices. 2428 Remove removed_dynamic code. Use _bfd_elf_link_renumber_dynsyms. 2429 (elf_link_assign_sym_version): Remove removed_dynamic code. 2430 (elf_link_renumber_dynsyms): Delete. 2431 (elf_bfd_final_link): Install section and local symbols into .dynsym. 2432 2433 * elf32-m68k.c (elf_m68k_adjust_dynindx): Delete. 2434 (elf_m68k_size_dynamic_sections): Don't set section dynindicies. 2435 (elf_m68k_finish_dynamic_sections): Don't write section dynsyms. 2436 * elf32-mips.c: Similarly. 2437 * elf32-ppc.c: Similarly. 2438 * elf32-sparc.c: Similarly. 2439 * elf64-alpha.c: Similarly. 2440 * elf64-sparc.c: Similarly. 2441 24421999-07-13 Mark Mitchell <mark@codesourcery.com> 2443 2444 * elf32-mips.c (mips_elf_calculate_relocation): Do not complain 2445 when _gp_disp is undefined. Do not check R_MIPS_LO16 for overflow 2446 when the relocation is against _gp_disp. 2447 24481999-07-12 Mark Mitchell <mark@codesourcery.com> 2449 2450 * dwarf2.c (read_attribute): Support DW_FORM_ref8. 2451 * elf32-mips.c (mips_elf_link_hash_entry): Change mips_32_relocs 2452 to possibly_dynamic_relocs. Adjust usage throughout code. 2453 (elf_mips_howto_table): Handle R_MIPS_64 correctly. 2454 (elf_mips_ctor64_howto): Likewise. 2455 (mips_elf_calculate_relocation): Handle R_MIPS_64 like R_MIPS_32. 2456 Adjust indentation. 2457 (mips_elf_relocate_section): Handle R_MIPS_64 in 32-bit mode. 2458 (_bfd_mips_elf_check_relocs): Handle R_MIPS_64 like R_MIPS_32. 2459 Use MIPS_ELF_GOT_SIZE to calculate the size of GOT entries. 2460 * elf64-mips.c (elf_backend_may_use_rel_p): Define. 2461 24621999-07-12 Ian Lance Taylor <ian@zembu.com> 2463 2464 * Makefile.am: Rebuild dependencies. 2465 * Makefile.in: Rebuild. 2466 2467 * bfd-in.h: Remove tests of COFF_IMAGE_WITH_PE. 2468 * bfd-in2.h: Rebuild. 2469 2470 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED 2471 as appropriate. Use EMPTY_HOWTO as appropriate. Fill in 2472 structure initializations. Add casts. 2473 * reloc.c (EMPTY_HOWTO): Define. 2474 * bfd-in2.h: Rebuild. 2475 * coff-h8300.c (h8300_reloc16_extra_cases): Remove useless 2476 comparisons against 0. 2477 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Change 2478 previous_ibfd_e_flags to unsigned long. 2479 * vms.h (struct vms_private_data_struct): Change section_count to 2480 unsigned. 2481 * vms-gsd.c (_bfd_vms_slurp_gsd): Change psect_idx to unsigned. 2482 (_bfd_vms_write_gsd): Change symnum to unsigned. 2483 * vms-hdr.c (_bfd_vms_write_hdr): Change symnum to unsigned. 2484 * vms-tir.c (etir_sta): Change psect to unsigned. 2485 (alloc_section): Change idx to unsigned. 2486 (tir_sta, tir_ctl): Change psect to unsigned. 2487 (_bfd_vms_write_tir): Change len and before to bfd_size_type. 2488 * vms.c (priv_section_count): Change to unsigned. 2489 24901999-07-12 Andreas Schwab <schwab@suse.de> 2491 2492 * elf32-m68k.c: Add some ATTRIBUTE_UNUSED. 2493 * m68klinux.c: Likewise. 2494 24951999-07-12 Ian Lance Taylor <ian@zembu.com> 2496 2497 * Many files: Changes to avoid gcc warnings: Remove unused local 2498 variables. Add default case to enum switches. 2499 * coff-arm.c (bfd_arm_allocate_interworking_sections): Only 2500 compile if not COFF_IMAGE_WITH_PE. 2501 (record_arm_to_thumb_glue, record_thumb_to_arm_glue): Likewise. 2502 (bfd_arm_get_bfd_for_interworking): Likewise. 2503 (bfd_arm_process_before_allocation): Likewise. 2504 * epoc-pei-arm.c: Don't rename bfd_arm functions. 2505 * pei-arm.c: Likewise. 2506 * elf32-mips.c (mips_elf_link_hash_table_create): Don't declare. 2507 (MIPS_ELF_ADD_DYNAMIC_ENTRY): Correct last change. 2508 (mips_elf_got16_entry): Put parens around & in body of ==. 2509 (mips_elf_calculate_relocation): Correct test for empty string. 2510 * vms-gsd.c: Use _bfd_error_handler rather than fprintf to 2511 stderr. 2512 * vms-misc.c (_bfd_vms_length_hash_symbol): Correct sprintf 2513 format. 2514 25151999-07-11 Ian Lance Taylor <ian@zembu.com> 2516 2517 * Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED 2518 as appropriate. Fill in structure initializations. Add variable 2519 initializations. Add casts. 2520 * dwarf1.c (parse_line_table): Change eachLine to unsigned long. 2521 (dwarf1_unit_find_nearest_line): Change i to unsigned long. 2522 2523 * elf.c (bfd_elf_hash): Change parameter from unsigned char * to 2524 char *. 2525 * elf-bfd.h (bfd_elf_hash): Update declaration. 2526 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove casts 2527 when calling bfd_elf_hash. 2528 25291999-07-11 Mark Mitchell <mark@codesourcery.com> 2530 2531 * libbfd.c (bfd_put_8): Make it of type `void'. 2532 * bfd-in2.h: Regenerated. 2533 * elf32-mips.c (MIPS_ELF_ADD_DYNAMIC_ENTRY): Conditionalize 2534 for 32-bit hosts. 2535 (_bfd_mips_elf_final_link): Likewise. 2536 2537 * elflink.h (elf_link_read_relocs_from_section): Be type-correct. 2538 2539Thu Jul 8 12:32:23 1999 John David Anglin <dave@hiauly1.hia.nrc.ca> 2540 2541 * config.bfd (hppa*-*-linux-gnu*): New target 2542 25431999-07-07 Mark Mitchell <mark@codesourcery.com> 2544 2545 * elf-bfd.h (_bfd_mips_elf_section_from_shdr): Constify. 2546 (_bfd_mips_elf_create_dynamic_sections): New function. 2547 (_bfd_mips_elf_add_symbol_hook): Likewise. 2548 (_bfd_mips_elf_adjust_dynamic_symbol): Likewise. 2549 (_bfd_mips_elf_finish_dynamic_symbol): Likewise. 2550 (_bfd_mips_elf_finish_dynamic_sections): Likewise. 2551 (_bfd_mips_elf_gc_mark_hook): Likewise. 2552 (_bfd_mips_elf_gc_sweep_hook): Likewise. 2553 (_bfd_mips_elf_always_size_sections): Likewise. 2554 (_bfd_mips_elf_size_dynamic_sections): Likewise. 2555 (_bfd_mips_elf_check_relocs): Likewise. 2556 (_bfd_mips_elf_link_hash_table_create): Likewise. 2557 (_bfd_mips_elf_print_private_data): Likewise. 2558 (_bfd_mips_elf_link_output_symbol_hook): Likewise. 2559 (_bfd_mips_elf_final_link): Likewise. 2560 (_bfd_mips_elf_additional_program_headers): Likewise. 2561 (_bfd_mips_elf_modify_segment_map): Likewise. 2562 (_bfd_mips_elf_relocate_section): Likewise. 2563 * elf32-mips.c (mips_elf32_object_p): Move contents into 2564 _bfd_mips_elf_object_p. 2565 (mips_elf_additional_program_headers): Rename to 2566 _bfd_mips_elf_additional_program_headers. 2567 (mips_elf_modify_segment_map): Rename to 2568 _bfd_mips_elf_modify_segment_map. 2569 (elf_mips_abi_name): Change prototype. 2570 (mips_elf32_section_from_shdr): Merge into 2571 _bfd_mips_elf_section_from_shdr. 2572 (mips_elf32_section_processing): Merge into 2573 _bfd_mips_elf_section_processing. 2574 (mips_elf_final_link): Rename to _bfd_mips_elf_final_link. Invoke 2575 the right back-end ELF linker. 2576 (mips_elf_relocate_section): Rename to 2577 _bfd_mips_elf_relocate_section. Clean up. Adjust for 64-bit code. 2578 (mips_elf_link_output_symbol_hook): Rename to 2579 _bfd_mips_elf_link_output_symbol_hook. 2580 (mips_elf_create_dynamic_section): Rename to 2581 _bfd_mips_elf_create_dynamic_section. 2582 (mips_elf_check_relocs): Rename to _bfd_mips_elf_check_relocs. 2583 Adjust for 64-bit code. Use mips_elf_got_section. 2584 (mips_elf_adjust_dynamic_symbol): Rename to 2585 _bfd_mips_elf_adjust_dynamic_symbol. Use 2586 mips_elf_allocate_dynamic_relocations. 2587 (mips_elf_finish_dynamic_symbol): Rename to 2588 _bfd_mips_elf_finish_dynamic_symbol. Use mips_elf_got_section. 2589 Adjust for 64-bit code. 2590 (mips_elf_finish_dynamic_sections): Rename to 2591 _bfd_mips_elf_finish_dynamic_sections. Adjust for 64-bit code. 2592 (mips_elf_always_size_sections): Rename to 2593 _bfd_mips_elf_always_size_sections. 2594 (mips_elf_add_symbol_hook): Rename to 2595 _bfd_mips_elf_add_symbol_hook. 2596 (mips_elf_next_lo16_addend): Constify. 2597 (mips_elf_calculate_relocation): Likewise. 2598 (mips_elf_obtain_contents): Likewise. 2599 (mips_elf_perform_relocation): Likewise. 2600 (mips_elf_create_dynamic_relocation): Likewise. 2601 (mips_elf_allocate_dynamic_relocations): New function. 2602 (MIPS_ELF_REL_DYN_SECTION_NAME): New macro. 2603 (MIPS_ELF_REL_SIZE): Likewise. 2604 (MIPS_ELF_DYN_SIZE): Likewise. 2605 (MIPS_ELF_GOT_SIZE): Likewise. 2606 (MIPS_ELF_SYM_SIZE): Likewise. 2607 (MIPS_ELF_LOG_FILE_ALIGN): Likewise. 2608 (MIPS_ELF_GET_WORD): Likewise. 2609 (MIPS_ELF_PUT_WORD): Likewise. 2610 (MIPS_ELF_ADD_DYNAMIC_ENTRY): Likewise. 2611 (STUB_LW): Conditionalize for 64-bit value. 2612 (elf_mips_howto_table): Add R_MIPS_HIGHER and R_MIPS_HIGHEST 2613 entries. 2614 (_bfd_mips_elf_merge_private_bfd_data): Merge e_ident[EI_CLASS]. 2615 Check it for inconsistency. 2616 (_bfd_mips_elf_print_private_bfd_data): Print ABI=64 for 64-bit 2617 ABI. 2618 (_bfd_mips_elf_fake_sections): Remove duplicate handling of 2619 .msym. 2620 (mips_elf_global_got_index): Use MIPS_ELF_GOT_SIZE. 2621 (mips_elf_got_offset_from_index): Use misp_elf_got_section. 2622 (mips_elf_create_local_got_entry): Use MIPS_ELF_GOT_SIZE. 2623 (mips_elf_local_got_index): Likewise. 2624 (mips_elf_got_page): Likewise. 2625 (mips_elf_got_info): Likewise. 2626 (mips_elf_create_dynamic_relocation): Handle 32-bit/64-bit split. 2627 (ELF_DYNAMIC_INTERPRETER): Handle 64-bit code. 2628 (mips_elf_create_dynamic_sections): Use MIPS_ELF_LOG_FILE_ALIGN, 2629 instead of constant `2'. 2630 (mips_elf_create_got_section): Tidy. Use MIPS_ELF_GOT_SIZE. 2631 (mips_elf_create_msym_section): Use MIPS_ELF_LOG_FILE_ALIGN. 2632 (mips_elf_size_dynamic_sections): Use 2633 MIPS_ELF_REL_DYN_SECTION_NAME, MIPS_ELF_GOT_SIZE, 2634 MIPS_ELF_ADD_DYNAMIC_ENTRY. Remove #if 0'd code. 2635 Adjust all releveant entries in elf backend table. 2636 * elf64-mips.c (mips_elf64_section_from_shdr): Remove. 2637 (mips_elf64_section_processing): Likewise. 2638 Adjust elf backend entries to use _bfd_mips_elf variants now 2639 publicly available. 2640 2641 * elflink.h (elf_link_create_dynamic_sections): Handle non-standard 2642 hash-entry sizes. 2643 (size_dynamic_sections): Likewise. 2644 (elf_link_output_extsym): Likewise. 2645 * elf.c: (elf_fake_sections): Likewise. 2646 * libbfd.c (bfd_get): New macro. 2647 (bfd_put): Likewise. 2648 * bfd-in2.h: Regenerated. 2649 26501999-07-07 Mark Mitchell <mark@codesourcery.com> 2651 2652 * elf-bfd.h (elf_size_info): Add hash_entry_size, 2653 int_rels_per_ext_rel, swap_dyn_out, swap_reloc_in, swap_reloc_out, 2654 wap_reloca_in, and swap_reloca_out. 2655 * elflink.h (elf_link_read_relocs_from_section): Adjust to handle 2656 multiple internal relocations per external relocation. 2657 (link_read_relocs): Likewise. 2658 (elf_bfd_final_link): Likewise. 2659 (elf_link_input_bfd): Likewise. 2660 (elf_gc_mark): Likewise. 2661 (elf_gc_smash_unused_vtentry_relocs): Likewise. 2662 * elfcode.h (elf_swap_dyn_out): Adjust type to match 2663 elf_swap_dyn_in. 2664 (size_info): Add entries for new fields. 2665 * elf64-mips.c (mips_elf64_swap_reloc_out): Enable. 2666 (mips_elf64_be_swap_reloc_in): New function. 2667 (mips_elf64_be_swap_reloc_out): Likewise. 2668 (mips_elf64_be_swap_reloca_in): Likewise. 2669 (mips_elf64_be_swap_reloca_out): Likewise. 2670 (mips_elf64_size_info): Add entries for new fields. 2671 26721999-07-07 Ian Lance Taylor <ian@zembu.com> 2673 2674 * elflink.h (elf_bfd_final_link): Assert that section reloc_count 2675 field equals the new rel_count field. 2676 (elf_link_input_bfd): When doing a relocateable link, use the new 2677 rel_count field rather than the reloc_count field. 2678 (elf_reloc_link_order): Likewise. 2679 (elf_finish_pointer_linker_section): Likewise. 2680 2681 Based on patch from H.J. Lu <hjl@gnu.org>: 2682 * elflink.h (elf_merge_symbol): Permit a non-weak definition in a 2683 shared library to override a weak definition in a regular object. 2684 2685Tue Jul 6 10:23:39 1999 Jeffrey A Law (law@cygnus.com) 2686 2687 * libhppa.h: Revert July 2, 1999 patch. 2688 2689 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): T mode selectors 2690 need to generate DLTIND relocations, not DLTREL relocations. 2691 26921999-07-05 Nick Clifton <nickc@cygnus.com> 2693 2694 * coffcode.h (coff_set_arch_mach_hook): Recognise arm 5 2695 architectures. 2696 (coff_set_flags): Recognise arm 5 architectures. 2697 2698 * cpu-arm.c: Add support for strongarm and arm9 cpus. 2699 Add support for armv5 architecture. 2700 2701 * archures.c: Add bfd_mach_arm_5 and bfd_mach_arm_5T. 2702 2703 * reloc.c: Add new, assembler only, ARM reloc: 2704 BFD_RELOC_ARM_ADRL_IMMEDIATE. 2705 2706 * bfd-in2.h: Regenerate. 2707 27081999-07-02 Mark Mitchell <mark@codesourcery.com> 2709 2710 * dwarf2.c (parse_comp_unit): Add ABBREV_LENGTH parameter. 2711 (_bfd_dwarf2_find_nearest_line): Add ADDR_SIZE parameter. 2712 * elf.c (_bfd_elf_find_nearest_line): Pass it. 2713 * elf32-arm.h (elf32_arm_find_nearest_line): Likewise. 2714 * elf32-mips.c (ABI_64_P): New macro. 2715 (IRIX_COMPAT): We are IRIX6-compatible if ABI_64_P. 2716 (_bfd_mips_elf_find_nearest_line): Adjust call to 2717 _bfd_dwarf2_find_nearest_line. 2718 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. 2719 * libbfd.h: Regenerated. 2720 27211999-07-02 Ian Lance Taylor <ian@zembu.com> 2722 2723 * config.bfd: Add * at the end of i[3456]86-*-unixware. 2724 2725Fri Jul 2 12:21:10 1999 Jeffrey A Law (law@cygnus.com) 2726 2727 * libhppa.h (HPPA_R_ARG_RELOC): Delete. 2728 (HPPA_R_CONSTANT, HPPA_R_ADDEND): Likewise. 2729 27301999-07-01 Mark Mitchell <mark@codesourcery.com> 2731 2732 * elf-bfd.h (bfd_elf_section_data): Add rel_count and rel_count2 2733 fields. 2734 (_bfd_elf_init_reloc_shdr): New function. 2735 * elf.c (_bfd_elf_new_section_hook): Use bfd_zalloc, rather than 2736 bfd_alloc followed by memset. 2737 (_bfd_elf_init_reloc_shdr): New function, split out from ... 2738 (elf_fake_sections): Here. 2739 (assign_section_numbers): Assign section numbers for the second 2740 relocation section, if required. 2741 * elflink.h (elf_link_output_relocs): New function. 2742 (elf_link_size_reloc_section): Likewise. 2743 (elf_bfd_final_link): Use elf_link_size_reloc_section. 2744 (elf_link_input_bfd): Use elf_link_output_relocs. 2745 2746 * elf32-mips.c (_bfd_mips_elf_fake_sections): Use 2747 _bfd_elf_init_reloc_shdr to initialize rel_hdr2. 2748 2749Thu Jul 1 13:58:48 1999 Jeffrey A Law (law@cygnus.com) 2750 2751 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle R_PCREL_CALL 2752 with 22bit format. 2753 27541999-06-28 Mark Mitchell <mark@codesourcery.com> 2755 2756 * elf32-mips.c (mips_elf_got_info): Move declaration before 2757 prototypes. Change global_gotsym to be a pointer to a hash entry, 2758 rather than a number index. 2759 (mips_elf_link_hash_entry): Move declaration before prototypes. 2760 (mips_elf_irix6_finish_dynamic_symbol): New function. 2761 (mips_elf_sign_extend): Likewise. 2762 (mips_elf_high): Likewise. 2763 (mips_elf_higher): Likewise. 2764 (mips_elf_highest): Likewise. 2765 (mips_elf_global_got_index): Likewise. 2766 (mips_elf_local_got_index): Likewise. 2767 (mips_elf_got_offset_from_index): Likeiwse. 2768 (mips_elf_record_global_got_symbol): Likewise. 2769 (mips_elf_got_page): Likewise. 2770 (mips_elf_next_lo16_addend): Likewise. 2771 (mips_elf_calculate_relocation): Likewise. 2772 (mips_elf_obtain_contents): Likewise. 2773 (mips_elf_perform_relocation): Likewise. 2774 (mips_elf_assign_gp): Likewise. 2775 (mips_elf_sort_hash_table_f): Likewise. 2776 (mips_elf_sort_hash_table): Likewise. 2777 (mips_elf_got_section): Likewise. 2778 (mips_elf_got_info): Likewise. 2779 (mips_elf_create_local_got_entry): Likewise. 2780 (mips_elf_got16_entry): Likewise. 2781 (mips_elf_create_dynamic_relocation): Likewise. 2782 (elf_mips_howto_table): Add description of R_MIPS_SCN_DISP. 2783 (mips_elf_final_gp): Use mips_elf_assign_gp. 2784 (_bfd_mips_elf_symbol_processing): Don't move SHN_COMMON symbols 2785 into SHN_SCOMMON automatically on IRIX6. 2786 (mips_elf_add_symbol_hook): Likewise. 2787 (mips_elf_relocate_section): Rewrite, using 2788 mips_elf_calculate_relocation and mips_elf_perform_relocation. 2789 (mips_elf_create_dynamic_section): Use MIPS_ELF_STUB_SECTION_NAME. 2790 Don't deal with .rld_map on IRIX6. 2791 (mips_elf_create_got_section): Adjust use of global_gotsym. Set 2792 section flags appropriately for .got. 2793 (mips_elf_check_relocs): Handle IRIX6 relocations making use of 2794 the got. Call mips_elf_record_global_got_symbol and allocate 2795 local got space appropriately. 2796 (mips_elf_size_dynamic_sections): Use bfd_byte *, not unsigned 2797 char *. Rework calculation of GOT size. Sort dynamic symbol 2798 table entries so entries that do not require GOT entries appear at 2799 the beginning. Don't use DT_MIPS_HIPAGENO on IRIX6. Remove dead 2800 code dealing with DT_INIT and DT_FINI. Remove fiddling with 2801 global_gotsym. 2802 (mips_elf_finish_dynamic_symbol): Adjust creation of global GOT 2803 entries. 2804 (mips_elf_finish_dynamic_symbol): Use 2805 mips_elf_irix6_finish_dynamic_symbol. 2806 (mips_elf_finish_dynamic_sections): Correct off-by-one error 2807 setting DT_MIPS_UNREFEXTNO. Adjust setting of DT_MIPS_GOTSYM for 2808 change to global_gotsym. Set DT_MIPS_OPTIONS on IRIX6. 2809 28101999-06-30 Ian Lance Taylor <ian@zembu.com> 2811 2812 * elf32-mips.c (mips_elf_final_link): Don't set CPIC when doing a 2813 relocateable link. From Ralf Baechle <ralf@uni-koblenz.de>. 2814 28151999-06-04 Philip Blundell <philb@gnu.org> 2816 2817 * elf32-arm.h (elf_backend_got_header_size): Define. 2818 (elf_backend_plt_header_size): Likewise. 2819 28201999-06-28 Jim Pick <jim@jimpick.com> 2821 2822 * elf32-arm.h (elf32_arm_relocate_section): Mind no_undefined 2823 2824Tue Jun 29 02:25:03 1999 Jeffrey A Law (law@cygnus.com) 2825 2826 * elf-hppa.c (elf_hppa_howto_table): Use bfd_elf_generic_reloc as 2827 relocation function. 2828 * elf32-hppa.c (hppa_elf_reloc): Kill unused/unwanted function. 2829 28301999-06-27 Mark Mitchell <mark@codesourcery.com> 2831 2832 * elf32-mips.c (MIPS_ELF_SRDATA_SECTION_NAME): New macro. 2833 (MIPS_ELF_OPTIONS_SECTION_NAME): Likewise. 2834 (MIPS_ELF_STUB_SECTION_NAME): Likewise. 2835 (_bfd_mips_elf_section_from_shdr): Use them. 2836 (_bfd_mips_elf_fake_sections): Likewise. Add .srdata to the list 2837 of GP-relative sections. 2838 (_bfd_mips_elf_set_section_contents): Use them. 2839 (_bfd_mips_elf_section_processing): Share code between .sdata and 2840 .lit4/.lit8 sections. Set appropriate flags for .srdata. 2841 (mips_elf_additional_program_headers): Add handling for 2842 PT_MIPS_OPTIONS segment on IRIX6. 2843 (mips_elf_modify_segment_map): Likeiwse. 2844 (mips_elf_final_link): Set EF_MIPS_CPIC when required by the ABI. 2845 Include the options sections on IRIX6. Don't look for GP-relative 2846 sections by name; use SHF_MIPS_GPREL instead. 2847 (ELF_DYNAMIC_INTERPRETER): Adjust to use /usr/lib32/libc.so.1 for 2848 the N32 ABI. 2849 (mips_elf_create_dynamic_sections): Don't muck about with section 2850 alignments and such on IRIX6. 2851 (mips_elf_adjust_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME. 2852 (mips_elf_size_dynamic_sections): Likewise. Adjust to handle the 2853 fact that ELF_DYNAMIC_INTERPRETER is no longer a constant. Use 2854 bfd_zalloc rather than bfd_alloc and memset. 2855 (mips_elf_finish_dynamic_symbol): Use MIPS_ELF_STUB_SECTION_NAME. 2856 Don't assert the existence of .rld_map on IRIX6. 2857 (mips_elf_finish_dynamic_sections): Use MIPS_ELF_STUB_SECTION_NAME. 2858 2859 * elf32-mips.c (mips_elf_adjust_dynindx): Remove. 2860 (mips_elf_size_dynamic_sections): Use _bfd_elf_link_adjust_dynindx 2861 instead. 2862 28631999-06-26 Mark Mitchell <mark@codesourcery.com> 2864 2865 * elf32-mips.c (mips_elf_swap_msym_in): New function. 2866 (mips_elf_swap_msym_out): New function. 2867 (mips_elf_create_msym_section): Likewise. 2868 (MIPS_ELF_MSYM_SECTION_NAME): New macro. 2869 (_bfd_mips_elf_final_write_processing): Set sh_link for .msym. 2870 (_bfd_mips_elf_section_from_shdr): Reject an SHT_MIPS_MSYM 2871 section not named .msym. 2872 (_bfd_mips_elf_fake_sections): Use MIPS_ELF_MSYM_SECTION_NAME, not 2873 .msym directly. Set appropriate attributes for the .msym 2874 section. 2875 (mips_elf_link_hash_entry): Add min_dyn_reloc_index field. 2876 (mips_elf_link_hash_newfunc): Clear it. 2877 (mips_elf_create_dynamic_sections): Create the .msym section 2878 on IRIX6. 2879 (mips_elf_size_dynamic_sections): Allocate space for the 2880 .msym section. Add a DT_MIPS_MSYM entry. 2881 (mips_elf_finish_dynamic_symbol): Write out a .msym entry for 2882 the symbol. 2883 (mips_elf_finish_dynamic_sections): Assign a value for 2884 DT_MIPS_MSYM. Add .msym entries for the section symbols as well. 2885 2886 * elf32-mips.c (irix_compat_t): New enumeration. 2887 (ABI_N32_P): New macro. 2888 (IRIX_COMPAT): Likewise. 2889 (SGI_COMPAT): Implement in terms of IRIX_COMPAT. 2890 (mips_elf_relocate_section): Fix typo. 2891 28921999-06-26 Mumit Khan <khan@xraylith.wisc.edu> 2893 2894 * peicode.h (coff_swap_scnhdr_out): Mark non readonly BFD sections 2895 as writable PE sections. 2896 28971999-06-26 David Mosberger <davidm@hpl.hp.com> 2898 2899 * dwarf2.c (struct arange): New type. 2900 (struct comp_unit): Replace LOW and HIGH by member ARANGE. 2901 (arange_add): New function. 2902 (decode_line_info): Keep track of address ranges that a compilation 2903 unit covers. 2904 (comp_unit_contains_address): Return true if address is contained 2905 in _any_ of the address ranges associated with a compilation unit. 2906 (_bfd_dwarf2_find_nearest_line): Call comp_unit_find_nearest_line 2907 on the first comp_unit that contains the address. 2908 29091999-06-26 David Mosberger <davidm@hpl.hp.com> 2910 2911 * dwarf2.c (struct dwarf2_debug): Add member dwarf_line_buffer. 2912 (decode_line_info): Add variable STASH and initialize it to point 2913 to the per-bfd dwarf2_debug info. Remove static variable 2914 dwarf_line_buffer and use stash->dwarf_line_buffer in its place. 2915 29161999-06-26 Ian Lance Taylor <ian@zembu.com> 2917 2918 * elflink.h (elf_link_output_extsym): It's OK for a -Bsymbolic 2919 shared library to have an undefined symbol. 2920 2921 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>: 2922 * elf32-ppc.c (ppc_elf_relocate_section): Fix last patch. 2923 2924Thu Jun 24 20:59:11 1999 Jeffrey A Law (law@cygnus.com) 2925 2926 * elf-hppa.c (elf_hppa_final_write_processing): New function. 2927 * elf32-hppa.c: Remove everything related to symbol extension 2928 sections & records. Use the common elf_hppa_final_write_processing. 2929 29301999-06-22 Mark Mitchell <mark@codesourcery.com> 2931 2932 * elflink.h (size_dynamic_sections): Use user-specified init/fini 2933 functions instead of _init/_fini if requested. 2934 29351999-06-23 Ian Lance Taylor <ian@zembu.com> 2936 2937 * elf.c (bfd_section_from_shdr): Avoid crashing on a bogus sh_link 2938 field. 2939 29401999-06-22 Ian Lance Taylor <ian@zembu.com> 2941 2942 From Franz Sirl <Franz.Sirl-kernel@lauterbach.com>: 2943 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set unused dynindx 2944 field to 0, not -1. 2945 (ppc_elf_finish_dynamic_sections): Check for positive section 2946 dynindx field, rather than comparing against -1. 2947 (ppc_elf_relocate_section): Only return false if undefined_symbol 2948 or reloc_overflow fail, not always upon encountering an error. 2949 29501999-06-22 Mark Mitchell <mark@codesourcery.com> 2951 2952 * elflink.h (link_read_relocs): Explicitly cast external_relocs to 2953 bfd_byte * before performing pointer arithmetic. 2954 2955Tue Jun 22 13:06:25 1999 Jeffrey A Law (law@cygnus.com) 2956 2957 * elf-hppa.h: New file. Common stuff for elf32 and elf64 PA 2958 support. 2959 * elf32-hppa.c: Include elf-hppa.h. 2960 (ARCH_SIZE): Define. 2961 (elf_hppa_reloc_type_lookup): Delete. Found in the common code 2962 now. 2963 (elf32_hppa_info_to_howto): Similarly. 2964 (elf_hppa_howto_table): Similarly. 2965 (elf_hppa_reloc_type_lookup): Similarly. 2966 (hppa_elf_gen_reloc_type): Similarly. 2967 * elf32-hppa.h (ELF_HOWTO_TALBE, N_PARISC_RELOCS): Delete. 2968 29691999-06-22 Nick Clifton <nickc@cygnus.com> 2970 2971 * elf32-v850.c (v850_elf_final_link_relocate): Catch overflow 2972 handling R_V850_22_PCREL relocation. 2973 29741999-06-21 Ian Lance Taylor <ian@zembu.com> 2975 2976 * coff-arm.c (arm_emit_base_file_entry): Explicitly declare return 2977 type. 2978 2979Sun Jun 20 14:13:57 1999 Richard Henderson <rth@cygnus.com> 2980 2981 * section.c (_bfd_strip_section_from_output): Ignore sections 2982 DISCARDed by the link script. 2983 29841999-06-19 Ian Lance Taylor <ian@zembu.com> 2985 2986 * elflink.h (elf_link_remove_section_and_adjust_dynindices): 2987 Remove unused local variable spp. 2988 2989 * xcofflink.c (bfd_xcoff_size_dynamic_sections): Don't crash if 2990 the entry symbol is not set. 2991 2992Fri Jun 18 04:24:57 1999 Richard Henderson <rth@cygnus.com> 2993 2994 * elf64-alpha.c (elf64_alpha_relocate_section): Don't adjust 2995 GPDISP or LITUSE in a relocatable link. 2996 2997Thu Jun 17 21:24:43 1999 J"orn Rennecke <amylaar@cygnus.co.uk> 2998 2999 * dwarf1.c (alloc_dwarf1_unit): Allocate using bfd_zalloc. 3000 * (alloc_dwarf1_func): Likewise. 3001 3002Wed Jun 16 03:09:57 1999 Jeffrey A Law (law@cygnus.com) 3003 3004 * libhppa.h: Fix various formatting errors. 3005 (assemble_3); Rewrite using CATENATE. 3006 (assemble_17): Fix various bugs. 3007 30081999-06-16 Nick Clifton <nickc@cygnus.com> 3009 3010 * elf32-mcore.c (R_MCORE_RAW): Fix definition. 3011 30121999-06-15 Richard Henderson <rth@cygnus.com> 3013 3014 * section.c (SEC_SHORT): Define. 3015 * bfd-in2.h: Rebuild. 3016 30171999-06-13 Mark Mitchell <mark@codesourcery.com> 3018 3019 * elflink.h (elf_link_remove_section_and_adjust_dynindices): 3020 Remove abfd parameter. Use _bfd_strip_section_from_output. 3021 (bfd_elf_size_dynamic_sections): Adjust callers accordingly. 3022 3023 * elf-bfd.h (_bfd_elf_link_adjust_dynindx): New function. 3024 * elflink.c (_bfd_elf_link_adjust_dynindx): Define it. 3025 * elflink.h (elf_link_remove_section_and_adjust_dynindices): New 3026 function. 3027 (bfd_elf_size_dynamic_sections): Use it. 3028 30291999-06-13 Alan Modra <alan@spri.levels.unisa.edu.au> 3030 3031 * elf32-i386.c (elf_howto_table): Change R_386_PC8 from 3032 complain_overflow_bitfield to complain_overflow_signed. 3033 30341999-06-13 Mark Mitchell <mark@codesourcery.com> 3035 3036 * elflink.h (elf_link_read_relocs_from_section): New function, 3037 split out from ... 3038 (elf_link_read_relocs): Here. Use it for both relocation 3039 sections. 3040 30411999-06-12 Mark Mitchell <mark@codesourcery.com> 3042 3043 * elfcode.h (elf_slurp_reloc_table_from_section): Don't assume 3044 asect->reloc_count is valid. 3045 30461999-06-12 Ian Lance Taylor <ian@zembu.com> 3047 3048 * elf32-mips.c (mips_elf32_section_processing): Permit a 3049 SHT_MIPS_REGINFO section to have a size of 0. 3050 30511999-06-12 David O'Brien <obrien@freebsd.org> 3052 3053 * config.bfd (alpha*-*-freebsd*): New target. 3054 (i[3456]86-*-freebsd*): Now defaults to ELF. 3055 30561999-06-11 Ian Lance Taylor <ian@zembu.com> 3057 3058 * reloc.c (_bfd_relocate_contents): Permit bitfield relocations to 3059 wrap if the relocation covers the high bit of an address. 3060 3061 * dwarf2.c (decode_line_info): Remove unused variable first_time. 3062 30631999-06-10 Jakub Jelinek <jj@ultra.linux.cz> 3064 3065 * elf64_sparc.c (sparc64_elf_relocate_section): Use R_SPARC_max_std 3066 instead of R_SPARC_max. 3067 (sparc64_elf_info_to_howto): Likewise. 3068 * elf32_sparc.c (elf32_sparc_relocate_section): Likewise. 3069 (elf32_sparc_info_to_howto): Likewise; handle vtable relocations. 3070 30711999-06-07 Richard Henderson <rth@cygnus.com> 3072 3073 * section.c (_bfd_strip_section_from_output): Remove output 3074 sections with no initial link_order. 3075 30761999-06-07 Nick Clifton <nickc@cygnus.com> 3077 3078 * elf32-m88k.c (ELF_MAXPAGESIZE): Define. 3079 3080Mon Jun 7 11:49:43 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 3081 3082 * Makefile.am (SOURCE_HFILES): Add missing headers. 3083 * Makefile.in: Regenerated. 3084 30851999-06-06 Mark Mitchell <mark@codesourcery.com> 3086 3087 * elf32-mips.c (_bfd_mips_elf_print_private_data): Recognize 3088 the N32 ABI. 3089 30901999-06-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> 3091 3092 * elf32-ppc.c (ppc_elf_relocate_section): Don't barf on out of 3093 range undefweak symbols. 3094 * hash.c: Add missing comma after @xref{} 3095 * linker.c: Likewise. 3096 30971999-06-04 Nick Clifton <nickc@cygnus.com> 3098 3099 * elfxx-target.h (ELF_MAXPAGESIZE): Produce an error message 3100 if not defined. 3101 * elf32-gen.c (ELF_MAXPAGESIZE): Define. 3102 * elf32-i860.c (ELF_MAXPAGESIZE): Define. 3103 * elf32-i960.c (ELF_MAXPAGESIZE): Define. 3104 * elf64-gen.c (ELF_MAXPAGESIZE): Define. 3105 31061999-06-04 Ian Lance Taylor <ian@zembu.com> 3107 3108 * Makefile.am: Rebuild dependencies. 3109 (BFD32_BACKENDS): Add dwarf1.lo. 3110 (BFD32_BACKENDS_CFILES): Add dwarf1.c. 3111 * Makefile.in: Rebuild. 3112 31131999-06-04 Nick Clifton <nickc@cygnus.com> 3114 3115 * Makefile.am: Add epoc-arm-pe target. 3116 * Makefile.in: Regenerate. 3117 * pe-arm.c: Only redefine interworking function names if they have 3118 not already been redefined. 3119 * pei-arm.c: Only redefine interworking function names if they have 3120 not already been redefined. 3121 * epoc-pe-arm.c: Redefine interworking function names to avoid a 3122 name space clash. 3123 * epoc-pei-arm.c: Redefine interworking function names to avoid a 3124 name space clash. 3125 31261999-06-03 Nick Clifton <nickc@cygnus.com> 3127 3128 * elfxx-target.h (ELF_MAXPAGESIZE): Default to 0x1000 not 1. 3129 3130Fri Jun 4 10:05:11 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 3131 3132 * elf.c (elf_fake_sections): Undo change of 1999-05-10. 3133 3134Fri Jun 4 03:10:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk> 3135 3136 * elf32-sh.c (sh_elf_relax_delete_bytes): Fix setting of 3137 start / stop for recalculating of r_addend of R_SH_SWITCH*. 3138 3139Fri Jun 4 02:53:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk> 3140 3141 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH32 3142 in other text sections. 3143 3144Fri Jun 4 02:29:34 1999 J"orn Rennecke <amylaar@cygnus.co.uk> 3145 3146 * libbfd.c (_bfd_generic_verify_endian_match): New function. 3147 * libbfd-in.h (_bfd_generic_verify_endian_match): Declare. 3148 * libbfd.h: Regenerate. 3149 * coff-sh.c (sh_merge_private_data): Delete. 3150 (coff_bfd_merge_private_bfd_data): Change to 3151 _bfd_generic_verify_endian_match. 3152 (elf32-sh.c): bfd_elf32_bfd_merge_private_bfd_data: Define. 3153 31541999-06-03 Ulrich Drepper <drepper@cygnus.com> 3155 3156 * elf32-arm.h: Fix typo: change ELF_MAXPAGE_SIZE to ELF_MAXPAGESIZE. 3157 31581999-06-03 Ian Lance Taylor <ian@zembu.com> 3159 3160 * bfd-in.h (bfd_elf32_arm_allocate_interworking_sections): Correct 3161 prototype. 3162 (bfd_elf32_arm_process_before_allocation): Likewise. 3163 * bfd-in2.h: Rebuild. 3164 31651999-06-03 David Mosberger <davidm@hpl.hp.com> 3166 3167 * dwarf2.c (struct line_info): Add member END_SEQUENCE to keep 3168 track of end_sequence markers. 3169 (add_line_info): Add END_SEQUENCE arg. 3170 (decode_line_info): Don't try to infer lo_pc and hi_pc from the 3171 debug-line info---it doesn't work right if a compilation unit 3172 consists of multiple discontiguous code-sequences. It would be 3173 worthwhile to optimize for the common case where a compilation 3174 unit results in a contiguous set of code sequences, but this is 3175 quite tricky to get right for arbitrary DWARF2 files. 3176 (lookup_address_in_line_info_table): Don't use the last line entry 3177 for a compilation unit for anything with an address higher than 3178 this line entry. Also, check for end_sequence markers to 3179 correctly handle discontinuities. 3180 (_bfd_dwarf2_find_nearest_line): When checking previously loaded 3181 compilation units, check all compilation units with each->high==0 3182 just like when reading compilation units. 3183 3184 * dwarf2.c (decode_line_info): Initialize table->files and 3185 table->last_line to NULL to avoid segfaults due to random 3186 values in these members. 3187 (concat_filename): Check for out-of-range file number before 3188 indexing filename table. Segfaults suck. 3189 3190 * dwarf2.c (decode_line_info): Don't truncate address to least 3191 significant 32 bits (breaks 64 bit targets). 3192 (lookup_address_in_function_table): Ditto. 3193 (comp_unit_contains_address): Ditto. 3194 31951999-06-02 Mark Mitchell <Mark Mitchell <mark@codesourcery.com>> 3196 3197 * elf32-mips.c (elf_mips_howto_table): Add R_MIPS_JALR. 3198 * elf64-mips.c (mips_elf64_howto_table_rel): Likewise. 3199 (mips_elf64_howto_table_rela): Likewise. 3200 3201 * elfcode.h (elf_slurp_reloc_table_from_section): New function, 3202 split out from ... 3203 (elf_slurp_reloc_table): Here. Use it to handle the case where a 3204 single section has two associated relocation sections. 3205 32061999-06-02 Mark Salter <msalter@cygnus.com> 3207 3208 * coffcode.h (coff_set_alignment_hook): Set lma from s_vaddr if 3209 COFF_WITH_PE defined. 3210 32111999-06-02 Nick Clifton <nickc@cygnus.com> 3212 3213 * pe-arm.c: Rename global arm interworking functions to avoid name 3214 collision when all targets BFD is built. 3215 * pei-arm.c: Ditto. 3216 32171999-05-31 Mark Mitchell <mark@codesourcery.com> 3218 3219 * elf-bfd.h (elf_backend_data): Remove use_rela_p. Add 3220 may_use_rel_p, may_use_rela_p, default_use_rela_p. 3221 (bfd_elf_section_data): Add use_rela_p. 3222 * elf.c (bfd_section_from_shdr): Set use_rela_p appropriately. 3223 (_bfd_elf_new_section_hook): Likewise. 3224 (elf_fake_sections): Use may_use_rela_p, etc., instead of 3225 use_rela_p. 3226 (_bfd_elf_copy_private_section_data): Copy use_rela_p. 3227 * elfcode.h (write_relocs): Determine whether or not use rela 3228 relocs based on the relocation section header. 3229 * elflink.c (_bfd_elf_create_dynamic_sections): Use default_use_rela_p 3230 instead of use_rela_p. 3231 * elfxx-target.h (elf_backend_may_use_relp): New macro. 3232 (elf_backend_may_use_rela_p): Likewise. 3233 (elf_backend_default_use_rela_p): Likewise. 3234 (elfNN_bed): Use them. 3235 3236Wed Jun 2 12:38:49 1999 Miodrag Vallat <miodrag@multimania.com> 3237 3238 * hosts/alphalinux.h (TRAD_CORE_EXTRA_SIZE_ALLOWED): Expand to 4096. 3239 3240Tue Jun 1 17:57:58 1999 Mark P. Mitchell <mitchell@n02.acl.lanl.gov> 3241 3242 * reloc.c (BFD_RELOC_MIPS_SUB): New relocation. 3243 (BFD_RELOC_MIPS_GOT_PAGE): Likewise. 3244 (BFD_RELOC_MIPS_GOT_OFST): Likewise. 3245 (BFD_RELOC_MIPS_GOT_DISP): Likewise. 3246 * bfd-in2.h: Regenerated. 3247 * libbfd.h: Likewise. 3248 * elf32-mips.c (mips_info_to_howto_rela): New function. 3249 (USE_REL): Adjust for new conventions. 3250 (MINUS_ONE): New macro. 3251 (elf_mips_howto_table): Add R_MIPS_SUB. 3252 (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, MIPS_GOT_OFST, 3253 and MIPS_GOT_DISP. 3254 (mips_elf_final_write_processing): Set sh_link, not sh_info, for a 3255 .MIPS.content section. 3256 (_bfd_mips_elf_fake_sections): Treat all sections that begin 3257 with .MIPS.content as .MIPS.content sections. Set 3258 SHF_MNIPS_NOSTRIP for such section. 3259 (elf_info_to_howto): Define to mips_info_to_howto_rela. 3260 * elf64-mips.c (mips_r): Add entries for MIPS_SUB, MIPS_GOT_PAGE, 3261 MIPS_GOT_OFST, and MIPS_GOT_DISP. 3262 3263Wed Jun 2 11:51:12 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 3264 3265 * vms-misc.c (_bfd_vms_hash_newfunc): Fix use of uninitialized 3266 variable. 3267 3268 * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Avoid ambigous 3269 `else'. 3270 32711999-05-30 Philip Blundell <philb@gnu.org> 3272 3273 * elf32-arm.h (elf32_arm_relocate_section): Reinstate change of 3274 1993-03-25 (!!). Take into account the bitmasks for the reloc so 3275 the addend does not overflow into the rest of the word. 3276 32771999-05-29 Nick Clifton <nickc@cygnus.com> 3278 3279 * bfd-in.h: Amend prototype for 3280 bfd_elf32_arm_process_before_allocation . 3281 * bfd-in.h: Regenerate. 3282 3283 * elfarm-oabi.c (NUM_ELEM): New macro: Compute the number of 3284 elements in a fixed sized array. 3285 (ARM_ELF_ABI_VERSION): Define. 3286 (ARM_ELF_OS_ABI_VERSION): Define. 3287 (R_ARM_THM_ABS5): Fix rightshift and size. 3288 (R_ARM_THM_PC22): Fix size. 3289 (R_ARM_PLT32): Define Howto. 3290 (find_howto): New function: Locate a howto based on a reloc 3291 number. 3292 (elf32_arm_info_to_howto): Use find_howto if necessary. 3293 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to 3294 bfd_reloc_code_real_type. 3295 (elf32_arm_reloc_map[]): Add entries for BFD_RELOC_VTABLE_INHERIT 3296 and BFD_RELOC_VTABLE_ENTRY. 3297 (elf32_arm_reloc_type_lookup): Use find_howto if necessary. 3298 3299 * elfarm-nabi.c (NUM_ELEM): New macro: Compute the number of 3300 elements in a fixed sized array. 3301 (ARM_ELF_ABI_VERSION): Define. 3302 (ARM_ELF_OS_ABI_VERSION): Define. 3303 (R_ARM_THM_ABS5): Fix rightshift and size. 3304 (R_ARM_THM_PC22): Fix size. 3305 (elf32_arm_info_to_howto_rel): Rename to elf32_arm_info_to_howto. 3306 (elf32_arm_reloc_map): Change type of field bfd_reloc_val to 3307 bfd_reloc_code_real_type. 3308 3309 * elf32-arm.h (struct elf32_arm_link_hash_table): Add new field: 3310 no_pipeline_knowledge. 3311 (elf32_arm_link_hash_create): Initialise new field to zero. 3312 (bfd_elf32_arm_process_before_allocation): Add new paraemter: 3313 no_pipeline_knowledge. Use this parameter to initialise the field 3314 in the globals data structure. 3315 (elf32_arm_final_link_relocate): Only add in pipeline offset if 3316 no_pipeline_knowledge is false and the binary is from an old 3317 toolchain. 3318 (elf32_arm_merge_private_data): Generate an error if an attempt is 3319 made to linl together big endian and little endian code. 3320 (elf32_arm_post_process_headers): New function: Initialise the 3321 EI_OSABI and EI_ABIVERSION fields of the newly created ELF program 3322 header. 3323 (elf_backend_post_process_headers): Define. 3324 33251999-05-28 Nick Clifton <nickc@cygnus.com> 3326 3327 * elf-bfd.h (struct elf_backend_data): Add new field: 3328 elf_backend_post_process_headers. 3329 3330 * elfxx-target.h (elf_backend_post_process_headers): Define to 3331 NULL if not already defined. 3332 (elfNN_bed): Initialise elf_backend_post_process_headers field. 3333 3334 * elf.c (prep_headers): Set the EI_OSABI and EI_ABIVERSION fields 3335 to zero. 3336 (_bfd_elf_compute_section_file_positions): Call 3337 elf_backend_post_process_headers if defined. 3338 33391999-05-28 Ian Lance Taylor <ian@zembu.com> 3340 3341 * configure.in: Check whether getuid and getgid exist. 3342 * archive.c: Define getuid and getgid as macros if HAVE_GETUID or 3343 HAVE_GETGID are not defined, respectively. 3344 (bfd_write_armap): Don't special case on _WIN32 for getuid and 3345 getgid. 3346 * configure.host: Set ac_cv_func_get{ug}id for *-*-windows*. 3347 * configure, config.in: Rebuild. 3348 33491999-05-28 Martin Dorey <mdorey@madge.com> 3350 3351 * elf32-i960.c: New file. 3352 * elf.c (prep_headers): Handle bfd_arch_i960. 3353 * targets.c (bfd_target_vector): Add &bfd_elf32_i960_vec. 3354 * config.bfd (i960-*-elf*): New target. 3355 * configure.in (bfd_elf32_i960_vec): New target vector. 3356 * Makefile.am (BFD32_BACKENDS): Add elf32-i960.lo. 3357 (BFD32_BACKENDS_CFILES): Add elf32-i960.c. 3358 * Makefile.in, aclocal.m4, configure: Rebuild. 3359 33601999-05-27 Nick Clifton <nickc@cygnus.com> 3361 3362 * elfarm-oabi.c (elf32_arm_howto_table): Add entry for 3363 R_ARM_PLT32. 3364 (find_howto): New function: Find entries in the 3365 elf32_arm_howto_table. 3366 (elf32_arm_info_to_howto): Use find_howto if the entry cannot be 3367 computed simply. 3368 (elf32_arm_reloc_type_lookup): Add lookup for 3369 BFD_RELOC_ARM_PLT32. 3370 33711999-05-25 Philip Blundell <pb@nexus.co.uk> 3372 3373 * bfd/elf32-arm.h (elf32_arm_link_hash_newfunc): New function. 3374 (elf32_arm_link_hash_table_create): Use above function as the 3375 constructor for hash table entries. 3376 (elf32_arm_relocate_section): Avoid crash when there is no output 3377 section. 3378 (elf32_arm_final_link_relocate): New parameter h. 3379 (elf32_arm_relocate_section): Pass symbol hash entry to above 3380 routine. 3381 (elf32_arm_gc_sweep_hook, elf32_arm_check relocs): Correct 3382 comments. 3383 33841999-05-25 Catherine Moore <clm@cygnus.com> 3385 3386 * coff-arm.c (coff_arm_relocate_section): Don't emit 3387 base file entries for pc-relative values. 3388 33891999-05-25 DJ Delorie <dj@cygnus.com> 3390 3391 * peicode.h (coff_swap_sym_in): When we create the actual section 3392 to reflect the not-there section C_SECTION symbols refer to, 3393 change the symbol class to C_STAT as the section is now really 3394 there. 3395 33961999-05-24 Philip Blundell <pb@nexus.co.uk> 3397 3398 * elf32-arm.h (elf32_arm_relocate_section): Undo change of 3399 1999-03-25. 3400 3401Mon May 17 13:35:35 1999 Stan Cox <scox@cygnus.com> 3402 3403 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed 3404 F_PIC_INT to F_PIC. 3405 * coffcode.h (coff_set_arch_mach_hook): Added F_ARM_2a, and 3406 F_ARM_3M labels. Changed F_PIC_INT to F_PIC. 3407 34081999-05-16 Nick Clifton <nickc@cygnus.com> 3409 3410 * coff-mcore.c (in_reloc_p): Reinstate. 3411 34121999-05-15 Nick Clifton <nickc@cygnus.com> 3413 3414 * reloc.c (BFD_RELOC_MCORE_RVA): Define. 3415 * bfd-in2.h: Regenerate. 3416 * coff-mcore.c (in_reloc_p): Remove defintion. 3417 (mcore_coff_howto): Add IMAGE_REL_MCORE_RVA. 3418 (mcore_coff_reloc_type_lookup): Map BFD_RELOC_RVA to 3419 IMAGE_REL_MCORE_RVA. 3420 (coff_mcore_rtype_to_howto): Add special processing for 3421 IMAGE_REL_MCORE_RVA. 3422 (coff_mcore_relocate_section): Add support for 3423 IMAGE_REL_MCORE_RVA. 3424 * elf32-mcore (mcore_elf_howto_): Add R_MCORE_RELATIVE. 3425 (mcore_elf_reloc_type_lookup): Map BFD_RELOC_RVA to 3426 R_MCORE_RELATIVE. 3427 (mcore_elf_relocate_section): Delete redundant case labels. 3428 3429Fri May 14 10:59:55 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 3430 3431 * elf32-arm.h (elf32_arm_relocate_section): Fix operator 3432 precedence between bit-and and comparison. 3433 3434Thu May 13 09:45:23 1999 Joel Sherrill (joel@OARcorp.com) 3435 3436 * config.bfd (i[3456]86*-*-rtems*, m68k*-*-rtems*): Added to 3437 list of target formats (targ_selvecs). 3438 (i[3456]86*-*-rtemself*, mips*el-*-rtems*): New targets. 3439 (powerpcle*-*rtems*, sh-*-rtemself*): New targets. 3440 34411999-05-10 DJ Delorie <dj@cygnus.com> 3442 3443 * ecoff.c (_bfd_ecoff_write_armap): give the symtab element a 3444 reasonable mode until "ar x" is smart enough to skip it (fixes 3445 gcc/libgcc.a builds on mips-ecoff targets 3446 3447 * coffcode.h (styp_to_sec_flags): Explain how COMDATs are supposed 3448 to work. Hack to support MS import libraries, which use different 3449 COMDAT types than GNU. 3450 (coff_slurp_symbol_table): C_SECTION symbols are local; they refer 3451 to implied zero-length sections (see peicode below) 3452 * coffgen.c (coff_get_normalized_symtab): Properly read long MS 3453 filename symbols, which use one *or more* auxents. 3454 * coffswap.h (coff_swap_aux_in): ditto 3455 * peicode.h (coff_swap_sym_in): Build the implied zero-length 3456 sections 3457 3458Tue May 11 15:51:58 1999 Jeffrey A Law (law@cygnus.com) 3459 3460 * elf32-v850.c (v850_elf_howto_table): Make partial_inplace false 3461 for all relocations. 3462 34631999-05-10 Catherine Moore <clm@cygnus.com> 3464 3465 * bfd-in.h (bfd_arm_allocate_interworking_sections): Static 3466 if COFF_IMAGE_WITH_PE. 3467 (bfd_arm_process_before_allocation): Likewise. 3468 (bfd_arm_get_bfd_for_interworking): Likewise. 3469 * coff-arm.c: Likewise. 3470 * bfd-in2.h: Regenerate. 3471 * configure.in (armpe_little_vec): Remove coff-arm.lo. 3472 (armpe_big_vec): Likewise. 3473 * configure: Rebuild. 3474 34751999-05-10 Nick Clifton <nickc@cygnus.com> 3476 3477 * elf.c (elf_fake_sections): Check for .rel. as start of rel 3478 section, not just .rel. Same for .rela. 3479 34801999-05-07 Nick Clifton <nickc@cygnus.com> 3481 3482 * coff-mcore.c (coff_mcore_relocate_section): Replace assert about 3483 endianism with an error message. 3484 3485Thu May 6 17:09:09 1999 Fred Fish <fnf@be.com> 3486 3487 * dwarf2.c (read_abbrevs): Change cast of dwarf_abbrev_buffer 3488 assignment from "unsigned char *" to "char *". 3489 (decode_line_info): Likewise for dwarf_line_buffer assignment. 3490 34911999-05-05 Catherine Moore <clm@cygnus.com> 3492 3493 * coff-arm.c (coff_arm_relocate_section): Add one to 3494 address of ARM_RVA32 thumb functions. 3495 34961999-05-05 Catherine Moore <clm@cygnus.com> 3497 3498 * elf32-m68k.c (elf32_m68k_set_private_flags): New. 3499 (elf32_m68k_copy_private_bfd_data): New. 3500 (elf32_m68k_merge_private_bfd_data): New. 3501 (elf32_m68k_print_private_bfd_data): New. 3502 (CPU32_FLAG): Define. 3503 (PLT_CPU32_ENTRY_SIZE): Define. 3504 (elf_cpu32_plt0_entry): Declare. 3505 (elf_cpu32_plt_entry): Declare. 3506 (elf_m68k_adjust_dynamic_symbol): Generate cpu32 plt entries. 3507 (elf_m68k_finish_dynamic_symbol): Likewise. 3508 (elf_m68k_finish_dynamic_sections): Likewise. 3509 (elf_backend_plt_header_size): Remove definition. 3510 (bfd_elf32_bfd_copy_private_bfd_data): Define. 3511 (bfd_elf32_bfd_merge_private_bfd_data): Define. 3512 (bfd_elf32_bfd_set_private_flags): Define. 3513 (bfd_elf32_bfd_print_private_bfd_data): Define. 3514 3515Mon May 3 09:24:49 1999 Jeffrey A Law (law@cygnus.com) 3516 3517 * som.c (som_fixup_formats): Fix comments for R_SHORT_PCREL_MODE 3518 and R_LONG_PCREL_MODE. 3519 35201999-04-29 Nick Clifton <nickc@cygnus.com> 3521 3522 * coff-mcore.c (coff_mcore_relocate_section): Fix typos. 3523 3524Fri Apr 28 16:36:19 1999 Stan Cox <scox@cygnus.com> 3525 3526 * elf32-sh.c (sh_elf_relocate_section): Include relocation addend 3527 in relocation calculation. 3528 35291999-04-26 Tom Tromey <tromey@cygnus.com> 3530 3531 * aclocal.m4, configure: Updated for new version of libtool. 3532 35331999-04-21 Nick Clifton <nickc@cygnus.com> 3534 3535 * coff-mcore.c: Add support for mcore relocs. 3536 35371999-04-20 Gavin Romig-Koch <gavin@cygnus.com> 3538 3539 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): Scrap the 3540 incorrect use EF_MIPS_xxBITPTRS. 3541 35421999-04-18 Ian Lance Taylor <ian@zembu.com> 3543 3544 * elf64-alpha.c (elf64_alpha_relax_section): Remove unused local 3545 variable insn. 3546 3547 * bfd-in2.h: Rebuild. 3548 * libbfd.h: Rebuild. 3549 3550Sat Apr 17 20:55:15 1999 Catherine Moore <clm@cygnus.com> 3551 3552 * coff-arm.c (coff_arm_rtype_to_howto): Remove ARM26D transform. 3553 (coff_arm_relocate_section): Add ARM26D transform. Only 3554 change to ARM26D for relocateable links. 3555 35561999-04-16 Gavin Romig-Koch <gavin@cygnus.com> 3557 3558 * elf32-mips.c (_bfd_mips_elf_print_private_bfd_data): New. 3559 (bfd_elf32_bfd_print_private_bfd_data): New. 3560 35611999-04-15 Doug Evans <devans@casey.cygnus.com> 3562 3563 * elf32-arm.h (elf32_arm_final_link_relocate): For R_ARM_THM_ABS5, 3564 refetch addend if USE_REL, add many comments regarding current state. 3565 For R_ARM_THM_PC22, refetch addend if USE_REL, simplify. 3566 * elfarm-nabi.c (elf32_arm_howto_table): For R_ARM_THM_ABS5, fix 3567 size and rightshift. For R_ARM_THM_PC22, fix bitsize. 3568 * elfarm-oabi.c (elf32_arm_howto_table): Ditto. 3569 3570Wed Apr 14 14:33:08 1999 Richard Henderson <rth@cygnus.com> 3571 3572 * elf32-mips.c (_bfd_mips_elf_read_ecoff_info): Zero `debug'. 3573 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Likewise. 3574 35751999-04-13 David Mosberger <davidm@hpl.hp.com> 3576 3577 * dwarf2.c (decode_line_info): Don't truncate address to least 3578 significant 32 bits (breaks 64 bit targets). 3579 (lookup_address_in_function_table): Ditto. 3580 (comp_unit_contains_address): Ditto. 3581 3582Tue Apr 13 21:27:19 1999 Catherine Moore <clm@cygnus.com> 3583 3584 * coff-arm.c (arm_emit_base_file_entry): New routine. 3585 (A2T3_OFFSET): Define. 3586 (T2A3_OFFSET): Define. 3587 (coff_arm_relocate_section): Emit base file entries for interworking 3588 stubs. 3589 35901999-04-13 Philip Blundell <philb@gnu.org> 3591 3592 * elfarm-nabi.c (elf32_arm_howto_table): Add dummy entries for 3593 relocs 17 through 19. 3594 3595Sun Apr 11 01:25:17 1999 Richard Henderson <rth@cygnus.com> 3596 3597 * elfcode.h: Remove fnmatch.h. 3598 * elflink.h (elf_link_assign_sym_version): Call back to ld 3599 instead of calling fnmatch. 3600 3601 * config.bfd (i?86-*-beoself): Include pe vecs. 3602 3603Sun Apr 11 01:14:06 1999 Richard Henderson <rth@cygnus.com> 3604 3605 * elf32-i386.c (elf_i386_finish_dynamic_sections): Allow .plt 3606 to go missing. 3607 36081999-04-10 Richard Henderson <rth@cygnus.com> 3609 3610 * elf32-i386.c (elf_i386_relocate_section): Mind no_undefined 3611 when trying to resolve dynamic symbol references. 3612 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 3613 * elf32-mips.c (mips_elf_relocate_section): Likewise. 3614 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 3615 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 3616 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 3617 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 3618 * elflink.h (elf_link_output_extsym): Likewise. 3619 3620Sat Apr 10 15:12:09 1999 Richard Henderson <rth@cygnus.com> 3621 3622 * section.c (_bfd_strip_section_from_output): New function moved from 3623 * elf64-alpha.c (elf64_alpha_strip_section_from_output): ... here. 3624 * elf32-i386.c (elf_i386_size_dynamic_sections): Use it. 3625 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. 3626 * elf32-mips.c (mips_elf_size_dynamic_sections): Likewise. 3627 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. 3628 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. 3629 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. 3630 * bfd-in2.h: Update. 3631 36321999-04-09 Ian Lance Taylor <ian@zembu.com> 3633 3634 * elf64-sparc.c: Fix incorrect calls to bfd_check_overflow. 3635 36361999-04-08 Nick Clifton <nickc@cygnus.com> 3637 3638 * coff-mcore.c: New File: Support for mcore-pe targets. 3639 * cpu-mcore.c: New File: Support for mcore targets. 3640 * elf32-mcore.c: New File: Support for mcore-elf target. 3641 * pe-mcore.c: New File: Definitions for mcore-pe target. 3642 * pei-mcore.c: New File: Definitions for mcore-pei target. 3643 * Makefile.am: Add support for MCore targets. 3644 * Makefile.in: Regenerate. 3645 * config.bfd: Add support for MCore targets. 3646 * configure.in: Add support for MCore targets. 3647 * configure: Regenerate. 3648 * archures.c: Add support for MCore architecture. 3649 * bfd-in2.h: Regenerate. 3650 * coffcode.h: Add support for mcore-pe targets. 3651 * elf.c: Add support for mcore-elf target. 3652 * reloc.c: Add support for MCore relocs. 3653 * targets.c: Add support for MCore targets. 3654 36551999-04-07 Nick Clifton <nickc@cygnus.com> 3656 3657 * elfarm-nabi.c (elf32_arm_howto_table): Add entries for 3658 R_ARM_XPC25 and R_ARM_THM_XPC22. 3659 (elf32_arm_reloc_map): Remove redundant entries. 3660 36611999-04-06 Ian Lance Taylor <ian@zembu.com> 3662 3663 * sysdep.h (LC_MESSAGES): Never define. 3664 36651999-04-06 Chris Torek <torek@bsdi.com> 3666 3667 * reloc.c (bfd_check_overflow): Add addrsize parameter. Change 3668 all callers. Rewrite completely. 3669 (_bfd_relocate_contents): Rewrite overflow checking. 3670 * bfd-in2.h: Rebuild. 3671 36721999-04-05 Ian Lance Taylor <ian@zembu.com> 3673 3674 From Gabriel Paubert <paubert@iram.es>: 3675 * elf32-ppc.c (ppc_elf_howto_raw): Set R_PPC_GOT16_LO, 3676 R_PPC_PLT16_LO and R_PPC_SECTOFF_LO to be complain_overflow_dont. 3677 Set R_PPC_PLT16_HA, R_PPC_SECTOFF_HA and R_PPC_EMB_NADDR16_HA to 3678 have a rightshift of 16 and use ppc_elf_addr16_ha_reloc. 3679 * ppcboot.c (ppcboot_vec): Use little endian routines for 3680 headers. 3681 3682 * elf.c (elfcore_strndup): Only define if it will be used. 3683 * elf32-ppc.c (ppc_elf_relax_section): Remove unused locals irel 3684 and irelend. 3685 (ppc_elf_check_relocs): Remove unused local i. 3686 (ppc_elf_gc_mark_hook): Add default case to switch. 3687 3688 From Bernd Nitzler <nitzler@kagcpd01.ag01.kodak.COM>: 3689 * srec.c (srec_scan): Accept \r in symbol definitions. 3690 (srec_object_p): Set HAS_SYMS if we saw any symbols. 3691 (symbolsrec_object_p): Likewise. 3692 36931999-04-04 Don Bowman <don@pixsci.com> 3694 3695 * config.bfd: Add mips*el-*-vxworks* and mips*-*-vxworks*. 3696 36971999-04-04 Ian Lance Taylor <ian@zembu.com> 3698 3699 * dwarf1.c (parse_line_table): Remove unused locals last_pc and 3700 last_line. 3701 * elf-bfd.h (_bfd_elfcore_section_from_phdr): Declare. 3702 * elf32-i386.c (elf_i386_gc_mark_hook): Add default case to 3703 switch. 3704 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Remove unused 3705 local i. 3706 * syms.c (_bfd_stab_section_find_nearest_line): Remove unused 3707 local val. 3708 37091999-03-31 Nick Clifton <nickc@cygnus.com> 3710 3711 * config.bfd: Add support for arm-epoc-pe target. 3712 * configure.in: Add support for arm-epoc-pe target. 3713 * configure: Regenerate. 3714 * targets.c: Add support for arm-epoc-pe target. 3715 * coff-arm.c: Allow header files to override definition of 3716 TARGET_UNDERSCORE and USER_LABEL_PREFIX. 3717 * pe-arm.h: Allow previous header files to override definition of 3718 TARGET_LITTLE_SYM and TARGET_BIG_SYM. 3719 * pei-arm.h: Allow previous header files to override definition of 3720 TARGET_LITTLE_SYM and TARGET_BIG_SYM. 3721 * epoc-pe-arm.c: New file. Support arm-epoc-pe target. 3722 * epoc-pei-arm.c: New file. Support arm-epoc-pei target. 3723 37241999-03-30 Nick Clifton <nickc@cygnus.com> 3725 3726 * elf.c (elf_map_symbols): Handle the case where section 3727 symbols are generated for content-less sections which are 3728 not mapped to the output file. 3729 3730 * linker.c: Replace direct references to fields in BFD structure 3731 with accessor macros. 3732 3733 * elflink.h: Replace direct references to fields in BFD structure 3734 with accessor macros. 3735 37361999-03-25 Philip Blundell <pb@nexus.co.uk> 3737 3738 * config.bfd: Eliminate redundancy in checks for Linux/ARM. 3739 3740 * elf32-arm.h (elf32_arm_relocate_section): Take the rightshift into 3741 account when adjusting section symbols during a partial link. 3742 37431999-03-24 Nick Clifton <nickc@cygnus.com> 3744 3745 * coff-sparc.c (struct coff_reloc_map): Change type of field 3746 'bfd_reloc_val' to bfd_reloc_code_real_type. 3747 * elf-m10200.c (struct mn10200_reloc_map): Ditto. 3748 * elf-m10300.c (struct mn10300_reloc_map): Ditto. 3749 * elf32-arc.c (struct arc_reloc_map): Ditto. 3750 * elf32-d10v.c (struct d10v_reloc_map): Ditto. 3751 * elf32-d30v.c (struct d30v_reloc_map): Ditto. 3752 * elf32-fr30.c (struct fr30_reloc_map): Ditto. 3753 * elf32-m32r.c (struct m32r_reloc_map): Ditto. 3754 * elf32-sh.c (struct elf_reloc_map): Ditto. 3755 * elf32-sparc.c (struct elf_reloc_map): Ditto. 3756 * elf32-v850.c (struct v850_reloc_map): Ditto. 3757 * elf64-sparc.c (struct elf_reloc_map): Ditto. 3758 * elfarm-nabi.c (struct elf32_arm_reloc_map): Ditto. 3759 * elfarm-oabi.c (struct elf32_arm_reloc_map): Ditto. 3760 37611999-03-17 Martin Hunt <hunt@cygnus.com> 3762 3763 * syms.c (_bfd_stab_section_find_nearest_line): Changed this 3764 function so source-level assembly works. If multiple N_SOs 3765 are seen without and N_FUNs, create an indextable entry with 3766 a NULL function name. 3767 37681999-03-16 Gavin Romig-Koch <gavin@cygnus.com> 3769 3770 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data) Allow merging 3771 of certian similar cpus. 3772 37731999-03-16 Gavin Romig-Koch <gavin@cygnus.com> 3774 3775 * elf32-mips.c (_bfd_mips_elf_final_write_processing): 3776 Add the 5000. Change the architecture for the 5400 to mips4. 3777 (elf_mips_mach): Add r5000. 3778 37791999-03-11 Doug Evans <devans@casey.cygnus.com> 3780 3781 * cpu-i960.c (scan_i960_mach): Recognize i960:ka_sa and i960:kb_sb. 3782 37831999-03-11 Nick Clifton <nickc@cygnus.com> 3784 3785 * binary.c (binary_set_section_contents): Generate warning about 3786 huge file offsets for any section that will occupy file space, not 3787 just those that are loadable. 3788 37891999-02-24 Jim Blandy <jimb@zwingli.cygnus.com> 3790 3791 * libbfd.h: Regenerate after Nick Clifton's Feb 17 changes. 3792 37931999-02-22 Jim Lemke <jlemke@cygnus.com> 3794 3795 * elf32-ppc.c: Add ppc_elf_relax_section() for the ld option mpc860c0. 3796 3797Mon Feb 22 18:26:51 1999 Ian Lance Taylor <ian@cygnus.com> 3798 3799 * elf-bfd.h (ELF_LINK_HASH_REF_REGULAR_NONWEAK): Define. 3800 * elflink.h: Revert all changes since Feb 16. Instead: 3801 (elf_link_add_object_symbols): Set REF_REGULAR_NONWEAK flag if 3802 appropriate. Copy it to version symbols. 3803 (elf_fix_symbol_flags): Set REF_REGULAR_NONWEAK for non ELF 3804 symbols if appropriate. 3805 (elf_adjust_dynamic_symbol): Set REF_REGULAR_NONWEAK for weakdef 3806 symbol if appropriate. 3807 (elf_link_output_extsym): If symbol is marked as undefined, and 3808 has no nonweak references, mark it as weak undefined. 3809 3810Fri Feb 19 16:01:12 1999 Ian Lance Taylor <ian@cygnus.com> 3811 3812 * elflink.h (elf_merge_symbol): When overriding a dynamic 3813 definition with a weak undefined symbol, set NEEDS_PLT if it is a 3814 function. 3815 (elf_link_add_object_symbols): Don't copy the other field if we 3816 are overridding. 3817 3818Thu Feb 18 18:07:43 1999 Ian Lance Taylor <ian@cygnus.com> 3819 3820 * elflink.h (elf_merge_symbol): Do not merge any symbol from a 3821 shared object with a weak undefined symbol. 3822 38231999-02-18 Nick Clifton <nickc@cygnus.com> 3824 3825 * elfarm-nabi.c: Set partial_inplace back to false. 3826 38271999-02-17 Nick Clifton <nickc@cygnus.com> 3828 3829 * coff-arm.c (TARGET_UNDERSCORE): Re-enable. 3830 (USER_LABEL_PREFIX): Set to "_". 3831 3832 The following patches are from: Scott Bambrough 3833 <scottb@corelcomputer.com> 3834 3835 * libaout.h (M_ARM6_NETBSD): Set to 143. 3836 3837 * reloc.c: Add ARM PIC relocs: BFD_RELOC_ARM_GOT12, 3838 BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_COPY, 3839 BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_PLT32, 3840 BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC. 3841 * bfd-in2.h: Regenerate. 3842 3843 * elfarm-nabi.c (elf32_arm_howto_table): Set partial_inplace to 3844 'true' as REL relocs are now being used. Add new PIC relocs: 3845 R_ARM_COPY, R_ARM_GLOB_DAT, R_ARM_JUMP_SLOT, R_ARM_RELATIVE, 3846 R_ARM_GOTOFF, R_ARM_GOTPC, R_ARM_GOT32, R_ARM_PLT32. 3847 3848 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Check byte order 3849 of targets. 3850 (elf32_arm_final_link_relocate): Change parameters so that entire 3851 reloc is passed. Add support for PIC relocs. 3852 (elf32_arm_relocate_section): Pass entire reloc to 3853 elf32_arm_final_link_relocate. 3854 (elf32_arm_check_relocs): Handle new PIC relocs. 3855 (elf32_arm_adjust_dynamic_symbol): New function. 3856 (elf32_arm_size_dynamic_sections): New function. 3857 (elf32_arm_discard_copies): New function. 3858 (elf32_arm_finish_dynamic_symbol): New function. 3859 (elf32_arm_finish_dynamic_sections): New function. 3860 (ELF_MAXPAGE_SIZE): Define. 3861 (bfd_elf32_bfd_reloc_type_lookup): Define. 3862 (elf_backend_relocate_section): Define. 3863 (elf_backend_adjust_dynamic_symbol): Define. 3864 (elf_backend_create_dynamic_sections): Define. 3865 (elf_backend_finish_dynamic_symbol): Define. 3866 (elf_backend_finish_dynamic_sections): Define. 3867 (elf_backend_size_dynamic_sections): Define. 3868 (elf_backend_plt_readonly): Define. 3869 (elf_backend_want_got_plt): Define. 3870 (elf_backend_want_plt_sym): Define. 3871 3872Wed Feb 17 12:02:26 1999 Stan Cox <scox@cygnus.com> 3873 3874 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Make reginfo 3875 sections SEC_LINK_ONCE and SEC_LINK_DUPLICATES_SAME_SIZE. 3876 (_bfd_mips_elf_fake_sections): Likewise. 3877 3878Wed Feb 17 12:07:23 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 3879 3880 * elfarm-oabi.c (bfd_elf32_arm_allocate_interworking_sections, 3881 bfd_elf32_arm_get_bfd_for_interworking, 3882 bfd_elf32_arm_process_before_allocation): Define to avoid clash 3883 with elfarm-nabi.c. 3884 3885 * elf32-arm.h: Don't declare elf32_arm_info_to_howto. 3886 (elf32_thumb_to_arm_stub, elf32_arm_to_thumb_stub, 3887 elf32_arm_find_nearest_line): Make them static. 3888 3889Tue Feb 16 22:44:37 1999 Ian Lance Taylor <ian@cygnus.com> 3890 3891 * elflink.h (elf_merge_symbol): Add pflags parameter. Change all 3892 callers. Do not merge a definition from a shared object with a 3893 weak undefined symbol. 3894 (elf_link_add_object_symbols): Do not change the symbol type or 3895 size if the old symbol overrides the new one. 3896 38971999-02-08 Nick Clifton <nickc@cygnus.com> 3898 3899 * config.bfd: Add support for strongarm target. 3900 3901Mon Feb 8 11:18:14 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 3902 3903 * elf32-m68k.c (reloc_map): Use the correct types for the struct 3904 fields instead of unsigned char. 3905 3906Fri Feb 5 00:22:36 1999 Ian Lance Taylor <ian@cygnus.com> 3907 3908 * Makefile.am: Rebuild dependencies. 3909 * Makefile.in: Rebuild. 3910 3911Thu Feb 4 22:30:13 1999 Ian Lance Taylor <ian@cygnus.com> 3912 3913 * configure.in: Change AC_PREREQ to 2.13. Remove AM_CYGWIN32. 3914 Change AM_EXEEXT to AC_EXEEXT and AM_PROG_INSTALL to 3915 AC_PROG_INSTALL. Add comments to uses of AC_DEFINE. 3916 * acinclude.m4: Add comments to uses of AC_DEFINE. 3917 * acconfig.h: Remove. 3918 * configure: Rebuild with current autoconf/automake. 3919 * aclocal.m4: Likewise. 3920 * config.in: Likewise. 3921 * Makefile.in: Likewise. 3922 39231999-02-04 DJ Delorie <dj@cygnus.com> 3924 3925 * libbfd.c (real_read): don't call fread for zero bytes. This 3926 covers up a bug (or misuse of bfd) that's exposed by Solaris. 3927 3928Thu Feb 4 12:38:10 1999 Stan Cox <scox@cygnus.com> 3929 3930 * elf32-mips.c (mips_elf_relocate_section): Insure that the target 3931 of a jump is in the current 256 MB region. 3932 3933Thu Feb 4 12:15:38 1999 Ian Lance Taylor <ian@cygnus.com> 3934 3935 * format.c (bfd_check_format_matches): Change last patch to only 3936 take effect for the binary target. 3937 3938Wed Feb 3 19:40:12 1999 Ian Lance Taylor <ian@cygnus.com> 3939 3940 * elf32-i386.c (elf_i386_reloc_type_lookup): Add BFD_RELOC_CTOR. 3941 3942Wed Feb 3 15:02:44 1999 Catherine Moore <clm@cygnus.com> 3943 3944 * elf32-fr30.c (fr30_elf_check_relocs): New routine. 3945 3946Tue Feb 2 21:38:28 1999 Ian Lance Taylor <ian@cygnus.com> 3947 3948 * format.c (bfd_check_format_matches): If the target was 3949 previously specified, don't check other targets when checking for 3950 an archive file. 3951 3952Tue Feb 2 18:16:43 1999 Catherine Moore <clm@cygnus.com> 3953 3954 * elf32-arm.h (elf32_arm_reloc_map): Removed. 3955 (elf32_arm_reloc_type_lookup): Removed 3956 * elfarm-nabi.c (elf32_arm_reloc_map): New. 3957 (elf32_arm_reloc_type_lookup): New. 3958 * elfarm-oabi.c (elf32_arm_reloc_map): New. 3959 (elf32_arm_reloc_type_lookup): New. 3960 3961Mon Feb 1 19:49:21 1999 Catherine Moore <clm@cygnus.com> 3962 3963 * elfarm-nabi.c: Renamed from elf32-arm-newabi.c. 3964 * elfarm-oabi.c: Renamed from elf32-arm-oldabi.c 3965 * Makefile.am: Use new files. 3966 * Makefile.in: Regenerate. 3967 * configure.in: Use new files. 3968 * configure: Regenerate. 3969 39701999-02-01 Nick Clifton <nickc@cygnus.com> 3971 3972 * elf32-fr30.c (fr30_elf_gc_mark_hook): New function. 3973 (fr30_elf_gc_sweep_hook): New function. 3974 (elf_backend_can_gc_sections): Define. 3975 3976Mon Feb 1 12:21:47 1999 Catherine Moore <clm@cygnus.com> 3977 3978 * targets.c (bfd_target_vector): Add bfd_elf32_littlearm_oabi_vec 3979 and bfd_elf32_bigarm_oabi_vec. 3980 3981Mon Feb 1 11:46:31 1999 Catherine Moore <clm@cygnus.com> 3982 3983 * Makefile.am (elf32-arm-oldabi.lo): New. 3984 (elf32-arm-newabi.lo): New. 3985 * Makefile.in: Regenerate. 3986 * config.bfd (thumb-*-elf): Remove definition of targ_underscore. 3987 (arm-*-elf): Likewise. 3988 (arm-*-oabi): New. 3989 (thumb-*-oabi): New. 3990 * configure: Regenerate. 3991 * configure.in (bfd_elf32_littlearm_oabi_vec): New. 3992 (bfd_elf32_bigarm_oabi_vec): New. 3993 * elf32-arm-newabi.c: New. 3994 * elf32-arm-oldabi.c: New. 3995 * elf32-arm.c: Removed. 3996 * elf32-arm.h: New. 3997 3998Mon Feb 1 11:52:12 1999 Frank Ch. Eigler <fche@cygnus.com> 3999 4000 * binary.c (binary_set_section_contents): Omit warnings for 4001 unloadable sections. 4002 40031999-01-31 Michael Meissner <meissner@cygnus.com> 4004 4005 * config.bfd (powerpc{,le}-*-vxworks*): Add aliases to 4006 powerpc{,le}-*-eabi. 4007 40081999-01-29 Nick Clifton <nickc@cygnus.com> 4009 4010 * dwarf2.c (read_unsigned_leb128): Remove unused variables. 4011 * dwarf2.c (read_signed_leb128): Remove unused variables. 4012 4013Fri Jan 29 00:47:21 1999 H.J. Lu <hjl@gnu.org> 4014 4015 * elf.c (assign_file_positions_for_segments): Only adjust 4016 p_align when needed. 4017 4018Thu Jan 28 20:05:22 1999 Ian Lance Taylor <ian@cygnus.com> 4019 4020 * binary.c (binary_set_section_contents): Don't return early for a 4021 non-loadable section, in case the first section is non-loadable. 4022 Don't set the low lma for a SEC_NEVER_LOAD section. From Maciej 4023 W. Rozycki <macro@ds2.pg.gda.pl>. 4024 40251999-01-28 Nick Clifton <nickc@cygnus.com> 4026 4027 * elf32-fr30.c (fr30_reloc_map): Add R_FR30_GNU_VTINHERIT and 4028 R_FR30_GNU_VTENTRY relocs. 4029 4030Thu Jan 28 11:08:16 1999 Catherine Moore <clm@cygnus.com> 4031 4032 * elflink.h (elf_link_output_sym): Zero syms which are 4033 part of sections which have been excluded. 4034 4035Wed Jan 27 13:35:35 1999 Stan Cox <scox@cygnus.com> 4036 4037 * coff-arm.c (_bfd_coff_arm_set_private_flags): Changed F_PIC 4038 to F_PIC_INT. 4039 * coffcode.h (coff_set_arch_mach_hook): Removed F_ARM_2a and 4040 F_ARM_3M labels. Changed F_PIC to F_PIC_INT. 4041 40421999-01-27 Nick Clifton <nickc@cygnus.com> 4043 4044 * elf32-fr30.c (fr30_elf_howto_table): Fix name of R_FR30_48 4045 relocation. 4046 (fr30_final_link_relocate): Use computed value as result of 4047 relocation. 4048 40491999-01-26 Frank Ch. Eigler <fche@cygnus.com> 4050 4051 * binary.c (binary_set_section_contents): Emit warning for 4052 huge file offsets due to widely-dispersed section LMAs. 4053 4054Mon Jan 18 03:35:35 1999 Ian Lance Taylor <ian@cygnus.com> 4055 4056 * elf.c (assign_file_positions_for_segments): If not D_PAGED, 4057 align first section to largest section alignment, not first 4058 section alignment. 4059 40601999-01-04 Jason Molenda (jsm@bugshack.cygnus.com) 4061 4062 * configure.in: Require autoconf 2.12.1 or higher. 4063 4064Tue Dec 22 15:21:41 1998 Catherine Moore <clm@cygnus.com> 4065 4066 * archures.c (bfd_mach_i386_i386_intel_syntax): Define. 4067 * bfd-in2.h: Likewise. 4068 * cpu-i386.c (bfd_i386_arch_intel_syntax): New. 4069 40701998-12-16 Gavin Romig-Koch <gavin@cygnus.com> 4071 4072 * archures.c,bfd-in2.h (bfd_mach_mips4111): New. 4073 * cpu-mips.c: Add support for and independent 4111. 4074 * elf32-mips.c (elf_mips_mach): E_MIPS_MACH_4111 -> bfd_mach_mips4111. 4075 (_bfd_mips_elf_final_write_processing): 4076 bfd_mach_mips4111 -> E_MIPS_ARCH_3 | E_MIPS_MACH_4111. 4077 40781998-12-15 Gavin Romig-Koch <gavin@cygnus.com> 4079 4080 * elf32-mips.c (elf_mips_abi_name): New. 4081 (_bfd_mips_elf_merge_private_bfd_data): Compare EF_MIPS_ABI flags. 4082 40831998-12-12 Gavin Romig-Koch <gavin@cygnus.com> 4084 4085 * elf32-mips.c (_bfd_mips_elf_final_write_processing): 4086 Handle bfd_mach_mips4300. 4087 40881998-12-11 Ulrich Drepper <drepper@cygnus.com> 4089 4090 * elf32-i386.c: Remove leaked development code from patch 4091 1998-12-10 by Richard Henderson. 4092 40931998-12-10 Richard Henderson <rth@cygnus.com> 4094 4095 * elf32-i386.c (elf_i386_relocate_section): Don't fail relocations 4096 in debug sections for symbol defined externally. 4097 4098Thu Dec 10 10:58:38 1998 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> 4099 4100 * targets.c (bfd_target_vector): Remove duplicate entry for 4101 tekhex_vec. 4102 41031998-12-09 Nick Clifton <nickc@cygnus.com> 4104 4105 * elf32-fr30.c (fr30_elf_howto_table): Set src_mask fields to 0 4106 since we are using RELAs. 4107 4108Tue Dec 8 22:15:48 1998 Ian Lance Taylor <ian@cygnus.com> 4109 4110 SCO Open Server Release 5 core file support, from Jouke Numan 4111 <jnuman@hiscom.nl>: 4112 * sco5-core.c: New file. 4113 * configure.in (i[3456]86-*-sco3.2v5*): Use sco5-core.lo. 4114 (sco5-core.lo): Define SCO5_CORE in COREFLAG. 4115 * Makefile.am: Rebuild dependencies. 4116 (OPTIONAL_BACKENDS): Add sco5-core.lo. 4117 (OPTIONAL_BACKENDS_CFILES): Add sco5-core.c. 4118 * bfd.c (struct _bfd): Add sco5_core_data field to tdata. 4119 * targets.c (sco5_core_vec): Add to target list if SCO5_CORE. 4120 * bfd-in2.h, configure, Makefile.in: Rebuild. 4121 4122Tue Dec 8 19:38:42 1998 Mark Klein <mklein@dis.com> 4123 4124 * config.bfd (hppa*-*-mpeix*): New target. 4125 * configure.in: Add AC_HEADER_DIRENT. 4126 (hppa*-*-mpeix*): New target. 4127 * configure.host (hppa*-*-mpeix*): New host. 4128 * hpux-core.c: Check HOST_HPPAMPEIX. Use HAVE_DIRENT_H and 4129 friends rather than just including <sys/dir.h>. 4130 * som.h (struct som_symbol): Add hppa_priv_level and apto 4131 tc_data. Change all users. 4132 (struct somdata): Add comp_unit field. 4133 (obj_som_compilation_unit): Define. 4134 (bfd_som_attach_compilation_unix): Declare. 4135 * som.c: Check HOST_HPPAMPEIX. 4136 (struct som_misc_symbol_info): Add new field priv_level. 4137 (som_object_setup): Add current_offset parameter. Change all 4138 callers. 4139 (setup_sections): Likewise. 4140 (som_object_p): For EXECLIBMAGIC, read the lst header. 4141 (som_write_symbol_strings): Add compilation_unit parameter. 4142 Change all callers. 4143 (som_finish_writing): Write out compilation_unit. 4144 (som_bfd_derive_misc_symbol_info): Set priv_level. 4145 (som_build_and_write_symbol_table): Set xleast field to 3. 4146 (som_slurp_symbol_table): Set symbol priv_level. 4147 (bfd_som_attach_compilation_unit): New function. 4148 (som_bfd_ar_write_symbol_stuff): Set xleast field to 3. Set 4149 priv_level into symbol_value. 4150 * configure, config.in: Rebuild. 4151 4152Tue Dec 8 16:21:35 1998 Ian Lance Taylor <ian@cygnus.com> 4153 4154 * hpux-core.c (hpux_core_core_file_p): Change call to nonexistent 4155 warning function to call _bfd_error_handler instead. 4156 4157 * libbfd.c (COERCE32): Cast through unsigned long and long to 4158 avoid bug in old version of gcc. 4159 4160 * elf64-alpha.c (elf64_alpha_additional_program_headers): Remove. 4161 (elf_backend_additional_program_headers): Don't define. 4162 41631998-12-08 Nick Clifton <nickc@cygnus.com> 4164 4165 * elf32-fr30.c (fr30_final_link_relocate): Fix PC relative 4166 relocations to include offset of 2 included in the insns, and the 4167 offset of the relocs within the section. 4168 4169Wed Dec 2 15:03:59 1998 David Taylor <taylor@texas.cygnus.com> 4170 4171 The following changes were made by David Taylor 4172 <taylor@texas.cygnus.com>, Edith Epstein 4173 <eepstein@sophia.cygnus.com>, Jim Blandy 4174 <jimb@zwingli.cygnus.com>, and Elena Zannoni 4175 <ezannoni@kwikemart.cygnus.com> as part of the project to merge in 4176 changes originally made by HP; HP did not create ChangeLog 4177 entries. 4178 4179 * aclocal.m4, configure, Makefile.in: Rebuilt using latest 4180 automake macro library. 4181 4182 * hpux-core.c (hpux_core_core_file_p): this function now 4183 understands HPUX 10.30 thread info. Yes, the thread stacks can be 4184 found in the corefile! Also, in hpux_core_core_file_p, if we 4185 encounter a section with an unknown type, don't punt. Instead, 4186 just skip it. Also, count the number of sections of known type 4187 that we encounter. If we encounter at least one good one, then 4188 we'll declare that the file is a core file. If we encounter any 4189 unknown ones but some known ones, then we'll issue a warning (but 4190 still declare it to be a core file). Also, correctly decide when a 4191 file is not a core. 4192 (PROC_INFO_HAS_THREAD_ID): define if CORE_ANON_SHMEM defined. 4193 (CORE_ANON_SHMEM): define if not defined. 4194 (hpux_core_struct): add members lwpid and user_tid. 4195 (core_kernel_thread_id, core_user_thread_id): new macros. 4196 (make_bfd_asection): use bfd_alloc to allocate room for a copy of 4197 the name before storing it in the bfd. 4198 (hpux_core_core_file_p): handle threads. 4199 4200 * libhppa.h (GET_FIELD): protect against redefinition. 4201 (HPPA_WIDE): define. 4202 (GET_FIELD): define. 4203 (GET_BIT): define. 4204 (MASK): define. 4205 (CATENATE): define. 4206 (ELEVEN): define. 4207 (sign_extend): redefine. 4208 (assemble_6): define. 4209 (assemble_12): rewrite. 4210 (assemble_16): define. 4211 (assemble_16a): define. 4212 (assemble_17): rewrite. 4213 (assemble_22): define. 4214 42151998-12-07 Nick Clifton <nickc@cygnus.com> 4216 4217 * elf32-fr30.c (fr30_final_link_relocate): Using signed 4218 relocations for signed values. 4219 4220Sun Dec 6 16:30:33 1998 Ian Lance Taylor <ian@cygnus.com> 4221 4222 * mipsbsd.c (MY(set_arch_mach)): Make static. 4223 * aoutx.h (NAME(aout,machine_type)): For bfd_arch_mips, use 4224 bfd_mach_mips* macros rather than simple numbers. 4225 4226 COFF weak symbol support, based on patches from Mark Elbrecht 4227 <snowball3@usa.net>: 4228 * coffcode.h (coff_slurp_symbol_table): Handle C_WEAKEXT. 4229 * coffgen.c (coff_renumber_symbols): Handle weak symbols. 4230 (coff_write_alien_symbol): Likewise. 4231 * cofflink.c (coff_link_check_ar_symbols): Likewise. 4232 (coff_link_add_symbols): Likewise. 4233 (_bfd_coff_link_input_bfd): Likewise. 4234 (_bfd_coff_write_global_sym): Likewise. 4235 4236 * elf.c (copy_private_bfd_data): Always initialize the 4237 includes_phdrs field. 4238 4239 * elflink.h (elf_fix_symbol_flags): Check for case where a non-ELF 4240 file defines a symbol first mentioned in an ELF file. 4241 4242 * bfd-in.h: Always define BFD_HOST_64_BIT and BFD_HOST_U_64_BIT if 4243 possible, rather than only if BFD64. 4244 * elflink.h (compute_bucket_count): Just check BFD_HOST_U_64_BIT, 4245 not __GNUC__. 4246 * bfd-in2.h: Rebuild. 4247 4248 * srec.c (srec_set_section_contents): Correct test to avoid 4249 switching to 4 byte addresses after seeing a second section which 4250 requires 3 byte addresses. From Joel Schantz 4251 <joel.schantz@argosys.boeing.com>. 4252 4253 * config.bfd (m68*-*-gnu*): New target. From Aymeric Vincent 4254 <aymeric.vincent@emi.u-bordeaux.fr>. 4255 42561998-12-04 Jim Blandy <jimb@zwingli.cygnus.com> 4257 4258 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Fix logic to 4259 decide whether the output file is -mrelocatable-lib, 4260 -mrelocatable, or neither. (gdb.base/nodebug.exp) 4261 42621998-12-03 Nick Clifton <nickc@cygnus.com> 4263 4264 * elf32-fr30.c: Add support for R_FR30_48 reloc. 4265 * reloc.c: Add BFD_RELOC_FR30_48 relocation. 4266 * bfd-in2.h: Regenerate. 4267 * libbfd.h: Regenerate 4268 4269Wed Dec 2 00:58:37 1998 Ian Lance Taylor <ian@cygnus.com> 4270 4271 * elflink.h (elf_adjust_dynamic_symbol): Warn on an attempt to 4272 link against a dynamic symbol with no type or size. 4273 42741998-12-01 Ulrich Drepper <drepper@cygnus.com> 4275 4276 * elf32-i386.c (i386_check_relocs) [R_386_32]: Don't emit 4277 relocation for section which does not get loaded. 4278 (elf_i386_relocate_section) [R_386_32]: Likewise. 4279 4280Tue Dec 1 11:33:33 1998 Jim Wilson <wilson@cygnus.com> 4281 4282 * coff-h8300.c (h8300_bfd_link_add_symbols): Make reloc_size, 4283 reloc_count and i long instead of unsigned long. Handle error 4284 return from bfd_canonicalize_reloc. 4285 42861998-12-01 Nick Clifton <nickc@cygnus.com> 4287 4288 * elf32-v850.c (v850_elf_relocate_section): Detect the absence of 4289 a hash table. 4290 4291Mon Nov 30 15:28:09 1998 J"orn Rennecke <amylaar@cygnus.co.uk> 4292 4293 * elf32-sh.c (elf/sh.h): Include. 4294 sh_reloc_type: Delete. Changed all references to elf_sh_reloc_type. 4295 (sh_elf_howto_tab): Add HOWTO for R_SH_SWITCH8. 4296 (sh_reloc_map): Map BFD_RELOC_8_PCREL to R_SH_SWITCH8. 4297 (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8. 4298 * Makefile.in: Add dependency of elf32-sh.lo on $(INCDIR)/elf/sh.h. 4299 4300Fri Nov 27 17:51:38 1998 Geoff Keating <geoffk@ozemail.com.au> 4301 4302 * elflink.h (compute_bucket_count): Don't allow minsize==0, it 4303 causes division by zero later on. 4304 4305Thu Nov 26 11:19:35 1998 Dave Brolley <brolley@cygnus.com> 4306 4307 * elf32-fr30.c (fr30_elf_pc9_reloc,fr30_elf_pc12_reloc): Not 4308 needed. 4309 43101998-11-25 DJ Delorie <dj@cygnus.com> 4311 4312 * coff-i386.c (i3coff_object_p): Remove hack. Use new emulation 4313 hook now. 4314 4315Tue Nov 24 10:25:27 1998 Nick Clifton <nickc@cygnus.com> 4316 4317 * elf32-fr30.c (fr30_elf_relocate_section): Call 4318 fr30_final_link_relocate. 4319 (fr30_final_link_relocate): New function: Handle I20 and I32 4320 relocs. 4321 (fr30_elf_i32_reloc): New function: Handle I32 relocs. 4322 (fr30_elf_pc9_reloc): New function: Handle 9_PCREL relocs. 4323 (fr30_elf_pc12_reloc): New function: Handle 12_PCREL relocs. 4324 4325 * elf32-v850.c (v850_elf_relocate_section): Reset hi16s reloc 4326 chain to empty. 4327 4328 The following changes are based on a patch submitted by Gianluca 4329 Moro <glctr@abc.it>: 4330 4331 (v850_elf_perform_relocation): Only update a hi16s reloc if it has 4332 not already been updated. 4333 (find_remembered_hi16s_reloc): New parameter 'already_found' 4334 returns state of remembered hi16s reloc. 4335 (remember_hi16s_reloc): Set 'found' field to false. 4336 (hi16s_location): Add 'found' field. 4337 43381998-11-23 DJ Delorie <dj@cygnus.com> 4339 4340 * coff-i386.c (bfd_pe_dll_not_recognized_hack): the linker wants 4341 to see .DLL files as unrecognized. 4342 (i3coff_object_p): Sorry, had to hack it to not recognize these 4343 files (pei-i386) on request. 4344 43451998-11-23 DJ Delorie <dj@cygnus.com> 4346 4347 * opncls.c (bfd_make_readable): need more cleanup for symbols and 4348 relents. Call bfd_check_format to reinitialize. 4349 4350Fri Nov 20 14:21:36 1998 Nick Clifton <nickc@cygnus.com> 4351 4352 * elf32-fr30.c (fr30_elf_relocate_section): Remove spurious 4353 warnings. 4354 4355Thu Nov 19 14:42:15 1998 Geoffrey Noer <noer@cygnus.com> 4356 4357 * aclocal.m4: regenerate 4358 * configure: regenerate 4359 4360Tue Nov 17 20:23:35 1998 Richard Henderson <rth@cygnus.com> 4361 4362 * elf-bfd.h (struct elf_link_hash_entry): Add vtable_entries_size. 4363 * elf.c (_bfd_elf_link_hash_newfunc): Clear it. 4364 * elflink.h (elf_gc_propagate_vtable_entries_used): Copy it, and 4365 respect it as an upper bound on what memory to reference. 4366 (elf_gc_smash_unused_vtentry_relocs): Likewise. 4367 (elf_gc_record_vtentry): Handle as-yet undefined vtables. Set and 4368 update vtable_entries_size appropriately. 4369 4370Tue Nov 17 15:28:31 1998 Nick Clifton <nickc@cygnus.com> 4371 4372 * elf32-fr30.c (fr30_reloc_type_lookup): Used integers to hold 4373 reloc number. 4374 4375Mon Nov 16 22:19:21 1998 DJ Delorie <dj@cygnus.com> 4376 4377 * archive.c (bfd_ar_hdr_from_filesystem): support BFD_IN_MEMORY 4378 bfds; they have no "file" so we fake it. 4379 * bfd-in2.h: add bfd_make_writable and bfd_make_readable (regen) 4380 * libbfd.c (bfd_write): Allow writing to BFD_IN_MEMORY bfds by 4381 resizing the memory buffer. 4382 * opncls.c (bfd_make_writable): New function; lets you write a 4383 bfd_create'd bfd to an in-memory buffer. 4384 (bfd_make_readable): New function; lets you read back that buffer 4385 as if it were from bfd_openr. Used to build generated archive 4386 members (winsup's ld's dlltool) 4387 4388Mon Nov 16 19:15:19 1998 Dave Brolley <brolley@cygnus.com> 4389 4390 * po/bfd.pot: Regenerated. 4391 4392Mon Nov 16 10:57:06 1998 Nick Clifton <nickc@cygnus.com> 4393 4394 * elf32-v850.c (hi16s_location): Replaced fixed size array with 4395 linked list. 4396 4397Sun Nov 15 20:28:25 1998 Richard Henderson <rth@cygnus.com> 4398 4399 * elf64-alpha.c (elf64_alpha_relax_section): Search for the proper 4400 element of the gotentry list for local symbols too. 4401 (elf64_alpha_relocate_section): Unify local and global handling. 4402 Assert that gotent->use_count > 0. 4403 4404Sat Nov 14 15:16:01 1998 Ian Lance Taylor <ian@cygnus.com> 4405 4406 * configure.in (vms_alpha_vec): Rename from evax_alpha_vec, and 4407 update for file name changes of July 2, 1998. 4408 (vms_vax_vec): New. 4409 * configure: Rebuild. 4410 4411Thu Nov 12 19:19:54 1998 Dave Brolley <brolley@cygnus.com> 4412 4413 * po/bfd.pot: Regenerated. 4414 4415Tue Nov 10 16:17:06 1998 Geoffrey Noer <noer@cygnus.com> 4416 4417 * acinclude.m4, config.bfd: detect cygwin* instead of cygwin32*. 4418 * aclocal.m4, configure: regenerate 4419 4420Tue Nov 10 15:13:59 1998 Nick Clifton <nickc@cygnus.com> 4421 4422 * elf.c (prep_headers): Add support for bfd_arch_fr30. 4423 4424Tue Nov 10 13:37:36 1998 Felix Lee <flee@cygnus.com> 4425 4426 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE, 4427 BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): didn't define macro when value 4428 was cached. 4429 * aclocal.m4, configure: regenerated. 4430 4431Tue Nov 10 14:31:01 1998 Catherine Moore <clm@cygnus.com> 4432 4433 * elf32-d10v.c (reloc_type): Add R_D10V_GNU_VTINHERIT and 4434 R_D10V_GNU_VTENTRY relocs. 4435 (elf_d10v_howto_table): Likewise. 4436 (d10v_reloc_map d10v_reloc_map): Likewise. 4437 (elf32_d10v_gc_mark_hook): New. 4438 (elf32_d10v_gc_sweep_hook): New. 4439 (elf32_d10v_check_relocs): New. 4440 (elf32_d10v_relocate_section): New. 4441 (elf_backend_relocate_section): Define. 4442 (elf_backend_can_gc_sections): Define. 4443 4444Sat Nov 7 18:07:51 1998 Peter Schauer <peter.schauer@regent.e-technik.tu-muenchen.de> 4445 4446 * Makefile.am (BFD32_BACKENDS): Move vms files here... 4447 (BFD64_BACKENDS): ...from here. 4448 (BFD32_BACKENDS_CFILES): Move vms files here... 4449 (BFD64_BACKENDS_CFILES): ...from here. 4450 * Makefile.in: Rebuild. 4451 4452Wed Nov 4 15:58:48 1998 Nick Clifton <nickc@cygnus.com> 4453 4454 * Makefile.am: Add FR30 target. 4455 * Makefile.in: Add FR30 target. 4456 * archures.c: Add support for FR30. 4457 * config.bfd: Add support for FR30. 4458 * configure.in: Add support for FR30. 4459 * reloc.c: Add support for FR30 relocations. 4460 * targets.c: Add support for FR30 relocations. 4461 * bfd-in2.h: Regenerate. 4462 * configure: Regenerate. 4463 * libbfd.h: Regenerate. 4464 * cpu-fr30.c: New file. 4465 * elf32-fr30.c: New file. 4466 4467Mon Nov 2 14:59:33 1998 Geoffrey Noer <noer@cygnus.com> 4468 4469 * configure.in: detect cygwin* instead of cygwin32* 4470 * configure: regenerate 4471 4472Sun Nov 1 19:32:28 1998 Jeffrey A Law (law@cygnus.com) 4473 4474 * elf-m10300.c (mn10300_elf_relax_section): Do not use alloca, 4475 use bfd_malloc and free instead and check return value from bfd_malloc. 4476 4477Sun Nov 1 16:20:35 1998 Ian Lance Taylor <ian@cygnus.com> 4478 4479 * libbfd-in.h (_bfd_dwarf1_find_nearest_line): Declare. 4480 * libbfd.h: Rebuild. 4481 4482 * elf32-mips.c (mips_elf_dynsym_sec_names): Comment out. 4483 (SIZEOF_MIPS_DYNSYM_SECNAMES): Likewise. 4484 (MIPS_TEXT_DYNSYM_SECN): Likewise. 4485 (_bfd_mips_elf_fake_sections): Don't set sh_info field of a .hash 4486 section. 4487 (struct mips_elf_link_hash_table): Remove dynsym_sec_strindex 4488 field. 4489 (mips_elf_link_hash_table_create): Don't initialize 4490 dynsym_sec_strindex. 4491 (mips_elf_gc_mark_hook): Add default case to avoid warning. 4492 (mips_elf_size_dynamic_sections): Generate a section symbol for 4493 every output section. 4494 (mips_elf_finish_dynamic_sections): Count all sections for 4495 DT_MIPS_UNREFEXTNO. 4496 (mips_elf_finish_dynamic_sections): Use dynamic symbols for all 4497 output sections. 4498 4499Sun Nov 1 12:46:53 1998 Geoff Keating <geoffk@ozemail.com.au> 4500 4501 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Allocate two slots 4502 for later PLT entries in large PLTs. 4503 (ppc_elf_finish_dynamic_symbol): Allow for the extra slots. 4504 4505Sat Oct 31 20:10:09 1998 Jeffrey A Law (law@cygnus.com) 4506 4507 * elf32-ppc.c (ppc_elf_reload_section): Fix typo. 4508 45091998-10-26 15:58 Ulrich Drepper <drepper@cygnus.com> 4510 4511 * elf-bfd.h (struct elf_link_hash_entry): Add new field elf_hash_value. 4512 * elflink.h (elf_collect_hash_codes): New function. This function is 4513 called for each exported symbol and we compute the ELF hash value for 4514 it. 4515 (compute_bucket_value): New function. It is called from 4516 size_dynamic_sections to determine the hash table size. When we are 4517 optimizing a better, but slower, algorithm is used. 4518 (size_dynamic_sections): Call compute_bucket_value. 4519 4520 * elf.c (bfd_elf_hash): Optimize the hash function a bit. 4521 4522Mon Oct 19 20:03:21 1998 Catherine Moore <clm@cygnus.com> 4523 4524 * elf32-sh.c: Add HOWTO entries for R_SH_GNU_VTINHERIT and 4525 R_SH_GNU_VTENTRY. 4526 (sh_elf_gc_mark_hook): New. 4527 (sh_elf_gc_sweep_hook): New. 4528 (sh_elf_check_relocs): New. 4529 (elf_backend_can_gc_sections): Define. 4530 4531Mon Oct 19 16:57:05 1998 Felix Lee <flee@cygnus.com> 4532 4533 * acinclude.m4: undo previous gettext change 4534 * aclocal.m4: rebuild with right version of aclocal. 4535 4536Mon Oct 19 01:47:21 1998 Felix Lee <flee@cygnus.com> 4537 4538 * acinclude.m4, aclocal.m4: move gettext-related fragments from 4539 aclocal.m4 to acinclude.m4, so they don't get lost. 4540 4541 * elfcore.h: rewrite for better corefile support. 4542 * elf.c (elfcore_*): new functions. 4543 * elf-bfd.h (elf_obj_tdata): new structure members. 4544 * acconfig.h, acinclude.m4, configure.in: add feature-tests for 4545 flavor of procfs. 4546 * aclocal.m4, config.in, configure, Makefile.in: regenerated. 4547 4548Fri Oct 16 14:07:45 1998 Catherine Moore <clm@cygnus.com> 4549 4550 * elf32-m32r.c: Add HOWTO entries for R_M32R_GNU_VTINHERIT 4551 and R_M32R_GNU_VTENTRY. 4552 (elf_backend_can_gc_sections): Define. 4553 (m32r_elf_check_relocs): New. 4554 (m32r_elf_gc_mark_hook): New. 4555 (m32r_elf_gc_sweep_hook): New. 4556 (m32r_elf_relocate_section): Handle VT relocs. 4557 4558Mon Oct 12 14:18:40 1998 Nick Clifton <nickc@cygnus.com> 4559 4560 * coff-arm.c (arm_relocate_section): Remove redundant test. 4561 4562 * bfd-in2.h (struct reloc_howto_struct): Improve comment to make 4563 cleat that the 'bitsize' field is the size of the bitfield AFTER 4564 relocation not before. 4565 4566 * elf32-m32r.c (R_M32R_18_PCREL): Fix size of bitfield. 4567 4568 * coff-mips.c (mips_relocate_hi): Cope with missing refhi or reflo 4569 relocs. 4570 4571Tue Oct 6 09:20:44 1998 Catherine Moore <clm@cygnus.com> 4572 4573 * elf32-sparc.c: Add HOWTO entries for R_SPARC_GNU_VTINHERIT and 4574 R_SPARC_GNU_VTENTRY. 4575 (elf32_sparc_check_relocs): Handle them. 4576 (elf32_sparc_reloc_type_lookup): Likewise. 4577 (elf32_sparc_relocate_section): Likewise. 4578 (elf32_sparc_gc_mark_hook): New. 4579 (elf32_sparc_gc_sweep_hook): New. 4580 4581Mon Oct 5 14:55:30 1998 Jeffrey A Law (law@cygnus.com) 4582 4583 * som.c (som_finish_writing): Perform some sanity checks when 4584 writing an executable or shared library. 4585 4586Mon Oct 5 12:02:31 1998 Gavin Romig-Koch <gavin@cygnus.com> 4587 4588 * dwarf1.c : New file. Adds _bfd_dwarf1_find_nearest_line. 4589 * configure.in (elf): Add dwarf1.lo. 4590 * elf_bfd.h (elf_ob_tdata): Add dwarf1_find_line_info. 4591 * elf.c (_bfd_elf_find_nearest_line): Add call to 4592 _bfd_dwarf1_find_nearest_line. 4593 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): 4594 Add call to _bfd_dwarf1_find_nearest_line. 4595 * configure: Rebuilt. 4596 4597Mon Oct 5 10:06:22 1998 Catherine Moore <clm@cygnus.com> 4598 4599 * elflink.h (elf_gc_sections): Do not allow garbage 4600 collection if dynamic sections have been created. 4601 4602Mon Oct 5 09:07:37 1998 Catherine Moore <clm@cygnus.com> 4603 4604 * elf32-v850.c: Add HOWTO entries for R_V850_GNU_VTINHERIT and 4605 R_V850_GNU_VTENTRY. 4606 (v850_elf_check_relocs): Handle VTINHERIT and VTENTRY relocs. 4607 (v850_elf_perform_relocation): Likewise. 4608 (v850_elf_final_link_relocate): Likewise. 4609 (v850_elf_relocate_section): Likewise. 4610 (v850_elf_gc_sweep_hook): New routine. 4611 (v850_elf_gc_mark_hook): New routine. 4612 (elf_backend_can_gc_sections): Define. 4613 4614Mon Oct 5 09:04:25 1998 Catherine Moore <clm@cygnus.com> 4615 4616 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Don't assume 4617 that dynobj exists. 4618 4619Sun Oct 4 23:29:34 1998 David Edelsohn <edelsohn@mhpcc.edu> 4620 4621 * rs6000-core.c (rs6000coff_core_file_matches_executable_p): 4622 Declare size as bfd_size_type. 4623 (rs6000coff_get_section_contents): Declare count as bfd_size_type. 4624 4625Sun Oct 4 20:38:29 1998 Jeffrey A Law (law@cygnus.com) 4626 4627 * cpu-hppa.c (bfd_hppa20_arch): Define. Link it into the bfd_hppa_arch 4628 structure. 4629 * som.c (CPU_PA_RISC2_0): Define. 4630 (_PA_RISC2_0_ID): Likewise. 4631 (som_finish_writing): Use CPU_PA_RISC2_0 for the system_id as needed. 4632 4633Sun Oct 4 21:19:09 1998 Ian Lance Taylor <ian@cygnus.com> 4634 4635 * elflink.h (elf_link_add_object_symbols): When a versioned symbol 4636 has a base which is already defined, only add the referenced 4637 symbol to the dynamic symbol table if it is defined or referenced 4638 by a regular file. 4639 4640 * elf32-i386.c (elf_i386_info_to_howto_rel): Handle vtable relocs 4641 correctly. 4642 46431998-09-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 4644 4645 * elflink.h (elf_link_add_object_symbols): Undo last change. 4646 4647Wed Sep 23 16:09:31 1998 Richard Henderson <rth@cygnus.com> 4648 4649 * elflink.h (elf_link_add_object_symbols): Don't record a dynamic 4650 symbol for the indirect alias to a versioned symbol. 4651 4652Mon Sep 21 12:15:22 1998 Catherine Moore <clm@cygnus.com> 4653 4654 * elf32-i386.c (elf32_i386_vtinherit_howto): New. 4655 (elf32_i386_vtentry_howto): New. 4656 (elf_i386_reloc_type_lookup): Return elf32_i386_vtentry_howto 4657 or elf32_i386_vtinherit_howto on lookup. 4658 4659Sun Sep 20 00:48:07 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 4660 4661 * elf32-m68k.c: Include "elf/m68k.h". Remove definition of enum 4662 reloc_type. Rename R_68K__max to R_68K_max. 4663 (howto_table): Use _bfd_elf_rel_vtable_reloc_fn for a VTENTRY 4664 reloc. 4665 4666Sun Sep 20 00:09:25 1998 Chris Torek <torek@bsdi.com> 4667 4668 * libbfd.c (bfd_getb32): Rewrite expression to get better code. 4669 (bfd_getl32, bfd_getb_signed_32, bfd_getl_signed_32): Likewise. 4670 4671 * libbfd.c (bfd_log2): Cast to bfd_vma before shifting, not 4672 after. 4673 4674Sat Sep 19 22:42:23 1998 Doug Rabson <dfr@nlsystems.com> 4675 4676 * elflink.h (elf_link_add_object_symbols): Ensure that the warning 4677 message has a null byte terminator. 4678 4679Fri Sep 18 14:35:29 1998 Nick Clifton <nickc@cygnus.com> 4680 4681 * elf32-v850.c (v850_elf_perform_relocation): Ignore contents of 4682 word subject to R_V850_32 relocation. 4683 4684Thu Sep 17 17:20:36 1998 Nick Clifton <nickc@cygnus.com> 4685 4686 * dwarf2.c: Add comment describing problem computing line numbers 4687 for undefined symbols at link time. 4688 4689Thu Sep 17 16:03:28 1998 Richard Henderson <rth@cygnus.com> 4690 4691 * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't 4692 transform a defweak into a plt entry. 4693 (elf64_alpha_calc_dynrel_sizes): Allow room for secondary 4694 plt entry references to receive a RELATIVE reloc. 4695 (elf64_alpha_finish_dynamic_symbol): Fill them in. 4696 (elf64_alpha_relocate_section): Assert we don't overrun 4697 the allocated relocation space. 4698 4699Wed Sep 16 18:03:13 1998 Nick Clifton <nickc@cygnus.com> 4700 4701 * elf.c (swap_out_syms): Always treat section symbols as 4702 special, even if they are attached to a common section. 4703 4704Wed Sep 16 10:34:13 1998 Nick Clifton <nickc@cygnus.com> 4705 4706 * elf32-v850.c (v850_elf_symbol_processing): Move symbols in 4707 sections with v850 common section attributes into named v850 4708 common sections. 4709 (v850_elf_add_symbol_hook): Move symbols in sections with v850 4710 common section attributes into named v850 common sections. 4711 4712Wed Sep 16 11:26:49 CDT 1998 Catherine Moore <clm@cygnus.com> 4713 4714 * elf32-arm.c (elf32_arm_gc_mark_hook): Remove print 4715 statement. 4716 47171998-09-15 Geoff Keating <geoffk@ozemail.com.au> 4718 4719 * elf32-ppc.c (ppc_elf_relocate_section): Reverse output_offset 4720 part of Vladimir's change of 1998-08-19. Make a R_PPC_SDAREL16 4721 reloc to the wrong section a warning, not an error. .dynsbss 4722 is not an output section, so there is no need to check for it. 4723 4724Tue Sep 15 12:40:05 1998 Catherine Moore <clm@cygnus.com> 4725 4726 * elf-bfd.h: Add argument to elf_backend_get_symbol_type. 4727 4728Tue Sep 15 08:34:40 1998 Catherine Moore <clm@cygnus.com> 4729 4730 * elf.c (swap_out_syms): Pass type to elf_backend_get_symbol_type. 4731 * elf32-arm.c: Add HOWTO entries for R_ARM_GNU_VTINHERIT and 4732 R_ARM_GNU_VTENTRY. 4733 (elf32_arm_gc_mark_hook): New. 4734 (elf32_arm_gc_sweep_hook): New. 4735 (elf32_arm_check_relocs): New. 4736 (elf32_arm_final_link_relocate): Handle VTINHERIT and VTENTRY 4737 relocations. 4738 (elf32_arm_relocate_section): Handle VTINHERIT and VTENTRY 4739 relocations. 4740 47411998-09-10 Geoff Keating <geoffk@ozemail.com.au> 4742 4743 * elf32-ppc.c (ppc_elf_relocate_section): If dynobj is NULL, 4744 assume there is no PLT or GOT. 4745 4746Wed Sep 9 14:24:12 1998 Nick Clifton <nickc@cygnus.com> 4747 4748 * elf32-arm.c (elf32_arm_find_nearest_line): New function: just 4749 like _elf_bfd_find_nearest_line() except that STT_ARM_TFUNC is 4750 also accepted as a function symbol type. 4751 4752Mon Sep 7 13:24:03 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de> 4753 4754 * rs6000-core.c (_LONG_LONG): Define for AIX 4.x only. 4755 4756Sat Sep 5 20:40:18 1998 Ian Lance Taylor <ian@cygnus.com> 4757 4758 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): Correct definition to 4759 match definition of _bfd_gc_sections field. 4760 * libbfd.h: Rebuild. 4761 4762Fri Sep 4 13:54:23 1998 David Miller <davem@dm.cobaltmicro.com> 4763 4764 * elf32-sparc.c (elf32_sparc_relocate_section): Properly adjust 4765 the addend of a dynamic relocation referencing a section. 4766 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 4767 (sparc64_elf_finish_dynamic_symbol): Fix the PLT relocation offset. 4768 4769Thu Sep 3 17:28:50 1998 Richard Henderson <rth@cygnus.com> 4770 4771 * elflink.h (bfd_elfNN_size_dynamic_sections): Verify that the 4772 bed has a size_dynamic_sections routine before trying to use it. 4773 4774Mon Aug 31 14:49:22 1998 Richard Henderson <rth@cygnus.com> 4775 4776 * elf32-mips.c (elf_mips_gnu_vtentry_howto): Use 4777 _bfd_elf_rel_vtable_reloc_fn. 4778 4779Mon Aug 31 10:23:40 1998 Catherine Moore <clm@cygnus.com> 4780 4781 * Makefile.am: Add elf32-arm.c. 4782 * Makefile.in: Rebuild. 4783 * elf-bfd.h: Add elf_backend_get_symbol_type. 4784 * elf.c (swap_out_syms): If defined, call 4785 elf_backend_get_symbol_type. 4786 * elf32-arm.c: Define elf_backend_get_symbol_type. 4787 (elf32_arm_get_symbol-type): New routine. 4788 (record_thumb_to_arm_glue): Change to use STT_ARM_TFUNC. 4789 (bfd_elf32_arm_process_before_allocation): Change to 4790 check for STT_ARM_TFUNC. 4791 (elf32_arm_final_link_relocate): Likewise. 4792 * elfxx-target.h: Add elf_backend_get_symbol_type. 4793 4794Fri Aug 28 19:44:07 1998 Richard Henderson <rth@cygnus.com> 4795 4796 * archures.c (bfd_mach_alpha_ev[456]): New. 4797 * cpu-alpha.c: Rework to match these types. 4798 * bfd-in2.h: Rebuild. 4799 4800Fri Aug 28 19:38:53 1998 Richard Henderson <rth@cygnus.com> 4801 4802 * elf-bfd.h (_bfd_elf_rel_vtable_reloc_fn): Declare. 4803 * elf.c (_bfd_elf_rel_vtable_reloc_fn): New. 4804 4805 * elf32-i386.c (elf_howto_table): Add vtable relocs. 4806 (elf_i386_reloc_type_lookup): Recognize them. 4807 (elf_i386_check_relocs): Pass them off to generic code. 4808 (elf_i386_relocate_section): Ignore them. 4809 (elf_i386_gc_mark_hook, elf_i386_gc_sweep_hook): New. 4810 (elf_backend_can_gc_sections): True. 4811 4812Thu Aug 20 15:03:45 1998 Nick Clifton <nickc@cygnus.com> 4813 4814 * elf32-arm.c (elf32_thumb_to_arm_stub): Check sym_sec is not NULL 4815 before looking at owner field. 4816 (elf32_arm_to_thumb_stub): Ditto. 4817 (elf32_arm_relocate_section): Compute name before calling 4818 elf32_arm_final_link_relocate(). 4819 4820Thu Aug 20 11:30:17 1998 Michael Snyder <msnyder@cleaver.cygnus.com> 4821 4822 * elf.c: comment and formatting cleanups. 4823 * elfcore.h: ditto. 4824 4825Wed Aug 19 15:43:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com> 4826 4827 * elfcode.h (elf_object_p): Reject files of header type ET_CORE 4828 (core files are treated differently than object files). 4829 * elf-bfd.h (_bfd_elf_write_corefile_contents, 4830 bfd_elf_mkcorefile): declare. 4831 * elfxx-target.h (_bfd_elf_write_corefile_contents, 4832 bfd_elf_mkcorefile): add to bfd_target vector. 4833 * elfcore.h (elf_core_file_p): save the program header table, 4834 and set the bfd architecture from the elf file header. 4835 * elf.c (bfd_elf_mkcorefile): new function. 4836 (_bfd_elf_write_corefile_contents): new function. 4837 (assign_file_positions_for_segments): add cases for handling 4838 PT_NOTE segments. (assign_file_positions_except_relocs): 4839 core files should be handled the same as exec files. 4840 (prep_headers): identify core files as type ET_CORE. 4841 (copy_private_bfd_data): identify the sections belonging to 4842 the PT_NOTE segment. 4843 4844 * elf32-sparc.c (elf32_sparc_final_write_processing): 4845 add break statement to default case. 4846 48471998-08-19 Vladimir N. Makarov <vmakarov@cygnus.com> 4848 4849 * elf32-ppc.c (ppc_elf_relocate_section): Check that output 4850 section (not input) will be in sections ".sbss", ".sbss2", 4851 ".sdata", and ".sdata" for R_PPC_SDAREL16, R_PPC_EMB_SDA2REL, 4852 R_PPC_EMB_SDA21, R_PPC_EMB_RELSDA. In all these cases also ignore 4853 output_offset for correct evaluation of addend. 4854 4855Tue Aug 18 11:48:12 1998 Catherine Moore <clm@cygnus.com> 4856 4857 * elf32-arm.c: Add prefix bfd_ to elf32_arm_get_bfd_for_interworking, 4858 elf32_arm_allocate_interworking_sections and 4859 elf32_arm_process_before_allocation. 4860 4861Tue Aug 18 11:46:00 1998 Nick Clifton <nickc@cygnus.com> 4862 4863 * bfd-in.h: Ammend prototype for 4864 elf32_arm_process_before_allocation to remove surplus third 4865 argument. 4866 4867 * bfd-in2.h: Regenerate. 4868 4869Sat Aug 15 20:55:08 1998 Richard Henderson <rth@cygnus.com> 4870 4871 * elf64-alpha.c (elf64_alpha_relax_section): Handle indirect symbols. 4872 4873Fri Aug 14 09:12:28 1998 Stan Cox <scox@cygnus.com> 4874 4875 * aoutx.h (aout_link_input_section_ext): Use the relocation already 4876 calculated for RELOC_SPARC_REV32 case. 4877 4878Thu Aug 13 14:02:02 1998 Catherine Moore <clm@cygnus.com> 4879 4880 * bfd-in.h: Add prototypes for elf32_arm_get_bfd_for_interworking, 4881 elf32_arm_allocate_interworking_sections and 4882 elf32_arm_process_before_allocation. 4883 * bfd-in2.h: Regenerated. 4884 * elf32-arm.c Define elf32_arm_link_hash_table. 4885 (insert_thumb_branch): New routine. 4886 (find_thumb_glue): New routine. 4887 (find_arm_glue): New routine. 4888 (record_arm_to_thumb_glue): New routine. 4889 (record_thumb_to_arm_glue): New routine. 4890 (elf32_arm_link_hash_table_create): New routine. 4891 (elf32_arm_get_bfd_for_interworking): New routine. 4892 (elf32_arm_allocate_interworking_sections) New routine. 4893 (elf32_arm_process_before_allocation) New routine. 4894 (elf32_thumb_to_arm_stub): New routine. 4895 (elf32_arm_to_thumb_stub): New routine. 4896 (elf32_print_private_bfd_data): Fix typo. 4897 (elf32_arm_final_link_relocate): Add argument sym_sec. 4898 Check for branches to thumb symbols in case R_ARM_PC24. 4899 Check for branches to arm symbols in case R_ARM_THM_PC22. 4900 (elf32_arm_relocate_section): Pass symbol section to 4901 elf32_arm_final_link_relocate. 4902 4903Wed Aug 12 19:00:39 1998 Geoff Keating <geoffk@ozemail.com.au> 4904 4905 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Generate PLT 4906 entries unless the symbol is defined in the executable; in 4907 particular, undefined weak symbols get a PLT entry. 4908 4909Wed Aug 12 14:48:33 1998 Ian Lance Taylor <ian@cygnus.com> 4910 4911 * libaout.h: Remove nested comment to avoid warning. 4912 4913Wed Aug 12 08:10:11 1998 Catherine Moore <clm@cygnus.com> 4914 4915 * elf32-arm.c (elf32_arm_final_link_relocate): Rework 4916 R_ARM_PC24 relocation. 4917 4918Tue Aug 11 14:42:26 1998 Catherine Moore <clm@cygnus.com> 4919 4920 * elf32-arm.c (elf32_arm_final_link_relocate): Remove unused 4921 argument is_local. Add argument sym_flags. Check sym_flags 4922 in R_ARM_ABS32 case. Include addend for R_ARM_THM_PC22 case. 4923 (elf32_arm_relocate_section): Don't pass local sym and pass 4924 sym_flags to elf32_arm_final_link_relocate. 4925 4926Mon Aug 10 20:38:39 1998 Richard Henderson <rth@cygnus.com> 4927 4928 * elf64-alpha.c (elf64_alpha_calc_dynrel_sizes): Correct last change 4929 to not count too few relocs for dynamicly linked executables. 4930 4931Mon Aug 10 15:35:34 1998 Richard Henderson <rth@cygnus.com> 4932 4933 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Never consider 4934 symbols without a dynamic index dynamic. Consider all weak 4935 symbols dynamic. 4936 (elf64_alpha_strip_section_from_output): Don't assume 1-1 4937 correspondance between input and output sections. 4938 4939Mon Aug 10 15:31:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 4940 4941 * elflink.h (elf_gc_common_finalize_got_offsets): For backends 4942 that use a .got.plt section start the got offset at zero. 4943 4944Mon Aug 10 17:31:21 1998 Ian Lance Taylor <ian@cygnus.com> 4945 4946 * ieee.c (ieee_write_processor): Correct the processor ID written 4947 out for bfd_arch_m68k, accommodating change of March 25. 4948 4949Sun Aug 9 20:55:44 1998 Catherine Moore <clm@cygnus.com> 4950 4951 * elf32-arm.c (elf32_arm_final_link_relocate): Rework 4952 R_ARM_THM_RPC22 relocations. 4953 4954Sat Aug 8 15:15:30 1998 Richard Henderson <rth@cygnus.com> 4955 4956 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Undef weak symbols 4957 are always dynamic. 4958 (elf64_alpha_calc_dynrel_sizes): Allow enough room for RELATIVE 4959 .got relocs in -Bsymbolic shared objects. 4960 4961Wed Aug 5 15:48:08 1998 Nick Clifton <nickc@cygnus.com> 4962 4963 * elf32-arm.c: Add private flags to ELF header. 4964 (elf32_arm_print_private_bfd_data): New Function. 4965 (elf32_arm_set_private_flags): New Function. 4966 (elf32_arm_copy_private_flags): New Function. 4967 (elf32_arm_merge_private_bfd_data): New Function. 4968 4969Mon Aug 3 17:10:15 1998 Ian Lance Taylor <ian@cygnus.com> 4970 4971 * elf32-sparc.c (elf32_sparc_check_relocs): Permit WPLT30 against 4972 a local symbol. 4973 (elf32_sparc_relocate_section): Likewise. 4974 4975Sun Aug 2 03:19:23 1998 Richard Henderson <rth@cygnus.com> 4976 4977 * elf32-ppc.c (ppc_elf_check_relocs): Init sgot to NULL. Create the 4978 .got if any relocation referrs to _GLOBAL_OFFSET_TABLE_. 4979 (ppc_elf_relocate_section): Pull sgot and splt search to the start 4980 of the function. Recognize no .plt as static linking. 4981 49821998-08-01 Ulrich Drepper <drepper@cygnus.com> 4983 4984 * elf32-mips.c (_bfd_mips_elf_section_from_shdr): Don't pass 4985 ".liblist" string through gettext. 4986 4987Fri Jul 31 16:38:14 1998 Catherine Moore <clm@cygnus.com> 4988 4989 * Makefile.am: Add support for elf32-arm.lo. 4990 * Makefile.in: Rebuild. 4991 * config.bfd (arm-*-elf): Define targ_defvec and targ_selvecs. 4992 (thumb-*-elf): Define targ_defvec and targ_selvecs. 4993 * configure.in: Handle bfd_elf32_littlearm_vec and bfd_elf32_bigarm_vec. 4994 * configure: Regenerate. 4995 * elf.c: (prep_headers): Support arch_type of EM_ARM. 4996 * targets.c: Support new targets bfd_elf32_bigarm_vec and 4997 bfd_target bfd_elf32_littlearm_vec. 4998 * elf32-arm.c: New file. 4999 5000Tue Jun 28 19:05:28 1998 Stan Cox <scox@cygnus.com> 5001 5002 * libaout.h (M_SPARCLITE_LE): New machine. 5003 * sunos.c (MACHTYPE_OK): Add machine M_SPARCLITE_LE. 5004 * aoutf1.h (sunos_set_arch_mach): Add machine M_SPARCLITE_LE. 5005 (sunos_write_object_contents): Add machine bfd_mach_sparc_sparclite_le 5006 * aoutx.h (howto_table_ext): Add relocation R_SPARC_REV32. 5007 (NAME(aout,machine_type)) Add machine bfd_mach_sparc_sparclite_le 5008 (aout_link_input_section_ext): Add RELOC_SPARC_REV32 support. 5009 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map, 5010 elf32_sparc_relocate_section): Rename R_SPARC_32LE to be R_SPARC_REV32 5011 * libbfd.h (bfd_reloc_code_real_names): Rename BFD_RELOC_SPARC_32LE to 5012 be BFD_RELOC_SPARC_REV32. 5013 * reloc.c: Ditto. 5014 * config.bfd (sparc86x-*-aout): New 5015 5016Fri Jul 24 13:54:19 1998 Nick Clifton <nickc@cygnus.com> 5017 5018 * linker.c (_bfd_generic_final_link): Allocate NULL symbol before 5019 actually mapping the output sections. 5020 5021Fri Jul 24 11:24:29 1998 Jeffrey A Law (law@cygnus.com) 5022 5023 5024 * elf-m10300.c (mn10300_elf_howto): Add R_MN10300_24 entry. 5025 (mn10300_elf_reloc_map): Similarly. 5026 (mn10300_elf_final_link_relocate): Handle R_MN10300_24. 5027 5028Fri Jul 24 12:36:04 1998 Ian Lance Taylor <ian@cygnus.com> 5029 5030 * elf32-mips.c (elf_mips_howto_table): Add reloc types used on 5031 Irix 6. 5032 (bfd_elf32_bfd_reloc_type_lookup): Add default case. 5033 * elf64-mips.c: Replace all uses of mips_elf64_reloc_type with 5034 elf_mips_reloc_type defined in elf/mips.h. 5035 50361998-07-24 Ulrich Drepper <drepper@cygnus.com> 5037 5038 * elf64-mips.c: Remove reloc_type definition completely. It's now 5039 in elf/mips.h. 5040 5041Thu Jul 23 13:33:19 1998 Doug Evans <devans@canuck.cygnus.com> 5042 5043 * elf64-mips.c (mips_elf64_reloc_type): #if 0 out more relocations 5044 as they are defined in elf/mips.h now. 5045 5046Thu Jul 23 11:29:43 1998 Jeffrey A Law (law@cygnus.com) 5047 5048 5049 * Re-add lost change: 5050 * elf-m10300.c (elf32_mn10300_link_hash_entry): Add new field 5051 "movm_stack_size". 5052 (mn10300_elf_relax_section): Include stack space for register saves 5053 in the imm8 field of a "call" instruction. 5054 (compute_function_info): Determine how much stack is allocated by 5055 the movm instruction. Fix typo. 5056 (elf32_mn10300_link_hash_newfunc): Initialize movm_stack_size. 5057 5058Thu Jul 23 11:38:05 1998 Ian Lance Taylor <ian@cygnus.com> 5059 5060 * elf32-sparc.c (elf_backend_got_header_size): Define as 4. 5061 * elf64-sparc.c (elf_backend_got_header_size): Define as 8. 5062 50631998-07-22 Ulrich Drepper <drepper@cygnus.com> 5064 5065 * elf32-ppc.c: Change use of pp_reloc_type to elf_ppc_reloc_type. 5066 5067Wed Jul 22 16:27:18 1998 Nick Clifton <nickc@cygnus.com> 5068 5069 * elf32-hppa.h: Let ELF header define the enum containing the 5070 external reloc numbers. 5071 * elf32-i386.h: Likewise. 5072 50731998-07-22 14:57 Ulrich Drepper <drepper@cygnus.com> 5074 5075 * elf-m10300.c: Let ELF header now define the macros to get the enum. 5076 * elf32-mips.c: Likewise. 5077 * elf32-ppc.c: Likewise. 5078 5079Wed Jul 22 13:53:52 1998 Nick Clifton <nickc@cygnus.com> 5080 5081 * bfd-in2.h: Change type of 'class' parameter to 'unsigned int' in 5082 bfd_coff_set_symbol_class(), in order to avoid K&R compatability 5083 prblems. 5084 * bfd-in.h: Regenerate. 5085 * coffgen.c (bfd_coff_set_symbol_class): Change type of 'class' 5086 parameter to 'unsigned int' to avoid K&R compatability problems. 5087 5088Wed Jul 22 16:43:24 1998 Ian Lance Taylor <ian@cygnus.com> 5089 5090 * ieee.c (ieee_find_nearest_line): Change filename_ptr and 5091 functionname_ptr to be const. Change line_ptr to be unsigned. 5092 5093 * coffcode.h (coff_link_output_has_begun): Simplify handling when 5094 macro is not defined. Change second parameter from bfd_link_info 5095 to coff_final_link_info. Add prototype. 5096 (coff_final_link_postscript): Simplify handling when macro is not 5097 defined. Add prototype. 5098 50991998-07-22 13:08 Ulrich Drepper <drepper@cygnus.com> 5100 5101 * elf-mn10300.c: Before include system specific ELF header define 5102 START_RELOC_NUMBERS, RELOC_NUMBER, and END_RELOC_NUMBERS. 5103 * elf32-mips.c: Likewise. 5104 * elf32-ppc.c: Likewise. 5105 5106Wed Jul 22 13:46:51 1998 Ian Lance Taylor <ian@cygnus.com> 5107 5108 * elf64-mips.c (mips_elf64_reloc_type): Copy Ulrich's elf32-mips.c 5109 temporary patch over to elf64-mips.c as well. 5110 51111998-07-21 Ulrich Drepper <drepper@cygnus.com> 5112 5113 * elf32-mips.c (reloc_type): Temporarily disable definition of 5114 standard relocation since they are now defined in elf/mips.h. 5115 5116Tue Jul 21 09:47:00 1998 Catherine Moore <clm@cygnus.com> 5117 5118 * elf-m10200.c (mn10200_elf_final_link_relocate): 5119 Modify range test for case R_MN10200_8. 5120 5121 * elf-m10300.c (mn10300_elf_final_link_relocate): 5122 Modify range test for case R_MN10300_8. 5123 5124Mon Jul 20 18:50:54 1998 Richard Henderson <rth@cygnus.com> 5125 5126 * elf-bfd.h (struct elf_backend_data): Add got_ & plt_header_size. 5127 * elf32-i386.c (elf_backend_got_header_size): Define. 5128 (elf_backend_plt_header_size): Define. 5129 * elf32-m68k.c, elf32-mips.c, elf32-ppc.c: Likewise. 5130 * elf32-sparc.c, elf64-alpha.c, elf64-sparc.c: Likewise. 5131 * elfxx-target.h: Provide a default of zero. 5132 * elflink.c (_bfd_elf_create_got_section): Use got_header_size. 5133 * elflink.h (elf_gc_common_finalize_got_offsets): Likewise. 5134 5135 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't remove a PLT 5136 entry from an executable, even if the plt refcount goes to 0. 5137 5138Mon Jul 20 12:47:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 5139 5140 * aoutx.h (NAME(aout,find_nearest_line)): Also remember the 5141 directory name at the line number. 5142 5143 * elf.c (_bfd_elf_find_nearest_line): Also consider symbols 5144 with an unspecified type. 5145 5146Wed Jul 15 11:20:01 1998 Ian Lance Taylor <ian@cygnus.com> 5147 5148 * sunos.c: Add undef of valid to avoid problem on SunOS. 5149 5150Tue Jul 14 15:30:59 1998 Richard Henderson <rth@cygnus.com> 5151 5152 * config.bfd (i?86-pc-beos{pe,elf,}*): Recognize. 5153 5154Tue Jul 14 11:22:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 5155 5156 * elf32-m68k.c (elf_m68k_check_relocs): Also reference count 5157 R_68K_PCxx and R_68K_xx relocations. Make sure that 5158 ELF_LINK_HASH_NEEDS_PLT is always set for a PLT reloc reference. 5159 (elf_m68k_gc_sweep_hook): Also reference count R_68K_PCxx and 5160 R_68K_xx relocations. 5161 (elf_m68k_adjust_dynamic_symbol): Reset the plt offset of a symbol 5162 that has no plt entry. 5163 (elf_m68k_relocate_section): Ignore the plt offset in a static 5164 link. 5165 * elflink.h (elf_adjust_dynamic_symbol): Reset the plt offset for 5166 an ignored symbol. 5167 (elf_gc_common_finalize_got_offsets): Set the got offsets also in 5168 a static link. 5169 5170 * elf32-m68k.c (R_68K_GNU_VTINHERIT, R_68K_GNU_VTENTRY): New reloc 5171 types. 5172 (howto_table, reloc_map): Add entries for them. 5173 (elf_m68k_check_relocs): Handle them. Implement reference 5174 counting for got and plt entries. 5175 (elf_m68k_gc_mark_hook, elf_m68k_gc_sweep_hook): New functions. 5176 (elf_m68k_adjust_dynamic_symbol): Handle unreferenced plt 5177 symbols. 5178 (rtype_to_howto_rel, elf_info_to_howto_rel): Delete. 5179 (elf_m68k_relocate_section): Handle the new reloc types. 5180 (bfd_elf32_bfd_final_link, elf_backend_gc_mark_hook, 5181 elf_backend_gc_sweep_hook, elf_backend_can_gc_sections): Define. 5182 * elflink.h (elf_link_add_object_symbols): When creating an 5183 indirect reference for symbol versioning also copy the plt 5184 offset. 5185 (elf_fix_symbol_flags): When clearing the ELF_LINK_HASH_NEEDS_PLT 5186 flag also reset the plt offset. 5187 (elf_link_assign_sym_version): Likewise. 5188 (elf_gc_common_finalize_got_offsets): Increment the got offset by 5189 the size of the entry in bytes. 5190 (elf_gc_allocate_got_offsets): Likewise. 5191 5192Tue Jul 14 11:18:14 1998 Ian Lance Taylor <ian@cygnus.com> 5193 5194 * elflink.h (elf_gc_sections): Return true rather than falling off 5195 the bottom. 5196 5197 * coffgen.c (bfd_coff_set_symbol_class): Call bfd_alloc, not 5198 xmalloc. 5199 5200Mon Jul 13 11:06:31 1998 Nick Clifton <nickc@cygnus.com> 5201 5202 * coff-arm.c: Supress definition of TARGET_UNDERSCORE and add a 5203 comment describing when it should be enabled. 5204 Changed definition of USER_LABEL_PREFIX to "", to fall into line 5205 with GCC sources. 5206 5207Mon Jul 13 13:06:54 1998 Ian Lance Taylor <ian@cygnus.com> 5208 5209 * ieee.c (ieee_slurp_external_symbols): Handle call optimization 5210 information ATN records. 5211 5212Fri Jul 10 16:31:06 1998 Ian Lance Taylor <ian@cygnus.com> 5213 5214 * ieee.c (ieee_slurp_external_symbols): Select an appropriate 5215 section for an absolute symbol in a fully linked file. Based on 5216 patch from Christian Holland <CHolland@de.lucent.com>. 5217 5218Wed Jul 8 11:29:56 1998 Manfred Hollstein <manfred@s-direktnet.de> 5219 5220 * coff-m88k.c (m88k_special_reloc): Don't lose the information 5221 that a symbol is undefined. 5222 5223Tue Jul 7 21:47:02 1998 Jeffrey A Law (law@cygnus.com) 5224 5225 * som.c (som_bfd_gc_sections): Define. 5226 5227Mon Jul 6 11:35:50 1998 Nick Clifton <nickc@cygnus.com> 5228 5229 * coff-arm.c (aoutarm_std_reloc_howto): Do not complain about 5230 overflows in ARM_26D patches, since they have already been 5231 implmented. Patch submitted by Dr. R.J. Black <rjb@dcs.gla.ac.uk> 5232 5233Sat Jul 4 12:25:36 1998 Ian Lance Taylor <ian@cygnus.com> 5234 5235 * coffcode.h (coff_write_object_contents): If we have any long 5236 section names, call coff_write_symbols even if there are no 5237 symbols. 5238 5239Fri Jul 3 13:11:35 1998 Ian Lance Taylor <ian@cygnus.com> 5240 5241 * elf.c (copy_private_bfd_data): Only set phdr_included once for a 5242 PT_LOAD segment, rather than only setting it once for the entire 5243 file. 5244 5245 * elf.c (_bfd_elf_make_section_from_shdr): When setting the LMA, 5246 rather than ignoring every phdr with a p_paddr of 0, ignore all 5247 the phdrs if they all have a p_paddr of 0. 5248 5249 * stabs.c (_bfd_write_stab_strings): Check whether the .stabstr 5250 section was discarded from the link. 5251 5252Fri Jul 3 14:39:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk> 5253 5254 * coff-sh.c (sh_insn_uses_freg): Ignore lowest bit of register number. 5255 5256Fri Jul 3 14:35:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk> 5257 5258 * coff-sh.c (sh_insns_conflict): Load of fpscr conflicts with 5259 floating point operations. 5260 5261Thu Jul 2 18:37:25 1998 Ian Lance Taylor <ian@cygnus.com> 5262 5263 * cofflink.c (_bfd_coff_link_input_bfd): Skip undefined global 5264 function symbols. 5265 5266Thu Jul 2 14:59:42 1998 Klaus Kaempf <kkaempf@rmi.de> 5267 5268 Merge of vax/vms (read-only) support 5269 * configure.com: Support Vax target. 5270 * makefile.vms: Support Vax target. 5271 * vms.h: Renamed from evax.h, merged vax/vms (read-only) support. 5272 * vms.c: Renamed from evax-alpha.c, merged vax/vms (read-only) 5273 support. 5274 * vms-hdr.c: Renamed from evax-emh.c, merged vax/vms (read-only) 5275 support. 5276 * vms-gsd.c: Renamed from evax-egsd.c, merged vax/vms (read-only) 5277 support. 5278 * vms-tir.c: Renamed from evax-etir.c, merged vax/vms (read-only) 5279 support. 5280 * vms-misc.c: Renamed from evax-misc.c, merged vax/vms (read-only) 5281 support. 5282 * libbfd.c (real_read): Use unbuffered read on VMS/Vax. 5283 * targets.c (bfd_target_ovax_flavour): New flavour. 5284 (vms_alpha_vec): Renamed from evax_alpha_vec. 5285 (vms_vax_vec): New. 5286 (target_vector): Update accordingly. 5287 * config.bfd (alpha*-*-*vms*): Use vms_alpha_vec, not 5288 evax_alpha_vec. 5289 (vax*-*-*vms*): New target. 5290 * Makefile.am: Update for renamed files. Rebuild dependencies. 5291 * bfd-in2.h: Rebuild. 5292 * configure.in, Makefile.in, aclocal.m4: Rebuild. 5293 5294Thu Jul 2 13:31:55 1998 Ian Lance Taylor <ian@cygnus.com> 5295 5296 Based on patch from Matt Semersky <matts@scd.hp.com>: 5297 * linker.c (_bfd_generic_final_link): Force a trailing NULL 5298 pointer on abfd->outsymbols. 5299 (generic_add_output_symbol): Handle NULL sym parameter. 5300 5301Wed Jul 1 17:05:53 1998 Nick Clifton <nickc@cygnus.com> 5302 5303 * elf.c (copy_private_bfd_data): Add support for changing VMA or 5304 LMA of sections. 5305 5306Wed Jul 1 16:58:50 1998 Ian Lance Taylor <ian@cygnus.com> 5307 5308 * coff-sh.c (sh_relax_delete_bytes): Correct address comparisons 5309 when handling 32 bit immediate relocs. 5310 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise. 5311 5312Tue Jun 30 09:55:03 1998 Jeffrey A Law (law@cygnus.com) 5313 5314 * section.c (STD_SECTION): Account for recently added gc_mark 5315 field in struct asection. 5316 5317 * elf-m10300.c (bfd_mn10300_elf_merge_private_bfd_data): New function. 5318 (bfd_elf32_bfd_merge_private_bfd_data): Define. 5319 5320Thu Jun 25 18:31:41 1998 Richard Henderson <rth@cygnus.com> 5321 5322 ELF Section-level Garbage Collection: 5323 * bfd.c (bfd_gc_sections): New. 5324 * aout-adobe.c: Hook to default implementation. 5325 * aout-target.h, aout-tic30.c, binary.c, bout.c: Likewise. 5326 * coff-alpha.c, coff-mips.c, coff-rs6000.c, coffcode.h: Likewise. 5327 * evax-alpha.c, i386msdos.c, i386os9k.c, ieee.c: Likewise. 5328 * ihex.c, nlm-target.h, oasys.c, ppcboot.c, srec.c: Likewise. 5329 * tekhex.c, versados.c: Likewise. 5330 * libbfd-in.h (_bfd_nolink_bfd_gc_sections): New. 5331 * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_gc_sections. 5332 5333 * reloc.c (BFD_RELOC_VTABLE_INHERIT, BFD_RELOC_VTABLE_ENTRY): New. 5334 (bfd_generic_gc_sections): New. 5335 * section.c (SEC_KEEP): New. 5336 (asection): Add gc_mark member. 5337 5338 * elfcode.h (elf_gc*): New name remappings. 5339 * elflink.h (elf_link_input_bfd): Don't set contents on stabs 5340 sections to be excluded. 5341 (elf_gc_mark, elf_gc_sweep, elf_gc_sweep_symbol): New. 5342 (elf_gc_propogate_vtable_entries_used): New. 5343 (elf_gc_smash_unused_vtentry_relocs): New. 5344 (elf_gc_sections, elf_gc_record_vtinherit, elf_gc_record_vtentry): New. 5345 (elf_gc_common_finalize_got_offsets): New. 5346 (elf_gc_allocate_got_offsets, elf_gc_common_final_link): New. 5347 * elfxx-target.h: Add and default gc hooks. 5348 5349 * elf-bfd.h (struct elf_link_hash_entry): Swap got_offset/plt_offset 5350 for unions. 5351 (struct elf_obj_tdata): Likewise for local_got_offsets. 5352 * elf.c, elf-i386.c, elf32-m68k.c, elf32-mips.c: Update all uses. 5353 * elf32-ppc.c, elf32-sparc.c, elf64-alpha.c: Likewise. 5354 * elf64-sparc.c, elflink.h: Likewise. 5355 5356 * elf-bfd.h (struct elf_link_hash_entry): Add vtable members. 5357 (ELF_LINK_HASH_MARK): Define. 5358 (struct elf_backend_data): Add GC hooks. 5359 * elf.c (_bfd_elf_link_hash_newfunc): Zero vtable members. 5360 5361 * elf-m10300.c (mn10300_elf_check_relocs): New. 5362 (mn10300_elf_gc_mark_hook): New. 5363 (R_MN10300_GNU_VTINHERIT, R_MN10300_GNU_VTENTRY): New. 5364 (elf_mn10300_howto, mn10300_reloc_map): Handle them. 5365 (mn10300_elf_final_link_relocate): Likewise. 5366 (mn10300_elf_relocate_section): Likewise. 5367 (elf_backend_can_gc_sections): Define. 5368 * elf32-mips.c (R_MIPS_GNU_VTINHERIT, R_MIPS_GNU_VTENTRY): New. 5369 (elf_mips_gnu_vtinherit_howto, elf_mips_gnu_vtentry_howto): New. 5370 (bfd_elf32_bfd_reloc_type_lookup): Handle them. 5371 (mips_info_to_howto_rel): Likewise. 5372 (mips_elf_relocate_section): Likewise. 5373 (mips_elf_check_relocs): Likewise. 5374 (mips_elf_gc_mark_hook, mips_elf_gc_sweep_hook): New. 5375 (elf_backend_can_gc_sections): Define. 5376 * elf32-ppc.c (R_PPC_GNU_VTINHERIT, R_PPC_GNU_VTENTRY): New. 5377 (ppc_elf_howto_raw): Handle them. 5378 (ppc_elf_reloc_type_lookup): Likewise. 5379 (ppc_elf_relocate_section): Likewise. 5380 (ppc_elf_check_relocs): Reference count .got and .plt entries. 5381 Handle new vtable relocs. 5382 (ppc_elf_adjust_dynamic_symbol): Recognize unused .plt entries. 5383 (ppc_elf_gc_mark_hook, ppc_elf_gc_sweep_hook): New. 5384 (elf_backend_can_gc_sections): Define. 5385 5386Fri Jun 26 10:48:23 1998 Jeffrey A Law (law@cygnus.com) 5387 5388 * archures.c (bfd_mach_mn10300): Define. 5389 * elf-m10300.c: Include elf/mn10300.h 5390 (elf_mn10300_mach): New function. 5391 (_bfd_mn10300_elf_final_write_processing): Likewise. 5392 (_bfd_mn10300_elf_object_p): Likewise. 5393 (elf_backendfinal_write_processing): Define. 5394 (elf_backend_object_p): Likewise. 5395 5396Thu Jun 25 18:31:08 1998 Nick Clifton <nickc@cygnus.com> 5397 5398 * elf32-v850.c (v850_elf_perform_relocation): Fix HI16_S 5399 relocation. 5400 5401Wed Jun 24 17:17:57 1998 Ian Lance Taylor <ian@cygnus.com> 5402 5403 * elflink.h (elf_bfd_final_link): Loop over input_bfds using the 5404 link_next field, not the next field. 5405 5406Sun Jun 21 19:38:39 1998 Ian Lance Taylor <ian@cygnus.com> 5407 5408 * elf.c (map_sections_to_segments): Check the section address 5409 against the phdr size both with and without a modulo of 5410 maxpagesize. 5411 5412Fri Jun 19 17:08:18 1998 Ian Lance Taylor <ian@cygnus.com> 5413 5414 * elf32-mips.c (mips_elf_size_dynamic_sections): Only strip a 5415 linker created empty input section if the output section has the 5416 same name. 5417 5418 * elflink.h (elf_link_output_extsym): Print an error message if 5419 _bfd_elf_section_from_bfd_section fails. 5420 5421 * elf.c (_bfd_elf_section_from_bfd_section): Call bfd_set_error on 5422 failure. 5423 5424Tue Jun 16 11:55:55 1998 Ian Lance Taylor <ian@cygnus.com> 5425 5426 * elf.c (copy_private_bfd_data): Improve handling of Solaris 5427 native linker output. Avoid putting an empty section in more than 5428 one segment. 5429 5430Fri Jun 12 13:30:17 1998 Tom Tromey <tromey@cygnus.com> 5431 5432 * po/Make-in (all-yes): If maintainer mode, depend on .pot file. 5433 ($(PACKAGE).pot): Unconditionally depend on POTFILES. 5434 5435Fri Jun 12 13:34:02 1998 Doug Evans <devans@canuck.cygnus.com> 5436 5437 * elf.c (swap_out_syms): New arg relocatable_p. 5438 Don't add section VMA to symbols for relocatable output. 5439 (_bfd_elf_compute_section_file_positions): Update call to 5440 swap_out_syms. 5441 5442Mon Jun 8 15:20:57 1998 Nick Clifton <nickc@cygnus.com> 5443 5444 * elf32-v850.c (v850_elf_perform_relocation): Make comparisons 5445 against 'addend' be signed rather than unsigned. 5446 5447Sat Jun 6 00:31:21 1998 Nick Clifton <nickc@cygnus.com> 5448 5449 * elf32-m32r.c: Add prototyps for static functions. 5450 5451 * coff-arm.c: Add prototypes for static functions. 5452 5453Fri Jun 5 17:21:51 1998 Nick Clifton <nickc@cygnus.com> 5454 5455 * elf.c (elf_sort_sections): Sort by LMA first then VMA, since the 5456 LMA is used to order sections in a segment. 5457 5458 * elf32-v850.c: Add prototypes for static functions. 5459 Change type of addend parameter to bfd_vma in various functions. 5460 5461Fri Jun 5 18:09:58 1998 Ian Lance Taylor <ian@cygnus.com> 5462 5463 * aoutx.h (howto_table_ext): Change RELOC_BASE13 to use 5464 complain_overflow_signed instead of complain_overflow_bitfield. 5465 5466Fri Jun 5 15:11:11 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 5467 5468 * elf.c (elf_map_symbols): Don't add section VMA to symbol value 5469 when comparing against 0. 5470 5471Wed Jun 3 17:52:49 1998 Ian Lance Taylor <ian@cygnus.com> 5472 5473 * Makefile.am (config.status): New target. 5474 * Makefile.in: Rebuild. 5475 5476Wed Jun 3 12:18:24 1998 Stan Cox <scox@equinox.cygnus.com> 5477 5478 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Give an 5479 error if previous object endianness doesn't match current object. 5480 5481Tue Jun 2 17:50:59 1998 Nick Clifton <nickc@cygnus.com> 5482 5483 * elf32-v850.c (v850_elf_print_private_bfd_data): Call 5484 _bfd_elf_print_private)bfd_data (). 5485 5486Tue Jun 2 15:29:35 1998 Ian Lance Taylor <ian@cygnus.com> 5487 5488 * elflink.h (elf_merge_symbol): Don't always set type_change_ok 5489 and size_change_ok. 5490 (elf_link_add_object_symbols): Set type_change_ok and 5491 size_change_ok before calling elf_merge_symbol. 5492 5493 * elf32-mips.c (mips_elf_relocate_section): If we issue an 5494 undefined symbol error, don't also issue an overflow error. 5495 5496Tue Jun 2 13:51:00 1998 Geoff Keating <geoffk@ozemail.com.au> 5497 5498 * elf32-ppc.c (ppc_elf_relocate_section): The target of an 5499 R_PPC_LOCAL24PC relocation should be local; if not, print an error 5500 message instead of crashing. 5501 5502Mon Jun 1 18:23:12 1998 Yuli Barcohen <yuli.barcohen@telrad.co.il> 5503 5504 * archures.c (bfd_mach_cpu32): Define. 5505 (bfd_default_scan): Add case for 68060. Fix 68332 case to use 5506 bfd_mach_cpu32. 5507 * cpu-m68k.c (arch_info_struct): Add m68k:cpu32. 5508 * ieee.c: Include <ctype.h>. 5509 (ieee_object_p): Parse out process ID string to make it more 5510 likely to be acceptable for bfd_scan_arch. 5511 * bfd-in2.h: Rebuild. 5512 5513Mon Jun 1 11:12:02 1998 Nick Clifton <nickc@cygnus.com> 5514 5515 * elf32-m32r.c (m32r_elf_print_private_bfd_data): Also call 5516 _bfd_elf_print_private_bfd_data() so that the program header will 5517 be displayed. 5518 5519Mon Jun 1 12:14:28 1998 Ian Lance Taylor <ian@cygnus.com> 5520 5521 * peicode.h (coff_swap_sym_in): Check for C_SECTION rather than 5522 0x68. Reindent. Add some comments. 5523 5524Fri May 29 09:58:08 1998 Nick Clifton <nickc@cygnus.com> 5525 5526 * elf.c (copy_private_bfd_data): Adjust physical address of 5527 segment in output BFD to contain LMAs of its sections. 5528 5529Tue May 26 19:37:47 1998 Stan Cox <scox@equinox.cygnus.com> 5530 5531 * elf32-sparc.c (_bfd_sparc_elf_howto_table, sparc_reloc_map, 5532 elf32_sparc_relocate_section): Added R_SPARC_32LE for little 5533 endian data 32 bit relocations. 5534 (elf32_sparc_merge_private_bfd_data): Check if linking little 5535 endian objects with big endian objects. 5536 (elf32_sparc_object_p): Set bfd_mach_sparc_sparclite_le. 5537 (elf32_sparc_final_write_processing): Set EF_SPARC_LEDATA in e_flags. 5538 * libbfd.h (bfd_reloc_code_real_names): Added BFD_RELOC_SPARC_32LE. 5539 * reloc.c: Same. 5540 * cpu-sparc.c (arch_info_struct): Added sparc:sparclite_le 5541 * archures.c (bfd_mach_sparc_sparclite_le): New. 5542 * bfd-in2.h (BFD_RELOC_SPARC_32LE, bfd_mach_sparc_sparclite_le): New. 5543 5544Thu May 21 16:59:28 1998 Nick Clifton <nickc@cygnus.com> 5545 5546 * peicode.h (add_data_entry): Fix precedence of operators in if () 5547 statement. 5548 5549Tue May 19 18:41:19 1998 Ian Lance Taylor <ian@cygnus.com> 5550 5551 * bfd-in.h: Move over patch to bfd-in2.h. 5552 5553 * reloc.c (bfd_check_overflow): Add casts before shifts which may 5554 not fit in 32 bits. 5555 (_bfd_relocate_contents): Likewise. 5556 5557Mon May 18 14:44:15 1998 Nick Clifton <nickc@cygnus.com> 5558 5559 * peicode.h (add_data_entry): If the section has no private data 5560 then do not create a Data Dictionary entry for it. 5561 5562Mon May 18 00:09:28 1998 Richard Henderson <rth@cygnus.com> 5563 5564 * elf64-alpha.c (elf64_alpha_relax_section): Set again on changes. 5565 (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots, 5566 elf64_alpha_size_got_sections): Rewrite, handling multiple got 5567 subsections during relaxation more correctly. 5568 5569Thu May 14 14:22:58 1998 Nick Clifton <nickc@cygnus.com> 5570 5571 * bfd-in2.h: Add new prototype: bfd_coff_set_symbol_class (). 5572 Add extra argument to bfd_arm_process_before_allocation (). 5573 * bfd-in.h: Reflect changes made in bfd-in2.h. 5574 * coffgen.c (bfd_coff_set_symbol_class): New function. Set the 5575 coff class of a BFD symbol. 5576 * coff-arm.c: Add support for interworking between Thumb code and 5577 non-interworking aware ARM code. 5578 5579Sun May 10 22:33:59 1998 Jeffrey A Law (law@cygnus.com) 5580 5581 * po/Make-in (install-info): New target. 5582 5583Thu May 7 17:40:56 1998 Ian Lance Taylor <ian@cygnus.com> 5584 5585 * filemode.c: Remove; not used. 5586 5587 If sysdep.h includes a header file, don't include it again: 5588 * aix386-core.c: Don't include <stdio.h>, <stddef.h>, or 5589 <errno.h>. 5590 * aoutx.h: Don't include <string.h>. Use "sysdep.h" rather than 5591 <sysdep.h>. 5592 * archive.c: Don't include <string.h> or <errno.h>. 5593 * evax-alpha.c; Don't include <stdio.h>. 5594 * evax-egsd.c: Likewise. 5595 * evax-etir.c: Likewise. 5596 * evax-misc.c: Likewise. 5597 * evax-emh.c: Likewise. Also, don't include <sys/types.h>. 5598 * hppabsd-core.c: Don't include <stdio.h>, <sys/types.h>, or 5599 <errno.h>. 5600 * hpux-core.c: Likewise. 5601 * netbsd-core.c: Likewise. 5602 * som.c: Likewise. 5603 * libbfd.c: Don't include <sys/types.h>. 5604 * nlmcode.h: Don't include <string.h>. 5605 * osf-core.c: Don't include <string.h> or <stdio.h>. 5606 * ptrace-core.c: Don't include <stdio.h>, <sys/types.h>, 5607 <errno.h>, or <unistd.h>. 5608 * trad-core.c: Don't include <stdio.h> or <sys/types.h>. 5609 5610Thu May 7 13:12:50 1998 Klaus Kaempf <kkaempf@progis.de> 5611 5612 * configure.com: If the version number can not be found in 5613 configure.in, set it to "unknown" rather than "2.8.1". 5614 5615Wed May 6 09:46:05 1998 Gavin Koch <gavin@cygnus.com> 5616 5617 * elf32-mips.c (elf_mips_mach): New. 5618 (_bfd_mips_elf_object_p): Use elf_mips_mach. 5619 (_bfd_mips_elf_final_write_processing): Use the names 5620 of machines, rather than the numbers. Set both the ARCH 5621 and MACH in e_flags. Handle a few more specific machines. 5622 (_bfd_mips_elf_merge_private_bfd_data): Merge both 5623 EF_MIPS_ARCH and EF_MIPS_MACH. 5624 5625Tue May 5 21:01:53 1998 Richard Henderson <rth@cygnus.com> 5626 5627 * syms.c (bfd_is_local_label): Revert last change. 5628 * srec.c (srec_write_symbols): Discard debugging symbols. 5629 5630Tue May 5 23:36:06 1998 Ian Lance Taylor <ian@cygnus.com> 5631 5632 * som.c: Include <ctype.h>. 5633 * som.h: Don't include sysdep.h. 5634 5635Tue May 5 18:29:24 1998 Tom Tromey <tromey@cygnus.com> 5636 5637 * libbfd.h: Rebuilt. 5638 * libbfd-in.h: Removed gettext includes and defines. 5639 * sysdep.h: Moved gettext-related includes and defines here. 5640 5641Tue May 5 16:47:54 1998 Richard Henderson <rth@cygnus.com> 5642 5643 * srec.c (srec_write_symbols): Use bfd_is_local_label rather than 5644 an ad-hoc test. Kill bogus #if 0 code. 5645 * syms.c (bfd_is_local_label): Consider BSF_DEBUGGING symbols local. 5646 5647Mon May 4 16:10:33 1998 Ian Lance Taylor <ian@cygnus.com> 5648 5649 * sunos.c (sunos_check_dynamic_reloc): Don't use the PLT address 5650 when generating a normal executable for a symbol defined in a 5651 regular file. When copying a reloc into the output file, adjust 5652 the addend for a PC relative reloc against a global symbol. 5653 5654Mon May 4 10:08:18 1998 Tom Tromey <tromey@cygnus.com> 5655 5656 * libbfd.h: Rebuilt. 5657 * libbfd-in.h (_): Define as dgettext. 5658 5659Mon May 4 11:02:23 1998 Ian Lance Taylor <ian@cygnus.com> 5660 5661 * coff-arm.c (coff_arm_relocate_section): Cast to bfd_signed_vma, 5662 not signed. 5663 * peicode.h (pe_saved_coff_bfd_print_private_bfd_data): Use PARAMS 5664 when declaring parameter types. 5665 (pe_saved_coff_bfd_copy_private_bfd_data): Likewise. 5666 5667Wed Apr 29 15:35:03 1998 Ian Lance Taylor <ian@cygnus.com> 5668 5669 * config.bfd: If we include any ELF targets in targ_defvec and/or 5670 targ_selvecs, then add the generic ELF targets to targ_selvecs. 5671 * elf32-gen.c (dummy): New static const variable. 5672 (elf_generic_info_to_howto): New static function. 5673 (elf_generic_info_to_howto_rel): New static function. 5674 (elf_info_to_howto): Define as elf_generic_info_to_howto. 5675 (elf_info_to_howto_rel): Define as elf_generic_info_to_howto_rel. 5676 * elf64-gen.c: Same changes as elf32-gen.c. 5677 * elfcode.h (elf_object_p): For the generic target, ignore a 5678 failure of bfd_default_set_arch_mach. Fix indentation a bit. 5679 5680Tue Apr 28 20:05:52 1998 Ian Lance Taylor <ian@cygnus.com> 5681 5682 * configure.in (WIN32LIBADD): Add -lintl on cygwin32. 5683 * configure: Rebuild. 5684 5685Tue Apr 28 12:16:57 1998 Jason Molenda (crash@bugshack.cygnus.com) 5686 5687 * config.bfd: Update OSR5/Unixware patterns. 5688 5689Mon Apr 27 18:02:24 1998 Richard Henderson <rth@cygnus.com> 5690 5691 * elf.c (assign_file_positions_for_segments): Allow for holes 5692 between sections added by a link script. 5693 5694Mon Apr 27 11:49:55 1998 Ian Lance Taylor <ian@cygnus.com> 5695 5696 * configure.in: Change version number to 2.9.4 5697 * configure: Rebuild. 5698 5699 Based on patch from H.J. Lu <hjl@gnu.org>: 5700 * elf.c (bfd_elf_get_bfd_needed_list): New function. 5701 * bfd-in.h (bfd_elf_get_bfd_needed_list): Declare. 5702 * bfd-in2.h: Rebuild. 5703 5704Sat Apr 25 20:07:53 1998 Richard Henderson <rth@cygnus.com> 5705 5706 * elf64-alpha.c (struct alpha_relax_info): Replace elfsym with other. 5707 Change all users. 5708 5709Sat Apr 25 18:29:07 1998 Richard Henderson <rth@cygnus.com> 5710 5711 * elf64-alpha.c (struct alpha_relax_info): Add tsec & elfsym members. 5712 (elf64_alpha_relax_section): Fill them in. 5713 (elf64_alpha_relax_opt_call): Implement more than a stub. 5714 (elf64_alpha_add_symbol_hook): Don't set SEC_LOAD or default 5715 alignment on .scommon. 5716 (elf64_alpha_merge_gots): Merge use counts as well. 5717 5718Sat Apr 25 14:07:29 1998 Richard Henderson <rth@cygnus.com> 5719 5720 * elf64-alpha.c (elf64_alpha_relax_section): Use the proper section 5721 for calculating a local symbol's address. 5722 (elf64_alpha_calc_got_offsets): Skip entries with 0 use count. 5723 Set the .got's cooked size as well as the raw size. 5724 5725Fri Apr 24 09:16:00 1998 Nick Clifton <nickc@cygnus.com> 5726 5727 * elf32-v850.c (v850_elf_print_private_bfd_data): Add 5728 internationalisation of printed information. 5729 5730 * coff-arm.c (coff_arm_print_private_bfd_data): Add 5731 internationalisation of printed information. 5732 5733Fri Apr 24 12:09:18 1998 Ian Lance Taylor <ian@cygnus.com> 5734 5735 * syms.c (struct indexentry): Change directory_name, file_name, 5736 and function_name fields to char *. 5737 (struct stab_find_info): Change cached_file_name field to char *. 5738 5739Thu Apr 23 08:13:04 1998 Nick Clifton <nickc@cygnus.com> 5740 5741 * peicode.h (dir_names): Add missing N_() macros to dir_names array. 5742 5743Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com> 5744 5745 * po/Make-in (MKINSTALLDIRS): Don't look in $(top_srcdir). 5746 5747Wed Apr 22 17:48:48 1998 Ian Lance Taylor <ian@cygnus.com> 5748 5749 * Makefile.am (install-data-local): Make $(includedir). 5750 * Makefile.in: Rebuild. 5751 5752Wed Apr 22 13:06:15 1998 Tom Tromey <tromey@cygnus.com> 5753 5754 * libbfd-in.h: Use `gettext' and not `dgettext' for now. 5755 5756Wed Apr 22 12:53:40 1998 Ian Lance Taylor <ian@cygnus.com> 5757 5758 * Makefile.am (INCLUDES): Add -I$(srcdir)/../intl -I../intl. 5759 * Makefile.in: Rebuild. 5760 5761 * bfd-in2.h: Rebuild for Nick's changes. 5762 5763Tue Apr 21 23:11:51 1998 Richard Henderson <rth@cygnus.com> 5764 5765 * archive.c (_bfd_generic_read_ar_hdr_mag): Fix lossage in last 5766 change wrt length == max_namelen. 5767 5768Tue Apr 21 21:19:36 1998 Tom Tromey <tromey@scribbles.cygnus.com> 5769 5770 * Many files: Added gettext invocations around user-visible 5771 strings. 5772 * libbfd-in.h: Added gettext includes and defines. 5773 * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY, 5774 HAVE_LC_MESSAGES): Define. 5775 * configure.in: Call CY_GNU_GETTEXT. Create po/Makefile.in and 5776 po/Makefile. 5777 * Makefile.am (SUBDIRS): Added po. 5778 (POTFILES): New macro. 5779 (po/POTFILES.in): New target. 5780 (SOURCE_HFILES): New macro. 5781 (HFILES): Use it. 5782 * po/Make-in, po/POTFILES.in, po/bfd.pot: New files. 5783 5784Tue Apr 21 13:38:18 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) 5785 5786 * elfcore.h (bfd_prstatus): Copy core_prstatus from the first 5787 NT_PRSTATUS note section encountered, it contains the status of 5788 the currently executing thread when the core file was written. 5789 5790Tue Apr 21 10:00:12 1998 Nick Clifton <nickc@cygnus.com> 5791 5792 * libcoff.h: Add extra parameter to 5793 bfd_coff_link_output_has_begun overrideable function. 5794 * cofflink.c: Pass extra parameter to 5795 bfd_coff_link_output_has_begun function. 5796 * bfd-in.h: Add prototypes for exported ARM interworking 5797 functions. 5798 * peicode.h: ARM specific code reorganised to conform to BFD 5799 coding conventions. 5800 * coffcode.h: ARM specific code reorganised to conform to BFD 5801 coding conventions. 5802 * coff-arm.c: Code reorganised to conform to the BFD coding 5803 conventions. Global variables have been moved into an ARM 5804 specific hash table structure and a new function: 5805 bfd_arm_get_bfd_for_interworking() has been created which is 5806 called from the linker scripts. 5807 5808Tue Apr 21 00:11:51 1998 Richard Henderson <rth@cygnus.com> 5809 5810 * archive.c (_bfd_generic_read_ar_hdr_mag): Simplify end-of-name test. 5811 5812 * elf64-alpha.c (elf64_alpha_find_reloc_at_ofs): Renamed from 5813 elf64_alpha_relax_find_reloc_ofs. Changed all callers. 5814 (elf64_alpha_add_symbol_hook): Put small commons in .scommon not .sbss. 5815 (elf64_alpha_size_got_sections): Don't merge .got sections twice. 5816 5817Sat Apr 18 01:21:04 1998 Stan Cox <scox@cygnus.com> 5818 5819 * config.bfd: Added sparc86x support. 5820 5821Fri Apr 17 22:29:04 1998 Ian Lance Taylor <ian@cygnus.com> 5822 5823 * elf32-mips.c (mips_elf_relocate_section): Do not complain about 5824 an out of range pc-relative jump/call to an undefined weak symbol. 5825 5826Thu Apr 16 13:49:00 1998 Richard Henderson <rth@cygnus.com> 5827 5828 * elf64-alpha.c (elf64_alpha_do_reloc_gpdisp): Do all gpdisp 5829 comparisons signed. 5830 5831Thu Apr 16 11:43:33 1998 Ian Lance Taylor <ian@cygnus.com> 5832 5833 * archive.c (bfd_generic_archive_p): If a slurp subroutine returns 5834 an error other than bfd_error_system_call, set the error to 5835 bfd_error_wrong_format. 5836 5837 * targets.c (bfd_target_vector) [SELECT_VECS not defined]: Add 5838 bfd_elf32_powerpcle_vec. 5839 5840 * elf.c (copy_private_bfd_data): If all the p_paddr fields in the 5841 program segments are zero, don't set p_paddr_valid. 5842 5843Wed Apr 15 22:15:16 1998 Richard Henderson <rth@cygnus.com> 5844 5845 * elf64-alpha.c: Initial implementation of relaxation -- 5846 (struct alpha_elf_link_hash_entry): Add use_count member. 5847 (elf64_alpha_check_relocs): Initialize and increment it. 5848 (elf64_alpha_can_merge_gots): Check it when considering merging. 5849 (elf64_alpha_merge_gots): Drop entries with zero use. 5850 (elf64_alpha_calc_got_offsets_for_symbol): Likewise. 5851 (elf64_alpha_always_size_sections): Split out got sizing ... 5852 (elf64_alpha_size_got_sections): ... here. New function. 5853 (elf64_alpha_relax_find_reloc_ofs): New function. 5854 (elf64_alpha_relax_with_lituse): Likewise. 5855 (elf64_alpha_relax_without_lituse): Likewise. 5856 (elf64_alpha_relax_opt_call): Likewise. 5857 (elf64_alpha_relax_section): Likewise. 5858 (elf64_alpha_add_symbol_hook): Likewise. 5859 (elf64_alpha_howto_table): Implement GPRELHIGH/LOW & IMMED_GP_16. 5860 (elf64_alpha_relocate_section): Likewise. 5861 (bfd_elf64_bfd_relax_section): Define. 5862 (elf_backend_add_symbol_hook): Likewise. 5863 5864Wed Apr 15 16:08:46 1998 Richard Henderson <rth@cygnus.com> 5865 5866 * elf.c (prep_headers): Use new EM_SPARCV9 symbol. 5867 * elf64-sparc.c (ELF_MACHINE_CODE): Likewise. 5868 (ELF_MACHINE_ALT1): New. Set to EM_OLD_SPARC64. 5869 5870Wed Apr 15 11:34:33 1998 Ian Lance Taylor <ian@cygnus.com> 5871 5872 * configure.in: Add -lkernel32 to WIN32LIBADD on cygwin32. 5873 * configure: Rebuild. 5874 5875Mon Apr 13 16:46:27 1998 Ian Lance Taylor <ian@cygnus.com> 5876 5877 * Makefile.am (libbfd_la_LIBADD): Add @WIN32LIBADD@. 5878 (libbfd_la_LDFLAGS): Add @WIN32LDFLAGS@. 5879 * configure.in: Define and substitute WIN32LDFLAGS and 5880 WIN32LIBADD. 5881 * aclocal.m4: Rebuild with new libtool. 5882 * configure, Makefile.in: Rebuild. 5883 5884Fri Apr 10 13:44:27 1998 Ian Lance Taylor <ian@cygnus.com> 5885 5886 * coffcode.h (coff_write_object_contents): Move a PE COMDAT symbol 5887 before any other symbols in the same section. 5888 5889Wed Apr 8 14:50:23 1998 Michael Meissner <meissner@cygnus.com> 5890 5891 * config.bfd (powerpc*-*-*): Remove PowerPC NT support from ELF 5892 systems. 5893 5894Tue Apr 7 16:25:31 1998 Gavin Romig-Koch <gavin@cygnus.com> 5895 5896 * dwarf2.c (comp_unit): Move it earlier in the source. Add 5897 addr_size. 5898 (read_address): Replace 'bdf*' argument with 'comp_unit*' argument. 5899 Use addr_size for address size, rather than sizeof(bfd_vma). 5900 (read_attribute): Replace bdf* argument with 'comp_unit*' argument. 5901 Fix call to read_address. 5902 (decode_line_info): Replace bdf* argument with 'comp_unit*' argument. 5903 Scrap other unneeded arguments. Fix call to read_address. 5904 (scan_unit_for_functions): Fix call to read_attribute. 5905 (parse_comp_unit): We now handle more values for addr_size. 5906 Set addr_size in unit. Fix call to read_attribute and 5907 decode_line_info. 5908 5909Tue Apr 7 15:44:47 1998 Gavin Romig-Koch <gavin@cygnus.com> 5910 5911 * dwarf2.c (parse_comp_unit): Drop use of unit->name when it is null. 5912 5913Tue Apr 7 12:35:18 1998 Ian Lance Taylor <ian@cygnus.com> 5914 5915 * archures.c (bfd_default_scan): Add m68k cases back to default 5916 switch, reverting patch of March 25, since IEEE support depends 5917 upon them. 5918 5919Mon Apr 6 14:06:40 1998 Ian Lance Taylor <ian@cygnus.com> 5920 5921 * Makefile.am (diststuff): New target. 5922 * Makefile.in: Rebuild. 5923 5924Sun Apr 5 16:21:44 1998 Jeffrey A Law (law@cygnus.com) 5925 5926 * som.c (som_bfd_ar_write_symbol_stuff): Fix computation of 5927 som_offset when we have an extended name table. 5928 5929Sun Apr 5 16:04:39 1998 H.J. Lu <hjl@gnu.org> 5930 5931 * Makefile.am (stamp-lib): Check that .libs/libbfd.a exists before 5932 trying to copy it. 5933 * Makefile.in: Rebuild. 5934 5935Fri Apr 3 11:09:42 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 5936 5937 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Generate section 5938 symbols when creating a shared library. 5939 (elf_m68k_adjust_dynindx): New function, used by above code. 5940 (elf_m68k_finish_dynamic_sections): Initialize the section 5941 symbols. 5942 (elf_m68k_relocate_section): Change abort to BFD_ASSERT. 5943 5944Wed Apr 1 16:04:02 1998 Nick Clifton <nickc@cygnus.com> 5945 5946 * coff-arm.c (in_reloc_p): Use ARM_RVA32 in place of constant 5947 value 11. 5948 5949Wed Apr 1 13:36:58 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 5950 5951 * elf32-m68k.c (elf_m68k_relocate_section, case R_68K_PLT*O): Fix 5952 assertion. 5953 5954Tue Mar 31 00:12:12 1998 Jeffrey A Law (law@cygnus.com) 5955 5956 * elf-m10300.c (mn10300_elf_relax_section): Correctly handle 5957 absolute symbols. 5958 5959Mon Mar 30 12:46:15 1998 Ian Lance Taylor <ian@cygnus.com> 5960 5961 * configure.in: Set version to 2.9.1. 5962 * configure: Rebuild. 5963 5964 * Branched binutils 2.9. 5965 5966Mon Mar 30 12:20:50 1998 Brent Baccala <baccala@freesoft.org> 5967 5968 * syms.c (ENABLE_CACHING): Define. 5969 (struct indexentry): Define. 5970 (struct stab_cache): Remove. 5971 (cmpindexentry): New static function. 5972 (struct stab_find_info): Add new fields: indextable, 5973 indextablesize, cached_indexentry, cached_offset, cached_stab, and 5974 cached_file_name. Remove fields: file_cache, function_cache, and 5975 line_cache. 5976 (_bfd_stab_section_find_nearest_line): Rewrite to build a sorted 5977 index table and search it. 5978 5979Mon Mar 30 10:39:34 1998 Ian Lance Taylor <ian@cygnus.com> 5980 5981 * elf.c (_bfd_elf_copy_private_section_data): Call 5982 copy_private_bfd_data once we've seen the last SEC_ALLOC section. 5983 5984 * cpu-mips.c: Remove trailing comma at end of enumeration list. 5985 5986Sat Mar 28 16:33:02 1998 Ian Lance Taylor <ian@cygnus.com> 5987 5988 * coff-arm.c: Define all globally visible variables and functions 5989 only when COFF_WITH_PE is not defined. 5990 * configure.in (armpe_little_vec, armpe_big_vec): Add 5991 coff-arm.lo. 5992 * configure: Rebuild. 5993 5994Fri Mar 27 16:06:02 1998 Ian Lance Taylor <ian@cygnus.com> 5995 5996 Fix some gcc -Wall warnings: 5997 * aout-arm.c (MY(fix_pcrel_26)): Add casts to avoid warnings. 5998 * archive.c (_bfd_generic_read_ar_hdr_mag): Likewise. 5999 * archures.c (bfd_default_scan): Likewise. 6000 * bfd.c (bfd_scan_vma): Likewise. 6001 * binary.c (mangle_name): Likewise 6002 * coff-arm.c (aoutarm_fix_pcrel_26): Likewise. 6003 * coff-sh.c (sh_relocate_section): Likewise. 6004 * coff-stgo32.c (create_go32_stub): Likewise. 6005 * coffcode.h (coff_slurp_line_table): Likewise. 6006 * ecoff.c (_bfd_ecoff_write_armap): Likewise. 6007 * elf.c (_bfd_elf_make_section_from_shdr): Likewise. 6008 (assign_file_positions_for_segments): Likewise. 6009 * elf32-mips.c (mips_elf_relocate_section): Likewise. 6010 * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. 6011 * oasys.c (oasys_write_sections): Likewise. 6012 * ppcboot.c (ppcboot_object_p): Likewise. 6013 (mangle_name): Likewise. 6014 * riscix.c (riscix_fix_pcrel_26): Likewise. 6015 * srec.c (srec_scan): Likewise. 6016 * stabs.c (_bfd_write_section_stabs): Likewise. 6017 * sunos.c (sunos_add_dynamic_symbols): Likewise. 6018 * aout-ns32k.c (_bfd_ns32k_relocate_contents): Add default case to 6019 switch. Declare parameters for function pointers. 6020 * archures.c (bfd_default_scan): Add braces to avoid ambiguous if 6021 warning. 6022 * elf.c (elf_sort_sections): Likewise. 6023 * coff-arm.c (coff_thumb_pcrel_common): Initialize relocation. 6024 Add default cases to switches. 6025 (coff_arm_relocate_section): Remove unused local variables. 6026 Always set rstat. 6027 (coff_arm_bfd_set_private_flags): Change flag variable to type 6028 flagword. 6029 * coff-mips.c (mips_relocate_section): Initialize use_lo. 6030 * coff-ppc.c (ppc_record_toc_entry): Change i to unsigned int. 6031 (dump_toc): Change cat to const, and initialize it. 6032 * coff-sh.c (sh_relax_delete_bytes): Initialize start and voff. 6033 * elf32-sh.c (sh_elf_relax_delete_bytes): Likewise. 6034 (sh_elf_relocate_section): Initialize r_symndx. 6035 * coffcode.h (coff_compute_section_file_positions): Only declare 6036 old_sofar if ALIGN_SECTIONS_IN_FILE. 6037 (coff_write_object_contents): Initialize csym. 6038 * coffgen.c (coff_pointerize_aux): Make type and class unsigned. 6039 * cpu-ns32k.c (_bfd_ns32k_get_displacement): Add default case to 6040 switch. 6041 * dwarf2.c: Include libiberty.h. 6042 (read_2_signed_bytes, read_4_signed_bytes): Comment out. 6043 (decode_line_info): Remove unused local variables. 6044 * elf32-m32r.c (m32r_elf_sda16_reloc): Likewise. 6045 (m32r_elf_relocate_section): Likewise. 6046 * elf32-v850.c (v850_elf_store_addend_in_insn): Likewise. 6047 (v850_elf_reloc): Likewise. 6048 * elf-bfd.h (elf_linker_section_t): Make alignment unsigned. 6049 (struct elf_obj_tdata): Make cverdefs and cverrefs unsigned. 6050 * elf.c (assign_file_positions_for_segments): Always set adjust. 6051 * elf32-d30v.c (bfd_elf_d30v_reloc): Initialize tmp_addr. Fully 6052 parenthesize expression. 6053 * elf32-m32r.c (m32r_elf_relocate_section): Always initialize h. 6054 (m32r_elf_object_p): Return a value. 6055 (m32r_elf_print_private_bfd_data): Change fprintf format string. 6056 * elf32-mips.c (mips_elf_final_link): Initialize last. 6057 (mips_elf_finish_dynamic_sections): Initialize last and dindx. 6058 * elf32-v850.c (v850_elf_object_p): Return a value. 6059 (v850_elf_print_private_bfd_data): Change fprintf format string. 6060 * elfcode.h (elf_slurp_symbol_table): Change symcount and i to 6061 unsigned long. 6062 * elflink.h (elf_link_add_object_symbols): Change vernum to 6063 unsigned int, and initialize it. Change fprintf format string. 6064 (NAME(bfd_elf,size_dynamic_sections)): Cast -1 to bfd_size_type 6065 when setting or comparing to soname_indx. 6066 (elf_create_pointer_linker_section): Change num_symbols to 6067 unsigned int. 6068 * libcoff-in.h (coff_data_type): Change flags to flagword. 6069 * peicode.h (pe_print_idata): Initialize idx. Change j to 6070 bfd_size_type. Initialize hint_member. Remove useless test to 6071 time_stamp. 6072 (pe_print_edata): Change num_functions and num_names in struct 6073 EDT_type to unsigned long. Remove cast. Change fprintf format 6074 string. 6075 * ppcboot.c (ppcboot_object_p): Change i to size_t. 6076 * reloc.c (bfd_get_reloc_size): Change return type to unsigned 6077 int. 6078 * reloc16.c (bfd_coff_reloc16_relax_section): Change shrinks to 6079 int *. Update uses. Change j to long. 6080 * bfd-in2.h, libcoff.h: Rebuild. 6081 6082Fri Mar 27 10:10:46 1998 Catherine Moore <clm@cygnus.com> 6083 6084 * elf32-v850.c Remove definition of USE_REL. 6085 (v850_elf_info_to_howto_rela): New function. 6086 (v850_elf_perform_relocation): Renamed from 6087 v850_elf_store_addend_in_insn. Removed replace argument. 6088 (v850_elf_reloc): store the relocation in the addend field instead 6089 of the insn. 6090 (v850_elf_final_link_relocate): Now calls 6091 v850_elf_perform_relocation. 6092 (v850_elf_relocate_section): Remove code to generate REL 6093 relocations. 6094 6095Thu Mar 26 13:32:17 1998 Ian Lance Taylor <ian@cygnus.com> 6096 6097 * coffcode.h (coff_new_section_hook): Set the type and storage 6098 class in the native symbol information allocated for a new section 6099 symbol. 6100 6101Thu Mar 26 10:13:41 1998 Nick Clifton <nickc@cygnus.com> 6102 6103 * peicode.h: Chain together calls to 6104 coff_bfd_copy_private_bfd_data and 6105 coff_bfd_print_private_bfd_data. 6106 6107 * coff-arm.c: Add prototypes for 6108 coff_arm_bfd_print_private_bfd_data and 6109 coff_arm_bfd_copy_private_bfd_data. 6110 6111Wed Mar 25 15:45:55 1998 Nick Clifton <nickc@cygnus.com> 6112 6113 * coffcode.h (coff_mkobject_hook): Set private falgs even for a PE 6114 build. 6115 6116 * peicode.h: Call arm-coff private data functions after handling 6117 pe private data. 6118 6119 * coff-arm.c: Turn statics into globals so that they can be shared 6120 both pe and pei backends. 6121 6122Wed Mar 25 15:19:38 1998 Ian Lance Taylor <ian@cygnus.com> 6123 6124 * aoutf1.h (sunos_set_arch_mach): Use bfd_mach_m68* rather than 6125 plain numbers. 6126 (sunos_write_object_contents): Likewise. 6127 * aoutx.h (NAME(aout,machine_type)): Likewise. 6128 * coffcode.h (coff_set_arch_mach_hook): Likewise. 6129 6130Wed Mar 25 13:59:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 6131 6132 * archures.c (bfd_mach_m68*): Add definitions for various m68k 6133 variants. 6134 (bfd_default_scan): Remove m68k special cases. 6135 * bfd-in2.h: Rebuild. 6136 * mipsbsd.c (MY(write_object_contents)): Use bfd_mach_m68* rather 6137 than plain numbers. 6138 * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise. 6139 * cpu-m68k.c (arch_info_struct): Likewise. Add entry for 6140 m68k:68000. 6141 (bfd_m68k_arch): Set mach field to zero to signal no explicit 6142 selection, change printable_name to just "m68k" and make that the 6143 default instead of m68k:68020. 6144 6145 * aout-tic30.c (NAME): Define this to avoid multiple definitions 6146 from aoutx.h. 6147 (MY_get_section_contents): Define as aout_32_get_section_contents 6148 rather than NAME(aout,get_section_contents). 6149 6150 * elf-m10300.c (elf32_mn10300_link_hash_table_create): Fix cast. 6151 6152 * evax-alpha.c (evax_set_arch_mach): Only accept bfd_arch_alpha 6153 and call bfd_default_set_arch_mach to do the real work. 6154 6155Wed Mar 25 10:41:35 1998 Richard Henderson <rth@cygnus.com> 6156 6157 * bout.c (BALX): Include return register g14 as part of the insn. 6158 (BALX_MASK): New. 6159 (calljx_callback): Use it. 6160 6161Wed Mar 25 11:19:28 1998 Ian Lance Taylor <ian@cygnus.com> 6162 6163 * libbfd-in.h (BFD_ALIGN): Cast this parameter to bfd_vma. 6164 * libbfd.h: Rebuild. 6165 6166 * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Change 6167 byte_count to unsigned int. 6168 (mn10300_elf_relax_section): Initialize internal_relocs. Remove 6169 unused local variables. 6170 6171 * evax-alpha.c (evax_close_and_cleanup): Remove unused local 6172 variables er and er1. 6173 6174 * cpu-v850.c: Include <ctype.h>. 6175 (scan): Case isdigit argument to unsigned char. 6176 6177 From Yan Meroth <YAN.MEROTH@st.com>: 6178 * ihex.c (ihex_scan): Add extbase variable so that getting an 6179 extended linear address record does not ignore any previous 6180 extended address. 6181 (ihex_write_object_contents): When writing out an extended linear 6182 address record, zero out any previous extended address. 6183 6184Tue Mar 24 16:09:43 1998 Manfred Hollstein <manfred@s-direktnet.de> 6185 6186 * ieee.c (do_one): Check section before dereferencing it. 6187 (ieee_canonicalize_reloc): Likewise with src->relent.sym_ptr_ptr. 6188 (ieee_generic_stat_arch_elt): Likewise with abfd->my_archive. 6189 6190Mon Mar 23 18:51:47 1998 Joel Sherrill <joel@OARcorp.com> 6191 6192 * config.bfd: (sh*-*-rtems*): Switched from ELF to COFF. 6193 6194Mon Mar 23 14:23:36 1998 Nick Clifton <nickc@cygnus.com> 6195 6196 * coff-arm.c: Add interworking functions to pe backends. 6197 6198Fri Mar 20 18:47:20 1998 Ian Lance Taylor <ian@cygnus.com> 6199 6200 * configure.in: Use AM_DISABLE_SHARED. 6201 * aclocal.m4, configure: Rebuild with libtool 1.2. 6202 6203Fri Mar 20 11:25:41 1998 Nick Clifton <nickc@cygnus.com> 6204 6205 * coff-arm.c (coff_arm_relocate_section): Better error messages 6206 when interowrking conflucts occur. Courtesy of Jonathan Walton 6207 and Tony Thompson. 6208 (aoutarm_std_reloc_howto): Fixed bitsize fields of rightshifted 6209 relocations. Patch courtesy of Jonathan Walton and Tony 6210 Thompson. 6211 6212Fri Mar 20 02:26:43 1998 Richard Henderson <rth@cygnus.com> 6213 6214 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Revert 6215 part of Feb 22 change controling when to override the existing 6216 symbol with the .plt entry. 6217 6218Wed Mar 18 09:26:25 1998 Nick Clifton <nickc@cygnus.com> 6219 6220 * config.bfd (targ_cpu): Add thumb-pe target. 6221 6222 * coffcode.h (OTHER_GLOBAL_CLASS): Support thumb external 6223 functions in PE build. 6224 6225Sun Mar 8 23:37:26 1998 Stan Cox <scox@equinox.cygnus.com> 6226 6227 * config.bfd (sparclite-*-elf*): Added. 6228 6229Mon Feb 23 19:31:19 1998 Ian Lance Taylor <ian@cygnus.com> 6230 6231 * configure.in: Add elf.lo to elf shell variable. 6232 * Makefile.am (BFD_LIBS): Remove elf.lo. 6233 (BFD_LIBS_CFILES): Remove elf.c. 6234 (BFD32_BACKENDS): Add elf.lo. 6235 (BFD32_BACKENDS_CFILES): Add elf.c. 6236 * configure, Makefile.in: Rebuild. 6237 62381998-02-23 15:53 Richard Henderson <rth@cygnus.com> 6239 6240 * elf32-i386.c (elf_i386_relocate_section): A pc-relative 6241 relocation against a non-local symbol should not have a dynamic 6242 relocation. 6243 6244Mon Feb 23 16:17:08 1998 Ian Lance Taylor <ian@cygnus.com> 6245 6246 * peicode.h (coff_swap_filehdr_in): Don't set BFD flag HAS_SYMS in 6247 COFF filehdr flags. 6248 (pe_print_private_bfd_data): Print PE flags. From Mikey 6249 <jeffdb@netzone.com>. 6250 6251Sun Feb 22 20:39:00 1998 Richard Henderson <rth@cygnus.com> 6252 6253 * elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Don't create 6254 a plt entry when we can determine that we authoritatively define 6255 the symbol. 6256 6257Sun Feb 22 20:33:05 1998 Richard Henderson <rth@cygnus.com> 6258 6259 * configure.in (COREFILE selection): Remove sparc-*-linux*. They 6260 don't actually use trad-core, but a SunOS-style core file handled 6261 by gdb directly. 6262 * hosts/sparclinux.h: Remove. 6263 6264Wed Feb 18 15:31:06 1998 Ian Lance Taylor <ian@cygnus.com> 6265 6266 * peicode.h (pe_print_idata): If there is no .idata section, look 6267 for the import tables in some other section. Make the initial 6268 label line up better with the data. Print the import address 6269 table even if there is no import name table. If the import 6270 address table holds actual addresses, print them. 6271 6272Tue Feb 17 12:58:34 1998 Ian Lance Taylor <ian@cygnus.com> 6273 6274 * libbfd.c (bfd_seek): If fseek fails, save errno around call to 6275 bfd_tell. If errno is EINVAL, set bfd_error_file_truncated, not 6276 bfd_error_system_call. 6277 6278Fri Feb 13 13:11:33 1998 Ian Lance Taylor <ian@cygnus.com> 6279 6280 * Makefile.am (AUTOMAKE_OPTIONS): Define. 6281 * configure, Makefile.in, aclocal.m4: Rebuild with automake 1.2e. 6282 6283 From H.J. Lu <hjl@gnu.org>: 6284 * Makefile.am (libbfd_la_LDFLAGS): Define. 6285 * Makefile.in: Rebuild. 6286 6287Thu Feb 12 17:31:11 1998 Ian Lance Taylor <ian@cygnus.com> 6288 6289 NetBSD patches from Gordon W. Ross <gwr@mc.com>: 6290 * netbsd.h (MACHTYPE_OK): Define. 6291 (MY(write_object_contents)): Use DEFAULT_ARCH and DEFAULT_MID when 6292 calling N_SET_MACHTYPE, rather than having a switch. 6293 * libaout.h (enum machine_type): Add M_PMAX_NETBSD, M_VAX_NETBSD, 6294 and M_ALPHA_NETBSD. 6295 * i386netbsd.c (MACHTYPE_OK): Don't define. 6296 (DEFAULT_MID): Define. 6297 * m68k4knetbsd.c (SEGMENT_SIZE): Don't define. 6298 (MACHTYPE_OK): Don't define. 6299 (DEFAULT_MID): Define. 6300 * m68knetbsd.c: (MACHTYPE_OK): Don't define. 6301 (DEFAULT_MID): Define. 6302 * ns32knetbsd.c (MACHTYPE_OK): Don't define. 6303 (DEFAULT_MID): Define. 6304 * sparcnetbsd.c (MACHTYPE_OK): Don't define. 6305 (DEFAULT_MID): Define. 6306 6307 NetBSD patches from Gordon W. Ross <gwr@mc.com>: 6308 * vaxnetbsd.c: New file. 6309 * netbsd-core.c: Clean up. Remove unused macros. Use netbsd 6310 rather than netbsd_core. 6311 * targets.c (vaxnetbsd_vec): Declare. 6312 (bfd_target_vector): Add vaxnetbsd_vec. If NETBSD_CORE is 6313 defined, add netbsd_core_vec. 6314 * configure.in: Set COREFILE for alpha*-*-netbsd* and 6315 powerpc-*-netbsd* to netbsd-core.lo. If COREFILE is 6316 netbsd-core.lo, set COREFLAG to -DNETBSD_CORE. 6317 * config.bfd (alpha*-*-netbsd*): New target. 6318 * Makefile.am: Rebuild dependencies. 6319 (BFD32_BACKENDS): Add vaxnetbsd.lo. 6320 (BFD32_BACKENDS_CFILES): Add vaxnetbsd.c. 6321 * configure, Makefile.in: Rebuild. 6322 6323 * configure.host: Remove the old shared library build stuff. We 6324 now use libtool instead. 6325 6326Wed Feb 11 17:13:09 1998 Richard Henderson <rth@cygnus.com> 6327 6328 * tekhex.c (tekhex_write_object_contents): Call tekhex_init. 6329 6330Tue Feb 10 19:23:28 1998 H.J. Lu <hjl@gnu.org> 6331 6332 * configure.in: Take stab-syms.lo out of sparclinux_vec list. 6333 * configure: Rebuild. 6334 6335Tue Feb 10 15:16:38 1998 Nick Clifton <nickc@cygnus.com> 6336 * elf32-v850.c (remember_hi16s_reloc): New function. 6337 (find_remembered_hi16s_reloc): New function. 6338 (v850_elf_store_addend_in_insn): Use the above new functions to 6339 match up HI6S relocs with LO16 relocs. 6340 6341Tue Feb 10 15:01:39 1998 Ian Lance Taylor <ian@cygnus.com> 6342 6343 * configure.in: Change -linux* to -linux-gnu*. 6344 * config.bfd, configure.host: Likewise. 6345 * configure: Rebuild. 6346 6347Mon Feb 9 19:40:59 1998 Nick Clifton <nickc@cygnus.com> 6348 6349 * elf32-v850.c (v850_elf_store_addend_in_insn): Fix another 6350 LO16/HI16S bug and improve comments about what is going on. 6351 6352Sat Feb 7 15:27:03 1998 Ian Lance Taylor <ian@cygnus.com> 6353 6354 * configure, aclocal.m4: Rebuild with new libtool. 6355 6356Fri Feb 6 14:48:20 1998 Nick Clifton <nickc@cygnus.com> 6357 6358 * elf32-v850.c (v850_elf_merge_private_bfd_data): Do not complain 6359 when merging v850 code into v850e/v850ea code. Do not initialise 6360 output flags if the input is the default architecture. 6361 6362Fri Feb 6 11:50:22 1998 Jeffrey A Law (law@cygnus.com) 6363 6364 * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): For BFD_RELOC_CTOR 6365 get the size from bfd_arch_bits_per_address instead of directly 6366 from the isa. 6367 6368Thu Feb 5 14:21:34 1998 Michael Meissner <meissner@cygnus.com> 6369 6370 * libbfd-in.h (BFD_ALIGN): If rounding up would cause the address 6371 to wrap, just return all 1's bits instead. 6372 * libbfd.h: Regenerate. 6373 6374Thu Feb 5 11:51:05 1998 Ian Lance Taylor <ian@cygnus.com> 6375 6376 * coff-i386.c (coff_pe_i386_relocate_section): New static function 6377 if COFF_WITH_PE. 6378 (coff_relocate_section): If COFF_WITH_PE, define as 6379 coff_pe_i386_relocate_section. 6380 * coffcode.h (coff_write_object_contents): If COFF_IMAGE_WITH_PE, 6381 skip empty sections, to match coff_write_object_contents. 6382 6383 * elf64-mips.c (mips_elf64_swap_reloca_out): Swap out r_addend, 6384 rather than swapping out r_offset twice. From Luke Deller 6385 <luked@cse.unsw.edu.au>. 6386 6387Wed Feb 4 19:11:28 1998 Ian Lance Taylor <ian@cygnus.com> 6388 6389 * configure.in: Set libtool_enable_shared rather than 6390 libtool_shared. Remove diversion hack. 6391 * configure, Makefile.in, doc/Makefile.in, aclocal.m4: Rebuild 6392 with new libtool. 6393 6394Wed Feb 4 16:10:21 1998 Brent Baccala <baccala@freesoft.org> 6395 6396 * syms.c (struct stab_cache): Define. 6397 (struct stab_find_info): Remove cached_offset, cached_stab, 6398 cached_str, and cached_stroff fields. Add file_cache, 6399 function_cache, and line_cache fields. 6400 (_bfd_stab_section_find_nearest_line): Use extensive caching to 6401 speed up searches. 6402 6403Wed Feb 4 13:34:22 1998 Ian Lance Taylor <ian@cygnus.com> 6404 6405 * peicode.h (pe_print_idata): Check for import of ordinal rather 6406 than name. 6407 (pe_print_edata): If there is no .edata section, look for the 6408 export data in some other section. 6409 6410Mon Feb 2 20:05:42 1998 Jason Molenda (crash@bugshack.cygnus.com) 6411 6412 * configure.in: Change version to 2.8.4. 6413 * configure: Regenerated. 6414 6415Mon Feb 2 17:39:39 1998 Steve Haworth <steve@pm.cse.rmit.EDU.AU> 6416 6417 Add tms320c30 support: 6418 * cpu-tic30.c: New file. 6419 * aout-tic30.c: New file. 6420 * coff-tic30.c: New file. 6421 * archures.c (bfd_arch_tic30): Define. 6422 (bfd_tic30_arch): Declare. 6423 (bfd_archures_list): Add bfd_tic30_arch. 6424 * targets.c (bfd_target_vector): Add tic30_aout_vec and 6425 tic30_coff_vec. 6426 * reloc.c (BFD_RELOC_TIC30_LDP): Define. 6427 * coffcode.h (coff_set_arch_mach_hook): Add tic30 case. 6428 (coff_set_flags): Likewise. 6429 * config.bfd (tic30-*-*aout*, tic30-*-*coff*): New targets. 6430 * configure.in (tic30_aout_vec, tic30_coff_vec): New vectors. 6431 * Makefile.am: Rebuild dependencies. 6432 (ALL_MACHINES): Add cpu-tic30.lo. 6433 (ALL_MACHINES_CFILES): Add cpu-tic30.c. 6434 (BFD32_BACKENDS): Add aout-tic30.lo and coff-tic30.lo. 6435 (BFD32_BACKENDS_CFILES): Add aout-tic30.c and coff-tic30.c. 6436 * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild. 6437 6438Mon Feb 2 12:25:12 1998 Nick Clifton <nickc@cygnus.com> 6439 6440 * elf32-v850.c (v850_elf_store_addend_in_insn): Allow HI16_S reloc 6441 to lag behind LO16 reloc by a couple of instructions. 6442 6443Mon Feb 2 14:09:46 1998 Ian Lance Taylor <ian@cygnus.com> 6444 6445 * Makefile.am ($(srcdir)/bfd-in2.h): Add dummy command to force 6446 make to reexamine the file timestamp. 6447 ($(srcdir)/libbfd.h, $(srcddir)/libcoff.h): Likewise. 6448 6449 * elf64-alpha.c (ELF_MAXPAGESIZE): Change to 0x10000 from 6450 0x100000. 6451 6452Fri Jan 30 19:07:07 1998 Geoff Keating <geoffk@ozemail.com.au> 6453 6454 * elf32-ppc.c (ppc_elf_create_dynamic_sections): New procedure 6455 to create .dynsbss and .rela.sbss sections. 6456 (ppc_elf_adjust_dynamic_symbol): Put space for small data to be 6457 copied from dynamic objects into .sbss. 6458 (ppc_elf_size_dynamic_sections): Strip .rela.sbss if we don't 6459 use it. Correct typo of .rela.sdata2. 6460 (ppc_elf_finish_dynamic_symbol): Generate reloc to where we 6461 put the data, which may now be in .sbss. 6462 (ppc_elf_relocate_section): A SDAREL16 reloc can be in dynsbss. 6463 (elf_backend_create_dynamic_sections): Define as 6464 ppc_elf_create_dynamic_sections. 6465 6466 * elf32-ppc.c (ppc_elf_check_relocs): Don't emit R_PPC_REL* relocs 6467 against _GLOBAL_OFFSET_TABLE_. 6468 (ppc_elf_relocate_section): Don't emit R_PPC_REL32 relocs in 6469 shared libraries which refer to local symbols. Make sure that the 6470 test for allocating space for a reloc in a shared object is the 6471 same as the test for emitting a reloc. 6472 6473Thu Jan 29 15:55:35 1998 J.J. van der Heijden <J.J.vanderHeijden@student.utwente.nl> 6474 6475 * config.bfd (i[3456]-*-mingw32*): New target. 6476 * acinclude.m4 (BFD_BINARY_OPEN): Check for mingw32. 6477 * aclocal.m4, configure: Rebuild. 6478 6479Wed Jan 28 13:41:26 1998 Ian Lance Taylor <ian@cygnus.com> 6480 6481 * elf.c (_bfd_elf_close_and_cleanup): Only check the strtab if we 6482 have a bfd_object. 6483 6484Tue Jan 27 21:43:55 1998 Richard Henderson <rth@cygnus.com> 6485 6486 Sparc v9 ABI compliant PLT: 6487 * elf64-sparc.c (PLT_HEADER_SIZE): V9 ABI uses 4 entries. 6488 (plt_templates, sparc64_elf_build_plt_entry): Delete. 6489 (LARGE_PLT_THRESHOLD): New define. 6490 (GOT_RESERVED_ENTRIES): V9 ABI only uses 1. 6491 (sparc64_elf_build_plt): New function. 6492 (sparc64_elf_plt_entry_offset): Likewise. 6493 (sparc64_elf_plt_ptr_offset): Likewise. 6494 (sparc64_elf_adjust_dynamic_symbol): Change h->plt_offset to 6495 contain the index for convenience. Skip the initial entries 6496 in .rela.plt. 6497 (sparc64_elf_size_dynamic_sections): Zero the allocated contents 6498 memory for the benefit of .rela.plt. 6499 (sparc64_elf_relocate_section): Call sparc64_elf_plt_entry_offset. 6500 (sparc64_elf_finish_dynamic_symbol): Kill template stuff. Use 6501 sparc64_elf_plt_entry_offset & sparc64_elf_plt_ptr_offset for reloc. 6502 (sparc64_elf_finish_dynamic_sections): DT_PLTGOT points to .plt. 6503 Call sparc64_elf_build_plt. 6504 (elf_backend_want_got_plt): No. 6505 (elf_backend_plt_readonly): No. 6506 (elf_backend_plt_alignment): 8. 6507 6508 * elf.c (_bfd_elf_close_and_cleanup): New function; free the shstrtab. 6509 * elf-bfd.h (_bfd_elf_close_and_cleanup): Declare it. 6510 * elfxx-target.h (bfd_elfNN_close_and_cleanup): Arrange for it 6511 to be called. 6512 6513Tue Jan 27 21:45:15 1998 Jeffrey A Law (law@cygnus.com) 6514 6515 * archures.c (bfd_mach_mips*): Add definitions for various MIPS 6516 processors. 6517 * cpu-mips.c (arch_info_struct): Add mips variants. 6518 * bfd-in2.h: Rebuilt. 6519 6520Tue Jan 27 15:06:04 1998 Nick Clifton <nickc@cygnus.com> 6521 6522 * coff-arm.c (coff_arm_relocate_section): Preserve the contents of 6523 t2a3_b_insn. 6524 6525Tue Jan 27 12:47:27 1998 Robert Lipe <robertl@dgii.com> 6526 6527 * config.bfd (i[3456]86-sco3.2v5*): ELF now the default. 6528 (i[3456]86sco3.2v5*coff): New target. 6529 6530Mon Jan 26 15:41:30 1998 Ian Lance Taylor <ian@cygnus.com> 6531 6532 * bfd-in2.h: Rebuild with changes to chew--tab expansion. 6533 6534Thu Jan 22 21:26:48 1998 Richard Henderson <rth@cygnus.com> 6535 6536 * bfd.c (bfd_get_error_handler): Add orthogonal function. 6537 * bfd-in2.h: Regenerate. 6538 6539Thu Jan 22 21:13:39 1998 Richard Henderson <rth@cygnus.com> 6540 6541 * tekhex.c (tekhex_write_object_contents): Check for no symbols. 6542 6543Wed Jan 21 21:19:03 1998 Ian Lance Taylor <ian@cygnus.com> 6544 6545 * coff-i386.c (coff_i386_rtype_to_howto): If COFF_WITH_PE, don't 6546 adjust addend for an output common symbol (from Jimmy Blair 6547 <jimmyb@wrs.com>). If COFF_WITH_PE, adjust addend for PC relative 6548 defined symbol to counteract adjustment made in generic relocation 6549 code. 6550 6551 * dwarf2.c: Include sysdep.h, not stdio.h and stdlib.h. 6552 6553Wed Jan 21 21:16:06 1998 Manfred Hollstein <manfred@s-direktnet.de> 6554 6555 * coff-m88k.c (GET_SCNDHR_NRELOC): Fix typo in macro name. 6556 (GET_SCNDHR_NLNNO): Likewise. 6557 6558Mon Jan 19 12:49:52 1998 Ian Lance Taylor <ian@cygnus.com> 6559 6560 * cpu-sh.c (arch_info_struct): Correct next field of sh3e. 6561 6562Wed Jan 14 17:23:27 1998 Nick Clifton <nickc@cygnus.com> 6563 6564 * elf32-m32r.c: Add macros to handle NOP insertion. 6565 6566Wed Jan 14 16:15:22 1998 Richard Henderson <rth@cygnus.com> 6567 6568 * xcofflink.c (xcoff_mark_symbol): Don't mark the absolute section. 6569 (xcoff_mark): Likewise. 6570 (xcoff_build_ldsyms): Mark absolute symbols. 6571 6572Wed Jan 14 16:03:11 1998 Richard Henderson <rth@cygnus.com> 6573 6574 * bout.c (b_out_write_object_contents): Sort symbols before output 6575 to keep {CALL,BAL}NAME symbols adjacent. 6576 (b_out_symbol_cmp): New function. 6577 6578For older changes see ChangeLog-9697 6579 6580Local Variables: 6581mode: change-log 6582left-margin: 8 6583fill-column: 74 6584version-control: never 6585End: 6586