ChangeLog revision 77298
12001-03-31 Philip Blundell <philb@gnu.org> 2 3 From 2001-03-26 H.J. Lu <hjl@gnu.org> 4 * elf32-gen.c (elf32_generic_link_add_symbols): New. Check 5 if there are any relocations for generic ELF. 6 (bfd_elf32_bfd_link_add_symbols): Defined to 7 elf32_generic_link_add_symbols. 8 * elf64-gen.c (elf64_generic_link_add_symbols): New. Check 9 if there are any relocations for generic ELF. 10 (bfd_elf64_bfd_link_add_symbols): Defined to 11 elf64_generic_link_add_symbols. 12 132001-03-21 Alan Modra <alan@linuxcare.com.au> 14 15 * elf32-hppa.c (elf32_hppa_set_gp): Check sec->output_section 16 non-NULL before attempting to dereference. 17 182001-03-20 Andreas Schwab <schwab@suse.de> 19 20 * elf32-m68k.c (elf_m68k_relocate_section): Don't need the 21 relocation value when resolving a reference from a debugging 22 section. 23 242001-03-16 Philip Blundell <philb@gnu.org> 25 26 * configure: Regenerate. 27 282001-03-16 Alan Modra <alan@linuxcare.com.au> 29 30 * elf32-hppa.c (elf32_hppa_link_hash_entry): Add maybe_pic_call. 31 (hppa_link_hash_newfunc): Init it. 32 (hppa_type_of_stub): Only use non-PIC to PIC call stub if caller 33 section appears to be non-PIC. 34 (final_link_relocate): Likewise. 35 (elf32_hppa_adjust_dynamic_symbol): Set maybe_pic_call for any 36 possible candidate function, and set pic_call for those that will 37 only have a .plt entry for the PIC call stub. 38 (hppa_handle_PIC_calls): Set maybe_pic_call. 39 40 * elf32-hppa.c: Correct field selector in stub comments. 41 (clobber_millicode_symbols): Formatting fix. 42 432001-03-11 Philip Blundell <philb@gnu.org> 44 45 * configure.in: Set version to 2.11. 46 47 * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT 48 entries that could serve as a definition for a weak symbol. 49 502001-03-07 Andreas Jaeger <aj@suse.de> 51 52 * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of 53 some relocation values. 54 552001-02-28 Andreas Jaeger <aj@suse.de> 56 57 * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation 58 to addend. 59 602001-02-26 Andreas Jaeger <aj@suse.de> 61 62 * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries. 63 642001-02-21 David Mosberger <davidm@hpl.hp.com> 65 66 * cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for 67 C8 said "1" instead of "8". Clarify error string for IMM22: 68 "signed integer" instead of just "integer". 69 702001-02-20 Andreas Jaeger <aj@suse.de> 71 72 * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Don't make 73 PLT entries that could serve as a definition for a weak symbol. 74 752001-02-18 David O'Brien <obrien@FreeBSD> 76 77 * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat 78 FreeBSD/i386-CURRENT differently until I can figure out the needed 79 corefile changes. 80 * configure: Regenerate. 81 * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm, 82 FreeBSD/PowerPC, and FreeBSD/sparc64. 83 842001-02-14 Philip Blundell <pb@futuretv.com> 85 86 From 2001-02-06 H.J. Lu <hjl@gnu.org> 87 * bfd/peicode.h (coff_swap_filehdr_in): Remove the e_magic 88 checking. 89 (pe_bfd_object_p): Rewrite with external_PEI_DOS_hdr and 90 external_PEI_IMAGE_hdr. 91 922001-02-14 Bo Thorsen <bo@suse.de> 93 94 * elf64-x86-64.c: Small formatting fixes and rearrangements of code. 95 (elf64_86_64_size_info): Struct added to fix a problem 96 with the hashtable string entries. 97 (elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt. 98 (elf64_x86_64_size_dynamic_sections): A FIXME removed. 99 (elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and 100 remove the FIXME for this. 101 (elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt 102 section. Also removed the FIXME for it. 103 (x86_64_elf_howto_table): Use bfd_elf_generic_reloc. 104 (ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker. 105 (elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing. 106 1072001-02-14 Philip Blundell <pb@futuretv.com> 108 109 From 2001-02-08 H.J. Lu <hjl@gnu.org> 110 * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_32 111 relocation entries for weak definitions when building DSO with 112 -Bsymbolic. 113 1142001-02-13 Richard Henderson <rth@redhat.com> 115 116 * elfxx-ia64.c (elfNN_ia64_final_link): Set __gp if required 117 and not user provided. 118 1192001-02-13 Alan Modra <alan@linuxcare.com.au> 120 121 * elf32-hppa.c (elf32_hppa_set_gp): Handle weak $global$. If 122 $global$ referenced but not defined, set its value here. 123 1242001-02-09 Bo Thorsen <bo@suse.de> 125 126 * elf64-x86-64.c (elf64_x86_64_check_relocs): Set .rela.got section 127 alignment to 3. 128 (elf64_x86_64_check_relocs): Write R_X86_64_GOTPCREL GOT entry 129 and relocation. 130 (elf64_x86_64_relocate_section): Fix formatting. 131 (elf64_x86_64_relocate_section): Fix addend for relocation of 132 R_X86_64_(8|16|32|PC8|PC16|PC32). 133 134Mon Feb 12 17:44:39 CET 2001 Jan Hubicka <jh@suse.cz> 135 136 * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL. 137 1382001-02-10 Nick Clifton <nickc@redhat.com> 139 140 * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC 141 rel, it will be handled later on. 142 1432001-02-09 David Mosberger <davidm@hpl.hp.com> 144 145 * elfxx-ia64.c (is_unwind_section_name): New function. Returns 146 true if section name is an unwind table section name. 147 (elfNN_ia64_additional_program_headers): Count each unwind section 148 separately. 149 (elfNN_ia64_modify_segment_map): Install one unwind program header 150 for each unwind separate section. Note: normally the linker 151 script merges the unwind sections that go into a single segment, 152 so this still generates at most one unwind program header per 153 segment. 154 155 * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section 156 name for SHT_IA_64_UNWIND, not just .IA_64.unwind. 157 (elfNN_ia64_fake_sections): Mark sections with names that start 158 with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64 159 unwind section. 160 161 * elfxx-ia64.c (elfNN_ia64_final_write_processing): New function. 162 Use it to make sh_info in unwind section point to the text section 163 it applies to. 164 1652001-02-07 Mark Elbrecht <snowball3@bigfoot.com> 166 167 * coffgen.c (coff_find_nearest_line): If stabs info is successfully 168 found, do not attempt to find dwarf2 info before returning. 169 1702001-01-30 Alan Modra <alan@linuxcare.com.au> 171 172 * elf64-hppa.c (elf64_hppa_elf_get_symbol_type): New function. 173 (elf_backend_get_symbol_type): Define. 174 (elf64_hppa_object_p): Set architecture and machine from elf 175 header flags. 176 1772001-01-30 Curtis L. Janssen <cljanss@ca.sandia.gov> 178 179 * elf64-alpha.c (elf64_alpha_find_nearest_line): Query dwarf2 180 before mdebug. 181 1822001-01-26 Richard Henderson <rth@redhat.com> 183 184 * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Return false 185 for non-default visibility. 186 * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise, but 187 delete ugly macro and replace with pretty function. 188 1892001-01-25 Mark Elbrecht <snowball3@bigfoot.com> 190 191 * coff-go32.c: Update copyright. 192 * coff-stgo32.c: Likewise. 193 * coff-go32.c (COFF_LONG_FILENAMES): Define. 194 * coff-stgo32.c (COFF_LONG_FILENAMES): Likewise. 195 * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Remove .bss entry. 196 * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. 197 1982001-01-25 Kazu Hirata <kazu@hxi.com> 199 200 * bfd-in2.h: Rebuild. 201 * libbfd.h: Likewise. 202 2032001-01-23 H.J. Lu <hjl@gnu.org> 204 205 * bfd-in2.h: Rebuild. 206 2072001-01-23 H.J. Lu <hjl@gnu.org> 208 209 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_buf) 210 is NULL or PRIV(vms_rec) is outside of the buffer. 211 2122001-01-23 Kazu Hirata <kazu@hxi.com> 213 214 * coff64-rs6000.c: Fix formatting. 215 * coff-arm.c: Likewise. 216 * coffgen.c: Likewise. 217 * cofflink.c: Likewise. 218 * coff-mcore.c: Likewise. 219 * coff-mips.c: Likewise. 220 * coff-pmac.c: Likewise. 221 * coff-ppc.c: Likewise. 222 * coff-rs6000.c: Likewise. 223 * elf32.c: Likewise. 224 * elf32-fr30.c: Likewise. 225 * elf32-i370.c: Likewise. 226 * elf32-i860.c: Likewise. 227 * elf32-m32r.c: Likewise. 228 * elf32-m68k.c: Likewise. 229 * elf32-mcore.c: Likewise. 230 * elf32-ppc.c: Likewise. 231 * elf32-sh.c: Likewise. 232 * elf32-v850.c: Likewise. 233 * elf64-alpha.c: Likewise. 234 * elf64-sparc.c: Likewise. 235 * elflink.c: Likewise. 236 * elflink.h: Likewise. 237 * elf-m10200.c: Likewise. 238 * elf-m10300.c: Likewise. 239 * elfxx-ia64.c: Likewise. 240 241 * aoutx.h: Fix formatting. 242 * bfd.c: Likewise. 243 * bfd-in2.h: Likewise. 244 * bfd-in.h: Likewise. 245 * cpu-i386.c: Likewise. 246 * cpu-m68hc11.c: Likewise. 247 * dwarf2.c: Likewise. 248 * elf64-x86-64.c: Likewise. 249 * format.c: Likewise. 250 * freebsd.h: Likewise. 251 * hash.c: Likewise. 252 * hp300hpux.c: Likewise. 253 * hppabsd-core.c: Likewise. 254 * hpux-core.c: Likewise. 255 2562001-01-22 Bo Thorsen <bo@suse.de> 257 258 * elf64-x86-64.c: Added PIC support for X86-64. 259 (elf64_x86_64_link_hash_newfunc): Function added. 260 (elf64_x86_64_link_hash_table_create): Likewise. 261 (elf64_x86_64_check_relocs): Likewise. 262 (elf64_x86_64_gc_mark_hook): Likewise. 263 (elf64_x86_64_gc_sweep_hook): Likewise. 264 (elf64_x86_64_adjust_dynamic_symbol): Likewise. 265 (elf64_x86_64_size_dynamic_sections): Likewise. 266 (elf64_x86_64_discard_copies): Likewise. 267 (elf64_x86_64_finish_dynamic_symbol): Likewise. 268 (elf64_x86_64_finish_dynamic_sections): Likewise. 269 (elf64_x86_64_relocate_section): Add relocation of PIC sections. 270 2712001-01-21 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 272 273 * Makefile.am (install-data-local): Make use of $(DESTDIR). 274 * Makefile.in: Regenerate. 275 2762001-01-21 Kazu Hirata <kazu@hxi.com> 277 278 * coff-a29k.c: Fix formatting. 279 2802001-01-19 H.J. Lu <hjl@gnu.org> 281 282 * elf32-i386.c (elf_i386_check_relocs): Report files with bad 283 relocation section names. 284 (elf_i386_relocate_section): Report files with bad relocation 285 section names and return false. 286 2872001-01-17 Bo Thorsen <bo@suse.de> 288 289 * targets.c: Alphabetize list of xvecs. 290 2912001-01-14 Alan Modra <alan@linuxcare.com.au> 292 293 * config.bfd: Add linux target variant for elfxx-hppa. 294 * configure.in: Recognize bfd_elf32_hppa_linux_vec and 295 bfd_elf64_hppa_linux_vec. 296 * configure: Regenerate. 297 * elf64-hppa.c: Include elf64-target.h again to support linux 298 target variant. 299 (elf64_hppa_post_process_headers): Set ELFOSABI_LINUX for linux. 300 * elf32-hppa.c: Include elf32-target.h again to support linux 301 target variant. 302 (elf32_hppa_post_process_headers): New function. 303 (elf_backend_post_process_headers): Define. 304 * targets.c (bfd_target_vector): Add bfd_elf64_hppa_linux_vec and 305 bfd_elf32_hppa_linux_vec. 306 307 * elf32-hppa.c (elf32_hppa_link_hash_table): Add text_segment_base, 308 and data_segment_base fields. 309 (elf32_hppa_link_hash_table_create ): Init them. 310 (elf32_hppa_check_relocs): Update comments. 311 (hppa_record_segment_addr): New function. 312 (elf32_hppa_relocate_section): Call it. 313 (final_link_relocate): Handle R_PARISC_SEGREL32. 314 (elf32_hppa_final_link): New function. 315 (bfd_elf32_bfd_final_link): Define to call it. 316 (hppa_unwind_entry_compare): New function. 317 * cache.c (bfd_open_file): Create files in write+read mode. 318 319 * elf-hppa.h (elf_hppa_howto_table): Set bitsize value for 320 SEGREL32 and numerous other relocs. Change duplicate 321 R_PARISC_NONE relocs to R_PARISC_UNIMPLEMENTED. 322 323 * opncls.c (bfd_fdopenr): Add parens like the comment says around 324 O_ACCMODE. 325 326 * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Don't create 327 .plt entries for DT_INIT and DT_FINI. 328 (elf32_hppa_finish_dynamic_sections): Remove special handling of 329 DT_INIT and DT_FINI. 330 331 * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Use 16-bit 332 offsets for stub .plt access if wide mode. Check offset in range. 333 3342001-01-13 Nick Clifton <nickc@redhat.com> 335 336 * elf32-fr30.c (fr30_elf_howto_table): Remove spurious blank 337 line. 338 339 * coffcode.h (coff_canonicalize_reloc): Remove spurious blank 340 line. 341 3422001-01-12 Alan Modra <alan@linuxcare.com.au> 343 344 * configure.in ([bfd_elf64_x86_64_vec]): Set target64. 345 * configure: Regenerate. 346 3472001-01-11 Peter Targett <peter.targett@arccores.com> 348 349 * bfd-in2.h (bfd_architecture): Add bfd_mach_arc_5, 350 bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8 for ARC variants. 351 * cpu-arc.c (arch_info_struct): Add entries for variants. 352 (bfd_arc_arch) Set default to bfd_mach_arc_5. 353 (arc_get_mach) Don't assume machine names prefixed arc- before 354 testing. 355 * elf32-arc.c (arc_elf_object_p): Set machine number based on new 356 selections. 357 (arc_elf_final_write_processing) Likewise. 358 (ELF_MACHINE_CODE) Use EM_ARC. 359 3602001-01-10 Nick Clifton <nickc@redhat.com> 361 362 * coff-arm.c (LOCAL_LABEL_PREFIX): Change definition to "". 363 3642001-01-07 Philip Blundell <philb@gnu.org> 365 366 * README: Replace `bug-gnu-utils@gnu.org' with 367 `bug-binutils@gnu.org'. 368 3692001-01-04 Kazu Hirata <kazu@hxi.com> 370 371 * som.c: Fix formatting. 372 3732001-01-03 Kazu Hirata <kazu@hxi.com> 374 375 * ecoffswap.h: Fix formatting. 376 * elf-bfd.h: Likewise. 377 * elfarm-nabi.c: Likewise. 378 * elfarm-oabi.c: Likewise. 379 * elfcode.h: Likewise. 380 * elfcore.h: Likewise. 381 * elflink.c: Likewise. 382 * elflink.h: Likewise. 383 * elfxx-ia64.c: Likewise. 384 * elfxx-target.h: Likewise. 385 * libbfd.c: Likewise 386 * linker.c: Likewise. 387 * lynx-core.c: Likewise. 388 3892001-01-02 Kazu Hirata <kazu@hxi.com> 390 391 * pc532-mach.c: Fix formatting. 392 * pe-arm.c: Likewise. 393 * pe-i386.c: Likewise. 394 * pe-mips.c: Likewise. 395 * pe-ppc.c: Likewise. 396 * pe-sh.c: Likewise. 397 * pei-mips.c: Likewise. 398 * pei-sh.c: Likewise. 399 * peicode.h: Likewise. 400 * ppcboot.c: Likewise. 401 * ptrace-core.c: Likewise. 402 4032001-01-01 Kazu Hirata <kazu@hxi.com> 404 405 * reloc.c: Fix formatting. 406 * riscix.c: Likewise. 407 * rs6000-core.c: Likewise. 408 * xcoff-target.h: Likewise. 409 4102000-12-29 Hans-Peter Nilsson <hp@bitrange.com> 411 412 * elfcode.h (elf_object_p): Also restore the bfd mach field on 413 error, by calling bfd_default_set_arch_mach with incoming 414 values. 415 4162000-12-26 Kazu Hirata <kazu@hxi.com> 417 418 * vaxnetbsd.c: Fix formatting. 419 * versados.c: Likewise. 420 * vms-gsd.c: Likewise. 421 * vms-hdr.c: Likewise. 422 * vms-misc.c: Likewise. 423 4242000-12-25 Alexandre Oliva <aoliva@redhat.com> 425 426 * archive.c (coff_write_armap): Don't write more than symbol_count 427 `archive_member_file_ptr's. 428 4292000-12-25 Kazu Hirata <kazu@hxi.com> 430 431 * vms-tir.c: Fix formatting. 432 4332000-12-23 Kazu Hirata <kazu@hxi.com> 434 435 * vms.c: Fix formatting. 436 * vms.h: Likewise. 437 4382000-12-21 Santeri Paavolainen <santtu@ssh.com> 439 440 * vms-hdr.c: Include alloca.h if HAVE_ALLOCA_H is defined. 441 442 * peicode.h (pe_ILF_object_p): Add const to import of TARGET_LITTLE_SYM. 443 444 * elf32-m32r.c (m32r_elf_generic_reloc): Add cast to avoid (void *) 445 arithmetic. 446 447 * elf32-fr30.c: Add casts to avoid (void *) arithmetic. 448 449 * coffcode.h (styp_to_sec_flags): Add empty statement after label. 450 4512000-12-21 Richard Sandiford <rsandifo@redhat.com> 452 453 * libbfd.c (bfd_get_bits): Added 454 (bfd_put_bits): Likewise 455 * bfd-in.h: Declared the above. 456 * bfd-in2.h: Regenerated. 457 4582000-12-20 Kazu Hirata <kazu@hxi.com> 459 460 * targets.c: Fix formatting. 461 * tekhex.c: Likewise. 462 * trad-core.c: Likewise. 463 4642000-12-19 Kazu Hirata <kazu@hxi.com> 465 466 * sco5-core.c: Fix formatting. 467 * section.c: Likewise. 468 * sparclinux.c: Likewise. 469 * sparclynx.c: Likewise. 470 * sparcnetbsd.c: Likewise. 471 * srec.c: Likewise. 472 * stabs.c: Likewise. 473 * stab-syms.c: Likewise. 474 * sunos.c: Likewise. 475 * syms.c: Likewise. 476 * sysdep.h: Likewise. 477 4782000-12-18 Nick Clifton <nickc@redhat.com> 479 480 * coff-arm.c (EXTRA_S_FLAGS): Only define if not already 481 defined. 482 * epoc-pe-arm.c (EXTRA_S_FLAGS): Define. 483 * epoc-pei-arm.c (EXTRA_S_FLAGS): Define. 484 4852000-12-18 Nick Clifton <nickc@redhat.com> 486 487 * vms-misc.c (_bfd_vms_get_record): Add default case to 488 file_format switch. 489 4902000-12-15 Miloslav Trmac <mitr@volny.cz> 491 492 * elfcore.h (elf_core_file_p): Move to the start of the program 493 headers before attempting to read them. 494 4952000-12-14 Kazu Hirata <kazu@hxi.com> 496 497 * peigen.c: Fix formatting. 498 * som.c: Likewise. 499 * som.h: Likewise. 500 5012000-12-13 Kazu Hirata <kazu@hxi.com> 502 503 * peigen.c: Fix formatting. 504 5052000-12-12 Jim Wilson <wilson@redhat.com> 506 507 * elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *. 508 5092000-12-08 Mark Salter <msalter@redhat.com> 510 511 * binary.c (binary_set_section_contents): Ignore sections 512 with zero size. 513 5142000-12-12 Kazu Hirata <kazu@hxi.com> 515 516 * m68klinux.c: Fix formatting. 517 * m68knetbsd.c: Likewise. 518 * mipsbsd.c: Likewise. 519 * netbsd-core.c: Likewise. 520 * netbsd.h: Likewise. 521 * newsos3.c: Likewise. 522 * nlm32-alpha.c: Likewise. 523 * nlm32-i386.c: Likewise. 524 * nlm32-ppc.c: Likewise. 525 * nlm32-sparc.c: Likewise. 526 * nlmcode.h: Likewise. 527 * nlmswap.h: Likewise. 528 * nlm-target.h: Likewise. 529 * ns32knetbsd.c: Likewise. 530 5312000-12-10 Fred Fish <fnf@be.com> 532 533 * elflink.h (elf_link_output_extsym): Don't complain about undefined 534 symbols in shared objects if allow_shlib_undefined is true. 535 5362000-12-12 Nick Clifton <nickc@redhat.com> 537 538 * cpu-sh.c: Fix formattng. 539 * elf.c: Fix formattng. 540 * elf32-mips.c: Fix formattng. 541 * elf32-sh.c: Fix formattng. 542 * elf64-alpha.c: Fix formattng. 543 5442000-12-09 Nick Clifton <nickc@redhat.com> 545 546 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Pass 547 dwarf2_find_line_info as last parameter to invocation of 548 _bfd_dwarf2_find_nearest_line. 549 * elf32-arm.h (elf32_arm_find_nearest_line): Pass 550 dwarf2_find_line_info as last parameter to invocation of 551 _bfd_dwarf2_find_nearest_line. 552 5532000-12-08 Mark Elbrecht <snowball3@bigfoot.com> 554 555 * Makefile.am (BFD32_BACKENDS): Move dwarf2.lo from here... 556 (BFD_LIBS): ...to here. 557 (BFD32_BACKENDS_CFILES): Move dwarf2.c from here... 558 (BFD_LIBS_CFILES): ...to here. 559 * Makefile.in: Regenerate. 560 * configure.in: Remove dwarf.lo from the elf shell variable. 561 * configure: Regenerate. 562 * libcoff-in.h (coff_tdata): Add pointer dwarf2_find_line_info. 563 * libcoff.h: Regenerate. 564 * coffgen.c (coff_find_nearest_line): Call 565 _bfd_dwarf2_find_nearest_line. 566 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add parameter. Update 567 accordingly. 568 (read_abbrevs): Likewise 569 (decode_line_info): Likewise. 570 (parse_comp_unit): Likewise. 571 (comp_unit_find_nearest_line): Likewise. 572 * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. 573 * libbfd.h: Regenerate. 574 * elf.c (_bfd_elf_find_nearest_line): Update call. 575 * elf-bfd.h (elf_obj_tdata): Change dwarf2_find_line_info to type PTR. 576 * dwarf2.c (concat_filename): Use IS_ABSOLUTE_PATH. 577 * coffcode.h (STYP_XCOFF_DEBUG, STYP_DEBUG_INFO): New macros. 578 (sec_to_styp_flags): Use them. Handle DWARF2 sections. 579 (styp_to_sec_flags): Handle DWARF2 sections. 580 * elf32-arm.h (elf32_arm_find_nearest_line): Add parameter to call 581 to _bfd_find_nearest_line. 582 * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Add parameter to 583 call to _bfd_find_nearest_line. 584 5852000-12-08 Kazu Hirata <kazu@hxi.com> 586 587 * coffgen.c: Fix formatting. 588 * elf-m10300.c: Likewise. 589 * elf32-i386.c: Likewise. 590 * elf32-i960.c: Likewise. 591 * elf32-m68k.c: Likewise. 592 * elf32-mcore.c: Likewise. 593 * elf32-ppc.c: Likewise. 594 * elf32-sh.c: Likewise. 595 * elf32-sparc.c: Likewise. 596 * elf32-v850.c: Likewise. 597 * elf64-alpha.c: Likewise. 598 * elf64-hppa.c: Likewise. 599 * elf64-mips.c: Likewise. 600 * elf64-sparc.c: Likewise. 601 6022000-12-07 Kazu Hirata <kazu@hxi.com> 603 604 * elf32-ppc.c: Fix formatting. 605 * elf64-x86-64.c: Likewise. 606 6072000-12-06 Ulf Carlsson <ulfc@engr.sgi.com> 608 609 From Ralf Baechle <ralf@gnu.org> 610 611 * elf32-mips.c (elf32_mips_merge_private_bfd_data): Always permit 612 BFDs containing no sections or empty .text, .data or .bss sections 613 to be merged, regardless of their flags. 614 6152000-12-06 Kazu Hirata <kazu@hxi.com> 616 617 * elf32-m32r.c: Fix formatting. 618 * elf32-m68hc11.c: Likewise. 619 * elf32-m68hc12.c: Likewise. 620 * elf32-m68k.c: Likewise. 621 * elf32-mcore.c: Likewise. 622 * elf32-pj.c: Likewise. 623 * elf32-ppc.c: Likewise. 624 6252000-12-05 Kazu Hirata <kazu@hxi.com> 626 627 * elf32-fr30.c: Fix formatting. 628 * elf32-hppa.c: Likewise. 629 * elf32-i370.c: Likewise. 630 * elf32-i386.c: Likewise. 631 * elf32-i860.c: Likewise. 632 * elf32-i960.c: Likewise. 633 6342000-12-03 Kazu Hirata <kazu@hxi.com> 635 636 * elf32-arm.h: Fix formatting. 637 * elf32-avr.c: Likewise. 638 * elf32-cris.c: Likewise. 639 * elf32-d10v.c: Likewise. 640 * elf32-d30v.c: Likewise. 641 * elf-hppa.h: Likewise. 642 * elf-m10200.c: Likewise. 643 * elf-m10300.c: Likewise. 644 6452000-12-01 Chris Demetriou <cgd@sibyte.com> 646 647 * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mips32 and 648 bfd_mach_mips32_4k. Update FIXME comment. 649 * archures.c (bfd_mach_mips32): New constant. 650 (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to 651 the latter, renumber it. 652 * bfd-in2.h (bfd_mach_mips32): New constant. 653 (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to 654 the latter, renumber it. 655 * cpu-mips.c (I_mips32): New constant. 656 (I_mips4K, I_mips32_4k): Rename the former to the latter. 657 (arch_info_struct): Add bfd_mach_mips32 entry, replace 658 bfd_mach_mips4K entry with bfd_mach_mips32_4k entry. 659 * elf32-mips.c (elf_mips_isa): Add E_MIPS_ARCH_32 case. 660 (elf_mips_mach): Likewise. Also, replace E_MIPS_MACH_MIPS32 661 with E_MIPS_MACH_MIPS32_4K. 662 (_bfd_mips_elf_final_write_processing): Replace 663 bfd_mach_mips4K with bfd_mach_mips32_4k case, add 664 bfd_mach_mips32 case. 665 (_bfd_mips_elf_merge_private_bfd_data): Generalize ISA mixing 666 comparison with support for MIPS32. 667 (_bfd_mips_elf_print_private_bfd_data): Print ISA name for 668 MIPS32. 669 670 * aoutx.h (NAME(aout,machine_type)): Add cases for 671 bfd_mach_mips5 and bfd_mach_mips64. 672 * archures.c (bfd_mach_mips5, bfd_mach_mips64): New constants. 673 * bfd-in2.h (bfd_mach_mips5, bfd_mach_mips64): Likewise. 674 * cpu_mips.c (I_mips5, I_mips64): New definitions. 675 (arch_info_struct): Add entries for bfd_mach_mips5 and 676 bfd_mach_mips64. 677 * elf32-mips.c (elf_mips_isa, elf_mips_mach, 678 _bfd_mips_elf_print_private_bfd_data): Add cases for 679 E_MIPS_ARCH_5 and E_MIPS_ARCH_64. 680 (_bfd_mips_elf_final_write_processing): Add cases for 681 bfd_mach_mips5 and bfd_mach_mips64. 682 683 * bfd/aoutx.h (NAME(aout,machine_type)): Add a 684 bfd_mach_mips_sb1 case. 685 * bfd/archures.c (bfd_mach_mips_sb1): New constant. 686 * bfd/bfd-in2.h (bfd_mach_mips_sb1): New constant. 687 * bfd/cpu-mips.c (I_sb1): New constant. 688 (arch_info_struct): Add entry for bfd_mach_mips_sb1. 689 * bfd/elf32-mips.c (elf_mips_mach): Add case for 690 E_MIPS_MACH_SB1. 691 (_bfd_mips_elf_final_write_processing): Add case for 692 bfd_mach_mips_sb1. 693 6942000-12-01 Joel Sherrill <joel@OARcorp.com> 695 696 * config.bfd (arm-*-rtems*, a29k-*rtems*): New targets. 697 (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets. 698 (sparc*-*-rtems*): Switched from a.out to ELF. 699 7002000-11-30 Jan Hubicka <jh@suse.cz> 701 702 * Makefile.am (BFD64_BACKENDS): Add elf64-x86-64.lo 703 BFD64_BACKENDS_CFILES): Add elf64-x86-64.c 704 (elf64-x86-64.lo): Add dependencies. 705 * archures.c (DESCRIPTION): Add bfd_mach_x86_64, 706 bfd_mach_x86_64_intel_syntax. 707 * elf.c (prep_headers): Use EM_x86_64 for 64bit output. 708 * config.bfd (x86_64): Add. 709 * configure.in: Add support for bfd_elf64_x86_64_vec. 710 * cpu-i386.c (bfd_x86_64_arch_intel_syntax, bfd_x86_64_arch): Add. 711 (bfd_i386_arch, i8086_ar): Link in. 712 * elf64-x86-64.c: New file. 713 * reloc.c (ENUMDOC): Add BFD_RELOC_X86_64*. 714 * targets.c (bfd_elf64_x86_64_vec): Add. 715 (bfd_target_vect): Add bfd_elf64_x86_64_vec. 716 7172000-11-30 Kazu Hirata <kazu@hxi.com> 718 719 * xcofflink.c: Fix formatting. 720 7212000-11-28 Kazu Hirata <kazu@hxi.com> 722 723 * aoutx.h: Fix formatting. 724 * bfd-in.h: Likewise. 725 * bfd-in2.h: Likewise. 726 * cache.c: Likewise. 727 * cisco-core.c: Likewise. 728 * coff64-rs6000.c: Likewise. 729 * coffcode.h: Likewise. 730 * coffswap.h: Likewise. 731 * corefile.c: Likewise. 732 * elf32-mips.c: Likewise. 733 7342000-11-27 Kazu Hirata <kazu@hxi.com> 735 736 * aout-adobe.c: Fix formatting. 737 * coff64-rs6000.c: Likewise. 738 * coffgen.c: Likewise. 739 * cofflink.c: Likewise. 740 7412000-11-27 Philip Blundell <pb@futuretv.com> 742 743 * libcoff-in.h (coff_tdata): Add `strings_written' flag. 744 (obj_coff_strings_written): New accessor macro for above. 745 * libcoff.h: Regenerate. 746 * cofflink.c (_bfd_coff_final_link): Say that we wrote the 747 strings. 748 * coffcode.h (coff_write_object_contents): No need to write out 749 the string table if it's already been done. 750 7512000-11-22 Philip Blundell <pb@futuretv.com> 752 753 * cofflink.c (_bfd_coff_generic_relocate_section): Don't object to 754 weak undefined symbols. 755 7562000-11-24 Nick Clifton <nickc@redhat.com> 757 758 * archures.c (bfd_mach_arm_5TE): Define. 759 (bfd_mach_arm+XScale): Define. 760 * bfd-in2.h: Regenerate. 761 762 * coff-arm.c (coff_arm_reloc_type_lookup): Accept 763 BFD_RELOC_ARM_PCREL_BLX. 764 765 * coffcode.h (coff_set_flags): Set flags for 5t, 5te and 766 XScale machine numbers. 767 768 * config.bfd (xscale-elf): Add target. 769 (xscale-coff): Add target. 770 771 * cpu-arm.c: Add xscale machine name. 772 Add v5t, v5te and XScale machine numbers. 773 7742000-11-23 Kazu Hirata <kazu@hxi.com> 775 776 * aix386-core.c: Fix formatting. 777 7782000-11-22 Jim Wilson <wilson@redhat.com> 779 780 * coff-ia64.c (howto_table): Use EMPTY_HOWTO. 781 (in_reloc_p): Add ATTRIBUTE_UNUSED to unused parameters. 782 * cpu-ia64-opc.c (ins_rsvd, ext_rsvd, ins_const, ext_const): Likewise. 783 (ins_imms_scaled): Initialize sign_bit at function entry. 784 (elf64_ia64_operands): Add missing initializers. 785 * elfxx-ia64.c (elfNN_ia64_reloc, elfNN_ia64_reloc_type_lookup, 786 elfNN_ia64_info_to_howto, elfNN_ia64_fake_sections, 787 elfNN_ia64_add_symbol_hook, elfNN_ia64_is_local_label_name, 788 elfNN_ia64_local_hash_table_init, get_fptr, get_pltoff, 789 elfNN_ia64_adjust_dynamic_symbol): Add ATTRIBUTE_UNUSED for unused 790 parameters. 791 (elfNN_ia64_info_to_howto): Initialize free_relocs, free_contents, 792 and free_extsyms at function entry. 793 (elfNN_add_symbol_hook): Add unsigned cast to bfd_get_gp_size result. 794 (elfNN_ia64_create_dynamic_sections): Delete unused local h. 795 (get_got): Delete unused local srel. 796 (elfNN_ia64_check_relocs): Initialize dynrel_type when declared. 797 (elfNN_ia64_relocate_section): Delete unused local dynindx. 798 7992000-11-21 Kazu Hirata <kazu@hxi.com> 800 801 * coff-a29k.c: Fix formatting. 802 * coff-h8500.c: Likewise. 803 * coff-i960.c: Likewise. 804 * coff-ppc.c: Likewise. 805 * coff-rs6000.c: Likewise. 806 * coff-stgo32.c: Likewise. 807 * coff-tic54x.c: Likewise. 808 * coff-w65.c: Likewise. 809 * cpu-h8500.c: Likewise. 810 * cpu-hppa.c: Likewise. 811 * cpu-ns32k.c: Likewise. 812 * ecoff.c: Likewise. 813 * ecofflink.c: Likewise. 814 8152000-11-21 Nick Clifton <nickc@redhat.com> 816 817 * elf32-sh.c (sh_elf_reloc_loop): Fix compile time warning, and 818 remove possibility of infinite loop. 819 8202000-11-20 Kazu Hirata <kazu@hxi.com> 821 822 * aix386-core.c: Fix formatting. 823 * aout-adobe.c: Likewise. 824 * aout-arm.c: Likewise. 825 * aout-encap.c: Likewise. 826 * aout-ns32k.c: Likewise. 827 * aout-target.h: Likewise. 828 * aout-tic30.c: Likewise. 829 * aoutf1.h: Likewise. 830 * aoutx.h: Likewise. 831 * archive.c: Likewise. 832 * bfd-in.h: Likewise. 833 * bfd-in2.h: Likewise. 834 * bfd.c: Likewise. 835 * bout.c: Likewise. 836 8372000-11-17 H.J. Lu <hjl@gnu.org> 838 839 * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Don't create 840 pltoff entries for DT_INIT and DT_FINI. 841 (elfNN_ia64_final_link): Don't set DT_INIT/FINI entries. 842 (elfNN_ia64_finish_dynamic_sections): Don't fill in DT_INIT/FINI 843 entries. 844 8452000-11-16 Richard Henderson <rth@redhat.com> 846 847 * elfxx-ia64.c (elfNN_ia64_check_relocs): Handle IPLT relocs. 848 (allocate_dynrel_entries): Likewise. 849 (elfNN_ia64_relocate_section): Likewise. Set REL addends correctly. 850 (set_pltoff_entry): Likewise. 851 (ia64_howto_table): Remove R_IA64_SEGBASE, and R_IA64_EPLT[ML]SB 852 (elfNN_ia64_reloc_type_lookup): Likewise. 853 (elfNN_ia64_install_value): Likewise. 854 (elfNN_ia64_relocate_section): Likewise. 855 * reloc.c (BFD_RELOC_IA64_SEGBASE): Remove. 856 (BFD_RELOC_IA64_EPLTMSB, BFD_RELOC_IA64_EPLTLSB): Remove. 857 8582000-11-16 Kazu Hirata <kazu@hxi.com> 859 860 * cpu-a29k.c: Fix formatting. 861 * cpu-alpha.c: Likewise. 862 * cpu-arm.c: Likewise. 863 * cpu-avr.c: Likewise. 864 * cpu-d10v.c: Likewise. 865 * cpu-h8500.c: Likewise. 866 * cpu-hppa.c: Likewise. 867 * cpu-i370.c: Likewise. 868 * cpu-i386.c: Likewise. 869 * cpu-i960.c: Likewise. 870 * cpu-ia64-opc.c: Likewise. 871 * cpu-ia64.c: Likewise. 872 * cpu-m32r.c: Likewise. 873 * cpu-m68hc11.c: Likewise. 874 * cpu-m68hc12.c: Likewise. 875 * cpu-m68k.c: Likewise. 876 * cpu-m88k.c: Likewise. 877 * cpu-mips.c: Likewise. 878 * cpu-ns32k.c: Likewise. 879 * cpu-pj.c: Likewise. 880 * cpu-powerpc.c: Likewise. 881 * cpu-sh.c: Likewise. 882 * cpu-sparc.c: Likewise. 883 * cpu-tic54x.c: Likewise. 884 * cpu-v850.c: Likewise. 885 * cpu-vax.c: Likewise. 886 * cpu-w65.c: Likewise. 887 * cpu-we32k.c: Likewise. 888 * cpu-z8k.c: Likewise. 889 * dwarf1.c: Likewise. 890 * dwarf2.c: Likewise. 891 8922000-11-15 Kazu Hirata <kazu@hxi.com> 893 894 * coff-arm.c: Fix formatting. 895 * coff-ppc.c: Likewise. 896 * coff-rs6000.c: Likewise. 897 * coff-sh.c: Likewise. 898 * coff-sparc.c: Likewise. 899 * coff-tic30.c: Likewise. 900 * coff-tic54x.c: Likewise. 901 * coff-tic80.c: Likewise. 902 * coff-w65.c: Likewise. 903 * coff-we32k.c: Likewise. 904 * coff-z8k.c: Likewise. 905 9062000-11-15 Richard Henderson <rth@redhat.com> 907 908 * elf64-alpha.c (elf64_alpha_check_relocs): Create the reloc 909 section with the same ALLOC|LOAD flags as the source section. 910 9112000-11-14 Jakub Jelinek <jakub@redhat.com> 912 913 * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used 914 by STO_ALPHA constants. 915 9162000-11-14 Kazu Hirata <kazu@hxi.com> 917 918 * coff-pmac.c: Fix formatting. 919 * coff-ppc.c: Likewise. 920 9212000-11-13 H.J. Lu <hjl@gnu.org> 922 923 * elflink.h (elf_link_add_object_symbols): Also add indirect 924 symbols for common symbols with the default version. 925 9262000-11-09 Philip Blundell <pb@futuretv.com> 927 928 * section.c (STD_SECTION): Set gc_mark flag. 929 9302000-11-11 Kazu Hirata <kazu@hxi.com> 931 932 * coff-i960.c: Likewise. 933 * coff-m68k.c: Likewise. 934 * coff-m88k.c: Likewise. 935 * coff-mcore.c: Likewise. 936 * coff-mips.c: Likewise. 937 9382000-11-11 Bernd Schmidt <bernds@cygnus.co.uk> 939 940 * elf32-sh.c (sh_elf_relocate_section): Ignore R_SH_NONE relocs. 941 9422000-11-10 Kazu Hirata <kazu@hxi.com> 943 944 * coff-h8300.c: Fix formatting. 945 * coff-h8500.c: Likewise. 946 * coff-i386.c: Likewise. 947 * coff-i860.c: Likewise. 948 * coff-i960.c: Likewise. 949 * coff-ia64.c: Likewise. 950 9512000-11-09 Kazu Hirata <kazu@hxi.com> 952 953 * archive.c: Fix formatting. 954 * archures.c: Likewise. 955 9562000-11-07 Richard Henderson <rth@redhat.com> 957 958 * elfxx-ia64.c (elf64_ia64_final_link): New local unwind_output_sec. 959 Set it before bfd_elf64_bfd_final_link call. Use it after the call. 960 * section.c (bfd_set_section_contents): Call memcpy if 961 section->contents set and location not equal to contents plus offset. 962 9632000-11-08 Kazu Hirata <kazu@hxi.com> 964 965 * bfd-in.h: Fix formatting. 966 * bfd-in2.h: Likewise. 967 * bfd.c: Likewise. 968 * binary.c: Likewise. 969 * bout.c: Likewise. 970 * coff-a29k.c: Likewise. 971 * coff-alpha.c: Likewise. 972 * coff-apollo.c: Likewise. 973 * coff-aux.c: Likewise. 974 9752000-11-07 Kazu Hirata <kazu@hxi.com> 976 977 * aix386-core.c: Fix formatting. 978 * aoutf1.h: Likewise. 979 * aoutx.h: Likewise. 980 * archures.c: Likewise. 981 * armnetbsd.c: Likewise. 982 9832000-11-07 Alan Modra <alan@linuxcare.com.au> 984 985 * coff-h8300.c (special): Adjust reloc address. 986 9872000-11-06 Steve Ellcey <sje@cup.hp.com> 988 989 * archures.c (bfd_mach_ia64_elf64, bfd_mach_ia64_elf32): Add defines 990 to differentiate elf32 and elf64 on ia64. 991 * bfd-in2.h: Regenerate. 992 * config.bfd: Add target for "ia64*-*-hpux*". 993 * configure.in: Add bfd_elf32_ia64_big_vec to selvecs switch. 994 * configure: Regenerate. 995 * cpu-ia64.c (bfd_ia64_elf32_arch): Add elf32 arch info structure. 996 * targets.c: Add bfd_target bfd_elf32_ia64_big_vec. 997 998 * Makefile.am: Make elf32-ia64.c and elf64-ia64.c derived objects 999 from elfxx-ia64.c. Add depenency rules for making elf32-ia64.lo. 1000 * Makefile.in: Regnerate. 1001 * elf64-ia64.c: Deleted. 1002 * elfxx-ia64.c: New file, paramaterized version of elf64-ia64.c. 1003 10042000-11-06 Kazu Hirata <kazu@hxi.com> 1005 1006 * aout-adobe.c: Fix formatting. 1007 * aout-arm.c: Likewise. 1008 * aout-cris.c: Likewise. 1009 * aout-encap.c: Likewise. 1010 * aout-ns32k.c: Likewise. 1011 * aout-target.h: Likewise. 1012 * aout-tic30.c: Likewise. 1013 10142000-11-05 Philip Blundell <philb@gnu.org> 1015 1016 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit 1017 BFDs containing no sections to be merged, regardless of their flags. 1018 10192000-11-04 Philip Blundell <philb@gnu.org> 1020 1021 * elf32-arm.h (elf32_arm_relocate_section): Suppress error message 1022 if a relocation for an undefined symbol also results in an 1023 overflow. 1024 10252000-11-06 Christopher Faylor <cgf@cygnus.com> 1026 1027 * config.bfd: Add support for Sun Chorus. 1028 10292000-11-05 David O'Brien <obrien@FreeBSD.org> 1030 1031 * configure.in: Recognize alpha-*-freebsd*. 1032 * configure: Regenerate. 1033 10342000-11-02 Luciano Gemme <ishitawa@yahoo.com> 1035 1036 * srec.c (CHUNK): Rename to DEFAULT_CHUNK. 1037 (Chunk): New global variable set by a parameter in objcopy.c. 1038 (S3Forced): New global variable set by a parameter in 1039 objcopy.c. 1040 (srec_set_section_contents): If S3Forced is true, always generate 1041 S3 records. 1042 (srec_write_section): Use 'Chunk' to limit maximum length of S 1043 records. 1044 10452000-11-02 Per Lundberg <plundis@chaosdev.org> 1046 1047 * config.bfd: Add support for i[3456]86-chaosdev-storm-chaos. 1048 * Makefile.in: Regenerate. 1049 * bfd-in2.h: Regenerate. 1050 * po/bfd.pot: Regenerate. 1051 10522000-10-31 Philip Blundell <philb@gnu.org> 1053 1054 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle 1055 EF_SOFT_FLOAT if it is defined. 1056 10572000-10-27 Philip Blundell <philb@gnu.org> 1058 1059 * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse 1060 attempts to mix PIC code with non-PIC, just mark the output as 1061 being position dependent. 1062 (elf32_arm_merge_private_bfd_data): Likewise. Print an error 1063 message for EF_SOFT_FLOAT mismatches. Display diagnostics for 1064 all mismatches, not just the first one. 1065 10662000-10-25 Chris Demetriou <cgd@sibyte.com> 1067 1068 * ieee.c (ieee_archive_p): Plug one of many possible 1069 memory leaks in error handling. 1070 10712000-10-20 Jakub Jelinek <jakub@redhat.com> 1072 1073 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data, 1074 elf32_sparc_object_p, elf32_sparc_final_write_processing): 1075 Support v8plusb. 1076 * elf64-sparc.c (sparc64_elf_merge_private_bfd_data, 1077 sparc64_elf_object_p): Support v9b. 1078 * archures.c: Declare v8plusb and v9b machines. 1079 * bfd-in2.h: Ditto. 1080 * cpu-sparc.c: Ditto. 1081 10822000-10-16 Geoffrey Keating <geoffk@shoggoth.cygnus.com> 1083 1084 * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location 1085 of a GOT reloc. 1086 1087 * elf32-ppc.c (SYMBOL_REFERENCES_LOCAL): New macro. 1088 (SYMBOL_CALLS_LOCAL): New macro. 1089 (ppc_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL. 1090 (ppc_elf_check_relocs): Use SYMBOL_REFERENCES_LOCAL. 1091 (ppc_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL. 1092 (ppc_elf_relocate_section): Use flag variable to determine 1093 whether the relocation refers to a local symbol. 1094 Test whether a PLTREL24 reloc will produce a reloc by looking 1095 to see whether a PLT entry was made. 1096 10972000-10-14 Geoffrey Keating <geoffk@shoggoth.cygnus.com> 1098 1099 * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT 1100 entries that could serve as a definition for a weak symbol. 1101 11022000-10-13 Ulf Carlsson <ulfc@engr.sgi.com> 1103 1104 From Ralf Baechle <ralf@gnu.org> 1105 1106 * elf32-mips.c (mips_elf_create_dynamic_relocation): New argument 1107 local_p. Add symbol value only for non-R_MIPS_REL32 relocations 1108 against local symbols. 1109 (_bfd_mips_elf_finish_dynamic_sections): Undo patch from 2000-10-01. 1110 11112000-10-12 Alan Modra <alan@linuxcare.com.au> 1112 1113 * section.c (struct sec): Add kept_section. 1114 (struct bfd_comdat_info): Remove sec, we can use above. 1115 (STD_SECTION): Add initializer. 1116 (bfd_make_section_anyway): Init here too. 1117 1118 * bfd-in2.h: Regenerate. 1119 1120 * elflink.h (elf_link_add_object_symbols): Remove unnecessary 1121 zeroing of `flags'. 1122 (elf_link_input_bfd): Set all asection->symbol->value's here, and 1123 fudge values for discarded link-once section symbols. 1124 1125 * elf64-hppa.c: Include alloca-conf.h 1126 11272000-10-11 Alan Modra <alan@linuxcare.com.au> 1128 1129 * elf.c (swap_out_syms): Revert 2000-10-07 changes. 1130 1131 * ieee.c (ieee_make_empty_symbol): Oops, bfd_zalloc needs another arg. 1132 11332000-10-10 Alan Modra <alan@linuxcare.com.au> 1134 1135 * ieee.c (ieee_make_empty_symbol): Use bfd_zalloc, not bfd_zmalloc. 1136 11372000-10-10 Tom Rix <trix@redhat.com> 1138 1139 * section.c (bfd_make_section_anyway): Release newsect ptr when 1140 newsect->symbol fails to alloc. Use bfd_release instead of free. 1141 11422000-10-09 Richard Henderson <rth@cygnus.com 1143 1144 * elf64-ia64.c (elf64_ia64_unwind_entry_compare_bfd): New. 1145 (elf64_ia64_unwind_entry_compare): New. 1146 (elf64_ia64_final_link): Sort the .IA_64.unwind section. 1147 11482000-10-07 Alan Modra <alan@linuxcare.com.au> 1149 1150 * elflink.h (size_dynamic_sections): Don't create various tags if 1151 .dynstr is excluded from the link. Don't set first dynsym entry 1152 if dynsymcount is zero. 1153 (elf_bfd_final_link): Don't try to swap out dynamic syms if 1154 .dynsym excluded from the link. Don't try to write any dynamic 1155 sections excluded from the link. 1156 1157 * elf.c (swap_out_syms): Handle global section symbols. 1158 11592000-10-05 DJ Delorie <dj@redhat.com> 1160 1161 * peigen.c (_bfd_pei_swap_scnhdr_out): note extended relocs 1162 * coffcode.h (coff_set_alignment_hook): read extended reloc count 1163 (coff_write_relocs): write extended reloc count 1164 (coff_write_object_contents): account for extended relocs 1165 11662000-10-05 Jim Wilson <wilson@cygnus.com> 1167 1168 * elf-bfd.h (struct elf_backend_data): Add elf_backend_section_flags 1169 field. 1170 * elf.c (_bfd_elf_make_section_from_shdr): Call the 1171 elf_backend_section_flags function. 1172 * elf64-ia64.c (elf64_ia64_section_from_shdr): Delete flag conversion 1173 code. 1174 (elf64_ia64_section_flags): New function containing flag conversion 1175 code. 1176 (elf_backend_section_flags): Define to elf64_ia64_section_flags. 1177 * elfxx-target.h (elf_backend_section_flags): Define. 1178 (elfNN_bed): Initialize elf_backend_section_flags field. 1179 11802000-10-02 Alan Modra <alan@linuxcare.com.au> 1181 1182 * elf32-hppa.c (elf32_hppa_check_relocs): Correct call to 1183 _bfd_elf32_gc_record_vtable. Correct a comment. 1184 11852000-10-01 Ulf Carlsson <ulfc@engr.sgi.com> 1186 1187 From Ralf Baechle <ralf@gnu.org> 1188 1189 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Mark gld 1190 produces binaries with got[1] = 0x80000001 to differenciate them 1191 for the dynamic linker from the broken binaries produced by old 1192 versions. 1193 11942000-09-30 Petr Sorfa <petrs@sco.com> 1195 1196 * elf.c (elfcore_grok_pstatus): Check for size of pxstatus_t. 1197 (elfcore_grok_lwpstatus): Check for size of lwpxstatus_t. 1198 * configure.in: Add check for pxstatus_t and lwpxstatus_t. 1199 * configure: Regenerate. 1200 12012000-09-27 Hans-Peter Nilsson <hp@axis.com> 1202 1203 Define two bfd_targets for absence and presence of leading 1204 underscore on symbols. Make sure to only link same kind. 1205 * elf32-cris.c (cris_elf_object_p, 1206 cris_elf_final_write_processing, cris_elf_print_private_bfd_data, 1207 cris_elf_merge_private_bfd_data): New. 1208 (elf_backend_object_p, elf_backend_final_write_processing, 1209 bfd_elf32_bfd_print_private_bfd_data, 1210 bfd_elf32_bfd_merge_private_bfd_data): Define. 1211 <Target vector definition>: Include elf32-target.h twice with 1212 different macro settings: 1213 (TARGET_LITTLE_SYM): First as bfd_elf32_cris_vec, then as 1214 bfd_elf32_us_cris_vec. 1215 (TARGET_LITTLE_NAME): First as "elf32-cris", then "elf32-us-cris". 1216 (elf_symbol_leading_char): First as 0, then '_'. 1217 (INCLUDED_TARGET_FILE): Define for second include of elf32-target.h. 1218 * config.bfd (cris-*-*): Add bfd_elf32_us_cris_vec to targ_selvecs. 1219 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vector. 1220 * configure: Regenerate. 1221 * targets.c: Declare bfd_elf32_us_cris_vec. 1222 * po/bfd.pot: Regenerate. 1223 12242000-09-29 Momchil Velikov <velco@fadata.bg> 1225 1226 * elf32-arm.h (arm_add_to_rel): Correctly adjust the addend for 1227 R_ARM_THM_PC22 relocations. 1228 12292000-09-29 NIIBE Yutaka <gniibe@chroot.org> 1230 1231 * elflink.h (elf_link_add_object_symbols): Don't bfd_release runpath. 1232 12332000-09-29 Momchil Velikov <velco@fadata.bg> 1234 1235 * elf.c (elf_fake_sections): Do not mark the section SHT_NOBITS if 1236 is has the SEC_HAS_CONTENTS flag set. 1237 12382000-09-28 �rjan Friberg <orjanf@axis.com> 1239 Hans-Peter Nilsson <hp@axis.com> 1240 1241 * aout-cris.c (N_TXTADDR): Define. 1242 12432000-09-28 John David Anglin <dave@hiauly1.hia.nrc.ca> 1244 1245 * som.c: Include alloca-conf.h. 1246 * Makefile.am: "make dep-am" 1247 * Makefile.in: Regenerate. 1248 12492000-09-27 Alan Modra <alan@linuxcare.com.au> 1250 1251 * elf32-hppa.c (plt_stub): New. 1252 (PLT_STUB_ENTRY): Define. 1253 (elf32_hppa_link_hash_table): Change multi_subspace to packed 1254 boolean. Add need_plt_stub, has_12bit_branch and has_17bit_branch. 1255 (elf32_hppa_link_hash_table_create): Init to suit. 1256 (elf32_hppa_check_relocs): Set has_12bit_branch and 1257 has_17bit_branch as appropriate. 1258 (elf32_hppa_adjust_dynamic_symbol): Set need_plt_stub for 1259 non-local functions. 1260 (elf32_hppa_size_dynamic_sections): Correct setting of reltext. 1261 Add space for plt_stub as needed. 1262 (elf32_hppa_finish_dynamic_symbol): Point .plt entries for global 1263 functions at plt_stub. 1264 (elf32_hppa_finish_dynamic_sections): Write plt_stub. 1265 (elf32_hppa_create_dynamic_sections): Leave .plt executable. 1266 1267 * elf32-hppa.h (elf32_hppa_size_stubs): Add group_size param. 1268 * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. Use it instead 1269 of fixed size, and if negative, disable handling of input sections 1270 before stub section. Set up default stub group size depending 1271 on detected branch relocs. 1272 (hppa_build_one_stub): Use lrsel and rrsel for import stubs to 1273 ensure different offsets from sym_value aren't rounded to 1274 different 2k blocks. Use lrsel and rrsel for other stubs too for 1275 consistency rather than necessity. 1276 (elf32_hppa_check_relocs): Handle R_PARISC_DIR14F. 1277 (final_link_relocate): Likewise. 1278 (elf32_hppa_relocate_section): Likewise. 1279 1280 * elf-hppa.h (elf_hppa_howto_table): Add R_PARISC_DIR14F reloc. 1281 (_bfd_elf_hppa_gen_reloc_type): Generate them. 1282 (elf_hppa_final_link_relocate): Handle them. 1283 (elf_hppa_relocate_insn): Likewise. 1284 (_bfd_elf_hppa_gen_reloc_type): Add missing e_ldsel and e_rdsel cases. 1285 12862000-09-26 Hans-Peter Nilsson <hp@axis.com> 1287 1288 * elfcode.h (elf_object_p): Preserve and clear abfd section 1289 information. Restore at error. 1290 12912000-09-26 Paul Sokolovsky <Paul.Sokolovsky@technologist.com> 1292 1293 * peigen.c (_bfd_pei_swap_aouthdr_in): If some DataDirectory 1294 is empty, make sure that its rva also 0. NT loader dislikes 1295 having otherwise. 1296 12972000-09-26 Steve Ellcey <sje@cup.hp.com> 1298 1299 * som.c (som_bfd_derive_misc_symbol_info): Make weak symbols 1300 global by default. 1301 13022000-09-21 Alan Modra <alan@linuxcare.com.au> 1303 1304 * elf32-hppa.c (elf32_hppa_check_relocs): Fix weak sym handling in 1305 currently unused RELATIVE_DYNAMIC_RELOCS code. 1306 (hppa_discard_copies): Likewise. 1307 (elf32_hppa_size_stubs): Size `input_list' array correctly. Correct 1308 comments. Don't check non-code output sections for stub grouping. 1309 13102000-09-20 Alan Modra <alan@linuxcare.com.au> 1311 1312 * section.c (bfd_get_unique_section_name): Return NULL if 1313 bfd_malloc fails. 1314 13152000-09-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> 1316 1317 * elf32-m68k.c (elf_cpu32_plt0_entry): Change the PLT entry 0 1318 instruction sequence to actually work. 1319 (elf_m68k_finish_dynamic_sections): Change the patch-in offset 1320 accordingly. 1321 13222000-09-18 Alexandre Oliva <aoliva@redhat.com> 1323 1324 * elf32-sh.c (sh_elf_relocate_section): Use 1325 _bfd_final_link_relocate to apply the relocation against a section 1326 symbol, when doing relocatable links. 1327 13282000-09-18 Alan Modra <alan@linuxcare.com.au> 1329 1330 * elf32-hppa.c (elf32_hppa_stub_hash_entry): Rename input_section 1331 to id_sec. 1332 (stub_hash_newfunc): Here too. 1333 (hppa_add_stub): And here. 1334 (elf32_hppa_link_hash_table): Remove stub_section_created, 1335 reloc_section_created, first_init_sec and first_fini_sec. Add 1336 stub_group. 1337 (elf32_hppa_link_hash_table_create): Init to suit. 1338 (hppa_get_stub_entry): Add support for grouping stub sections. 1339 (hppa_add_stub): Likewise. Remove sec_count param and init/fini 1340 section code. Index stub vars by section->id. 1341 (elf32_hppa_size_stubs): Likewise. Remove duplicated function 1342 exit paths. Zap allocation of above removed vars. Refine 1343 link-once test. 1344 1345 * elf32-hppa.h (elf32_hppa_size_stubs): Add output_bfd param. 1346 * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. 1347 (hppa_get_stub_entry): Pass in pointer to elf32_hppa_link_hash_table 1348 rather than pointer to bfd_link_info. 1349 (hppa_add_stub): Likewise. 1350 (final_link_relocate): Likewise. 1351 13522000-09-17 David Huggins-Daines <dhd@linuxcare.com> 1353 1354 (elf32_hppa_size_stubs): Don't try to build stubs for discarded 1355 link-once sections. 1356 13572000-09-16 Alexandre Oliva <aoliva@redhat.com> 1358 1359 * elf32-sh.c (ELF_MAXPAGESIZE): Define to 128, to match 1360 ld/emulparams/shelf.sh. 1361 13622000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG> 1363 1364 * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): New function. 1365 * bfd-in.h (bfd_m68k_elf32_create_embedded_relocs): Add declaration. 1366 * bfd-in2.h: Regenerate. 1367 13682000-09-15 Kenneth Block <Kenneth.Block@compaq.com> 1369 1370 * bfd/elf64-alpha.c (elf64_alpha_relax_with_lituse): ld performs 1371 LITUSE relocations incorrectly if -relax is specified on the ld 1372 command line and the displacement field of the load or store 1373 instruction is non-zero. (Patch by paul.winalski@compaq.com) 1374 13752000-09-15 Alan Modra <alan@linuxcare.com.au> 1376 1377 * elf32-hppa.c (hppa_add_stub): Dont set first_init_sec and 1378 first_fini_sec here. 1379 (elf32_hppa_size_stubs): Instead correctly find the first .init 1380 and .fini section here. 1381 13822000-09-15 David Huggins-Daines <dhd@linuxcare.com> 1383 1384 * elf32-hppa.c (clobber_millicode_symbols): New function. 1385 (elf32_hppa_size_dynamic_sections): Call it. 1386 13872000-09-14 Alan Modra <alan@linuxcare.com.au> 1388 1389 * elf32-hppa.c (elf32_hppa_link_hash_entry): Make pic_call 1390 packed. Add plabel, plt_abs packed booleans. 1391 (hppa_link_hash_newfunc): Init new fields. 1392 (PLABEL_PLT_ENTRY_SIZE): Define. 1393 (hppa_stub_name): Use size_t len vars. 1394 (hppa_add_stub): Likewise. 1395 (elf32_hppa_build_stubs): Likewise. 1396 (hppa_build_one_stub): Kill some compiler warnings. 1397 (elf32_hppa_check_relocs): Always generate a plt entry for PLABELs 1398 if dynamic linking. Munge the local plt offsets into 1399 local_got_refcounts. Set h->plabel for all global PLABELs. Use 1400 size_t len vars. Add assert for plabel addend. 1401 (elf32_hppa_gc_sweep_hook): Sweep local plt entries too. 1402 (elf32_hppa_hide_symbol): New function. 1403 (elf_backend_hide_symbol): Define. 1404 (elf32_hppa_adjust_dynamic_symbol): Don't throw away plt entries 1405 with h->plabel set. Don't make plt entries to have dynamic syms 1406 when they have been forced local. If plt entry is used by a 1407 plabel, make it PLABEL_PLT_ENTRY_SIZE. 1408 (elf32_hppa_size_dynamic_sections): Set plt_abs for init fns. 1409 Set up .plt offsets for local syms. 1410 (elf32_hppa_relocate_section): Initialise plt entries for local 1411 syms. Leave weak undefined plabels zero. Make global plabel 1412 relocs against function symbol, and leave the addend zero. 1413 Use *ABS* DIR32 relocs instead of SEGREL32 for dynamic got relocs. 1414 (elf32_hppa_finish_dynamic_symbol): Set up IPLT relocs for 1415 non-dynamic syms. Init extra plt for plabels. Use *ABS* DIR32 1416 relocs instead of SEGREL32 for dynamic got relocs. 1417 (elf32_hppa_finish_dynamic_sections): Reserve one more .got entry. 1418 (elf_backend_got_header_size): Adjust. 1419 (elf32_hppa_set_gp): Calculate an "ideal" LTP. 1420 1421 * elf32-hppa.c (LONG_BRANCH_VIA_PLT): Define. 1422 (hppa_type_of_stub): Use it instead of #if 0 1423 (hppa_discard_copies): Use it here too. 1424 (elf32_hppa_size_dynamic_sections): And here. 1425 1426 * elf32-hppa.c (elf32_hppa_link_hash_table): Remove `offset' field. 1427 (elf32_hppa_link_hash_table_create): And here. 1428 (hppa_build_one_stub): And here. Instead keep track of stub 1429 offset using _raw_size. 1430 (elf32_hppa_size_stubs): Likewise. 1431 (elf32_hppa_build_stubs): Likewise. 1432 (hppa_size_one_stub): Likewise. Resize reloc section too. 1433 1434 * elf32-hppa.c (hppa_add_stub): Correct first_init_sec and 1435 first_fini_sec handling. Don't search for reloc section or set 1436 hplink->reloc_section_created here. 1437 (elf32_hppa_size_stubs): Instead search for reloc sections, and 1438 set reloc_section_created here. 1439 (hppa_handle_PIC_calls): Set ELF_LINK_HASH_NEEDS_PLT. 1440 (elf32_hppa_size_dynamic_sections): Make a .plt entry for DT_INIT 1441 and DT_FINI. 1442 (elf32_hppa_finish_dynamic_sections): Set DT_INIT and DT_FINI. 1443 1444 * elf32-hppa.c (hppa_build_one_stub): Replace `elf_hash_table (info)' 1445 with `hplink->root.'. 1446 (elf32_hppa_check_relocs): Likewise. 1447 (elf32_hppa_gc_sweep_hook): Likewise. 1448 (elf32_hppa_adjust_dynamic_symbol): Likewise. 1449 (hppa_handle_PIC_calls): Likewise. 1450 (elf32_hppa_size_dynamic_sections): Likewise. 1451 (elf32_hppa_set_gp): Likewise. 1452 (elf32_hppa_relocate_section): Likewise. 1453 (elf32_hppa_finish_dynamic_symbol): Likewise. 1454 (elf32_hppa_finish_dynamic_sections): Likewise. 1455 1456 From David Huggins-Daines <dhd@linuxcare.com> 1457 * elf32-hppa.c (hppa_type_of_stub): Generate import stubs for 1458 defined weak symbols in shared links. 1459 (final_link_relocate): Calls to defined weak symbols in shared 1460 objects must go via import stubs, as the target might not be known 1461 at link time. 1462 14632000-09-14 Alexandre Oliva <aoliva@redhat.com> 1464 1465 * elf32-sh.c (sh_elf_howto_table): Moved R_SH_GOT32, R_SH_PLT32, 1466 R_SH_COPY, R_SH_GLOB_DAT, R_SH_JMP_SLOT, R_SH_RELATIVE, 1467 R_SH_GOTOFF, R_SH_GOTPC) to the range from 160 to 167. Replaced 1468 the original entries with EMPTY_HOWTOs, and added new ones to fill 1469 in the gap. 1470 (sh_elf_info_to_howto): Make sure the new gap isn't used. 1471 (sh_elf_relocate_section): Likewise. 1472 14732000-09-13 Anders Norlander <anorland@acc.umu.se> 1474 1475 * cpu-mips.c (arch_info_struct): Add mips:4K 1476 * bfd-in2.h (bfd_mach_mips4K): New define. 1477 * archures.c: Add bfd_mach_mips4K to comment. 1478 * elf32-mips.c (_bfd_mips_elf_final_write_processing): Return 1479 E_MIPS_ARCH_2 for bfd_mach_mips4K. 1480 14812000-09-13 Marco Franzen <marcof@thyron.com> 1482 1483 * som.c (som_write_symbol_strings): Do not used fixed buffers, 1484 use size_t as a counter. 1485 (som_write_space_strings): Similarly. 1486 14872000-09-12 Jason Eckhardt <jle@cygnus.com> 1488 1489 * elf32-i860.c (elf32_i860_relocate_pc26): New function 1490 and prototype. 1491 (elf32_i860_relocate_section): Invoke new function from here. 1492 14932000-09-11 Michael Sokolov <msokolov@ivan.Harhan.ORG> 1494 1495 * elf.c (_bfd_elf_make_section_from_shdr): Make debug_sec_names 1496 static. 1497 14982000-09-10 Michael Sokolov <msokolov@ivan.Harhan.ORG> 1499 1500 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Emit 8 NULs for 1501 target section name instead of dumping core when the target symbol is 1502 undefined. 1503 15042000-09-09 Kazu Hirata <kazu@hxi.com> 1505 1506 * riscix.c: Remove DEFUN. 1507 15082000-09-08 Nick Clifton <nickc@redhat.com> 1509 1510 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not 1511 initialise flags in output bfd if the input bfd is the default 1512 architecture with the default flags. 1513 15142000-09-08 Kazu Hirata <kazu@hxi.com> 1515 1516 * archive.c: Fix formatting. 1517 * coff-arm.c: Likewise. 1518 * doc/chew.c: Likewise. 1519 15202000-09-08 Alan Modra <alan@linuxcare.com.au> 1521 1522 * section.c (bfd_get_unique_section_name): Put a dot before the 1523 numeric suffix. 1524 15252000-09-07 Kazu Hirata <kazu@hxi.com> 1526 1527 * doc/chew.c: Remove all uses of DEFUN and DEFUN_VOID. 1528 * elf.c: Fix formatting. 1529 15302000-09-07 Alexandre Oliva <aoliva@redhat.com> 1531 1532 * config.bfd (sh-*-linux*): Added. 1533 * configure.in (bfd_elf32_shlin_vec, bfd_elf32_shblin_vec): New. 1534 * targets.c: Declare them. 1535 * elf32-sh-lin.c: New file. 1536 * Makefile.am: Compile it. 1537 * elf32-sh.c: Don't override defines from elf32-sh-lin.c. 1538 * configure, Makefile.in: Rebuilt. 1539 15402000-09-06 Geoffrey Keating <geoffk@cygnus.com> 1541 1542 * xcofflink.c (xcoff_link_input_bfd): Include the .tocbss 1543 pseduo-section when determining where the TOC ends. 1544 1545 * coff-rs6000.c (_bfd_xcoff_swap_aux_out): Use bfd_h_put_16 to 1546 output x_tvndx as it is only two bytes wide. 1547 1548 * coff-rs6000.c (xcoff_howto_table): A modifiable branch-absolute 1549 reloc is 26 or 32 bits wide. 1550 1551 * coff-rs6000.c (_bfd_xcoff_rtype2howto): The bitsize is irrelevant 1552 for relocs that don't change anything. Also look at the full 1553 6 bits of bitsize. 1554 15552000-09-06 Philip Blundell <philb@gnu.org> 1556 1557 * config.bfd (arm*-*-uclinux*): New target. 1558 15592000-09-06 Alexandre Oliva <aoliva@redhat.com> 1560 1561 * configure: Rebuilt with new libtool.m4. 1562 15632000-09-06 Alan Modra <alan@linuxcare.com.au> 1564 1565 * section.c (bfd_get_unique_section_name): Avoid c++ reserved 1566 word for variable name. 1567 * bfd-in2.h: Regenerate. 1568 15692000-09-05 Nick Clifton <nickc@redhat.com> 1570 1571 * config.in: Regenerate. 1572 * libbfd.h: Regenerate. 1573 * po/bfd.pot: Regenerate. 1574 * doc/bfdint.texi: Remove CVS date string - it foils compares with 1575 local versions. 1576 15772000-09-05 Steven Johnson <sbjohnson@ozemail.com.au> 1578 1579 * cpu-powerpc.c (arch_info_struct): Added MPC860 Family entry. 1580 15812000-09-05 Alan Modra <alan@linuxcare.com.au> 1582 1583 Shared library and PIC support. 1584 * elf32-hppa.c (PLT_ENTRY_SIZE): New. 1585 (GOT_ENTRY_SIZE): New. 1586 (ELF_DYNAMIC_INTERPRETER): New. 1587 (STUB_SUFFIX): Define. 1588 (LONG_BRANCH_PIC_IN_SHLIB): Define. 1589 (RELATIVE_DYNAMIC_RELOCS): Define. 1590 (enum elf32_hppa_stub_type): New. 1591 (struct elf32_hppa_stub_hash_entry): Rename offset to 1592 stub_offset. Add a number of new fields. 1593 (struct elf32_hppa_link_hash_entry): New. 1594 (struct elf32_hppa_link_hash_table): Add numerous fields. Remove 1595 global_value. 1596 (elf32_hppa_hash_table): Rename to hppa_link_hash_table. 1597 (elf32_hppa_stub_hash_lookup): Rename to hppa_stub_hash_lookup. 1598 (elf32_hppa_stub_hash_newfunc): Rename to stub_hash_newfunc. Init 1599 new fields. 1600 (hppa_link_hash_newfunc): New function. 1601 (elf32_hppa_link_hash_table_create): Use above function. Init new 1602 fields. 1603 (elf32_hppa_stub_name): Rename to hppa_stub_name. Pass in reloc 1604 instead of addend, and remove sym_name from args. Don't use 1605 symbol name for local syms, instead use sym index. 1606 (elf32_hppa_size_of_stub): Rename to hppa_type_of_stub, and return 1607 stub type rather than size. Pass in hash and handle import stub 1608 case. Also pass in reloc instead of offset so we can calculate 1609 PCREL22F and PCREL12F branches properly. 1610 (elf32_hppa_build_one_stub): Rename to hppa_build_one_stub. Build 1611 import and export stubs too. 1612 (elf32_hppa_size_one_stub): Rename to hppa_size_one_stub. Handle 1613 import and export stub sizing. 1614 (elf32_hppa_check_relocs): New function. 1615 (elf32_hppa_adjust_dynamic_symbol): New function. 1616 (hppa_discard_copies): New function. 1617 (elf32_hppa_size_dynamic_sections): New function. 1618 (elf_backend_size_dynamic_sections): Define. 1619 (elf32_hppa_finish_dynamic_symbol): New function. 1620 (elf_backend_finish_dynamic_symbol): Define. 1621 (elf32_hppa_size_stubs): Stash params in link hash table, and move 1622 some local vars into the link hash table too. For shared links, 1623 trundle over function syms, generating export stubs. Handle 1624 PCREL22F branches. Break out stub creation code from here.. 1625 (hppa_add_stub): .. to here. New function. 1626 (elf32_hppa_final_link): Rename to elf32_hppa_set_gp, and don't 1627 call the bfd linker. Use elf_gp to record global pointer. 1628 Calculate a value from sections if $global$ is missing. 1629 (bfd_elf32_bfd_final_link): Define as _bfd_elf32_gc_common_final_link. 1630 (elf32_hppa_gc_mark_hook): New function. 1631 (elf_backend_gc_mark_hook): Define. 1632 (elf32_hppa_gc_sweep_hook): New function. 1633 (elf_backend_gc_sweep_hook): Define. 1634 (elf32_hppa_bfd_final_link_relocate): Rename to final_link_relocate. 1635 Add rel to args, and remove howto, input_bfd, offset, addend, 1636 sym_name as we can recalculate these locally. Handle calls to 1637 dynamic objects, extra PIC relocs, PCREL22F branches. Change 1638 handling of undefined weak syms. Check that stubs are in range. 1639 Only look for import stubs on PCREL17F and PCREL22F relocs. Add 1640 message on hitting a DPREL21L reloc that needs fixing. Subtract 1641 off PC for PCREL14F. Break out code that does a stub lookup from 1642 here.. 1643 (hppa_get_stub_entry): ..to here. New function. 1644 (elf32_hppa_relocate_insn): Merge into final_link_relocate. 1645 (elf32_hppa_relocate_section): Handle got and plt relocs, dynamic 1646 relocs, etc. etc. 1647 (elf32_hppa_finish_dynamic_sections): New function. 1648 (elf_backend_finish_dynamic_sections): Define. 1649 (elf_backend_final_write_processing) Define. 1650 (hppa_handle_PIC_calls): New function. 1651 (elf32_hppa_build_stubs): Call it. Pass link_info to 1652 hppa_build_one_stub. 1653 (elf32_hppa_create_dynamic_sections): New function 1654 to create .plt and .got then set .plt flags correctly. 1655 (elf_backend_create_dynamic_sections): Define. 1656 (elf32_hppa_object_p): New function. 1657 (elf_backend_object_p): Define. 1658 (elf32_hppa_elf_get_symbol_type): New function. 1659 (elf_backend_get_symbol_type): Define. 1660 (elf_backend_can_gc_sections): Define. 1661 (elf_backend_want_got_plt): Define. 1662 (elf_backend_plt_alignment): Set to 2. 1663 (elf_backend_plt_readonly): Define. 1664 (elf_backend_want_plt_sym): Define. 1665 (elf_backend_got_header_size): Reserve one entry. 1666 1667 * elf32-hppa.h (elf32_hppa_build_stubs): Don't pass stub bfd. 1668 (elf32_hppa_size_stubs): Pass in multi_subspace. 1669 (elf32_hppa_set_gp): Declare. 1670 1671 * section.c (SEC_HAS_GOT_REF): Define new flag for asection. 1672 (bfd_get_unique_section_name): New function. 1673 * bfd_in2.h: Regenerate. 1674 1675 * elf64-hppa.c (elf64_hppa_check_relocs): Handle R_PARISC_PCREL12F. 1676 (elf64_hppa_size_dynamic_sections): Remove the FIXME at bfd_zalloc 1677 comment. 1678 1679 From David Huggins-Daines <dhd@linuxcare.com> 1680 * elf64-hppa.c (elf64_hppa_check_relocs): Fix a warning. 1681 (elf64_hppa_mark_exported_functions): Set dyn_h->st_shndx. 1682 (elf64_hppa_link_output_symbol_hook): Test dyn_h->st_shndx has 1683 been updated in finish_dynamic_symbol before modifying function 1684 symbol. 1685 1686 * elf-hppa.h (elf_hppa_howto_table): Restructure into groups of 1687 eight entries. Replace NULL with bfd_elf_generic_reloc. Add 1688 R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT and R_PARISC_PCREL12F. 1689 (_bfd_elf_hppa_gen_reloc_type): Handle R_PARISC_GNU_VT*. Add some 1690 comments. Handle format == 12 for R_HPPA_PCREL_CALL. 1691 (elf_hppa_final_link_relocate): Handle R_PARISC_PCREL12F. 1692 (elf_hppa_relocate_insn): Likewise. Reformat some comments. 1693 (elf_hppa_final_write_processing): Expose it for ARCH_SIZE == 32. 1694 1695 From David Huggins-Daines <dhd@linuxcare.com> 1696 * elf-hppa.h (elf_hppa_is_local_label_name): Accept the SysV/ELF 1697 style of local labels as well. 1698 16992000-09-03 Philip Blundell <philb@gnu.org> 1700 1701 * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate 1702 references to undefined symbols in debugging sections. 1703 17042000-09-02 H.J. Lu <hjl@gnu.org> 1705 1706 * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, 1707 BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, 1708 BFD_RELOC_SH_GOTPC): Move them from the MIPS section to the SH 1709 section. 1710 17112000-09-02 Jason Eckhardt <jle@cygnus.com> 1712 1713 * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro. 1714 (elf32_i860_is_local_label_name): New function and prototype. 1715 17162000-09-02 Nick Clifton <nickc@redhat.com> 1717 1718 * configure.in: Increase version number to 2.10.91. 1719 * configure: Regenerate. 1720 * aclocal.m4: Regenerate. 1721 * config.in: Regenerate. 1722 * po/bfd.pot: Regenerate. 1723 17242000-09-02 Daniel Berlin <dberlin@redhat.com> 1725 1726 * elf.c (_bfd_elf_make_section_from_shdr): Add 1727 .gnu.linkobce.wi. to the list of debug section names. 1728 17292000-09-02 Nick Clifton <nickc@redhat.com> 1730 1731 * dwarf2.c (find_debug_info): New function: Locate a section 1732 containing dwarf2 debug information. 1733 (bfd_dwarf2_find_nearest_line): Find all sections containing 1734 debug information and include them in the stash. 1735 17362000-09-01 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> 1737 1738 * elf32-sh.c (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT, 1739 R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New. 1740 (sh_reloc_map): Add new relocs. 1741 (sh_elf_check_relocs, sh_elf_link_hash_newfunc, 1742 sh_elf_link_hash_table_create, sh_elf_adjust_dynamic_symbol, 1743 sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_symbol, 1744 sh_elf_finishe_dynamic_sections, sh_elf_discard_copies): New 1745 functions. 1746 (ELF_DYNAMIC_INTERPRETER, PLT_ENTRY_SIZE): Define. 1747 (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le, 1748 elf_sh_plt_entry_be, elf_sh_plt_entry_le, 1749 elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): 1750 New array constants. 1751 (elf_sh_plt0_entry, elf_sh_plt_entry, elf_sh_pic_plt_entry): 1752 New variables. 1753 (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset, 1754 elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset, 1755 elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset, 1756 elf_sh_plt_reloc_offset): Define. 1757 (elf_sh_pcrel_relocs_copied, elf_sh_link_hash_entry, 1758 elf_sh_link_hash_table): New structs. 1759 (sh_elf_link_hash_traverse, sh_elf_hash_table): New macros. 1760 (sh_elf_relocate_section, sh_elf_check_relocs): Handle new 1761 relocation types. 1762 (elf_backend_create_dynamic_sections, 1763 bfd_elf32_bfd_link_hash_table_create, 1764 elf_backend_adjust_dynamic_symbol, 1765 elf_backend_size_dynamic_sections, 1766 elf_backend_finish_dynamic_symbol, 1767 elf_backend_finish_dynamic_sections, elf_backend_want_got_plt, 1768 elf_backend_plt_readonly, elf_backend_want_plt_sym, 1769 elf_backend_got_header_size, elf_backend_plt_header_size): 1770 Define. 1771 * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, 1772 BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC): 1773 New relocs. 1774 * bfd-in2.h, libbfd.h: Rebuilt. 1775 17762000-09-01 Alan Modra <alan@linuxcare.com.au> 1777 1778 * elf32-i386.c (elf_i386_finish_dynamic_symbol): Revert 2000-08-27 1779 change. 1780 17812000-08-31 J"orn Rennecke <amylaar@cygnus.co.uk> 1782 1783 * elf32-sh.c (sh_elf_merge_private_data): If ibfd's elf header flags 1784 not initialized, set them to indicate the SH1 instruction set. 1785 17862000-08-31 Alexandre Oliva <aoliva@redhat.com> 1787 1788 * acinclude.m4: Include libtool and gettext macros from the 1789 top level. 1790 * aclocal.m4, configure: Rebuilt. 1791 17922000-08-29 Michael Snyder <msnyder@seadog.cygnus.com> 1793 1794 * elf.c: Eliminate references to __sparcv9 macro; replace with 1795 autoconf variables HAVE_PSINFO32_T etc. 1796 * configure.in: Auto-configure HAVE_PSINFO_32_T, HAVE_PRPSINFO32_T, 1797 HAVE_PSTATUS32_T, HAVE_PRSTATUS32_T, HAVE_PRSTATUS32_T_PR_WHO. 1798 * config.in: Ditto. 1799 * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE) define _SYSCALL32 so it can 1800 detect the above typedefs. (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Ditto. 1801 * aclocal.m4: Ditto. 1802 * configure: Regenerate. 1803 18042000-08-27 Alan Modra <alan@linuxcare.com.au> 1805 1806 * elf32-i386.c (elf_i386_check_relocs): Keep info on relocs copied 1807 for any shared link, not just shared -Bsymbolic. 1808 (elf_i386_size_dynamic_sections): Call elf_i386_discard_copies on 1809 any shared link, and pass link info to it. 1810 (elf_i386_size_dynamic_sections): Update comment. 1811 (elf_i386_discard_copies): Modify to discard relocs for symbols 1812 that have been forced local. 1813 (elf_i386_finish_dynamic_symbol): Don't copy relocs for symbols 1814 that have been forced local. 1815 18162000-08-24 Denis Chertykov <denisc@overta.ru> & Nick Clifton <nickc@redhat.com> 1817 1818 * elflink.h (elf_link_add_object_symbols): Allow common 1819 symbols to have an alignment of 1 if explicitly requested, and 1820 not overridden by other definitions. 1821 18222000-08-22 Doug Kwan <dkwan@transmeta.com> 1823 1824 * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo. 1825 * coffcode.h (coff_set_flags): Add detection of w65 architecture. 1826 18272000-08-22 H.J. Lu <hjl@gnu.org> 1828 1829 * elf-bfd.h (elf_link_hash_table): Add runpath. 1830 1831 * bfd-in.h (bfd_elf_get_runpath_list): New prototype. 1832 * bfd-in2.h: Rebuilt. 1833 1834 * elf.c (_bfd_elf_link_hash_table_init): Initialize the 1835 "runpath" field to NULL. 1836 (bfd_elf_get_runpath_list): New function. 1837 1838 * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and 1839 DT_RUNPATH entries. 1840 18412000-08-22 Alexandre Oliva <aoliva@redhat.com> 1842 1843 * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W, 1844 R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them 1845 explicitly. Improve validation of r_type. 1846 18472000-08-21 H.J. Lu <hjl@gnu.org> 1848 1849 * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the 1850 dynamic allocated content space. Add a comment to remind us that 1851 one day this ought to be fixed. 1852 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. 1853 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. 1854 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. 1855 18562000-08-21 Jason Eckhardt <jle@cygnus.com> 1857 1858 * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate 1859 field with the newly relocated value instead of adding it to the 1860 existing immediate field. 1861 (elf32_i860_relocate_splitn): Likewise. 1862 (elf32_i860_relocate_highadj): Likewise. 1863 18642000-08-16 Jason Eckhardt <jle@cygnus.com> 1865 1866 * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it 1867 was previously just a stub). 1868 18692000-08-16 Alexandre Oliva <aoliva@redhat.com> 1870 1871 * elflink.c (_bfd_elf_create_got_section): Don't abort(). 1872 Formatting fixes. 1873 (_bfd_elf_create_dynamic_sections): Likewise. 1874 18752000-08-16 Andrew Macleod <amacleod@cygnus.com> 1876 1877 * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address 1878 for undefined symbols to be the beginning of the section. 1879 1880 * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate 1881 four extra entries at the beginning of the .rela.plt section. 1882 (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt 1883 section to account for the four reserved entries in the .plt section. 1884 18852000-08-15 Geoffrey Keating <geoffk@cygnus.com> 1886 1887 * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0 1888 to the list of NOPs we recognize after a branch-and-link. 1889 Use the ori NOP when one is needed. 1890 1891 * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation 1892 for large archives. 1893 18942000-08-14 Jim Wilson <wilson@cygnus.com> 1895 1896 * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle 1897 EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP. 1898 (elf64_ia64_print_private_bfd_data): Likewise. Also handle 1899 EF_IA_64_ABSOLUTE. 1900 19012000-08-11 Alexandre Oliva <aoliva@redhat.com> 1902 1903 * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static. 1904 19052000-08-10 Jason Eckhardt <jle@cygnus.com> 1906 1907 * elf32-i860.c (elf32_i860_relocate_section): New function. 1908 (i860_final_link_relocate): New function. 1909 (elf32_i860_relocate_splitn): New function. 1910 (elf32_i860_relocate_pc16): New function. 1911 (elf32_i860_relocate_highadj): New function. 1912 (elf32_i860_howto): Minor adjustments to some relocations. 1913 (elf_info_to_howto_rel): Define. 1914 (elf_backend_relocate_section): Define. 1915 19162000-08-10 Nick Clifton <nickc@cygnus.com> 1917 1918 * elf32-arm.h: Fix formatting. 1919 19202000-08-10 Bernd Schmidt <bernds@cygnus.co.uk> 1921 1922 * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static. 1923 19242000-08-08 Jason Eckhardt <jle@cygnus.com> 1925 1926 * elf32-i860.c (elf32_i860_howto_table): Updated some fields. 1927 19282000-08-07 Kazu Hirata <kazu@hxi.com> 1929 1930 * ieee.c (ieee_write_debug_part): Rewrite a comment. 1931 * elf64-ia64.c: Fix a typo. 1932 19332000-08-05 Jason Eckhardt <jle@cygnus.com> 1934 1935 * elf32-i860 (elf32_i860_howto_table): New structure. 1936 (lookup_howto): New function. 1937 (elf32_i860_reloc_type_lookup): New function. 1938 (elf32_i860_info_to_howto_rela): New function. 1939 (elf_code_to_howto_index): New structure. 1940 (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela. 1941 (bfd_elf32_bfd_reloc_type_lookup): Re-define as 1942 elf32_i860_reloc_type_lookup. 1943 19442000-08-04 Rodney Brown <RodneyBrown@pmsc.com> 1945 1946 * som.c (struct fixup_format): Constify `format'. 1947 (som_hppa_howto_table): Use SOM_HOWTO macro. 1948 (try_prev_fixup, hppa_som_reloc): Decorate unused parameter. 1949 (som_bfd_reloc_type_lookup): Likewise. 1950 (compare_subspaces): Remove unused `count1', `count2'. 1951 (som_begin_writing): Remove unused `total_reloc_size'. 1952 (som_bfd_derive_misc_symbol_info): Decorate unused parameter. 1953 (som_print_symbol, som_bfd_is_local_label_name): Likewise. 1954 (som_set_reloc_info): Constify `cp'. Remove unused `addend'. 1955 (som_find_nearest_line): Decorate unused parameter(s). 1956 (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise. 1957 (som_bfd_link_split_section): Likewise. 1958 19592000-08-03 Nick Clifton <nickc@cygnus.com> 1960 1961 * section.c: Restore backed out code. 1962 * elf.c: Restore backed out code. 1963 (copy_private_bfd_data): Fix bug preventing stipped dynamic 1964 binaries from working. 1965 * bfd-in2.h: Regenerate. 1966 19672000-08-03 H.J. Lu <hjl@gnu.org> 1968 1969 * section.c: Back out the change made by Nick Clifton 1970 <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic 1971 binaries. 1972 * bfd-in2.h: Likewise. 1973 * elf.c: Likewise. 1974 19752000-08-03 Alexandre Oliva <aoliva@redhat.com> 1976 1977 * elf32-sh.c (sh_elf_reloc_loop): Warning removal. 1978 19792000-07-31 Jason Eckhardt <jle@cygnus.com> 1980 1981 * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860. 1982 * bfd-in2.h, libbfd.h: Regenerate. 1983 19842000-07-31 Nick Clifton <nickc@cygnus.com> 1985 1986 * section.c (struct sec): Add new boolean field 'segment_mark'. 1987 (STD_SECTION): Initialise new field to zero. 1988 1989 * bfd-in2.h: Regenerate. 1990 1991 * elf.c (copy_private_bfd_data): Reorganise section to segment 1992 mapping to cope with moved sections requiring new segments, 1993 and overlapping segments. 1994 (SEGMENT_END): New macro: Return the end address of a segment. 1995 (IS_CONTAINED_BY_VMA): New macro: Determine if a segment 1996 contains a section by comparing their VMA addresses. 1997 (IS_CONTAINED_BY_LMA): New macro: Determine if a segment 1998 contains a section by comparing their LMA addresses. 1999 (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a 2000 section should be included in a segment. 2001 (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment 2002 follows another in memory. 2003 (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two 2004 segments overlap. 2005 20062000-07-22 Jason Eckhardt <jle@cygnus.com> 2007 2008 * cpu-i860.c: Added comments. 2009 2010 * elf32-i860.c (TARGET_LITTLE_SYM): Defined to 2011 bfd_elf32_i860_little_vec. 2012 (TARGET_LITTLE_NAME): Defined to "elf32-i860-little". 2013 (ELF_MAXPAGESIZE): Changed to 4096. 2014 2015 * targets.c (bfd_elf32_i860_little_vec): Declaration of 2016 new target. 2017 (bfd_target_vector): Added bfd_elf32_i860_little_vec. 2018 2019 * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added 2020 config for little endian elf32 i860. 2021 (targ_defvec): Define for the new config above 2022 as "bfd_elf32_i860_little_vec". 2023 (targ_selvecs): Define for the new config above 2024 as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec" 2025 2026 * configure.in (bfd_elf32_i860_little_vec): Added recognition 2027 of new target vec. 2028 2029 * configure: Regenerated. 2030 20312000-07-27 H.J. Lu <hjl@gnu.org> 2032 2033 * elflink.h (elf_merge_symbol): Take one more argument, 2034 dt_needed, to indicate if the symbol comes from a DT_NEEDED 2035 entry. Don't overide the existing weak definition if dt_needed 2036 is true. 2037 (elf_link_add_object_symbols): Pass dt_needed to 2038 elf_merge_symbol (). 2039 20402000-07-27 Nick Clifton <nickc@cygnus.com> 2041 2042 * elflink.h (elf_link_size_reloc_section): Zeroes the section's 2043 allocated contents. 2044 20452000-07-25 Geoffrey Keating <geoffk@cygnus.com> 2046 2047 * configure.host (*-*-aix*): AIX has 'long long' always. 2048 2049 * coff-rs6000.c (xcoff_write_one_armap_big): New procedure. 2050 (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps. 2051 (xcoff_write_archive_contents_big): Don't update the offset 2052 of the symbol table, xcoff_write_armap will do it. 2053 20542000-07-23 Ulf Carlsson <ulfc@engr.sgi.com> 2055 2056 * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead 2057 of dynobj for SGI_COMPAT checks. 2058 20592000-07-21 Michael Sokolov <msokolov@ivan.Harhan.ORG> 2060 2061 * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function. 2062 * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration. 2063 * bfd-in2.h: Regenerate. 2064 20652000-07-21 Nick Clifton <nickc@cygnus.com> 2066 2067 * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of 2068 range symbol indices in relocs and issue an error message. 2069 20702000-07-20 H.J. Lu <hjl@gnu.org> 2071 2072 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check 2073 info->new_dtags when setting DT_FLAGS_1. It will only be set 2074 by the new linker options. It shouldn't break anything. 2075 20762000-07-20 H.J. Lu <hjl@gnu.org> 2077 2078 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1 2079 only if info->new_dtags is true. 2080 20812000-07-20 H.J. Lu <hjl@gnu.org> 2082 2083 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set 2084 DT_RUNPATH and DT_FLAGS only if info->new_dtags is true. 2085 20862000-07-20 Hans-Peter Nilsson <hp@axis.com> 2087 2088 * Makefile.am (ALL_MACHINES): Add cpu-cris.lo. 2089 (ALL_MACHINES_CFILES): Add cpu-cris.c. 2090 (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo. 2091 (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c. 2092 (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules. 2093 * Makefile.in: Rebuild. 2094 * aclocal.m4: Rebuild. 2095 * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris. 2096 * archures.c (enum bfd_architecture): Add bfd_arch_cris. 2097 (bfd_cris_arch): Declare. 2098 (bfd_archures_list): Add bfd_cris_arch. 2099 * bfd-in2.h: Rebuild. 2100 * config.bfd: (cris-*-*): New target. 2101 * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors. 2102 * configure: Rebuild. 2103 * elf.c (prep_headers): Add bfd_arch_cris. 2104 * libbfd.h: Rebuild. 2105 * libaout.h (enum machine_type): Add M_CRIS. 2106 * reloc.c: Add CRIS relocations. 2107 * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare. 2108 (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec. 2109 * cpu-cris.c, aout-cris.c, elf32-cris.c: New files. 2110 * po/POTFILES.in, po/bfd.pot: Regenerate. 2111 21122000-07-19 H.J. Lu <hjl@gnu.org> 2113 2114 * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set 2115 DF_TEXTREL if DT_TEXTREL is set. 2116 * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. 2117 * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. 2118 * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. 2119 * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise. 2120 * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. 2121 * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. 2122 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. 2123 * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. 2124 * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise. 2125 * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. 2126 2127 * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also 2128 set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if 2129 DT_RPATH is set. 2130 Set the DT_FLAGS and DT_FLAGS_1 entries if necessary. 2131 21322000-07-19 H.J. Lu <hjl@gnu.org> 2133 2134 * bfd-in.h (bfd_elf_set_dt_needed_soname): New. 2135 * bfd-in2.h: Rebuild. 2136 2137 * elf-bfd.h (elf_obj_tdata): Add dt_soname. 2138 (elf_dt_soname): New. 2139 2140 * elf.c (bfd_elf_set_dt_needed_soname): New. 2141 2142 * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED 2143 entry if the shared object loaded by DT_NEEDED is used to 2144 resolve the reference in a regular object. 2145 21462000-07-19 H.J. Lu <hjl@gnu.org> 2147 2148 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG, 2149 DT_DEPAUDIT and DT_AUDIT as strings. 2150 21512000-07-19 Nick Clifton <nickc@cygnus.com> 2152 2153 * format.c: Fix formatting. 2154 21552000-07-19 H.J. Lu <hjl@gnu.org> 2156 2157 * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM. 2158 21592000-07-19 H.J. Lu <hjl@gnu.org> 2160 2161 * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW, 2162 DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ, 2163 DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ, 2164 DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1, 2165 DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT, 2166 DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT, 2167 DT_FLAGS_1, DT_USED and DT_CHECKSUM. 2168 21692000-07-18 Andrew Cagney <cagney@b1.cygnus.com> 2170 2171 * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move 2172 renamed functions from here... 2173 (assign_section_numbers): Use renamed functions. 2174 (prep_headers): Use renamed functions. 2175 2176 * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here. 2177 * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update. 2178 * bfd-in2.h: Regenerate. 2179 21802000-07-18 Ulf Carlsson <ulfc@engr.sgi.com> 2181 2182 * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add 2183 parenthesis in if statement. 2184 21852000-07-17 Koundinya K <kk@ddeorg.soft.net> 2186 2187 Enable the support for Traditional MIPS. 2188 * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand 2189 return ict_none appropriately for traditional mips targets. 2190 (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips. 2191 (STUB_MOVE): Conditionalize for traditonal mips. 2192 (STUB_LI16): Likewise. 2193 (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making 2194 room for RTPROC header. 2195 (_bfd_mips_elf_modify_segment_map): For a normal mips executable set 2196 the permission for the PT_DYNAMIC as read, write and execute. 2197 (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING 2198 for traditonal mips. 2199 (_bfd_mips_elf_create_dynamic_sections): Add the symbol 2200 _DYNAMIC_LINKING for traditonal mips. 2201 (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP 2202 in case of traditonal mips. 2203 (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT 2204 entry is required. For a function if PLT is not required then set the 2205 corresponding hash table entry to 0. 2206 (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for 2207 traditonal mips. 2208 (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a 2209 shared object set the value to 0. 2210 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol 2211 _DYNAMIC_LINKING for traditonal mips. 2212 (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP 2213 for traditonal mips. 2214 22152000-07-15 H.J. Lu <hjl@gnu.org> 2216 2217 * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL. 2218 22192000-07-12 Charles Wilson <cwilson@ece.gatech.edu> 2220 2221 * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing 2222 out a structure that is BFD_IN_MEMORY. 2223 22242000-07-11 Alan Modra <alan@linuxcare.com.au> 2225 2226 * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of 2227 bfd pointer. Print section id instead of bfd pointer for local 2228 syms. Prefix addend with `+' for global syms as well as local. 2229 Correct calculation of name component lengths. 2230 (elf64_hppa_check_relocs): Update call to get_dyn_name. 2231 2232 From David Huggins-Daines <dhd@linuxcare.com> 2233 * elf-hppa.h (elf_hppa_relocate_section): Update calls here too. 2234 * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings. 2235 (elf64_hppa_modify_segment_map): Likewise. 2236 22372000-07-11 Andrew Cagney <cagney@b1.cygnus.com> 2238 2239 * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA 2240 addresses to be "naturally" sign extended. Return -1 if unknown. 2241 * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration. 2242 * bfd-in2.h: Regenerate. 2243 22442000-07-11 Andrew Cagney <cagney@b1.cygnus.com> 2245 2246 * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32 2247 and ECOF_SIGNED_64 to list ways to extract an offset. 2248 (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in, 2249 ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out): 2250 Update. 2251 * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64. 2252 * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32. 2253 22542000-07-11 Andrew Cagney <cagney@b1.cygnus.com> 2255 2256 * elfcode.h (elf_object_p): Use bfd_set_start_address and not 2257 bfd_get_start_address. 2258 (elf_swap_ehdr_in): Sign extend e_entry when applicable. 2259 (elf_swap_ehdr_out): Ditto. 2260 22612000-07-10 Alexander Aganichev <AAganichev@hypercom.com> 2262 2263 * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for 2264 compatibility with older binutils. 2265 22662000-07-10 Alan Modra <alan@linuxcare.com.au> 2267 2268 * section.c (bfd_make_section_anyway): Start section_id at 0x10. 2269 (STD_SECTION): Avoid negative ids, instead use 0 to 3. 2270 2271 From Ryan Bradetich <rbradetich@uswest.net> 2272 * dwarf1.c (parse_die): Cure signed/unsigned char warnings. 2273 (parse_line_table): Ditto. 2274 (_bfd_dwarf1_find_nearest_line): Ditto. 2275 * syms.c (cmpindexentry): Remove extra `*' from params. 2276 22772000-07-09 Koundinya K <kk@ddeorg.soft.net> 2278 2279 * elf32-mips.c (sort_dynamic_relocs): New Function. 2280 (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs 2281 via qsort to sort the dynamic relocations in increasing r_symndx 2282 value. 2283 22842000-07-09 Alan Modra <alan@linuxcare.com.au> 2285 2286 * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add 2287 ATTRIBUTE_UNUSED to unused args. 2288 (get_opd): Likewise. 2289 (get_plt): Likewise. 2290 (get_dlt): Likewise. 2291 (get_stub): Likewise. 2292 (elf64_hppa_adjust_dynamic_symbol): Likewise. 2293 (elf64_hppa_link_output_symbol_hook): Likewise. 2294 (elf64_hppa_check_relocs): Delete unused var. 2295 (elf64_hppa_size_dynamic_sections): Likewise. 2296 (elf64_hppa_finalize_opd): Likewise. 2297 (elf64_hppa_finalize_dynreloc): Likewise. 2298 (elf64_hppa_modify_segment_map): Likewise. 2299 (elf64_hppa_finish_dynamic_sections): Likewise. 2300 2301 * elf-hppa.h (elf_hppa_final_write_processing): Add 2302 ATTRIBUTE_UNUSED to unused args. 2303 (elf_hppa_final_link_relocate): Likewise. 2304 (elf_hppa_record_segment_addrs): Add paretheses. 2305 (elf_hppa_relocate_section): Constify dyn_name. 2306 2307 From David Huggins-Daines <dhd@linuxcare.com> 2308 * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and 2309 rearrange case statement so that it gets preferred to 32-bit ones. 2310 2311 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use 2312 asection->id instead of address of asection structure. 2313 (elf32_hppa_size_stubs): Likewise. 2314 2315 * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section 2316 for .init* and .fini*. 2317 2318 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers 2319 and addends used in stub names to 32 bits. 2320 (elf32_hppa_size_stubs): Likewise. 2321 2322 * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend 2323 twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32, 2324 not bfd_put_64. Fix minor comment typo and formatting. 2325 2326 Changes to create multiple linker stubs, positioned immediately 2327 before the section where they are required. 2328 * elf32-hppa.c: Don't include hppa_stubs.h. 2329 (elf32_hppa_stub_hash_entry): Add a pointer to the stub section. 2330 (elf32_hppa_stub_hash_table): Delete. 2331 (elf32_hppa_link_hash_entry): Delete. 2332 (elf32_hppa_link_hash_table): Use plain bfd_hash_table for 2333 stub_hash_table, and store the struct here rather than a pointer. 2334 Delete output_symbol_count. Add offset array. Change 2335 global_value to a bfd_vma. 2336 (elf32_hppa_stub_hash_lookup): Use table instead of table->root. 2337 (elf32_hppa_stub_hash_traverse): Delete. 2338 (elf32_hppa_name_of_stub): Delete. 2339 (elf32_hppa_link_hash_lookup): Delete. 2340 (elf32_hppa_link_hash_traverse): Delete. 2341 (elf32_hppa_stub_hash_table_init): Delete. 2342 (elf32_hppa_size_of_stub): Pass input section and offset rather 2343 than location and calculate location here. Don't pass name as all 2344 stubs are now the same size. 2345 (elf32_hppa_stub_hash_newfunc): Init new fields. 2346 (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table 2347 too. 2348 (elf32_hppa_bfd_final_link_relocate): Cast enums to int before 2349 comparing against ints. Rewrite stub handling code. 2350 (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned. 2351 Case enums to int before comparing against ints. Remove 2352 bfd_reloc_dangerous case. 2353 (elf32_hppa_build_one_stub): Rewrite. 2354 (elf32_hppa_size_one_stub): New function. 2355 (elf32_hppa_build_stubs): Rewrite. 2356 (elf32_hppa_size_stubs): Pass in linker call-back functions. 2357 Rewrite stub-handling specific code. 2358 2359 * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype. 2360 2361 * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo. 2362 2363 * hppa_stubs.h: Delete. 2364 * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h 2365 (elf32-hppa.lo): Remove hppa_stubs.h from dependencies. 2366 * Makefile.in: Regenerate. 2367 2368 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and 2369 e_nlrsel. 2370 2371 * libhppa.h (hppa_field_adjust): Correct e_nsel case. 2372 2373 * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset 2374 and section name for bfd_reloc_notsupported error message. 2375 (elf32_hppa_bfd_final_link_relocate): Print reasons for returning 2376 bfd_reloc_notsupported. 2377 (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd. 2378 2379 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle 2380 undefined weak symbols for all relocs. 2381 (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch 2382 offsets are relative to one past the delay slot. 2383 (elf32_hppa_size_stubs): Account for reloc addend when calculating 2384 branch destination. Put addend into stub name too. 2385 (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and 2386 adjust by 8 when deciding whether a linker stub is needed. Put 2387 addend into stub name as for above. 2388 2389 * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on 2390 various args and vars. 2391 (elf32_hppa_bfd_final_link_relocate): Here too. 2392 (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for 2393 inner block var to avoid shadowing. 2394 2395 * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg 2396 unsigned. 2397 * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto. 2398 * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto. 2399 (elf_hppa_fake_sections): Rename local var to avoid shadowing. 2400 2401 * libhppa.h: Change practically all unsigned ints to plain ints. 2402 Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for 2403 prototypes. 2404 2405 From Ryan Bradetich <rbradetich@uswest.net> 2406 * libhppa.h (hppa_opcode_type): New enum to replace #define's. 2407 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to 2408 suit above. 2409 From David Huggins-Daines <dhd@linuxcare.com> 2410 * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants 2411 to the new OP_* ones. 2412 2413 * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on 2414 error exit. Bail out earlier on plabel relocs that we aren't 2415 interested in. Don't tell elf32_hppa_stub_hash_lookup to copy 2416 string, and then don't free our copy. 2417 (elf32_hppa_build_one_stub): Make insn unsigned int. 2418 2419 * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only 2420 available with BL, not BE and BLE. 2421 2422 * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example 2423 code for elf arg relocs. 2424 (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local 2425 argument with elf_link_hash_entry h. Handle undefined weak 2426 symbols. Move $global$ lookup from here... 2427 (elf32_hppa_relocate_section): ...to here. Return correct error 2428 message for non-handled relocs. 2429 (elf32_hppa_size_of_stub): Correctly test branch range. Previous 2430 wrong test was -0x3ffff to +0x40000. 2431 2432 * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R, 2433 R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches; 2434 Handle them as such. 2435 (elf_hppa_relocate_insn): Fix a typo. 2436 2437 * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete. 2438 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, 2439 assemble_17, assemble_21): Delete. 2440 Supply defines for all 64 possible opcodes. 2441 (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode 2442 formats. Handle COMICLR. 2443 (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11, 2444 -10, -16, 16, 22. 2445 2446 * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite. 2447 (elf32_hppa_bfd_final_link_relocate): Major rewrite. 2448 (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls 2449 to suit. 2450 (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all 2451 the local syms - did this code get deleted accidentally? Ignore 2452 undefined and undefweak syms. 2453 2454 * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost 2455 block. Use it instead of elf64_hppa_hash_table (info). 2456 (elf_hppa_final_link_relocate): Use hppa_info instead of 2457 elf64_hppa_hash_table (info). 2458 2459 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, 2460 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. 2461 (hppa_rebuild_insn): Mask immediate bits here instead. 2462 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. 2463 24642000-07-08 Alan Modra <alan@linuxcare.com.au> 2465 2466 * section.c (struct sec): Add id field. Tidy comment formatting. 2467 (bfd_make_section_anyway): Set id. 2468 (STD_SECTION): Init id too. 2469 Change CONST to const throughout. 2470 * archures.c (bfd_arch_info): Tidy comment. 2471 (bfd_arch_list): Change a CONST to const. 2472 * libbfd-in.h: Tidy comments and replace CONST with const. 2473 * elf-bfd.h: Likewise. 2474 * libbfd.h: Regenerate. 2475 * bfd-in2.h: Regenerate. 2476 * libcoff.h: Regenerate. 2477 24782000-07-07 DJ Delorie <dj@redhat.com> 2479 2480 * archive.c (_bfd_write_archive_contents): Add an informative 2481 comment. 2482 24832000-07-06 Kazu Hirata <kazu@hxi.com> 2484 2485 * srec.c: Fix formatting. 2486 24872000-06-05 DJ Delorie <dj@redhat.com> 2488 2489 * MAINTAINERS: new 2490 24912000-07-04 Alexandre Oliva <aoliva@redhat.com> 2492 2493 * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol 2494 value of PC-relative offsets. 2495 24962000-07-03 Jim Wilson <wilson@cygnus.com> 2497 2498 * elf64-alpha.c (alpha_elf_size_info): New. 2499 (elf_backend_size_info): Define to alpha_elf_size_info. 2500 * elfcode.h (elf_size_info): Change hash bucket size to 4. 2501 25022000-07-03 Ulf Carlsson <ulfc@engr.sgi.com> 2503 2504 * elf32-mips.c: Include elf32-target.h again for the traditional 2505 MIPS targets. 2506 25072000-07-03 Marek Michalkiewicz <marekm@linux.org.pl> 2508 2509 * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup): 2510 Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings. 2511 (avr_info_to_howto_rela): Likewise. 2512 (elf32_avr_gc_mark_hook): Likewise. 2513 (elf32_avr_gc_sweep_hook): Likewise. 2514 (elf32_avr_relocate_section): Likewise. 2515 25162000-07-03 Mark Elbrecht <snowball3@bigfoot.com> 2517 2518 * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into 2519 an external symbol for a non-shared, non-relocatable link. 2520 25212000-07-03 Nick Clifton <nickc@redhat.com> 2522 2523 * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol 2524 is an external symbol. 2525 (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak 2526 external symbol. 2527 25282000-07-03 Kazu Hirata <kazu@hxi.com> 2529 2530 * reloc16.c: Fix formatting. 2531 25322000-07-01 Koundinya K <kk@ddeorg.soft.net> 2533 2534 * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4* 2535 to add a new target for traditional mips i.e 2536 bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec. 2537 * configure.in: Likewise. 2538 * configure: Rebuild. 2539 * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in 2540 bfd_target_vector. 2541 (bfd_elf32_tradlittlemips_vec): Likewise. 2542 * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test 2543 to see that elfNN_bed does not get redefined even if the target file 2544 is included twice for a chip. See elf32-mips.c. 2545 25462000-07-01 Alan Modra <alan@linuxcare.com.au> 2547 2548 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed 2549 (CLEANFILES): Add DEPA. 2550 * Makefile.in: Regenerate. 2551 25522000-06-30 DJ Delorie <dj@cygnus.com> 2553 2554 * peicode.h (coff_swap_filehdr_in): can't use e_magic because we 2555 can't assume the PE header is at 0x80. 2556 25572000-06-29 Mark Elbrecht <snowball3@bigfoot.com> 2558 2559 * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH. 2560 25612000-06-28 Mark Elbrecht <snowball3@bigfoot.com> 2562 2563 * go32stub.h: Update stub. 2564 25652000-06-26 Marek Michalkiewicz <marekm@linux.org.pl> 2566 2567 * archures.c (bfd_mach_avr5): Define. 2568 * bfd-in2.h (bfd_mach_avr5): Define. 2569 * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to 2570 bfd_mach_avr5, add bfd_mach_avr4. Update comments. 2571 (compatible): Update comment. Add missing test. 2572 * elf32-avr.c (avr_final_link_relocate): Support 8K wrap 2573 for avr2 and avr4. Simplify 8K wrap code. 2574 (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5. 2575 (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5. 2576 25772000-06-26 Kazu Hirata <kazu@hxi.com> 2578 2579 * coff-h8300.c: Fix formatting. 2580 * cpu-h8300.c: Likewise. 2581 25822000-06-24 Alexandre Oliva <aoliva@redhat.com> 2583 2584 * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)' 2585 for local symbols whose names are unknown. 2586 25872000-06-22 Alan Modra <alan@linuxcare.com.au> 2588 2589 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we 2590 find one. 2591 * Makefile.in: Regenerate. 2592 * doc/Makefile.in: Regenerate. 2593 25942000-06-20 H.J. Lu <hjl@gnu.org> 2595 2596 * Makefile.am: Rebuild dependency. 2597 * Makefile.in: Rebuild. 2598 25992000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 2600 2601 * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function. 2602 (elf_backend_copy_indirect_symbol): Map to the new function. 2603 26042000-06-20 Alan Modra <alan@linuxcare.com.au> 2605 2606 * archive.c (normalize): Correct pointer comparison when checking 2607 for backslashes. 2608 (bfd_bsd_truncate_arname): Likewise. 2609 (bfd_gnu_truncate_arname): Likewise. 2610 26112000-06-20 Ulf Carlsson <ulfc@engr.sgi.com> 2612 2613 * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual 2614 sections elf_{text,data}_{section,symbol}. 2615 * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove. 2616 (_bfd_mips_elf_hide_symbol): New function. 2617 (elf_backend_hide_symbol): Map to the new function. 2618 (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD 2619 definitions of mips_elf_{text,data}_{section,symbol}. 2620 (mips_elf_local_relocation_p): Try to find the direct symbol 2621 based on new check_forced argument. 2622 (mips_elf_calculate_relocation): Use new version of 2623 mips_elf_local_relocation_p. 2624 (mips_elf_relocate_section): Likewise. 2625 (_bfd_mips_elf_relocate_section): Likewise. 2626 (mips_elf_sort_hash_table): Only assert that have enough GOT 2627 space. 2628 (mips_elf_got16_entry): Match all 32 bits to the existing GOT 2629 entry if the relocation based on the new external argument. 2630 (mips_elf_create_dynamic_relocation): Assert that we have a 2631 section contents allocated where we can swap out the dynamic 2632 relocations. 2633 (mips_elf_calculate_relocation): Find the real hash-table entry 2634 correctly by using h->root.root.type. Only create a dynamic 2635 relocation entry if the symbol is defined in a shared library. 2636 Create an external GOT entry for the GOT16 relocation if the 2637 symbol was forced local. 2638 (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a 2639 dynamic index if the symbol was forced local. 2640 26412000-06-20 Maciej W. Rozycki <macro@ds2.pg.gda.pl> 2642 2643 * elf32-mips.c: Fix typos in comments. 2644 26452000-06-19 Mark Kettenis <kettenis@gnu.org> 2646 2647 * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef 2648 CORE_VERSION_1. 2649 26502000-06-18 Stephane Carrez <stcarrez@worldnet.fr> 2651 2652 * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild. 2653 * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS, 2654 BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files. 2655 * configure.in (bfd_elf32_m68hc12_vec): Recognize. 2656 (bfd_elf32_m68hc11_vec): Likewise. 2657 * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11. 2658 Supports 68hc11 & 68hc12 at the same time. 2659 * targets.c (bfd_elf32_m68hc12_vec): Declare and put in 2660 bfd_target_vector. 2661 (bfd_elf32_m68hc11_vec): Likewise. 2662 * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11. 2663 * archures.c (bfd_m68hc12_arch): Define and register in global list 2664 (bfd_m68hc11_arch): Likewise. 2665 * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8, 2666 BFD_RELOC_M68HC11_3B): Define. 2667 * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support. 2668 * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support. 2669 26702000-06-18 Ulf Carlsson <ulfc@engr.sgi.com> 2671 2672 * elf_bfd.h (struct elf_backend_data): Add info argument to 2673 elf_backend_hide_symbol. 2674 (_bfd_elf_link_hash_hide_symbol): Likewise. 2675 * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise. 2676 * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise. 2677 * elflink.h (elf_link_add_object_symbols): Likewise. 2678 (elf_link_assign_sym_version): Likewise. 2679 26802000-06-18 H.J. Lu <hjl@gnu.org> 2681 2682 * coff-i386.c (coff_i386_reloc): Don't return in case of 2683 output_bfd == (bfd *) NULL if COFF_WITH_PE is defined. 2684 Compensate PE relocations when linking with non-PE object 2685 files to generate a non-PE executable. 2686 26872000-06-17 Ulf Carlsson <ulfc@engr.sgi.com> 2688 2689 * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write 2690 GOT entries if we're doing a static link or -Bsymbolic link. 2691 26922000-06-15 Ulf Carlsson <ulfc@engr.sgi.com> 2693 2694 * elflink.h (elf_link_adjust_relocs): Check for and call backend 2695 specifific swap_reloc_{in,out} and swap_reloca_{in,out} if 2696 available. 2697 (elf_link_output_relocs): Likewise. 2698 (elf_reloc_link_order): Likewise. 2699 27002000-06-16 Nicholas Duffek <nsd@redhat.com> 2701 2702 * archures.c (enum bfd_architecture): #define constants for 2703 PowerPc and RS6000 machine numbers. 2704 * bfd-in2.h: Regenerate. 2705 * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch 2706 to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc 2707 and RS6000 machine numbers using #defined constants from 2708 archures.c. 2709 * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000 2710 machine numbers using #defined constants from archures.c. Add 2711 entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify 2712 64-bit words in 620 entry. 2713 * cpu-rs6000.c (arch_info_struct): Create with entries for RS1, 2714 RSC, and RS2. 2715 (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k). 2716 27172000-06-16 Nicholas Duffek <nsd@cygnus.com> 2718 2719 * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64. 2720 * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field. 2721 * libcoff.h (struct xcoff_tdata): Define xcoff64 field. 2722 27232000-06-16 Nicholas Duffek <nsd@redhat.com> 2724 2725 * bfd-in.h (bfd_family_coff): Define. 2726 * bfd-in2.h: Regenerate. 2727 * coffgen.c (coff_count_linenumbers, coff_symbol_from, 2728 coff_find_nearest_line): Check COFFness using bfd_family_coff() 2729 instead of bfd_target_coff_flavour. 2730 * cofflink.c (_bfd_coff_final_link): Likewise. 2731 * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to 2732 exclude XCOFF files. 2733 * reloc.c (bfd_perform_relocation, bfd_install_relocation): 2734 Likewise. 2735 * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour. 2736 * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour. 2737 * xcofflink.c (XCOFF_XVECP): Delete. 2738 (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol, 2739 bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc, 2740 bfd_xcoff_record_link_assignment, 2741 bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with 2742 check for bfd_target_xcoff_flavour. 2743 27442000-06-16 Nicholas Duffek <nsd@redhat.com> 2745 2746 * rs6000-core.c: Support 64-bit core files, support pre-4.3 core 2747 files on AIX 4.3. 2748 (read_hdr): New function. 2749 (rs6000coff_core_p): Store mstsave or __context64 struct instead 2750 of trying to extract individual registers. Set abfd->arch_info 2751 to match the architecture that created the core file. 2752 (rs6000coff_get_section_contents): Delete. 2753 * xcoff-target.h (rs6000coff_get_section_contents): Delete. 2754 27552000-06-14 H.J. Lu <hjl@gnu.org> 2756 2757 * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec) 2758 is NULL. 2759 27602000-06-13 H.J. Lu <hjl@gnu.org> 2761 2762 * configure: Regenerate. 2763 27642000-06-13 J"orn Rennecke <amylaar@cygnus.co.uk> 2765 2766 * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of 2767 armpei_little_vec. 2768 27692000-06-08 David O'Brien <obrien@FreeBSD.org> 2770 2771 * configure.in (VERSION): Update to show this is the CVS mainline. 2772 27732000-06-07 Alan Modra <alan@linuxcare.com.au> 2774 2775 * elf32-d10v.c: Include elf/d10v.h 2776 (enum reloc_type): Delete. 2777 * elf32-d30v.c: Include elf/d30v.h 2778 (enum reloc_type): Delete. 2779 2780 * Makefile.am: Run "make dep-am" to regenerate dependencies. 2781 * Makefile.in: Regenerate. 2782 2783 * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs. 2784 (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and 2785 move HOWTOs into elf_howto_table. 2786 (R_386_standard, R_386_ext_offset): Define. 2787 (R_386_ext, R_386_vt_offset, R_386_vt): Define. 2788 (elf_i386_reloc_type_lookup): Modify calculation of index into 2789 elf_howto_table since we've removed the padding. 2790 (elf_i386_info_to_howto_rel): Likewise. 2791 (elf_i386_relocate_section): Likewise. 2792 27932000-06-06 Michael Snyder <msnyder@seadog.cygnus.com> 2794 2795 * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t. 2796 27972000-06-05 H.J. Lu <hjl@gnu.org> 2798 2799 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag 2800 an error when seeing an undefined symbol with hidden/internal 2801 attribute. It is handled in *_relocate_section (). 2802 28032000-06-05 H.J. Lu <hjl@gnu.org> 2804 2805 * elflink.h (elf_fix_symbol_flags): Follow the link for the 2806 indirect symbol for the ELF_LINK_NON_ELF bit. 2807 (elf_link_output_extsym): Don't output the indirect symbol even 2808 if the ELF_LINK_NON_ELF bit is set. 2809 28102000-06-01 J.T. Conklin <jtc@redback.com> 2811 2812 * config.bfd (i[3456]86-*-netbsdelf*): New target. 2813 (i[3456]86-*-netbsdaout*): New target. 2814 (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs. 2815 (i[3456]86-*-openbsd*): Likewise. 2816 28172000-05-30 Andrew Cagney <cagney@b1.cygnus.com> 2818 2819 * trad-core.c: From hpux-core.c, include <dirent.h> or 2820 <sys/ndir.h> when possible. 2821 28222000-05-31 Nick Clifton <nickc@cygnus.com> 2823 2824 * opintl.h (_(String)): Explain why dgettext is used instead 2825 of gettext. 2826 28272000-05-31 Ulrich Drepper <drepper@redhat.com> 2828 2829 * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version 2830 definitions. We must not assume they are sorted in the file 2831 according to their index numbers. 2832 28332000-05-31 Alan Modra <alan@linuxcare.com.au> 2834 2835 * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field 2836 selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and 2837 R_PARISC_DIR17F are for absolute branches; Handle them as such. 2838 28392000-05-30 Nick Clifton <nickc@cygnus.com> 2840 2841 * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB, 2842 80960CA, 80960MC as valid machine names. 2843 28442000-05-30 H.J. Lu <hjl@gnu.org> 2845 2846 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the 2847 visibility bits if the symbol is undefined. Correctly handle 2848 weak undefined symbols with hidden and internal attributes. 2849 2850 * elflink.h (elf_link_add_object_symbols): Always turn the 2851 symbol into local if it has the hidden or internal attribute. 2852 28532000-05-29 Philip Blundell <philb@gnu.org> 2854 2855 * ppcboot.c: Add packed attribute if compiling with GCC. 2856 28572000-05-29 Anatoly Vorobey <mellon@pobox.com> 2858 2859 * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal. 2860 28612000-05-26 Michael Snyder <msnyder@seadog.cygnus.com> 2862 2863 * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus, 2864 elfcore_grok_psinfo): Add code to allow debugging a 32-bit 2865 corefile on a 64-bit (Sparc Solaris) host. Also clean up 2866 a few old comments. 2867 28682000-05-26 Alan Modra <alan@linuxcare.com.au> 2869 2870 * Makefile.am: Update dependencies with "make dep-am" 2871 * Makefile.in: Regenerate. 2872 2873 * sysdep.h (gettext, dgettext, dcgettext, textdomain, 2874 bindtextdomain): Replace defines with those from intl/libgettext.h 2875 to quieten gcc warnings. 2876 28772000-05-26 Eli Zaretskii <eliz@is.elta.co.il> 2878 2879 * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH. 2880 2881 * archive.c (normalize, bfd_bsd_truncate_arname, 2882 bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support 2883 file names with backslashes. 2884 2885 * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file 2886 before opening it. 2887 2888 * sysdep.h: Include filenames.h. 2889 28902000-05-26 Alan Modra <alan@linuxcare.com.au> 2891 2892 * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777. 2893 28942000-05-26 Jakub Jelinek <jakub@redhat.com> 2895 2896 * elf64-sparc.c (sparc64_elf_relax_section): New. 2897 (sparc64_elf_relocate_section): Optimize tail call into branch always 2898 if possible. 2899 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 2900 (elf32_sparc_relax_section): New. 2901 29022000-05-26 Jakub Jelinek <jakub@redhat.com> 2903 2904 * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters. 2905 Remove unusued variables. 2906 (sparc64_elf_relocate_section): Change r_symndx type to unsigned long. 2907 (sparc64_elf_merge_private_bfd_data): Fix shared library case from 2908 previous fix, so that shared libs really don't influence targets 2909 extension mask and memory model. 2910 29112000-05-23 H.J. Lu <hjl@gnu.org> 2912 2913 * elf64-alpha.c (elf64_alpha_relocate_section): Check 2914 h->root.other not h->other. 2915 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 2916 2917 * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo. 2918 29192000-05-23 H.J. Lu <hjl@gnu.org> 2920 2921 * elf32-i386.c (elf_i386_relocate_section): Don't allow the 2922 undefined symbol with the non-default visibility attributes. 2923 * elf-hppa.h (elf_hppa_relocate_section): Likewise. 2924 * elf32-arm.h (elf32_arm_relocate_section): Likewise. 2925 * elf32-i370.c (i370_elf_relocate_section): Likewise. 2926 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 2927 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 2928 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 2929 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 2930 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 2931 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 2932 * elf64-ia64.c (elf64_ia64_relocate_section): Likewise. 2933 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 2934 29352000-05-22 Richard Henderson <rth@cygnus.com> 2936 2937 * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI, 2938 PCREL22, PCREL64I. Zero size of special relocs. 2939 (elf64_ia64_reloc_type_lookup): Likewise. 2940 (USE_BRL, oor_brl, oor_ip): New. 2941 (elf64_ia64_relax_section): New. 2942 (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I. 2943 (elf64_ia64_install_value): Likewise, plus PCREL21BI. 2944 (elf64_ia64_relocate_section): Likewise. 2945 (bfd_elf64_bfd_relax_section): New. 2946 * reloc.c (BFD_RELOC_IA64_PCREL21BI): New. 2947 (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New. 2948 * bfd-in2.h, libbfd.h: Regenerate. 2949 29502000-05-22 Nick Clifton <nickc@cygnus.com> 2951 2952 * configure.in : Add peigen.lo to MIPS PE targets. 2953 * configure: Regenerate. 2954 29552000-05-22 Momchil Velikov <velco@fadata.bg> 2956 2957 * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess 2958 only if it is known for both input and output bfds. Separate 2959 error message strings as in some languages, it may be necessary 2960 to change more than one place in the string to change between 2961 'big' and 'little'. 2962 2963 * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline 2964 endianess checks, call _bfd_generic_verify_endian_match() instead. 2965 2966 * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise. 2967 2968 * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise. 2969 2970 * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify 2971 endianess before checking bfd flavours. 2972 29732000-05-22 H.J. Lu <hjl@gnu.org> 2974 2975 * elflink.h (elf_link_output_extsym): Clear the visibility 2976 field for symbols not defined locally. 2977 29782000-05-18 Alan Modra <alan@linuxcare.com.au> 2979 2980 * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, 2981 re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. 2982 (hppa_rebuild_insn): Mask immediate bits here instead. 2983 * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. 2984 29852000-05-18 Momchil Velikov <velco@fadata.bg> 2986 2987 * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting 2988 relocs for an executable, ensure that they are virtual addresses. 2989 29902000-05-18 Jeffrey A Law (law@cygnus.com) 2991 2992 * config.bfd (hppa*64*-*-hpux11*): New target triplet. 2993 29942000-05-17 S. Bharadwaj Yadavalli <sby@scrugs.lkg.dec.com> 2995 Rick Gorton <gorton@scrugs.lkg.dec.com> 2996 2997 * elflink.h: Add emitrelocations support: when enabled, relocation 2998 information and relocation sections are put into final output 2999 executables. If the emitrelocations flag is set, do the following: 3000 (elf_bfd_final_link): Emit relocation sections. 3001 (elf_link_input_bfd): Compute relocation section contents. 3002 (elf_gc_sections): Don't clean relocation sections. 3003 30042000-05-16 Catherine Moore <clm@cygnus.com> 3005 3006 * som.c (som_decode_symclass): Recognize weak symbols. 3007 30082000-05-16 Szabolcs Szakacsits <szaka@F-Secure.com> 3009 3010 * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that 3011 read idata section only from dataoff. 3012 (pe_print_edata): Correctly check for valid eat_member. 3013 30142000-05-16 J"orn Rennecke <amylaar@cygnus.co.uk> 3015 3016 * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8. 3017 30182000-05-14 Philip Blundell <philb@gnu.org> 3019 3020 * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets. 3021 30222000-05-12 Alan Modra <alan@linuxcare.com.au> 3023 3024 * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec 3025 3026 * peigen.c (pe_print_idata): Look for .idata section and print 3027 info even if data directory has zero entries. Read idata section 3028 starting from dataoff, and adjust all data offsets to suit. Cast 3029 all bfd_vma vars to unsigned long before passing to fprintf. 3030 * peigen.c (pe_print_edata): Similarly, look for .edata section 3031 and print info even if data directory has zero entries. Cast 3032 all bfd_vma vars to unsigned long before passing to fprintf. 3033 3034 From Szabolcs Szakacsits <szaka@F-Secure.com> 3035 * peigen.c (pe_print_idata): Use bfd_section_size rather than data 3036 directory size which may be bogus. 3037 * peigen.c (pe_print_edata): Similarly. 3038 30392000-05-09 Alan Modra <alan@linuxcare.com.au> 3040 3041 * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela 3042 section is empty. 3043 (copy_private_bfd_data): Allow for space possibly taken up by elf 3044 headers when calculating segment physical address from lma. 3045 30462000-05-08 Alan Modra <alan@linuxcare.com.au> 3047 3048 * versados.c (versados_scan): Init stringlen and pass_2_done. 3049 3050 * trad-core.c (trad_unix_core_file_p): Return 3051 bfd_error_wrong_format rather than bfd_error_file_truncated. 3052 3053 * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to 3054 add_data_entry. DataDirectory virtual address is relative. 3055 (pe_print_idata): Account for relative DataDirectory virtual 3056 addresses. Don't trash datasize inside POWERPC_LE_PE code. 3057 (pe_print_edata): Similarly. 3058 3059 From Szabolcs Szakacsits <szaka@F-Secure.com> 3060 * peigen.c (dir_names): Add Delay Import Directory. 3061 (pe_print_idata): Always search for bfd section containing 3062 idata address rather than looking up section name. Print this 3063 section name rather than .idata. 3064 (pe_print_edata): Similarly. Also print some fields as %08lx. 3065 (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as 3066 Win32Version. 3067 30682000-05-05 Clinton Popetz <cpopetz@cygnus.com> 3069 3070 * xcoff.h: Rename to xcoff-target.h 3071 * Makefile.am: Change all instances of xcoff.h to xcoff-target.h 3072 * coff-rs6000.c: Ditto. 3073 * coff64-rs6000.c: Ditto. 3074 * coff-pmac.c: Ditto. 3075 * Makefile.in: Regenerate. 3076 30772000-05-05 Clinton Popetz <cpopetz@cygnus.com> 3078 3079 * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): 3080 Change U802TOC64MAGIC to U803XTOCMAGIC. 3081 30822000-05-04 Michael Snyder <msnyder@seadog.cygnus.com> 3083 3084 * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1. 3085 * bfd-in.h: Prototype bfd_elf_get_arch_size. 3086 * bfd-in2.h: Prototype bfd_elf_get_arch_size. 3087 30882000-05-04 Alan Modra <alan@linuxcare.com.au> 3089 3090 * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma. 3091 30922000-05-03 Martin v. L�wis <loewis@informatik.hu-berlin.de> 3093 3094 * elflink.h (elf_link_add_object_symbols): Reset dynindx for 3095 hidden and internal symbols. 3096 (elf_fix_symbol_flags): Clear NEEDS_PLT for symbols with 3097 visibility. 3098 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Do not 3099 assign a PLT or GOT entry to symbols with hidden and 3100 internal visibility. 3101 31022000-05-03 Mark Elbrecht <snowball3@bigfoot.com> 3103 3104 * bfd/coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for 3105 the .bss section. 3106 * bfd/coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. 3107 31082000-05-02 H.J. Lu <hjl@gnu.org> 3109 3110 * elf.c (prep_headers): Use ELFOSABI_NONE instead of 3111 ELFOSABI_SYSV. 3112 31132000-05-02 Alan Modra <alan@linuxcare.com.au> 3114 3115 * targets.c (bfd_target_vector): Restore bfd_elf32_hppa_vec. 3116 * Makefile.am (BFD32_BACKENDS): Restore elf32-hppa.lo. Regenerate 3117 dependencies. 3118 * Makefile.in: Regenerate. 3119 31202000-05-01 Jim Wilson <wilson@cygnus.com> 3121 3122 * Makefile.am (BFD32_BACKENDS): Add efi-app-ia32.lo. 3123 (BFD32_BACKENDS_CFILES): Add efi-app-ia32.c. 3124 (BFD64_BACKENDS): Delete coff-ia64.lo. Add efi-app-ia64.lo. 3125 (BFD64_BACKENDS_CFILES): Delete coff-ia64.c. Add efi-app-ia64.c. 3126 * Makefile.in: Rebuild. 3127 31282000-05-02 Alan Modra <alan@linuxcare.com.au> 3129 3130 * config.bfd: Re-enable elf32-hppa. It now compiles, even if it 3131 doesn't work very well. 3132 3133 * elf-hppa.h (elf_hppa_internal_shdr): Define. 3134 (elf_hppa_fake_sections): hdr is elf_hppa_internal_shdr. 3135 Set hdr->s_type to 1 if ARCH_SIZE == 32. 3136 (_bfd_elf_hppa_gen_reloc_type): Add prototype. 3137 (elf_hppa_info_to_howto): Likewise. 3138 (elf_hppa_info_to_howto_rel): Likewise. 3139 (elf_hppa_reloc_type_lookup): Likewise. 3140 (elf_hppa_is_local_label_name): Likewise. 3141 (elf_hppa_fake_sections): Likewise. 3142 (elf_hppa_final_write_processing): Likewise. 3143 (elf_hppa_howto_table): Fully initialise all entries. 3144 (_bfd_elf_hppa_gen_reloc_type): Add ATTRIBUTE_UNUSED to args. 3145 (elf_hppa_info_to_howto): Likewise. 3146 (elf_hppa_info_to_howto_rel): Likewise. 3147 (elf_hppa_reloc_type_lookup): Likewise. 3148 (elf_hppa_final_write_processing, elf_hppa_add_symbol_hook, 3149 elf_hppa_unmark_useless_dynamic_symbols, 3150 elf_hppa_remark_useless_dynamic_symbols, 3151 elf_hppa_record_segment_addrs, elf_hppa_final_link, 3152 elf_hppa_relocate_section, elf_hppa_final_link_relocate, 3153 elf_hppa_relocate_insn): Compile only if ARCH_SIZE == 64 until 3154 elf32-hppa.c mess is cleaned up. 3155 (elf_hppa_final_link_relocate): Make insn and r_type unsigned 3156 int. Delete r_field. In case R_PARISC_PCREL21L, don't set 3157 r_field then call hppa_field_adjust inline func with variable 3158 r_field arg, instead call hppa_field_adjust with fixed arg. 3159 In case R_PARISC_PCREL22F, don't set r_field. 3160 (elf_hppa_relocate_insn): Change args and return type to unsigned 3161 int. Call re_assemble_* funcs to do the work. 3162 3163 * elf32-hppa.c (hppa_elf_relocate_insn): Don't assume 32 bit when 3164 sign extending. 3165 3166 * libhppa.h (HPPA_R_CONSTANT): Don't assume 32 bit when sign 3167 extending. 3168 (sign_extend): Mask first before sign extending. 3169 (low_sign_extend): Rewrite without condition expression. 3170 (ones, dis_assemble_3, dis_assemble_12, dis_assemble_16, 3171 dis_assemble_17, dis_assemble_21, dis_assemble_22): Delete. 3172 (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, 3173 assemble_17, assemble_21, sign_unext, low_sign_unext): Return 3174 result as function return value rather than through pointer arg. 3175 Accept unsigned int args, and return unsigned int. 3176 (re_assemble_3): New. Combines function of dis_assemble_3 with 3177 re-assembly of opcode and immediate. 3178 (re_assemble_12): Likewise. 3179 (re_assemble_16): Likewise. 3180 (re_assemble_17): Likewise. 3181 (re_assemble_21): Likewise. 3182 (re_assemble_22): Likewise. 3183 (hppa_field_adjust): Rewrite and document, paying attention to 3184 size of types and signed/unsigned issues. 3185 (get_opcode): Shift before masking. 3186 (FDLW): Rename to FLDW. 3187 (bfd_hppa_insn2fmt): Change arg to unsigned int. Delete fmt. 3188 (hppa_rebuild_insn): Change args and return value to unsigned 3189 int. Make use of re_assemble_*. Correct case 11. 3190 3191 * dep-in.sed: Handle ../opcodes/. 3192 * Makefile.am (SOURCE_HFILES): Add elf-hppa.h, elf32-hppa.h, 3193 elf64-hppa.h, hppa_stubs.h, xcoff.h. 3194 (BFD32_BACKENDS_CFILES): Restore elf32-hppa.c. 3195 Remove elf64-hppa.lo, cpu-ia64.lo, elf64-ia64.lo, elfarm-oabi.lo, 3196 elfarm-nabi.lo dependencies outside of auto-dependency area. 3197 Regenerate dependencies. 3198 * Makefile.in: Regenerate. 3199 3200 * configure.in (TRAD_HEADER): Test non-null before 3201 AC_DEFINE_UNQUOTED. 3202 * configure: Regenerate. 3203 3204 * reloc.c: Fix mis-spelling in comment. 3205 32062000-05-01 Alan Modra <alan@linuxcare.com.au> 3207 3208 * coff-sh.c (bfd_coff_small_swap_table): Fix Fri Apr 28 change. 3209 * vms.c (vms_openr_next_archived_file): Return NULL. 3210 32112000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3212 3213 * coffcode.h Copy changes mistakenly done to libcoff.h in 3214 4/24/2000 patch. 3215 32162000-04-29 Andreas Jaeger <aj@suse.de> 3217 3218 * libbfd-in.h: Correctly check GCC version. 3219 * bfd-in.h: Likewise. 3220 * libhppa.h: Likewise. 3221 * libbfd.h: Regenerate. 3222 * bfd-in2.h: Regenerate. 3223 32242000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3225 3226 * Makefile.am (BFD64_BACKENDS, BFD64_BACKENDS_CFILES): Add 3227 coffdu-rs6000.{lo,c}. 3228 (coff-pmac.lo, coff-rs6000.lo, coff64-rs6000.lo): Add dependency 3229 on xcoff.h 3230 * Makefile.in: Regenerate. 3231 * xcoff.h: New file. 3232 * coff-pmac.c: Use xcoff.h instead of coff-rs6000.c. 3233 * coff-rs6000.c: Move all declarations and defines that are 3234 common to the xcoff backends into xcoff.h 3235 * coff64-rs6000.c: Ditto, 3236 32372000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3238 3239 * coff-mips.c (mips_ecoff_backend_data): Add initialization of 3240 _bfd_coff_force_symnames in strings and 3241 _bfd_coff_debug_string_prefix_length to their default values. 3242 * coff-sh.c: (bfd_coff_small_swap_table): Ditto. 3243 32442000-04-28 Clinton Popetz <cpopetz@cygnus.com> 3245 3246 * coff-alpha.c (alpha_ecoff_backend_data): Add initialization of 3247 _bfd_coff_force_symnames in strings and 3248 _bfd_coff_debug_string_prefix_length to their default values. 3249 32502000-04-27 Alan Modra <alan@linuxcare.com.au> 3251 3252 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return if dynobj NULL. 3253 Check local_got_refcounts before dereferencing. 3254 3255 * elf32-ppc.c (ppc_elf_relocate_section): Check splt != NULL 3256 before deciding we don't need R_PPC_PLT32 relocation. 3257 (ppc_elf_gc_sweep_hook): Check local_got_refcounts before 3258 dereferencing. 3259 3260 * elflink.h (elf_gc_common_finalize_got_offsets): Fix comment. 3261 3262 * elf32-i386.c (elf_i386_check_relocs): Reference count .got and 3263 .plt entries. 3264 (elf_i386_gc_sweep_hook): Garbage collect .got and .plt entries. 3265 (elf_i386_adjust_dynamic_symbol): Recognize unused .plt entries. 3266 (elf_i386_relocate_section): Allow for .plt to go missing. 3267 (elf_i386_finish_dynamic_symbol): Use same test to decide if we 3268 can use a relative reloc for got as elf_i386_relocate_section. 3269 (bfd_elf32_bfd_final_link): Define to use gc form of final link. 3270 32712000-04-26 Clinton Popetz <cpopetz@cygnus.com> 3272 3273 * config.bfd: Remove extraneous bfd_powerpc_64_arch. 3274 32752000-04-24 Clinton Popetz <cpopetz@cygnus.com> 3276 3277 * Makefile.am (coff64-rs6000.lo): New rule. 3278 * Makefile.in: Regenerate. 3279 * coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data, 3280 xcoff_is_local_label_name, xcoff_rtype2howto, 3281 xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p, 3282 xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap, 3283 xcoff_write_archive_contents): No longer static, and prefix with _bfd_. 3284 (NO_COFF_SYMBOLS): Define. 3285 (xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in, 3286 xcoff64_swap_aux_out): New functions; handle xcoff symbol tables 3287 internally. 3288 (MINUS_ONE): New macro. 3289 (xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS 3290 relocation. 3291 (coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in, 3292 coff_SWAP_aux_out): Map to the new functions. 3293 * coff64-rs6000.c: New file. 3294 * libcoff.h (bfd_coff_backend_data): Add new fields 3295 _bfd_coff_force_symnames_in_strings and 3296 _bfd_coff_debug_string_prefix_length. 3297 (bfd_coff_force_symnames_in_strings, 3298 bfd_coff_debug_string_prefix_length): New macros for above fields. 3299 * coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic. 3300 Set machine to 620 for XCOFF64. Use bfd_coff_swap_sym_in instead 3301 of using coff_swap_sym_in directly. 3302 (FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64. 3303 (coff_set_flags) Set magic for XCOFF64. 3304 (coff_compute_section_file_positions): Add symbol name length to 3305 string section length if bfd_coff_debug_string_prefix_length is 3306 true. 3307 (coff_write_object_contents): Don't do reloc overflow for XCOFF64. 3308 (coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of 3309 using coff_swap_lineno_in directly. 3310 (bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings 3311 and _bfd_coff_debug_string_prefix_length fields. 3312 * coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force 3313 symbol names into strings table when 3314 bfd_coff_force_symnames_in_strings is true. 3315 * coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR, 3316 SET_RELOC_VADDR): New macros. 3317 (coff_swap_reloc_in, coff_swap_reloc_out): Use above macros. 3318 (coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C 3319 code. 3320 (coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64 3321 changes within RS6000COFF_C specific code. 3322 (coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC, 3323 MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO. 3324 * reloc.c (bfd_perform_relocation, bfd_install_relocation): 3325 Extend existing hack on target name. 3326 * xcofflink.c (XCOFF_XVECP): Extend existing hack on 3327 target name. 3328 * coff-tic54x.c (ticof): Keep up to date with new fields 3329 in bfd_coff_backend_data. 3330 * config.bfd: Add bfd_powerpc_64_arch to targ_arch and define 3331 targ_selvecs to include rs6000coff64_vec for rs6000. 3332 * configure.in: Add rs6000coff64_vec case. 3333 * cpu-powerpc.c: New bfd_arch_info_type. 3334 33352000-04-24 Jeffrey A Law (law@cygnus.com) 3336 3337 * config.bfd: Only disable elf32-hppa vectors, not all of the 3338 BSD and OSF configuration support. Provide (disabled) clauses 3339 for PA64 support. 3340 * configure.in: Add clause for PA64 support. 3341 * configure: Rebuilt. 3342 3343 * targets.c (bfd_target_vector): Add bfd_elf64_hppa_vec. 3344 (bfd_elf64_hppa_vec): Declare. 3345 3346 * Makefile.am (BFD64_BACKENDS): Add elf64-hppa.lo 3347 (BFD64_BACKENDS_CFILES): Add elf64-hppa.c 3348 (elf64-hppa.lo): Add dependencies. 3349 * Makefile.in: Rebuilt. 3350 3351 * elf64-hppa.c, elf64-hppa.h: New files with PA64 support. 3352 33532000-04-24 Jason Eckhardt <jle@cygnus.com> 3354 3355 * libhppa.h (dis_assemble_16): New function. 3356 (pa_arch): Added pa20w element. 3357 33582000-04-24 Ulrich Drepper <drepper@cygnus.com> 3359 3360 * elf-bfd.h: Add prototypes for bfd_elf32_write_relocs, 3361 bfd_elf32_slurp_reloc_table, bfd_elf64_write_relocs, and 3362 bfd_elf64_slurp_reloc_table. 3363 3364 * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): New 3365 definitions to get external names. 3366 (elf_write_relocs): Renamed from write_relocs and make global. 3367 (elf_slurp_reloc_table): Make global. 3368 (_bfd_elf,size_info): Use elf_write_relocs instead of write_relocs. 3369 3370 * archive.c (hpux_uid_gid_encode): New function. 3371 (bfd_ar_hdr_from_filesystem): Use it if HPUX_LARGE_AR_IDS is 3372 defined and the ID is greater than 99999. 3373 (bfd_generic_stat_arch_elt): If HPUX_LARGE_AR_IDS is defined decode 3374 special uid/gid fields into 32 bit values. 3375 33762000-04-21 Matthew Green <mrg@cygnus.com> 3377 3378 * config.bfd: Add NetBSD/sparc64 support. 3379 3380Fri Apr 21 13:20:53 2000 Richard Henderson <rth@cygnus.com> 3381 David Mosberger <davidm@hpl.hp.com> 3382 Timothy Wall <twall@cygnus.com> 3383 Jim Wilson <wilson@cygnus.com> 3384 3385 * Makefile.am (ALL_MACHINES): Add cpu-ia64.lo. 3386 (ALL_MACHINES_CFILES): Add cpu-ia64.c. 3387 (BFD64_BACKENDS): Add elf64-ia64.lo. 3388 (BFD64_BACKENDS_CFILES): Add elf64-ia64.c. 3389 (cpu-ia64.lo, elf64-ia64.lo): New rules. 3390 * Makefile.in: Rebuild. 3391 * archures.c (enum bfd_architecture): Add bfd_arch_ia64. 3392 (bfd_ia64_arch): Declare. 3393 (bfd_archures_list): Add bfd_ia64_arch. 3394 * bfd-in2.h: Rebuild. 3395 * config.bfd: (ia64*-*-linux-gnu*, ia64*-*-elf*): New targets. 3396 * configure: Rebuild. 3397 * configure.host: (ia64-*-linux*): New host. 3398 * configure.in (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec, 3399 bfd_efi_app_ia64_vec, bfd_efi_app_ia64_vec): New vectors. 3400 * elf.c (prep_headers): Add bfd_arch_ia64. 3401 * libbfd.h: Rebuild. 3402 * reloc.c: Add IA-64 relocations. 3403 * targets.c (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec): 3404 Declare. 3405 (bfd_target_vect): Add bfd_elf64_ia64_little_vec. 3406 * cpu-ia64-opc.c, cpu-ia64.c, elf64-ia64.c: New files. 3407 34082000-04-21 Richard Henderson <rth@cygnus.com> 3409 3410 * elf32-d30v.c (bfd_elf_d30v_reloc): Don't modify section 3411 contents when performing a partial link. 3412 (bfd_elf_d30v_reloc_21): Likewise. 3413 34142000-04-20 H.J. Lu <hjl@gnu.org> 3415 3416 * elf32-i386.c (elf_i386_relocate_section): Restrict 1998-12-10 3417 patch to symbols defined by a shared object. 3418 * elf32-ppc.c (ppc_elf_relocate_section): Similarly. 3419 34202000-04-19 Michael Sokolov <msokolov@ivan.Harhan.ORG> 3421 3422 K&R compiler fixes. 3423 * dwarf2.c (concat_filename): Avoid string literal concatenation. 3424 * ieee.c (ieee_get_symtab): Don't initialise union in struct. 3425 3426Mon Apr 17 19:14:36 2000 David Mosberger <davidm@hpl.hp.com> 3427 3428 * Makefile.am (BFD64_BACKENDS): Mention coff-ia64.lo. 3429 (BFD64_BACKENDS_CFILES): Mention coff-ia64.c 3430 (coff-ia64.lo): Add dependency. 3431 * Makefile.in: Regenerate. 3432 * coff-ia64.c: New file. 3433 * efi-app-ia32.c: Ditto. 3434 * efi-app-ia64.c: Ditto. 3435 * coffcode.h (coff_set_arch_mach_hook): Handle IA64MAGIC. 3436 (coff_set_flags): Ditto. 3437 (coff_write_object_contents) [IA64]: Set magic number to ZMAGIC. 3438 * config.bfd (i[3456]86-*-linux-gnu*): Mention bfd_efi_app_ia32_vec. 3439 * configure.in (elf): Handle bfd_efi_app_ia32 and bfd_efi_app_ia64_vec. 3440 * configure: Regenerate. 3441 * libpei.h (GET_OPTHDR_IMAGE_BASE): New macro. 3442 (PUT_OPTHDR_IMAGE_BASE): Ditto. 3443 (GET_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. 3444 (PUT_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. 3445 (GET_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. 3446 (PUT_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. 3447 (GET_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. 3448 (PUT_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. 3449 (GET_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. 3450 (PUT_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. 3451 (GET_PDATA_ENTRY): Ditto. 3452 * peigen.c (_bfd_pei_swap_aouthdr_in) [COFF_WITH_PEP64]: Don't read 3453 data_start. Use above macros to read fields that are 64 bit wide for 3454 COFF_WITH_PEP64. Don't truncate entry and text_start to 32 bits. 3455 (_bfd_pei_swap_aouthdr_out) [PEI_FORCE_MINIMUM_ALIGNMENT]: Force 3456 FileAlignment and SectionAlignment to minimum alignment if they 3457 are zero. 3458 (_bfd_pei_swap_aouthdr_out) [PEI_DEFAULT_TARGET_SUBSYSTEM]: Set 3459 Subsystem to default PEI_DEFAULT_TARGET_SUBSYSTEM. 3460 (_bfd_pei_swap_aouthdr_out) [COFF_WITH_PEP64]: Don't set data_start. 3461 Use above macros to write fields that are 64 bit wide for 3462 COFF_WITH_PEP64. 3463 (pe_print_pdata): Set PDATA_ROW_SIZE to 3*8 for COFF_WITH_PEP64, 3464 5*4 otherwise. This should be right for IA-32 and IA-64, but may 3465 be wrong for platforms. Use PDATA_ROW_SIZE instead of hardcoded 3466 value of 20 bytes. Modify printing for COFF_WITH_PEP64 to print 3467 begin address, end address, and unwind info address only. Use 3468 GET_PDATA_ENTRY() to read .pdata entries. Use fprintf_vma() to 3469 print addresses. 3470 (tbl): Add SECTION, REL32, RESERVED1, MIPS_JMPADDR16, DIR64, and 3471 HIGH3ADJ relocation names. 3472 (_bfd_pe_print_private_bfd_data): Print Subsystem name in legible form. 3473 * targets.c: Declare bfd_efi_app_ia32_vec and 3474 bfd_efi_app_ia64_vec. 3475 (bfd_target_vector): Mention bfd_efi_app_ia32_vec and 3476 bfd_efi_app_ia64_vec. 3477 34782000-04-17 Timothy Wall <twall@cygnus.com> 3479 3480 * bfd-in2.h: Add prototypes for tic54x load page access. 3481 * bfd-in.h: Regenerate. 3482 * coff-tic54x.c: Add load page functions; allow bfd_arch_unknown 3483 in customized _set_arch_mach function. 3484 * coffcode.h (coff_set_alignment_hook): Set section load page if 3485 the appropriate macro is defined. 3486 (write_object_contents): Read section load page. 3487 34882000-04-13 Alan Modra <alan@linuxcare.com.au> 3489 3490 * elf32-hppa.h: Update copyright date. 3491 3492 * elf32-fr30.c (fr30_elf_i20_reloc): Don't use U suffix. 3493 * elf32-mips.c (_bfd_mips_elf_relocate_section): And here. 3494 3495 * elf32-d30v.c (MAX32): Don't use LL suffix. 3496 (MIN32): Define in terms of MAX32. 3497 (bfd_elf_d30v_reloc): Make relocation a bfd_signed_vma. 3498 3499 * coff-a29k.c (SIGN_EXTEND_HWORD): Replace with more concise 3500 expression. 3501 3502 * peicode.h (pe_ILF_build_a_bfd): Remove UL from hex constants. 3503 35042000-04-12 Alan Modra <alan@linuxcare.com.au> 3505 3506 * dep-in.sed: Match space before file name, not after. 3507 * Makefile.am: Regenerate dependencies. 3508 * Makefile.in: Regenerate. 3509 3510 * reloc.c (_bfd_relocate_contents): In complain_overflow_bitfield 3511 case, allow address wrap-around stupidly removed 2000-03-17. Sign 3512 extend without an if statement. 3513 35142000-04-11 Alan Modra <alan@linuxcare.com.au> 3515 3516 * coff-mips.c (mips_gprel_reloc): Test for 16 bit range using 3517 signed quantites. 3518 * elf32-mips.c (gprel16_with_gp): Likewise. 3519 * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Test range 3520 here using -0x40000, not (int)0xfffc0000. 3521 (elf32_hppa_size_of_stub): Likewise. 3522 35232000-04-11 Timothy Wall <twall@cygnus.com> 3524 3525 * coff-tic54x.c: Now builds with all targets. 3526 * Makefile.am: Add coff/tic54x.h to coff-tic54x.o dependencies. 3527 * Makefile.in: Regenerate. 3528 * coffcode.h (coff_set_arch_mach_hook): Eliminate warning on 3529 unitialized variable. 3530 3531Fri Apr 7 15:56:57 2000 Andrew Cagney <cagney@b1.cygnus.com> 3532 3533 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add 3534 --enable-build-warnings option. 3535 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions. 3536 * Makefile.in, configure: Re-generate. 3537 35382000-04-07 Nick Clifton <nickc@cygnus.com> 3539 3540 * reloc.c: Add BFD_RELOC_ARM_PCREL_BLX and 3541 BFD_RELOC_THUMB_PCREL_BLX. 3542 3543 * elf32-arm.h (elf32_arm_final_link_relocate): Handle 3544 R_ARM_XPC25 and R_ARM_THM_PC22. 3545 3546 * elfarm-nabi.c (elf32_arm_howto_): Fix definitions of 3547 R_ARM_XPC25 and R_ARM_THM_XPC22. 3548 (elf32_arm_reloc_map): Make BFD_RELOC_{ARM|THUMB}_PCREL_BLX to 3549 R_ARM_[XPC25|THM_XPC22]. 3550 3551 * elfarm-oabi.c: Define OLD_ARM_ABI and change include from 3552 elf/arm-oabi.h to elf/arm.h 3553 3554 * Makefile.am: Fix dependency for elfarm-oabi.c 3555 * Makefile.in: Regenerate. 3556 3557 * bfd-in2.h: Regenerate. 3558 * libbfd.h: Regenerate. 3559 35602000-04-06 Michael Snyder <msnyder@seadog.cygnus.com> 3561 3562 * elfcore.h (elf_core_file_p): preserve value of tdata at entry, 3563 and restore it on failure. Release newly allocated tdata on 3564 failure. 3565 3566Fri Apr 7 11:33:47 2000 Jim Wilson <wilson@cygnus.com> 3567 3568 * dwarf2.c (struct dwarf2_debug): New field dwarf_line_size. 3569 (decode_line_info): Set it. Report error if unit->line_offset is 3570 equal to or larger than it. 3571 35722000-04-07 Timothy Wall <twall@cygnus.com> 3573 3574 * targets.c: Added vecs for tic54x. 3575 * reloc.c: Added relocs for tic54x. 3576 * libbfd.h: Regenerated. 3577 * configure: Add TI COFF vecs for tic54x. 3578 * configure.in: Ditto. 3579 * config.bfd (targ_cpu): Recognize new tic54x target. 3580 * coffcode.h (coff_slurp_symbol_table): Additions for TI COFF handling. 3581 * bfd-in2.h: Add tic54x target and relocations. 3582 * Makefile.am, Makefile.in: Add tic54x target. 3583 * archures.c (bfd_archures_list): Add tic54x target. 3584 * coff-tic54x.c: New. 3585 * cpu-tic54x.c: New. 3586 35872000-04-06 Michael Snyder <msnyder@seadog.cygnus.com> 3588 3589 * elfcore.h (elf_core_file_p): call backend_object_p which 3590 thereby gets an opportunity to update the arch/machine type. 3591 35922000-04-06 Timothy Wall <twall@cygnus.com> 3593 3594 * coffcode.h (coff_slurp_symbol_table): Handle C_STATLAB storage 3595 class. Handle SEC_CLINK and SEC_BLOCK flags. 3596 * section.c: Add SEC_CLINK and SEC_BLOCK flags. 3597 * bfd-in2.h: Add SEC_CLINK and SEC_BLOCK flags. 3598 35992000-04-06 Nick Clifton <nickc@cygnus.com> 3600 3601 * elf32-arm.h (elf32_arm_set_private_flags): Only check for 3602 EF_INTERWORK if this is an unknown EABI. 3603 (elf32_arm_merge_private_bfd_data): Check EABI version 3604 numbers. Only check EF_xxx flags if the EABI version number 3605 is unknown. 3606 (elf32_arm_check_private_bfd_data): Only check EF_xxx flags 3607 if the EABI version number is unknown. 3608 (elf32_arm_print_private_bfd_data): Only decode EF_xxx flags 3609 if the EABI version number is unknown. 3610 3611Wed Apr 5 22:04:20 2000 J"orn Rennecke <amylaar@cygnus.co.uk> 3612 3613 * reloc.c (_bfd_relocate_contents): Add BFD_RELOC_SH_LOOP_START and 3614 BFD_RELOC_SH_LOOP_END. 3615 * elf32-sh.c (sh_elf_howto_tab): Change special_func to 3616 sh_elf_ignore_reloc for all entries that sh_elf_reloc used to ignore. 3617 Add entries for R_SH_LOOP_START and R_SH_LOOP_END. 3618 (sh_elf_reloc_loop): New function. 3619 (sh_elf_reloc): No need to test for always-to-be-ignored relocs 3620 any more. 3621 (sh_rel): Add entries for BFD_RELOC_SH_LOOP_{START,END}. 3622 (sh_elf_relocate_section): Handle BFD_RELOC_SH_LOOP_{START,END}. 3623 * bfd-in2.h, libbfd.h: Regenerate. 3624 36252000-04-04 Alan Modra <alan@linuxcare.com.au> 3626 3627 * po/bfd.pot: Regenerate. 3628 3629 * Makefile.am: Remove extraneous mkdep comment. 3630 (MKDEP): Use gcc -MM rather than mkdep. 3631 (DEP): Quote when passing vars to sub-make. Add warning 3632 message to end. 3633 (DEP1): Rewrite for "gcc -MM". 3634 (CLEANFILES): Add DEP2. 3635 Update dependencies. 3636 * Makefile.in: Regenerate. 3637 36382000-04-03 Kevin Buettner <kevinb@redhat.com> 3639 3640 * configure.in: Added corefile support for AIX 4.3. In particular, 3641 AIX_CORE_DUMPX_CORE will be defined in addition to AIX_CORE when 3642 compiling rs6000-core.c. 3643 * configure: Regenerated. 3644 36452000-04-03 H.J. Lu <hjl@gnu.org> 3646 3647 * cache.c (bfd_open_file): Unlink the output file only if 3648 it has non-zero size. 3649 36502000-04-01 Ken Block USG <block@zk3.dec.com> 3651 3652 * elf64-alpha.c (elf64_alpha_relocate_section): Don't emit 3653 relative relocations for non-loaded sections in shared objects. 3654 (elf64_alpha_check_relocs): Similarly. 3655 3656Mon Apr 3 13:37:15 2000 Hans-Peter Nilsson <hp@axis.com> 3657 3658 * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and 3659 BFD_RELOC_16 to switch for extended relocs. 3660 (MY_swap_ext_reloc_in): New. 3661 (MY_swap_ext_reloc_out): New. 3662 (NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather 3663 than NAME(aout,swap_ext_reloc_in) for extended relocs. 3664 (NAME(aout,squirt_out_relocs)): Similarly use 3665 MY_swap_ext_reloc_out. 3666 (aout_link_reloc_link_order): Use MY_put_ext_reloc if defined. 3667 36682000-04-03 Kazu Hirata <kazu@hxi.com> 3669 3670 * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to 3671 the R_PCRWORD_B case. 3672 36732000-03-31 Thomas de Lellis <tdel@wrs.com> 3674 3675 * srec.c : Set CHUNK size to 16 bytes to prevent download failures 3676 on some targets. 3677 * ihex.c : Ditto. 3678 3679Wed Mar 30 15:28:00 2000 Donald Lindsay <dlindsay@cygnus.com> 3680 3681 * elf32-m32r.c (m32r_elf_generic_reloc): new function. All 3682 HOWTO references to bfd_elf_generic_reloc, that have 3683 partial_inplace == true, now use the new function. The function 3684 is based on the recent rewrite of m32r_elf_lo16_reloc(), and 3685 extends its fixes to the R_M32R_{16,24,32} relocs. 3686 The new logic in m32r_elf_lo16_reloc() has been removed, and 3687 it instead calls the new routine to obtain that functionality. 3688 36892000-03-27 Alan Modra <alan@linuxcare.com.au> 3690 3691 * elf32-avr.c (elf32_avr_gc_mark_hook, elf32_avr_gc_sweep_hook, 3692 elf32_avr_check_relocs, avr_final_link_relocate, 3693 elf32_avr_relocate_section, bfd_elf_avr_final_write_processing, 3694 elf32_avr_object_p): Add prototypes. 3695 (elf32_avr_gc_mark_hook): Add default for h->root.type. 3696 (bfd_elf_avr_final_write_processing): Make static. 3697 36982000-03-27 Denis Chertykov <denisc@overta.ru> 3699 3700 * cpu-avr.c: New file. BFD support routines for AVR architecture. 3701 * archures.c (bfd_architecture): Add AVR architecture. 3702 (bfd_archures_list): Add reference to AVR architecture info. 3703 * elf.c (prep_headers): Handle bfd_arch_avr. 3704 * reloc.c: Add various AVR relocation enums. 3705 * targets.c (bfd_elf32_avr_vec): Declare and add to target vector 3706 list. 3707 * Makefile.am: Add support for AVR elf. 3708 * configure.in: Likewise. 3709 * config.bfd: Likewise. 3710 * Makefile.in: Regenerate. 3711 * configure: This too. 3712 * bfd-in2.h: And this. 3713 * libbfd.h: And this. 3714 37152000-03-24 H.J. Lu <hjl@gnu.org> 3716 3717 * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Add prototype. 3718 (elf64_alpha_find_reloc_at_ofs): Likewise. 3719 37202000-03-17 Alan Modra <alan@linuxcare.com.au> 3721 3722 * reloc.c (bfd_check_overflow): In case complain_overflow_bitfield, 3723 flag an overflow if the bitfield is outside -2**n to 2**n-1. The 3724 allowable range used to be -2**(n-1) to 2**n-1. 3725 * reloc.c (_bfd_relocate_contents): Same here. Also replace 3726 "boolean overflow" with "bfd_reloc_status_type flag". 3727 37282000-03-14 Doug Evans <dje@casey.transmeta.com> 3729 3730 * elf32-m32r.c (m32r_elf_lo16_reloc): Rewrite. 3731 37322000-03-14 Kazu Hirata <kazu@hxi.com> 3733 3734 * reloc16.c (bfd_coff_reloc16_relax_section): Count the total number 3735 of shrinks properly, including the last reloc. 3736 37372000-03-13 Kazu Hirata <kazu@hxi.com> 3738 3739 * coff-h8300.c (h8300_reloc16_extra_cases): Fix the sanity 3740 check for R_MOVL2. 3741 37422000-03-11 Alan Modra <alan@linuxcare.com.au> 3743 3744 * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on 3745 a format mismatch rather than an "error" from bfd_read such as 3746 bfd_error_file_truncated. 3747 37482000-03-10 Geoff Keating <geoffk@cygnus.com> 3749 3750 * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper 3751 sign-extension and big-endian compensation for 3752 R_MIPS_64 even in ld -r. 3753 37542000-03-10 Geoffrey Keating <geoffk@cygnus.com> 3755 3756 * elf32-mips.c (mips_elf_next_relocation): Rename from 3757 mips_elf_next_lo16_relocation, and generalize to look 3758 for any relocation type. 3759 (elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset. 3760 (elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16. 3761 (elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16. 3762 (elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2. 3763 (elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64. 3764 (elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32. 3765 (bfd_elf32_bfd_reloc_type_lookup): Add new relocs. 3766 (mips_rtype_to_howto): Likewise. 3767 (mips_elf_calculate_relocation): Handle new relocs. 3768 (_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs 3769 are paired. The addend for R_MIPS_GNU_REL16_S2 3770 is shifted right two bits. 3771 37722000-03-10 Alan Modra <alan@linuxcare.com.au> 3773 3774 * reloc.c (bfd_perform_relocation): Undo emacs formatting of 3775 comment, and ensure it doesn't happen again. 3776 (bfd_install_relocation): Same here. 3777 (_bfd_relocate_contents): Don't bother assigning unused signmask 3778 shift result. Fix typos in comments. 3779 Remove trailing whitespace throughout file. 3780 37812000-03-07 Doug Evans <dje@casey.transmeta.com> 3782 3783 * reloc.c (reloc_howto_struct): Fix partial_inplace comment. 3784 * bfd-in2.h: Rebuild. 3785 37862000-03-06 Nick Clifton <nickc@cygnus.com> 3787 3788 * peicode.h (struct pe_ILF_vars): Add sym_ptr_table and 3789 sym_ptr_ptr fields. 3790 (SIZEOF_ILF_SYM_PTR_TABLE): Define. 3791 (SIZEOF_ILF_STRINGS): Redefine. 3792 (pe_ILF_make_a_symbol-reloc): New function. Creates a symbol 3793 relative reloc, as opposed to a section relative reloc. 3794 (pe_ILF_make_a_symbol): Set the class of local symbols to C_STAT 3795 not C_LABEL. 3796 Add length of symbol's prefix to string pointer. 3797 Store a pointer to the symbol in the symbol pointer table. 3798 (pe_ILF_build_a_bfd): Do not build .idata$2 or .idata$7. 3799 Initialise the symbol pointer table. 3800 Store the hint in the Hint/Name table. 3801 Make the jump reloc be symbol realtive, not section relative. 3802 Create an import symbol for imported code. 3803 38042000-03-06 Catherine Moore <clm@cygnus.com> 3805 3806 * elf.c (swap_out_syms): Check for null type_ptr. 3807 38082000-03-01 Hans-Peter Nilsson <hp@axis.com> 3809 3810 * aout-target.h (MY(write_object_contents)): Remove unused 3811 and unusable "#if CHOOSE_RELOC_SIZE". 3812 * pc532-mach.c (MY(write_object_contents)): Ditto. 3813 * netbsd.h (MY(write_object_contents)): Ditto. 3814 * hp300hpux.c (MY(write_object_contents)): Ditto. 3815 * freebsd.h (MY(write_object_contents)): Ditto. 3816 * aout-tic30.c (tic30_aout_write_object_contents): Ditto. 3817 38182000-02-29 H.J. Lu <hjl@gnu.org> 3819 3820 * peicode.h (jtab): Make it static. 3821 3822 * coff-sh.c (sh_align_load_span): Declared if COFF_WITH_PE is 3823 defined and COFF_IMAGE_WITH_PE is not defined. 3824 (_bfd_sh_align_load_span): Defined as sh_align_load_span if 3825 COFF_WITH_PE is defined and COFF_IMAGE_WITH_PE is not defined. 3826 38272000-03-01 Nick Clifton <nickc@cygnus.com> 3828 3829 * coff-arm.c (bfd_arm_process_before_allocation): Make 3830 'symndx' signed to prevent compile time warning. 3831 3832 * coff-mcore.c: Remove unused prototype for pe_object_p. 3833 3834 * coff-sh.c: Add "#ifndef COFF_IMAGE_WITH_PE" around static 3835 functions that are not used when COFF_IMAGE_WITH_PE is 3836 defined. 3837 (struct sh_opcode): Change type of 'flags' field to unsigned 3838 long so that it can hold the USESAS flag. 3839 3840 * coffcode.h (styp_to_sec_flags): Initialise 'target_name'. 3841 3842 * elf-m10300.c (mn10300_elf_relax_section): Initialise 3843 'sym_sec'. 3844 3845 * elf32-i370.c: Add ATTRIBUTE_UNUSED to unused function 3846 parameters. 3847 Remove unusued variables and code. 3848 (elf_backend_add_symbol_hook): Fix prototype. 3849 3850 * elf32-m68k.c (elf_m68k_gc_sweep_hook): Initialise 'sgot' and 3851 'srelgot'. 3852 3853 * elf32-mcore.c (mcore_elf_relocate_section): Initialise 3854 'oldinst'. 3855 3856 * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function 3857 parameters. 3858 Remove unusued variables and code. 3859 (elf_backend_add_symbol_hook): Fix prototype. 3860 3861 * elf32-sh.c (sh_elf_set_mach_from_flags): Use 'flags'. 3862 3863 * elflink.h (elf_bfd_link_add_symbols): Add ATTRIBUTE_UNUSED 3864 to unused function parameter. 3865 3866 * pe-mips.c: Add ATTRIBUTE_UNUSED to unused function 3867 parameters. 3868 Use EMPTY_HOWTO to initialise empty howto slots. 3869 Remove unused variables. 3870 3871 * peicode.h (pe_ILF_build_a_bfd): Initialise id6. 3872 38732000-03-01 H.J. Lu <hjl@gnu.org> 3874 3875 * aoutx.h (aout_link_input_section_std): Pass "true" to 3876 the undefined_symbol callback. 3877 (aout_link_input_section_ext): Likewise. 3878 * bout.c (get_value): Likewise. 3879 * coff-a29k.c (coff_a29k_relocate_section): Likewise. 3880 * coff-alpha.c (alpha_ecoff_get_relocated_section_conten): 3881 Likewise. 3882 (alpha_relocate_section): Likewise. 3883 * coff-arm.c (coff_arm_relocate_section): Likewise. 3884 * coff-i960.c (coff_i960_relocate_section): Likewise. 3885 * coff-mcore.c (coff_mcore_relocate_section): Likewise. 3886 * coff-mips.c (mips_relocate_section): Likewise. 3887 * coff-ppc.c (coff_ppc_relocate_section): Likewise. 3888 * coff-sh.c (sh_relocate_section): Likewise. 3889 * coff-tic80.c (coff_tic80_relocate_section): Likewise. 3890 * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. 3891 * elf-m10200.c (mn10200_elf_relocate_section): Likewise. 3892 * elf-m10300.c (mn10300_elf_relocate_section): Likewise. 3893 * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. 3894 * elf32-fr30.c (fr30_elf_relocate_section): Likewise. 3895 * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. 3896 * elf32-i370.c (i370_elf_relocate_section): Likewise. 3897 * elf32-m32r.c (m32r_elf_relocate_section): Likewise. 3898 * elf32-mcore.c (mcore_elf_relocate_section): Likewise. 3899 * elf32-sh.c (sh_elf_relocate_section): Likewise. 3900 * elf32-v850.c (v850_elf_relocate_section): Likewise. 3901 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise. 3902 * elflink.h (elf_link_output_extsym): Likewise. 3903 * pe-mips.c (coff_pe_mips_relocate_section): Likewise. 3904 * reloc.c (bfd_generic_get_relocated_section_conten): Likewise. 3905 * reloc16.c (_bfd_ppc_xcoff_relocate_section): Likewise. 3906 3907 * elf-hppa.h (elf_hppa_relocate_section): Pass "false" to the 3908 undefined_symbol callback when building shared library with 3909 -Bsymbolic and undefined symbols are allowed. Otherwise, pass 3910 "true". 3911 * elf32-arm.h (elf32_arm_relocate_section): Likewise. 3912 * elf32-i386.c (elf_i386_relocate_section): Likewise. 3913 * elf32-m68k.c (elf_m68k_relocate_section): Likewise. 3914 * elf32-mips.c (mips_elf_calculate_relocation): Likewise. 3915 (elf32_mips_get_relocated_section_content): Likewise. 3916 * elf32-ppc.c (ppc_elf_relocate_section): Likewise. 3917 * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. 3918 * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. 3919 * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. 3920 39212000-02-28 Nick Clifton <nickc@cygnus.com> 3922 3923 * Makefile.am: Add rules to build pe[i]-{sh|mips}.lo objects. 3924 * Makefile.in: Regenerate. 3925 3926 * configure.in: Add support for mips and sh pe vectors. 3927 * configure: regenerate. 3928 3929 * config.bfd: Add support for arm-wince, mips-pe and sh-pe 3930 targets. 3931 3932 * targets.c: Add mips and sh pe vectors. 3933 3934 * libpei.h (coff_final_link_postscript): Only define if not 3935 already defined. 3936 3937 * coffcode.h: Add support for WinCE magic numbers. 3938 3939 * peigen.c (pe_print_reloc): Update comment and rearrange 3940 appending of newline character. 3941 3942 * peicode.h: Add support for Image Library Format. 3943 (pe_ILF_vars): Structure containing data used by ILF code. 3944 (pe_ILF_make_a_section): New function. Create a section based 3945 on ILF data. 3946 (pe_ILF_make_a_reloc): New function. Create a reloc based on 3947 ILF data. 3948 (pe_ILF_make_a_symbol): New function. Create a symbol based 3949 on ILF data. 3950 (pe_ILF_save_relocs): New function. Store the relocs created 3951 by pe_ILF_make_a_reloc in a section. 3952 (pe_ILF_build_a_bfd): New function. Create a BFD describing 3953 an ILF object. 3954 (pe_ILF_object_p): New function. Return a bfd_target pointer 3955 for an ILF object. 3956 (pe_bfd_object_p): If an ILF object is detected call 3957 pe_ILF_object_p on it. 3958 3959 * coff-arm.c: Add support for WinCE relocs which are different 3960 from normal ARM COFF relocs. 3961 * pe-arm.c: Unset TARGET_UNDERSCORE for a WinCE target. 3962 3963 * coff-sh.c: Add support for sh-pe target. 3964 * pe-sh.c: New file. Support code for sh-pe target. 3965 * pei-sh.c: New file. Support code for sh-pe target. 3966 3967 * pe-mips.c: New file. Support code for mips-pe target. 3968 * pei-mips.c: New file. Support code for mips-pe target. 3969 39702000-02-27 Jakub Jelinek <jakub@redhat.com> 3971 3972 * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Don't bump 3973 architecture if the object causing the bump is dynamic. 3974 * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): Likewise, 3975 and also don't it for memory ordering. 3976 (sparc64_elf_write_relocs): Take src_rela out of the loop. 3977 39782000-02-27 Ian Lance Taylor <ian@zembu.com> 3979 3980 * dwarf2.c (read_abbrevs): Use _raw_size directly rather than 3981 calling bfd_get_section_size_before_reloc. 3982 (decode_line_info): Likewise. 3983 (_bfd_dwarf2_find_nearest_line): Likewise. 3984 39852000-02-27 Eli Zaretskii <eliz@is.elta.co.il> 3986 3987 * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the 3988 name of the libtool directory. 3989 * Makefile.in: Rebuild. 3990 3991Fri Feb 25 18:39:26 2000 Rodney Brown (RodneyBrown@pmsc.com) 3992 3993 * som.c (SOM_HOWTO): Define. 3994 (som_hppa_howto_table): Use it. 3995 39962000-02-25 Alexandre Oliva <oliva@lsd.ic.unicamp.br> 3997 3998 * config.bfd: Enable 64 bit support for GNU/Linux/sparc. 3999 4000 * config.bfd: Enable 64 bit support for Solaris7+/sparc. 4001 40022000-02-24 Catherine Moore <clm@cygnus.com> 4003 4004 * som.c (som_misc_symbol_info): Add field 4005 secondary_def. 4006 (som_bfd_derive_misc_symbol_info): Initialize 4007 secondary_def. 4008 (som_build_and_write_symbol_table): Keep track 4009 of secondary_def field. 4010 (som_slurp_symbol_table): Set BSF_WEAK symbol flag 4011 if secondary_def field is set. 4012 (som_bfd_ar_write_symbol_stuff): Initialize 4013 secondary_def. 4014 40152000-02-23 Stephane Carrez <stcarrez@worldnet.fr> 4016 4017 * dwarf2.c (read_address): Read 16-bits addresses. 4018 (parse_comp_unit): Accept addr_size == 2. 4019 40202000-02-23 Alan Modra <alan@spri.levels.unisa.edu.au> 4021 4022 * bfd-in.h: Update copyright date. 4023 40242000-02-23 Linas Vepstas <linas@linas.org> 4025 4026 * cpu-i370.c: New file. 4027 * elf32-i370.c: New file. 4028 * archures.c (enum bfd_architecture): Add bfd_arch_i370. 4029 (bfd_i370_arch): New. 4030 (bfd_archures_list): Add bfd_i370_arch. 4031 * elf.c (prep_headers): Add bfd_arch_i370. 4032 * Makefile.am: Add support for IBM 370 elf. 4033 * config.bfd: Likewise. 4034 * configure.in: Likewise. 4035 * libbfd.h (bfd_reloc_code_real_names): Likewise. 4036 * reloc.c (bfd_reloc_code_type): Likewise. 4037 * targets.c: Likewise. 4038 4039 * Makefile.in: Regenerate. 4040 * configure: Regenerate. 4041 * bfd-in2.h: Regenerate. 4042 40432000-02-22 Ian Lance Taylor <ian@zembu.com> 4044 4045 * elf32-i386.c (elf_i386_info_to_howto_rel): Give a warning for 4046 invalid relocation types, and change them to R_386_NONE. 4047 40482000-02-22 H.J. Lu <hjl@gnu.org> 4049 4050 * elflink.h (elf_link_add_object_symbols): If a version symbol is 4051 not defined, don't add a second ELF_VER_CHR. 4052 4053 * elflink.h (elf_bfd_final_link): Call output_extsym for global 4054 symbols converted to local symbols even when stripping all 4055 symbols. 4056 (elf_link_output_extsym): Process global symbols converted to 4057 local symbols even if they are being stripped. 4058 40592000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au> 4060 4061 * archures.c (bfd_octets_per_byte): Return unsigned int. 4062 (bfd_arch_mach_octets_per_byte): Ditto. 4063 * libbfd.c (bfd_read, bfd_seek): Quell signed vs. unsigned 4064 comparison warning. 4065 * section.c (bfd_get_section_size_before_reloc): Quell signed 4066 vs. unsigned comparison warning. 4067 (bfd_get_section_size_after_reloc): Same here. Fix parentheses too. 4068 * trad-core.c (trad_unix_core_file_p): Correct 2000-01-27 4069 change. What was I thinking? 4070 * bfd-in2.h: Regenerate. 4071 4072 * elflink.h (elf_gc_sweep): Skip non-elf input bfds. 4073 (elf_gc_sections): Same here. 4074 (elf_gc_common_finalize_got_offsets): And here. 4075 40762000-02-21 Ian Lance Taylor <ian@zembu.com> 4077 4078 ELF HPPA doesn't work at present; remove it until it does. 4079 * config.bfd: Comment out setting targ_defvec to 4080 bfd_elf32_hppa_vec. 4081 * Makefile.am: Rebuild dependencies. 4082 (BFD32_BACKENDS): Remove elf32-hppa.lo. 4083 (BFD32_BACKENDS_CFILES): Remove elf32-hppa.c. 4084 (SOURCE_HFILES): Remove elf32-hppa.h and hppa_stubs.h. 4085 * Makefile.in: Rebuild. 4086 * targets.c (bfd_target_vector): Comment out bfd_elf32_hppa_vec. 4087 40882000-02-18 Geoff Keating <geoffk@cygnus.com> 4089 4090 * coffcode.h (coff_set_arch_mach_hook): Use free(), because there 4091 is no bfd_free(). Revert bfd_free part of previous change. 4092 40932000-02-18 Geoff Keating <geoffk@cygnus.com> 4094 4095 * coffcode.h (coff_set_arch_mach_hook): Don't use variable-size 4096 arrays. 4097 (coff_compute_section_file_positions): Use bfd_free to pair 4098 bfd_malloc. 4099 (coff_write_object_contents): Likewise. 4100 4101 * coff-rs6000.c (xcoff_howto_table_16): New variable. 4102 (xcoff_rtype2howto): Handle 16-bit variants of 32-bit relocs. 4103 41042000-02-18 Ulrich Drepper <drepper@cygnus.com> 4105 4106 * coff-rs6000.c (XCOFFARMAGBIG): New macro. 4107 (xcoff_ar_file_hdr_big): New structure. 4108 (SIZEOF_AR_FILE_HDR_BIG): New macro. 4109 (xcoff_ar_hdr_big): New structure. 4110 (SIZEOF_AR_HDR_BIG): New macro. 4111 (xcoff_big_format_p): New macro. 4112 (xcoff_ardata_big): New macro. 4113 (arch_xhdr_big): New macro. 4114 (xcoff_slurp_armap): Handle large archives. 4115 (xcoff_archive_p): Detect large archives. 4116 (xcoff_read_ar_hdr): Handle large archives. 4117 (xcoff_openr_next_archived_file): Handle large archives. 4118 (xcoff_generic_stat_arch_elt): Handle large archives. 4119 (xcoff_write_armap_old): Rename from xcoff_write_armap. 4120 (xcoff_write_armap_big): New function. 4121 (xcoff_write_armap): New function, dispatch to _old or _big. 4122 (xcoff_write_archive_contents_old): Rename from 4123 xcoff_write_archive_contents. 4124 (xcoff_write_archive_contents_big): New function. 4125 (xcoff_write_archive_contents): New function, dispatch to _old or 4126 _big. 4127 41282000-02-18 Richard Henderson <rth@cygnus.com> 4129 4130 * elf-bfd.h (struct elf_link_hash_table): Remove copy_indirect 4131 and hide_symbol members. 4132 (elf_link_hash_copy_indirect): Remove. 4133 (elf_link_hash_hide_symbol): Remove. 4134 (struct elf_backend_data): Add elf_backend_copy_indirect_symbol 4135 and elf_backend_hide_symbol. 4136 (_bfd_elf_link_hash_copy_indirect): Declare. 4137 (_bfd_elf_link_hash_hide_symbol): Declare. 4138 * elf.c (_bfd_elf_link_hash_copy_indirect): Remove table argument. 4139 (_bfd_elf_link_hash_hide_symbol): Likewise. 4140 (_bfd_elf_link_hash_table_init): Don't init killed members. 4141 * elflink.h (elf_link_add_object_symbols): Use the bed function 4142 pointers not elf_link_hash_{copy_indirect,hide_symbol}. 4143 (elf_link_assign_sym_version): Likewise. 4144 * elfxx-target.h (elf_backend_copy_indirect_symbol): Default. 4145 (elf_backend_hide_symbol): Likewise. 4146 (elfNN_bed): Update for new members. 4147 41482000-02-17 Kevin Buettner <kevinb@redhat.com> 4149 4150 * rs6000-core.c (CORE_DATA_SIZE_FIELD, CORE_COMM_FIELD, SAVE_FIELD, 4151 STACK_END_ADDR): Define for new core file format. 4152 (LOADER_OFFSET_FIELD, LOADER_REGION_SIZE, CORE_DUMP): New defines 4153 for handling the vagaries of the various core file structures used 4154 by AIX over the years. 4155 (rs6000coff_core_p, rs6000coff_core_file_matches_executable, 4156 Rs6kCorData): Use above defines to adapt code to use AIX 4.3's 4157 core_dumpx structure. 4158 4159Thu Feb 17 00:04:48 2000 J"orn Rennecke <amylaar@cygnus.co.uk> 4160 4161 * archures.c (bfd_mach_sh2, bfd_mach_sh_dsp): New macros. 4162 (bfd_mach_sh3_dsp): Likewise. 4163 (bfd_mach_sh4): Reinstate. 4164 (bfd_default_scan): Recognize 7410, 7708, 7729 and 7750. 4165 * bfd-in2.h: Regenerate. 4166 * coff-sh.c (struct sh_opcode): flags is no longer short. 4167 (USESAS, USESAS_REG, USESR8, SETSAS, SETSAS_REG): New macros. 4168 (sh_opcode41, sh_opcode42): Integrate as sh_opcode41. 4169 (sh_opcode01, sh_opcode02, sh_opcode40): Add sh-dsp opcodes. 4170 (sh_opcode41, sh_opcode4, sh_opcode80): Likewise. 4171 (sh_opcodes): No longer const. 4172 (sh_dsp_opcodef0, sh_dsp_opcodef): New arrays. 4173 (sh_insn_uses_reg): Check for USESAS and USESR8. 4174 (sh_insn_sets_reg, sh_insns_conflict): Check for SETSAS. 4175 (_bfd_sh_align_load_span): Return early for SH4. 4176 Modify sh_opcodes lookup table for sh-dsp / sh3-dsp. 4177 Take into account that field b of a parallel processing insn 4178 could be mistaken for a separate insn. 4179 * cpu-sh.c (arch_info_struct): New array elements for 4180 sh2, sh-dsp and sh3-dsp. 4181 Reinstate element for sh4. 4182 (SH2_NEXT, SH_DSP_NEXT, SH3_DSP_NEXT): New macros. 4183 (SH4_NEXT): Reinstate. 4184 (SH3_NEXT, SH3E_NEXT): Adjust. 4185 * elf-bfd.h (_sh_elf_set_mach_from_flags): Declare. 4186 * elf32-sh.c (sh_elf_set_private_flags): New function. 4187 (sh_elf_copy_private_data, sh_elf_set_mach_from_flags): Likewise. 4188 (sh_elf_merge_private_data): New function. 4189 (elf_backend_object_p, bfd_elf32_bfd_set_private_bfd_flags): Define. 4190 (bfd_elf32_bfd_copy_private_bfd_data): Define. 4191 (bfd_elf32_bfd_merge_private_bfd_data): Change to 4192 sh_elf_merge_private_data. 4193 41942000-02-13 Richard Henderson <rth@cygnus.com> 4195 4196 * elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and 4197 hide_symbol members. 4198 (elf_link_hash_copy_indirect): New. 4199 (elf_link_hash_hide_symbol): New. 4200 * elflink.h (elf_link_add_object_symbols): Break out copy from 4201 indirect new new symbol to elf.c. 4202 (elf_link_assign_sym_version): Break out privatization of 4203 non-exported symbol to elf.c. 4204 * elf.c (_bfd_elf_link_hash_copy_indirect): New. 4205 (_bfd_elf_link_hash_hide_symbol): New. 4206 (_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol. 4207 42082000-02-13 Ian Lance Taylor <ian@zembu.com> 4209 4210 * section.c (_bfd_strip_section_from_output): Add info parameter. 4211 If it passed as non-NULL, use it to check whether any input BFD 4212 has an input section which uses this output section. Change all 4213 callers. 4214 * bfd-in2.h: Rebuild. 4215 4216 * bfd-in.h: Move declarations of bfd_get_elf_phdr_upper_bound and 4217 bfd_get_elf_phdrs in from bfd-in2.h, correcting patch of 4218 1999-11-29. 4219 * bfd-in2.h: Rebuild. 4220 42212000-02-10 Timothy Wall <twall@cygnus.com> 4222 4223 * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to 4224 allow final modifications of swapped-in symbol. 4225 (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST. 4226 * coffcode.h (coff_write_relocs): Use macro 4227 SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether 4228 symbol index should be set to -1. 4229 4230Thu Feb 10 20:07:50 GMT 2000 Toshiyasu Morita (toshi.morita@sega.com) 4231 4232 * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG, 4233 USESF1_REG, USESF2_REG, SETSF1_REG, SETSF2_REG): New macros. 4234 * (sh_insn_sets_reg, sh_insn_sets_freg): New prototypes. 4235 * (sh_insn_sets_reg, sh_insn_uses_or_sets_reg, sh_insns_sets_freg, 4236 sh_insns_uses_or_sets_freg): New functions. 4237 * (sh_insn_uses_reg, sh_insn_uses_freg): Use new macros. 4238 * (sh_insns_conflict): Use new functions and new macros to 4239 detect conflicts when two instructions both set same integer registers, 4240 both set same fp register, and both set special register. 4241 42422000-02-09 Timothy Wall <twall@cygnus.com> 4243 4244 * coffgen.c (coff_real_object_p): Set arch/mach info prior to 4245 swapping in sections, so that the swapping routines have access to 4246 the arch/mach info. 4247 42482000-02-08 Mark Elbrecht <snowball3@bigfoot.com> 4249 4250 * coff-go32.c: Update comment. Update copyright. 4251 42522000-01-27 Thomas de Lellis <tdel@windriver.com> 4253 4254 * syms.c (bfd_decode_symclass) 4255 Two new class characters were added - 'V' and 'v'. The 4256 meaning of 'W' is now restricted to just weak non-object 4257 symbols. This allows differentiation between, for example, 4258 weak functions vs weak objects. nm for example now dumps: 4259 'W' = weak global 4260 'w' = weak unresolved 4261 'V' = weak global object 4262 'v' = weak unresolved object 4263 4264 (bfd_is_undefined_symclass): New function. Return true if the 4265 given symbol class represents and undefined/unresolved symbol. 4266 4267 (bfd_symbol_info): Use bfd_is_undefined_symclass to check for 4268 unresolved symbols. 4269 4270 * bfd-in2.h: Add prototype for bfd_is_undefined_symbol(). 4271 4272 * elf32-arm.h (elf32_arm_get_symbol_type): If a symbol has the 4273 STT_ARM_16BIT flag set, but it is not attached to a data object 4274 return STT_ARM_16BIT so that it will be treated as code by the 4275 disassembler. 4276 42772000-01-27 Alan Modra <alan@spri.levels.unisa.edu.au> 4278 4279 * coff-i386.c (i3coff_object_p): Remove prototype. 4280 Update copyright. 4281 4282 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Add const 4283 to name. Update copyright. 4284 4285 * trad-core.c (trad_unix_core_file_p): Cast core_regsec 4286 assignment to avoid warning. Update copyright. 4287 42882000-01-24 Robert Lipe (robertl@sco.com) 4289 4290 * coffcode.h (coff_write_object_contents): Get buff via bfd_malloc 4291 instead of using GNU C extension. 4292 42932000-01-21 Nick Clifton <nickc@cygnus.com> 4294 4295 * libbfd.c (bfd_read): Do not attempt to get a negativly sized 4296 amount from a bfd_in_memory structure. 4297 (bfd_seek): Do not allow seeks past the end of a bfd_in_memory 4298 structure. 4299 43002000-01-14 Nick Clifton <nickc@cygnus.com> 4301 4302 * linker.c (default_indirect_link_order): oops - fix incorrectly 4303 applied patch from Tim Wall. 4304 43052000-01-13 Timothy Wall (twall@tiac.net> 4306 4307 * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx 4308 = scnhsz, filhsz, relsz, aoutsz, etc) 4309 4310 * coffswap.h: Ditto. 4311 43122000-01-13 Nick Clifton <nickc@cygnus.com> 4313 4314 * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to 4315 interwork thumb to arm stub. 4316 43172000-01-13 Timothy Wall (twall@tiac.net> 4318 4319 * archures.c (bfd_octets_per_byte): New function: Return 4320 target byte size. 4321 (bfd_arch_mach_octets_per_byte): New function: Return target 4322 byte size. 4323 4324 * section.c: Distinguish between octets and bytes for usage of 4325 _cooked_size, _raw_size, and output_offset. Clarify 4326 description of bfd_set_section_contents. 4327 4328 * bfd-in2.h: Regenerate. 4329 4330 * coffgen.c: Indicate that the offset parameter is in bytes, not 4331 octets. 4332 4333 * cofflink.c (bfd_coff_link_input_bfd): Use bfd_octets_per_byte 4334 where appropriate to get the octet offset when calling 4335 bfd_set_section_contents. 4336 (bfd_coff_reloc_link_order): Ditto. 4337 4338 * linker.c (bfd_generic_reloc_link_order): Ditto. 4339 (_bfd_default_link_order): Ditto. 4340 4341 * reloc.c (bfd_perform_relocation): Distinguish between octets 4342 and bytes. Use octets when indexing into octet data; use bytes 4343 when calculating target addresses. 4344 (bfd_install_relocation): Ditto. 4345 4346 * srec.c (srec_write_section): Ditto. 4347 43482000-01-13 Nick Clifton <nickc@cygnus.com> 4349 4350 * coff-mcore.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from 4351 3 to 2. This allows 4 byte sized sections, which is necessary for 4352 dlltool to build functioning DLLs. 4353 43542000-01-10 Philip Blundell <pb@futuretv.com> 4355 4356 * config.bfd (arm*-*-linux-gnu*): Match instead of arm*-*-linux-gnu. 4357 (arm*-*-conix*): New target. 4358 43592000-01-10 Egor Duda <deo@logos-m.ru> 4360 4361 * config.bfd: Include elf32_i386 vector to target list for cygwin 4362 and mingw. 4363 4364 * config.in: Undefine HAVE_WIN32_PSTATUS_T. 4365 * configure.in: Test for structure win32_pstatus_t in 4366 <sys/procfs.h> 4367 * configure: Regenerate. 4368 4369 * elf.c (elfcore_grok_win32pstatus): New function: process 4370 win32_pstatus_t notes in elf core file. 4371 (elfcore_grok_note): Detect win32_pstatus notes. 4372 43732000-01-03 Martin v. Loewis <loewis@informatik.hu-berlin.de> 4374 4375 * elflink.c (_bfd_elf_link_record_dynamic_symbol): Process symbol 4376 visibility. 4377 * elflink.h (elf_link_add_object_symbols): Combine visibilities. 4378 * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility. 4379 4380For older changes see ChangeLog-9899 4381 4382Local Variables: 4383mode: change-log 4384left-margin: 8 4385fill-column: 74 4386version-control: never 4387End: 4388