Ignore:
Timestamp:
Aug 16, 2003, 6:59:22 PM (22 years ago)
Author:
bird
Message:

binutils v2.14 - offical sources.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/GNU/src/binutils/bfd/ChangeLog

    • Property cvs2svn:cvs-rev changed from 1.1 to 1.1.1.2
    r608 r609  
    1 2001-06-19  Philip Blundell  <philb@gnu.org>
    2 
    3         * configure.in: Set version to 2.11.2.
     12003-06-12  Daniel Jacobowitz  <drow@mvista.com>
     2
     3        * configure.in: Bump version to 2.14.
     4        * configure: Regenerated.
     5
     62003-06-05  Daniel Jacobowitz  <drow@mvista.com>
     7
     8        * elfcode.h (elf_slurp_reloc_table_from_section): Don't dereference
     9        NULL function pointers.
     10
     112003-06-04  Svein E. Seldal  <Svein.Seldal@solidas.com>
     12
     13        * coff-tic4x.c (ticoff0_swap_table, ticoff1_swap_table): Fixed
     14        initialization bug
     15
     162003-06-03  Nick Clifton  <nickc@redhat.com>
     17
     18        * elf32-v850.c (v850_elf_howto_t): Rename R_V850_32to
     19        R_V850_ABS32.  Add entry for R_V850_REL32.
     20        (v850_elf_reloc_map): Likewise.
     21        (v850_elf_check_relocs): Likewise.
     22        (v850_elf_perform_relocation): Likewise.
     23        (v850_elf_final_link_relocate): Likewise.  Include computation
     24        to make R_V850_REl32 pc-relative.
     25         
     262003-06-02  Daniel Jacobowitz  <drow@mvista.com>
     27
     28        * configure.in: Bump version to 2.13.92.
     29        * configure: Regenerated.
     30
     312003-06-02  Daniel Jacobowitz  <drow@mvista.com>
     32
     33        * config.bfd: Move obsolete entries out of the range of the
     34        targmatch sed script.
     35
     362003-06-02  Daniel Jacobowitz  <drow@mvista.com>
     37
     38        * config.bfd (mips*-dec-bsd*, mips*-*-pe*): Mark as obsolete.
     39
     402003-06-02  Daniel Jacobowitz  <drow@mvista.com>
     41
     42        Merge from mainline:
     43        2003-05-28  Alan Modra  <amodra@bigpond.net.au>
     44        * elf32-hppa.c (elf32_hppa_relocate_section): Delete bogus
     45        undefined_symbol call.
     46
     47        2003-05-21  Nick Clifton  <nickc@redhat.com>
     48        * elf.c (bfd_elf_get_needed_list): Use is_elf_hash_table to check
     49        the type of the has table in the bfd_link_info structure.
     50        (bfd_elf_get_runpath_list): Likewise.
     51
     52        2003-05-20  Jakub Jelinek  <jakub@redhat.com>
     53        * elflink.h (elf_link_output_extsym): Only issue error about !=
     54        STV_DEFAULT symbols if they are bfd_link_hash_undefined.
     55
     56        * elflink.h (elf_merge_symbol): Change from:
     57         2003-05-20  H.J. Lu <hongjiu.lu@intel.com>
     58         * elflink.c (_bfd_elf_merge_symbol): Check ELF_LINK_DYNAMIC_DEF
     59         when removing the old definition for symbols with non-default
     60         visibility.
     61
     622003-05-31  Jakub Jelinek  <jakub@redhat.com>
     63
     64        * elf32-ppc.c (allocate_dynrelocs): Use single slot for first 8192
     65        plt entries, not just 8191.
     66
     672003-05-30  Daniel Jacobowitz  <drow@mvista.com>
     68
     69        * elfxx-mips.c (_bfd_mips_elf_discard_info): Correct loop index.
     70        Reported by Ken Faiczak <kfaiczak@SANDVINE.com>.
     71
     722003-05-29  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     73
     74        * elfxx-mips.c: Don't force symbols local unconditionally.
     75
     762003-05-23  Stuart F. Downing  <sdowning@fame.com>
     77
     78        * som.h: Define PA_2_0 before including a.out.h
     79
     802003-05-15  Daniel Jacobowitz  <drow@mvista.com>
     81
     82        Merge from mainline:
     83
     84        2003-05-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
     85        * elf32-s390.c (ELIMINATE_COPY_RELOCS): Define as one.
     86        (elf_s390_adjust_dynamic_symbol): For weak symbols, copy
     87        ELF_LINK_NON_GOT_REF from weakdef.
     88        (elf_s390_copy_indirect_symbol): Test whether the weakdef sym has
     89        already been adjusted before treating it specially.
     90        * el64-s390.c: Likwise.
     91
     92        2003-05-08  H.J. Lu <hongjiu.lu@intel.com>
     93        * elflink.h (elf_add_default_symbol): After skipping the
     94        unversioned symbol, go to non-default one.
     95
     96        2003-05-07  H.J. Lu <hongjiu.lu@intel.com>
     97        * elflink.h (elf_link_check_versioned_symbol): Also handle the
     98        case that a DSO references a hidden symbol which may be
     99        satisfied by a versioned symbol in another DSO.
     100        (elf_link_output_extsym): Check versioned definition for hidden
     101        symbol referenced by a DSO.
     102
     103        2003-05-06  Alexandre Oliva  <aoliva@redhat.com>
     104        * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Improve
     105        error message for mixing different-endian files.  Check for ABI
     106        compatibility of input files with the selected emulation.
     107
     1082003-05-13  Stephane Carrez  <stcarrez@nerim.fr>
     109
     110        * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Check for
     111        processor capability, allow merge of HC12 and HCS12 in some cases.
     112        (m68hc11_elf_hash_table_create): Use bfd_malloc instead of bfd_zalloc.
     113        * cpu-m68hc12.c (bfd_m68hc12s_arch): New struct.
     114        (bfd_m68hc12_arch): Link it.
     115        (scan_mach): New function.
     116
     1172003-05-13  Andrew Haley  <aph@redhat.com>
     118
     119        * elf.c (bfd_elf_hash): Mask lower 32 bits of hash.
     120
     1212003-05-09  Alan Modra  <amodra@bigpond.net.au>
     122
     123        * cpu-arm.c (arm_check_note): Warning fix.
     124        * elf32-iq2000.c (iq2000_elf_check_relocs): Warning fixes.  Arrange
     125        to keep relocs if edited.
     126        (iq2000_elf_print_private_bfd_data): Return TRUE.
     127        * elfxx-ia64.c (elfNN_ia64_relax_section): Use ELFNN_R_SYM, not
     128        ELF64_R_SYM.
     129        (elfNN_ia64_relax_ldxmov): Warning fix.
     130        * xtensa-isa.c (xtensa_add_isa): Warning fix.
     131        * xtensa-modules.c (get_num_opcodes): Warning fix.
     132
     1332003-05-09  Andrey Petrov <petrov@netbsd.org>
     134
     135        * elf.c (elf_fake_sections): Use correct cast for sh_name.
     136
     1372003-05-05  Daniel Jacobowitz  <drow@mvista.com>
     138
     139        * configure.in: Bump version to 2.13.91 for prerelease.
     140        * configure: Regenerated.
     141
     1422003-05-04  H.J. Lu <hjl@gnu.org>
     143
     144        * elflink.h (elf_merge_symbol): Correctly handle weak definiton.
     145
     1462003-05-04  H.J. Lu <hjl@gnu.org>
     147
     148        * elflink.h (elf_merge_symbol): Don't record a hidden/internal
     149        symbol dynamic. Check indirection when removing the old
     150        definition for symbols with non-default visibility.
     151        (elf_add_default_symbol): Skip when told by elf_merge_symbol.
     152
     1532003-05-03  Daniel Jacobowitz  <drow@mvista.com>
     154
     155        Merge from mainline:
     156        2003-04-28  H.J. Lu <hjl@gnu.org>
     157        * elfxx-ia64.c (elfNN_ia64_relax_section): Relax ldxmov during
     158        the relax finalize pass.
     159
     160        * section.c (struct sec): Add need_finalize_relax and remove
     161        flag11.
     162        (STD_SECTION): Update struct sec initializer.
     163        * bfd-in2.h: Regenerated.
     164
     165        2003-04-28  H.J. Lu <hjl@gnu.org>
     166        * elflink.h (elf_merge_symbol): Call elf_backend_copy_indirect_symbol
     167        to copy any information related to dynamic linking when we flip
     168        the indirection.
     169
     170        2003-04-27  H.J. Lu <hjl@gnu.org>
     171        * elf-bfd.h (ELF_LINK_DYNAMIC_DEF): New.
     172        (ELF_LINK_DYNAMIC_WEAK): New.
     173
     174        * elflink.h (elf_merge_symbol): Add one argument to indicate if
     175        a symbol should be skipped. Ignore definitions in dynamic
     176        objects for symbols with non-default visibility.
     177        (elf_add_default_symbol): Adjusted.
     178        (elf_link_add_object_symbols): Check if a symbol should be
     179        skipped. Don't merge the visibility field with the one from
     180        a dynamic object.
     181        (elf_link_check_versioned_symbol): Use undef_bfd.
     182        (elf_link_output_extsym): Warn if a forced local symbol is
     183        referenced from dynamic objects. Make non-weak undefined symbol
     184        with non-default visibility a fatal error.
     185
     1862003-05-02  Charles Lepple <clepple@ghz.cc>
     187            Nick Clifton <nickc@redhat.com>
     188
     189        * acinclude.m4: Fix name of --enable-install-libbfd switch.
     190        * aclocal.m4: Regenerate.
    4191        * configure: Regenerate.
    5 
    6 2001-06-19  Andreas Jaeger  <aj@suse.de>
    7 
    8         Merge from mainline sources:
    9         2001-06-19  Andreas Jaeger  <aj@suse.de>
    10         * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of
    11         dynamic symbols.
    12         2001-06-07  Andreas Jaeger  <aj@suse.de>
    13         * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an
    14         assertion.
    15         (elf64_x86_64_check_relocs): Set an alignment of 8 for .rela
    16         sections; handle further relocations.
    17         2001-06-01  Andreas Jaeger  <aj@suse.de>
    18         * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8
    19         relocation, small reformatting.
    20 
    21 2001-06-14  Nick Clifton <nickc@redhat.com>
    22 
    23         Merge from mainline sources:
    24         2001-04-27  Sean McNeil <sean@mcneil.com>
    25         * config.bfd: Add arm-vxworks target.
    26         * coff-arm (coff_arm_relocate_section): Add in symbol value to
    27         addend (fro VXworks targets).
    28         2001-03-06  Nick Clifton  <nickc@redhat.com>
    29         * elf32-arm.h (elf32_arm_final_link_relocate): Clear bit zero
    30         of offset in BLX(1) instruction.
    31         * coff-arm.c (coff_arm_relocate_section): Clear bit zero of
    32         offset in BLX(1) instruction.
    33         Fix formatting.
    34         2001-03-06  Nick Clifton  <nickc@redhat.com>
    35         * coff-arm.c (coff_arm_reloc_type_lookup): Add
    36         BFD_RELOC_THUMB_PCREL_BLX.
    37         2001-05-04  Nick Clifton  <nickc@cambridge.redhat.com>
    38         * elf32-arm.h (elf32_arm_final_link_relocate): Set
    39         EF_ARM_HASENTRY if the start address is set.
    40 
    41 2001-06-11  Alan Modra  <amodra@bigpond.net.au>
    42 
    43         * configure.in (<COREFILE case stmt>): Move powerpc-*-*bsd* after
    44         powerpc-*-freebsd*.
    45 
    46         Merge from mainline.
    47         2001-06-02  H.J. Lu  <hjl@gnu.org>
    48         * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX
    49         and ELFOSABI_HPUX.
    50         * elf64-hppa.c (elf64_hppa_object_p): Likewise.
    51 
    52         2001-06-02  Hans-Peter Nilsson  <hp@axis.com>
    53         * section.c (_bfd_strip_section_from_output): Handle NULL
    54         output_section.
    55 
    56         2001-05-30  Alan Modra  <amodra@one.net.au>
    57         * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for
    58         millicode.  Don't allocate .got and .rela.got space here..
    59         (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here..
    60         (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and
    61         .rela.plt here..
    62         (hppa_handle_PIC_calls): ..nor here..
    63         (allocate_plt_and_got): ..instead do it all here.  New function.
    64         (elf32_hppa_size_dynamic_sections): Allocate local .got space and
    65         call allocate_plt_and_got.  No need to zap .got if not dynamic.
    66         (elf32_hppa_final_link): Call regular bfd_final_link instead of
    67         gc_common_final_link.
    68         (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
    69         (elf32_hppa_relocate_section): Use it here.
    70         (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of
    71         dynamic_sections_created.
    72         (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym.
    73 
    74         2001-05-28  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
    75         * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of
    76         a zeroing loop.
    77         (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly.
    78         (elf_link_input_bfd): Likewise.
    79         (elf_reloc_link_order): Likewise.
    80         (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64
    81         relocations correctly.
    82 
    83         2001-05-28  Alan Modra  <amodra@one.net.au>
    84         * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries
    85         for symbols forced local that need plabels.
    86         (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in
    87         .plt.rela for local syms if non-shared.
    88         (hppa_build_one_stub): Mask lsb of plt.offset.
    89         (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set.
    90         (clobber_millicode_symbols): Correct comment.
    91         (elf32_hppa_relocate_section): Likewise.
    92         (elf32_hppa_finish_dynamic_symbol): Likewise.
    93 
    94         2001-05-25  Alan Modra  <amodra@one.net.au>
    95         * elf32-hppa.c (elf32_hppa_relocate_section): Don't allow
    96         undefined millicode syms in shared libs.
    97         (hppa_build_one_stub): Turn BFD_ASSERTs into aborts.
    98         (elf32_hppa_check_relocs): Likewise.
    99         (elf32_hppa_adjust_dynamic_symbol): Likewise.
    100         (elf32_hppa_size_dynamic_sections): Likewise.
    101         (elf32_hppa_relocate_section): Likewise.
    102         (elf32_hppa_finish_dynamic_symbol): Likewise.
    103         (elf32_hppa_finish_dynamic_sections): Likewise.
    104 
    105         2001-05-23  Alexandre Oliva  <aoliva@redhat.com>
    106         * elf64-sparc.c (sparc64_elf_slurp_reloc_table): Fix typo
    107         s/ENTIRES/ENTRIES/.
    108 
    109         2001-05-23  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
    110         * reloc.c (bfd_reloc_code_real): Add MIPS ELF64 relocations.
     192        * Makefile.in: Regenerate.
     193
     1942003-05-02  Andreas Jaeger  <aj@suse.de>
     195
     196        * elf64-x86-64.c (elf_x86_64_copy_indirect_symbol): Don't copy
     197        ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted.
     198        (ELIMINATE_COPY_RELOCS): Define as one.  Use throughout.
     199        (elf_x86_64_adjust_dynamic_symbol): For weak symbols, copy
     200        ELF_LINK_NON_GOT_REF from weakdef.
     201
     2022003-05-01  Alan Modra  <amodra@bigpond.net.au>
     203
     204        * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Test whether the
     205        weakdef sym has already been adjusted before treating it specially.
     206        * elf32-i386.c (elf_i386_copy_indirect_symbol): Don't copy
     207        ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted.
     208        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
     209        (ppc64_elf_check_relocs): Set ELF_LINK_NON_GOT_REF.
     210
     2112003-04-26  Stephane Carrez  <stcarrez@nerim.fr>
     212
     213        PR savannah/3331:
     214        * elf32-m68hc11.c (m68hc11_elf_relax_section): Clear prev_insn_group
     215        when we couldn't relax something.
     216
     2172003-04-25  Alan Modra  <amodra@bigpond.net.au>
     218
     219        * elflink.h (elf_merge_symbol): When we find a regular definition
     220        for an indirect symbol, flip the indirection so that the old
     221        direct symbol now points to the new definition.
     222
     2232003-04-24  Roland McGrath  <roland@redhat.com>
     224
     225        * elf.c (bfd_section_from_phdr): Map PT_GNU_EH_FRAME to "eh_frame_hdr".
     226
     2272003-04-24  Alan Modra  <amodra@bigpond.net.au>
     228
     229        * elf32-ppc.c: Formatting and comment fixes.
     230        (ELIMINATE_COPY_RELOCS): Move before ppc_elf_copy_indirect_symbol.
     231        (ppc_elf_copy_indirect_symbol): Copy flags here for weakdefs.
     232
     2332003-04-24 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
     234
     235        * archures.c (bfd_mach_h8300hn, bfd_mach_h8300sn): Added.
     236        * bfd-in2.h: Rebuilt.
     237        * coff-h8300.c (BADMAG): Add check for H8300HNBADMAG & H8300SNBADMAG.
     238        * coffcode.h (coff_set_arch_mach_hook): Add case for H8300HNMAGIC
     239        & H8300SNMAGIC.
     240        (coff_set_flags): Add case for bfd_mach_h8300hn & bfd_mach_h8300sn.
     241        * cpu-h8300.c (h8300_scan): Handle h8300hn, h8300sn.
     242        (h8300sn_info_struct, h8300hn_info_struct): New.
     243        * elf32-h8300.c (elf32_h8_mach): Handle case for h8300hn & h8300sn
     244        (elf32_h8_final_write_processing): Likewise.
     245
     2462003-04-23  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
     247
     248        * elf32-sh.c (tpoff): New.
     249        (struct elf_sh_dyn_relocs): Remove tls_tpoff32.
     250        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
     251        (allocate_dynrelocs): Don't make unnecessary dynamic TLS
     252        relocations.  Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses.
     253        (sh_elf_relocate_section): Likewise. Remove unnecessary tests.
     254        (dtpoff_base): Fix wrong indentation.
     255        (sh_elf_check_relocs): Don't set DF_STATIC_TLS flag with non-TLS
     256        relocations.  Don't set tls_tpoff32 flag.  Don't make unnecessary
     257        R_SH_TLS_TPOFF32 relocations.
     258
     2592003-04-23  J"orn Rennecke <joern.rennecke@superh.com>
     260
     261        * archures.c (enum bfd_architecture): Amend comment to refer to SuperH.
     262        * cpu-sh.c: Likewise.
     263        * elf32-sh.c: Likewise.
     264        * reloc.c (bfd_reloc_code_real): Likewise.
     265        * elf32-sh64-com.c: Change comment to refer to SuperH.
     266        * elf32-sh64.c: Likewise.
     267        * elf64-sh64.c: Likewise.
     268        * bfd-in2.h (enum bfd_architecture): Regenerate.
     269
     2702003-04-23  Alan Modra  <amodra@bigpond.net.au>
     271
     272        From Julien LEMOINE <speedblue@debian.org>
     273        * elf32-i386.c (elf_i386_info_to_howto): Delete.
     274        (elf_info_to_howto): Define as elf_i386_info_to_howto_rel.
     275
     2762003-04-22  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
     277
     278        * archures.c: Replace references to Mitsubishi M32R with references
     279        to Renesas M32R.
     280        * relocs.c: Likewise.
     281        * bfd-in2.h: Regenerate.
     282
     2832003-04-21  Richard Henderson  <rth@redhat.com>
     284
     285        * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Return false for an
     286        executable when a symbol is defined both regular and dynamic.
     287
     2882003-04-21  Stephane Carrez  <stcarrez@nerim.fr>
     289
     290        * Makefile.am (BFD32_BACKENDS): Add elf32-m68hc1x.lo.
     291        (elf32-m68hc1x.lo): Update dependencies
     292        * configure.in: Add elf32-m68hc1x.lo.
     293        * configure: Rebuild.
     294        * Makefile.in: Rebuild.
     295
     2962003-04-21  Stephane Carrez  <stcarrez@nerim.fr>
     297
     298        * elf32-m68hc1x.c: New file (from elf32-m68hc11.c and elf32-m68hc12.c)
     299        (m68hc11_elf_hash_table_create): New function.
     300        (elf32_m68hc11_link_hash_table_free): New function.
     301        (stub_hash_newfunc): New function.
     302        (m68hc11_add_stub): New function.
     303        (elf32_m68hc11_add_symbol_hook): New function.
     304        (elf32_m68hc11_setup_section_lists): New function.
     305        (elf32_m68hc11_next_input_section): New function.
     306        (elf32_m68hc11_size_stubs): New function.
     307        (elf32_m68hc11_build_stubs): New function.
     308        (m68hc11_get_relocation_value): New function.
     309        (elf32_m68hc11_relocate_section): Call the above to redirect
     310        some relocations to the trampoline code.
     311        (m68hc11_elf_export_one_stub): New function.
     312        (m68hc11_elf_set_symbol): New function.
     313        (elf32_m68hc11_build_stubs): Call it via bfd_hash_traverse.
     314        (m68hc11_elf_get_bank_parameters): Get parameters only when the info
     315        is not yet initialized.
     316
     317        * elf32-m68hc1x.h: New file (from elf32-m68hc11.c and elf32-m68hc12.c)
     318        (elf32_m68hc11_stub_hash_entry): New struct.
     319        (m68hc11_page_info): Add trampoline handler address.
     320        (m68hc11_elf_link_hash_table): Add stubs generation members.
     321        (elf32_m68hc11_add_symbol_hook): Declare.
     322        (elf32_m68hc11_setup_section_lists): Declare.
     323        (elf32_m68hc11_size_stubs): Declare.
     324        (elf32_m68hc11_build_stubs): Declare.
     325
     326        * elf32-m68hc11.c (m68hc11_elf_ignore_reloc): Move to elf32-m68hc1x.c.
     327        (elf32_m68hc11_gc_mark_hook, elf32_m68hc11_gc_sweep_hook): Likewise.
     328        (elf32_m68hc11_check_relocs, elf32_m68hc11_relocate_section): Ditto.
     329        (_bfd_m68hc11_elf_set_private_flags): Ditto.
     330        (_bfd_m68hc11_elf_merge_private_bfd_data): Ditto.
     331        (_bfd_m68hc11_elf_print_private_bfd_data): Ditto.
     332        (bfd_elf32_bfd_link_hash_table_create): Define.
     333        (elf_backend_add_symbol_hook): Define.
     334        (m68hc11_elf_bfd_link_hash_table_create): New function.
     335        (m68hc11_elf_build_one_stub): New function.
     336        (m68hc11_elf_size_one_stub): New function.
     337        (m68hc11_elf_bfd_link_hash_table_create): Install the above.
     338        (bfd_elf32_bfd_link_hash_table_create): Define.
     339
     340        * elf32-m68hc12.c (m68hc11_elf_ignore_reloc): Remove.
     341        (m68hc12_addr_is_banked): Remove, use m68hc11_addr_is_banked.
     342        (m68hc12_phys_addr): Ditto.
     343        (m68hc12_phys_page): Ditto.
     344        (m68hc12_elf_special_reloc): Move to elf32-m68hc1x.c.
     345        (elf32_m68hc11_gc_mark_hook): Likewise.
     346        (elf32_m68hc11_gc_sweep_hook): Likewise.
     347        (elf32_m68hc11_check_relocs): Likewise.
     348        (elf32_m68hc11_relocate_section): Likewise.
     349        (_bfd_m68hc12_elf_set_private_flags): Likewise.
     350        (_bfd_m68hc12_elf_merge_private_bfd_data): Likewise.
     351        (_bfd_m68hc12_elf_print_private_bfd_data): Likewise.
     352        (m68hc12_elf_build_one_stub): New function.
     353        (m68hc12_elf_size_one_stub): New function.
     354        (m68hc12_elf_bfd_link_hash_table_create): New function, use the above.
     355        (elf_backend_add_symbol_hook): Define.
     356        (elf_m68hc11_howto_table): Use TRUE for pcrel relocs; fix masks.
     357
     3582003-04-18  Nick Clifton  <nickc@redhat.com>
     359
     360        * format.c (bfd_check_format_matches): Only check associated
     361        vector if the matching_vector has been created.
     362
     3632003-04-15  Alexandre Oliva  <aoliva@redhat.com>
     364
     365        * dwarf2.c (_bfd_dwarf2_find_nearest_line): Fix typo in
     366        2003-04-09's change.
     367
     3682003-04-15  Brian Ford  <ford@vss.fsi.com>
     369
     370        * peicode.h (coff_swap_scnhdr_in): If a section holds
     371        uninitialized data and is from an object file or from an
     372        executable image that has not initialized the s_size field, or if
     373        the physical size is padded, use the virtual size (stored in
     374        s_paddr) instead.
     375
     3762003-04-15  H.J. Lu <hjl@gnu.org>
     377
     378        * elflink.h (elf_link_add_object_symbols): Properly report
     379        filename for alignment reduction.
     380
     3812003-04-15  Rohit Kumar Srivastava <rohits@kpitcummins.com>
     382
     383        * archures.c: Replace occurrances of 'Hitachi' with 'Renesas'.
     384        * reloc.c: Likewise.
     385        * coff-h8300.c: Likewise.
     386        * coff-h8500.c: Likewise.
     387        * coff-sh.c: Likewise.
     388        * cpu-h8300.c: Likewise.
     389        * cpu-sh.c: Likewise.
     390        * elf32-h8300.c: Likewise.
     391        * elf32-sh.c: Likewise.
     392        * elf32-sh64-com.c: Likewise.
     393        * elf32-sh64.c: Likewise.
     394        * elf64-sh64.c: Likewise.
     395        * bfd-in2.h: Regenerate.
     396
     3972003-04-14  H.J. Lu <hjl@gnu.org>
     398
     399        * elflink.h (elf_link_add_object_symbols): Maintain maximum
     400        alignment for common symbols. Warn reducing alignment for
     401        common symbols. Report old filename when symbol size changes.
     402
     4032003-04-12  Alexandre Oliva  <aoliva@redhat.com>
     404
     405        * elfxx-mips.c (mips_elf_calculate_relocation): Adjust two other
     406        occurrences of the same test changed in the previous patch.
     407        Optimize.
     408
     4092003-04-11  Alexandre Oliva  <aoliva@redhat.com>
     410
     411        * elfxx-mips.c (mips_elf_get_global_gotsym_index): New.
     412        (mips_elf_calculate_relocation): Decay GOT_PAGE/GOT_OFST to
     413        GOT_DISP/addend only if the symbol got a global GOT entry.
     414
     4152003-04-10  Alexandre Oliva  <aoliva@redhat.com>
     416
     417        * elfxx-mips.c (mips_elf_calculate_relocation): Decay
     418        GOT_PAGE/GOT_OFST referencing overridable symbol to
     419        GOT_DISP/addend.
     420        (_bfd_mips_elf_check_relocs): Handle GOT_PAGE referencing
     421        global symbol as GOT_DISP.
     422
     4232003-04-10  Bob Wilson  <bob.wilson@acm.org>
     424
     425        * elf32-xtensa.c (elf_xtensa_relocate_section): Don't continue to the
     426        next relocation on an undefined symbol.
     427
     4282003-04-09  Richard Henderson  <rth@redhat.com>
     429
     430        * elf64-alpha.c (elf64_alpha_relocate_section) <R_ALPHA_GPREL32>:
     431        Ignore relocations against r_symndx == 0.
     432
     4332003-04-09  H.J. Lu <hjl@gnu.org>
     434
     435        * elf64-alpha.c (elf64_alpha_relocate_section): Don't return
     436        FALSE for undefined symbols.
     437        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
     438
     4392003-04-09  Alexandre Oliva  <aoliva@redhat.com>
     440
     441        * dwarf2.c (_bfd_dwarf2_find_nearest_line): Try DWARF3-standard
     442        and IRIX-specific shift-to-64-bit 4-byte lengths before following
     443        addr_size.
     444
     4452003-04-08  Alexandre Oliva  <aoliva@redhat.com>
     446
     447        * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): Detect (ctor)
     448        pointer size from ABI, not arch_bits_per_address.
     449
     4502003-04-07  Kevin Buettner  <kevinb@redhat.com>
     451
     452        * elfn32-mips.c (elf32_mips_grok_prstatus): Adjust core file related
     453        constants for n32 ABI.
     454
     4552003-04-06  Andrew Cagney  <cagney@redhat.com>
     456
     457        * simple.c (bfd_simple_get_relocated_section_contents): Disable
     458        free that leads to GDB vs BFD memory corruption.
     459
     4602003-04-04  Stephane Carrez  <stcarrez@nerim.fr>
     461
     462        * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Also adjust
     463        symbols that mark the end of the section.
     464        (m68hc11_elf_relax_section): Use R_M68HC11_PCREL_8 relocs when
     465        converting to a relative branch so that the offset is computed after
     466        the relaxation; also relocate a jsr into a bsr if possible but don't
     467        relax them if they are to a far symbol as we need to call the
     468        trampoline code.
     469        (elf_m68hc11_howto_table): Set pcrel_offset to true.
     470
     4712003-04-04  Svein E. Seldal  <Svein.Seldal@solidas.com>
     472
     473        * archures.c: Namespace cleanup. Rename bfd_mach_c3x to
     474        bfd_mach_tic3x and bfd_mach_c4x to bfd_mach_tic4x
     475        * bfd-in2.h: Regenerate
     476        * coff-tic4x.c: Namespace cleanup. Replace s/c4x/tic4x/
     477        * cpu-tic4x.c: Ditto
     478
     4792003-04-03  Nick Clifton  <nickc@redhat.com>
     480
     481        * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Compute ps and ss
     482        differently for object files and executables.
     483        * peicode.h (coff_swap_scnhdr_in): Only set the s_size field
     484        for object files or for executables who have not already
     485        initialised the field.
     486        * libpei.h (bfd_pe_executable_p): New macro.  Return true if
     487        the PE format bfd is an executable.
     488
     4892003-04-03  Alan Modra  <amodra@bigpond.net.au>
     490
     491        * elf32-ppc.c (ppc_elf_check_relocs): Don't use SYMBOL_REFERENCES_LOCAL
     492        here as it's too early to reliably determine locality.
     493        (ppc_elf_gc_sweep_hook): Likewise.
     494        (SYMBOL_REFERENCES_LOCAL): Expand comment.
     495
     4962003-04-02  Bob Wilson  <bob.wilson@acm.org>
     497
     498        * xtensa-modules.c: Remove comment indicating that this is a
     499        generated file.
     500
     5012003-04-02  Alan Modra  <amodra@bigpond.net.au>
     502
     503        * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Test for NULL dynobj.
     504
     5052003-04-01  Bob Wilson  <bob.wilson@acm.org>
     506
     507        * Makefile.am (ALL_MACHINES): Add cpu-xtensa.lo.
     508        (ALL_MACHINES_CFILES): Add cpu-xtensa.c.
     509        (BFD32_BACKENDS): Add elf32-xtensa.lo, xtensa-isa.lo, and
     510        xtensa-modules.lo.
     511        (BFD32_BACKENDS_CFILES): Add elf32-xtensa.c, xtensa-isa.c, and
     512        xtensa-modules.c.
     513        (cpu-xtensa.lo): New target.
     514        (elf32-xtensa.lo): Likewise.
     515        (xtensa-isa.lo): Likewise.
     516        (xtensa-modules.lo): Likewise.
     517        * Makefile.in: Regenerate.
     518        * archures.c (bfd_architecture): Add bfd_{arch,mach}_xtensa.
     519        (bfd_archures_list): Add bfd_xtensa_arch.
     520        * config.bfd: Handle xtensa-*-*.
     521        * configure.in: Handle bfd_elf32_xtensa_{le,be}_vec.
     522        * configure: Regenerate.
     523        * reloc.c: Add BFD_RELOC_XTENSA_{RTLD,GLOB_DAT,JMP_SLOT,RELATIVE,
     524        PLT,OP0,OP1,OP2,ASM_EXPAND,ASM_SIMPLIFY}.
     525        * targets.c (bfd_elf32_xtensa_be_vec): Declare.
     526        (bfd_elf32_xtensa_le_vec): Likewise.
     527        (bfd_target_vector): Add bfd_elf32_xtensa_{be,le}_vec.
     528        * cpu-xtensa.c: New file.
     529        * elf32-xtensa.c: Likewise.
     530        * xtensa-isa.c: Likewise.
     531        * xtensa-modules.c: Likewise.
     532        * libbfd.h: Regenerate.
     533        * bfd-in2.h: Likewise.
     534
     5352003-04-01  Nick Clifton  <nickc@redhat.com>
     536
     537        * archures.c (bfd_mach_arm_unknown): Define.
     538        * bfd-in.h (bfd_arm_merge_machines, bfd_arm+update_notes,
     539        bfd_arm_get_mach_from_notes): Prototype.
     540        * bfd-in2.h: Regenerate.
     541        * coff-arm.c (coff_arm_merge_private_bfd_data): Call
     542        bfd_arm_merge_machines.
     543        (coff_arm_final_link_postscript): Call bfd_arm_update_notes.
     544        * coffcode.h (coff_set_arch_mach_hook): Call
     545        bfd_arm_get_mach_from_notes.
     546        * coffgen.c (coff_real_object_p): Revert previous delta.
     547        * cpu_arm.c (arm_check_note): New function.  Examine a note in a
     548        .note section.
     549        (bfd_arm_merge_machines): New function: Handle the merging of ARM
     550        binaries compiled for different architectures..
     551        (bfd_arm_update_notes): New function: Update an ARM note section.
     552        (bfd_arm_get_mach_from_notes): New function: Extract a bfd machine
     553        number from an ARM note section.
     554        * elf32-arm.h (elf32_arm_object_p): Use
     555        bfd_arm_get_mach_from_notes.
     556        (elf32_arm_merge_private_bfd_data): Use bfd_arm_merge_machines.
     557        (elf32_arm_final_write_processing): Use bfd_arm_update_notes.
     558
     5592003-04-01  Ben Elliston  <bje@wasabisystems.com>
     560
     561        * dwarf2.c (read_attribute_value): Correct typo in comment.
     562
     5632003-04-01  Nick Clifton  <nickc@redhat.com>
     564
     565        * dwarf2.c (concat_filename): Use bfd_malloc() and strdup()
     566        instead of concat().
     567        (decode_line_info): Only free filename if it is not NULL.
     568        (add_line_info): Make a copy of the filename when storing it into
     569        the info structure.
     570
     5712003-03-31  Andreas Schwab  <schwab@suse.de>
     572            Daniel Jacobowitz  <drow@mvista.com>
     573
     574        * simple.c (bfd_simple_get_relocated_section_contents): Add
     575        parameter symbol_table.  Optionally use it instead of the symbol
     576        table from the bfd.  Save and restore output offsets and output
     577        sections  around bfd_get_relocated_section_contents.  Fix a memory
     578        leak.
     579        (simple_save_output_info, simple_restore_output_info): New
     580        functions.
     581        * bfd-in2.h: Regenerate.
     582        * dwarf2.c (read_abbrevs): Use
     583        bfd_simple_get_relocated_section_contents instead of
     584        bfd_get_section_contents.
     585        (decode_line_info): Likewise.
     586        (_bfd_dwarf2_find_nearest_line): Likewise.  Don't call
     587        find_rela_addend.
     588        (find_rela_addend): Remove.
     589        * elfxx-ia64.c (elfNN_ia64_reloc): Weaken sanity check for
     590        debugging sections.
     591        (elfNN_ia64_hash_table_create): Create the hash table with malloc,
     592        not bfd_zalloc.
     593
     5942003-03-31  David Heine  <dlheine@suif.stanford.edu>
     595
     596        * aoutx.h (aout_link_hash_table_create): Use bfd_malloc instead of
     597        bfd_alloc.
     598        * dwarf2.c (concat_filename): Always allocate space for the
     599        returned filename.
     600        (decode_line_info): Free the allocated filename returned by
     601        concat_filename.
     602        * elf-eh-frame.c (bfd_elf_write_section_eh_frame): Fix memory leaks.
     603        * elf.c (copy_private_bfd_data): Likewise.
     604        (_bfd_elf_slurp_version_tables): Fix bug freeing contents pointer.
     605        * elflink.h (elf_link_sort_relocs): Fix memory leak.
     606        * format.c (bfd_check_format_matches): Likewise.
     607        * linker.c (bfd_generic_final_link): Likewise.
     608        * opncls.c (find_separate_debug_info): Likewise.
     609        * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
     610
     6112003-03-28  H.J. Lu <hjl@gnu.org>
     612
     613        * elflink.h (elf_link_add_object_symbols): Correctly combine
     614        visibilities.
     615
     6162003-03-27  Jakub Jelinek  <jakub@redhat.com>
     617
     618        * elfxx-ia64.c (elfNN_ia64_relax_section): Reset self_dtpmod_offset
     619        to -1 before recomputing got offsets.
     620
     6212003-03-26  Andreas Schwab  <schwab@suse.de>
     622
     623        * elf32-m68k.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
     624        (elf_m68k_relocate_section): Use it to correctly handle symbols
     625        forced to be local.
     626        (elf_m68k_finish_dynamic_symbol): Emit RELATIVE reloc for got
     627        entries for symbols that are forced to be local.
     628
     6292003-03-25  Alexandre Oliva  <aoliva@redhat.com>
     630
     631        * elfxx-mips.c (_bfd_mips_relax_section): New function.
     632        * elfxx-mips.h (_bfd_mips_relax_section): Declare.
     633        * elfn32-mips.c, elf64-mips.c: Use it.
     634
     6352003-03-25  Stan Cox   <scox@redhat.com>
     636            Nick Clifton  <nickc@redhat.com>
     637
     638        Contribute support for Intel's iWMMXt chip - an ARM variant:
     639
     640        * archures.c: Add bfd_mach_arm_iWMMXt.
     641        * reloc.c: Add BFD_RELOC_ARM_CP_OFF_IMM_S2.
     642        * bfd-in2.h: Regenerate.
     643        * libbfd.h: Regenerate.
     644        * coff-arm.c (coff_arm_merge_private_bfd_data): Allow iWMMXt
     645        object files to be linked with XScale ones.
     646        (coff_arm_final_link_postscript): Update note section.
     647        * coffcode.h (coff_set_arch_mach_hook): Handle note section.
     648        * coffgen.c (coff_real_object_p): Call bfd_coff_set_arch_mach_hook
     649        after identifying a coff binary.
     650        * cpu-arm.c (processors): Add iWMMXt.
     651        (arch_inf): Likewise.
     652        * elf32-arm.h (arm_object_p): Handle note section.
     653        (elf32_arm_merge_private_bfd_data):  Allow iWMMXt object files to
     654        be linked with XScale ones.
     655        (elf32_arm_section_flags): New function: Set flags on note section.
     656        (elf32_arm_final_write_processing): Handle note section.
     657
     6582003-03-21  DJ Delorie  <dj@redhat.com>
     659
     660        * elf32-xstormy16.c (elf32_xstormy16_relocate_section): Call
     661        _bfd_elf_rela_local_sym.
     662
     6632003-03-20  H.J. Lu <hjl@gnu.org>
     664
     665        * elfxx-ia64.c (elfNN_ia64_relax_section): Don't try relax for
     666        non-ELF outputs.
     667
     6682003-03-20  Nick Clifton  <nickc@redhat.com>
     669
     670        * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Initialise $idata2 and
     671        $idata5 in case bfd_coff_final_link is not called.
     672
     6732003-03-19  Jakub Jelinek  <jakub@redhat.com>
     674
     675        * elf64-sparc.c (struct sparc64_elf_section_data): Add reloc_count
     676        field.
     677        (canon_reloc_count): Define.
     678        (sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table,
     679        sparc64_elf_canonicalize_dynamic_reloc): Use it instead of
     680        reloc_count.
     681        (sparc64_elf_canonicalize_reloc): New routine.
     682        (bfd_elf64_canonicalize_reloc): Define.
     683
     6842003-03-18  Jakub Jelinek  <jakub@redhat.com>
     685
     686        * elfxx-ia64.c (elfNN_ia64_relax_section): Handle relaxation
     687        againt mergeable sections.  Take r_addend into account when caching
     688        trampolines.
     689
     6902003-03-18  Richard Henderson  <rth@redhat.com>
     691
     692        * elfxx-ia64.c (get_dyn_sym_info): Return NULL gracefully for
     693        local symbols that have no dyninfo.
     694
     6952003-03-14  Gene Smith  <gene.smith@siemens.com>
     696
     697        * ieee.c (ieee_write_expression): Handle the case where symbol is
     698        NULL.
     699        General formatting improvements.
     700
     7012003-03-13  Nick Clifton  <nickc@redhat.com>
     702
     703        * configure.in (LINGUAS): Add zh_CN.
     704        * configure: Regenerate.
     705        * po/zh_CN.po: New file.
     706
     7072003-03-13  Elias Athanasopoulos  <elathan@phys.uoa.gr>
     708
     709        * aout-cris.c (BYTES_IN_WORD): Don't define.
     710        aout-encap.c: Likewise.
     711        aout-ns32k.c: Likewise.
     712        aout-tic30.c: Likewise.
     713        hp300bsd.c: Likewise.
     714        i386aout.c: Likewise.
     715        i386dynix.c: Likewise.
     716        i386linux.c: Likewise.
     717        i386lynx.c: Likewise.
     718        i386mach3.c: Likewise.
     719        m68k4knetbsd.c: Likewise.
     720        m68klinux.c: Likewise.
     721        m68klynx.c: Likewise.
     722        m68knetbsd.c: Likewise.
     723        m88kmach3.c: Likewise.
     724        mipsbsd.c: Likewise.
     725        newsos3.c: Likewise.
     726        sparclinux.c: Likewise.
     727        sparclynx.c: Likewise.
     728        sparcnetbsd.c: Likewise.
     729        vaxbsd.c: Likewise. Fix comment formatting.
     730
     7312003-03-12  Alexandre Oliva  <aoliva@redhat.com>
     732
     733        * Reverted 2003-03-02's patch.
     734
     735        * elfxx-target.h (bfd_elfNN_canonicalize_reloc): Make it
     736        overridable.
     737        * elf64-mips.c (mips_elf64_canonicalize_reloc,
     738        mips_elf64_get_dynamic_reloc_upper_bound,
     739        mips_elf64_canonicalize_dynamic_reloc): New, adapted from elf.c.
     740        (bfd_elf64_get_canonicalize_reloc,
     741        bfd_elf64_get_dynamic_reloc_upper_bound,
     742        bfd_elf64_canonicalize_dynamic_reloc): Define.
     743        (mips_elf64_slurp_reloc_table): Support dynamic.
     744        (mips_elf64_slurp_one_reloc_table): Adjust.
     745
     7462003-03-12  Nick Clifton  <nickc@redhat.com>
     747
     748        * xsym.c (bfd_sym_fetch_type_information_table_entry): Change
     749        'index' to 'offset' in test for zero value.
     750
     7512003-03-11  Alexandre Oliva  <aoliva@redhat.com>
     752
     753        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Do not create
     754        dynamic relocations pointing to local or section symbols, use the
     755        NULL symbol instead.  Document the choice to not emit an
     756        additional R_MIPS_64 relocation.
     757
     7582003-03-11  Alan Modra  <amodra@bigpond.net.au>
     759
     760        * elf32-ppc.c (ppc_elf_relocate_section): Subtract tls seg vma from
     761        zero index dynamic tls relocs generated for the GOT.  Tidy code.
     762        Set "relocation" to 1 on DTPMOD32 relocs.  Optimize HA adjustment.
     763        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
     764
     7652003-03-07  Alan Modra  <amodra@bigpond.net.au>
     766
     767        * elf32-ppc.c (ppc_elf_relocate_section): Don't look for a nop after
     768        a tls_get_addr call.
     769
     770        * elf32-ppc.c (ELIMINATE_COPY_RELOCS): Define as one.
     771        (ppc_elf_adjust_dynamic_symbol): For weak symbols, copy
     772        ELF_LINK_NON_GOT_REF from weakdef.
     773        * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define as one.
     774        (ppc64_elf_adjust_dynamic_symbol): For weak symbols, copy
     775        ELF_LINK_NON_GOT_REF from weakdef.
     776        * elf32-i386.c (ELIMINATE_COPY_RELOCS): Define as one.  Use throughout.
     777        (elf_i386_adjust_dynamic_symbol): For weak symbols, copy
     778        ELF_LINK_NON_GOT_REF from weakdef.
     779
     7802003-03-06  Jakub Jelinek <jakub@redhat.com>
     781        Andrew Haley  <aph@redhat.com>
     782
     783        * elflink.h (elf_bfd_discard_info): Don't process eh frames if
     784        output is relocateable.
     785
     7862003-03-06  Steven Konopa <skonopa@kgo.csc.com>
     787
     788        * som.c (som_fixup_formats): Correct formats for R_AUX_UNWIND and
     789        R_COMMENT.
     790
     7912003-03-06  Alan Modra  <amodra@bigpond.net.au>
     792
     793        * elf32-ppc.c (ppc_elf_create_linker_section): Don't capitalize
     794        error messages.
     795        (ELIMINATE_COPY_RELOCS): Define to zero.
     796        (ppc_elf_relocate_section): Don't deref htab->tls_sec when calculating
     797        TLSLD relocs.  Report reloc types on a number of errors.  Optimize
     798        LOCAL24PC check for non-local syms.  Don't capitalize error messages.
     799        * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define to zero.
     800        (ppc64_elf_relocate_section): Don't deref htab->tls_sec when
     801        calculating TLSLD relocs.  Report reloc types on a number of errors.
     802        Don't capitalize error messages.
     803
     8042003-03-03  H.J. Lu <hjl@gnu.org>
     805
     806        * elfxx-ia64.c (USE_BRL): Removed.
     807        (oor_ip): Removed.
     808
     8092003-03-03  J"orn Rennecke <joern.rennecke@superh.com>
     810
     811        * elf32-sh.c (sh_elf_howto_tab): Make R_SH_IND12W into an ordinary
     812        relocation (no special function), and make it non-partial_inplace.
     813        (sh_elf_relax_section): When creating a bsr, use a consistent value
     814        no matter if the symbol is extern or not;  set addend to -4.
     815        Don't swap load / non-load instructions for SH4.
     816        (sh_elf_relax_delete_bytes): In R_SH_IND12W case, check the offset
     817        rather than if the symbol is external to determine if adjusting the
     818        offset makes sense.  Adjust the addend too if appropriate.
     819        (sh_elf_relocate_section): In R_SH_IND12W, don't fiddle with the
     820        relocation.
     821
     8222003-03-03  Nick Clifton  <nickc@redhat.com>
     823
     824        * po/da.po: Installed latest translation.
     825
     8262003-03-02  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     827
     828        * elf32-mips.c (elf_mips_howto_table_rel): Change definition of
     829        R_MIPS_PC16 to rightshift 2.
     830        (elf_reloc_map mips_reloc_map): Map to rightshifted BFD reloc.
     831        (bfd_elf32_bfd_reloc_type_lookup): Support
     832        BFD_RELOC_MIPSEMB_16_PCREL_S2.
     833        * elf64-mips.c (mips_elf64_howto_table_rel): Change definition of
     834        R_MIPS_PC16 to rightshift 2.
     835        (mips_elf64_howto_table_rela): Likewise.
     836        (mips_reloc_map): Map to rightshifted BFD reloc.
     837        * elfn32-mips.c: The same as in elf64-mips.c.
     838        * elfxx-mips.c (mips_elf_got_for_ibfd): Typo in comment.
     839        (mips_elf_calculate_relocation): Handle rightshifted addends for
     840        R_MIPS_PC16.
     841        * reloc.c (BFD_RELOC_MIPSEMB_16_PCREL_S2): New BFD relocation for
     842        MIPS Embedded PIC. Remove superfluous empty COMMENT.
    111843        * libbfd.h: Regenerate.
    112844        * bfd-in2.h: Regenerate.
    113         * aoutx.h (aout_@var{size}_machine_type): Add MIPS r12k support.
    114         * archures.c (bfd_mach_mips12000): Define.
    115         * cpu-mips.c (arch_info_struct): Add MIPS r12k support.
    116         * elf32-mips.c (_bfd_mips_elf_final_write_processing): Add MIPS r12k
    117         support.
    118         (_bfd_mips_elf_size_dynamic_sections): Use official bfd typedef.
     845
     8462003-02-28  Richard Henderson  <rth@redhat.com>
     847
     848        * elfxx-ia64.c (elfNN_ia64_relax_section): Correct bounds
     849        for ltoff22x relaxation.
     850
     8512003-03-01  Alan Modra  <amodra@bigpond.net.au>
     852
     853        * bfd-in.h (_bfd): Don't define.
     854        * bfd.c: Rename occurrences of "struct _bfd" to "struct bfd".
     855        * syms.c: Likewise.
    119856        * bfd-in2.h: Regenerate.
    120         * elfxx-target.h: Do not redefine bfd_elfNN_bfd_make_debug_symbol.
    121 
    122         2001-05-23  Nick Clifton  <nickc@cambridge.redhat.com>
    123         * elf-bfd.h (NUM_SHDR_ENTRIES): New macro: compute the number
    124         of entries in a structured section.
    125         * elf.c: Use new macro.
    126         * elf32-i386.c: Use new macro.
    127         * elf32-mips.c: Use new macro.
    128         * elf64-alpha.c: Use new macro.
    129         * elf64-sparc.c: Use new macro.
    130         * elfcode.h: Use new macro.
    131         * elflink.h: Use new macro.
    132 
    133         2001-05-21  Andreas Jaeger  <aj@suse.de>
    134         * dwarf2.c (decode_line_info): Fix error message.
    135         (read_abbrevs): Fix test for offset as suggested by Alan Modra and
    136         adjust error message.
    137 
    138         2001-05-17  H.J. Lu  <hjl@gnu.org>
    139         * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the
    140         version definition to basename of the output filename.
    141 
    142         2001-05-15  Alexandre Oliva  <aoliva@redhat.com>
    143         * elf-m10300.c (mn10300_elf_relax_section): Don't relax
    144         negative 32-bit operands to 16 operands when the operand is
    145         going to be zero-extended by the modified opcode.
    146 
    147         2001-05-11  Jakub Jelinek  <jakub@redhat.com>
    148         * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind
    149         sections as well.
    150         (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO
    151         to .gnu.linkonce.t.FOO text section.
    152 
    153         2001-05-11  Nick Clifton  <nickc@cambridge.redhat.com>
    154         * dwarf1.c (_bfd_dwarf1_find_nearest_line): Change type of 'addr'
    155         to be unsigned long, in order to match its use.
    156 
    157         2001-05-10  H.J. Lu  <hjl@gnu.org>
    158         * linker.c (_bfd_generic_link_add_one_symbol): Check loop on
    159         indirect symbols.
    160 
    161         2001-05-09  H.J. Lu  <hjl@gnu.org>
    162         * elflink.h (elf_link_add_object_symbols): Fix a typo. Allocate
    163         versymhdr->sh_size bytes for extversym instead of hdr->sh_size.
    164         Remove the unused veriable `dynver'.
    165 
    166         2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
    167         * elf.c (_bfd_elf_slurp_version_tables): Change maxidx to unsigned, it
    168         is always a positive integer. Cast away sign mismatch.
    169         * elf32-mips.c: Fix misleading comment and typo.
    170         (_bfd_mips_elf_section_from_bfd_section): Remove unused attribute, use
    171         correct data type.
    172         * elflink.c: Fix typo.
    173         (_bfd_elf_create_dynamic_sections): Remove superfluous initialization.
    174         * ecoffswap.h (ecoff_swap_fdr_in): Cast away sign mismatch.
    175 
    176         2001-05-03  Nick Clifton  <nickc@cambridge.redhat.com>
    177         * targets.c (_bfd_target_vector_entries): Compute value based on
    178         the size of the _bfd_target_vector and not bfd_target_vector.
    179 
    180         2001-05-03  Andreas Jaeger  <aj@suse.de>
    181         * elf64-gen.c (elf_generic_info_to_howto): Add unused attribute.
    182         (elf_generic_info_to_howto_rel): Likewise.
    183         * coff-alpha.c (reloc_nil): Likewise.
    184         (alpha_ecoff_bad_format_hook): Likewise.
    185         (alpha_adjust_reloc_out): Likewise.
    186         (alpha_bfd_reloc_type_lookup): Likewise.
    187         (alpha_convert_external_reloc): Likewise.
    188         * elf64-alpha.c (elf64_alpha_reloc_nil): Likewise.
    189         (elf64_alpha_reloc_bad): Likewise.
    190         (elf64_alpha_reloc_gpdisp): Likewise.
    191         (elf64_alpha_bfd_reloc_type_lookup): Likewise.
    192         (elf64_alpha_info_to_howto): Likewise.
    193         (elf64_alpha_add_symbol_hook): Likewise.
    194         (elf64_alpha_create_got_section): Likewise.
    195         (elf64_alpha_is_local_label_name): Likewise.
    196         (elf64_alpha_merge_ind_symbols): Likewise.
    197         * elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise.
    198         (mips_elf64_get_reloc_upper_bound): Likewise.
    199         * nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise.
    200         (nlm_alpha_get_public_offset): Likewise.
    201 
    202         2001-04-30  H.J. Lu  <hjl@gnu.org>
    203         * elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1
    204         only for ELF_LINK_FORCED_LOCAL.
    205         * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
    206         * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise.
    207         * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
    208         * elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL
    209         if the symbol has hidden or internal visibility.
    210 
    211         2001-04-14  Mark Elbrecht  <snowball3@bigfoot.com>
    212         * coffcode.h (coff_write_object_contents): Use
    213         bfd_coff_swap_filehdr_out instead of coff_swap_filehdr_out.
    214 
    215         2001-04-09  Hans-Peter Nilsson  <hp@axis.com>
    216         * elflink.h (elf_fix_symbol_flags): For non-default visibilities,
    217         only hide symbols marked STV_INTERNAL or STV_HIDDEN.
    218 
    219         2001-04-05  Steven J. Hill  <sjhill@cotw.com>
    220         * config.bfd (mips*el*-*-linux-gnu*): Use traditional little
    221         endian MIPS ELF target.
    222         (mips*-*-linux-gnu*): Use traditional big endian MIPS ELF target.
    223         * configure.in (bfd_elf64_tradbigmips_vec): New. Traditional
    224         64bit big endian MIPS ELF target.
    225         (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
    226         endian MIPS ELF target.
    227         * configure: Regenerated.
    228         * elf32-mips.c (IRIX_COMPAT): Handle traditional 64bit and
    229         little endian targets.
    230         (mips_elf_sym_is_global): Handle traditional targets.
    231         * elf64-mips.c (bfd_elf64_tradbigmips_vec): New. Traditional
    232         64bit big endian MIPS ELF target.
    233         (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
    234         endian MIPS ELF target.
    235         * targets.c: (_bfd_target_vector): Add bfd_elf64_tradbigmips_vec
    236         and bfd_elf64_tradlittlemips_vec.
    237 
    238         2001-04-04  Alan Modra  <alan@linuxcare.com.au>
    239         * elflink.h (elf_fix_symbol_flags): Call elf_backend_hide_symbol
    240         when -Bsymbolic causes a symbol to no longer need a .plt entry.
    241 
    242         2001-04-03  David Mosberger  <davidm@hpl.hp.com>
    243         * efi-app-ia32.c (ALIGN_SECTIONS_IN_FILE): Deleted.
    244 
    245         2001-03-30  H.J. Lu  <hjl@gnu.org>
    246         * efi-app-ia32.c (PEI_TARGET_SUBSYSTEM): Rename from ...
    247         (PEI_DEFAULT_TARGET_SUBSYSTEM): This.
    248 
    249         2001-03-23  Nick Clifton  <nickc@redhat.com>
    250         * Makefile.am (BUILD_CFILES): New variable: List of C source
    251         files created in build directory.
    252         (BUILD_HFILES): New variable: List of header files created in
    253         build directory.
    254         (POTFILES): Delete.
    255         (po/POTFILES.in): Replace rule with empty entry.
    256         (po/SRC-POTFILES.in): New rule: Create a list of source files
    257         in the source directory.
    258         (po/BLD-POTFILES.in): New rule: Create a list of source files
    259         in the build directory.
    260         (MOSTLYCLEAN): Do not delete source files created in build
    261         directory.
    262         * Makefile.in: Regenerate.
    263         * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in
    264         into po/Makefile.
    265         * configure: Regenerate.
    266         * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES
    267         and BLD_POTFILES.
    268         Add .. to the search path when building bfd.pot.
    269         Delete POTFILES when performing distclean.
    270         Add comment describing why distclean is broken in maintainer mode.
    271         * po/POTFILES.in: Delete.
    272         * po/SRC-POTFILES.in: New file.
    273         * po/BLD-POTFILES.in: New file.
    274         * po/bfd.pot: Regenerate.
    275 
    276         2001-03-06  Igor Shevlyakov  <igor@windriver.com>
    277         * archures.c (bfd_default_scan): Add Coldfire CPUs.
     857
     8582003-02-27  Richard Henderson  <rth@redhat.com>
     859
     860        * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add want_gotx;
     861        (elfNN_ia64_check_relocs): Set it.
     862        (allocate_global_data_got): Check it.
     863        (allocate_local_got): Likewise.
     864        (allocate_dynrel_entries): Likewise.
     865        (elfNN_ia64_relax_ldxmov): New.
     866        (elfNN_ia64_relax_section): Handle LTOFF22X, LDXMOV.
     867        (elfNN_ia64_choose_gp): Split out from ...
     868        (elfNN_ia64_final_link): ... here.
     869
     8702003-02-27  Andrew Cagney  <cagney@redhat.com>
     871
     872        * bfd.c (struct bfd): Rename "struct _bfd".
     873        * bfd-in.h: Update copyright.
     874        (struct bfd): Rename "struct _bfd".
     875        (_bfd): Define for backward compatibility.
    278876        * bfd-in2.h: Regenerate.
    279         * cpu-m68k.c: Add Coldfire CPUs for arch table.
    280         * ieee.c (ieee_write_processor): Set proper id for
    281         Coldfire CPUs.
    282 
    283         2001-02-27  H.J. Lu  <hjl@gnu.org>
    284         * aoutx.h (NAME(aout,bfd_free_cached_info)): Return true if
    285         abfd->tdata.aout_data == NULL.
    286 
    287         2001-02-26  Nick Clifton <nickc@redhat.com>
    288         * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Tidy
    289         up, replacing multiple if statements with a switch.
    290         (handle_COMDAT): New function.
    291 
    292         2001-02-26  H.J. Lu  <hjl@gnu.org>
    293         * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Issue
    294         a warning for section flags we do not handle instead of
    295         aborting.
    296 
    297         2001-02-19  Jakub Jelinek  <jakub@redhat.com>
    298         * elf32-sparc.c (elf32_sparc_finish_dynamic_symbol): Don't make PLT
    299         entries that could serve as a definition for a weak symbol.
    300         * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Likewise.
    301 
    302         2001-02-18  Jim Kingdon  <jkingdon@engr.sgi.com>
    303         * irix-core.c (irix_core_core_file_p): Set the architecture (GDB
    304         multiarch needs it).
    305 
    306         2001-02-18  H.J. Lu  <hjl@gnu.org>
    307         * elflink.h (elf_link_input_bfd): Ignore invalid section symbol
    308         index.
    309 
    310         2001-02-18  Kazu Hirata  <kazu@hxi.com>
    311         * vms-misc.c: Fix formatting.
    312 
    313         2001-02-16  Kazu Hirata  <kazu@hxi.com>
    314         * vms.c: Fix formatting.
    315 
    316         2001-02-14  H.J. Lu  <hjl@gnu.org>
    317         * elf.c (elf_find_function): New function.
    318         (_bfd_elf_find_nearest_line): Call elf_find_function () to find
    319         the file name and function name.
    320 
    321         2001-02-14  Nick Clifton  <nickc@redhat.com>
    322         * Makefile.am (BFD32_BACKENDS_CFILES): Remove peigen.c
    323         (BFD64_BACKENDS): Add pepigen.c
    324         Add rules to create peigen.c and pepigen.c from peXXigen.c.
    325 
    326         2001-02-14  H.J. Lu  <hjl@gnu.org>
    327         * libcoff-in.h (pe_tdata): Add members target_subsystem and
    328         force_minimum_alignment.
    329 
    330         2001-02-13  Kazu Hirata  <kazu@hxi.com>
    331         * vms.c (vms_print_symbol): Remove unreachable code.
    332         * rs6000-core.c: Fix formatting.
    333 
    334         2001-02-13  David Mosberger  <davidm@hpl.hp.com>
    335         * peicode.h (coff_swap_filehdr_out) [COFF_IMAGE_WITH_PE]: Define
    336         as _bfd_XXi_only_swap_filehdr_out.
    337         (pe_mkobject) [PEI_FORCE_MINIMUM_ALIGNMENT]: Set
    338         pe->force_minimum_alignment to TRUE.
    339         (pe_mkobject) [PEI_TARGET_SUBSYSTEM]: Set pe->target_subsystem to
    340         PEI_TARGET_SUBSYSTEM.
    341         (pe_print_private_bfd_data): Call
    342         _bfd_XX_print_private_bfd_data_common() instead of
    343         _bfd_pe_print_private_bfd_data_common().
    344         (pe_bfd_copy_private_bfd_data): Call
    345         _bfd_XX_bfd_copy_private_bfd_data_common() instead of
    346         _bfd_pe_bfd_copy_private_bfd_data_common().
    347         (coff_bfd_copy_private_section_data): Define as
    348         _bfd_XX_bfd_copy_private_section_data instead of
    349         _bfd_pe_bfd_copy_private_section_data.
    350         (coff_get_symbol_info): Define as _bfd_XX_get_symbol_info instead
    351         of a _bfd_pe_get_symbol_info.
    352         * peigen.c: Delete.
    353         * peXXigen.c: Renamed from peigen.c.
    354         (COFF_WITH_XX): Define this macro (will get expanded into
    355         COFF_WITH_pep or COFF_WITH_pe, depending on whether this is being
    356         compiled as peigen.c or pepigen.c.
    357         [COFF_WITH_pep]: Include "coff/ia64.h" instead of "coff/i386.h" to
    358         define the canonical PEP structures and definitions.
    359         (_bfd_XXi_swap_aouthdr_out): If pe->force_minimum_alignment is in
    360         effect, enforce minimum file and section alignments.  If
    361         extra->Subsystem is IMAGE_SUBSYSTEM_UNKNOWN, set it to
    362         pe->target_subsystem (this defaults to IMAGE_SUBSYSTEM_UNKNOWN,
    363         so, by default, this is a no-op).
    364         * libpei.h: Rename COFF_WITH_PEP to COFF_WITH_pep.
    365         (_bfd_XX_bfd_copy_private_bfd_data_common): Add macros to map
    366         _bfd_XXfoo to _bfd_pepfoo if COFF_WIT_PEP is defined and to
    367         _bfd_pefoo if it's not defined.  Use these macros to define
    368         coff swap macros.
    369         * libcoff.h (pe_tdata): Add members target_subsystem and
    370         force_minimum_alignment.
    371         * efi-app-ia64.c (COFF_WITH_pep): Rename COFF_WITH_PEP to
    372         COFF_WITH_pep.
    373         (PEI_TARGET_SUBSYSTEM): Rename from PEI_DEFAULT_TARGET_SUBSYSTEM.
    374         * configure.in (bfd_efi_app_ia64_vec): Use pepigen.lo instead of
    375         peigen.lo.
    376         * coff-ia64.c: Rename COFF_WITH_PEP to COFF_WITH_pep.
    377         (AOUTSZ): Rename PEP64AOUTSZ and PEP64AOUTHDR to PEPAOUTSZ and
    378         PEPAOUTHDR.
    379         * Makefile.in (BFD64_BACKENDS): Mention pepigen.lo.
    380         (BFD64_BACKENDS_CFILES): Mention pepigen.c
    381         (peigen.c): Add rule to generate from peXXigen.c.
    382         (pepigen.c): Ditto.
    383         (pepigen.lo): List dependencies for pepigen.lo.
    384 
    385         2001-02-11  H.J. Lu  <hjl@gnu.org>
    386         * elflink.h (elf_bfd_final_link): Use file_align for SYMTAB
    387         alignment.
    388 
    389         2001-02-11  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
    390         * elf32-mips.c (mips_elf_create_dynamic_relocation): Undo patch
    391         from 2000-10-13.  Do not add the symbol's value for R_MIPS_REL32
    392         relocations against dynsym symbols.
    393         * elf32-mips.c (elf_mips_howto_table): Fix the comment on
    394         the R_MIPS_26 relocation.
    395         (mips_elf_calculate_relocation): Use (p + 4) instead of p for
    396         the R_MIPS_26 relocation.
    397         (mips_elf_perform_relocation): Fix the comment on the R_MIPS16_26
    398         relocation.
    399         * elf64-mips.c (mips_elf64_howto_table_rel): Fix the comment on
    400         the R_MIPS_26 relocation.
    401         (mips_elf64_howto_table_rela): Likewise.
    402         * elf32-mips.c (struct mips_elf_link_hash_entry): Added no_fn_stub
    403         member to mark symbols that have non-CALL relocations against
    404         them.
    405         (mips_elf_link_hash_newfunc): Initialize no_fn_stub.
    406         (mips_elf_calculate_relocation): Handle R_MIPS_CALL16 like
    407         R_MIPS_GOT16.
    408         (_bfd_mips_elf_check_relocs): Set no_fn_stub for a symbol if a
    409         non-CALL relocation against it is encountered.
    410         (_bfd_mips_elf_copy_indirect_symbol): Merge no_fn_stub as well.
    411         (_bfd_mips_elf_adjust_dynamic_symbol): Only create a stub if
    412         no_fn_stub is not set.
    413         * elf32-mips.c (mips_elf_output_extsym): Get the output section
    414         information from the real symbol for indirect ones.
    415         Check no_fn_stub to find out if a symbol has a function stub
    416         indeed.
    417 
    418         2001-02-09  Jakub Jelinek  <jakub@redhat.com>
    419         * elf64-sparc.c (sparc64_elf_copy_private_bfd_data): New function.
    420 
    421         2001-02-09  Mark Kettenis  <kettenis@gnu.org>
    422         * elf32-sparc.c (_bfd_sparc_elf_howto_table): Treat R_SPARC_UA32
    423         similar to R_SPARC_32.
    424         * elf64-sparc.c (sparc64_elf_howto_table): Likewise.
    425 
    426         2001-02-08  Richard Henderson  <rth@redhat.com>
    427         * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Respect weakness
    428         before visibility.  Locally defined protected symbols are not
    429         dynamic.
    430 
    431         2001-02-07  Jakub Jelinek  <jakub@redhat.com>
    432         * elflink.h (is_global_symbol_definition): Rename to
    433         is_global_data_symbol_definition and have it reject function
    434         symbols.
    435         (elf_link_is_defined_archive_symbol): Use renamed function.
    436 
    437         2001-02-07  Todd Vierling  <tv@wasabisystems.com>
    438         * libbfd-in.h (bfd_target_vector): Change extern array to pointer.
    439         * libbfd.h (bfd_target_vector): Likewise.
    440         * targets.c (bfd_target_vector): Rename to _bfd_target_vector and
    441         make static; create pointer reference named bfd_target_vector.
    442         (_bfd_target_vector_entries): Calculate this based on the array
    443         typed _bfd_target_vector.
    444 
    445         2001-02-06  H.J. Lu  <hjl@gnu.org>
    446         * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Only hidden and
    447         internal symbols are not dynamic.
    448         * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
    449 
    450         2001-02-06  Kazu Hirata  <kazu@hxi.com>
    451         * elf-m10200.c: Fix formatting.
    452 
    453         2001-02-01  Kazu Hirata  <kazu@hxi.com>
    454         * elf-m10300.c: Fix formatting.
    455 
    456 2001-06-10  Philip Blundell  <philb@gnu.org>
    457 
    458         * configure.in: Set version to 2.11.1.
     877
     8782003-02-25  Alan Modra  <amodra@bigpond.net.au>
     879
     880        * elflink.h (elf_bfd_final_link): Apportion reloc counts to rel_hdr
     881        and rel_hdr2 when initially counting input relocs rather than after
     882        creating output reloc sections.
     883        (elf_link_read_relocs_from_section): Don't abort with wrong reloc
     884        sizes.
     885
     886        * Makefile.am: Run "make dep-am".
     887        * Makefile.in: Regenerate.
     888
     8892003-02-24  Kris Warkentin  <kewarken@qnx.com>
     890
     891        * elf.c (elfcore_read_notes): Add check for QNX style core file.
     892        (elfcore_grog_nto_note): New function.
     893        (elfcore_grog_nto_gregs): New function.
     894        (elfcore_grog_nto_status): New function.
     895
     8962003-02-24  Alan Modra  <amodra@bigpond.net.au>
     897
     898        * elflink.c (_bfd_elf_create_got_section): Check existing .got
     899        section flags before concluding that we've already been called.
     900        Don't use register keyword.
     901        (_bfd_elf_create_dynamic_sections): Don't use register keyword.
     902        (_bfd_elf_create_linker_section): Formatting.
     903
     9042003-02-20  jmc  <jmc@prioris.mini.pw.edu.pl>
     905
     906        * coff-h8300.c: Fix typo: intial -> initial.
     907        * coff-ppc.c: Likewise.
     908
     9092003-02-20  Alan Modra  <amodra@bigpond.net.au>
     910
     911        * elf32-ppc.c: Formatting.
     912        (allocate_dynrelocs): LD and GD relocs against the same sym need
     913        separate GOT entries.
     914        (ppc_elf_relocate_section): Correct GOT handling for multiple GOT
     915        entries per symbol.
     916
     9172003-02-19  Alan Modra  <amodra@bigpond.net.au>
     918
     919        * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Simplify dynamic reloc
     920        removal.  Localize vars.  Remove unnecessary dynobj test.
     921        * elf32-i386 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead
     922        of INFO.
     923        (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
     924        and optimize.
     925        (elf_i386_relocate_section): Likewise.
     926        (elf_i386_gc_sweep_hook): Simplify dyn reloc removal.  Localize vars.
     927        * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise.
     928        * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise.
     929        * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise.
     930        * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise.
     931        * elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise.  Remove
     932        local_dynrel for section too.  Don't touch HIPLT22, LOPLT10, PCPLT32
     933        or PCPLT10 relocs.  Don't subtract twice on PLT32 relocs.
     934        Formatting.
     935
     936        * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define.
     937        (ppc64_elf_check_relocs): Use it.  Correct comment.  Move SEC_ALLOC
     938        test.
     939        (ppc64_elf_adjust_dynamic_symbol): Use ELIMINATE_COPY_RELOCS.
     940        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
     941        (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
     942        and optimize.  Use ELIMINATE_COPY_RELOCS.
     943        (ppc64_elf_relocate_section): Likewise.
     944
     945        * elf32-ppc.c (struct ppc_elf_dyn_relocs): Add pc_count field.
     946        (ppc_elf_copy_indirect_symbol): Copy pc_count field.
     947        (ELIMINATE_COPY_RELOCS): Define.
     948        (ppc_elf_adjust_dynamic_symbol): Convert copy relocs to dynamic.
     949        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
     950        (MUST_BE_DYN_RELOC): Define.
     951        (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses,
     952        and optimize.  Trim dyn_relocs.
     953        (ppc_elf_check_relocs): Don't generate dyn_relocs when we know they'll
     954        not be used.  Do generate dyn_relocs for copy reloc avoidance.  Keep
     955        track of pc_rel dyn relocs.
     956        (ppc_elf_relocate_section): Remove "will_become_local".  Adjust
     957        WILL_CALL_FINISH_DYNAMIC_SYMBOL use.  Trim dyn relocs as per
     958        allocate_dynrelocs.  Don't recalculate "sec".
     959
     9602003-02-18  Alan Modra  <amodra@bigpond.net.au>
     961
     962        * elf32-ppc.c (ppc_elf_relocate_section): Remove unnecessary test.
     963        * elf64-ppc.c (ppc64_elf_tls_optimize): Decrement tlsld_got.refcount
     964        on invalid LD relocs.
     965        (allocate_dynrelocs): Invalid LD relocs don't use tlsld_got entry.
     966        (ppc64_elf_relocate_section): Unify new handling of LD relocs and
     967        tlsld_got entry.  Use IS_PPC64_TLS_RELOC.
     968
     969        * elf32-ppc.h: New file.
     970        * elf32-ppc.c: Include elf32-ppc.h.
     971        (NOP, CROR_151515, CROR_313131, TP_OFFSET, DTP_OFFSET): Define.
     972        (struct ppc_elf_link_hash_entry): Rename "root" to "elf".  Adjust uses.
     973        Add "tls_mask" field.
     974        (TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, TLS_TLS, TLS_TPRELGD): Define.
     975        (struct ppc_elf_link_hash_table): Rename "root" to "elf".  Adjust uses.
     976        Add got, relgot, plt, relplt, dynbss, relbss, dynsbss, relsbss,
     977        sdata, sdata2, tls_sec, tls_get_addr, tlsld_got fields.
     978        Make use of htab shortcuts throughout file.
     979        (ppc_elf_link_hash_newfunc): Init tls_mask field.
     980        (ppc_elf_link_hash_table_create): Init new fields.
     981        (ppc_elf_copy_indirect_symbol): Copy tls_mask.
     982        (ppc_elf_howto_raw): Add tls relocs.
     983        (ppc_elf_reloc_type_lookup): Handle them.
     984        (ppc_elf_unhandled_reloc): New function.
     985        (ppc_elf_create_got): Stash got section pointer in hash table,
     986        return status.  Make .rela.got too.
     987        (ppc_elf_create_dynamic_sections): Stash section pointers in htab.
     988        (ppc_elf_adjust_dynamic_symbol): Only set up copy relocs when
     989        NON_GOT_REF set.  Don't allocate space in .plt here..
     990        (allocate_dynrelocs): ..do so here instead, properly ref-counting and
     991        not allocating plt entries unnecessarily.  Allocate got entries here.
     992        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define.
     993        (ppc_elf_size_dynamic_sections): Allocate local got entries.  Pass
     994        "info" during allocate_dynrelocs hash traversal.  Use htab section
     995        shortcuts rather than searching for named sections.  Get rid of
     996        "plt" and "strip" booleans.
     997        (update_local_sym_info, bad_shared_reloc): New functions.
     998        (ppc_elf_check_relocs): Handle TLS relocs.  Move .rela.got creation to
     999        ppc_elf_create_got.  Don't mark got or plt reloc syms dynamic, do so
     1000        in allocate_dynreloc.  Use update_local_sym_info and bad_shared_reloc.
     1001        Disallow R_PPC_EMB_RELSDA, R_PPC_EMB_NADDR32, R_PPC_EMB_NADDR16,
     1002        R_PPC_EMB_NADDR16_LO, R_PPC_EMB_NADDR16_HI and R_PPC_EMB_NADDR16_HA
     1003        in shared libs.  R_PPC_PLTREL32 is a plt reloc too.  Refcount all
     1004        relocs that might use a plt entry.  Set NON_GOT_REF too.
     1005        Enumerate all do-nothing relocs.
     1006        (ppc_elf_gc_sweep_hook): Simplify removal of dynrelocs.  Handle
     1007        tls relocs and all plt relocs.
     1008        (ppc_elf_tls_setup, ppc_elf_tls_optimize): New functions.
     1009        (ppc_elf_finish_dynamic_symbol): Don't build got entries here.
     1010        (ppc_elf_finish_dynamic_sections): Rewrite tag code using htab
     1011        shortcuts.
     1012        (ppc_elf_relocate_section): Tidy.  Handle TLS relocs.  Use
     1013        bfd_elf_local_sym_name.  Simplify unresolved reloc code.  Build got
     1014        entries and got relocs here.  Warn on non-zero got reloc addend.
     1015        Split out branch taken/not taken reloc code into a separate switch
     1016        and correct offset calculation. Allow BRTAKEN/BRNTAKEN dynamic relocs.
     1017        Split out HA reloc adjustments to separate switch statement.  Don't
     1018        warn on reloc overflow if we've already warned about undefined.
     1019        Don't rebuild sym name when reporting errors.  Report all possible
     1020        errors from _bfd_final_link_relocate.
     1021        (bfd_elf32_bfd_final_link): Don't define.
     1022
     10232003-02-18  Alan Modra  <amodra@bigpond.net.au>
     1024
     1025        * elf64-ppc.c (ppc64_elf_relocate_section): Don't init "r".  Don't
     1026        rebuild sym name when reporting errors.
     1027
     10282003-02-17  Nick Clifton  <nickc@redhat.com>
     1029
     1030        * elflink.h (elf_link_output_extsym): Only check
     1031        allow_shlib_undefined for shared libraries.
     1032        * elf32-i386.c (elf_i386_relocate_section): Remove bogus check
     1033        of allow_shlib_undefined.
     1034        * elf32-cris.c (cris_elf_relocate_section): Likewise.
     1035        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
     1036        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
     1037        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
     1038        * elf32-s390.c (elf_s390_relocate_section): Likewise.
     1039        * elf32-sh.c (sh_elf_relocate_section): Likewise.
     1040        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
     1041        * elf32-vax.c (elf_vax_relocate_section): Likewise.
     1042        * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
     1043        * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
     1044        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
     1045        * elf64-s390.c (elf_s390_relocate_section): Likewise.
     1046        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
     1047        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
     1048        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
     1049        * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
     1050
     10512003-02-17  Nick Clifton  <nickc@redhat.com>
     1052
     1053        * elf.c (SEGMENT_AFTER_SEGMENT): Add third parameter - the
     1054        address field to use in the comparison.
     1055        (SEGMENT_OVERLAPS): Check that LMAs overlap as well.
     1056
     10572003-02-14  Bob Wilson  <bob.wilson@acm.org>
     1058
     1059        * elfcore.h (elf_core_file_p): Compare alternate machine codes for ELF
     1060        backends when checking if the generic ELF target should be used.
     1061
     1062        * syms.c (_bfd_stab_section_find_nearest_line): For line number stabs
     1063        outside of functions, treat values as absolute addresses.
     1064
     1065        * bfd.c: Change embedded documentation to use consistent indentation
     1066        and to split up long lines.  Change informal style of description
     1067        for functions lacking real documentation.
     1068        * coffcode.h: Break up long lines in embedded documentation.
     1069        * format.c: Likewise.
     1070        * targets.c: Likewise.
     1071        * libcoff.h: Regenerate.
     1072        * bfd-in2.h: Regenerate.
     1073
     10742003-02-14  Alan Modra  <amodra@bigpond.net.au>
     1075
     1076        * elf64-ppc.c (ppc64_elf_link_hash_table_create): Init tls_get_addr.
     1077        (ppc64_elf_copy_indirect_symbol): Merge tls_mask too.
     1078        (ppc64_elf_gc_sweep_hook): Simplify removal of dyn_relocs.
     1079        (allocate_dynrelocs): Don't treat undefined and undefweak specially.
     1080        (ppc_size_one_stub): Fix warning, and tighten plt entry check.
     1081        (group_sections): Don't share a stub section if stubs are for a large
     1082        section.  Adjust comment.
     1083        (ppc64_elf_size_stubs): Roughly double the size left for stubs if
     1084        !stubs_always_before_branch.
     1085        (ppc64_elf_relocate_section): Initialize tlsld GOT entry once.  Don't
     1086        treat undefined and undefweak specially when processing dyn relocs.
     1087
     10882003-02-13  Jakub Jelinek  <jakub@redhat.com>
     1089
     1090        * elflink.h (elf_link_add_object_symbols): Handle .symver x, x@FOO.
     1091
     10922003-02-13  Nick Clifton  <nickc@redhat.com>
     1093
     1094        * elf32-arm.h (elf32_thumb_to_arm_stub): Include section VMAs
     1095        in computation of offset to insert into BL instruction.
     1096
     10972003-02-11  Uwe Stieber  <uwe@wwws.de>
     1098
     1099        * config.bfd: Add support for kaOS as cross build target system.
     1100
     11012003-02-11  Alan Modra  <amodra@bigpond.net.au>
     1102
     1103        * elf64-ppc.c (ppc64_elf_check_relocs): Match versioned
     1104        .__tls_get_addr too.
     1105        (ppc64_elf_tls_setup): Ensure cached tls_get_addr is not indirect.
     1106
     11072003-02-10  Kaz kojima  <kkojima@rr.iij4u.or.jp>
     1108
     1109        * elf32-sh.c (elf_sh_dyn_relocs): Add tls_tpoff32 field.
     1110        (elf_sh_link_hash_entry): Remove tls_tpoff32 field.
     1111        (sh_elf_link_hash_newfunc): Remove the initialization of
     1112        tls_tpoff32 field.
     1113        (allocate_dynrelocs): Keep dyn_relocs if it includes the entry
     1114        for which tls_tpoff32 flag is set.
     1115        (sh_elf_relocate_section): Covert to LE only if the dyn_relocs
     1116        of the symbol includes the entry matched with the input_section
     1117        and having tls_tpoff32 flag on.  When linking statically, set
     1118        symbol index of R_SH_TLS_TPOFF32 relocation to zero if the symbol
     1119        is defined in this executable.
     1120        (sh_elf_check_relocs): Set tls_tpoff32 flag appropriately.
     1121
     11222003-02-10  Jakub Jelinek  <jakub@redhat.com>
     1123
     1124        * elf32-s390.c (elf_s390_size_dynamic_sections): Set relocs to TRUE
     1125        even if there is just non-empty .rela.plt.
     1126
     11272003-02-10  Nick Clifton  <nickc@redhat.com>
     1128
     1129        * archures.c (bfd_mach_arm_ep9312): Define.
     1130        * bfd-in2.h: Regenerate.
     1131        * cpu-arm.c (processors[]): Add ep9312.
     1132        (bfd_arm_arch): Add ep9312.
     1133        * elf32-arm.h (elf32_arm_merge_private_data): Update error
     1134        messages and add test for Maverick floating point support.
     1135        (elf32_arm_print_private_bfd_data): Handle
     1136        EF_ARM_MAVERICK_FLOAT flag.
     1137        (elf32_arm_object_p): New function.
     1138        (elf_backend_object_p): Define.
     1139
     11402003-02-10  Alan Modra  <amodra@bigpond.net.au>
     1141
     1142        * elf64-ppc.c: Rename assorted occurrences of tls_type and similar
     1143        variables, structure fields or function params to tls_mask or
     1144        similar to better reflect usage.
     1145        (struct got_entry): Comment.
     1146        (struct ppc_link_hash_entry):  Expand comment, and renumber TLS_*.
     1147        (get_tls_mask): Rename from get_tls_type.
     1148
     11492003-02-09  Alan Modra  <amodra@bigpond.net.au>
     1150
     1151        * elf64-ppc.c (TLS_GD_LD): Don't define..
     1152        (TLS_GD): ..define this instead and update all uses.
     1153        (TLS_TPRELGD): Define.
     1154        (ppc64_elf_link_hash_table_create): Tweak initialization of
     1155        init_refcount and init_offset.
     1156        (ppc64_elf_check_relocs): Add one extra element to t_symndx array.
     1157        Mark second slot of GD or LD toc entries.
     1158        (get_tls_type): Return an int.  Distinguish toc GD and LD entries
     1159        from other tls types.
     1160        (ppc64_elf_tls_setup): New function, split out from..
     1161        (ppc64_elf_tls_optimize): ..here.  Don't optimize when symbols are
     1162        defined in a dynamic object.  Fix LD optimization.  Don't set TLS_TPREL
     1163        on GD->IE optimization, use TLS_TPRELGD instead.  Use get_tls_type
     1164        return value to properly decide whether toc GD and LD entries can
     1165        optimize away __tls_get_addr call.  Check next reloc after DTPMOD64
     1166        to determine GD or LD rather than looking at TLS_LD flag.  Don't
     1167        attempt to adjust got entry tls_type here..
     1168        (allocate_dynrelocs): ..instead, adjust got entry tls_type here, and
     1169        look for possible merges.
     1170        (ppc64_elf_size_dynamic_sections): Adjust local got entries for
     1171        optimization.
     1172        (ppc64_elf_size_stubs): Tweak __tls_get_addr fudge.
     1173        (ppc64_elf_relocate_section): Rename some vars to better reflect usage.
     1174        Make use of return value from get_tls_type to properly detect GD and
     1175        LD optimizations.  Split tlsld/gd hi/ha from lo/ds case.  Don't
     1176        handle tls_get_addr removal when looking at REL24 relocs, do it when
     1177        looking at the previous reloc.  Check reloc after DTPMOD64 to determine
     1178        GD or LD.
     1179        * elf64-ppc.h (ppc64_elf_tls_setup): Declare.
     1180
     11812003-02-08  Alan Modra  <amodra@bigpond.net.au>
     1182
     1183        * elf32-hppa.c (group_sections): Don't share a stub section if
     1184        stubs are for a large section.
     1185
     1186        * elf32-hppa.c (elf32_hppa_size_stubs): Double the size left for
     1187        stubs if !stubs_always_before_branch.
     1188
     11892003-02-07  Nick Clifton  <nickc@redhat.com>
     1190
     1191        * elf.c (swap_out_syms): Generate an error message if an
     1192        equivalent output section cannot be found for a symbol.
     1193
     11942003-02-07  Jakub Jelinek  <jakub@redhat.com>
     1195
     1196        * elf64-alpha.c (elf64_alpha_relax_section): Don't crash if
     1197        local_got_entries is NULL.
     1198
     11992003-02-06  Andreas Schwab  <schwab@suse.de>
     1200
     1201        * elf-eh-frame.c (get_DW_EH_PE_signed): Define.
     1202        (read_value): Add parameter is_signed, use signed extraction if
     1203        the value is signed.
     1204        (_bfd_elf_write_section_eh_frame): Pass signed flag of the
     1205        encoding to read_value.
     1206
     12072003-02-06  Alan Modra  <amodra@bigpond.net.au>
     1208
     1209        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy got and
     1210        plt info when called to transfer weak sym info.
     1211
     12122003-02-05  Alan Modra  <amodra@bigpond.net.au>
     1213
     1214        * reloc.c: Add PPC and PPC64 TLS relocs.
     1215        * libbfd.h: Regenerate.
     1216        * bfd-in2.h: Regenerate.
     1217        * elf64-ppc.c (TP_OFFSET, DTP_OFFSET): Declare.
     1218        (ppc64_elf_howto_raw): Add TLS howto's.  Adjust R_PPC64_NONE to be
     1219        against a 32 bit field.
     1220        (ppc64_elf_reloc_type_lookup): Handle TLS relocs.
     1221        (_ppc64_elf_section_data): Add t_symndx and comments.
     1222        (ppc64_elf_section_data): Use elf_section_data macro.
     1223        (ppc64_elf_new_section_hook): American spelling.
     1224        (struct got_entry, struct plt_entry): New.
     1225        (MUST_BE_DYN_RELOC): Rename from IS_ABSOLUTE_RELOC.
     1226        (struct ppc_stub_hash_entry): Add "addend" field.
     1227        (struct ppc_link_hash_entry): Add "tls_type".
     1228        (TLS_TLS, TLS_GD_LD, TLS_LD, TLS_TPREL, TLS_DTPREL,
     1229        TLS_EXPLICIT): Define.
     1230        (struct ppc_link_hash_table): Add tls_sec, tls_get_addr, tlsld_got.
     1231        (link_hash_newfunc): Init new fields.
     1232        (ppc64_elf_link_hash_table_create): Likewise.  Set init_refcount and
     1233        init_offset to NULL.
     1234        (ppc64_elf_copy_indirect_symbol): Copy got and plt info.  Don't call
     1235        _bfd_elf_link_hash_copy_indirect, rather insert relevant code from
     1236        there.
     1237        (update_local_sym_info, update_plt_info): New functions.
     1238        (ppc64_elf_check_relocs): Use them.  Handle TLS relocs.  Adjust GOT
     1239        handling to use got.glist rather than got.refcount.  Likewise for PLT.
     1240        (ppc64_elf_gc_sweep_hook): Handle TLS relocs, new GOT and PLT lists.
     1241        (func_desc_adjust): Adjust for new PLT list.
     1242        (ppc64_elf_adjust_dynamic_symbol): Likewise.
     1243        (get_sym_h, get_tls_type): New functions.
     1244        (ppc64_elf_edit_opd): Remove unused variable.  Use get_sym_h.
     1245        (ppc64_elf_tls_optimize): New function.
     1246        (allocate_dynrelocs): Adjust for new PLT and GOT lists.  Allocate
     1247        TLS relocs.
     1248        (ppc64_elf_size_dynamic_sections): Likewise.
     1249        (ppc_type_of_stub): Adjust for new PLT list.
     1250        (ppc_build_one_stub): Likewise.
     1251        (ppc64_elf_size_stubs): Likewise.  Use get_sym_h.  Treat __tls_get_addr
     1252        calls specially.
     1253        (ppc64_elf_relocate_section): Adjust for new GOT and PLT lists.  Handle
     1254        TLS relocs.  Report local syms using bfd_elf_local_sym_name.  Don't
     1255        init GOT entries that have a reloc.  Generate GOT relocs here..
     1256        (ppc64_elf_finish_dynamic_symbol): ..not here.  Adjust for PLT list.
     1257        * elf64-ppc.h (ppc64_elf_tls_optimize): Declare.
     1258
     12592003-02-04  Andreas Schwab  <schwab@suse.de>
     1260
     1261        * elf32-m68k.c (elf_m68k_hash_entry): Define.
     1262        (elf_m68k_link_hash_traverse): Remove.
     1263        (elf_m68k_link_hash_newfunc): Use struct bfd_hash_entry and
     1264        elf_m68k_hash_entry instead of struct elf_m68k_link_hash_entry to
     1265        reduce casting.
     1266        (elf_m68k_check_relocs): Use elf_m68k_hash_entry instead of
     1267        casting.
     1268        (elf_m68k_size_dynamic_sections): Use elf_link_hash_traverse
     1269        instead of elf_m68k_link_hash_traverse.
     1270        (elf_m68k_discard_copies): Change first parameter to pointer to
     1271        struct elf_link_hash_entry and use elf_m68k_hash_entry when struct
     1272        elf_m68k_link_hash_entry is needed.
     1273
     12742003-02-04  Alan Modra  <amodra@bigpond.net.au>
     1275
     1276        * elf-bfd.h (struct got_entry, struct plt_entry): Forward declare.
     1277        (struct elf_link_hash_entry): Add "glist" and "plist" fields to
     1278        "got" union, and declare as gotplt_union.  Use gotplt_uinion for
     1279        "plt" field.
     1280        (struct elf_link_hash_table): Make "init_refcount" a gotplt_union.
     1281        Add "init_offset" field.
     1282        (struct elf_obj_tdata <local_got>): Add "struct got_entry **" to union.
     1283        (elf_local_got_ents): Declare.
     1284        * elf.c (_bfd_elf_link_hash_newfunc): Adjust initialization of "got"
     1285        and "plt".
     1286        (_bfd_elf_link_hash_hide_symbol): Use "init_offset".
     1287        (_bfd_elf_link_hash_table_init): Set "init_offset".
     1288        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set init_refcount
     1289        from init_offset.
     1290        (elf_adjust_dynamic_symbol): Set plt and got offsets using init_offset.
     1291
     1292        * elf.c (bfd_elf_local_sym_name): Split out from..
     1293        (group_signature): ..here.
     1294        * elf-bfd.h (bfd_elf_local_sym_name): Declare.
     1295
     12962003-02-04  Alan Modra  <amodra@bigpond.net.au>
     1297
     1298        * elf-bfd.h (enum elf_link_info_type): Remove.
     1299        (struct bfd_elf_section_data): Move sec_info_type, use_rela_p fields
     1300        to struct sec.  Remove linkonce_p field.
     1301        (elf_linkonce_p): Delete.
     1302        (elf_discarded_section): Update for sec_info_type change.
     1303        * section.c (struct sec): Add sec_info_type, use_rela_p, has_tls_reloc,
     1304        flag11, flag12, flag13, flag14, flag15, flag16, flag20, flag24.
     1305        (ELF_INFO_TYPE_NONE): Define.
     1306        (ELF_INFO_TYPE_STABS): Define.
     1307        (ELF_INFO_TYPE_MERGE): Define.
     1308        (ELF_INFO_TYPE_EH_FRAME): Define.
     1309        (ELF_INFO_TYPE_JUST_SYMS): Define.
     1310        (STD_SECTION): Update struct sec initializer.
     1311        * ecoff.c (bfd_debug_section): Likewise.
     1312        * elf.c: Likewise.  Update occurrences of sec_info_type and use_rela_p.
     1313        * elflink.h: Likewise.
     1314        * elf-eh-frame.c: Likewise.
     1315        * elf64-alpha.c: Likewise.
     1316        * elfxx-ia64.c: Likewise.
     1317        * elfxx-mips.c: Likewise.
     1318        * bfd-in2.h: Regenerate.
     1319
     1320        * elf32-sparc.c (sec_do_relax): Use elf_section_data macro rather than
     1321        referring to used_by_bfd.
     1322        * elf64-sparc.c (sec_do_relax): Likewise.
     1323        * elf64-mmix.c (mmix_elf_section_data): Likewise.
     1324        * elfxx-mips.c (mips_elf_section_data): Likewise.
     1325        * ieee.c (ieee_slurp_section_data): Use ieee_per_section macro.
     1326        (ieee_get_section_contents): Likewise.
     1327        (ieee_new_section_hook): Formatting.
     1328        (ieee_canonicalize_reloc): Remove commented out code.
     1329        * mmo.c (mmo_section_data): Define.  Use throughout file.
     1330        * oasys.c (oasys_get_section_contents): Use oasys_per_section macro.
     1331
     13322003-01-31  Graydon Hoare <graydon@redhat.com>
     1333
     1334        * Makefile.am (opncls.lo): Add dependency upon libiberty.h.
     1335        * Makefile.in: Regenerate.
     1336        * opncls.c (calc_crc32, get_debug_link_info,
     1337        seperate_debug_file_exists, find_seperate_debug_file): New
     1338        internal functions.
     1339        (bfd_follow_gnu_debuglink): New function.  Follow the pointer
     1340        contained inside a .gnu_debuglink section.
     1341        * bfd-in2.h: Regenerate.
     1342
     13432003-01-29  Alexandre Oliva  <aoliva@redhat.com>
     1344
     1345        * elfxx-mips.c (mips_elf_got_entry_hash): Don't dereference
     1346        entry->abfd when it's NULL.
     1347
     13482003-01-27  Alexandre Oliva  <aoliva@redhat.com>
     1349
     1350        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Handle
     1351        _bfd_elf_section_offset returning -2 the same way as -1.
     1352
     1353        * elfxx-mips.c (mips_elf_multi_got): New function.
     1354        (struct mips_got_entry): Make symndx and gotidx signed.  Moved
     1355        addend into union along with address and link hash entry.
     1356        (struct mips_got_info): Added bfd2got and next.
     1357        (struct mips_elf_hash_sort_data): Added max_unref_got_dynindx.
     1358        (mips_elf_got_section, mips_elf_create_got_section): Use
     1359        SEC_EXCLUDE bit to tell whether we really need the got
     1360        section.  Take boolean arguments to disregard an excluded
     1361        section, or to create it as excluded.  Adjust all callers.
     1362        Use mips_elf_got_section all over.
     1363        (mips_elf_local_got_index, mips_elf_got_page,
     1364        mips_elf_got16_entry): Take input bfd as argument, and pass it
     1365        on to mips_elf_create_local_got_entry.
     1366        (mips_elf_global_got_index, mips_elf_create_local_got_entry):
     1367        Take input bfd as argument, and manage entries in the
     1368        appropriate GOT.
     1369        (mips_elf_got_offset_from_index): Take input bfd as argument,
     1370        and use it to adjust the GP offset of the bfd.
     1371        (mips_elf_sort_hash_table, mips_elf_sort_hash_table_f): Move
     1372        unreferenced GOT entries of global symbols to the end.
     1373        (mips_elf_record_global_got_symbol): Take input bfd as
     1374        argument.  Add entries to the master GOT hash table.
     1375        (struct mips_elf_bfd2got_hash): New.
     1376        (struct mips_elf_got_per_bfd_arg): New.
     1377        (struct mips_elf_set_global_got_offset_arg): New.
     1378        (mips_elf_hash_bfd_vma, mips_elf_multi_got_entry_hash,
     1379        mips_elf_multi_got_entry_eq, mips_elf_bfd2got_entry_hash,
     1380        mips_elf_bfd2got_entry_eq, mips_elf_make_got_per_bfd,
     1381        mips_elf_merge_gots, mips_elf_set_global_got_offset,
     1382        mips_elf_resolve_final_got_entry,
     1383        mips_elf_resolve_final_got_entries, mips_elf_adjust_gp,
     1384        mips_elf_got_for_ibfd): New functions.
     1385        (ELF_MIPS_GP_OFFSET): Don't depend on SGI_COMPAT.
     1386        (MIPS_ELF_GOT_MAX_SIZE): New macro.
     1387        (STUB_LW): Generate 64-bit stub regardless of SGI_COMPAT.
     1388        (mips_elf_got_entry_hash): Take new fields into account.  Use
     1389        mips_elf_hash_bfd_vma.
     1390        (mips_elf_got_entry_eq): Take new fields into account.
     1391        (mips_elf_create_got_section): Initialize new fields.
     1392        (mips_elf_calculate_relocation): Pass input_bfd to functions
     1393        that now take it.  Adjust gp for the input_bfd.
     1394        (mips_elf_allocate_dynamic_relocation,
     1395        mips_elf_create_dynamic_relocation,
     1396        _bfd_mips_elf_create_dynamic_sections): Use...
     1397        (mips_elf_rel_dyn_section): New function.  Borrow code from...
     1398        (_bfd_mips_elf_check_relocs): Pass input_bfd to functions that
     1399        now take it.  Create the got section if needed, even if
     1400        excluded, before recording a global got symbol.  Move some
     1401        code to...
     1402        (mips_elf_record_local_got_symbol): New fn.
     1403        (_bfd_mips_elf_size_dynamic_sections): Disable combreloc.
     1404        Compute multi-got global entries offsets.  Move GOT code to...
     1405        (_bfd_mips_elf_always_size_sections): Call mips_elf_multi_got
     1406        if the GOT is too big.
     1407        (_bfd_mips_elf_finish_dynamic_symbol): Set got entry of
     1408        undefweak symbol to zero.  Generate dynamic relocations for
     1409        non-primary GOT entries for global symbols.
     1410        (_bfd_mips_elf_finish_dynamic_sections): Handle multi-got
     1411        case.  Generate dynamic relocations for local got entries.
     1412        Sort dynamic relocations on N64 too, using...
     1413        (sort_dynamic_relocs_64): New fns.
     1414        (_bfd_mips_elf_hide_symbol): Adjust multi-got counters.
     1415        (_bfd_mips_elf_merge_private_bfd_data): Ignore EF_MIPS_XGOT.
     1416
     14172003-01-27  Alexandre Oliva  <aoliva@redhat.com>
     1418
     1419        * bfd.c (struct _bfd): Added id field.
     1420        * opncls.c (_bfd_id_counter): New static variable.
     1421        (_bfd_new_bfd): Use it.
     1422        * bfd-in2.h: Rebuilt.
     1423
     14242003-01-25  Alan Modra  <amodra@bigpond.net.au>
     1425
     1426        * elf32-sparc.c (bfd_elf32_new_section_hook): Define.
     1427
     14282003-01-25  Jakub Jelinek  <jakub@redhat.com>
     1429
     1430        * elf32-sparc.c (_bfd_sparc_elf_howto_table): Add TLS relocs.
     1431        (elf32_sparc_rev32_howto): New variable.
     1432        (sparc_reloc_map): Add TLS relocs.
     1433        (elf32_sparc_reloc_type_lookup, elf32_sparc_info_to_howto):
     1434        Handle REV32.
     1435        (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc, elf32_sparc_mkobject):
     1436        New functions.
     1437        (struct elf32_sparc_dyn_relocs, struct elf32_sparc_link_hash_entry,
     1438        struct elf32_sparc_link_hash_table):
     1439        New structures.
     1440        (elf32_sparc_tdata, elf32_sparc_local_got_tls_type,
     1441        elf32_sparc_hash_table): Define.
     1442        (link_hash_newfunc, elf32_sparc_link_hash_table_create,
     1443        create_got_section, elf32_sparc_create_dynamic_sections,
     1444        elf32_sparc_copy_indirect_symbol, elf32_sparc_tls_transition): New
     1445        functions.
     1446        (elf32_sparc_check_relocs): Handle TLS relocs.  Add dynamic reloc
     1447        reference counting.
     1448        (elf32_sparc_gc_sweep_hook): Likewise.
     1449        (elf32_sparc_adjust_dynamic_symbol): Likewise.
     1450        (elf32_sparc_size_dynamic_sections): Likewise.
     1451        (elf32_sparc_relocate_section): Likewise.
     1452        (allocate_dynrelocs, readonly_dynrelocs, dtpoff_base, tpoff):
     1453        New functions.
     1454        (elf32_sparc_object_p): Allocate backend private object data.
     1455        (bfd_elf32_bfd_link_hash_table_create,
     1456        elf_backend_copy_indirect_symbol, bfd_elf32_mkobject,
     1457        elf_backend_can_refcount): Define.
     1458        (elf_backend_create_dynamic_sections): Define to
     1459        elf32_sparc_create_dynamic_sections.
     1460        * reloc.c: Add SPARC TLS relocs.
     1461        * bfd-in2.h, libbfd.h: Rebuilt.
     1462        * elf64-sparc.c (sparc64_elf_howto_table): Add TLS relocs.
     1463        (sparc_reloc_map): Likewise.
     1464
     14652003-01-24  Martin Schwidefsky  <schwidefsky@de.ibm.com>
     1466
     1467        * bfd-in2.h: Regenerate.
     1468        * elf32-s390.c (elf_s390_mkobject, elf_s390_tls_transition,
     1469        s390_tls_reloc, dtpoff_base, tpoff, invalid_tls_insn): New functions.
     1470        (elf_howto_table): Add TLS relocs.
     1471        (elf_s390_reloc_type_lookup): Likewise.
     1472        (elf_s390_link_hash_entry): Add tls_type.
     1473        (elf_s390_hash_entry, elf_s390_obj_tdata, elf_s390_local_got_tls_type):
     1474        New macros.
     1475        (elf_s390_link_hash_table): Add tls_ldm_got.
     1476        (link_hash_newfunc): Initialize tls_type.
     1477        (elf_s390_link_hash_table_create): Initialize refcount of tls_ldm_got.
     1478        (elf_s390_copy_indirect_symbol): Copy tls_type information.
     1479        (elf_s390_check_relocs): Support TLS relocs.
     1480        (elf_s390_gc_sweep_hook): Likewise.
     1481        (allocate_dynrelocs): Likewise.
     1482        (elf_s390_size_dynamic_sections): Likewise.
     1483        (elf_s390_relocate_section): Likewise.
     1484        (elf_s390_finish_dynamic_symbol): Likewise.
     1485        (bfd_elf32_mkobject): Define for TLS.
     1486        * elf64-s390.c: Same changes as for elf32-s390.c.
     1487        * libbfd.h: Regenerate.
     1488        * reloc.c: Add s390 TLS relocations.
     1489
     14902003-01-24  Charles Lepple clepple.ghz.cc
     1491
     1492        * aclocal.m4: Fix name of --enable-install-libbfd switch.
     1493
     14942003-01-23  Nick Clifton  <nickc@redhat.com>
     1495
     1496        * Add sh2e support:
     1497
     1498        2002-04-02  Elena Zannoni  <ezannoni@redhat.com>
     1499
     1500                * archures.c (bfd_mach_sh2e): Added.
     1501                * bfd-in2.h: Rebuilt.
     1502                * cpu-sh.c (arch_info_struct): Added SH2e.
     1503                * elf32-sh.c (sh_elf_set_mach_from_flags): Handle EF_SH2E.
     1504
     15052003-01-23  Alan Modra  <amodra@bigpond.net.au>
     1506
     1507        * elf-bfd.h (struct bfd_elf_section_data): Remove tdata.  Change
     1508        dynindx to an int.  Rearrange for better packing.
     1509        * elf.c (_bfd_elf_new_section_hook): Don't alloc if already done.
     1510        * elf32-mips.c (bfd_elf32_new_section_hook): Define.
     1511        * elf32-sh64.h: New.  Split out from include/elf/sh.h.
     1512        (struct _sh64_elf_section_data): New struct.
     1513        (sh64_elf_section_data): Don't dereference sh64_info (was tdata).
     1514        * elf32-sh64-com.c: Include elf32-sh64.h.
     1515        * elf32-sh64.c: Likewise.
     1516        (sh64_elf_new_section_hook): New function.
     1517        (bfd_elf32_new_section_hook): Define.
     1518        (sh64_elf_fake_sections): Adjust for sh64_elf_section_data change.
     1519        (sh64_bfd_elf_copy_private_section_data): Likewise.
     1520        (sh64_elf_final_write_processing): Likewise.
     1521        * elf32-sparc.c (struct elf32_sparc_section_data): New.
     1522        (elf32_sparc_new_section_hook): New function.
     1523        (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
     1524        (sec_do_relax): Define.
     1525        (elf32_sparc_relax_section): Adjust to use sec_do_relax.
     1526        (elf32_sparc_relocate_section): Likewise.
     1527        * elf64-mips.c (bfd_elf64_new_section_hook): Define.
     1528        * elf64-mmix.c (struct _mmix_elf_section_data): New.
     1529        (mmix_elf_section_data): Define.  Use throughout file.
     1530        (mmix_elf_new_section_hook): New function.
     1531        (bfd_elf64_new_section_hook): Define.
     1532        * elf64-ppc.c (struct _ppc64_elf_section_data): New.
     1533        (ppc64_elf_section_data): Define.  Use throughout.
     1534        (ppc64_elf_new_section_hook): New function.
     1535        (bfd_elf64_new_section_hook): Define.
     1536        * elf64-sparc.c (struct sparc64_elf_section_data): New.
     1537        (sparc64_elf_new_section_hook): New function.
     1538        (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete.
     1539        (sec_do_relax): Define.
     1540        (sparc64_elf_relax_section): Adjust to use sec_do_relax.
     1541        (sparc64_elf_relocate_section): Likewise.
     1542        (bfd_elf64_new_section_hook): Define.
     1543        * elfn32-mips.c (bfd_elf32_new_section_hook): Define.
     1544        * elfxx-mips.c (struct _mips_elf_section_data): New.
     1545        (mips_elf_section_data): Define.  Use throughout.
     1546        (_bfd_mips_elf_new_section_hook): New function.
     1547        (mips_elf_create_got_section): Don't alloc used_by_bfd.
     1548        * elfxx-mips.h (_bfd_mips_elf_new_section_hook): Declare.
     1549        * elfxx-target.h (bfd_elfNN_new_section_hook): Add #ifndef.
     1550        * Makefile.am: Run "make dep-am".
     1551        * Makefile.in: Regenerate.
     1552
     15532003-01-21  Richard Henderson  <rth@redhat.com>
     1554
     1555        * elf64-alpha.c (ALPHA_ELF_LINK_HASH_PLT_LOC): New.
     1556        (struct alpha_elf_link_hash_entry): Add plt_old_section, plt_old_value.
     1557        (elf64_alpha_adjust_dynamic_symbol): Set them.
     1558        (elf64_alpha_size_plt_section_1): Reset them when plt entry removed.
     1559        (elf64_alpha_relax_tls_get_addr): Handle LDM relocs.  Frob the
     1560        symbol index when relaxing LDM to TPREL.
     1561        (elf64_alpha_relax_section): Likewise.  Allow relaxation of GD
     1562        relocs, even if the target isn't locally defined.
     1563        (elf64_alpha_check_relocs): Frob LDM reloc symndx to zero.
     1564        (elf64_alpha_relocate_section): Likewise.  Force TP-relative
     1565        relocs vs symndx 0 to the tp base.
     1566
     15672003-01-21  Fabio Alemagna  <falemagn@aros.org>
     1568
     1569        * config.bfd: Handle i[3456]86-*-aros*.
     1570
     15712003-01-21  Andreas Schwab  <schwab@suse.de>
     1572
     1573        * elf32-ppc.c (struct ppc_elf_dyn_relocs): Define.
     1574        (struct ppc_elf_link_hash_entry): Define.
     1575        (ppc_elf_hash_entry): New function.
     1576        (struct ppc_elf_link_hash_table): Define.
     1577        (ppc_elf_hash_table): New function.
     1578        (ppc_elf_link_hash_newfunc): New function.
     1579        (ppc_elf_link_hash_table_create): New function.
     1580        (ppc_elf_copy_indirect_symbol): New function.
     1581        (allocate_dynrelocs): New function.
     1582        (readonly_dynrelocs): New function.
     1583        (ppc_elf_size_dynamic_sections): Allocate space for dynamic
     1584        relocs and determine DT_TEXTREL.
     1585        (ppc_elf_check_relocs): Don't do that here, just count the
     1586        dynamic relocs.
     1587        (ppc_elf_gc_sweep_hook): Discard any dynamic relocs against the
     1588        removed section.
     1589        (bfd_elf32_bfd_link_hash_table_create): Define.
     1590        (elf_backend_copy_indirect_symbol): Define.
     1591
     15922003-01-21  Richard Henderson  <rth@redhat.com>
     1593
     1594        * elf64-alpha.c (alpha_dynamic_entries_for_reloc): GOTTPREL and
     1595        TPREL also get a reloc if shared.  Remove SREL support.
     1596        (elf64_alpha_emit_dynrel): New.
     1597        (elf64_alpha_relocate_section): Use it.  Resolve dynamic TPREL
     1598        and GOTTPREL relocs to local symbols against the tp base.
     1599        (elf64_alpha_finish_dynamic_symbol): Use elf64_alpha_emit_dynrel.
     1600
     1601        * elf64-alpha.c (elf64_alpha_relax_got_load): Decrement got
     1602        use count before clobbering r_type.
     1603        (elf64_alpha_relax_tls_get_addr): Don't use pos[1] if insn
     1604        ordering would mean dataflow inspection is necessary.
     1605
     16062003-01-20  Svein E. Seldal  <Svein.Seldal@solidas.com>
     1607
     1608        * coffcode.h (coff_set_flags): Added get/set arch hooks.
     1609
     16102003-01-20  Fabio Alemagna  <falemagn@aros.org>
     1611
     1612        * elf32-sh.c: Treat elfNN_bed like other macros defined in
     1613          elfxx-target.h and #undef it before #define'ing it.
     1614        * elf32-i386.c: Likewise.
     1615        * elf32-sh64.c: Likewise.
     1616        * elf64-alpha.c: Likewise.
     1617        * elf64-sh64.c: Likewise.
     1618
     16192003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
     1620
     1621        * bfd-in2.h: Regenerate.
     1622        * elf32-s390.c (elf_s390_adjust_gotplt): New prototype.
     1623        (elf_howto_table): Rename R_390_GOTOFF to R_390_GOTOFF32. Add
     1624        R_390_GOTOFF16, R_390_GOTOFF64, R_390_GOTPLT12, R_390_GOTPLT16,
     1625        R_390_GOTPLT32, R_390_GOTPLT64, R_390_GOTPLTENT, R_390_PLTOFF16,
     1626        R_390_PLTOFF32 and R_390_PLTOFF64.
     1627        (elf_s390_reloc_type_lookup): Likewise.
     1628        (struct elf_s390_link_hash_entry): Add gotplt_refcount to keep track
     1629        of GOTPLT references to a function.
     1630        (link_hash_newfunc): Initialize gotplt_refcount.
     1631        (elf_s390_check_relocs): Move allocation of local_got_refcounts array
     1632        and creation of the got section out of the main switch. Add support
     1633        for the gotoff, gotplt and pltoff relocations.
     1634        (elf_s390_gc_sweep_hook): Add reference counting for gotoff, gotplt
     1635        and pltoff.
     1636        (elf_s390_adjust_gotplt): New function.
     1637        (elf_s390_adjust_dynamic_symbol): Adjust gotplt refcount for removed
     1638        plt entries.
     1639        (allocate_dynrelocs): Add comment.
     1640        (elf_s390_relocate_section): Change r_type to unsigned. Add support
     1641        for gotoff, gotplt and pltoff relocations.
     1642        * elf64-s390.c: Same changes as for elf32-s390.c.
     1643        * libbfd.h: Regenerate.
     1644        * reloc.c: Add BFD_RELOC_390_GOTOFF64, BFD_RELOC_390_GOTPLT12,
     1645        BFD_RELOC_390_GOTPLT16, BFD_RELOC_390_GOTPLT32, BFD_RELOC_390_GOTPLT64,
     1646        BFD_RELOC_390_GOTPLTENT, BFD_RELOC_390_PLTOFF16, BFD_RELOC_390_PLTOFF32
     1647        and BFD_RELOC_390_PLTOFF64.
     1648
     16492003-01-18  Jakub Jelinek  <jakub@redhat.com>
     1650
     1651        * elfxx-ia64.c (elfNN_ia64_relocate_section): Handle
     1652        R_IA64_TPREL64[LM]SB against non-global symbol properly.
     1653
     16542003-01-16  Jakub Jelinek  <jakub@redhat.com>
     1655
     1656        * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add
     1657        self_dtpmod_done and self_dtpmod_offset.
     1658        (allocate_global_data_got): Only use one got entry for all
     1659        dtpmod relocs against local symbols.
     1660        (allocate_dynrel_entries): Only need .rela.got entry for
     1661        dtpmod against global symbol.
     1662        (elfNN_ia64_size_dynamic_sections): Initialize self_dtpmod_offset.
     1663        Reserve space in .rela.got for the local dtpmod entry.
     1664        (set_got_entry): Initialize the common local dtpmod .got entry.
     1665        (elfNN_ia64_relocate_section): Handle R_IA_64_DTPREL64LSB
     1666        and R_IA_64_DTPREL64MSB.
     1667
     16682003-01-16  Alan Modra  <amodra@bigpond.net.au>
     1669
     1670        * elf64-ppc.c: Include elf/ppc64.h rather than elf/ppc.h.
     1671        (R_PPC_*): Rename all occurrences to R_PPC64_*.
     1672        (R_PPC64_ADDR30): Rename all occurrences to R_PPC64_REL30.
     1673        (enum elf_ppc_reloc_type): Ditto to enum elf_ppc64_reloc_type.
     1674        (ppc64_elf_gc_sweep_hook): Handle R_PPC64_REL30 along with other
     1675        relative relocs, not with absolute ones.
     1676        * Makefile.am: Run "make dep-am".
     1677        * Makefile.in: Regenerate.
     1678        * po/SRC-POTFILES.in: Regenerate.
     1679
     16802003-01-15  Andreas Schwab  <schwab@suse.de>
     1681
     1682        * elf32-ppc.c (ppc_elf_check_relocs): Don't set DF_TEXTREL for a
     1683        relocation against a non-allocated readonly section.
     1684
     16852003-01-10  Alan Modra  <amodra@bigpond.net.au>
     1686
     1687        * elf32-ppc.c (ppc_elf_relocate_section): Adjust addend for GOT16_HA.
     1688        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.  PLTGOT16_HA too.
     1689
     16902002-01-08  Klee Dienes  <kdienes@apple.com>
     1691
     1692        * Makefile.am (ALL_MACHINES): Use cpu-msp430.lo, not cpu-msp430.c.
     1693        (BFD32_BACKENDS): Use elf32-msp430.lo, not elf32-msp430.c.
     1694        * Makefile.in: Regenerate.
     1695
     16962003-01-08  Alexandre Oliva  <aoliva@redhat.com>
     1697
     1698        * elfn32-mips.c (prev_reloc_section): New.
     1699        (GET_RELOC_ADDEND): Use it.  Parenthesize macro arguments.
     1700        (SET_RELOC_ADDEND): Parenthesize macro argument.
     1701
     17022003-01-07  John David Anglin  <dave.anglin@nrc.gc.ca>
     1703
     1704        * elf32-hppa.c (final_link_relocate): For all DP relative relocations,
     1705        adjust addil instructions if the symbol has no section.
     1706
     17072003-01-07  DJ Delorie  <dj@redhat.com>
     1708
     1709        * elf32-xstormy16.c (xstormy16_elf_howto_table): Make REL_12 not
     1710        partial_inplace.
     1711
     17122003-01-07  Andreas Schwab  <schwab@suse.de>
     1713
     1714        * elf32-m68k.c (elf_m68k_check_relocs): Don't set DF_TEXTREL for
     1715        PC relative relocations.
     1716        (elf_m68k_discard_copies): Set it here instead.
     1717
     17182002-01-02  Ben Elliston  <bje@redhat.com>
     1719            Jeff Johnston  <jjohnstn@redhat.com>
     1720
     1721        * Makefile.am (ALL_MACHINES): Add cpu-iq2000.lo.
     1722        (ALL_MACHINES_CFILES): Add cpu-iq2000.c.
     1723        (BFD32_BACKENDS): Add elf32-iq2000.lo.
     1724        (BFD32_BACKENDS_CFILES): Add elf32-iq2000.c.
     1725        (cpu-iq2000.lo): New target.
     1726        * Makefile.in: Regenerate.
     1727        * config.bfd: Handle iq2000-*-elf.
     1728        * archures.c (bfd_architecture): Add bfd_{arch,mach}_iq2000.
     1729        (bfd_archures_list): Add bfd_iq2000_arch.
     1730        * configure.in: Handle bfd_elf32_iq2000_vec.
    4591731        * configure: Regenerate.
    460 
    461 2001-06-09  Philip Blundell  <philb@gnu.org>
    462 
    463         * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last
    464         change.
    465         (elf32_arm_plt_entry): Likewise.
    466 
    467 2001-06-07  Alan Modra  <amodra@bigpond.net.au>
    468 
    469         * Most files: Update copyright notices.
    470 
    471 2001-05-29  Andreas Jaeger  <aj@suse.de>
    472 
    473         * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64.
    474         (elf64_x86_64_relocate_section): Likewise.
    475 
    476 2001-05-28  Andreas Jaeger  <aj@suse.de>
    477 
    478         * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the
    479         generic version since we want a hashsize of 4.
    480         (elf_backend_size_info): Likewise.
    481 
    482 2001-05-28  Nicolas Pitre <nico@cam.org>
    483 
    484         * elf32-arm.h: Fix PLT generation for big endian ARM.
    485 
    486 2001-05-28  Jeff Sturm  <jsturm@one-point.com>
    487 
    488         * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64.
     1732        * reloc.c: Add BFD_RELOC_IQ2000_OFFSET_16, BFD_RELOC_IQ2000_OFFSET_21,
     1733        and BFD_RELOC_IQ2000_UHI16.
     1734        * targets.c (bfd_elf32_iq2000_vec): Declare.
     1735        (bfd_target_vector): Add bfd_elf32_iq2000_vec.
     1736        * elf.c (prep_headers): Set e_machine to EM_IQ2000.
     1737        * cpu-iq2000.c: New file.
     1738        * elf32-iq2000.c: Likewise.
     1739        * libbfd.h: Regenerate.
     1740        * bfd-in2.h: Likewise.
     1741
     17422003-01-02  Richard Sandiford  <rsandifo@redhat.com>
     1743
     1744        * elfxx-mips.c: Include libiberty.h.
     1745        (elf_mips_isa, _bfd_mips_elf_mach_extends_p): Remove.
     1746        (mips_set_isa_flags): New function, split out from...
     1747        (_bfd_mips_elf_final_write_processing): ...here.  Only call
     1748        mips_set_isa_flags if the EF_MIPS_MACH bits are clear.
     1749        (mips_mach_extensions): New array.
     1750        (mips_32bit_flags_p): New function.
     1751        (_bfd_mips_elf_merge_private_bfd_data): Rework architecture checks.
     1752        Use mips_32bit_flags_p to check if one binary is 32-bit and the
     1753        other is 64-bit.  When adopting IBFD's architecture, adopt the
     1754        bfd_mach as well as the flags.
     1755
     17562003-01-02  Nick Kelsey  <nickk@ubicom.com>
     1757
     1758        * elf32-ip2k.c: Re-work of linker relaxation code for the ip2k to
     1759        fix internal errors, fix bad code generation, fix incorrect stabs
     1760        information, and improve ability to eliminate redundant page
     1761        instructions. Added code to ip2k_final_link_relocate to self-verify
     1762        the linker relaxation.  Fix formatting problems.
     1763
     17642002-12-30  Chris Demetriou  <cgd@broadcom.com>
     1765
     1766        * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mipsisa32r2 case.
     1767        * archures.c (bfd_mach_mipsisa32r2): New define.
     1768        * bfd-in2.h: Regenerate.
     1769        * cpu-mips.c (I_mipsisa32r2): New enum value.
     1770        (arch_info_struct): Add entry for I_mipsisa32r2.
     1771        * elfxx-mips.c (elf_mips_isa, _bfd_elf_mips_mach)
     1772        (_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_32R2.
     1773        (_bfd_mips_elf_final_write_processing): Add
     1774        bfd_mach_mipsisa32r2 case.
     1775        (_bfd_mips_elf_merge_private_bfd_data): Handle merging of
     1776        binaries marked as using MIPS32 Release 2.
     1777
     17782002-12-30    Dmitry Diky <diwil@mail.ru>
     1779
     1780        * Makefile.am: Add msp430 target.
     1781        * configure.in: Likewise.
     1782        * Makefile.in: Regenerate.
     1783        * configure: Regenerate.
     1784        * archures.c: Add msp430 architecture vector.
     1785        * config.bfd: Likewise.
     1786        * reloc.c: Add msp430 relocs.
     1787        * targets.c: Add msp320 target.
     1788        * cpu-msp430.c: New file: msp430 cpu detection.
     1789        * elf32-msp430.c: New file: msp430 reloc processing.
    4891790        * bfd-in2.h: Regenerate.
    4901791        * libbfd.h: Regenerate.
    491         * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32
    492         and BFD_RELOC_SPARC_UA64 mapping
     1792
     17932002-12-28  Jakub Jelinek  <jakub@redhat.com>
     1794
     1795        * elf.c (elf_sort_sections): Don't reorder .tbss.
     1796        (assign_file_positions_for_segments): Only adjust off/voff
     1797        for increased alignment in PT_LOAD or PT_NOTE segment,
     1798        but adjust p_filesz for .tbss too.  in PT_LOAD consider
     1799        .tbss to have zero memory size.
     1800        (copy_private_bfd_data) [SECTION_SIZE]: Define.
     1801        [IS_CONTAINED_BY_VMA, IS_CONTAINED_BY_LMA]: Use it.
     1802        [INCLUDE_SECTION_IN_SEGMENT]: Only put SHF_TLS sections
     1803        into PT_TLS segment.  Never put SHF_TLS sections in
     1804        segments other than PT_TLS or PT_LOAD.
     1805
     1806        * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Clear .plt
     1807        sh_entsize.
     1808
     18092002-12-23  DJ Delorie  <dj@redhat.com>
     1810
     1811        * coff64-rs6000.c (xcoff64_ppc_relocate_section): Fix logic reversal.
     1812
     18132002-12-23  Alan Modra  <amodra@bigpond.net.au>
     1814
     1815        * elflink.h (elf_link_output_extsym): Heed strip_discarded.
     1816
     18172002-12-23  Nick Clifton  <nickc@redhat.com>
     1818
     1819        * archures.c (bfd_arch_get_compatible): Add third parameter
     1820        'accept_unknowns'.  Only accept unknown format BFDs if
     1821        accept_unknowns is true, or if the format is "binary".
     1822        * bfd-in2.h: Regenerate.
     1823
     18242002-12-21  Nick Clifton  <nickc@redhat.com>
     1825
     1826        * coff-arm.c (coff_arm_relocate_section): Disable WINCE workaround
     1827        that subtracted 8 from pc relative relocations.
     1828
     18292002-12-20  Kazu Hirata  <kazu@cs.umass.edu>
     1830
     1831        * coff-h8300.c: Fix comment typos.
     1832        * coffcode.h: Likewise.
     1833        * cpu-cris.c: Likewise.
     1834        * elf32-vax.c: Likewise.
     1835        * genlink.h: Likewise.
     1836        * linker.c: Likewise.
     1837        * som.c: Likewise.
     1838        * tekhex.c: Likewise.
     1839        * vms-misc.c: Likewise.
     1840
     18412002-12-20  DJ Delorie  <dj@redhat.com>
     1842
     1843        * reloc.c: Add BFD_RELOC_XSTORMY16_12.
     1844        * libbfd.h: Regenerate.
     1845        * bfd-in2.h: Regenerate.
     1846        * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_12.
     1847        (xstormy16_reloc_map): Add R_XSTORMY16_12.
     1848
     18492002-12-19  Kazu Hirata  <kazu@cs.umass.edu>
     1850
     1851        * doc/bfdint.texi: Fix typos.
     1852
     18532002-12-20  Paul Eggert  <eggert@twinsun.com>
     1854
     1855        Port to POSIX 1003.1-2001.
     1856        * acinclude.m4 (AM_INSTALL_LIBBFD): Do not rely on "test -o".
     1857        * configure.in (build-warnings): Likewise.
     1858        (Horrible hacks to build DLLs on Windows): Do not rely on "tail -1".
     1859        * aclocal.m4: Regenerate.
     1860        * config.in: Regenerate.
     1861        * configure: Regenerate.
     1862
     18632002-12-19  Alan Modra  <amodra@bigpond.net.au>
     1864
     1865        * coff-h8300.c: Include libiberty.h.
     1866        (h8300_reloc16_extra_cases): Check the hash table creator before
     1867        referencing h8300 specific fields.  Stash the hash table pointer
     1868        in a local var.  Comment typo fixes.
     1869        (h8300_bfd_link_add_symbols): Likewise.
     1870
     1871        * bfd/reloc.c (struct reloc_howto_struct): Revise src_mask and
     1872        dst_mask comments.
     1873        * bfd-in2.h: Regenerate.
     1874
     18752002-12-18  Alan Modra  <amodra@bigpond.net.au>
     1876
     1877        * elf32-ppc.c (ppc_elf_relocate_section): Reorganize dynamic reloc
     1878        code a little.  Comment on dynamic relocs against section symbols.
     1879
     18802002-12-17  Roger Sayle  <roger@eyesopen.com>
     1881
     1882        * configure.host (ia64-*-hpux*): Support 64 bit targets using
     1883        the HP compiler's "long long".
     1884
     18852002-12-16  Andrew MacLeod  <amacleod@redhat.com>
     1886
     1887        * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_LO16
     1888        and R_XSTORMY16_HI16) howto entries.
     1889        (xstormy16_reloc_map): Map R_XSTORMY16_{LO,HI}16 to BFD_RELOC_{LO,HI}16.
     1890        (xstormy16_info_to_howto_rela): Use R_XSTORMY16_GNU_VTINHERIT to
     1891        determine the start of the second reloc table.
     1892
     18932002-12-16  Nathan Tallent  <eraxxon@alumni.rice.edu>
     1894
     1895        * ecofflink.c: Fix the reading of the debugging information
     1896        of Tru64/Alpha binaries that are produced by recent Compaq
     1897        compilers.
     1898        (mk_fdrtab): Fix error in creating the FDR (file descriptor)
     1899        table.
     1900        (lookup_line): Because of the strange information sometimes
     1901        generated by Compaq's recent compilers, change how the FDR
     1902        table is searched so that PDRs (procedure descriptors) are
     1903        correctly found.  Note that this change is really more of a hack;
     1904        however, I have included extensive documentation as to why
     1905        this is the best solution short of an extensive rewrite or
     1906        another hack.
     1907        (fdrtab_lookup): Add comments to explain the algorithm.
     1908
     19092002-12-12  Alexandre Oliva  <aoliva@redhat.com>
     1910
     1911        * elf-m10300.c (elf32_mn10300_link_hash_newfunc): Reorder
     1912        initializers to match struct declaration.
     1913
     19142002-12-12  Alan Modra  <amodra@bigpond.net.au>
     1915
     1916        * dwarf2.c (comp_unit_contains_address): Comment typo fix.
     1917        * elf.c (get_program_header_size): Likewise.
     1918        * elf32-m32r.c (m32r_elf_lo16_reloc): Likewise.
     1919        (m32r_elf_generic_reloc): Likewise.
     1920        * elf32-ppc.c (ppc_elf_howto_init): Likewise.
     1921        * elflink.h (elf_bfd_discard_info): Likewise.
     1922
     19232002-12-12  Alan Modra  <amodra@bigpond.net.au>
     1924
     1925        * elf32-i386.c (elf_i386_finish_dynamic_sections): Add output_offset
     1926        to DT_JMPREL.  Use srelplt input section size for DT_PLTRELSZ and
     1927        DT_RELSZ adjustment, not output section.  Avoid writing tags when
     1928        unchanged.  Don't assume linker script is sane, adjust DT_REL too.
     1929        * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Just use raw
     1930        size of srelplt for DT_PLTRELSZ.  Use srelplt input section size for
     1931        DT_RELASZ adjustment, not output section.  Avoid writing tags when
     1932        unchanged.  Adjust DT_RELA.
     1933        * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Tweaks for better
     1934        formatting.  Avoid writing tags when unchanged.  Adjust DT_RELA.
     1935
     19362002-12-12  Alexandre Oliva  <aoliva@redhat.com>
     1937
     1938        * elfxx-mips.c (mips_elf_calculate_relocation): Don't divide
     1939        addend by 4.
     1940
     19412002-12-12  Alexandre Oliva  <aoliva@redhat.com>
     1942
     1943        * elfxx-mips.c (struct mips_got_entry): New.
     1944        (struct mips_got_info): Added got_entries field.
     1945        (mips_elf_got_entry_hash, mips_elf_got_entry_eq): New functions.
     1946        (mips_elf_local_got_index, mips_elf_got_page,
     1947        mips_elf_got16_entry): Re-implement in terms of new...
     1948        (mips_elf_create_local_got_entry): Rewrite to use got_entries.
     1949        Change return type.
     1950        (mips_elf_highest): Warning clean-up.
     1951        (mips_elf_create_got_section): Initialize got_entries.
     1952        (_bfd_mips_elf_check_relocs): Use got_entries to estimate
     1953        local got size.
     1954        (_bfd_mips_elf_size_dynamic_sections): Do not account for
     1955        GOT_PAGE entries, since we now reuse GOT16 entries.
     1956
     19572002-12-10  Jason Thorpe  <thorpej@wasabisystems.com>
     1958
     1959        * aoutx.h (set_section_contents): Allow an otherwise unrepresentable
     1960        read-only section that lies after .text and before .data to be
     1961        written into the output file and included in a_text.
     1962        (translate_to_native_sym_flags): If an otherwise unrepresentable
     1963        section was merged with .text, convert its symbols to N_TEXT
     1964        symbols.
     1965        * libaout.h (aout_section_merge_with_text_p): New macro.
     1966
     19672002-12-08  Alan Modra  <amodra@bigpond.net.au>
     1968
     1969        * bfd-in.h: Comment typo fix.  Formatting.
     1970        * bfd-in2.h: Regenerate.
     1971        * coff64-rs6000.c (xcoff64_openr_next_archived_file): Warning fix.
     1972        * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): Prototype.
     1973        * elf64-mmix.c (mmix_dump_bpo_gregs): Warning fix.
     1974
     19752002-12-05  Richard Henderson  <rth@redhat.com>
     1976
     1977        * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21BI.
     1978        Only send PCREL21B though the plt.  Fix installed reloc type.
     1979        (elfNN_ia64_relocate_section): Give error for dynamic reloc
     1980        against PCREL22 or PCREL64I; clean up error messages for
     1981        branch relocs.
     1982
     19832002-12-04  Kevin Buettner  <kevinb@redhat.com>
     1984
     1985        * elf64-mips.c (elf64_mips_grok_prstatus, elf64_mips_grok_psinfo):
     1986        New functions.
     1987        (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define.
     1988
     19892002-12-04  David Mosberger  <davidm@hpl.hp.com>
     1990
     1991        * cpu-ia64-opc.c: Add operand constant "ar.csd".
     1992
     19932002-12-04  H.J. Lu <hjl@gnu.org>
     1994
     1995        * elfxx-ia64.c (get_local_sym_hash): Use section ID instead of
     1996        BFD address when constructing local name.
     1997
     19982002-12-04  Andreas Schwab  <schwab@suse.de>
     1999
     2000        * elf32-m68k.c (struct elf_m68k_link_hash_table): Add sym_sec
     2001        member.
     2002        (elf_m68k_link_hash_table_create): Initialize it.
     2003        (elf_m68k_check_relocs): Handle symbols that are forced to be
     2004        local due to visibility changes.
     2005        (elf_m68k_adjust_dynamic_symbol): Likewise.
     2006        (elf_m68k_size_dynamic_sections): Likewise.
     2007        (elf_m68k_discard_copies): Likewise.
     2008        (elf_m68k_relocate_section): Likewise.
     2009
     20102002-12-04  Alan Modra  <amodra@bigpond.net.au>
     2011
     2012        * elf64-ppc.c (ppc64_elf_edit_opd): Correct typo.
     2013
     20142002-12-04  Alan Modra  <amodra@bigpond.net.au>
     2015
     2016        * srec.c (srec_write_symbols): Restore '$' prefix to address
     2017        accidentally removed in 2002-04-04 change.
     2018        (srec_get_symtab): Use 0 instead of `(long) FALSE'.
     2019
     20202002-12-03  Nick Clifton  <nickc@redhat.com>
     2021
     2022        * elf32-ppc.c (apuinfo_list_init): New function.
     2023        (apuinfo_list_add): New function: Add a value to the list.
     2024        (apuinfo_list_length): New function: Return the number of
     2025        values on the list.
     2026        (apuinfo_list_element): New function: Return a value on the
     2027        list.
     2028        (apuinfo_list_finish): New function: Free the resources used
     2029        by the list.
     2030        (ppc_elf_begin_write_processing): New function.  Scan the
     2031        input bfds for apuinfo sections.
     2032        (ppc_elf_write_section): New function: Delay the creation of
     2033        the contents of an apuinfo section in an output bfd.
     2034        (ppc_elf_final_write_processing): New function.  Create the
     2035        contents of an apuinfo section in an output bfd.
     2036        (elf_backend_begin_write_processing): Define.
     2037        (elf_backend_final_write_processing): Define.
     2038        (elf_backend_write_section): Define.
     2039
     20402002-12-03  Richard Henderson  <rth@redhat.com>
     2041
     2042        * cpu-ia64-opc.c (elf64_ia64_operands): Add ldxmov entry.
     2043
     20442002-12-01  Stephane Carrez  <stcarrez@nerim.fr>
     2045
     2046        Fix PR savannah/1417:
     2047        * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Don't adjust
     2048        branch if it goes to the start of the deleted region.
     2049
     20502002-12-01  Stephane Carrez  <stcarrez@nerim.fr>
     2051
     2052        * bfd-in2.h (bfd_mach_m6812): Rebuild.
     2053        * archures.c (bfd_mach_m6812_default, bfd_mach_m6812,
     2054        bfd_mach_m6812s): Declare.
     2055
     2056        * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): New function.
     2057        (_bfd_m68hc12_elf_set_private_flags): Call it.
     2058        (_bfd_m68hc12_elf_print_private_bfd_data): Report processor version.
     2059        (_bfd_m68hc12_elf_merge_private_bfd_data): Merge the flags and
     2060        report microcontroller incompatibilities (HC12 vs HCS12).
     2061        (elf_backend_object_p): Update.
     2062
     20632002-11-30  Alan Modra  <amodra@bigpond.net.au>
     2064
     2065        * bfd-in.h (TRUE_FALSE_ALREADY_DEFINED, BFD_TRUE_FALSE): Delete.
     2066        (enum bfd_boolean, boolean): Delete.
     2067        (bfd_boolean): Typedef to an int.
     2068        (FALSE, TRUE): Define.
     2069        * aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c, aout-cris.c,
     2070        aout-encap.c, aout-ns32k.c, aout-target.h, aout-tic30.c, aoutf1.h,
     2071        aoutx.h, archive.c, archive64.c, archures.c, bfd-in.h, bfd.c, bfdwin.c,
     2072        binary.c, bout.c, cache.c, cisco-core.c, coff-a29k.c, coff-alpha.c,
     2073        coff-apollo.c, coff-arm.c, coff-aux.c, coff-h8300.c, coff-h8500.c,
     2074        coff-i386.c, coff-i860.c, coff-i960.c, coff-ia64.c, coff-m68k.c,
     2075        coff-m88k.c, coff-mcore.c, coff-mips.c, coff-or32.c, coff-ppc.c,
     2076        coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c, coff-tic30.c,
     2077        coff-tic4x.c, coff-tic54x.c, coff-tic80.c, coff-w65.c, coff-we32k.c,
     2078        coff-z8k.c, coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c,
     2079        corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c,
     2080        cpu-cris.c, cpu-d10v.c, cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c,
     2081        cpu-h8300.c, cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c,
     2082        cpu-i860.c, cpu-i960.c, cpu-ia64.c, cpu-ip2k.c, cpu-m10200.c,
     2083        cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c, cpu-m68hc12.c, cpu-m68k.c,
     2084        cpu-m88k.c, cpu-mcore.c, cpu-mips.c, cpu-mmix.c, cpu-ns32k.c,
     2085        cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c,
     2086        cpu-rs6000.c, cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c,
     2087        cpu-tic4x.c, cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c,
     2088        cpu-w65.c, cpu-we32k.c, cpu-xstormy16.c, cpu-z8k.c, dwarf1.c,
     2089        dwarf2.c, ecoff.c, ecofflink.c, efi-app-ia32.c, efi-app-ia64.c,
     2090        elf-bfd.h, elf-eh-frame.c, elf-hppa.h, elf-m10200.c, elf-m10300.c,
     2091        elf-strtab.c, elf.c, elf32-arc.c, elf32-arm.h, elf32-avr.c,
     2092        elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c, elf32-fr30.c,
     2093        elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c, elf32-hppa.h,
     2094        elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
     2095        elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c,
     2096        elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c,
     2097        elf32-pj.c, elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-sh64-com.c,
     2098        elf32-sh64.c, elf32-sparc.c, elf32-v850.c, elf32-vax.c,
     2099        elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c,
     2100        elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c,
     2101        elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c,
     2102        elfarm-oabi.c, elfcode.h, elfcore.h, elflink.c, elflink.h,
     2103        elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h,
     2104        elfxx-target.h, format.c, freebsd.h, genlink.h, hash.c, hp300hpux.c,
     2105        hppabsd-core.c, hpux-core.c, i386aout.c, i386linux.c, i386lynx.c,
     2106        i386mach3.c, i386msdos.c, i386os9k.c, ieee.c, ihex.c, irix-core.c,
     2107        libaout.h, libbfd-in.h, libbfd.c, libcoff-in.h, libecoff.h, libieee.h,
     2108        libnlm.h, liboasys.h, libpei.h, libxcoff.h, linker.c, lynx-core.c,
     2109        m68klinux.c, m68klynx.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c,
     2110        mmo.c, netbsd-core.c, netbsd.h, nlm.c, nlm32-alpha.c, nlm32-i386.c,
     2111        nlm32-ppc.c, nlm32-sparc.c, nlmcode.h, oasys.c, opncls.c, osf-core.c,
     2112        pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c, pe-mcore.c, pe-mips.c,
     2113        pe-sh.c, peXXigen.c, pef.c, pei-arm.c, pei-i386.c, pei-mcore.c,
     2114        pei-mips.c, pei-sh.c, peicode.h, ppcboot.c, ptrace-core.c, reloc.c,
     2115        reloc16.c, riscix.c, rs6000-core.c, sco5-core.c, section.c, simple.c,
     2116        som.c, som.h, sparclinux.c, sparclynx.c, srec.c, stabs.c, sunos.c,
     2117        syms.c, targets.c, tekhex.c, ticoff.h, trad-core.c, versados.c,
     2118        vms-gsd.c, vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h,
     2119        xcoff-target.h, xcofflink.c, xsym.c, xsym.h: Replace boolean with
     2120        bfd_boolean, true with TRUE, false with FALSE.  Simplify comparisons
     2121        of bfd_boolean vars with TRUE/FALSE.  Formatting.
     2122        * bfd-in2.h, libbfd.h, libcoff.h: Regenerate
     2123
     21242002-11-28  Alan Modra  <amodra@bigpond.net.au>
     2125
     2126        * elf-bfd.h: Replace occurrences of Elf32_Internal_* and
     2127        Elf64_Internal_* with Elf_Internal_*.  Replace Elf_Internal_Rel
     2128        with Elf_Internal_Rela.
     2129        * elf-hppa.h, elf-m10200.c, elf-m10300.c, elf32-arc.c, elf32-arm.h,
     2130        elf32-avr.c, elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c,
     2131        elf32-fr30.c, elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c,
     2132        elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c,
     2133        elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c,
     2134        elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c,
     2135        elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-v850.c, elf32-vax.c,
     2136        elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c,
     2137        elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c,
     2138        elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c, elfarm-oabi.c,
     2139        elfcode.h, elflink.h, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c: Ditto.
     2140        * elf-hppa.h (elf_hppa_internal_shdr): Delete.  Use Elf_Internal_Shdr
     2141        throughout instead.
     2142        * elf.c (_bfd_elf_no_info_to_howto_rel): Delete.
     2143        * elfcode.h (elf_swap_reloca_in): Pass source operand as a bfd_byte *.
     2144        Remove INLINE keyword.
     2145        (elf_swap_reloc_in): Likewise.  Also clear r_addend.
     2146        (elf_swap_reloc_out, elf_swap_reloca_out): Pass destination operand
     2147        as a bfd_byte *.
     2148        (elf_write_relocs): Consolidate REL and RELA code.
     2149        (elf_slurp_reloc_table_from_section): Simplify REL code.
     2150        (NAME(_bfd_elf,size_info)): Populate reloc swap entries.
     2151        * elf-bfd.h (MAX_INT_RELS_PER_EXT_REL): Define.
     2152        * elflink.h (elf_link_read_relocs_from_section): Consolidate REL and
     2153        RELA code.
     2154        (elf_link_adjust_relocs): Likewise.  Don't malloc space for temp
     2155        reloc array, use a fixed size of MAX_INT_RELS_PER_EXT_REL.
     2156        (elf_link_output_relocs): Likewise.
     2157        (elf_reloc_link_order): Likewise.
     2158        (elf_finish_pointer_linker_section): Likewise.
     2159        (struct elf_link_sort_rela): Remove union.
     2160        (elf_link_sort_cmp1): Update to suit.
     2161        (elf_link_sort_cmp2): Here too.
     2162        (elf_link_sort_relocs): Consolidate REL and RELA code.  Fix memory
     2163        over-allocation for int_rels_per_ext_rel != 1 case.
     2164        * elf32-arm.h: Update all bfd_elf32_swap_reloc_out calls.
     2165        * elf32-i386.c: Likewise.
     2166        * elf32-cris.c: Likewise for bfd_elf32_swap_reloca_out.
     2167        * elf32-hppa.c, elf32-i370.c, elf32-m68k.c, elf32-ppc.c, elf32-s390.c,
     2168        elf32-sh.c, elf32-vax.c, elfxx-mips.c: Likewise.
     2169        * elf64-alpha.c: Likewise for bfd_elf64_swap_reloca_out.
     2170        * elf64-hppa.c, elf64-mips.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c,
     2171        elf64-sparc.c, elf64-x86-64.c: Likewise.
     2172        * elfxx-ia64.c: Likewise for bfd_elfNN_swap_reloca_out.
     2173        * elfxx-mips.c (sort_dynamic_relocs): Likewise for
     2174        bfd_elf32_swap_reloc_in.
     2175
     2176        * elf32-arm.h: Update elf32_arm_info_to_howto calls.
     2177        * elf32-mips.c: Likewise for mips_info_to_howto_rel.
     2178        (mips_elf64_swap_reloc_in): Zero r_addend.
     2179        (mips_elf64_be_swap_reloc_in): Likewise.
     2180        (mips_elf64_slurp_one_reloc_table): Simplify.
     2181
     2182        * elf64-alpha.c (alpha_elf_size_info): Populate reloc swap entries.
     2183        * elf64-hppa.c (hppa64_elf_size_info): Likewise.
     2184        * elf64-sparc.c (sparc64_elf_size_info): Likewise.
     2185
     21862002-11-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
     2187
     2188        * elf32-sh.c (sh_elf_relocate_section): Don't complain about
     2189        unresolved debugging relocs in dynamic applications.
     2190        * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
     2191
     21922002-11-26  Alan Modra  <amodra@bigpond.net.au>
     2193
     2194        * elf-eh-frame.c (ENSURE_NO_RELOCS): Disregard R_*_NONE relocs.
     2195        (_bfd_elf_discard_section_eh_frame): Don't discard duplicate CIEs
     2196        on a relocatable link.  Comment typos.
     2197        * elf.c (_bfd_elf_link_hash_newfunc): Assign elements of structure
     2198        in the order they are declared.  Clear elf_hash_value too.
     2199        (_bfd_elf_link_hash_table_init): Likewise assign in order.  Clear
     2200        eh_info and tls_segment.
     2201        * elflink.h (elf_link_input_bfd <emit_relocs>): Keep reloc offsets
     2202        sorted when discarding relocs by turning them into R_*_NONE.
     2203
     2204        * libbfd.c (warn_deprecated): Comment spelling.
     2205        * po/SRC-POTFILES.in: Regenerate.
     2206
     22072002-11-21  Richard Henderson  <rth@redhat.com>
     2208
     2209        * elflink.h (elf_link_add_object_symbols): Don't overwrite the
     2210        arch's st_other bits when merging visibilities.
     2211        (elf_link_output_extsym): Tidy clearing of visibility field.
     2212
     22132002-11-21  Alan Modra  <amodra@bigpond.net.au>
     2214
     2215        * coff-mcore.c (SWAP_IN_RELOC_OFFSET): Define.
     2216        (SWAP_OUT_RELOC_OFFSET): Define.
     2217
     22182002-11-20  Alexandre Oliva  <aoliva@redhat.com>
     2219
     2220        * elf.c (_bfd_elf_link_hash_table_init): Make sure
     2221        can_refcount is properly extended to the type of
     2222        init_refcount.
     2223
     22242002-11-19  Alexandre Oliva  <aoliva@redhat.com>
     2225
     2226        * elfxx-mips.c (MIPS_RELOC_RELA_P): New macro.
     2227        (_bfd_mips_elf_relocate_section): Use it.
     2228
     2229        * elfxx-mips.c (MNAME): New macro.
     2230        (_bfd_mips_elf_check_relocs): Use it.
     2231        (_bfd_mips_elf_discard_info): Likewise.
     2232        (_bfd_mips_elf_final_link): Likewise.
     2233
     22342002-11-19  Alan Modra  <amodra@bigpond.net.au>
     2235
     2236        * elf64-ppc.c (ppc64_elf_edit_opd): When deleting relocs, adjust
     2237        rel_hdr.sh_size too.
     2238
     22392002-11-18  Klee Dienes  <kdienes@apple.com>
     2240
     2241        * Makefile.am (BFD32_LIBS): Add bfdwin.lo, bfdio.lo.
     2242        (BFD32_LIBS_CFILES): Add bfdwin.c, bfdio.c.
     2243        (BFD_H_FILES): Add bfdwin.c, bfdio.c.
     2244        (LIBBFD_H_FILES): Add bfdwin.c, bfdio.c.
     2245        Add dependencies for bfdwin.c, bfdio.c.
     2246        * bfd.c: Remove bfd_get_mtime, bfd_get_size.
     2247        * libbfd.c: Remove real_read, bfd_bread, _bfd_window_internal,
     2248        bfd_init_window, bfd_free_window, bfd_get_file_window, bfd_bwrite,
     2249        bfd_tell, bfd_flush, bfd_stat, bfd_seek.
     2250        * bfdio.c: New file.  Contains real_read, bfd_bread, bfd_write,
     2251        bfd_tell, bfd_flush, bfd_stat, bfd_seek, bfd_ge_mtime,
     2252        bfd_get_size (moved from libbfd.c and bfd.c).
     2253        * bfdwin.c New file.  Contains _bfd_window_internal,
     2254        bfd_init_window, bfd_free_window, bfd_get_file_window (moved from
     2255        libbfd.c and bfd.c).
     2256        * po/SRC-POTFILES.in: Regenerate.
     2257        * po/bfd.pot: Regenerate.
     2258        * libbfd.h: Regenerate.
     2259        * bfd-in2.h: Regenerate.
     2260        * aclocal.m4: Regenerate.
     2261        * Makefile.in: Regenerate.
     2262        * configure: Regenerate.
     2263
     22642002-11-18  Klee Dienes  <kdienes@apple.com>
     2265
     2266        * bfd.c (bfd_preserve_save): Don't zero BFD_IN_MEMORY.
     2267
     22682002-11-15  Kazu Hirata  <kazu@cs.umass.edu>
     2269
     2270        * coff-h8300.c (h8300_reloc16_estimate): Do not optimize away
     2271        jsr after a short jump.
     2272        * elf32-h8300.c (elf32_h8_relax_section): Likewise.
     2273
     22742002-11-15  Klee Dienes  <kdienes@apple.com>
     2275
     2276        * pef.c (bfd_pef_convert_architecture): Move declaration of
     2277        ARCH_POWERPC and ARCH_M68K to the start of the function.
     2278
     22792002-11-14  Svein E. Seldal  <Svein.Seldal@solidas.com>
     2280
     2281        * coff-tic4x.c (tic4x_howto_table): Formatting fixup
     2282
     22832002-11-14  Hans-Peter Nilsson  <hp@bitrange.com>
     2284
     2285        * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs):
     2286        For bpo_gregs_section->contents, allocate _raw_size, not
     2287        _cooked_size.
     2288
     22892002-11-13  Klee Dienes  <kdienes@apple.com>
     2290
     2291        * config.bfd: Add entries for powerpc-*-darwin and cousins.
     2292
     22932002-11-13  H.J. Lu <hjl@gnu.org>
     2294
     2295        * elfcode.h (elf_object_p): Don't restore abfd->arch_info.
     2296
     22972002-11-13  Klee Dienes  <kdienes@apple.com>
     2298            Alan Modra  <amodra@bigpond.net.au>
     2299
     2300        * bfd.c (struct bfd_preserve): New.
     2301        (bfd_preserve_save): New function.
     2302        (bfd_preserve_restore): Ditto.
     2303        (bfd_preserve_finish): Ditto.
     2304        * bfd-in2.h: Regenerate.
     2305        * mach-o.c: Formatting.
     2306        (bfd_mach_o_scan_read_symtab_symbol): Make "value" unsigned.
     2307        (bfd_mach_o_object_p): Use bfd_preserve_save/restore/finish.
     2308        (bfd_mach_o_core_p): Ditto.
     2309        (bfd_mach_o_scan): Pass in mdata.
     2310        * mach-o.h (bfd_mach_o_scan): Update prototype.
     2311        * pef.c: Formatting.
     2312        (bfd_pef_object_p): Use bfd_preserve_save/restore/finish.
     2313        (bfd_pef_xlib_object_p): Ditto.
     2314        (bfd_pef_scan): Pass in mdata.  Move version check to bfd_pef_object_p.
     2315        * pef.h (bfd_pef_scan): Update prototype.
     2316        * xsym.c: Formatting, K&R fixes.
     2317        (bfd_sym_object_p): Use bfd_preserve_save/restore/finish.
     2318        (bfd_sym_scan): New function split out from bfd_sym_object_p.
     2319        * xsym.h (bfd_sym_scan): Declare.
     2320        * elfcode.h (elf_object_p): Use bfd_preserve_save/restore/finish.
     2321        * elfcore.h (elf_core_file_p): Likewise.
     2322        * targets.c (_bfd_target_vector): Revert 2002-11-08 change.
     2323
     23242002-11-12  Nick Clifton  <nickc@redhat.com>
     2325
     2326        * po/da.po: Updated Danish translation.
     2327
     23282002-11-12  Alan Modra  <amodra@bigpond.net.au>
     2329
     2330        * elflink.h (elf_link_add_object_symbols): Optimize stabs for
     2331        relocatable link too.
     2332        (elf_link_input_bfd): When emitting relocs, adjust offsets for
     2333        eh_frame and stab sections.  Zap deleted relocs.
     2334        (elf_reloc_symbol_deleted_p): Return true for zero r_symndx.
     2335        (elf_bfd_discard_info): Run for relocatable link too.
     2336        * elf64-ppc.c (ppc64_elf_edit_opd): Rename from edit_opd.  Make global.
     2337        Handle ld -r case.
     2338        (ppc64_elf_size_dynamic_sections): Don't call edit_opd from here.
     2339        * elf64-ppc.h (ppc64_elf_edit_opd): Declare.
     2340
     2341        * elf-bfd.h (struct cie_header): Move from elf_eh-frame.c.
     2342        (struct cie, struct eh_cie_fde, struct eh_frame_sec_info): Likewise.
     2343        (struct eh_frame_array_ent, struct eh_frame_hdr_info): Likewise.
     2344        (enum elf_link_info_type): Remove ELF_INFO_TYPE_EH_FRAME_HDR.
     2345        (struct eh_frame_hdr_info): Add "hdr_sec", remove "split".
     2346        (struct elf_link_hash_table): Add eh_info.
     2347        (struct elf_obj_tdata): Change eh_frame_hdr to an asection *.
     2348        (_bfd_elf_discard_section_eh_frame): Update prototype.
     2349        (_bfd_elf_discard_section_eh_frame_hdr): Likewise.
     2350        (_bfd_elf_write_section_eh_frame): Likewise.
     2351        (_bfd_elf_write_section_eh_frame_hdr): Likewise.
     2352        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Remove "ehdrsec"
     2353        param.  Get "hdr_info" from link hash table.
     2354        (_bfd_elf_discard_section_eh_frame_hdr): Remove "sec" param.  Get
     2355        header section from link hash table.  Save header section to elf_tdata.
     2356        (_bfd_elf_maybe_strip_eh_frame_hdr): Remove local "sec".  Use
     2357        header section from link hash table.  Don't alloc hdr_info.  Clear
     2358        hdr_sec instead of setting "strip".
     2359        (_bfd_elf_eh_frame_section_offset): Formatting.
     2360        (_bfd_elf_write_section_eh_frame): Remove "ehdrsec", add "info" param.
     2361        Get header section from link hash table.
     2362        (_bfd_elf_write_section_eh_frame_hdr): Remove "sec", add "info" param.
     2363        Get header section from link hash table.
     2364        * elf.c (map_sections_to_segments): Use cached eh_frame_hdr.
     2365        (get_program_header_size): Likewise.
     2366        (_bfd_elf_section_offset): Formatting.
     2367        * elflink.h (elf_link_create_dynamic_sections): Stash eh frame header
     2368        section pointer in link hash table.
     2369        (elf_bfd_final_link): Adjust _bfd_elf_write_section_eh_frame_hdr
     2370        and _bfd_elf_write_section_eh_frame calls.  Update comment about
     2371        eh_frame entries.
     2372        (elf_bfd_discard_info): Adjust _bfd_elf_discard_section_eh_frame and
     2373        _bfd_elf_discard_section_eh_frame_hdr calls.  Remove "ehdr".
     2374
     2375        * po/SRC-POTFILES.in: Regenerate.
     2376
     2377        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't zero
     2378        relocs for discarded FDEs.  Remove dead code.
     2379        (_bfd_elf_write_section_eh_frame_hdr): Remove dead code.
     2380        * elflink.h (elf_bfd_discard_info): Don't save edited relocs.
     2381        Tidy conditions under which stabs are edited.  Formatting.
     2382        * elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows
     2383        from discarded relocs.
     2384        * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Add reloc output
     2385        section adjustments after testing magic values.
     2386
     23872002-11-12  Thomas Moestl <tmm@FreeBSD.org>
     2388
     2389        * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Correct
     2390        references to large plt symbols.
     2391
     23922002-11-12  Klee Dienes  <kdienes@apple.com>
     2393
     2394        * mach-o.c (bfd_mach_o_scan_read_thread): Don't re-use 'i' when
     2395        looking for an unused section name.
     2396
     23972002-11-11  Kazu Hirata  <kazu@cs.umass.edu>
     2398
     2399        * coff-h8300.c: Fix formatting.
     2400        * elf32-h8300.c: Likewise.
     2401        * reloc16.c: Likewise.
     2402
     24032002-11-09  Jeroen Dobbelaere  <jeroen.dobbelaere@acunia.com>
     2404
     2405        * elf32-arm.h (elf32_arm_size_dynamic_sections): Don't strip output
     2406        section when dynamic section unused;  _bfd_strip_section_from_output
     2407        instead.
     2408
     24092002-11-08  Alan Modra  <amodra@bigpond.net.au>
     2410
     2411        * targets.c (_bfd_target_vector): Disable pef_vec, pef_xlib_vec
     2412        and sym_vec.
     2413
     2414        * dwarf2.c: Revert last change.
     2415
     24162002-11-07  Michal Ludvig  <mludvig@suse.cz>
     2417
     2418        * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info,
     2419        _bfd_dwarf2_find_nearest_line): Use
     2420        bfd_simple_get_relocated_section_contents() instead of
     2421        bfd_get_section_contents().
     2422        * reloc.c (bfd_perform_relocation): Add sanity check.
     2423        * simple.c (simple_get_relocated_section_contents): If the section
     2424        does not have any relocs associated with it, just return the
     2425        unadjusted contents.
     2426
     24272002-11-07  Hans-Peter Nilsson  <hp@axis.com>
     2428
     2429        * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_16_GOT,
     2430        case R_CRIS_32_GOT>: Correct test for filling in constant .got
     2431        contents, enabling for a non-DSO, for symbols defined in the
     2432        program with --export-dynamic.
     2433
     24342002-11-07  Alan Modra  <amodra@bigpond.net.au>
     2435
     2436        * elf64-ppc.c: Comment typo fixes.
     2437        (ppc64_elf_merge_private_bfd_data): Allow BFD_ENDIAN_UNKNOWN input.
     2438
     24392002-11-07  Nick Clifton  <nickc@redhat.com>
     2440
     2441        * po/da.po: Updated Danish translation.
     2442
     24432002-11-06  Alexandre Oliva  <aoliva@redhat.com>
     2444
     2445        * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Generate
     2446        exactly three internal relocs per external reloc.  Set reloc_count
     2447        to the external reloc count.
     2448
     24492002-11-06  Klee Dienes  <kdienes@apple.com>
     2450
     2451         * coff-stgo32.c (stub_bytes): Mark as const.
     2452         Fix comment formatting.
     2453
     24542002-11-06  Klee Dienes  <kdienes@apple.com>
     2455
     2456        * Makefile.am (BFD32_BACKENDS): Add mach-o.lo, pef.lo, and
     2457        xsym.lo.
     2458        (BFD32_BACKENDS_CFILES): Add mach-o.c, pef.c, and xsym.c.
     2459        (SOURCE_HFILES): Add mach-o.h, pef.h, pef-traceback.h, xsym.h
     2460        * archures.c (enum bfd_architecture): Add bfd_arch_m98k.
     2461        * bfd.c (struct bfd): Add private data for mach-o, pef, and sym.
     2462        * targets.c (enum bfd_flavour): Add flavours for mach-o, pef, and
     2463        sym.
     2464        (_bfd_target_vector): Add target vectors for mach-o, pef, and sym.
     2465        * Makefile.in: Regenerate.
     2466        * doc/Makefile.in: Regenerate.
     2467        * bfd-in2.h: Regenerate.
     2468        * xsym.c: New file.  Contains support for the Apple/Metrowerks
     2469        xSYM debugging format.
     2470        * xsym.h: New file.
     2471        * pef.c: New file.  Contains support for the Apple Code Fragment
     2472        Manager Preferred Executable Format
     2473        * pef.h: New file.
     2474        * pef-traceback.h: New file.  Contains support for parsing PowerPC
     2475        traceback tables as used by PEF executables (and perhaps other
     2476        systems as well).
     2477        * mach-o.c: New file.  Contains support for the Mach-O object file
     2478        format.
     2479        * mach-o.h: New file.
     2480        * mach-o-target.c: New file.  Declares the mach-o targets
     2481        themselves.  Included three times by mach-o.c; each time with a
     2482        different set of macros set.
     2483
     24842002-11-06  Graeme Peterson  <gp@qnx.com>
     2485
     2486        * Makefile.am: Remove entries for elf32-qnx.[ch].
     2487        * Makefile.in: Regenerate.
     2488        * config.bfd: Change arm-nto to use bfd_elf32_{big|little}arm_vec,
     2489        ppc-nto to use bfd_elf32_powerpc{le}_vec, sh-nto to use
     2490        bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec.
     2491        * configure.in: Remove support for bfd_elf32_sh{l}qnx_vec,
     2492        bfd_elf32_powerpc{le}qnx_vec, bfd_elf32_{big|little}armqnx_vec,
     2493        and bfd_elf32_i386qnx_vec, and removed elf32-qnx.lo from other targets.
     2494        bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec.
     2495        * configure: Regenerate.
     2496        * elf32-qnx.c: Remove.
     2497        * elf32-qnx.h: Remove.
     2498        * elf.c: Remove calls to QNX specific set_nonloadable_filepos,
     2499        is_contained_by_filepos, and copy_private_bfd_data_p.
     2500        * elf-bfd.h (struct elf_backend_data): Remove set_nonloadable_filepos,
     2501        is_contained_by_filepos, and copy_private_bfd_data_p.
     2502        * elf32-i386.c: Remove QNX extended bfd support.
     2503        * elf32-ppc.c: Remove QNX extended bfd support.
     2504        * elf32-sh.c: Remove QNX extended bfd support.
     2505        * elfarm-nabi.c: Remove QNX extended bfd support.
     2506        * targets.c: Remove qnx vectors.
     2507        * elfxx-target.h (elf_backend_set_nonloadable_filepos): Remove
     2508        (elf_backend_is_contained_by_filepos): Remove.
     2509        (elf_backend_copy_private_bfd_data_p): Remove.
     2510        * po/SRC-POTFILES.in: Regenerate.
     2511
     25122002-11-06  David O'Brien  <obrien@FreeBSD.org>
     2513            Alan Modra  <amodra@bigpond.net.au>
     2514
     2515        * elf64-sparc.c (sparc64_elf_relocate_section): Adjust addend of
     2516        dynamic relocs against section symbols for the output section vma.
     2517
     25182002-11-05  Alan Modra  <amodra@bigpond.net.au>
     2519
     2520        * elf32-arm.h (t2a1_push_insn, t2a2_ldr_insn, t2a3_mov_insn,
     2521        t2a4_bx_insn, t2a5_pop_insn, t2a6_bx_insn): Remove.
     2522
     25232002-11-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
     2524            Alan Modra  <amodra@bigpond.net.au>
     2525
     2526        * config.bfd (sh-*-linux*): Use bfd_elf*_sh64*lin_vec as sh64
     2527        vectors in target_selvecs.
     2528        (shle-*-netbsdelf*): Use bfd_elf*_sh64*nbsd_vec as sh64 vectors
     2529        in target_selvecs.
     2530        (sh-*-netbsdelf*): Likewise.
     2531        * configure.in (assocvecs): New variable.  Handle assocvecs like
     2532        selvecs.
     2533        * configure: Regenerate.
     2534        * format.c (bfd_check_format_matches): Store bfd_target pointers
     2535        in matching_vector instead of target names.  Select first target
     2536        from bfd_associated_vector that matches a list of ambiguous targets.
     2537        * targets.c (_bfd_associated_vector): New array.
     2538        (bfd_associated_vector): New variable.
     2539        (_bfd_target_vector): Add bfd_elf*_sh64*lin_vec.
     2540        * libbfd-in.h (bfd_associated_vector): Declare.
     2541        * libbfd.h: Regenerate.
     2542
     25432002-11-05  Elias Athanasopoulos  <eathan@otenet.gr>
     2544
     2545        * vms-gsd.c (_bfd_vms_write_gsd): Check that symbol->udata.p is
     2546        non-NULL before dereferencing.
     2547
     25482002-11-04  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
     2549
     2550        * vms.c (vms_object_p): Restore the start address when returning
     2551        NULL.
     2552
     25532002-11-04  Alan Modra  <amodra@bigpond.net.au>
     2554            Hans-Peter Nilsson  <hp@axis.com>
     2555
     2556        * elflink.h (struct elf_final_link_info): Add shndxbuf_size.
     2557        (elf_bfd_final_link): Don't bother zeroing symtab_hdr fields.
     2558        Set up a larger symshndxbuf, and write it out.  Free it on
     2559        exit rather than freeing symbuf twice.  Correct section index
     2560        on output section symbol loop.
     2561        (elf_link_output_sym): Accumulate symbol extension section
     2562        indices, reallocating symshndxbuf rather than writing it out.
     2563        (elf_link_flush_output_syms): Don't flush symshndxbuf.
     2564        * elf.c (assign_section_numbers): Init i_shdrp to all zero.
     2565        Use bfd_zalloc to clear i_shdrp[0] too.
     2566
     25672002-11-03  Stephen Clarke <stephen.clarke@earthling.net>
     2568
     2569         * elf32-sh64-com.c (sh64_address_in_cranges): Use
     2570        _raw_size of cranges section if _cooked_size not yet set.
     2571
     25722002-11-03  Hans-Peter Nilsson  <hp@axis.com>
     2573
     2574        * elf32-v850.c (v850_elf_relax_delete_bytes): Correct parameters
     2575        for bfd_elf32_swap_symbol_out.
     2576
     25772002-10-31  David O'Brien  <obrien@FreeBSD.org>
     2578
     2579        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't mix
     2580        signed and unsigned in comparison.
     2581
     25822002-10-30  Daniel Jacobowitz  <drow@mvista.com>
     2583
     2584        * coffcode.h: Remove extraneous '\'.
     2585
     25862002-10-28  H.J. Lu <hjl@gnu.org>
     2587
     2588        * Makefile.am (targets.lo): Depend on Makefile instead of
     2589        config.status.
     2590        (archures.lo): Likewise.
     2591        * Makefile.in: Regenerated.
     2592
     25932002-10-25  Jason Thorpe  <thorpej@wasabisystems.com>
     2594
     2595        * config.bfd (mips*el-*-netbsd*, mips*-*-netbsd*): Add
     2596        bfd_elf64_bigmips_vec and bfd_elf64_littlemips_vec to
     2597        targ_selvecs.
     2598
     25992002-10-25  Jim Wilson  <wilson@redhat.com>
     2600
     2601        * elf64-sh64.c (sh_elf64_relocate_section): Call
     2602        _bfd_elf_rela_local_sym.  Handle relocs against STT_SECTION symbol
     2603        of SHF_MERGE section.
     2604
     26052002-10-25  Hans-Peter Nilsson  <hp@axis.com>
     2606
     2607        * simple.c: Correct placement of ATTRIBUTE_UNUSED.
     2608
     26092002-10-24  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     2610
     2611        * aoutx.h (NAME(aout,swap_ext_reloc_in)): Cast bytes->r_index to
     2612        unsigned int.  Cast RELOC_BASE10, RELOC_BASE13 and RELOC_BASE22 to
     2613        unsigned int.
     2614        (NAME(aout,final_link)): Cast enum used in assignment.
     2615        (aout_link_write_symbols): Cast enums in comparisons, int values to
     2616        boolean, enums in assignments to int.
     2617        (aout_link_input_section_std): Cast rel->r_index to unsigned int.
     2618        (aout_link_input_section_ext): Likewise.  Cast enums used in comparisons
     2619        with unsigned ints.
     2620        (aout_link_reloc_link_order): Cast enum to int in assignment.
     2621        * archive.c (_bfd_generic_read_ar_hdr_mag): Cast result of memchr
     2622        calls to char *.
     2623        * bfd-in.h (bfd_set_section_vma): Cast enum true to unsigned int in
     2624        assignment.
     2625        * bfd-in2.h (bfd_set_section_vma): Likewise.
     2626        * bfd.c (bfd_record_phdr): Cast enums in assignments.
     2627        * binary.c (bfd_alloc): Cast enum to long.
     2628        * coffgen.c (_bfd_coff_is_local_label_name): Cast return to boolean.
     2629        * dwarf2.c (read_abbrevs): Add casts to enum types.
     2630        (read_attribute_value): Likewise.
     2631        (arange_add): Cast result of bfd_zalloc call.
     2632        (comp_unit_contains_address): Return true and false.
     2633        (comp_unit_find_nearest_line): Cast return to boolean.
     2634        * format.c (bfd_check_format_matches, bfd_set_format): Likewise.
     2635        * gen-aout.c: define macro '_' if not defined.
     2636        * libbfd.c (bfd_realloc): Cast malloc and realloc to PTR.
     2637        (bfd_bwrite): Cast bfd_realloc to bfd_byte *.
     2638        (bfd_write_bigendian_4byte_int): Cast return to boolean.
     2639        (bfd_seek): Cast bfd_realloc to bfd_byte *.
     2640        (bfd_generic_is_local_label_name): Cast return to boolean.
     2641        * libcoff.h (_bfd_coff_adjust_symndx): Remove extraneous '\'.
     2642        * linker.c (_bfd_link_hash_newfunc): Cast bfd_hash_allocate result to
     2643        struct bfd_hash_entry *.
     2644        (_bfd_generic_link_hash_newfunc): likewise.
     2645        (_bfd_generic_final_link): Cast enum to unsigned int.
     2646        * merge.c (sec_merge_emit): Cast return to boolean.
     2647        (merge_strings): Add casts to const unsigned char *.
     2648        * reloc.c (bfd_get_reloc_code_name): Cast enums in comparison to int.
     2649        (bfd_generic_get_relocated_section_content): Cast enum to unsigned int.
     2650        * section.c (bfd_section_hash_newfunc): Cast bfd_hash_allocate result to
     2651        struct bfd_hash_entry *.
     2652        (bfd_set_section_content): Add cast to PTR in comparison.
     2653        * simple.c (simple_dummy_warning, simple_dummy_undefined_symbol,
     2654        simple_dummy_reloc_overflow, simple_dummy_reloc_dangerous,
     2655        simple_dummy_unattached_reloc,
     2656        bfd_simple_get_relocated_section_contents): Add K&R declarations and
     2657        function definitions.
     2658        * srec.c (S3Forced): Initialize to false.
     2659        (srec_get_symtab): Cast return value from bfd_alloc to asymbol *.
     2660        * stabs.c (_bfd_link_section_stabs): Cast enum to int in comparisons.
     2661        (_bfd_discard_section_stabs): Likewise.  Also cast return to boolean.
     2662        * syms.c (bfd_is_undefined_symclass): Cast return to boolean.
     2663        (_bfd_stab_section_find_nearest_line): Cast enum to bfd_byte in
     2664        comparisons.
     2665
     26662002-10-23  Jakub Jelinek  <jakub@redhat.com>
     2667
     2668        * elf64-alpha.c (elf64_alpha_check_relocs): Only put maybe_dynamic
     2669        relocs into shared lib non-allocated reloc sections.
     2670
     26712002-10-23  Nathan Tallent  <eraxxon@alumni.rice.edu>
     2672
     2673        * dwarf2.c (add_line_info): Ensure that the line_info_table is
     2674        sorted even when given an out-of-order line sequence.
     2675        (lookup_address_in_line_info_table): When an exact VMA match is
     2676        not found, return line information with the closest VMA.
     2677
     26782002-10-23 Ross Alexander <ross.alexander@uk.neceur.com>
     2679
     2680        * elf64-hppa.c: Force DT_FLAGS to always be set.  Required by
     2681        HPUX 11.00 patch PHSS_26559.
     2682
     26832002-10-22  Alexandre Oliva  <aoliva@redhat.com>
     2684
     2685        * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Don't move
     2686        the options section into a separate section unless IRIX 6
     2687        compatibility is enabled.
     2688
     26892002-10-22  Alexandre Oliva  <aoliva@redhat.com>
     2690
     2691        * elflink.h (struct elf_link_sort_rela): Turn rel and rela
     2692        into arrays.
     2693        (elf_link_sort_cmp1, elf_link_sort_cmp2): Adjust.
     2694        (elf_link_sort_relocs): Likewise.  Take int_rels_per_ext_rel
     2695        into account.
     2696        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Compose
     2697        R_MIPS_REL32 with R_MIPS64 if ABI_64_P.
     2698
     26992002-10-21  Graeme Peterson  <gp@qnx.com>
     2700
     2701        * targets.c (_bfd_target_vector): Add missing qnx vectors.
     2702
     27032002-10-21  Alan Modra  <amodra@bigpond.net.au>
     2704
     2705        * targets.c (bfd_target_list): Don't return the default target twice.
     2706
     27072002-10-21  Elias Athanasopoulos  <eathan@otenet.gr>
     2708
     2709        * archive.c (_bfd_archive_bsd_update_armap_timestamp): Replace
     2710        perror with bfd_perror.
     2711
     27122002-10-19  H.J. Lu <hjl@gnu.org>
     2713
     2714        * elflink.h (elf_link_add_object_symbols): Correctly handle
     2715        DT_RPATH and DT_RUNPATH.
     2716
     27172002-10-19  Mark Kettenis  <kettenis@gnu.org>
     2718
     2719        * elf.c (elfcore_grok_note): Fix recognition on NT_PRXFPREG notes.
     2720
     27212002-10-17  Denis Chertykov  <denisc@overta.ru>
     2722
     2723        * elf32-ip2k.c (ELF_MACHINE_ALT1): Define alternate machine code
     2724        for ip2k port.
     2725
     27262002-10-17  Alan Modra  <amodra@bigpond.net.au>
     2727
     2728        * elfxx-target.h (USE_REL): Don't define as 1.
     2729        * elf32-arm.h (USE_REL): Provide a default define of 0.
     2730        Use #if rather than #ifdef when testing USE_REL.
     2731        * elf32-m32r.c: Likewise.
     2732
     2733        * elf32-arc.c (USE_REL): Define as 1.
     2734        * elf32-d10v.c (USE_REL): Likewise.
     2735        * elf32-m32r.c (USE_REL): Likewise.
     2736        * elf32-m68hc11.c (USE_REL): Likewise.
     2737        * elf32-m68hc12.c (USE_REL): Likewise.
     2738        * elf32-or32.c (USE_REL): Likewise.
     2739        * elfarm-nabi.c (USE_REL): Likewise.
     2740
     27412002-10-16  Jakub Jelinek  <jakub@redhat.com>
     2742
     2743        * config.bfd (s390-*-linux*): Add targ64_selvecs.
     2744        (s390x-*-linux*): Add targ_selvecs.
     2745
     27462002-10-16  Alan Modra  <amodra@bigpond.net.au>
     2747
     2748        * Makefile.am (BFD32_BACKENDS): Remove elfarmqnx-nabi.lo,
     2749        elf32-i386-fbsd.lo, elf32-i386qnx.lo, elf32-ppcqnx.lo,
     2750        elf32-sh-lin.lo, elf32-sh64-lin.lo, elf32-sh-nbsd.lo,
     2751        elf32-sh64-nbsd.lo, elf32-shqnx.lo.  Add elf32-qnx.lo.
     2752        (BFD32_BACKENDS_CFILES): Likewise for corresponding C files.
     2753        (BFD64_BACKENDS): Remove elf64-sh64-lin.lo, elf64-sh64-nbsd.lo.
     2754        (BFD64_BACKENDS_CFILES): Likewise for corresponding C files.
     2755        (SOURCE_HFILES): Add elf32-qnx.h.
     2756        (BUILD_HFILES): Add bfdver.h.
     2757        Run "make dep-am".
     2758        * Makefile.in: Regenerate.
     2759        * configure.in Update bfd vector dependencies.
     2760        * configure: Regenerate.
     2761        * elf32-i386-fbsd.c: Delete.  Move code to elf32-i386.c.
     2762        * elf32-i386qnx.c: Likewise.
     2763        * elf32-ppcqnx.c: Delete.  Move code to elf32-ppc.c.
     2764        * elf32-sh-nbsd.c: Delete.  Move code to elf32-sh.c.
     2765        * elf32-sh-lin.c: Likewise.
     2766        * elf32-shqnx.c: Likewise.
     2767        * elf32-sh64-lin.c: Delete.  Move code to elf32-sh64.c.
     2768        * elf32-sh64-nbsd.c: Likewise.
     2769        * elf64-sh64-lin.c: Delete.  Move code to elf64-sh64.c.
     2770        * elf64-sh64-nbsd.c: Likewise.
     2771        * elfarmqnx-nabi.c: Delete.  Move code to elfarm-nabi.c.
     2772        * elf32-arm.h (ELF_MAXPAGESIZE): Always define.
     2773        * elf32-i386.c: Remove ELF_ARCH and ELF32_I386_C_INCLUDED tests.
     2774        * elf32-ppc.c: Remove ELF32_PPC_C_INCLUDED tests.
     2775        * elf32-qnx.h (elf_backend_set_nonloadable_filepos): Always define.
     2776        (elf_backend_is_contained_by_filepos): Likewise.
     2777        (elf_backend_copy_private_bfd_data_p): Likewise.
     2778        Globalize and move functions to..
     2779        * elf32-qnx.c: ..here.  New file.
     2780        * elf32-sh.c: Remove ELF_ARCH and ELF32_SH_C_INCLUDED tests.  Don't
     2781        emit target vectors when INCLUDE_SHMEDIA.
     2782        * elf32-sh64.c: Remove ELF_ARCH test.  Move TARGET_* etc. defines to
     2783        end of file.
     2784        * elf64-sh64.c: Remove ELF_ARCH test.
     2785        * elfarm-nabi.c: Remove ELFARM_NABI_C_INCLUDED test.
     2786        * po/BLD-POTFILES.in: Regenerate.
     2787        * po/SRC-POTFILES.in: Regenerate.
     2788
     27892002-10-16  Alan Modra  <amodra@bigpond.net.au>
     2790
     2791        * elflink.h (elf_link_add_object_symbols): Error out on dynamic objects
     2792        loaded with --just-symbols.
     2793
     2794        * elf32-i386qnx.c (TARGET_LITTLE_NAME): Define.
     2795        * elf32-ppcqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define.
     2796        * elf32-shqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define.
     2797        * elfarmqnx-nabi.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define.
     2798
     27992002-10-15  Richard Henderson  <rth@redhat.com>
     2800
     2801        * Makefile.am (BFD64_BACKENDS): Remove elf64-alpha-fbsd.
     2802        (BFD64_BACKENDS_CFILES): Likewise.
     2803        * configure.in (bfd_elf64_alpha_freebsd_vec): Use elf64-alpha.
     2804        * elf64-alpha-fbsd.c: Remove file, move code ...
     2805        * elf64-alpha.c: ... here.
     2806        * Makefile.in, configure: Rebuild.
     2807
     28082002-10-14  Richard Henderson  <rth@redhat.com>
     2809
     2810        * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: Increment
     2811        VALUE, not ADDEND.
     2812
     28132002-10-14  Stephen Clarke <stephen.clarke@superh.com>
     2814
     2815        * elf32-sh.c (elf_sh_link_hash_entry): Replace
     2816        datalabel_got_offset with union of datalabel_got
     2817        offset and refcount.
     2818        (sh_elf_link_hash_newfunc): Initialize datalabel_got.refcount.
     2819        (allocate_dynrelocs): Delete unnecessary code for
     2820        STT_DATALABEL type.  Create entry in got for
     2821        datalabel version of symbol if datalabel_got.refcount > 0.
     2822        (sh_elf_relocate_section): Use datalabel_got union.
     2823        (sh_elf_gc_sweep_hook): Pull common code to initialize
     2824        h and eh out of switch statement.  Declare seen_stt_datalabel.
     2825        Initialize it.  Decrement datalabel_got.refcount for
     2826        got relocs when seen_stt_datalabel is true.
     2827        Decrement local_got_refcounts entry for datalabel got relocs
     2828        of local symbols.
     2829        (sh_elf_copy_indirect_symbol): Copy datalabel_got field over.
     2830        (sh_elf_check_relocs): Declare seen_stt_datalabel.
     2831        Initialize it.  When seen_stt_datalabel is true, increment
     2832        datalabel_got refcount rather than got.refcount.
     2833        (sh_elf_finish_dynamic_symbol): Create relocs to
     2834        initialize got entry for datalabel version of symbol.
     2835
     28362002-10-14  Alan Modra  <amodra@bigpond.net.au>
     2837
     2838        * Makefile.am: Run "make dep-am".
     2839        (BFD_H_FILES): Remove version.h.
     2840        * bfd-in.h (BFD_VERSION, BFD_VERSION_DATE, BFD_VERSION_STRING): Move..
     2841        * version.h: ..to here.
     2842        * configure.in (bfd_version_date): Remove.
     2843        (AC_OUTPUT): Make bfdver.h from version.h.
     2844        * bfd.c: #include "bfdver.h".
     2845        * vms-hdr.c: Likewise.
     2846        * Makefile.in: Regenerate.
     2847        * bfd-in2.h: Regenerate.
     2848        * configure: Regenerate.
     2849        * po/SRC-POTFILES.in: Regenerate.
     2850
     28512002-10-14  Alan Modra  <amodra@bigpond.net.au>
     2852
     2853        * archures.c (bfd_mach_i386_i386, bfd_mach_i386_i8086,
     2854        bfd_mach_i386_i386_intel_syntax, bfd_mach_x86_64,
     2855        bfd_mach_x86_64_intel_syntax bfd_mach_ppc, bfd_mach_ppc64,
     2856        bfd_mach_rs6k, bfd_mach_d10v, bfd_mach_sh, bfd_mach_v850,
     2857        bfd_mach_arc_5, bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8,
     2858        bfd_mach_m32r, bfd_mach_frv, bfd_mach_frvsimple,
     2859        bfd_mach_ia64_elf64, bfd_mach_ia64_elf32,
     2860        bfd_mach_ip2022, bfd_mach_ip2022ext,
     2861        bfd_mach_s390_31, bfd_mach_s390_64, bfd_mach_xstormy16): Renumber.
     2862        * bfd-in2.h: Regenerate.
     2863
     28642002-10-14  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
     2865
     2866        * config.bfd (sh*eb-*-linux*, sh*-*-linux*): Add the alternative
     2867        endian vector to targ_selvecs.
     2868
     28692002-10-13  Alexandre Oliva  <aoliva@redhat.com>
     2870
     2871        * elfxx-mips.c (mips_elf_calculate_relocation): Take
     2872        save_addend argument.  Don't apply the 32-bit mask to a
     2873        GPREL32 value if it's to be used in another relocation.  Don't
     2874        use forced-check computation of local_p to decide whether to
     2875        add gp0 to GPREL16 value.  Don't use only the lowest 16 bits
     2876        of the addend of a non-in-place GPREL16 relocation.
     2877        (_bfd_mips_elf_relocate_section): Pass use_saved_addend_p to
     2878        mips_elf_calculate_relocation().
     2879
     28802002-10-12  Stephane Carrez  <stcarrez@nerim.fr>
     2881
     2882        * elf32-m68hc11.c (m68hc11_elf_relax_section): Don't treat relocs
     2883        with symbols in other sections if we relaxed something;  the sections
     2884        output offsets must be re-computed before.
     2885
     28862002-10-12  Stephane Carrez  <stcarrez@nerim.fr>
     2887
     2888        * elf32-m68hc11.c (m68hc11_elf_relax_section): Update symbols
     2889        handling to use Elf_Internal_Sym.
     2890        (m68hc11_elf_relax_delete_bytes): Likewise.
     2891
     28922002-10-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
     2893
     2894        * elf32-sh.c (sh_elf_optimized_tls_reloc, sh_elf_mkobject,
     2895        sh_elf_object_p, dtpoff_base): New functions.
     2896        (sh_elf_howto_table): Add TLS relocs.
     2897        (sh_reloc_map): Likewise.
     2898        (sh_elf_info_to_howto): Support TLS relocs.
     2899        (elf_sh_link_hash_entry): Add tls_type and tls_tpoff32.
     2900        (sh_elf_hash_entry, sh_elf_tdata, sh_elf_local_got_tls_type):
     2901        New macros.
     2902        (sh_elf_obj_tdata): New.
     2903        (elf_sh_link_hash_table): Add tls_ldm_got.
     2904        (sh_elf_link_hash_table_create): Clear refcount of tls_ldm_got.
     2905        (allocate_dynrelocs): Support TLS relocs.
     2906        (sh_elf_size_dynamic_sections): Likewise.
     2907        (sh_elf_relocate_section): Support TLS relocs.  Don't try to find
     2908        .rela.got section when found already.  Return false after printing
     2909        error about unresolvable relocation.
     2910        (sh_elf_gc_sweep_hook): Support TLS relocs.
     2911        (sh_elf_check_relocs): Likewise.
     2912        (sh_elf_finish_dynamic_symbol): Likewise.
     2913        (bfd_elf32_mkobject, elf_backend_object_p): Define for TLS case.
     2914        * reloc.c: Add SH TLS relocs.
     2915        * bfd-in2.h, libbfd.h: Regenerate.
     2916
     29172002-10-11  Daniel Jacobowitz  <drow@mvista.com>
     2918
     2919        * Makefile.in: Regenerated.
     2920
     29212002-10-11  Daniel Jacobowitz  <drow@mvista.com>
     2922
     2923        * Makefile.am: Run dep-am.
     2924        (BFD_H_DEP): Add simple.c and linker.c.
     2925        (BFD32_LIBS): Add simple.lo.
     2926        (BFD32_LIBS_CFILES): Add simple.c.
     2927        * Makefile.in: Regenerated.
     2928        * bfd-in2.h: Regenerated.
     2929        * simple.c: New file.
     2930
     29312002-10-11  Alan Modra  <amodra@bigpond.net.au>
     2932
     2933        * coff-arm.c (record_arm_to_thumb_glue): Avoid type-punned pointers.
     2934        (record_thumb_to_arm_glue): Likewise.
     2935        * ecoff.c (ecoff_link_add_externals): Likewise.
     2936        * elf32-arm.h (record_arm_to_thumb_glue): Likewise.
     2937        (record_thumb_to_arm_glue): Likewise.
     2938        * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise.
     2939        * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise.
     2940        * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
     2941        * elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise.
     2942        * elf64-ppc.c (func_desc_adjust): Likewise.
     2943        * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
     2944        (sh64_elf64_create_dynamic_sections): Likewise.
     2945        * elflink.c (_bfd_elf_create_got_section): Likewise.
     2946        (_bfd_elf_create_dynamic_sections): Likewise.
     2947        (_bfd_elf_create_linker_section): Likewise.
     2948        * elflink.h (elf_add_default_symbol): Likewise.
     2949        (elf_link_create_dynamic_sections): Likewise.
     2950        (NAME(bfd_elf,size_dynamic_sections)): Likewise.
     2951        * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Likewise.
     2952        * elfxx-mips.c (mips_elf_create_got_section): Likewise.
     2953        (_bfd_mips_elf_add_symbol_hook): Likewise.
     2954        (_bfd_mips_elf_create_dynamic_sections): Likewise.
     2955        * linker.c (generic_link_add_symbol_list): Likewise.
     2956        * xcofflink.c (xcoff_link_add_symbols): Likewise.
     2957
     2958        * elfxx-ia64.c (oor_brl, oor_ip): Conditionally define.
     2959
     2960        * elf64-ppc.c (edit_opd): Only zero opd syms when function is
     2961        completely removed.  Correct local sym adjustment.
     2962
     29632002-10-10  Stephen Clarke <stephen.clarke@superh.com>
     2964
     2965        * elf32-sh.c (elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le):
     2966        Correct mistake in calculation of address of .got.
     2967        * elf64-sh64.c (elf_sh64_pic_plt_entry_be,
     2968        elf_sh64_pic_plt_entry_le): Likewise.
     2969
     29702002-10-09  Richard Shann <richard.shann@superh.com>
     2971            Stephen Clarke <stephen.clarke@superh.com>
     2972
     2973        * Makefile.am: Add entries for elf32-sh64-lin.c and
     2974        elf64-sh64-lin.c. Regenerate.
     2975        * Makefile.in: Regenerate.
     2976        * config.bfd:  Change sh64eb-*-linux* and sh64-*-linux*
     2977        to use sh64 vectors rather than sh vectors.
     2978        * configure.in: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec,
     2979        bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec.
     2980        * configure: Regenerate.
     2981        * elf32-sh64-lin.c: New file.
     2982        * elf64-sh64-lin.c: New file.
     2983        * targets.c: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec,
     2984        bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec.
     2985
     29862002-10-08  H.J. Lu <hjl@gnu.org>
     2987
     2988        * elf32-i386.c (elf_i386_relocate_section): Re-arrange the
     2989        IE->LE transition for R_386_TLS_IE.
     2990
     29912002-10-08  Alan Modra  <amodra@bigpond.net.au>
     2992
     2993        * elf64-ppc.c (edit_opd): Correct test for discarded sections.
     2994
     29952002-10-07  Mark Elbrecht  <snowball3@softhome.net>
     2996
     2997        * cofflink.c (mark_relocs): Don't mark relocations in excluded
     2998        sections.
     2999
     30002002-10-07  Alan Modra  <amodra@bigpond.net.au>
     3001
     3002        * elflink.h (elf_link_input_bfd): Remove BFD_VERSION_DATE dependent
     3003        code.
     3004
     3005        * elf64-ppc.c (ppc64_elf_build_stubs): Increment .glink indx.
     3006
     30072002-10-06  Alan Modra  <amodra@bigpond.net.au>
     3008
     3009        * opncls.c: Formatting.
     3010        (_bfd_new_bfd): Use a smaller section hash table.
     3011
     30122002-10-05  Alexandre Oliva  <aoliva@redhat.com>
     3013
     3014        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Set the type
     3015        of the other two relocations packed with a REL32 to NONE.
     3016
     30172002-10-02  Stephen Clarke <stephen.clarke@superh.com>
     3018
     3019        * elf32-sh.c (elf_sh_link_hash_entry): Add gotplt_refcount.
     3020        (sh_elf_link_hash_newfunc): Initialize it.
     3021        (allocate_dynrelocs): Transfer gotplt refs from plt.refcount
     3022        to got.refcount for symbols that are forced local or when
     3023        we have direct got refs.
     3024        (sh_elf_gc_sweep_hook): Adjust gotplt_refcount.  Use it
     3025        to correctly adjust got.refcount and plt.refcount.
     3026        (sh_elf_copy_indirect_symbol): Copy gotplt_refcount across.
     3027        (sh_elf_check_relocs): Increment gotplt_refcount.
     3028
     30292002-10-01  Jakub Jelinek  <jakub@redhat.com>
     3030
     3031        * elf32-i386.c (elf_i386_relocate_section): Fix
     3032        movl foo@indntpoff, %eax IE->LE transition.
     3033
     30342002-10-01  Jakub Jelinek  <jakub@redhat.com>
     3035
     3036        * elf64-x86-64.c (elf64_x86_64_relocate_section): Change TLSGD
     3037        sequence and its transitions.
     3038
     30392002-10-01  Jakub Jelinek  <jakub@redhat.com>
     3040
     3041        * elf32-i386.c (elf_i386_relocate_section): Resolve R_386_TLS_LDO_32
     3042        to st_value + addend in non-code sections.
     3043        * elf64-x86-64.c (elf64_x86_64_relocate_section): Resolve
     3044        R_X86_64_DTPOFF32 to st_value + addend in non-code sections.
     3045
     30462002-09-30  Gavin Romig-Koch  <gavin@redhat.com>
     3047            Ken Raeburn  <raeburn@cygnus.com>
     3048            Aldy Hernandez  <aldyh@redhat.com>
     3049            Eric Christopher  <echristo@redhat.com>
     3050            Richard Sandiford  <rsandifo@redhat.com>
     3051
     3052        * archures.c (bfd_mach_mips4120, bfd_mach_mips5400): New.
     3053        (bfd_mach_mips5500): New.
     3054        * cpu-mips.c (I_mips4120, I_mips5400, I_mips5500): New.
     3055        (arch_info_struct): Add corresponding entries here.
     3056        * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_4120,
     3057        E_MIPS_MACH_5400 and E_MIPS_MACH_5500.
     3058        (_bfd_mips_elf_final_write_processing): Handle bfd_mach_mips4120,
     3059        bfd_mach_mips5400 and bfd_mach_mips5500.
     3060        (_bfd_mips_elf_mach_extends_p): New function.
     3061        (_bfd_mips_elf_merge_private_bfd_data): Use it to help merge
     3062        the EF_MIPS_MACH flags.
     3063        * bfd-in2.h: Regenerate.
     3064
     30652002-09-28  Jason Thorpe  <thorpej@wasabisystems.com>
     3066
     3067        * elf32-vax.c (elf_vax_size_dynamic_section): Don't strip
     3068        .got sections.
     3069
     30702002-09-28  Alan Modra  <amodra@bigpond.net.au>
     3071
     3072        * elf.c (map_sections_to_segments): Correct test for start of
     3073        writable section in the same page as end of read-only section.
     3074
     30752002-09-27  Matt Thomas  <matt@3am-software.com>
     3076
     3077        * elf32-vax.c (elf_vax_check_relocs): Remove unused
     3078        local_got_refcounts usage.  Remove allocation of got slot.
     3079        (elf_vax_gc_sweep_hook): Remove unused local_got_refcounts usage.
     3080        Remove de-allocation of got slot.
     3081        (elf_vax_size_dynamic_section): Fix some indentation.  Add hash
     3082        traversal for elf_vax_instantiate_got_entries.  Allow empty .got
     3083        sections to be GC'ed.
     3084        (elf_vax_instantiate_got_entries): New function.
     3085        (elf_vax_relocate_section): Simplify R_VAX_GOT32 handling.  Remove
     3086        tests that are now handled by elf_vax_instantiate_got_entries.
     3087        Assert GOT entry falls within .got section size.  Remove redundant
     3088        comparisions.  Fix comments.
     3089
     30902002-09-27  Jakub Jelinek  <jakub@redhat.com>
     3091
     3092        * reloc.c: Add x86-64 TLS relocs.
     3093        * bfd-in2.h, libbfd.h: Rebuilt.
     3094        * elf64-x86-64.c (x86_64_elf_howto): Fix size fields for 32-bit
     3095        relocs.  Add TLS relocs.
     3096        (x86_64_reloc_map): Add TLS relocs.
     3097        (elf64_x86_64_info_to_howto): Adjust for added TLS relocs.
     3098        (struct elf64_x86_64_link_hash_entry): Add tls_type field.
     3099        (GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD, GOT_TLS_IE): Define.
     3100        (elf64_x86_64_hash_entry): Define.
     3101        (struct elf64_x86_64_obj_tdata): New.
     3102        (elf64_x86_64_tdata, elf64_x86_64_local_got_tls_type): Define.
     3103        (struct elf64_x86_64_link_hash_table): Add tls_ld_got.
     3104        (link_hash_newfunc): Initialize tls_type.
     3105        (elf64_x86_64_link_hash_table_create): Initialize tls_ld_got.
     3106        (elf64_x86_64_copy_indirect_symbol): Swap tls_type if necessary.
     3107        (elf64_x86_64_mkobject): New.
     3108        (elf64_x86_64_elf_object_p): Allocate struct elf64_x86_64_obj_tdata.
     3109        (elf64_x86_64_tls_transition): New.
     3110        (elf64_x86_64_check_relocs): Add r_type variable and use it.
     3111        Handle TLS relocs.
     3112        (elf64_x86_64_gc_sweep_hook): Handle TLS relocs.
     3113        (allocate_dynrelocs): Allocate GOT space for TLS relocs.
     3114        (elf64_x86_64_size_dynamic_sections): Likewise.
     3115        (dtpoff_base, tpoff): New.
     3116        (elf64_x86_64_relocate_section): Handle TLS relocs.
     3117        (elf64_x86_64_finish_dynamic_symbol): Only handle non-TLS GOT
     3118        entries.
     3119        (bfd_elf64_mkobject): Define.
     3120
     3121        * elf32-i386.c (elf_i386_check_relocs) [R_386_TLS_LE]: Set
     3122        DF_STATIC_TLS if shared.
     3123
     31242002-09-26  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     3125
     3126        * elfxx-mips.c (_bfd_mips_elf_fake_sections): Don't emit unneeded
     3127        empty relocation sections.
     3128
     31292002-09-26  Alan Modra  <amodra@bigpond.net.au>
     3130
     3131        * elf64-ppc.c (ppc_build_one_stub): Don't build glink stubs here.
     3132        (ppc64_elf_build_stubs): Build them here instead.
     3133
     31342002-09-24  Jakub Jelinek  <jakub@redhat.com>
     3135
     3136        * elf32-sparc.c (elf32_sparc_relocate_section): Put R_SPARC_RELATIVE
     3137        addend into r_addend, not *r_offset.
     3138        (elf32_sparc_finish_dynamic_symbol): Likewise.
     3139        * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Clear xword at
     3140        R_SPARC_RELATIVE's r_offset.
     3141
     31422002-09-23  Nathan Tallent  <eraxxon@alumni.rice.edu>
     3143
     3144        * dwarf2.c (decode_line_info): Update to correctly decode
     3145        the (non-standard DWARF2) out-of-order address sequences
     3146        generated by the Intel C++ 6.0 compiler for ia64-Linux.
     3147
     31482002-09-23  Mark Elbrecht  <snowball3@softhome.net>
     3149
     3150        * config.bfd: For DJGPP targets, match with any cpu and any machine.
     3151
     31522002-09-23  Alan Modra  <amodra@bigpond.net.au>
     3153
     3154        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Zero relocs
     3155        for discarded FDEs.  Remove redundant assignment.
     3156        * elflink.h (elf_bfd_discard_info): Save edited relocs.
     3157
     31582002-09-22  H.J. Lu <hjl@gnu.org>
     3159
     3160        * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Don't merge
     3161        the relocation count between different .reloc sections.
     3162
     31632002-09-21  Alan Modra  <amodra@bigpond.net.au>
     3164
     3165        * elf32-ppc.c (ppc_elf_relocate_section): Allow ".sbss.*" and
     3166        ".sdata.*" for R_PPC_SDAREL16, ".sbss2*" and ".sdata2*" for
     3167        R_PPC_EMB_SDA2REL.  Similarly for R_PPC_EMB_SDA21 and
     3168        R_PPC_EMB_RELSDA.
     3169
     3170        * elfcode.h (elf_slurp_reloc_table_from_section): Make "symcount"
     3171        unsigned.  Move "symcount" assignment out of loop.
     3172        * Makefile.am: Run "make dep-am".
     3173        * Makefile.in: Regenerate.
     3174        * configure: Regenerate.
     3175        * po/SRC-POTFILES.in: Regnerate.
     3176
     31772002-09-19  Nathan Tallent  <eraxxon@alumni.rice.edu>
     3178
     3179        * dwarf2.c (_bfd_dwarf2_find_nearest_line): If address length is
     3180        zero, set it to 8 for (non-standard) 64-bit DWARF2 formats
     3181        (e.g. IRIX64).
     3182
     31832002-09-19  Jakub Jelinek  <jakub@redhat.com>
     3184
     3185        * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Clear .got word
     3186        even if generating R_PPC_RELATIVE reloc.
     3187        (ppc_elf_relocate_section): Make sure relocation is performed
     3188        if skip == -2.  Clear memory at r_offset when creating dynamic
     3189        relocation.
     3190
     31912002-09-19  Jakub Jelinek  <jakub@redhat.com>
     3192
     3193        * reloc.c (BFD_RELOC_386_TLS_TPOFF, BFD_RELOC_386_TLS_IE,
     3194        BFD_RELOC_386_TLS_GOTIE): Add.
     3195        * bfd-in2.h, libbfd.h: Rebuilt.
     3196        * elf32-i386.c (elf_howto_table): Add R_386_TLS_TPOFF, R_386_TLS_IE
     3197        and R_386_TLS_GOTIE.
     3198        (elf_i386_reloc_type_lookup): Handle it.
     3199        (struct elf_i386_link_hash_entry): Change tls_type type to unsigned
     3200        char instead of enum, change GOT_* into defines.
     3201        (GOT_TLS_IE_POS, GOT_TLS_IE_NEG, GOT_TLS_IE_BOTH): Define.
     3202        (elf_i386_tls_transition): Handle R_386_TLS_IE and R_386_TLS_GOTIE.
     3203        (elf_i386_check_relocs): Likewise.  Avoid crash if local symbol is
     3204        accessed both as normal and TLS symbol.  Move R_386_TLS_LDM and
     3205        R_386_PLT32 cases so that R_386_TLS_IE can fall through.
     3206        Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs.
     3207        (elf_i386_gc_sweep_hook): Handle R_386_TLS_IE and R_386_TLS_GOTIE.
     3208        Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs.
     3209        (allocate_dynrelocs): Allocate 2 .got and 2 .rel.got entries if
     3210        tls_type is GOT_TLS_IE_BOTH.
     3211        (elf_i386_size_dynamic_sections): Likewise.
     3212        (elf_i386_relocate_section): Handle R_386_TLS_IE and R_386_TLS_GOTIE.
     3213        Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs.
     3214        (elf_i386_finish_dynamic_symbol): Use tls_type & GOT_TLS_IE to catch
     3215        all 4 GOT_TLS_* TLS types.
     3216
     32172002-09-19  Nick Clifton  <nickc@redhat.com>
     3218
     3219        * elflink.h (elf_fix_symbol_flags): When examining weak symbols,
     3220        follow indirect links.
     3221
     32222002-09-19  Nathan Tallent  <eraxxon@alumni.rice.edu>
     3223
     3224        * ecoffswap.h (ecoff_swap_pdr_in) <isym, iline>: Update to
     3225        correctly sign-extend 32-bit ECOFF null values (0xffffffff, -1)
     3226        on 64 bit machines.
     3227        (ecoff_swap_sym_in) <iss>: Likewise.
     3228        * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Fix error reading
     3229        ECOFF information: 'ioptMax' refers to the actual *size*
     3230        of the optimization symtab, not the number of entries.
     3231
     32322002-09-19  Daniel Jacobowitz  <drow@mvista.com>
     3233
     3234        * elf32-arm.h (elf32_arm_adjust_dynamic_symbol): Update
     3235        ELF_LINK_HASH_NEEDS_PLT logic.
     3236
     32372002-09-18  Daniel Jacobowitz  <drow@mvista.com>
     3238
     3239        * elfcode.h (elf_slurp_reloc_table_from_section): Check
     3240        correct relocation count.
     3241
     32422002-09-17  Daniel Jacobowitz  <drow@mvista.com>
     3243
     3244        * bfd-in.h (bfd_get_dynamic_symcount): Define.
     3245        * bfd.c (struct _bfd): Add dynsymcount.
     3246        * bfd-in2.h: Regenerated.
     3247        * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Set
     3248        abfd->dynsymcount.
     3249        * elfcode.h (elf_slurp_reloc_table_from_section): Check
     3250        for overflow.
     3251
     32522002-09-17  Stan Cox <scox@redhat.com>
     3253
     3254        * elf64-mips.c (mips_elf64_be_swap_reloca_out): Handle type2 and type3.
     3255        (mips_elf64_final_gp): Don't make up gp value.
     3256        * elfn32-mips.c (mips_elf_final_gp): Likewise.
     3257        * elfxx-mips.c (_bfd_mips_elf_final_link): Always create
     3258        .MIPS.options/.options section.
     3259
     32602002-09-17  David O'Brien  <obrien@FreeBSD.org>
     3261
     3262        * elf32-i386-fbsd.c: Always label using the EI_OSABI method.
     3263        It is benign for FreeBSD < 4.1.  Minor reformatting.
     3264        * elf64-alpha-fbsd.c: Likewise.
     3265
     32662002-09-17  Jakub Jelinek  <jakub@redhat.com>
     3267
     3268        * elf32-i386.c (elf_i386_relocate_section) [R_386_TLS_TPOFF32]: Negate
     3269        addend.
     3270
     32712002-09-17  Alan Modra  <amodra@bigpond.net.au>
     3272
     3273        * elf64-alpha.c (alpha_elf_size_info): Make static.
     3274
     32752002-09-17  Svein E. Seldal  <Svein.Seldal@solidas.com>
     3276
     3277        * coff-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED.
     3278        * cpu-tic4x.c: Ditto.
     3279
     32802002-09-17  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     3281
     3282        * elf64-mips.c (define elf_backend_ignore_discarded_relocs): Remove
     3283        duplicate define.
     3284
     32852002-09-16  Bruno Haible  <bruno@clisp.org>
     3286
     3287        * elf32-i386.c: Don't defined ELF_ARCH etc. if this file is included
     3288        by a target variant implementation.
     3289        * elf64-alpha.c: Likewise.
     3290        * elf32-i386-fbsd.c: New file.
     3291        * elf64-alpha-fbsd.c: New file.
     3292        * targets.c: Support bfd_elf32_i386_freebsd_vec and
     3293        bfd_elf64_alpha_freebsd_vec.
     3294        * configure.in: Accept the vectors bfd_elf32_i386_freebsd_vec,
     3295        bfd_elf64_alpha_freebsd_vec.
     3296        * Makefile.am (BFD32_BACKENDS): Add elf32-i386-fbsd.lo.
     3297        (BFD32_BACKENDS_CFILES): Add elf32-i386-fbsd.c.
     3298        (BFD64_BACKENDS): Add elf64-alpha-fbsd.lo.
     3299        (BFD64_BACKENDS_CFILES): Add elf64-alpha-fbsd.c.
     3300        (elf32-i386-fbsd.lo, elf64-alpha-fbsd.lo): Add dependencies.
     3301        * config.bfd: For FreeBSD targets, set targ_defvec to a FreeBSD
     3302        specific targets. Define OLD_FREEBSD_ABI_LABEL if appropriate.
     3303
     33042002-09-12  Jakub Jelinek  <jakub@redhat.com>
     3305
     3306        * elf32-i386.c (dtpoff_base, tpoff): Don't crash if tls_segment is
     3307        NULL.
     3308        (elf_i386_relocate_section): Return false after printing error about
     3309        unresolvable relocation.
     3310
     33112002-09-12  Nick Clifton  <nickc@redhat.com>
     3312
     3313        * elf32-arm.h (elf32_arm_final_link_relocate): Fix handling of
     3314        R_ARM_THM_PC11.
     3315
     33162002-09-11  Jeffrey Law  <law@redhat.com>
     3317
     3318        * elf32-h8300.c (elf32_h8_relax_section): Fix typo.
     3319
     33202002-09-11  Andrew Haley  <aph@cambridge.redhat.com>
     3321
     3322        * elf.c (_bfd_elf_find_nearest_line): Check functionname_ptr and
     3323        line_ptr before deciding we've found a symbol.
     3324
     33252002-09-11  Nick Clifton  <nickc@redhat.com>
     3326
     3327        * po/da.po: New Danish translation file.
     3328        * configure.in (LINGUAS): Add 'da'.
     3329        * configure: Regenerate.
     3330
     33312002-09-10  Michael Snyder  <msnyder@redhat.com>
     3332
     3333        * irix-core.c (do_sections, do_sections64): New functions.
     3334        (irix_core_core_file_p): Call new functions do_sections,
     3335        do_sections64, depending on corefile (32-bit or 64-bit).
     3336
     33372002-09-09  Richard Henderson  <rth@redhat.com>
     3338
     3339        * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21M
     3340        and PCREL21F like PCREL21B.
     3341
     33422002-09-04  Kevin Buettner  <kevinb@redhat.com>
     3343
     3344        * config.bfd (mips*-*-irix6*): Add new ABI vectors.  Make n32 default
     3345        vector.
     3346
     33472002-09-02  Nick Clifton  <nickc@redhat.com>
     3348
     3349        * elf32-v850.c (v850_elf_final_link_relocate): Use helpful
     3350        names instead of cryptically overloaded bfd_reloc error
     3351        codes.
     3352        (v850_elf_relocate_section): Likewise.
     3353        (v850_elf_relax_section): Replace caching of external symbols
     3354        with caching of internal symbols obtained from calling
     3355        bfd_elf_get_elf_syms().
     3356        Fixup problems with freeing cached allocated memory blocks.
     3357
     33582002-09-02  Alan Modra  <amodra@bigpond.net.au>
     3359
     3360        * cpu-pj.c (scan_mach, compatible, arch_info_struct): Remove.
     3361        (bfd_pj_arch): Use bfd_default_scan.
     3362        * cpu-v850.c (scan): Remove.
     3363        (N): Use bfd_default_scan.
     3364        * cpu-z8k.c (scan_mach): Remove.
     3365        (arch_info_struct, bfd_z8k_arch): Reorganize so that the default is
     3366        first.  Use bfd_default_scan.
     3367
     3368        * ecoff.c (_bfd_ecoff_set_arch_mach_hook): Don't use hard-coded
     3369        bfd_mach constants.
     3370        (ecoff_get_magic): Likewise.
     3371        * elf32-v850.c (v850_elf_object_p): Likewise.
     3372        (v850_elf_final_write_processing): Likewise.
     3373        * mipsbsd.c (MY(set_arch_mach)): Likewise.
     3374        (MY(write_object_contents)): Likewise.
     3375        * coff64-rs6000.c (xcoff64_write_object_contents): Likewise.
     3376        * coffcode.h (coff_write_object_contents): Likewise.
     3377        (coff_set_arch_mach_hook): Add comment describing machine == 0.
     3378        Remove unnecessary "machine" assignments.
     3379        (coff_write_relocs): Test for the absolute section sym by testing
     3380        section and flags.
     3381
     3382        * aoutx.h (NAME(aout,machine_type)): Recognize bfd_mach_i386_i386
     3383        and bfd_mach_i386_i386_intel_syntax.
     3384        * pdp11.c (NAME(aout,machine_type)): Likewise.
     3385
     33862002-08-30  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     3387
     3388        * bfd-in.h (align_power): Cast constants to bfd_vma type.
     3389        * bfd-in2.h (align_power): Likewise.
     3390
     33912002-08-30  Alan Modra  <amodra@bigpond.net.au>
     3392
     3393        * Makefile.am: Run "make dep-am".
     3394        * Makefile.in: Regenerate.
     3395
     3396        * cpu-avr.c (compatible): Don't use hard-coded mach constants.
     3397        * cpu-powerpc.c (powerpc_compatible): Likewise.
     3398        * cpu-rs6000.c (rs6000_compatible): Likewise.
     3399
     34002002-08-28  Catherine Moore  <clm@redhat.com>
     3401
     3402        * elf32-v850.c (v850_elf_reloc_map):  Add new relocs.
     3403        (v850-elf-reloc): Don't resolve pc relative relocs.
     3404        (v850_elf_ignore_reloc): New routine.
     3405        (v850_elf_final_link_relocate): Handle new relocs.
     3406        (v850_elf_relax_delete_bytes ): New routine.
     3407        (v850_elf_relax_section): New routine.
     3408        (bfd_elf32_bfd_relax_section): Define.
     3409        (HOWTO): New entries for new relocs.
     3410        * reloc.c (BFD_RELOC_V850_LONGCALL): New reloc.
     3411        (BFD_RELOC_V850_LONGJUMP): New reloc.
     3412        (BFD_RELOC_V850_ALIGN): New reloc.
     3413        * archures.c: Remove redundant v850ea architecture.
     3414        * cpu-v850.c: Remove redundant v850ea support.
     3415        * libbfd.h: Regenerate.
     3416        * bfd-in2.h: Regenerated.
     3417
     34182002-08-28  Svein E. Seldal  <Svein.Seldal@solidas.com>
     3419
     3420        * config.bfd: Add tic4x-*-*coff* and c4x-*-*coff* target.
     3421        * configure.in: Add tic4x_coff vector files.
     3422        * configure: Regenerate.
     3423        * Makefile.am: Add tic4x target.
     3424        * Makefile.in: Regenerate.
     3425
     34262002-08-27  Michael Hayes <m.hayes@elec.canterbury.ac.nz>
     3427
     3428        * archures.c: Add the BFD arch type tic4x.
     3429        * bfd-in.h: Add BFD_IN_MEMORY flag.
     3430        * coff-tic4x.c: New file.
     3431        * coffswap.h (coff_swap_sym_out): Add preadjuster.
     3432        * cpu-tic4x.c: New file.
     3433        * targets.c: Added tic4x- in list of xvecs.
     3434        * ticoff.h: New file.
     3435        * bfd-in2.h: Regenerate.
     3436
     34372002-08-27  Adam Nemet  <anemet@lnxw.com>
     3438
     3439        * elf32-arm.h (elf32_arm_finish_dynamic_sections): Set the last
     3440        bit of DT_INIT and DT_FINI for Thumb functions.
     3441
     34422002-08-26  Alan Modra  <amodra@bigpond.net.au>
     3443
     3444        * coffcode.h (coff_set_arch_mach_hook): Handle W65MAGIC.
     3445
     34462002-08-26  Alan Modra  <amodra@bigpond.net.au>
     3447
     3448        * aoutx.h (NAME(aout,reloc_type_lookup)): Handle BFD_RELOC_8.
     3449
     34502002-08-24  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
     3451
     3452        * elf32-sh.c (sh_elf_copy_indirect_symbol): New.
     3453        (create_got_section, allocate_dynrelocs, readonly_dynrelocs):
     3454        Likewise.
     3455        (struct elf_sh_pcrel_relocs_copied): Removed.
     3456        (struct elf_sh_dyn_relocs): New.
     3457        (struct elf_sh_link_hash_entry): Replace pcrel_relocs_copied
     3458        field with dyn_relocs.
     3459        (struct elf_sh_link_hash_table): Add short-cuts to get dynamic
     3460        sections and sym_sec.
     3461        (sh_elf_link_hash_newfunc): Clear dyn_relocs.
     3462        (sh_elf_link_hash_table_create): Clear shorts-cuts and sym_sec.
     3463        (sh_elf_create_dynamic_sections): Use create_got_section instead
     3464        of _bfd_elf_create_got_section.
     3465        (sh_elf_check_relocs): Likewise.
     3466        (sh_elf_create_dynamic_sections): Use short-cuts to the dynamic
     3467        sections.
     3468        (sh_elf_adjust_dynamic_symbol, sh_elf_size_dynamic_sections,
     3469        sh_elf_relocate_section, sh_elf_check_relocs,
     3470        sh_elf_finish_dynamic_symbol, sh_elf_finish_dynamic_sections):
     3471        Likewise.
     3472        (sh_elf_adjust_dynamic_symbol): Handle nocopyreloc. Keep the
     3473        dynamic relocations and avoiding the copy relocation when we
     3474        didn't find any dynamic relocations in the section which has
     3475        contents or is read-only.
     3476        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
     3477        (sh_elf_size_dynamic_sections): Don't reset the size of
     3478        .rela.got section even if dynamic_sections_created flag is off.
     3479        Don't use sh_elf_discard_copies. Scan all input bfd and use
     3480        allocate_dynrelocs. Call readonly_dynrelocs to determine
     3481        whether we need DT_TEXTREL.
     3482        (sh_elf_adjust_dynamic_symbol): Use plt.refcount to determine
     3483        whether the symbol was never referred to.
     3484        (sh_elf_relocate_section): Use WILL_CALL_FINISH_DYNAMIC_SYMBOL.
     3485        (sh_elf_gc_sweep_hook): Fill with the real sweep function.
     3486        (sh_elf_check_relocs): Call create_got_section if the short-cut
     3487        to .got is null. Increment reference counters only instead of
     3488        allocating space on dynamic sections here. Don't conditionalize
     3489        uninitialized got.offset value when marking the symbol as a
     3490        global offset table entry. Keep relocations for symbols satisfied
     3491        by a dynamic library to avoid copy relocations for the symbol.
     3492        Set dynobj field of an elf hash table if needed.
     3493        (sh_elf_finish_dynamic_sections): Handle null section pointer
     3494        correctly.
     3495        (elf_backend_copy_indirect_symbol): Defined.
     3496        (elf_backend_can_refcount): Defined.
     3497
     34982002-08-23  Nick Clifton  <nickc@redhat.com>
     3499
     3500        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Undo
     3501        previous change.  Add comment explaining why.
     3502
     35032002-08-23  Stephen Clarke <stephen.clarke@superh.com>
     3504
     3505        * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le): Copy
     3506        contents of .got.plt[2] to tr0, not address of .got.plt.
     3507        (sh_elf_finish_dynamic_symbol): Do not apply GOT_BIAS when
     3508        patching absolute plt entry. For shmedia plt entry, set bottom bit
     3509        of branch to plt0 as this is a branch to an shmedia instruction.
     3510        * elf64-sh64.c (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le):
     3511        Copy contents of .got.plt[2] to tr0, not address of .got.plt.
     3512        (elf_sh64_plt_entry_be, elf_sh64_plt_entry_le): Use ptrel to
     3513        branch to plt0.
     3514        (sh64_elf64_finish_dynamic_symbol): Do not apply GOT_BIAS when
     3515        patching absolute plt entry. For shmedia plt entry, branch to
     3516        plt0 is now ptrel, so use relative offset.  Set bottom bit of
     3517        branch target as it is a branch to an shmedia instruction.
     3518
     35192002-08-23  Stephen Clarke <stephen.clarke@superh.com>,
     3520            Richard Shann <richard.shann@superh.com>
     3521
     3522        * elf32-sh.c (sh_elf_finish_dynamic_sections): Set LSB of DT_INIT
     3523        value if .init is an SHmedia function.  Similarly for DT_FINI.
     3524        * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise.
     3525
     35262002-08-23  Stephen Clarke <stephen.clarke@superh.com>
     3527
     3528        * elf32-sh.c (sh_elf_size_dynamic_sections): Zero initialize
     3529        dynamic section.
     3530        * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise.
     3531
     35322002-08-22  Kaz Kojima <kkojima@rr.iij4u.or.jp>
     3533
     3534        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use a simple
     3535        byte read when reading the return address register column.
     3536
     35372002-08-22  Nick Clifton  <nickc@redhat.com>
     3538
     3539        * config.bfd: Add powepc64-*-*bsd* target.
     3540
     35412002-08-22  Graeme Peterson  <gp@qnx.com>
     3542
     3543        * Makefile.am: Add entries for elf32-shqnx.c
     3544        * Makefile.in: Regenerate.
     3545        * config.bfd: Add support sh-*-nto* target.
     3546        * configure.in: Add support for bfd_elf32_sh{l}qnx_vec.
     3547        * configure: Regenerate.
     3548        * elf32-qnx.h: Changed typo "elf_i386qnx_*" to "elf_qnx_*" .
     3549        * elf32-sh.c: Do not include elf32-target.h if
     3550        ELF32_SH_C_INCLUDED is defined.
     3551        * elf32-shqnx.c: New file: Support for QNX.
     3552        * targets.c: Add bfd_elf32_sh{l}qnx_vec.
     3553
     35542002-08-22  Nick Clifton  <nickc@redhat.com>
     3555
     3556        * po/tr.po: Updated Turkish translation.
     3557
     3558        * syms.c (_bfd_generic_read_minisymbols): Set bfd_error if the
     3559        symbols are not read.
     3560
     35612002-08-22  Alan Modra  <amodra@bigpond.net.au>
     3562
     3563        * elf32-m68hc11.c: Formatting fixes.
     3564        (elf32_m68hc11_gc_mark_hook): Correct params.  Remove unnecessary test.
     3565        * elf32-m68hc12.c: Formatting fixes.
     3566        (elf32_m68hc11_gc_mark_hook): Correct params.  Remove unnecessary test.
     3567
     35682002-08-22  Alan Modra  <amodra@bigpond.net.au>
     3569
     3570        * coff-rs6000.c (rs6000coff_vec <object_flags>): Add SEC_CODE and
     3571        SEC_DATA.
     3572        (pmac_xcoff_vec): Likewise.
     3573        * coff64-rs6000.c (rs6000coff64_vec): Likewise.
     3574        (aix5coff64_vec): Likewise.
     3575
     35762002-08-22  Alan Modra  <amodra@bigpond.net.au>
     3577
     3578        * elf-bfd.h (struct elf_backend_data): Add struct elf_backend_data
     3579        param to elf_backend_copy_indirect_symbol.
     3580        (_bfd_elf_link_hash_copy_indirect): Likewise.
     3581        * elflink.h (elf_add_default_symbol, elf_fix_symbol_flags): Adjust
     3582        calls to copy_indirect_symbol.
     3583        * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
     3584        * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
     3585        * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise.
     3586        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
     3587        * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise.
     3588        * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise.
     3589        * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
     3590        * elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise.
     3591        * elfxx-mips.h (_bfd_mips_elf_copy_indirect_symbol): Likewise.
     3592        * elf.c (_bfd_elf_link_hash_copy_indirect): Likewise.  Properly
     3593        test refcounts for "used" values.
     3594
     35952002-08-21  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     3596
     3597        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Add PARAMS to
     3598        argument declaration.
     3599
     36002002-08-19  Elena Zannoni <ezannoni@redhat.com>
     3601
     3602        * archures.c (bfd_mach_ppc_e500): Added.
     3603        * bfd-in2.h: Rebuilt.
     3604        * cpu-powerpc.c (bfd_powerpc_archs): Added e500.
     3605
     36062002-08-19  Alan Modra  <amodra@bigpond.net.au>
     3607
     3608        * elf32-m68hc12.c (elf_backend_can_gc_sections): False.
     3609
     36102002-08-17  Andrew Cagney  <ac131313@redhat.com>
     3611
     3612        * elf.c (bfd_elf_get_elf_syms): Change type of `esym' to
     3613        `bfd_byte'.
     3614
     36152002-08-17  Stan Cox  <scox@redhat.com>
     3616
     3617        * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Use the
     3618        IRIX 6 segment layout for NEWABI.
     3619
     36202002-08-16  Stephen Clarke <stephen.clarke@superh.com>
     3621
     3622        * bfd/elf32-sh.c (sh_elf_gc_mark_hook): For sh64, skip indirect
     3623        symbols when looking for section referred to by a relocation.
     3624        * bfd/elf64-sh.c (sh_elf64_gc_mark_hook): Likewise.
     3625
     36262002-08-15  Alan Modra  <amodra@bigpond.net.au>
     3627
     3628        * elf32-i370.c: Move reloc enum to include/elf/i370.h.
     3629
     36302002-08-15  Hans-Peter Nilsson  <hp@axis.com>
     3631
     3632        * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Add
     3633        missing check for whether the symbol is referenced by DSO before
     3634        unexporting it as an unneeded dynamic symbol.
     3635
     36362002-08-14  H.J. Lu <hjl@gnu.org>
     3637
     3638        * libbfd.h: Regenerate.
     3639
     36402002-08-14  H.J. Lu <hjl@gnu.org>
     3641
     3642        * config.bfd: Always add 64bit vectors to 32bit Linux/mips.
     3643
     36442002-08-14  Stephane Carrez  <stcarrez@nerim.fr>
     3645
     3646        * elf32-m68hc11.c (m68hc11_relax_group): New to relax group of
     3647        instructions.
     3648        (m68hc11_direct_relax): New to define table of relaxable instructions.
     3649        (find_relaxable_insn): New, find a relaxable insn.
     3650        (compare_reloc): New to compare two relocs.
     3651        (m68hc11_elf_relax_section): New, relax text sections.
     3652        (m68hc11_elf_relax_delete_bytes): New, delete bytes and adjust branchs.
     3653        (elf32_m68hc11_check_relocs): New function for GC support.
     3654        (elf32_m68hc11_relocate_section): New function for GC support.
     3655        (bfd_elf32_bfd_relax_section): Define to support linker relaxation.
     3656        (elf_backend_check_relocs): Likewise.
     3657        (elf_backend_relocate_section): Likewise.
     3658
     36592002-08-13  H.J. Lu <hjl@gnu.org>
     3660
     3661        * elflink.h (NAME(bfd_elf,size_dynamic_sections): Don't count
     3662        definitions in shared objects when checking symbol with
     3663        undefined version.
     3664
     36652002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
     3666
     3667        * elf32-m68hc11.c (elf32_m68hc11_gc_mark_hook): New for section GC.
     3668        (elf32_m68hc11_gc_sweep_hook): Likewise.
     3669        (elf_backend_gc_mark_hook): Define for GC section support.
     3670        (elf_backend_gc_sweep_hook): Likewise.
     3671        (elf_backend_can_gc_sections): Likewise.
     3672
     3673        * elf32-m68hc12.c: Likewise.
     3674
     36752002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
     3676
     3677        * elf32-m68hc11.c (_bfd_m68hc11_elf_print_private_bfd_data): New.
     3678        (_bfd_m68hc11_elf_merge_private_bfd_data): New function.
     3679        (_bfd_m68hc11_elf_set_private_flags): New function.
     3680        Use them to set/check/print ELF flags specific to 68HC11.
     3681
     3682        * elf32-m68hc12.c (_bfd_m68hc12_elf_print_private_bfd_data): New.
     3683        (_bfd_m68hc12_elf_merge_private_bfd_data): New function.
     3684        (_bfd_m68hc12_elf_set_private_flags): New function.
     3685        Use them to set/check/print ELF flags specific to 68HC12.
     3686
     36872002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
     3688
     3689        * elf32-m68hc11.c (elf_m68hc11_howto_table): Add the new relocs;
     3690        fix masks for PC-rel relocs.
     3691        (m68hc11_elf_ignore_reloc): New function.
     3692
     3693        * elf32-m68hc12.c (m68hc12_elf_special_reloc): New to handle specific
     3694        68HC12 banked addressing relocs.
     3695        (m68hc12_phys_addr): New to compute physical address of banked memory.
     3696        (m68hc12_phys_page): Likewise for page.
     3697        (m68hc12_addr_is_banked): New to see if address is in banked area.
     3698        (elf_m68hc12_howto_table): Add new relocs and rename to xx12.
     3699
     37002002-08-13  Stephane Carrez  <stcarrez@nerim.fr>
     3701
     3702        * reloc.c (BFD_RELOC_M68HC11_RL_JUMP, BFD_RELOC_M68HC11_RL_GROUP,
     3703        BFD_RELOC_M68HC11_LO16, BFD_RELOC_M68HC11_PAGE,
     3704        BFD_RELOC_M68HC11_24): New relocs for 68HC11/68HC12.
     3705        * bfd-in2.h: Regenerate.
     3706
     37072002-08-12  H.J. Lu <hjl@gnu.org>
     3708
     3709        * elflink.h (elf_add_default_symbol): Preserve section across
     3710        elf_merge_symbol.
     3711
     37122002-08-09  Graeme Peterson  <gp@qnx.com>
     3713
     3714        * Makefile.am: Add entries for elf32-ppcqnx.c, and add
     3715        elf32-qnx.h dependency to elfarmqnx-nabi.c and elf32-i386qnx.c.
     3716        * Makefile.in: Regenerate.
     3717        * config.bfd: Add support for powerpc{le}-*-nto targets.
     3718        * configure.in: Add support for bfd_elf32_powerpc{le}qnx_vec.
     3719        * configure: Regenerate.
     3720        * elf32-i386qnx.c: Moved backend functions into a QNX specific
     3721        common file "elf32-qnx.h", and now include that file.
     3722        * elf32-qnx.h: New file: QNX specific common elf backend.
     3723        * elf32-ppc.c: Do not include elf32-target.h if
     3724        ELF32_PPC_C_INCLUDED is defined.
     3725        * elf32-ppcqnx.c: New file: Support for QNX.
     3726        * elfarmqnx-nabi.c: Include elf32-qnx.h for qnx elf backend.
     3727        * targets.c: Add bfd_elf32_powerpc{le}qnx_vec.
     3728
     37292002-08-09  Nick Clifton  <nickc@redhat.com>
     3730
     3731        * po/sv.po: Updated Swedish translation.
     3732
     37332002-08-09  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     3734
     3735        * elfxx-mips.c (mips_elf_global_got_index): Avoid segfault if
     3736        g->global_gotsym is NULL.
     3737
     37382002-08-08  H.J. Lu <hjl@gnu.org>
     3739
     3740        * elflink.h (elf_add_default_symbol): Don't warn if a definition
     3741        overrides an indirect versioned symbol.
     3742
     37432002-08-08  Jakub Jelinek  <jakub@redhat.com>
     3744
     3745        * elf32-i386.c (elf_i386_relocate_section): Fill in proper addend
     3746        for R_386_TLS_TPOFF32 relocs against symndx 0.
     3747
     37482002-08-07  H.J. Lu <hjl@gnu.org>
     3749
     3750        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Check symbol
     3751        with undefined version if needed.
     3752        (elf_link_assign_sym_version): Match a default symbol with a
     3753        version without definition. No need to hide the default
     3754        definition separately.
     3755
     37562002-08-08  Alan Modra  <amodra@bigpond.net.au>
     3757
     3758        * elflink.h (elf_link_output_extsym): Don't output symbols from
     3759        SEC_EXCLUDE sections.
     3760
     3761        * aoutx.h (aout_link_write_symbols): Correct handling of warning syms.
     3762
     37632002-08-07  Alan Modra  <amodra@bigpond.net.au>
     3764
     3765        * elf64-ppc.c (edit_opd): Arrange to drop symbols for discarded .opd
     3766        entries.
     3767
     37682002-08-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     3769
     3770        * elfxx-mips.c (mips_elf_create_dynamic_relocation): Cast signedness
     3771        mismatch.
     3772
     37732002-08-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     3774
     3775        * elfxx-mips.c (ABI_64_P): Remove superfluous check.
     3776
     37772002-08-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     3778
     3779        * elf32-mips.c (mips_reloc_map): Fix typo.
     3780
     37812002-08-06  Alan Modra  <amodra@bigpond.net.au>
     3782
     3783        * xcofflink.c (xcoff_write_global_symbol): Set n_scnum for abs_section.
     3784
     37852002-08-06  Alan Modra  <amodra@bigpond.net.au>
     3786
     3787        * elf64-ppc.c (ppc64_elf_howto_raw): Zero all src_mask entries.
     3788
     37892002-08-06  Alan Modra  <amodra@bigpond.net.au>
     3790
     3791        * libxcoff.h: Use PARAMS on function declarations.
     3792        * coff-rs6000.c (xcoff_generate_rtinit): Simplify size calc.
     3793        * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise.
     3794
     3795        * coff-rs6000.c: (xcoff_rtype2howto): Don't place reloc address in
     3796        addend.
     3797        * coff64-rs6000.c: (xcoff64_rtype2howto): Likewise.
     3798
     37992002-08-06  Alan Modra  <amodra@bigpond.net.au>
     3800
     3801        * coff-rs6000.c: Formatting fixes.
     3802        (xcoff_calculate_relocation): Use PARAMS in declaration.
     3803        (xcoff_complain_overflow): Likewise.
     3804        (xcoff_ppc_relocate_section): Use old-style function pointer call.
     3805        (bfd_xcoff_backend_data): Remove useless comments.
     3806        (rs6000coff_vec): Likewise.
     3807        (bfd_pmac_xcoff_backend_data): Likewise.
     3808        (pmac_xcoff_vec): Likewise.
     3809
     3810        * coff64-rs6000.c: Formatting fixes.
     3811        (xcoff64_calculate_relocation): Use PARAMS in declaration.
     3812        (xcoff64_ppc_relocate_section): Use old-style function pointer call.
     3813        (bfd_xcoff_backend_data): Remove useless comments.
     3814        (rs6000coff64_vec): Likewise.
     3815        (bfd_xcoff_aix5_backend_data): Likewise.
     3816        (aix5coff64_vec): Likewise.
     3817
     38182002-08-06  Alan Modra  <amodra@bigpond.net.au>
     3819
     3820        * coff-rs6000.c (xcoff_howto_table): Revert some of last change to
     3821        mask entries.  Use complain_overflow_dont for R_REF.
     3822        (xcoff_reloc_type_ba): Revert last change.
     3823        (xcoff_reloc_type_br): Likewise.
     3824        (xcoff_reloc_type_crel): Likewise.
     3825        (xcoff_ppc_relocate_section): Likewise.
     3826        * coff64-rs6000.c (xcoff64_reloc_type_br): Likewise.
     3827        (xcoff64_ppc_relocate_section): Likewise.
     3828        (xcoff64_howto_table): Revert some of last change to mask entries.
     3829        Use complain_overflow_dont for R_REF.
     3830
     3831        * coff-rs6000.c (xcoff_howto_table): Fix src_mask entries.  Make all
     3832        relocs with bitsize == 16 have size = 1.
     3833        (xcoff_reloc_type_ba): Correct src_mask and dst_mask adjustment.
     3834        (xcoff_reloc_type_br): Likewise.
     3835        (xcoff_reloc_type_crel): Likewise.
     3836        (xcoff_ppc_relocate_section): Set up src_mask and dst_mask correctly.
     3837        * coff64-rs6000.c (xcoff64_reloc_type_br): Correct src_mask and
     3838        dst_mask adjustment.
     3839        (xcoff64_ppc_relocate_section): Set up src_mask and dst_mask correctly.
     3840        (xcoff64_howto_table): Fix src_mask entries.  Make all relocs with
     3841        bitsize == 16 have size = 1.
     3842
     38432002-08-01  Denis Chertykov  <denisc@overta.ru>
     3844
     3845        * elf32-ip2k.c: Processor manufacturer changed to Ubicom.
     3846        (struct misc): New field isymbuf. All free_* fields removed.
     3847        (symbol_value): Pass in internal syms. No need to swap syms in.
     3848        (ip2k_elf_relax_section): Use bfd_elf_get_elf_syms. Properly free
     3849        possibly cached info.
     3850        (tidyup_after_error): Removed.
     3851        (ip2k_elf_relax_section_pass1): Don't use removed fields of struct
     3852        misc. Use new field.
     3853        (adjust_all_relocations): Use internal syms. No need to swap syms
     3854        in and out.
     3855        (add_page_insn): Don't use removed fields of struct misc.
     3856
     38572002-08-01  Nick Clifton  <nickc@redhat.com>
     3858
     3859        * elf32-arm.h: Revert previous delta.
     3860
     38612002-08-01  Nick Clifton  <nickc@redhat.com>
     3862
     3863        * configure.in (AM_INIT_AUTOMAKE): Bump version number.
     3864        * configure: Regenerate.
     3865
     38662002-07-31  H.J. Lu <hjl@gnu.org>
     3867
     3868        * config.bfd: Add x86-64 vector to Linux/i386 if 64bit BFD is
     3869        selected.
     3870
     38712002-07-31  H.J. Lu <hjl@gnu.org>
     3872
     3873        * config.bfd: Add n32 vectors to 32bit Linux/mips if 64bit BFD
     3874        is selected.
     3875
     38762002-07-31  Jakub Jelinek  <jakub@redhat.com>
     3877
     3878        * elf32-i386.c (elf_i386_copy_indirect_symbol): Swap tls_type
     3879        if _bfd_elf_link_hash_copy_indirect will swap got.refcount.
     3880
     38812002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
     3882
     3883        * cpu-ns32k.c (_bfd_ns32k_put_immdeiate, _bfd_ns32k_get_immediate):
     3884        There is no 8 byte relocation type for this architecture.
     3885        (do_ns32k_reloc): Use bfd_vma instead of native types.
     3886        (bfd_ns32k_put_immediate, _bfd_ns32k_relocate_contents) put_data
     3887        returns void.
     3888        (_bfd_ns32k_put_displacement): Don't check for overflow. We can
     3889        rely on generic code to do that.
     3890        * aout-ns32k.c (howto_table): Add appropriate overflow detection
     3891        to all table entries.
     3892        (_bfd_ns32k_relocate_contents): put_data returns void.
     3893        * ns32k.h: (_bfd_ns32k_put_displacement, _bfd_ns32k_put_immediate)
     3894        (_bfd_do_ns32k_reloc_contents): Fix prototypes. put data functions
     3895        return void.
     3896
     38972002-07-31  Ian Dall  <ian@sibyl.beware.dropbear.id.au>
     3898
     3899        * aoutx.h (aout_link_check_ar_symbols): Whether to include an
     3900        archive object is target dependant.
     3901
     39022002-07-31  Adam Nemet  <anemet@lnxw.com>
     3903
     3904        * elf32-arm.h (ARM_PLT_ENTRY_SIZE): Rename PLT_ENTRY_SIZE.
     3905        (THUMB_PLT_ENTRY_SIZE): New macro.
     3906        (PLT_ENTRY_SIZE): Return the appropriate *_PLT_ENTRY_SIZE.
     3907        (elf32_arm_plt0_entry): Rename PLT_ENTRY_SIZE to
     3908        ARM_PLT_ENTRY_SIZE.
     3909        (elf32_arm_plt_entry): Likewise.
     3910        (elf_backend_plt_header_size): Likewise.
     3911        (elf32_thumb_plt0_entry): New global.
     3912        (elf32_arm_finish_dynamic_sections): Use it.  Put Thumb entries
     3913        into .plt.thumb.
     3914        (elf32_thumb_plt_entry): New global.
     3915        (elf32_arm_finish_dynamic_symbol): Use it.  Use .thumb.plt for
     3916        Thumb entries.  Set the bottom bit of the corresponding GOT entry
     3917        for a Thumb PLT entry.
     3918        (struct elf32_arm_plt_entry_info): New structure.
     3919        (struct elf32_arm_link_hash_entry, plt_info): New member of this
     3920        type.
     3921        (elf32_arm_link_hash_newfunc): Initialize new member.
     3922        (elf32_arm_final_link_relocate, R_ARM_THM_PC22 case): Handle
     3923        relocations against the PLT.
     3924        (elf32_arm_check_relocs, case R_ARM_PLT32 case): Set
     3925        first_rel_type if this is the first time we encounter the symbol.
     3926        (elf32_arm_check_relocs, case R_ARM_THM_PC22 case): New case.
     3927        Determine if relocation needs a PLT entry.  Set first_rel_type if
     3928        this is the first time we encounter the symbol
     3929        (elf32_arm_adjust_dynamic_symbol): Create PLT entries for Thumb
     3930        functions as well.
     3931        (elf32_arm_size_dynamic_sections): Handle .plt.thumb like .plt.
     3932        (elf32_arm_create_dynamic_sections): New function.  Create the
     3933        .plt.thumb section.
     3934        (elf_backend_create_dynamic_sections): Call it.
     3935
     39362002-07-31  Nick Clifton  <nickc@redhat.com>
     3937
     3938        * bfd.c (bfd_alt_mach_code): Rename parameter 'index' to
     3939        'alternative' in order to avoid shadowing global symbol of the
     3940        same name.
     3941        * bfd-in2.h: Regenerate.
     3942        * libbfd.h: Regenerate.
     3943        * libcoff.h: Regenerate.
     3944
     39452002-07-31  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     3946
     3947        * Makefile.am: Add n32 ABI support.
     3948        * Makefile.in: Regenerate.
     3949        * config.bfd: Add n32 vectors to mips64*-*-linux* targets. Treat 64
     3950        bit vectors for mips*-*-linux targets as optional.
     3951        * configure.in: Add n32 ABI vectors.
     3952        * configure: Regenerate.
     3953        * elf32-mips.c (mips_elf32_object_p): Reject n32 ABI files.
     3954        * elfn32-mips.c: New file, n32 ABI support.
     3955        * targets.c: Add n32 ABI vectors.
     3956
     39572002-07-30  Graeme Peterson  <gp@qnx.com>
     3958
     3959        * elfarmqnx-nabi.c: New file: Support for QNX.
     3960        * config.bfd: Add support for arm-*-nto target.
     3961        * configure.in: Add support for bfd_elf32_{big|little}armqnx_vec.
     3962        * configure: Regenerate.
     3963        * Makefile.am: Add entries for elfarmqnx-nabi.c.
     3964        * Makefile.in: Regenerate.
     3965        * elf32-arm.h (ELF_MAXPAGESIZE): Do not define if already defined.
     3966        Do not define global function if ELFARM_NABI_C_INCLUDED is defined.
     3967        * elfarm-nabi.c: Do not include elf32-arm.h if
     3968        ELFARM_NABI_C_INCLUDED is defined.
     3969        * targets.c: Add bfd_elf32_{big|little}armqnx_vec.
     3970
     39712002-07-30  Nick Clifton  <nickc@redhat.com>
     3972
     3973        * po/sv.po: Updated Swedish translation.
     3974
     39752002-07-30  Jakub Jelinek  <jakub@redhat.com>
     3976
     3977        * elf.c (elf_fake_sections): Fix up .tbss sh_size and sh_type.
     3978
     39792002-07-30  Alan Modra  <amodra@bigpond.net.au>
     3980
     3981        * aoutx.h (some_aout_object_p): Clean up tdata properly on error.
     3982        * archive.c (bfd_generic_archive_p): Likewise.
     3983        * coff-rs6000.c (_bfd_xcoff_archive_p): Likewise.
     3984        (_bfd_xcoff_archive_p): Use bfd_scan_vma in place of strtol.
     3985        * coff64-rs6000.c (xcoff64_slurp_armap): Likewise.
     3986        (xcoff64_archive_p): Likewise.
     3987        (xcoff64_openr_next_archived_file): Likewise.
     3988        (xcoff64_archive_p): Clean up tdata properly on error.
     3989        * coffgen.c (coff_real_object_p): Likewise.
     3990        (coff_object_p): Release filehdr and opthdr.
     3991        * ecoff.c (_bfd_ecoff_archive_p): Clean up tdata properly on error.
     3992        * ieee.c (ieee_archive_p): Likewise.
     3993        * ihex.c (ihex_object_p): Likewise.
     3994        (ihex_mkobject): Always allocate tdata.
     3995        * peicode.h (pe_ILF_object_p): Release bfd_alloc'd buffer on error.
     3996        * srec.c (srec_mkobject): Always allocate tdata.
     3997        (srec_object_p): Clean up tdata properly on error.
     3998        (symbolsrec_object_p): Likewise.
     3999        * versados.c (versados_object_p): Likewise.
     4000        * vms-misc.c (_bfd_vms_get_record): Use bfd_malloc instead of malloc,
     4001        and bfd_realloc instead of realloc.
     4002        (add_new_contents): Use bfd_alloc instead of bfd_malloc for sections.
     4003        * vms.c (vms_initialize): Always allocate tdata.  Use bfd_alloc in
     4004        place of bfd_malloc, simplifying error freeing.  Free hash table too.
     4005        (vms_object_p): Clean up tdata on error.
     4006        (vms_mkobject): Don't complain on stderr if vms_initialize fails.
     4007        (vms_close_and_cleanup): Adjust for bfd_alloc use.
     4008
     40092002-07-30  Alan Modra  <amodra@bigpond.net.au>
     4010
     4011        * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags.
     4012
     40132002-07-26  Chris Demetriou  <cgd@broadcom.com>
     4014
     4015        * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE
     4016        flags into resulting BFD.
     4017
     40182002-07-26  Alan Modra  <amodra@bigpond.net.au>
     4019
     4020        From John Reiser <jreiser@BitWagon.com>
     4021        * elf32-i386.c (elf_i386_link_hash_table_create): Clear
     4022        tls_ldm_got.refcount.
     4023
     40242002-07-25  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     4025
     4026        * elf64-mips.c: Update TODO comment.
     4027        (mips_elf64_higher_reloc,mips_elf64_highest_reloc,
     4028        mips_elf64_gprel16_reloca): Remove prototypes.
     4029        (mips16_jump_reloc,mips16_gprel_reloc): Add functions.
     4030        (UNUSED_RELOC): Replace by EMPTY_RELOC.
     4031        (mips_elf64_howto_table_rel): Use special R_MIPS_HI16 handling. Remove
     4032        wrong comments. Remove disfunctional support of R_MIPS_HIGHER and
     4033        R_MIPS_HIGHEST.
     4034        (mips_elf64_howto_table_rela): Fix handling of R_MIPS_GPREL16 and
     4035        R_MIPS_GOT16. Remove wrong comments.
     4036        (elf_mips16_jump_howto,elf_mips16_gprel_howto,
     4037        elf_mips_gnu_vtinherit_howto,elf_mips_gnu_vtentry_howto): New, code
     4038        from elf32-mips.c.
     4039        (mips_elf64_hi16_reloc): Fix formatting.
     4040        (mips_elf64_higher_reloc,mips_elf64_highest_reloc): Remove.
     4041        (mips_elf64_got16_reloc): Fix formatting. Remove superfluous code.
     4042        Better comment. Fall back to R_MIPS_GOT_DISP instead of abort().
     4043        (mips_elf64_gprel16_reloc): Make static. Add check for
     4044        partial_inplace.
     4045        (mips_elf64_gprel16_reloca): Remove.
     4046        (mips_elf64_literal_reloc): New function.
     4047        (mips_elf64_gprel32_reloc): Fix formatting.
     4048        (mips_elf64_shift6_reloc): Fix comment. Make static.
     4049        (mips16_jump_reloc,mips16_gprel_reloc): New functions, code from
     4050        elf32-mips.c.
     4051        (elf_reloc_map,mips_reloc_map): New mapping table, similiar as in
     4052        elf32-mips.c
     4053        (bfd_elf64_bfd_reloc_type_lookup): Use the mapping table. Enable GNU
     4054        specific relocations.
     4055        (mips_elf64_rtype_to_howto): Enable GNU specific relocations.
     4056        (mips_elf64_object_p): Invert logic to check for SGI-ish ABI.
     4057        (ELF_MAXPAGESIZE): Add comment.
     4058
     40592002-07-25  Nick Clifton  <nickc@redhat.com>
     4060
     4061        * po/sv.po: Updated Swedish translation.
     4062        * po/es.po: Updated Spanish translation.
     4063        * po/fr.po: Updated French translation.
     4064
     40652002-07-25  Alan Modra  <amodra@bigpond.net.au>
     4066
     4067        * elf-bfd.h (_bfd_elf32_link_record_local_dynamic_symbol): Define
     4068        as elf_link_record_local_dynamic_symbol.
     4069        (_bfd_elf64_link_record_local_dynamic_symbol): Likewise.
     4070        (elf_link_record_local_dynamic_symbol): Declare.  Now returns int.
     4071        * elflink.h (elf_link_record_local_dynamic_symbol): Move to..
     4072        * elflink.c: .. here.  Use bfd_elf_get_elf_syms.  Check whether an
     4073        attempt is made to record a symbol in a discarded section, and
     4074        return `2' in that case.
     4075
     40762002-07-24  Nick Clifton  <nickc@redhat.com>
     4077
     4078        * po/sv.po: Updated Swedish translation.
     4079        * po/es.po: Updated Spanish translation.
     4080
     40812002-07-23  Alan Modra  <amodra@bigpond.net.au>
     4082
     4083        * po/SRC-POTFILES.in: Regenerate.
     4084
     4085        * elf-hppa.h (elf_hppa_relocate_section): If relocatable, return
     4086        immediately.  Remove code handling relocatable linking.
     4087        * elf32-avr.c (elf32_avr_relocate_section): Likewise.
     4088        * elf32-cris.c (cris_elf_relocate_section): Likewise.
     4089        * elf32-fr30.c (elf32_frv_relocate_section): Likewise.
     4090        * elf32-frv.c (elf32_frv_relocate_section): Likewise.
     4091        * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
     4092        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
     4093        * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
     4094        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
     4095        * elf32-v850.c (v850_elf_relocate_section): Likewise.
     4096        * elf32-vax.c (elf_vax_relocate_section): Likewise.
     4097        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
     4098        * elf32-avr.c (elf_backend_rela_normal): Define.
     4099        * elf32-cris.c: Likewise.
     4100        * elf32-fr30.c: Likewise.
     4101        * elf32-frv.c: Likewise.
     4102        * elf32-h8300.c: Likewise.
     4103        * elf32-hppa.c: Likewise.
     4104        * elf32-ip2k.c: Likewise.
     4105        * elf32-sparc.c: Likewise.
     4106        * elf32-v850.c: Likewise.
     4107        * elf32-vax.c: Likewise.
     4108        * elf64-hppa.c: Likewise.
    4934109        * elf64-sparc.c: Likewise.
    494 
    495 2001-05-23  Alan Modra  <amodra@one.net.au>
    496 
    497         Merge from mainline.
    498         2001-05-17  Alan Modra  <amodra@one.net.au>
    499         * elf32-hppa.c (hppa_build_one_stub): Add an assert to check
    500         plt.offset.
    501 
    502         2001-05-16  Alan Modra  <amodra@one.net.au>
    503         * section.c (asection): Add linker_has_input field.
    504         (STD_SECTION): Adjust initialization to suit.
    505         * ecoff.c (bfd_debug_section): Likewise.
    506         * bfd-in2.h: Regenerate.
    507 
    508         2001-05-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
    509         * ecoff.c (bfd_debug_section): Fix initialization.
    510 
    511         2001-05-12  Peter Targett  <peter.targett@arccores.com>
    512         * cpu-arc.c (arch_info_struct): Add entry 'base' representing old
    513         name for 'arc5' core versions.
    514         (bfd_arc_arch): Make bfd_mach_arc_6 default.
    515         * elf32-arc.c (arc_elf_object_p): Make E_ARC_MACH_ARC6 default
    516         architecture.
    517         (arc_elf_final_write_processing): Make bfd_mach_arc_6 default.
    518 
    519         2001-05-08  Ian Lance Taylor  <ian@zembu.com>
    520         * coff-i386.c (coff_i386_reloc): Don't dump core if output_bfd is
    521         NULL or is not COFF.
    522         (coff_i386_rtype_to_howto): Don't dump core if output section
    523         owner is not COFF.
    524 
    525         2001-04-13  Roger Sayle  <roger@metaphorics.com>
    526         * coff-i386.c (TARGET_SYM): SEC_READONLY is an applicable section
    527         flag on pe-i386 targets.
    528 
    529         2001-04-26  H.J. Lu  <hjl@gnu.org>
    530         * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is
    531         valid.
    532 
    533         2001-04-05  David Mosberger  <davidm@hpl.hp.com>
    534         * elf32-i386.c (elf_i386_fake_sections): Treat ".reloc" as an
    535         ordinary "progbits" section.
    536 
    537 2001-05-04  Richard Henderson  <rth@redhat.com>
    538 
    539         * elf64-alpha.c (SREL16, SREL32, SREL64): Set pcrel_offset true.
    540 
    541 2001-04-30  Andreas Jaeger  <aj@suse.de>, Andreas Schwab <schwab@suse.de>
    542 
    543         * elf64-x86-64.c (elf64_x86_64_relocate_section): Correct test for
    544         R_X86_64_GOTPCREL, don't use assignments instead of comparisons.
    545 
    546 2001-04-27  Andreas Jaeger  <aj@suse.de>
    547 
    548         * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap
    549         out handled entries.
    550         (elf64_x86_64_finish_dynamic_symbol): Set up GOT entries.
    551         (elf64_x86_64_relocate_section): Fix GOTPCREL calculation.
    552         (elf64_x86_64_relocate_section): Merge entries for GOTPCREL and
    553         GOT32.
    554 
    555 2001-04-30  Alan Modra  <amodra@one.net.au>
    556 
    557         * elf32-hppa.c (final_link_relocate): Branch to .+8 for
    558         calls to undefined weak symbols.
    559 
    560 2001-04-19  Andreas Jaeger  <aj@suse.de>
    561 
    562         * elf64-x86-64.c (elf64_x86_64_plt0_entry): Fix instructions.
    563         (elf64_x86_64_plt_entry): Likewise.
    564         (elf64_x86_64_finish_dynamic_sections): Fix PLT0 generation.
    565         (elf64_x86_64_finish_dynamic_symbol): Fix PLT generation.
    566 
    567 2001-03-31  Philip Blundell  <philb@gnu.org>
    568 
    569         From 2001-03-26  H.J. Lu  <hjl@gnu.org>
    570         * elf32-gen.c (elf32_generic_link_add_symbols): New. Check
    571         if there are any relocations for generic ELF.
    572         (bfd_elf32_bfd_link_add_symbols): Defined to
    573         elf32_generic_link_add_symbols.
    574         * elf64-gen.c (elf64_generic_link_add_symbols): New. Check
    575         if there are any relocations for generic ELF.
    576         (bfd_elf64_bfd_link_add_symbols): Defined to
    577         elf64_generic_link_add_symbols.
    578 
    579 2001-03-21  Alan Modra  <alan@linuxcare.com.au>
    580 
    581         * elf32-hppa.c (elf32_hppa_set_gp): Check sec->output_section
    582         non-NULL before attempting to dereference.
    583 
    584 2001-03-20  Andreas Schwab  <schwab@suse.de>
    585 
    586         * elf32-m68k.c (elf_m68k_relocate_section): Don't need the
    587         relocation value when resolving a reference from a debugging
    588         section.
    589 
    590 2001-03-16  Philip Blundell  <philb@gnu.org>
    591 
    592         * configure: Regenerate.
    593 
    594 2001-03-16  Alan Modra  <alan@linuxcare.com.au>
    595 
    596         * elf32-hppa.c (elf32_hppa_link_hash_entry): Add maybe_pic_call.
    597         (hppa_link_hash_newfunc): Init it.
    598         (hppa_type_of_stub): Only use non-PIC to PIC call stub if caller
    599         section appears to be non-PIC.
    600         (final_link_relocate): Likewise.
    601         (elf32_hppa_adjust_dynamic_symbol): Set maybe_pic_call for any
    602         possible candidate function, and set pic_call for those that will
    603         only have a .plt entry for the PIC call stub.
    604         (hppa_handle_PIC_calls): Set maybe_pic_call.
    605 
    606         * elf32-hppa.c: Correct field selector in stub comments.
    607         (clobber_millicode_symbols): Formatting fix.
    608 
    609 2001-03-11  Philip Blundell  <philb@gnu.org>
    610 
    611         * configure.in: Set version to 2.11.
    612 
    613         * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT
    614         entries that could serve as a definition for a weak symbol.
    615 
    616 2001-03-07  Andreas Jaeger  <aj@suse.de>
    617 
    618         * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of
    619         some relocation values.
    620 
    621 2001-02-28  Andreas Jaeger  <aj@suse.de>
    622 
    623         * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation
    624         to addend.
    625 
    626 2001-02-26  Andreas Jaeger  <aj@suse.de>
    627 
    628         * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries.
    629 
    630 2001-02-21  David Mosberger  <davidm@hpl.hp.com>
    631 
    632         * cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for
    633         C8 said "1" instead of "8".  Clarify error string for IMM22:
    634         "signed integer" instead of just "integer".
    635 
    636 2001-02-20  Andreas Jaeger  <aj@suse.de>
    637 
    638         * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Don't make
    639         PLT entries that could serve as a definition for a weak symbol.
    640 
    641 2001-02-18  David O'Brien  <obrien@FreeBSD>
    642 
    643         * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat
    644         FreeBSD/i386-CURRENT differently until I can figure out the needed
    645         corefile changes.
    646         * configure: Regenerate.
    647         * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm,
    648         FreeBSD/PowerPC, and FreeBSD/sparc64.
    649 
    650 2001-02-14  Philip Blundell  <pb@futuretv.com>
    651 
    652         From 2001-02-06  H.J. Lu  <hjl@gnu.org>
    653         * bfd/peicode.h (coff_swap_filehdr_in): Remove the e_magic
    654         checking.
    655         (pe_bfd_object_p): Rewrite with external_PEI_DOS_hdr and
    656         external_PEI_IMAGE_hdr.
    657 
    658 2001-02-14  Bo Thorsen  <bo@suse.de>
    659 
    660         * elf64-x86-64.c: Small formatting fixes and rearrangements of code.
    661         (elf64_86_64_size_info): Struct added to fix a problem
    662         with the hashtable string entries.
    663         (elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt.
    664         (elf64_x86_64_size_dynamic_sections): A FIXME removed.
    665         (elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and
    666         remove the FIXME for this.
    667         (elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt
    668         section. Also removed the FIXME for it.
    669         (x86_64_elf_howto_table): Use bfd_elf_generic_reloc.
    670         (ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker.
    671         (elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing.
    672 
    673 2001-02-14  Philip Blundell  <pb@futuretv.com>
    674 
    675         From 2001-02-08  H.J. Lu  <hjl@gnu.org>
    676         * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_32
    677         relocation entries for weak definitions when building DSO with
    678         -Bsymbolic.
    679 
    680 2001-02-13  Richard Henderson  <rth@redhat.com>
    681 
    682         * elfxx-ia64.c (elfNN_ia64_final_link): Set __gp if required
    683         and not user provided.
    684 
    685 2001-02-13  Alan Modra  <alan@linuxcare.com.au>
    686 
    687         * elf32-hppa.c (elf32_hppa_set_gp): Handle weak $global$.  If
    688         $global$ referenced but not defined, set its value here.
    689 
    690 2001-02-09  Bo Thorsen  <bo@suse.de>
    691 
    692         * elf64-x86-64.c (elf64_x86_64_check_relocs): Set .rela.got section
    693         alignment to 3.
    694         (elf64_x86_64_check_relocs): Write R_X86_64_GOTPCREL GOT entry
    695         and relocation.
    696         (elf64_x86_64_relocate_section): Fix formatting.
    697         (elf64_x86_64_relocate_section): Fix addend for relocation of
    698         R_X86_64_(8|16|32|PC8|PC16|PC32).
    699 
    700 Mon Feb 12 17:44:39 CET 2001  Jan Hubicka  <jh@suse.cz>
    701 
    702         * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL.
    703 
    704 2001-02-10  Nick Clifton  <nickc@redhat.com>
    705 
    706         * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC
    707         rel, it will be handled later on.
    708 
    709 2001-02-09  David Mosberger  <davidm@hpl.hp.com>
    710 
    711         * elfxx-ia64.c (is_unwind_section_name): New function.  Returns
    712         true if section name is an unwind table section name.
    713         (elfNN_ia64_additional_program_headers): Count each unwind section
    714         separately.
    715         (elfNN_ia64_modify_segment_map): Install one unwind program header
    716         for each unwind separate section.  Note: normally the linker
    717         script merges the unwind sections that go into a single segment,
    718         so this still generates at most one unwind program header per
    719         segment.
    720 
    721         * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section
    722         name for SHT_IA_64_UNWIND, not just .IA_64.unwind.
    723         (elfNN_ia64_fake_sections): Mark sections with names that start
    724         with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64
    725         unwind section.
    726 
    727         * elfxx-ia64.c (elfNN_ia64_final_write_processing): New function.
    728         Use it to make sh_info in unwind section point to the text section
    729         it applies to.
    730 
    731 2001-02-07  Mark Elbrecht  <snowball3@bigfoot.com>
    732 
    733         * coffgen.c (coff_find_nearest_line): If stabs info is successfully
    734         found, do not attempt to find dwarf2 info before returning.
    735 
    736 2001-01-30  Alan Modra  <alan@linuxcare.com.au>
    737 
    738         * elf64-hppa.c (elf64_hppa_elf_get_symbol_type): New function.
    739         (elf_backend_get_symbol_type): Define.
    740         (elf64_hppa_object_p): Set architecture and machine from elf
    741         header flags.
    742 
    743 2001-01-30  Curtis L. Janssen  <cljanss@ca.sandia.gov>
    744 
    745         * elf64-alpha.c (elf64_alpha_find_nearest_line): Query dwarf2
    746         before mdebug.
    747 
    748 2001-01-26  Richard Henderson  <rth@redhat.com>
    749 
    750         * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Return false
    751         for non-default visibility.
    752         * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise, but
    753         delete ugly macro and replace with pretty function.
    754 
    755 2001-01-25  Mark Elbrecht  <snowball3@bigfoot.com>
    756 
    757         * coff-go32.c: Update copyright.
    758         * coff-stgo32.c: Likewise.
    759         * coff-go32.c (COFF_LONG_FILENAMES): Define.
    760         * coff-stgo32.c (COFF_LONG_FILENAMES): Likewise.
    761         * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Remove .bss entry.
    762         * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
    763 
    764 2001-01-25  Kazu Hirata  <kazu@hxi.com>
    765 
    766         * bfd-in2.h: Rebuild.
    767         * libbfd.h: Likewise.
    768 
    769 2001-01-23  H.J. Lu  <hjl@gnu.org>
    770 
    771         * bfd-in2.h: Rebuild.
    772 
    773 2001-01-23  H.J. Lu  <hjl@gnu.org>
    774 
    775         * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_buf)
    776         is NULL or PRIV(vms_rec) is outside of the buffer.
    777 
    778 2001-01-23  Kazu Hirata  <kazu@hxi.com>
    779 
    780         * coff64-rs6000.c: Fix formatting.
    781         * coff-arm.c: Likewise.
    782         * coffgen.c: Likewise.
    783         * cofflink.c: Likewise.
    784         * coff-mcore.c: Likewise.
    785         * coff-mips.c: Likewise.
    786         * coff-pmac.c: Likewise.
    787         * coff-ppc.c: Likewise.
    788         * coff-rs6000.c: Likewise.
    789         * elf32.c: Likewise.
    790         * elf32-fr30.c: Likewise.
     4110        * elf32-fr30.c (elf32_frv_relocate_section): Edit comment.
     4111        * elf32-frv.c (elf32_frv_relocate_section): Likewise.
     4112        * elf32-i860.c (elf32_i860_relocate_section): Likewise.
     4113        * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
     4114        * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
     4115        * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
     4116        * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
     4117        * elf-m10200.c (USE_RELA): Don't define.
     4118        * elf-m10300.c: Likewise.
     4119        * elfarm-oabi.c: Likewise.
    7914120        * elf32-i370.c: Likewise.
    792         * elf32-i860.c: Likewise.
    793         * elf32-m32r.c: Likewise.
     4121        * elf32-ip2k.c: Likewise.
    7944122        * elf32-m68k.c: Likewise.
    7954123        * elf32-mcore.c: Likewise.
    7964124        * elf32-ppc.c: Likewise.
     4125        * elf32-s390.c: Likewise.
     4126        * elf32-vax.c: Likewise.
     4127        * elf64-ppc.c: Likewise.
     4128        * elf64-s390.c: Likewise.
     4129        * elf64-x86-64.c: Likewise.
     4130        * elfxx-ia64.c: Likewise.
     4131        * elf32-avr.c (USE_REL): Don't undef.
     4132        * elf32-ip2k.c: Likewise.
     4133
     41342002-07-23  Nick Clifton  <nickc@redhat.com>
     4135
     4136        * elf-bfd.h (struct elf_backend_data): Add new bitfield
     4137        'want_p_paddr_set_to_zero'.
     4138        * elfxx-target.h: Set default value for want_p_paddr_set_to_zero
     4139        to false;
     4140        * elfxx-ia64.c: Set want_p_paddr_set_zero for HPUX target.
     4141        * elf.c (copy_private_bfd_data): Test want_p_paddr_set_zero.
     4142
     41432002-07-23  Gabor Keresztfalvi  <keresztg@mail.com>
     4144
     4145        * nlmcode.h (nlm_swap_auxiliary_headers_out): Swapped the order of
     4146        the MeSsAgEs and CoPyRiGhT tags to make >=NW4.x NLM loaders to
     4147        show the Copyright string.
     4148        Minor formatting tidy ups.
     4149
     41502002-07-23  Nick Clifton  <nickc@redhat.com>
     4151
     4152        * po/fr.po: Updated French translation.
     4153        * po/sv.po: Updated Swedish translation.
     4154
     41552002-07-23  Alan Modra  <amodra@bigpond.net.au>
     4156
     4157        * elflink.h (elf_link_input_bfd): Don't change internal symbols
     4158        when outputting relocs.
     4159
     41602002-07-20  Jason Thorpe  <thorpej@wasabisystems.com>
     4161
     4162        * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only insert
     4163        DT_PLTGOT into the dynamic section if there is a PLT.
     4164
     41652002-07-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     4166
     4167        * elfxx-mips.c (_bfd_mips_elf_discard_info): New function, code from
     4168        elf32-mips.c.
     4169        (_bfd_mips_elf_write_section): Likewise.
     4170        * elfxx-mips.h (_bfd_mips_elf_discard_info): New prototype.
     4171        (_bfd_mips_elf_write_section): Likewise.
     4172        * elf32-mips.c (elf32_mips_discard_info): Move to elfxx-mips.c.
     4173        (elf32_mips_write_section): Likewise.
     4174        * elf64-mips.c (_bfd_mips_elf_ignore_discarded_relocs): Use it.
     4175        (_bfd_mips_elf_write_section): Likewise.
     4176
     41772002-07-19  Alan Modra  <amodra@bigpond.net.au>
     4178
     4179        * elfxx-ia64.c: (elfNN_ia64_modify_segment_map): Properly scan
     4180        PT_IA_64_UNWIND segments for a given section.
     4181
     41822002-07-17  H.J. Lu <hjl@gnu.org>
     4183
     4184        * Makefile.am: Fix a typo.
     4185        * Makefile.in: Regenerate.
     4186
     41872002-07-15  Denis Chertykov  <denisc@overta.ru>
     4188            Frank Ch. Eigler  <fche@redhat.com>
     4189            Ben Elliston  <bje@redhat.com>
     4190            Alan Lehotsky  <alehotsky@cygnus.com>
     4191            John Healy  <jhealy@redhat.com>
     4192            Graham Stott  <grahams@redhat.com>
     4193            Jeff Johnston  <jjohnstn@redhat.com>
     4194
     4195        * Makefile.am: Add support for ip2k.
     4196        * Makefile.in: Regenerate.
     4197        * doc/Makefile.in: Regenerate.
     4198        * archures.c: Add support for ip2k.
     4199        * config.bfd: Add support for ip2k.
     4200        * configure.in: Add support for ip2k.
     4201        * configure: Regenerate.
     4202        * reloc.c: Add support for ip2k.
     4203        * targets.c: Add support for ip2k.
     4204        * bfd-in2.h: Regenerate.
     4205        * libbfd.h: Regenerate.
     4206        * cpu-ip2k.c: New file.
     4207        * elf32-ip2k.c: New file.
     4208
     42092002-07-17  Ian Rickards  <irickard@arm.com>
     4210
     4211        * dwarf2.c (concat_filename): If we can't establish the directory
     4212        just return the filename.
     4213
     42142002-07-16  Moritz Jodeit  <moritz@jodeit.org>
     4215
     4216        * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Correct order of memset args.
     4217
     42182002-07-16  Alan Modra  <amodra@bigpond.net.au>
     4219
     4220        * elflink.h: Formatting fixes, tidy prototypes.
     4221        (elf_link_assign_sym_version): Move common code out of loop.
     4222
     42232002-07-16  Alan Modra  <amodra@bigpond.net.au>
     4224
     4225        * elflink.h (elf_link_input_bfd): Don't call reloc_emitter when
     4226        reloc section size is zero.  Correct reloc output location.
     4227
     42282002-07-16  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     4229
     4230        * elf-hppa.h (elf_hppa_reloc_final_type): Use R_PARISC_PCREL16F as
     4231        the final type for the e_fsel selector when generating PA2.0W code.
     4232        (elf_hppa_relocate_insn): Provide support for PA2.0W 16-bit format 1
     4233        relocations.
     4234
     42352002-07-14  H.J. Lu <hjl@gnu.org>
     4236
     4237        * elflink.h (elf_link_assign_sym_version): Hide the default
     4238        definition if there is a hidden versioned definition.
     4239
     42402002-07-12  Hans-Peter Nilsson  <hp@axis.com>
     4241
     4242        * elf32-cris.c (cris_elf_relocate_section): Drop nonsensical
     4243        dynamic reference test in assertion when initializing GOT with
     4244        static contents.  Just assert that there are either no dynamic
     4245        sections, the symbol is defined in the regular objects or that the
     4246        symbol is undef weak.  Tweak comment.
     4247        (elf_cris_finish_dynamic_symbol): Emit .got reloc for a program
     4248        only if the symbol isn't defined in the program and isn't undef
     4249        weak.
     4250        (elf_cris_adjust_dynamic_symbol): Simplify condition for getting
     4251        rid of PLT entry: only do it if the symbol isn't defined in a DSO.
     4252        When doing so, clear ELF_LINK_HASH_NEEDS_PLT.  Tweak comments.
     4253        (elf_cris_discard_excess_program_dynamics): Don't consider
     4254        ELF_LINK_HASH_REF_DYNAMIC when omitting .got runtime relocs.
     4255
     42562002-07-11  Alan Modra  <amodra@bigpond.net.au>
     4257
     4258        * elf32-i386.c (elf_i386_relocate_section): Don't complain about
     4259        unresolved debugging relocs in dynamic applications.
     4260        * elf32-s390.c (elf_s390_relocate_section): Likewise.
     4261        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
     4262        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
     4263        * elf64-s390.c (elf_s390_relocate_section): Likewise.
     4264        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
     4265        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
     4266
     42672002-07-10  Alan Modra  <amodra@bigpond.net.au>
     4268
     4269        * elf64-ppc.c (ONES): Define.
     4270        (ppc64_elf_howto_table): Use ONES here to avoid warnings.  Fill in
     4271        missing src_mask fields.  Tweak R_PPC64_NONE, R_PPC64_COPY.  Fill
     4272        in missing dst_mask fields on R_PPC64_PLT32, R_PPC64_PLTREL32.
     4273
     4274        * elf64-ppc.c (ppc64_elf_get_symbol_info): Delete.
     4275        (ppc64_elf_set_private_flags): Delete.
     4276        (ppc64_elf_section_from_shdr): Delete.
     4277        (ppc64_elf_merge_private_bfd_data): Remove flag checking/merging code.
     4278        (ppc64_elf_fake_sections): Delete.
     4279        (bfd_elf64_bfd_set_private_flags): Don't define.
     4280        (bfd_elf64_get_symbol_info): Likewise.
     4281        (elf_backend_section_from_shdr): Likewise.
     4282        (elf_backend_fake_sections): Likewise.
     4283
     42842002-07-10  Marco Walther  <Marco.Walther@sun.com>
     4285
     4286        * elf.c: (assign_section_numbers) Set sh_entsize for .stab only
     4287        when not already set.
     4288        * elf64-sparc.c: (sparc64_elf_fake_sections): New function.
     4289        (elf_backend_fake_sections): Define.
     4290
     42912002-07-10  Alan Modra  <amodra@bigpond.net.au>
     4292
     4293        * merge.c (_bfd_merge_section): Remove redundant output_section check.
     4294        Formatting.
     4295        (_bfd_merge_sections): Don't set SEC_EXCLUDE on unused sections.
     4296
     42972002-07-09  Hans-Peter Nilsson  <hp@axis.com>
     4298
     4299        * elf32-cris.c (cris_elf_relocate_section): Move sanity-check for
     4300        NULL sym_hashes to just before use.
     4301        <case R_CRIS_32_GOTREL>: In test for local symbol, accept also
     4302        symbol with non-default visibility.
     4303        <case R_CRIS_32_GOTREL, case R_CRIS_32_PLT_GOTREL>: Ditto.
     4304        <case R_CRIS_8_PCREL, case R_CRIS_16_PCREL, case R_CRIS_32_PCREL>:
     4305        Ditto.
     4306        (cris_elf_gc_sweep_hook): Only decrease h->plt.refcount for
     4307        symbol with non-default visibility.
     4308        (cris_elf_check_relocs): At tests for local symbol before
     4309        increasing h->plt.refcount, also check for non-default
     4310        visibility.  Ditto when checking for local symbol to eliminate
     4311        pc-relative runtime relocs.
     4312
     43132002-07-08  Alan Modra  <amodra@bigpond.net.au>
     4314
     4315        * elf.c: Formatting.
     4316        (IS_SOLARIS_PT_INTERP): Add p_paddr and p_memsz checks.
     4317        (INCLUDE_SECTION_IN_SEGMENT): Remove IS_SOLARIS_PT_INTERP.
     4318        (copy_private_bfd_data): Set p_vaddr on broken Solaris PT_INTERP
     4319        segments.
     4320
     43212002-07-07  Mark Mitchell  <mark@codesourcery.com>
     4322            Alan Modra  <amodra@bigpond.net.au>
     4323
     4324        * cofflink.c (_bfd_coff_final_link): On PE COFF systems, take into
     4325        account the impact of relocation count overflow when computing
     4326        section offsets.
     4327        * coffcode.h (coff_write_relocs): Use obj_pe when deciding whether
     4328        or not to apply the PE COFF reloc overflow handling.  Fix a
     4329        fencepost error in deciding whether or not to use that technique.
     4330
     43312002-07-07  Alan Modra  <amodra@bigpond.net.au>
     4332
     4333        * elf-bfd.h (struct elf_reloc_cookie): Remove locsym_shndx,
     4334        change type of locsyms.
     4335        (bfd_elf_get_elf_syms): Declare.
     4336        * elf.c (bfd_elf_get_elf_syms): New function.
     4337        (group_signature): Use bfd_elf_get_elf_syms.
     4338        (bfd_section_from_r_symndx): Likewise.
     4339        * elfcode.h (elf_slurp_symbol_table): Likewise.
     4340        * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
     4341        (elf_link_add_object_symbols): Likewise.  Reorganise to increase
     4342        locality of various data structures.  Properly free internal relocs.
     4343        (elf_bfd_final_link): Properly free internal relocs.
     4344        (elf_link_check_versioned_symbol): Use bfd_elf_get_elf_syms.
     4345        (elf_link_input_bfd): Likewise.
     4346        (elf_gc_mark): Likewise.  Properly free internal relocs.
     4347        (elf_gc_sweep): Properly free internal relocs.
     4348        (elf_reloc_symbol_deleted_p): No need to swap syms in.
     4349        (elf_bfd_discard_info): Use bfd_elf_get_elf_syms.  Properly free
     4350        internal relocs.
     4351        * elf-m10200.c (mn10200_elf_relax_section): Use bfd_elf_get_elf_syms.
     4352        Properly free possibly cached info.
     4353        (mn10200_elf_relax_delete_bytes): Remove symbol swapping code.
     4354        (mn10200_elf_symbol_address_p): Pass in internal syms.  Remove
     4355        symbol swapping code.
     4356        (mn10200_elf_get_relocated_section_contents): Use bfd_elf_get_elf_syms.
     4357        Properly free possibly cached info.
     4358        * elf-m10300.c (mn10300_elf_relax_section): As above for elf-m10200.c.
     4359        (mn10300_elf_relax_delete_bytes): Likewise.
     4360        (mn10300_elf_symbol_address_p): Likewise.
     4361        (mn10300_elf_get_relocated_section_contents): Likewise.
     4362        * elf32-h8300.c (elf32_h8_relax_section): As above for elf-m10200.c.
     4363        (elf32_h8_relax_delete_bytes): Likewise.
     4364        (elf32_h8_symbol_address_p): Likewise.
     4365        (elf32_h8_get_relocated_section_contents): Likewise.
     4366        * elf32-m32r.c (m32r_elf_relax_section): As above for elf-m10200.c.
     4367        (m32r_elf_relax_delete_bytes): Likewise.
     4368        (m32r_elf_get_relocated_section_contents): Likewise.
     4369        * elf32-sh.c (sh_elf_reloc_loop): Free section contents using
     4370        elf_section_data to determine whether cached.
     4371        (sh_elf_relax_section): As above for elf-m10200.c.
     4372        (sh_elf_relax_delete_bytes): Likewise.
     4373        (sh_elf_get_relocated_section_contents): Likewise.
     4374        * elf32-xstormy16.c (xstormy16_elf_relax_section): As above.
     4375        * elf64-alpha.c (elf64_alpha_relax_section): As above.  Also delay
     4376        reading of local syms.
     4377        * elf64-mmix.c (mmix_elf_relax_section): Likewise.
     4378        * elf64-sh64.c (sh_elf64_get_relocated_section_contents): As above.
     4379        * elfxx-ia64.c (elfNN_ia64_relax_section): As above.
     4380        * elfxx-mips.c (_bfd_mips_elf_check_relocs): Properly free internal
     4381        relocs.
     4382        * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Properly
     4383        free internal relocs and section contents.  Don't read symbols.
     4384        * elf32-hppa.c (get_local_syms): Use bfd_elf_get_elf_syms.
     4385        (elf32_hppa_size_stubs): Don't free local syms.
     4386        * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Delay
     4387        reading of local syms.  Use bfd_elf_get_elf_syms.  Properly free
     4388        possibly cached info.
     4389        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
     4390        * elf64-hppa.c (elf64_hppa_check_relocs): Use bfd_elf_get_elf_syms.
     4391        * elf64-ppc.c (struct ppc_link_hash_table): Delete bfd_count and
     4392        all_local_syms.
     4393        (get_local_syms): Delete function.
     4394        (edit_opd): Use bfd_elf_get_elf_syms.  Free on error exit.  Cache
     4395        on exit.
     4396        (ppc64_elf_size_stubs): Use bfd_elf_get_elf_syms.  Free/cache on exit.
     4397
     43982002-07-05  Jim Wilson  <wilson@redhat.com>
     4399
     4400        * syms.c (decode_section_type): New.
     4401        (bfd_decode_symclass): Call decode_section_type.
     4402
     44032002-07-04  Jakub Jelinek  <jakub@redhat.com>
     4404
     4405        * merge.c (_bfd_merged_section_offset): Avoid accessing byte before
     4406        section content start.
     4407        Reported by Michael Schumacher <mike@hightec-rt.com>.
     4408
     44092002-07-04  Alan Modra  <amodra@bigpond.net.au>
     4410
     4411        * section.c (_bfd_strip_section_from_output):  Remove unnecessary
     4412        link order code.  Don't actually remove the output section here;
     4413        Just set a flag for the linker to do so.
     4414        * elflink.c (_bfd_elf_link_renumber_dynsyms): Test for removed
     4415        sections when setting up output section dynsyms.
     4416
     44172002-07-04  Alan Modra  <amodra@bigpond.net.au>
     4418
     4419        * elflink.h (elf_link_add_object_symbols): Revert 1999-09-02 hpux
     4420        fudge.
     4421        * elf.c (bfd_section_from_shdr): Work around broken hpux shared
     4422        libs here instead.
     4423
     44242002-07-02  Martin Schwidefsky  <schwidefsky@de.ibm.com>
     4425
     4426        * elf64-s390.c (create_got_section): Set .got section alignment to
     4427        8 bytes.
     4428        (elf_s390_check_relocs): Set .rela.dyn section alignment to 8 bytes.
     4429
     44302002-07-02  Alan Modra  <amodra@bigpond.net.au>
     4431
     4432        * elf.c (_bfd_elf_reloc_type_class): Fix comment grammar.
     4433
     44342002-07-01  Matt Thomas  <matt@3am-software.com>
     4435
     4436        * elf32-vax.c (elf32_vax_print_private_bfd_data): Change EF_*
     4437        to EF_VAX_*.
     4438
     44392002-07-01  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     4440
     4441        * elfxx-mips.c (ABI_64_P): Fix comment.
     4442        (MIPS_ELF_OPTIONS_SECTION_NAME,MIPS_ELF_STUB_SECTION_NAME): Use the
     4443        new section names for N64 ABI.
     4444        (mips_elf_output_extsym): No special _gp_disp handling for NewABI.
     4445        (mips_elf_calculate_relocation): Code formatting.
     4446        (mips_elf_create_dynamic_relocation): Likewise.
     4447        (_bfd_mips_elf_fake_sections): IRIX6 needs this hack, too.
     4448        (_bfd_mips_elf_size_dynamic_sections): Handle GOT_PAGE for any NewABI.
     4449        (_bfd_mips_elf_relocate_section): No special handling for R_MIPS_64
     4450        in any NewABI.
     4451        (_bfd_mips_elf_finish_dynamic_symbol): No special _gp_disp handling
     4452        for NewABI.
     4453        (_bfd_mips_elf_modify_segment_map): Handle any N64 ABI.
     4454        (_bfd_mips_elf_gc_sweep_hook): NewABI GOT relocs should be handled
     4455        here, too.
     4456
     44572002-07-01  Andreas Schwab  <schwab@suse.de>
     4458
     4459        * elf64-x86-64.c (elf64_x86_64_relocate_section): Only convert
     4460        R_X86_64_64 to R_X86_64_RELATIVE.
     4461
     44622002-07-01  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     4463
     4464        * vaxbsd.c: New BFD backend for VAX BSD and Ultrix.
     4465        * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add new backend.
     4466        Run "make dep-am".
     4467        * config.bfd (vax-*-bsd* | vax-*-ultrix*): Use vaxbsd_vec instead of
     4468        host_aout_vec.
     4469        * configure.in (vaxbsd_vec): Add.
     4470        * targets.c (vaxbsd_vec): Add.
     4471        * Makefile.in: Rebuild.
     4472        * configure: Rebuild.
     4473        * po/SRC-POTFILES.in: Rebuild.
     4474
     44752002-07-01  Alan Modra  <amodra@bigpond.net.au>
     4476
     4477        * elflink.h (elf_gc_mark): Pass in the section whose relocs we are
     4478        examining to gc_mark_hook, rather than the bfd.
     4479        (elf_gc_sections): Adjust.
     4480        * elf-bfd.h (struct elf_backend_data <gc_mark_hook>): Likewise.
     4481        * elf-m10300.c (mn10300_elf_gc_mark_hook): Likewise.
     4482        * elf32-arm.h (elf32_arm_gc_mark_hook): Likewise.
     4483        * elf32-avr.c (elf32_avr_gc_mark_hook): Likewise.
     4484        * elf32-cris.c (cris_elf_gc_mark_hook): Likewise.
     4485        * elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise.
     4486        * elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise.
     4487        * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise.
     4488        * elf32-i386.c (elf_i386_gc_mark_hook): Likewise.
     4489        * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise.
     4490        * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise.
     4491        * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise.
     4492        * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise.
     4493        * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise.
     4494        * elf32-s390.c (elf_s390_gc_mark_hook): Likewise.
     4495        * elf32-sh.c (sh_elf_gc_mark_hook): Likewise.
     4496        * elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise.
     4497        * elf32-v850.c (v850_elf_gc_mark_hook): Likewise.
     4498        * elf32-vax.c (elf_vax_gc_mark_hook): Likewise.
     4499        * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise.
     4500        * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise.
     4501        * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise.
     4502        * elf64-s390.c (elf_s390_gc_mark_hook): Likewise.
     4503        * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
     4504        * elfxx-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise.
     4505        * elfxx-mips.h (_bfd_mips_elf_gc_mark_hook): Likewise.
     4506        * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise.
     4507        * elf32-frv.c (elf32_frv_gc_mark_hook): Likewise.  Also remove
     4508        redundant local sym tests.
     4509        * elf64-ppc.c (struct ppc_link_hash_entry): Add is_entry.
     4510        (link_hash_newfunc): Init is_entry.
     4511        (ppc64_elf_copy_indirect_symbol): Copy is_entry.
     4512        (ppc64_elf_link_hash_table_create): Init all_local_syms.
     4513        (create_linkage_sections): Use bfd_make_section_anyway rather than
     4514        bfd_make_section.
     4515        (ppc64_elf_mark_entry_syms): New function.
     4516        (ppc64_elf_check_relocs): Don't bother testing elf_bad_symtab.  Set
     4517        up opd entry to function section map.
     4518        (ppc64_elf_gc_mark_hook): Special case opd section relocs, and
     4519        relocs that reference the opd section.
     4520        (edit_opd): New function.
     4521        (ppc64_elf_size_dynamic_sections): Call get_local_syms and edit_opd.
     4522        (ppc64_elf_setup_section_lists): Don't calculate htab->bfd_count here.
     4523        (get_local_syms): Do so here.  Exit if we already have local syms.
     4524        Remove bogus comment imported from elf32-hppa.c.  Don't attempt to
     4525        read local syms on non-ELF input.
     4526        (ppc64_elf_size_stubs): Call _bfd_elf64_link_read_relocs rather
     4527        than duplicating it's function here.  Adjust free of internal
     4528        relocs to suit.
     4529        (ppc64_elf_relocate_section): Adjust local syms in opd section.
     4530        * elf64-ppc.h (ppc64_elf_mark_entry_syms): Declare.
     4531        * elf32-hppa.c (elf32_hppa_size_stubs): Call
     4532        _bfd_elf32_link_read_relocs rather than duplicating it's function
     4533        here.  Adjust free of internal relocs to suit.
     4534
     45352002-07-01  Andreas Jaeger  <aj@suse.de>
     4536
     4537        * elf64-x86-64.c (elf64_x86_64_check_relocs): Certain relocations
     4538        are not allowed in shared libs code, enforce -fPIC.
     4539
     45402002-06-29  Hans-Peter Nilsson  <hp@bitrange.com>
     4541
     4542        * mmo.c (mmo_write_loc_chunk): Don't eliminate leading and
     4543        trailing zero-sequences when there's previous left-over data.
     4544
     45452002-06-27  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     4546
     4547        * elf64-hppa.c (elf64_hppa_reloc_type_class): New function.
     4548        (elf64_hppa_finish_dynamic_sections): Check other_rel_sec, dlt_rel_sec
     4549        and opd_rel_sec in order for starting rela section.  Check _raw_size.
     4550        (elf_backend_reloc_type_class): Define.
     4551
     45522002-06-27  Kevin Buettner <kevinb@redhat.com>
     4553
     4554        * dwarf2.c (decode_line_info): Handle older, non-standard, 64-bit
     4555        DWARF2 formats.
     4556
     45572002-06-27  Alan Modra  <amodra@bigpond.net.au>
     4558
     4559        * cpu-powerpc.c: Comment on ordering of arch_info.
     4560        * elf32-ppc.c (ppc_elf_object_p): New function.
     4561        (elf_backend_object_p): Define.
     4562        * elf64-ppc.c (ppc64_elf_object_p): New function.
     4563        (elf_backend_object_p): Define.
     4564
     45652002-06-26  Jason Thorpe  <thorpej@wasabisystems.com>
     4566
     4567        * configure.in (vax-*-netbsd*): Set COREFILE to netbsd-core.lo.
     4568        * configure: Regenerate.
     4569
     45702002-06-25  Jason Eckhardt  <jle@rice.edu>
     4571
     4572        * dwarf2.c (decode_line_info): Check unit->addr_size
     4573        to read in the proper number of prologue bytes.
     4574
     45752002-06-25  Nick Clifton  <nickc@cambridge.redhat.com>
     4576
     4577        * config.bfd (powerpc-*-aix5*): Only create a selvecs for
     4578        aix5coff64_vec if 64-bit bfd support has been enabled.
     4579        (powerpc64-*-aix5*): Only define if 64-bit bfd support has
     4580        been enabled.
     4581
     4582        * targets.c (_bfd_target_vector[]): Only include
     4583        aix5coff64_vec if 64-bit bfd support has been enabled.
     4584
     45852002-06-25  Alan Modra  <amodra@bigpond.net.au>
     4586
     4587        * elf64-ppc.c (ppc_add_stub): Replace strcpy/strncpy with memcpy.
     4588        * elf32-hppa.c (hppa_add_stub): Likewise.
     4589        * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise.
     4590        * elflink.h (elf_add_default_symbol): Fix comment typo.
     4591        (elf_add_default_symbol): Replace strcpy and strncpy with memcpy.
     4592        (elf_link_add_object_symbols): Likewise.
     4593        (elf_link_assign_sym_version): Likewise.
     4594        * hash.c (bfd_hash_lookup): Likewise.
     4595        * linker.c (_bfd_generic_link_add_one_symbol): Likewise.
     4596        * section.c (bfd_get_unique_section_name): Likewise.
     4597        * syms.c (_bfd_stab_section_find_nearest_line): Likewise.
     4598        * elf.c (_bfd_elf_make_section_from_phdr): Likewise.
     4599        (assign_section_numbers): Likewise.
     4600        (_bfd_elfcore_make_pseudosection): Likewise.
     4601        (elfcore_grok_lwpstatus): Likewise.
     4602        (elfcore_grok_win32pstatus): Likewise.
     4603        (elfcore_write_note): Constify input params.  Use PTR instead of
     4604        void *.  Include terminating NUL in namesz.  Correct padding.
     4605        Support NULL "name" param.  Use memcpy instead of strcpy.
     4606        (elfcore_write_prpsinfo): Constify input params.
     4607        (elfcore_write_prstatus): Likewise.  Use PTR instead of void *.
     4608        (elfcore_write_lwpstatus): Likewise.
     4609        (elfcore_write_pstatus): Likewise.
     4610        (elfcore_write_prfpreg): Likewise.
     4611        (elfcore_write_prxfpreg): Likewise.
     4612        * elf-bfd.h (elfcore_write_note): Update declaration.
     4613        (elfcore_write_prpsinfo): Likewise.
     4614        (elfcore_write_prstatus): Likewise.
     4615        (elfcore_write_pstatus): Likewise.
     4616        (elfcore_write_prfpreg): Likewise.
     4617        (elfcore_write_prxfpreg): Likewise.
     4618        (elfcore_write_lwpstatus): Likewise.
     4619
     46202002-06-25  Jason Eckhardt  <jle@rice.edu>
     4621
     4622        * ecoff.c (ecoff_set_symbol_info): Set BSF_FUNCTION for
     4623        symbols of type stProc and stStaticProc.
     4624
     46252002-06-25  Nick Clifton  <nickc@redhat.com>
     4626
     4627        * ecoff.c: VArious formatting fixes.
     4628
     46292002-06-25  Alan Modra  <amodra@bigpond.net.au>
     4630
     4631        * coff-rs6000.c (xcoff_generate_rtinit): Fix typo.
     4632
     46332002-06-25  Alan Modra  <amodra@bigpond.net.au>
     4634
     4635        * aout-adobe.c: Don't compare against "true" or "false.
     4636        * aout-target.h: Likewise.
     4637        * aoutx.h: Likewise.
     4638        * archive.c: Likewise.
     4639        * bout.c: Likewise.
     4640        * cache.c: Likewise.
     4641        * coff-a29k.c: Likewise.
     4642        * coff-alpha.c: Likewise.
     4643        * coff-i386.c: Likewise.
     4644        * coff-mips.c: Likewise.
     4645        * coff-or32.c: Likewise.
     4646        * coff64-rs6000.c: Likewise.
     4647        * coffcode.h: Likewise.
     4648        * coffgen.c: Likewise.
     4649        * cpu-ns32k.c: Likewise.
     4650        * ecoff.c: Likewise.
     4651        * ecofflink.c: Likewise.
     4652        * elf.c: Likewise.
     4653        * elf32-arm.h: Likewise.
     4654        * elf32-cris.c: Likewise.
     4655        * elf32-d30v.c: Likewise.
     4656        * elf32-i386.c: Likewise.
     4657        * elf32-mcore.c: Likewise.
     4658        * elf32-ppc.c: Likewise.
    7974659        * elf32-sh.c: Likewise.
     4660        * elf32-sh64.c: Likewise.
    7984661        * elf32-v850.c: Likewise.
    7994662        * elf64-alpha.c: Likewise.
    800         * elf64-sparc.c: Likewise.
    801         * elflink.c: Likewise.
    802         * elflink.h: Likewise.
    803         * elf-m10200.c: Likewise.
    804         * elf-m10300.c: Likewise.
    805         * elfxx-ia64.c: Likewise.
    806 
    807         * aoutx.h: Fix formatting.
    808         * bfd.c: Likewise.
    809         * bfd-in2.h: Likewise.
    810         * bfd-in.h: Likewise.
    811         * cpu-i386.c: Likewise.
    812         * cpu-m68hc11.c: Likewise.
    813         * dwarf2.c: Likewise.
    814         * elf64-x86-64.c: Likewise.
    815         * format.c: Likewise.
    816         * freebsd.h: Likewise.
    817         * hash.c: Likewise.
    818         * hp300hpux.c: Likewise.
    819         * hppabsd-core.c: Likewise.
    820         * hpux-core.c: Likewise.
    821 
    822 2001-01-22  Bo Thorsen  <bo@suse.de>
    823 
    824         * elf64-x86-64.c: Added PIC support for X86-64.
    825         (elf64_x86_64_link_hash_newfunc): Function added.
    826         (elf64_x86_64_link_hash_table_create): Likewise.
    827         (elf64_x86_64_check_relocs): Likewise.
    828         (elf64_x86_64_gc_mark_hook): Likewise.
    829         (elf64_x86_64_gc_sweep_hook): Likewise.
    830         (elf64_x86_64_adjust_dynamic_symbol): Likewise.
    831         (elf64_x86_64_size_dynamic_sections): Likewise.
    832         (elf64_x86_64_discard_copies): Likewise.
    833         (elf64_x86_64_finish_dynamic_symbol): Likewise.
    834         (elf64_x86_64_finish_dynamic_sections): Likewise.
    835         (elf64_x86_64_relocate_section): Add relocation of PIC sections.
    836 
    837 2001-01-21  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
    838 
    839         * Makefile.am (install-data-local): Make use of $(DESTDIR).
    840         * Makefile.in: Regenerate.
    841 
    842 2001-01-21  Kazu Hirata  <kazu@hxi.com>
    843 
    844         * coff-a29k.c: Fix formatting.
    845 
    846 2001-01-19  H.J. Lu  <hjl@gnu.org>
    847 
    848         * elf32-i386.c (elf_i386_check_relocs): Report files with bad
    849         relocation section names.
    850         (elf_i386_relocate_section): Report files with bad relocation
    851         section names and return false.
    852 
    853 2001-01-17  Bo Thorsen  <bo@suse.de>
    854 
    855         * targets.c: Alphabetize list of xvecs.
    856 
    857 2001-01-14  Alan Modra  <alan@linuxcare.com.au>
    858 
    859         * config.bfd: Add linux target variant for elfxx-hppa.
    860         * configure.in: Recognize bfd_elf32_hppa_linux_vec and
    861         bfd_elf64_hppa_linux_vec.
    862         * configure: Regenerate.
    863         * elf64-hppa.c: Include elf64-target.h again to support linux
    864         target variant.
    865         (elf64_hppa_post_process_headers): Set ELFOSABI_LINUX for linux.
    866         * elf32-hppa.c: Include elf32-target.h again to support linux
    867         target variant.
    868         (elf32_hppa_post_process_headers): New function.
    869         (elf_backend_post_process_headers): Define.
    870         * targets.c (bfd_target_vector): Add bfd_elf64_hppa_linux_vec and
    871         bfd_elf32_hppa_linux_vec.
    872 
    873         * elf32-hppa.c (elf32_hppa_link_hash_table): Add text_segment_base,
    874         and data_segment_base fields.
    875         (elf32_hppa_link_hash_table_create ): Init them.
    876         (elf32_hppa_check_relocs): Update comments.
    877         (hppa_record_segment_addr): New function.
    878         (elf32_hppa_relocate_section): Call it.
    879         (final_link_relocate): Handle R_PARISC_SEGREL32.
    880         (elf32_hppa_final_link): New function.
    881         (bfd_elf32_bfd_final_link): Define to call it.
    882         (hppa_unwind_entry_compare): New function.
    883         * cache.c (bfd_open_file): Create files in write+read mode.
    884 
    885         * elf-hppa.h (elf_hppa_howto_table): Set bitsize value for
    886         SEGREL32 and numerous other relocs.  Change duplicate
    887         R_PARISC_NONE relocs to R_PARISC_UNIMPLEMENTED.
    888 
    889         * opncls.c (bfd_fdopenr): Add parens like the comment says around
    890         O_ACCMODE.
    891 
    892         * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Don't create
    893         .plt entries for DT_INIT and DT_FINI.
    894         (elf32_hppa_finish_dynamic_sections): Remove special handling of
    895         DT_INIT and DT_FINI.
    896 
    897         * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Use 16-bit
    898         offsets for stub .plt access if wide mode.  Check offset in range.
    899 
    900 2001-01-13  Nick Clifton  <nickc@redhat.com>
    901 
    902         * elf32-fr30.c (fr30_elf_howto_table): Remove spurious blank
    903         line.
    904 
    905         * coffcode.h (coff_canonicalize_reloc): Remove spurious blank
    906         line.
    907 
    908 2001-01-12  Alan Modra  <alan@linuxcare.com.au>
    909 
    910         * configure.in ([bfd_elf64_x86_64_vec]): Set target64.
    911         * configure: Regenerate.
    912 
    913 2001-01-11  Peter Targett  <peter.targett@arccores.com>
    914 
    915         * bfd-in2.h (bfd_architecture): Add bfd_mach_arc_5,
    916         bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8 for ARC variants.
    917         * cpu-arc.c (arch_info_struct): Add entries for variants.
    918         (bfd_arc_arch) Set default to bfd_mach_arc_5.
    919         (arc_get_mach) Don't assume machine names prefixed arc- before
    920         testing.
    921         * elf32-arc.c (arc_elf_object_p): Set machine number based on new
    922         selections.
    923         (arc_elf_final_write_processing) Likewise.
    924         (ELF_MACHINE_CODE) Use EM_ARC.
    925 
    926 2001-01-10  Nick Clifton  <nickc@redhat.com>
    927 
    928         * coff-arm.c (LOCAL_LABEL_PREFIX): Change definition to "".
    929 
    930 2001-01-07  Philip Blundell  <philb@gnu.org>
    931 
    932         * README: Replace `bug-gnu-utils@gnu.org' with
    933         `bug-binutils@gnu.org'.
    934 
    935 2001-01-04  Kazu Hirata  <kazu@hxi.com>
    936 
    937         * som.c: Fix formatting.
    938 
    939 2001-01-03  Kazu Hirata  <kazu@hxi.com>
    940 
    941         * ecoffswap.h: Fix formatting.
    942         * elf-bfd.h: Likewise.
    943         * elfarm-nabi.c: Likewise.
    944         * elfarm-oabi.c: Likewise.
     4663        * elf64-sh64.c: Likewise.
    9454664        * elfcode.h: Likewise.
    9464665        * elfcore.h: Likewise.
    947         * elflink.c: Likewise.
    9484666        * elflink.h: Likewise.
    949         * elfxx-ia64.c: Likewise.
    950         * elfxx-target.h: Likewise.
    951         * libbfd.c: Likewise
     4667        * elfxx-mips.c: Likewise.
     4668        * i386os9k.c: Likewise.
     4669        * ieee.c: Likewise.
     4670        * libbfd.c: Likewise.
    9524671        * linker.c: Likewise.
    953         * lynx-core.c: Likewise.
    954 
    955 2001-01-02  Kazu Hirata  <kazu@hxi.com>
    956 
    957         * pc532-mach.c: Fix formatting.
    958         * pe-arm.c: Likewise.
    959         * pe-i386.c: Likewise.
    960         * pe-mips.c: Likewise.
    961         * pe-ppc.c: Likewise.
    962         * pe-sh.c: Likewise.
    963         * pei-mips.c: Likewise.
    964         * pei-sh.c: Likewise.
    965         * peicode.h: Likewise.
    966         * ppcboot.c: Likewise.
    967         * ptrace-core.c: Likewise.
    968 
    969 2001-01-01  Kazu Hirata  <kazu@hxi.com>
    970 
    971         * reloc.c: Fix formatting.
    972         * riscix.c: Likewise.
    973         * rs6000-core.c: Likewise.
    974         * xcoff-target.h: Likewise.
    975 
    976 2000-12-29  Hans-Peter Nilsson  <hp@bitrange.com>
    977 
    978         * elfcode.h (elf_object_p): Also restore the bfd mach field on
    979         error, by calling bfd_default_set_arch_mach with incoming
    980         values.
    981 
    982 2000-12-26  Kazu Hirata  <kazu@hxi.com>
    983 
    984         * vaxnetbsd.c: Fix formatting.
    985         * versados.c: Likewise.
    986         * vms-gsd.c: Likewise.
    987         * vms-hdr.c: Likewise.
    988         * vms-misc.c: Likewise.
    989 
    990 2000-12-25  Alexandre Oliva  <aoliva@redhat.com>
    991 
    992         * archive.c (coff_write_armap): Don't write more than symbol_count
    993         `archive_member_file_ptr's.
    994 
    995 2000-12-25  Kazu Hirata  <kazu@hxi.com>
    996 
    997         * vms-tir.c: Fix formatting.
    998 
    999 2000-12-23  Kazu Hirata  <kazu@hxi.com>
    1000 
    1001         * vms.c: Fix formatting.
    1002         * vms.h: Likewise.
    1003 
    1004 2000-12-21  Santeri Paavolainen <santtu@ssh.com>
    1005 
    1006         * vms-hdr.c: Include alloca.h if HAVE_ALLOCA_H is defined.
    1007 
    1008         * peicode.h (pe_ILF_object_p): Add const to import of TARGET_LITTLE_SYM.
    1009 
    1010         * elf32-m32r.c (m32r_elf_generic_reloc): Add cast to avoid (void *)
    1011         arithmetic.
    1012 
    1013         * elf32-fr30.c: Add casts to avoid (void *) arithmetic.
    1014 
    1015         * coffcode.h (styp_to_sec_flags): Add empty statement after label.
    1016 
    1017 2000-12-21  Richard Sandiford  <rsandifo@redhat.com>
    1018 
    1019         * libbfd.c (bfd_get_bits): Added
    1020         (bfd_put_bits): Likewise
    1021         * bfd-in.h: Declared the above.
    1022         * bfd-in2.h: Regenerated.
    1023 
    1024 2000-12-20  Kazu Hirata  <kazu@hxi.com>
    1025 
    1026         * targets.c: Fix formatting.
    1027         * tekhex.c: Likewise.
    1028         * trad-core.c: Likewise.
    1029 
    1030 2000-12-19  Kazu Hirata  <kazu@hxi.com>
    1031 
    1032         * sco5-core.c: Fix formatting.
    1033         * section.c: Likewise.
    1034         * sparclinux.c: Likewise.
    1035         * sparclynx.c: Likewise.
    1036         * sparcnetbsd.c: Likewise.
    1037         * srec.c: Likewise.
    1038         * stabs.c: Likewise.
    1039         * stab-syms.c: Likewise.
    1040         * sunos.c: Likewise.
    1041         * syms.c: Likewise.
    1042         * sysdep.h: Likewise.
    1043 
    1044 2000-12-18  Nick Clifton  <nickc@redhat.com>
    1045 
    1046         * coff-arm.c (EXTRA_S_FLAGS): Only define if not already
    1047         defined.
    1048         * epoc-pe-arm.c (EXTRA_S_FLAGS): Define.
    1049         * epoc-pei-arm.c (EXTRA_S_FLAGS): Define.
    1050 
    1051 2000-12-18  Nick Clifton  <nickc@redhat.com>
    1052 
    1053         * vms-misc.c (_bfd_vms_get_record): Add default case to
    1054         file_format switch.
    1055 
    1056 2000-12-15  Miloslav Trmac <mitr@volny.cz>
    1057 
    1058         * elfcore.h (elf_core_file_p): Move to the start of the program
    1059         headers before attempting to read them.
    1060 
    1061 2000-12-14  Kazu Hirata  <kazu@hxi.com>
    1062 
    1063         * peigen.c: Fix formatting.
    1064         * som.c: Likewise.
    1065         * som.h: Likewise.
    1066 
    1067 2000-12-13  Kazu Hirata  <kazu@hxi.com>
    1068 
    1069         * peigen.c: Fix formatting.
    1070 
    1071 2000-12-12  Jim Wilson  <wilson@redhat.com>
    1072 
    1073         *  elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *.
    1074 
    1075 2000-12-08  Mark Salter  <msalter@redhat.com>
    1076 
    1077         * binary.c (binary_set_section_contents): Ignore sections
    1078         with zero size.
    1079 
    1080 2000-12-12  Kazu Hirata  <kazu@hxi.com>
    1081 
    1082         * m68klinux.c: Fix formatting.
    1083         * m68knetbsd.c: Likewise.
    1084         * mipsbsd.c: Likewise.
    1085         * netbsd-core.c: Likewise.
    1086         * netbsd.h: Likewise.
    1087         * newsos3.c: Likewise.
     4672        * mmo.c: Likewise.
    10884673        * nlm32-alpha.c: Likewise.
    10894674        * nlm32-i386.c: Likewise.
     
    10914676        * nlm32-sparc.c: Likewise.
    10924677        * nlmcode.h: Likewise.
    1093         * nlmswap.h: Likewise.
    1094         * nlm-target.h: Likewise.
     4678        * oasys.c: Likewise.
     4679        * pdp11.c: Likewise.
     4680        * peicode.h: Likewise.
     4681        * reloc.c: Likewise.
     4682        * som.c: Likewise.
     4683        * srec.c: Likewise.
     4684        * tekhex.c: Likewise.
     4685        * vms.c: Likewise.
     4686        * xcofflink.c: Likewise.
     4687        * elf64-sparc.c: Edit comment to not use "== false".
     4688
     4689        * aoutf1.h: Don't use "? true : false".
     4690        * ecoff.c: Likewise.
     4691        * format.c: Likewise.
     4692        * ieee.c: Likewise.
     4693        * linker.c: Likewise.
     4694        * mmo.c: Likewise.
     4695        * oasys.c: Likewise.
     4696
     46972002-06-23  H.J. Lu  <hjl@gnu.org>
     4698
     4699        * elflink.h (elf_link_add_archive_symbols): For the default
     4700        version, check references with only one `@' first.
     4701
     47022002-06-23  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     4703
     4704        * elf64-hppa.c (elf64_hppa_mark_milli_and_exported_functions): New
     4705        function.
     4706        (allocate_global_data_dlt):  Don't add millicode symbols to dynamic
     4707        symbol table.
     4708        (allocate_global_data_opd, allocate_dynrel_entries): Likewise.
     4709        (elf64_hppa_size_dynamic_sections): Revise to use
     4710        elf64_hppa_mark_milli_and_exported_functions.
     4711        (elf64_hppa_finish_dynamic_symbol): Remove code to keep millicode
     4712        symbols out of dynamic symbol table.
     4713
     47142002-06-23  Alan Modra  <amodra@bigpond.net.au>
     4715
     4716        * Makefile.in: Regenerate.
     4717        * libbfd.h: Regenerate.
     4718        * bfd-in2.h: Regenerate.
     4719        * configure: Regenerate.
     4720        * po/SRC-POTFILES.in: Regenerate.
     4721
     4722        * elflink.h: Comment typo fixes.
     4723
     47242002-06-23  H.J. Lu  <hjl@gnu.org>
     4725
     4726        * elf-bfd.h (elf_link_loaded_list): New structure.
     4727        (elf_link_hash_table): Add "loaded".
     4728        * elf.c (_bfd_elf_link_hash_table_init): Initialize "loaded".
     4729        * elflink.h (elf_link_check_versioned_symbol): New function.
     4730        (elf_link_output_extsym): Call elf_link_check_versioned_symbol.
     4731
     47322002-06-19  Nick Clifton  <nickc@cambridge.redhat.com>
     4733
     4734        * elflink.h (size_dynamic_sections): If the target does not
     4735        support an ELF style hash table, return true, indicating that
     4736        nothing needed to be done, rather than false, indicating that the
     4737        section's size could not be computed.
     4738
     47392002-06-18  Dave Brolley  <brolley@redhat.com>
     4740
     4741        From Catherine Moore, Michael Meissner, Dave Brolley:
     4742        * po/SRC-POTFILES.in: Add cpu-frv.c and elf32-frv.c
     4743        * targets.c: Support bfd_elf32_frv_vec.
     4744        * reloc.c: Add FRV relocs.
     4745        * configure.in: Add support for bfd-elf32-frv-vec.
     4746        * config.bfd (targ_cpu): Add support for frv-*-elf.
     4747        * archures.c: Add frv arch and machines.
     4748        * Makefile.am (ALL_MACHINES): Add cpu-frv.lo.
     4749        (ALL_MACHINES_CFILES): Add cpu-frv.c.
     4750        (BFD32_BACKENDS): Add elf32-frv.lo.
     4751        (BFD32_BACKENDS_CFILES): Add elf32-frv.c
     4752        (cpu-frv.lo): New target.
     4753        (elf32-frv.lo): New target.
     4754        * cpu-frv.c: New file.
     4755        * elf32-frv.c: New file.
     4756
     47572002-06-18  Jakub Jelinek  <jakub@redhat.com>
     4758
     4759        * elfcode.h (elf_object_p): Sanity check eh_shoff == 0 implies
     4760        e_shnum == 0.
     4761        Only read the first section header if e_shoff is non-zero.
     4762        Don't consider e_shstrndx if there are no sections.
     4763
     47642002-06-17  Tom Rix <trix@redhat.com>
     4765
     4766        * elf32-d10v.c (elf_d10v_howto_table): Change R_D10V_10_PCREL_R,
     4767        R_D10V_10_PCREL_L and R_D10V_18_PCREL to use
     4768        complain_overflow_bitfield.
     4769
     47702002-06-17  Alan Modra  <amodra@bigpond.net.au>
     4771
     4772        * opncls.c (bfd_openr): Remove redundant bfd_set_error.
     4773        (bfd_fdopenr): Likewise.
     4774        (bfd_openstreamr): Likewise.
     4775        (bfd_openw): Likewise.
     4776
     4777        * targets.c: Sort target vecs.
     4778        (_bfd_target_vector): Add aix5coff64_vec, bfd_elf32_sh64_vec,
     4779        bfd_elf32_sh64l_vec, bfd_elf32_sh64lnbsd_vec,
     4780        bfd_elf32_sh64nbsd_vec, bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec,
     4781        bfd_elf64_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec.
     4782        * configure.in: Sort target vecs.  Add m88kmach3_vec.
     4783        * configure: Regenerate.
     4784
     47852002-06-16  Hans-Peter Nilsson  <hp@bitrange.com>
     4786
     4787        * elf64-mmix.c (bpo_reloc_request_sort_fn): Use member
     4788        bpo_reloc_no to break sort order ties, not address of items.
     4789
     47902002-06-16  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     4791
     4792        * elf-hppa.h (elf_hppa_final_link): Fix formatting in comment.
     4793        Skip excluded sections in determing __gp value.
     4794        (elf_hppa_final_link_relocate): Use the symbol's address in
     4795        R_PARISC_FPTR64 relocations that don't need an opd entry.
     4796        * elf64-hppa.c (allocate_dynrel_entries): Simplify code.
     4797        (elf64_hppa_finalize_dynreloc): Likewise.
     4798        (elf64_hppa_size_dynamic_sections): Move comments and fix typo.
     4799        (elf64_hppa_finish_dynamic_symbol): Break up assert.
     4800
     48012002-06-14  Sergey Grigoriev  <serge@leopold.Physik.Uni-Augsburg.DE>
     4802
     4803        * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
     4804        alignment for .bss, .data and .text sections so that sse and sse2
     4805        code will work.
     4806        * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
     4807
     48082002-06013  J"orn Rennecke  <joern.rennecke@superh.com>
     4809
     4810        config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*,
     4811        sh[1234]*-elf*.
     4812
     48132002-06-12  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     4814
     4815        * elflink.h (elf_bfd_final_link): Improve error handling for missing
     4816        dynamic sections.
     4817
     4818        * elf64-hppa.c (allocate_global_data_opd): We don't need an opd entry
     4819        for a symbol that has no output section.
     4820        (allocate_dynrel_entries): Correct comment.
     4821        (elf64_hppa_finalize_dynreloc): Likewise.  Don't create an opd entry
     4822        unless we want one.
     4823        (elf64_hppa_finalize_opd): Prevent segfault if dyn_h is NULL.
     4824        (elf64_hppa_finalize_dlt): Likewise.  Prevent segfault for symbols
     4825        with no section.  Remove unnecessary parentheses.
     4826
     48272002-06-11  Tom Rix  <trix@redhat.com>
     4828
     4829        * coffcode.h (coff_compute_section_file_positions): Add data
     4830        section to AIX loader alignment check.
     4831
     4832        * coff-rs6000.c (_bfd_xcoff_mkobject): Set default text section
     4833        alignment to 4 bytes.
     4834        (_bfd_xcoff_copy_private_bfd_data): Use text and data alignment
     4835        power accessor macro.
     4836        (do_shared_object_padding): Remove invalid assertion.
     4837
     48382002-06-10  Richard Sandiford  <rsandifo@redhat.com>
     4839
     4840        * section.c (_bfd_strip_section_from_output): Set SEC_EXCLUDE
     4841        for removed output sections.
     4842
     48432002-06-10  Geoffrey Keating  <geoffk@redhat.com>
     4844
     4845        * merge.c (merge_strings): Use htab_create_alloc with calloc, not
     4846        htab_alloc.
     4847        * elf-strtab.c (_bfd_elf_strtab_finalize): Likewise.
     4848
     48492002-06-08  H.J. Lu <hjl@gnu.org>
     4850
     4851        * elf.c (copy_private_bfd_data): Don't cast to bfd_size_type to
     4852        work around a long long bug in gcc 2.96 on mips.
     4853
     48542002-06-08  Jason Thorpe  <thorpej@wasabisystems.com>
     4855
     4856        * Makefile.am (BFD32_BACKENDS): Add vax1knetbsd.lo.
     4857        (BFD32_BACKENDS_CFILES): Add vax1knetbsd.c.
     4858        Regenerate dependency lists.
     4859        * Makefile.in: Regenerate.
     4860        * config.bfd (vax-*-netbsdelf*, vax-*-netbsdaout*): Add
     4861        vax1knetbsd_vec to targ_selvecs.
     4862        * configure.in: Add vax1knetbsd_vec.
     4863        * configure: Regenerate.
     4864        * targets.c (_bfd_target_vector): Add vax1knetbsd_vec.
     4865        * vax1knetbsd.c: New file.
     4866        * vaxnetbsd.c: Update copyright years.
     4867        (TARGET_PAGE_SIZE): Set to 0x1000.
     4868        (DEFAULT_MID): Set to M_VAX4K_NETBSD.
     4869
     48702002-06-08  Matt Thomas  <matt@3am-software.com>
     4871
     4872        * libaout.h (enum machine_type): Add M_VAX4K_NETBSD.
     4873
     48742002-06-08  Alan Modra  <amodra@bigpond.net.au>
     4875
     4876        * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Make static.
     4877
     48782002-06-08  Alan Modra  <amodra@bigpond.net.au>
     4879
     4880        * Makefile.am: Run "make dep-am".
     4881        * Makefile.in: Regenerate.
     4882
     4883        * armnetbsd.c: Replace CONST with const.
     4884        * corefile.c: Likewise.
     4885        * elf32-dlx.c: Likewise.
     4886        * elf64-mips.c: Likewise.
     4887        * mmo.c: Likewise.
    10954888        * ns32knetbsd.c: Likewise.
    10964889
    1097 2000-12-10  Fred Fish  <fnf@be.com>
    1098 
    1099         * elflink.h (elf_link_output_extsym): Don't complain about undefined
    1100         symbols in shared objects if allow_shlib_undefined is true.
    1101 
    1102 2000-12-12  Nick Clifton  <nickc@redhat.com>
    1103 
    1104         * cpu-sh.c: Fix formattng.
    1105         * elf.c: Fix formattng.
    1106         * elf32-mips.c: Fix formattng.
    1107         * elf32-sh.c: Fix formattng.
    1108         * elf64-alpha.c: Fix formattng.
    1109 
    1110 2000-12-09  Nick Clifton  <nickc@redhat.com>
    1111 
    1112         * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Pass
    1113         dwarf2_find_line_info as last parameter to invocation of
    1114         _bfd_dwarf2_find_nearest_line.
    1115         * elf32-arm.h (elf32_arm_find_nearest_line): Pass
    1116         dwarf2_find_line_info as last parameter to invocation of
    1117         _bfd_dwarf2_find_nearest_line.
    1118 
    1119 2000-12-08  Mark Elbrecht  <snowball3@bigfoot.com>
    1120 
    1121         * Makefile.am (BFD32_BACKENDS): Move dwarf2.lo from here...
    1122         (BFD_LIBS): ...to here.
    1123         (BFD32_BACKENDS_CFILES): Move dwarf2.c from here...
    1124         (BFD_LIBS_CFILES): ...to here.
     4890        * elf64-sparc.c (sparc64_elf_add_symbol_hook): Check the hash
     4891        table is elf64-sparc.
     4892
     48932002-06-08  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     4894
     4895        * elfxx-mips.c (_bfd_mips_elf_relocate_section): Simplify code.
     4896        Fix RELA addends to get not shifted in the result. Don't do special
     4897        handling of R_MIPS_64 for NewABI.
     4898
     48992002-06-07  Alan Modra  <amodra@bigpond.net.au>
     4900
     4901        * aoutx.h (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc.
     4902        (NAME(aout,slurp_reloc_table)): Likewise.
     4903        * coff-mips.c (mips_relax_section): Use bfd_zalloc.
     4904        * coff-rs6000.c (xcoff_write_armap_big): Use bfd_zmalloc.
     4905        (xcoff_write_archive_contents_big): Likewise.
     4906        (xcoff_generate_rtinit): Likewise.
     4907        (xcoff_generate_rtinit): Likewise, and check error return.
     4908        * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise.
     4909        * coffgen.c (coff_section_symbol): Use bfd_zalloc.
     4910        (coff_get_normalized_symtab): Likewise.
     4911        (coff_make_empty_symbol): Likewise.
     4912        (bfd_coff_set_symbol_class): Likewise.
     4913        * cofflink.c (coff_link_add_symbols): Likewise.
     4914        * ecoff.c (_bfd_ecoff_make_empty_symbol): Likewise.
     4915        * ecofflink.c (ecoff_write_shuffle): Use bfd_zmalloc.
     4916        (bfd_ecoff_write_accumulated_debug): Likewise.
     4917        * elf64-alpha.c (get_got_entry): Use bfd_zalloc.
     4918        * i386linux.c (bfd_i386linux_size_dynamic_sections): Likewise.
     4919        * i386lynx.c (NAME(lynx,slurp_reloc_table)): Use bfd_zmalloc.
     4920        * ieee.c (do_with_relocs): Use bfd_zalloc.
     4921        * m68klinux.c (bfd_m68klinux_size_dynamic_sections): Likewise.
     4922        * pdp11.c (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc.
     4923        (NAME(aout,slurp_reloc_table)): Likewise.
     4924        (NAME(aout,squirt_out_relocs)): Don't memset when zalloc'd.
     4925        * reloc16.c (bfd_coff_reloc16_relax_section): Use bfd_zmalloc.
     4926        * som.c (som_build_and_write_symbol_table): Likewise.
     4927        (som_slurp_string_table): Likewise.
     4928        (som_slurp_symbol_table): Likewise.
     4929        (som_bfd_ar_write_symbol_stuff): Likewise.
     4930        * sparclinux.c (bfd_sparclinux_size_dynamic_sections): Use bfd_zalloc.
     4931        * sunos.c (bfd_sunos_size_dynamic_sections): Likewise.
     4932        * tekhex.c (find_chunk): Likewise.  Get rid of unused "sname".
     4933        * vms-gsd.c (_bfd_vms_slurp_gsd): Use bfd_zmalloc.
     4934        * xcofflink.c (xcoff_link_add_symbols): Use bfd_zalloc/bfd_zmalloc.
     4935
     49362002-06-07  Alan Modra  <amodra@bigpond.net.au>
     4937
     4938        * elf-bfd.h (struct bfd_elf_section_data <group_name>): Replace with
     4939        "group" union.
     4940        (elf_group_name): Update.
     4941        (elf_group_id): Define.
     4942        (bfd_elf_set_group_contents): Declare.
     4943        * elf.c (elf_fake_sections): Qualify use of elf_group_name.
     4944        (set_group_contents): Rename to bfd_elf_set_group_contents.  Remove
     4945        ATTRIBUTE_UNUSED from failedptrarg.  If elf_group_id is set, use
     4946        that sym for the signature.
     4947        (_bfd_elf_compute_section_file_positions): Don't call
     4948        set_group_contents for "ld -r" case.
     4949        (swap_out_syms): Use bfd_zalloc.
     4950        * elflink.h (elf_link_add_archive_symbols): Likewise.
     4951        (NAME(bfd_elf,size_dynamic_sections)): Likewise.
     4952        (elf_bfd_final_link): Call bfd_elf_set_group_contents.
     4953
     49542002-06-07  Alan Modra  <amodra@bigpond.net.au>
     4955
     4956        * elf64-ppc.c (ppc64_elf_relocate_section): Allow unresolved
     4957        relocs in opd for non-shared too.
     4958
     49592002-06-06  Jeffrey Law  <law@redhat.com>
     4960
     4961        * elf32-h8300.c (elf32_h8_relax_section): Ignore uninteresting
     4962        relocations.
     4963
     49642002-06-06  Nick Clifton  <nickc@cambridge.redhat.com>
     4965
     4966        * merge.c: Include libiberty.h.
     4967        * elf-strtab.c: Include libiberty.h.
     4968
     49692002-06-06  Elias Athanasopoulos  <eathan@otenet.gr>
     4970
     4971        * peXXigen.c (pe_print_idata): Remove unused variable.
     4972
     49732002-06-06  David Heine <dlheine@tensilica.com>
     4974
     4975        * elf.c (assign_file_positions_for_segments): Remove unallocated
     4976        sections from the section to segment mapping for PT_LOAD segments.
     4977        Update comment about empty loadable segments.
     4978
     49792002-06-06  Richard Sandiford  <rsandifo@redhat.com>
     4980
     4981        * stabs.c (_bfd_link_section_stabs): Check that the symbol offset
     4982        is within the .stabstr section.
     4983
     49842002-06-06  Alan Modra  <amodra@bigpond.net.au>
     4985
     4986        * elf-bfd.h (struct elf_size_info <swap_symbol_in>): Function args
     4987        are "const PTR", not "const PTR *".
     4988        (bfd_elf32_swap_symbol_in): Likewise.
     4989        (bfd_elf64_swap_symbol_in): Likewise.
     4990        * elfcode.h (elf_swap_symbol_in): Change input args to const PTR.
     4991        (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
     4992        * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
     4993        (elf_link_add_object_symbols): Likewise.
     4994        (elf_link_record_local_dynamic_symbol): Likewise.
     4995        (elf_link_input_bfd): Likewise.
     4996        (elf_gc_mark): Likewise.
     4997        (elf_reloc_symbol_deleted_p): Likewise.
     4998        * elf-m10200.c (mn10200_elf_relax_section): Likewise.
     4999        (mn10200_elf_relax_delete_bytes): Likewise.
     5000        (mn10200_elf_symbol_address_p): Likewise.
     5001        (mn10200_elf_get_relocated_section_contents): Likewise.
     5002        * elf-m10300.c (mn10300_elf_relax_section): Likewise.
     5003        (mn10300_elf_relax_section): Likewise.
     5004        (mn10300_elf_relax_delete_bytes): Likewise.
     5005        (mn10300_elf_symbol_address_p): Likewise.
     5006        (mn10300_elf_get_relocated_section_contents): Likewise.
     5007        * elf32-h8300.c (elf32_h8_relax_section): Likewise.
     5008        (elf32_h8_relax_delete_bytes): Likewise.
     5009        (elf32_h8_symbol_address_p): Likewise.
     5010        (elf32_h8_get_relocated_section_contents): Likewise.
     5011        * elf32-hppa.c (get_local_syms): Likewise.
     5012        * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
     5013        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
     5014        * elf32-sh.c (sh_elf_relax_section): Likewise.
     5015        (sh_elf_relax_delete_bytes): Likewise.
     5016        (sh_elf_get_relocated_section_contents): Likewise.
     5017        * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
     5018        * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
     5019        * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
     5020        * elf64-mmix.c (mmix_elf_relax_section): Likewise.
     5021        * elf64-ppc.c (get_local_syms): Likewise.
     5022        * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
     5023        * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
     5024
     50252002-06-05  J"orn Rennecke <joern.rennecke@superh.com>
     5026
     5027        * config.bfd (sh64l*-*-elf*, shl*-*-elf*): New configurations.
     5028
     50292002-06-05  Alan Modra  <amodra@bigpond.net.au>
     5030
     5031        * elf.c (group_signature): Swap in the whole symbol, and handle
     5032        extracting section symbol names.
     5033        (setup_group): Add comment.
     5034        (set_group_contents): When called from objcopy or ld, arrange for
     5035        section contents to be written.  Write group member output section
     5036        indices to allow objcopy to reorganize sections.
     5037        (_bfd_elf_copy_private_section_data): Copy group info.
     5038
     5039        * elf-bfd.h (struct elf_size_info): Add swap_symbol_in field.
     5040        (bfd_elf32_swap_symbol_in): Update prototype.
     5041        (bfd_elf64_swap_symbol_in): Likewise.
     5042        * elfcode.h (elf_swap_symbol_in): Change input args to const PTR *.
     5043        (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in.
     5044        * elflink.h (elf_link_is_defined_archive_symbol): Likewise.
     5045        (elf_link_add_object_symbols): Likewise.
     5046        (elf_link_record_local_dynamic_symbol): Likewise.
     5047        (elf_link_input_bfd): Likewise.
     5048        (elf_gc_mark): Likewise.
     5049        (elf_reloc_symbol_deleted_p): Likewise.
     5050        * elf-m10200.c (mn10200_elf_relax_section): Likewise.
     5051        (mn10200_elf_relax_delete_bytes): Likewise.
     5052        (mn10200_elf_symbol_address_p): Likewise.
     5053        (mn10200_elf_get_relocated_section_contents): Likewise.
     5054        * elf-m10300.c (mn10300_elf_relax_section): Likewise.
     5055        (mn10300_elf_relax_section): Likewise.
     5056        (mn10300_elf_relax_delete_bytes): Likewise.
     5057        (mn10300_elf_symbol_address_p): Likewise.
     5058        (mn10300_elf_get_relocated_section_contents): Likewise.
     5059        * elf32-h8300.c (elf32_h8_relax_section): Likewise.
     5060        (elf32_h8_relax_delete_bytes): Likewise.
     5061        (elf32_h8_symbol_address_p): Likewise.
     5062        (elf32_h8_get_relocated_section_contents): Likewise.
     5063        * elf32-hppa.c (get_local_syms): Likewise.
     5064        * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise.
     5065        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise.
     5066        * elf32-sh.c (sh_elf_relax_section): Likewise.
     5067        (sh_elf_relax_delete_bytes): Likewise.
     5068        (sh_elf_get_relocated_section_contents): Likewise.
     5069        * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise.
     5070        * elf64-alpha.c (elf64_alpha_relax_section): Likewise.
     5071        * elf64-hppa.c (elf64_hppa_check_relocs): Likewise.
     5072        * elf64-mmix.c (mmix_elf_relax_section): Likewise.
     5073        * elf64-ppc.c (get_local_syms): Likewise.
     5074        * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
     5075        * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise.
     5076        * elfcode.h (NAME(_bfd_elf,size_info)): Update initialiser.
     5077        * elf64-alpha.c (alpha_elf_size_info): Likewise.
     5078        * elf64-hppa.c (hppa64_elf_size_info): Likewise.
     5079        * elf64-mips.c (mips_elf64_size_info): Likewise.
     5080        * elf64-s390.c (s390_elf64_size_info): Likewise.
     5081        * elf64-sparc.c (sparc64_elf_size_info): Likewise.
     5082
     50832002-06-05  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
     5084
     5085        * elf32-mips.c (elf32_mips_ignore_discarded_relocs): Move to...
     5086        elfxx-mips.c (_bfd_mips_elf_ignore_discarded_relocs): ... here.
     5087        elf64-mips.c (elf_backend_ignore_discarded_relocs): Use
     5088        _bfd_mips_elf_ignore_discarded_relocs.
     5089        elfxx-mips.h (_bfd_mips_elf_ignore_discarded_relocs): Declare.
     5090
     50912002-06-05  H.J. Lu <hjl@gnu.org>
     5092
     5093        * elfxx-mips.c (mips_elf_calculate_relocation): Call
     5094        _bfd_elf_rel_local_sym for STT_SECTION relocations against
     5095        the SEC_MERGE section.
     5096
     50972002-06-05  Alan Modra  <amodra@bigpond.net.au>
     5098
     5099        * coff-alpha.c: Update copyright date.
     5100        * coff-mips.c: Likewise.
     5101        * xcoff-target.h: Likewise.
     5102
     5103        * bfd-in.h: Remove "taken from the source" comment.
     5104        * libbfd-in.h: Likewise.
     5105        * libcoff-in.h: Likewise.
     5106        * bfd-in2.h: Regenerate.
     5107        * libbfd.h: Regenerate.
     5108        * libcoff.h: Regenerate.
     5109
     5110        * elf.c (bfd_elf_discard_group): Return true.
     5111        * elf-bfd.h (bfd_elf_discard_group): Declare.
     5112        * bfd-in.h (bfd_elf_discard_group): Don't declare here.
     5113        * section.c (bfd_discard_group): Rename to bfd_generic_discard_group.
     5114        * bfd.c (bfd_discard_group): Define.
     5115        * targets.c (struct bfd_target): Add _bfd_discard_group.
     5116        (BFD_JUMP_TABLE_LINK): Here too.
     5117        * libbfd-in.h (_bfd_nolink_bfd_discard_group): Define.
     5118        * aout-adobe.c (aout_32_bfd_discard_group): Define.
     5119        * aout-target.h (MY_bfd_discard_group): Define.
     5120        * aout-tic30.c (MY_bfd_discard_group): Define.
     5121        * binary.c (binary_bfd_discard_group): Define.
     5122        * bout.c (b_out_bfd_discard_group): Define.
     5123        * coff-alpha.c (_bfd_ecoff_bfd_discard_group): Define.
     5124        * coffcode.h (coff_bfd_discard_group): Define.
     5125        * coff-mips.c (_bfd_ecoff_bfd_discard_group): Define.
     5126        * elfxx-target.h (bfd_elfNN_bfd_discard_group): Define.
     5127        * i386msdos.c (msdos_bfd_discard_group): Define.
     5128        * i386os9k.c (os9k_bfd_discard_group): Define.
     5129        * ieee.c (ieee_bfd_discard_group): Define.
     5130        * ihex.c (ihex_bfd_discard_group): Define.
     5131        * mmo.c (mmo_bfd_discard_group): Define.
     5132        * nlm-target.h (nlm_bfd_discard_group): Define.
     5133        * oasys.c (oasys_bfd_discard_group): Define.
     5134        * ppcboot.c (ppcboot_bfd_discard_group): Define.
     5135        * som.c (som_bfd_discard_group): Define.
     5136        * srec.c (srec_bfd_discard_group): Define.
     5137        * tekhex.c (tekhex_bfd_discard_group): Define.
     5138        * versados.c (versados_bfd_discard_group): Define.
     5139        * vms.c (vms_bfd_discard_group): Define.
     5140        * xcoff-target.h (_bfd_xcoff_bfd_discard_group): Define.
     5141        * coff64-rs6000.c (rs6000coff64_vec): Update initialiser.
     5142        (aix5coff64_vec): Likewise.
     5143        * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise.
     5144
     51452002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
     5146
     5147        * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-com.lo.
     5148        (BFD32_BACKENDS_CFILES): Add elf32-sh64-com.c.
     5149        (elf32-sh64-com.lo): New dependency list.
    11255150        * Makefile.in: Regenerate.
    1126         * configure.in: Remove dwarf.lo from the elf shell variable.
     5151        * configure.in (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec)
     5152        (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec): Add
     5153        elf32-sh64-com.lo.
    11275154        * configure: Regenerate.
    1128         * libcoff-in.h (coff_tdata): Add pointer dwarf2_find_line_info.
     5155        * elf32-sh64.c (sh64_address_in_cranges)
     5156        (sh64_get_contents_type, sh64_address_is_shmedia): Move to...
     5157        (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb):
     5158        (crange_bsearch_cmpl): Prepend _bfd_sh64_ to name and move to...
     5159        * elf32-sh64-com.c: ...here.  New file.
     5160
     51612002-06-04  Alan Modra  <amodra@bigpond.net.au>
     5162
     5163        * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove
     5164        ATTRIBUTE_UNUSED on used params.
     5165        * elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks
     5166        before calling bfd_section_from_elf_index on local syms.
     5167        * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
     5168
     51692002-06-04  Jason Thorpe  <thorpej@wasabisystems.com>
     5170
     5171        * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
     5172        (BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
     5173        (BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
     5174        (BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
     5175        (elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
     5176        * Makefile.in: Regenerate.
     5177        * config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
     5178        (sh64-*-netbsd*): New targets.
     5179        * configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
     5180        bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
     5181        * configure: Regenerate.
     5182        * elf32-sh64-nbsd.c: New file.
     5183        * elf64-sh64-nbsd.c: New file.
     5184        * targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
     5185        bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
     5186        bfd_elf64_sh64lnbsd_vec.
     5187
     51882002-06-04  Alan Modra  <amodra@bigpond.net.au>
     5189
     5190        * elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups.
     5191        (bfd_section_from_shdr): Likewise.  Set section name of group
     5192        sections from signature.
     5193        (group_signature): Split out from setup_group.  Ensure symbol table
     5194        is available.
     5195        (bfd_elf_discard_group): New function.
     5196        (_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on
     5197        .gnu.linkonce* sections if they are members of a group.
     5198        (set_group_contents): Set GRP_COMDAT flag.
     5199        * section.c (bfd_discard_group): New function.
     5200        * bfd-in.h (bfd_elf_discard_group): Declare.
     5201        * bfd-in2.h: Regenerate.
     5202        * elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field.
     5203        (elf_linkonce_p): Define.
     5204
     52052002-06-04  Alan Modra  <amodra@bigpond.net.au>
     5206
     5207        * elf.c (bfd_section_from_shdr): Make "name" const.
     5208        * elf-bfd.h (elf_backend_section_from_shdr): Likewise.
     5209        * elf32-i370.c (i370_elf_section_from_shdr): Likewise.
     5210        * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise.
     5211        * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise.
     5212        * elf32-v850.c (v850_elf_section_from_shdr): Likewise.
     5213        * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise.
     5214        * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise.
     5215        * elf64-ppc.c (ppc64_elf_section_from_shdr): Likewise.
     5216        * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise.
     5217        * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise.
     5218        * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise.
     5219
     52202002-06-03  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
     5221
     5222        * elfxx-mips.c (ABI_64_P): Use backend's data to determine the
     5223        ABI.
     5224
     52252002-06-02  Kazu Hirata  <kazu@cs.umass.edu>
     5226
     5227        * elf32-arc.c: Fix formatting.
     5228        * elf32-arm.h: Likewise.
     5229        * elf32-cris.c: Likewise.
     5230        * elf32-dlx.c: Likewise.
     5231        * elf32-hppa.c: Likewise.
     5232        * elf32-i386.c: Likewise.
     5233        * elf32-i386qnx.c: Likewise.
     5234        * elf32-or32.c: Likewise.
     5235        * elf32-s390.c: Likewise.
     5236        * elf32-sh64.c: Likewise.
     5237        * elf32-vax.c: Likewise.
     5238        * elf32-xstormy16.c: Likewise.
     5239        * elf64-alpha.c: Likewise.
     5240        * elf64-mmix.c: Likewise.
     5241        * elf64-ppc.c: Likewise.
     5242        * elf64-s390.c: Likewise.
     5243        * elf64-sh64.c: Likewise.
     5244        * elf64-x86-64.c: Likewise.
     5245
     52462002-06-02  Richard Henderson  <rth@redhat.com>
     5247
     5248        * elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference
     5249        null when there are no got entries for a symbol.
     5250        (elf64_alpha_relax_find_tls_segment): Rearrange to avoid
     5251        uninitialized variable warning.
     5252
     52532002-06-01  Richard Henderson  <rth@redhat.com>
     5254
     5255        * elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for
     5256        undefined symbols here.
     5257        (elf64_alpha_relax_section): Do it here.  Also test for not
     5258        defined in the current module.
     5259        (elf64_alpha_relocate_section_r): Split out of ...
     5260        (elf64_alpha_relocate_section): ... here.  Don't dereference
     5261        NULL when looking up local got entries.
     5262
     52632002-06-01  Richard Henderson  <rth@redhat.com>
     5264
     5265        * elf64-alpha.c (elf64_alpha_relax_with_lituse): Reject undefined
     5266        symbols from JSR relaxation.
     5267        (elf64_alpha_size_plt_section_1): New.
     5268        (elf64_alpha_calc_dynrel_sizes): Split out .rela.got bits ...
     5269        (elf64_alpha_size_rela_got_1): ... here.
     5270        (elf64_alpha_size_dynamic_sections): Split out .rela.got bits ...
     5271        (elf64_alpha_size_rela_got_section): ... here.
     5272        (elf64_alpha_size_plt_section): New.
     5273        (elf64_alpha_relax_section): Call them.
     5274        (elf64_alpha_size_got_sections): Remove output_bfd arg.
     5275        (elf64_alpha_finish_dynamic_symbol): Check gotent use_count.
     5276
     52772002-06-01  Richard Henderson  <rth@redhat.com>
     5278
     5279        * elf64-alpha.c (alpha_get_dtprel_base, alpha_get_tprel_base): New.
     5280        (elf64_alpha_relocate_section): Use them.  Reject LE TLS relocs
     5281        in shared libraries.  Fix DTPRELHI and TPRELHI value.
     5282        (INSN_ADDQ, INSN_RDUNIQ): New.
     5283        (struct alpha_relax_info): Add symtab_hdr, tls_segment, first_gotent.
     5284        (elf64_alpha_relax_with_lituse): Return boolean.  Remove irelend
     5285        argument.  Reject dynamic symbols.  Use LITUSE symbolic constants.
     5286        (elf64_alpha_relax_got_load): Rename from relax_without_lituse.
     5287        Handle GOTDTPREL and GOTTPREL relocations.
     5288        (elf64_alpha_relax_gprelhilo): New.
     5289        (elf64_alpha_relax_tls_get_addr): New.
     5290        (elf64_alpha_relax_find_tls_segment): New.
     5291        (elf64_alpha_relax_section): Handle TLS relocations.
     5292        (ALPHA_ELF_LINK_HASH_TLS_IE): New.
     5293        (elf64_alpha_check_relocs): Set it.
     5294
     52952002-06-01  Richard Henderson  <rth@redhat.com>
     5296
     5297        * elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp.
     5298
     5299        * elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic
     5300        check; don't suppress dynamic relocs for non-allocated sections.
     5301
     5302        * elf64-alpha.c: Remove dead code.
     5303
     53042002-05-31  Alan Modra  <amodra@bigpond.net.au>
     5305
     5306        * bfd-in2.h: Regenerate.
     5307        * libbfd.h: Regenerate.
     5308        * po/SRC-POTFILES.in: Regenerate.
     5309
     5310        * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Don't allocate
     5311        space for bss .plt.
     5312
     53132002-05-31  Graeme Peterson  <gp@qnx.com>
     5314
     5315        * Makefile.am (BFD32_BACKENDS): Add elf32-i386qnx.lo.
     5316        (BFD32_BACKENDS_CFILES): Add elf32-i386qnx.c.
     5317        Run "make dep-am".
     5318        * Makefile.in: Regenerate.
     5319        * config.bfd: Add i[3456]86-*-nto-qnx* support.
     5320        * configure.in: Add bfd_elf32_i386qnx_vec support.
     5321        * configure: Regenerate.
     5322        * elf-bfd.h (struct elf_backend_data): Add set_nonloadable_filepos,
     5323        is_contained_by_filepos, and copy_private_bfd_data_p.
     5324        * elf.c (assign_file_positions_for_segments): Call backend
     5325        set_nonloadable_filepos.  Fix non-K&R call to _bfd_error_handler.
     5326        (IS_CONTAINED_BY_FILEPOS): Define.
     5327        (INCLUDE_SECTION_IN_SEGMENT): Also test IS_CONTAINED_BY_FILEPOS.
     5328        (copy_private_bfd_data): Use IS_CONTAINED_BY_FILEPOS.  Typo fix.
     5329        Fix non-K&R call to _bfd_error_handler.
     5330        (_bfd_elf_copy_private_section_data): Use backend
     5331        copy_private_bfd_data_p.
     5332        * elf32-i386.c: Don't include elfxx-target.h when
     5333        ELF32_I386_C_INCLUDED is defined.
     5334        * elf32-i386qnx.c: New QNX elf backend file.
     5335        * elfxx-target.h: Add elf_backend_set_nonloadable_filepos,
     5336        elf_backend_is_contained_by_filepos, and
     5337        elf_backend_do_copy_private_bfd_data.
     5338        * targets.c: Add bfd_target bfd_elf32_i386qnx_vec.
     5339
     53402002-05-31  Alan Modra  <amodra@bigpond.net.au>
     5341
     5342        * elfarm-oabi.c (bfd_elf32_arm_add_glue_sections_to_bfd): Define.
     5343        Move other similar defines to start of file.
     5344
     53452002-05-30  Tom Rix  <trix@redhat.com>
     5346
     5347        * coff-rs6000.c (xcoff_rtype2howto): Handle 16 bit R_RBA.
     5348        * coff64-rs6000.c (xcoff64_rtype2howto): Same.
     5349
     53502002-05-30  Richard Henderson  <rth@redhat.com>
     5351
     5352        * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_TLSGD,
     5353        ALPHA_ELF_LINK_HASH_LU_TLSLDM, ALPHA_ELF_LINK_HASH_LU_FUNC): New.
     5354        (ALPHA_ELF_GOT_ENTRY_RELOCS_DONE): Remove.
     5355        (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Remove.
     5356        (struct alpha_elf_got_entry): Add reloc_type, reloc_done, reloc_xlated.
     5357        (struct alpha_elf_obj_tdata): Rename total_got_entries and
     5358        n_local_got_entries to total_got_size and local_got_size.
     5359        (elf64_alpha_howto, elf64_alpha_reloc_map): Update for TLS relocs.
     5360        (alpha_got_entry_size): New.
     5361        (elf64_alpha_relax_with_lituse): Use it.
     5362        (elf64_alpha_relax_without_lituse): Likewise.
     5363        (MAX_GOT_SIZE): Rename from MAX_GOT_ENTRIES.
     5364        (get_got_entry): New.
     5365        (elf64_alpha_check_relocs): Handle TLS relocs.  Reorganize.
     5366        (elf64_alpha_adjust_dynamic_symbol): Test LU_FUNC as a mask.
     5367        (elf64_alpha_merge_ind_symbols): Check gotent->reloc_type.
     5368        (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots): Likewise.
     5369        (elf64_alpha_calc_got_offsets_for_symbol): Use alpha_got_entry_size.
     5370        (elf64_alpha_calc_got_offsets): Likewise.
     5371        (alpha_dynamic_entries_for_reloc): New.
     5372        (elf64_alpha_calc_dynrel_sizes): Use it.
     5373        (elf64_alpha_size_dynamic_sections): Likewise.
     5374        (elf64_alpha_relocate_section): Handle TLS relocations.
     5375        * reloc.c: Add Alpha TLS relocations.
     5376        * bfd-in2.h, libbfd.h: Rebuild.
     5377
     53782002-05-29 Ralf Habacker <ralf.habacker@freenet.de>
     5379
     5380        * peXXigen.c (pe_print_idata): Remove double printed
     5381        import table lines; add Bound-To comment.
     5382
     53832002-05-29  Matt Thomas  <matt@3am-software.com>
     5384
     5385        * Makefile.am (BFD32_BACKENDS): Add elf32-vax.lo.
     5386        (BFD32_BACKENDS_CFILES): Add elf32-vax.c.
     5387        (elf32-vax.lo): New rule.
     5388        * Makefile.in: Regenerate.
     5389        * configure.in (bfd_elf32_vax_vec)
     5390        (vaxnetbsd_vec): New vectors.
     5391        * configure: Regenerate.
     5392        * config.bfd (vax-*-netbsdelf*)
     5393        (vax-*-netbsdaout*)
     5394        (vax-*-netbsd*): New targets.
     5395        * elf32-vax.c: New file.
     5396        * reloc.c: Add VAX relocations.
     5397        * bfd-in2.h: Regenerate.
     5398        * targets.c (_bfd_target_vector): Add bfd_elf32_vax_vec.
     5399
     54002002-05-29  Jason Thorpe  <thorpej@wasabisystems.com>
     5401
     5402        * config.bfd (arm-*-netbsd*): Add bfd_elf32_littlearm_vec
     5403        and bfd_elf32_bigarm_vec to targ_selvecs.
     5404
     54052002-05-29  Ralf Habacker  <ralf.habacker@freenet.de>
     5406
     5407        * peXXigen.c (pe_print_idata): Fix seg faults on printing import tables
     5408        with auto-imported symbols.
     5409
     54102002-05-29  Adam Nemet  <anemet@lnxw.com>
     5411
     5412        * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Don't add glue
     5413        sections only record bfd.
     5414        (bfd_elf32_arm_add_glue_sections_to_bfd): New function.
     5415        * bfd-in.h (bfd_elf32_arm_add_glue_sections_to_bfd): Declare it.
     5416        * bfd-in2.h: Regenerate.
     5417
     54182002-05-28  Nick Clifton  <nickc@cambridge.redhat.com>
     5419
     5420        * syms.c (_bfd_stab_section_find_nearest_line): Move
     5421        declaration and initialisation of saw_line and saw_func out of
     5422        for loop.
     5423
     54242002-05-29  Alan Modra  <amodra@bigpond.net.au>
     5425
     5426        * elf64-ppc.c (ppc64_elf_get_symbol_info): New function.
     5427        (bfd_elf64_get_symbol_info): Define.
     5428        * elfxx-target.h (bfd_elfNN_get_symbol_info): Only define if undef.
     5429
     54302002-05-29  Andrey Volkov  <avolkov@transas.com>
     5431
     5432        * cpu-h8300.c: Make default h8300 machine first in machine list.
     5433
     54342002-05-28  Kuang Hwa Lin <kuang@sbcglobal.net>
     5435
     5436        * config.bfd: Added DLX configuraton.
     5437        * Makefile.am: Added DLX configuraton.
     5438        * configure.in: Added DLX configuraton.
     5439        * archures.c: Add DLX architecure.
     5440        * reloc.c: Add DLX relocs.
     5441        * targets.c: Added DLX target vector.
     5442        * configure: Regenerate.
     5443        * Makefile.in: Regenreate.
     5444        * bfd-in2.h: Regenreate.
     5445        * elf32-dlx.c: New file: Support DLX target.
     5446        * cpu-dlx.c: New file: Support DLX target.
     5447
     54482002-05-25  Alan Modra  <amodra@bigpond.net.au>
     5449
     5450        * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Formatting.
     5451
     5452        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Revert last change.
     5453        (ppc64_elf_check_relocs): Don't set up function descriptor symbol
     5454        strings to point inside function code sym string.
     5455        (func_desc_adjust): Likewise.
     5456        (ppc64_elf_hide_symbol): Rewrite code to look up function code sym.
     5457
     54582002-05-24  Michal Ludvig  <mludvig@suse.cz>
     5459
     5460        * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Added.
     5461        (elf64_x86_64_grok_psinfo): Added.
     5462
     54632002-05-24  TAMURA Kent <kent@netbsd.org>
     5464
     5465        * config.bfd: Add a target for i386-netbsdpe.
     5466
     54672002-05-24  Alan Modra  <amodra@bigpond.net.au>
     5468
     5469        * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy is_func
     5470        and is_func_descriptor.
     5471        (func_desc_adjust): Hide function code sym in shared libs unless
     5472        there is a matching exported function descriptor sym.
     5473
     54742002-05-23  Jakub Jelinek  <jakub@redhat.com>
     5475
     5476        * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL
     5477        for symbols from SHF_TLS section.
     5478        (_bfd_elf_print_private_bfd_data): Add PT_TLS.
     5479        (elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections.
     5480        (map_sections_to_segments): Build PT_TLS segment if necessary.
     5481        (assign_file_positions_for_segments): Likewise.
     5482        (get_program_header_size): Account for PT_TLS segment.
     5483        (swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from
     5484        SEC_THREAD_LOCAL sections to STT_TLS.
     5485        * reloc.c: Add 386 and IA-64 TLS relocs.
     5486        * section.c (SEC_THREAD_LOCAL): Define.
     5487        (SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS):
     5488        Remove.
     5489        * elflink.h (elf_link_add_object_symbols): Support .tcommon.
     5490        (size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS
     5491        unconditionally.
     5492        (struct elf_final_link_info): Add first_tls_sec.
     5493        (elf_bfd_final_link): Set first_tls_sec.
     5494        Compute elf_hash_table (info)->tls_segment.
     5495        (elf_link_output_extsym): Handle STT_TLS symbols.
     5496        (elf_link_input_bfd): Likewise.
     5497        * syms.c (BSF_THREAD_LOCAL): Define.
     5498        * bfd-in2.h: Rebuilt.
     5499        * libbfd.h: Rebuilt.
     5500        * elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff,
     5501        elf_i386_mkobject, elf_i386_object_p): New functions.
     5502        (elf_howto_table): Add TLS relocs.
     5503        (elf_i386_reloc_type_lookup): Support TLS relocs.
     5504        (elf_i386_info_to_howto_rel): Likewise.
     5505        (struct elf_i386_link_hash_entry): Add tls_type.
     5506        (struct elf_i386_obj_tdata): New.
     5507        (elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type):
     5508        New macros.
     5509        (struct elf_i386_link_hash_table): Add tls_ldm_got.
     5510        (link_hash_newfunc): Clear tls_type.
     5511        (elf_i386_check_relocs): Support TLS relocs.
     5512        (elf_i386_gc_sweep_hook): Likewise.
     5513        (allocate_dynrelocs): Likewise.
     5514        (elf_i386_size_dynamic_sections): Likewise.
     5515        (elf_i386_relocate_section): Likewise.
     5516        (elf_i386_finish_dynamic_symbol): Likewise.
     5517        (bfd_elf32_mkobject, elf_backend_object_p): Define.
     5518        * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset,
     5519        dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done,
     5520        want_tprel, want_dtpmod, want_dtprel.
     5521        (elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions.
     5522        (ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to
     5523        R_IA64_LTOFF_TPREL22.
     5524        (elf_code_to_howto_index): Add TLS relocs.
     5525        (elfNN_ia64_check_relocs): Support TLS relocs.
     5526        (allocate_global_data_got): Account for TLS .got data.
     5527        (allocate_dynrel_entries): Account for TLS dynamic relocations.
     5528        (elfNN_ia64_install_value): Supprt TLS relocs.
     5529        (set_got_entry): Support TLS relocs.
     5530        (elfNN_ia64_relocate_section): Likewise.
     5531
     55322002-05-23  Nick Clifton  <nickc@cambridge.redhat.com>
     5533
     5534        * elf32-arm.h (elf32_arm_final_link_relocate): For the Thumb
     5535        BLX reloc round the relocation up rather than down.
     5536        * coff-arm.c (coff_arm_relocate_section): Likewise.
     5537
     55382002-05-21  H.J. Lu  (hjl@gnu.org)
     5539
     5540        * linker.c (_bfd_generic_link_add_one_symbol): Allow multiple
     5541        definition.
     5542
     55432002-05-22  Alan Modra  <amodra@bigpond.net.au>
     5544
     5545        * elf64-ppc.c (ppc64_elf_size_stubs): Don't strip .branch_lt.
     5546        (ppc64_elf_relocate_section): Handle unresolved relocs in opd.
     5547
     55482002-05-22  Alan Modra  <amodra@bigpond.net.au>
     5549
     5550        * elf64-ppc.c (ppc64_elf_relocate_section): Return false for
     5551        unresolved relocs.
     5552        (ppc64_elf_size_dynamic_sections): Check for splt NULL.
     5553
     55542002-05-21  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     5555
     5556        * bfd.c (bfd_get_arch_size): Remove bfd_set_error call for
     5557        non-ELF targets.
     5558
     55592002-05-21  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     5560
     5561        * elf-bfd.h (elf_backend_emit_relocs): Change prototype to return
     5562        an error value.
     5563        * elflink.h (elf_link_output_relocs): Likewise. Improve error message.
     5564        return with false on error.
     5565        (elf_link_input_bfd): Check reloc_emitter return value.
     5566
     55672002-05-21  Jason Thorpe  <thorpej@wasabisystems.com>
     5568
     5569        * config.bfd (armeb-*-netbsdelf*): New target.
     5570
     55712002-05-20  Alan Modra  <amodra@bigpond.net.au>
     5572
     5573        * elf64-ppc.c (ppc_build_one_stub): Point undefined function syms
     5574        at the plt call stub.
     5575
     55762002-05-19  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     5577
     5578        * cpu-mips.c (mips_compatible): Don't try to check machine
     5579        compatibility.
     5580
     55812002-05-18  Tom Rix  <trix@redhat.com>
     5582
     5583        * coff64-rs6000.c (_bfd_xcoff64_swap_aux_out):  Fix C_FILE auxent.
     5584
     55852002-05-17  Alan Modra  <amodra@bigpond.net.au>
     5586
     5587        * elf64-ppc.c (ppc64_elf_info_to_howto): Formatting.
     5588        (ppc64_elf_relocate_section): Don't warn about reloc overflow when
     5589        we've already warned about an undefined symbol.  Report more
     5590        detail on reloc errors.
     5591
     55922002-05-17  Alan Modra  <amodra@bigpond.net.au>
     5593
     5594        * acinclude.m4 (AM_INSTALL_LIBBFD): New.
     5595        * configure.in: Invoke AM_INSTALL_LIBBFD.
     5596        * Makefile.am (install-data-local): Revert 2002-05-13.  Move to..
     5597        (install_libbfd): .. New target.
     5598        (uninstall_libbfd): Likewise.
     5599        (install-bfdlibLTLIBRARIES): Likewise.
     5600        (uninstall-bfdlibLTLIBRARIES): Likewise.
     5601        (bfdlibdir): New.
     5602        (bfdincludedir): New.
     5603        (lib_LTLIBRARIES): Rename to bfdlib_LTLIBRARIES.
     5604        * aclocal.m4: Regenerate.
     5605        * configure: Regenerate.
     5606        * Makefile.in: Regenerate.
     5607
     56082002-05-17  Stuart Balfour <sbalfour@cisco.com>
     5609
     5610        * hash.c (bfd_hash_lookup): Remove computation of len from inside
     5611        hash loop.
     5612
     56132002-05-16  Nick Clifton  <nickc@cambridge.redhat.com>
     5614
     5615        * config.bfd: Add targets for sh64-linux (little endian and
     5616        big endian).
     5617
     56182002-05-15  Laurent Pinchart <laurent.pinchart@skynet.be>
     5619
     5620        * peXXigen.c (pe_print_idata): Do not assume that the first thunk
     5621        is located in the same section as the import table.  Instead
     5622        check, and if necessary load the section containing the thunk.
     5623
     56242002-05-15  Nick Clifton  <nickc@cambridge.redhat.com>
     5625
     5626        * aix5ppc-core.c (xcoff64_core_p): Replace bfd_read with
     5627        bfd_bread.
     5628        (xcoff64_core_file_matches_executable_p): Replace bfd_read
     5629        with bfd_bread.
     5630
     56312002-05-15  Alan Modra  <amodra@bigpond.net.au>
     5632
     5633        * aix5ppc-core.c: Warning fixes.
     5634        * aout-adobe.c (aout_32_bfd_link_just_syms): Define.
     5635        * aout-target.h (MY_bfd_link_just_syms): Define.
     5636        * aout-tic30.c (MY_bfd_link_just_syms): Define.
     5637        * bfd.c (bfd_link_just_syms): Define.
     5638        * binary.c (binary_bfd_link_just_syms): Define.
     5639        * bout.c (b_out_bfd_link_just_syms): Define.
     5640        * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update initializer.
     5641        * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
     5642        * coffcode.h (coff_bfd_link_just_syms): Define.
     5643        * elf-bfd.h (enum elf_link_info_type): Add ELF_INFO_TYPE_JUST_SYMS.
     5644        (elf_discarded_section): Check for ELF_INFO_TYPE_JUST_SYMS.
     5645        (_bfd_elf_link_just_syms): Declare.
     5646        * elf.c (_bfd_elf_link_just_syms): New function.
     5647        * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Check that
     5648        sections haven't already been discarded by the linker.
     5649        * elflink.h (elf_link_add_object_symbols): Likewise for stab
     5650        sections and SEC_MERGE sections.
     5651        (elf_bfd_discard_info): Similarly here.
     5652        * elfxx-target.h (bfd_elfNN_bfd_link_just_syms): Define.
     5653        * i386msdos.c (msdos_bfd_link_just_syms): Define.
     5654        * i386os9k.c (os9k_bfd_link_just_syms): Define.
     5655        * ieee.c (ieee_bfd_link_just_syms): Define.
     5656        * ihex.c (ihex_bfd_link_just_syms): Define.
     5657        * libbfd-in.h (_bfd_nolink_bfd_link_just_syms): Define.
     5658        (_bfd_generic_link_just_syms): Declare.
     5659        * libecoff.h (_bfd_ecoff_bfd_link_just_syms): Define.
     5660        * linker.c (_bfd_generic_link_just_syms): New function.
     5661        * mmo.c (mmo_bfd_link_just_syms): Define.
     5662        * nlm-target.h (nlm_bfd_link_just_syms): Define.
     5663        * oasys.c (oasys_bfd_link_just_syms): Define.
     5664        * ppcboot.c (ppcboot_bfd_link_just_syms): Define.
     5665        * som.c (som_bfd_link_just_syms): Define.
     5666        * srec.c (srec_bfd_link_just_syms): Define.
     5667        * targets.c (struct bfd_target): Add _bfd_link_just_syms.
     5668        (BFD_JUMP_TABLE_LINK): And here.
     5669        * tekhex.c (tekhex_bfd_link_just_syms): Define.
     5670        * versados.c (versados_bfd_link_just_syms): Define.
     5671        * vms.c (vms_bfd_link_just_syms): Define.
     5672        * libbfd.h: Regenerate.
     5673        * bfd-in2.h: Regenerate.
     5674
     56752002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     5676
     5677        * elf32-mips.c: Remove superfluous definitions copied from
     5678        elfxx-mips.c.
     5679        (bfd_elf32_bigmips_vec,bfd_elf32_littlemips_vec): Use the
     5680        SGIish vectors to check the special case.
     5681        (mips_elf_hi16_reloc): Fix comment.
     5682        (mips_elf_got16_reloc): Likewise.
     5683        (_bfd_mips_elf32_gprel16_reloc): Likewise.
     5684        (elf_reloc_map): Code cleanup.
     5685        (mips_reloc_map): Add comment.
     5686        (bfd_elf23_bfd_reloc_type_lookup): Code cleanup.
     5687        (mips_elf32_rtype_to_howto): Likewise.
     5688        (mips_elf32_discard_info): Likewise.
     5689        (elf32_mips_irix_compat): Invert logic: Only SGIish vectors
     5690        lead to IRIX compatibility now.
     5691
     56922002-05-15  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     5693
     5694        * elfxx-mips.c: Call it IRIX, not Irix in comments.
     5695
     56962002-05-13  Jason Thorpe  <thorpej@wasabisystems.com>
     5697
     5698        * config.bfd (shle-*-netbsdelf*): Add target which includes
     5699        sh64 support.
     5700
     57012002-05-13  David Edelsohn  <edelsohn@gnu.org>
     5702
     5703        * configure.in: Revert 2002-04-07.  Instead, auto-configure
     5704        HAVE_ST_C_IMPL.
     5705        * configure: Regenerate.
     5706        * config.in: Regenerate.
     5707        * rs6000-core.c (CNEW_IMPL): Guard use of c_impl with HAVE_ST_C_IMPL
     5708        or AIX_5_CORE.
     5709
     57102002-05-11  Federico G. Schwindt <fgsch@olimpo.com.br>
     5711
     5712        * configure.in (sparc*-*-openbsd*): Support sparc64-openbsd
     5713        corefiles as well.2
     5714        * configure: Regenerate.
     5715
     57162002-05-13  Alan Modra  <amodra@bigpond.net.au>
     5717
     5718        * Makefile.am (install-data-local): Install headers to
     5719        $(exec_prefix)/include.
     5720        * Makefile.in: Regenerate.
     5721
     57222002-05-11  Ralf Corsepius  <corsepiu@faw.uni-ulm.de>
     5723            Daniel Jacobowitz  <drow@mvista.com>
     5724
     5725        * coff-sh.c (sh_reloc_map): Map to R_SH_IMM32 for non-PE.  Don't
     5726        map BFD_RELOC_RVA.
     5727
     57282002-05-11  Federico G. Schwindt <fgsch@olimpo.com.br>
     5729
     5730        * config.bfd (alpha*-*-openbsd*, sparc64*-*-openbsd*,
     5731        hppa*-*-openbsd*): New targets.
     5732        * configure.in (alpha*-*-openbsd*): Set COREFILE.
     5733        * configure: Regenerate.
     5734
     57352002-05-10  Tom Rix  <trix@redhat.com>
     5736
     5737        * coff64-rs6000.c (xcoff64_reloc_type_br): New function for
     5738        xcoff64_ppc_relocate_section.
     5739        * coff-rs6000.c : Extern common xcoff_reloc_type functions.
     5740        * libxcoff.h: Common xcoff_reloc_type function declaration.
     5741
     57422002-05-10  Alan Modra  <amodra@bigpond.net.au>
     5743
     5744        * elf32-i386.c (elf_i386_relocate_section): Remove overflow checks
     5745        added in 2002-05-09 commit.
     5746
     5747        * elf32-hppa.c (elf32_hppa_size_stubs): Revert part of 2002-05-04,
     5748        don't look for stubs on all undefined syms.
     5749
     57502002-05-09  Alan Modra  <amodra@bigpond.net.au>
     5751
     5752        * elf64-ppc.c (RA_REGISTER_MASK, RA_REGISTER_SHIFT): Delete.
     5753        (ppc64_elf_howto_raw <R_PPC64_RELATIVE>): Not pc_relative or
     5754        pcrel_offset.
     5755
     5756        * elf32-i386.c (elf_howto_table): Comments.
     5757        (elf_i386_relocate_section): Handle more relocs for relocatable
     5758        linking and against SEC_MERGE sections.
     5759
     57602002-05-08  Alan Modra  <amodra@bigpond.net.au>
     5761
     5762        * elf32-ppc.c (ppc_elf_create_got): New function.
     5763        (ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before
     5764        _bfd_elf_create_dynamic_sections.  Correct .plt flags.
     5765        (ppc_elf_check_relocs): Use ppc_elf_create_got in place of
     5766        _bfd_elf_create_got_section.
     5767
     57682002-05-07  Alan Modra  <amodra@bigpond.net.au>
     5769
     5770        * elf-bfd.h (struct elf_backend_data): Add rela_normal.
     5771        * elfxx-target.h (elf_backend_rela_normal): Define.
     5772        (elfNN_bed): Init rela_normal.
     5773        * elflink.h (elf_link_input_bfd <emit_relocs>): Handle adjustment
     5774        for section symbols here if rela_normal.  Simplify abs section test.
     5775        * elf-m10200.c (mn10200_elf_relocate_section): If relocatable,
     5776        return immediately.  Remove code handling relocatable linking.
     5777        * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
     5778        * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
     5779        * elf32-i370.c (i370_elf_relocate_section): Likewise.
     5780        * elf32-i860.c (elf32_i860_relocate_section): Likewise.
     5781        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
     5782        * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
     5783        * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
     5784        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
     5785        * elf32-s390.c (elf_s390_relocate_section): Likewise.
     5786        * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
     5787        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
     5788        * elf64-s390.c (elf_s390_relocate_section): Likewise.
     5789        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
     5790        * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
     5791        * elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL.
     5792        * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
     5793        * elf-m10200.c (elf_backend_rela_normal): Define.
     5794        * elf-m10300.c (elf_backend_rela_normal): Define.
     5795        * elf32-fr30.c (elf_backend_rela_normal): Define.
     5796        * elf32-i370.c (elf_backend_rela_normal): Define.
     5797        * elf32-i860.c (elf_backend_rela_normal): Define.
     5798        * elf32-m68k.c (elf_backend_rela_normal): Define.
     5799        * elf32-mcore.c (elf_backend_rela_normal): Define.
     5800        * elf32-openrisc.c (elf_backend_rela_normal): Define.
     5801        * elf32-ppc.c (elf_backend_rela_normal): Define.
     5802        * elf32-s390.c (elf_backend_rela_normal): Define.
     5803        * elf32-xstormy16.c (elf_backend_rela_normal): Define.
     5804        * elf64-ppc.c (elf_backend_rela_normal): Define.
     5805        * elf64-s390.c (elf_backend_rela_normal): Define.
     5806        * elf64-x86-64.c (elf_backend_rela_normal): Define.
     5807        * elfxx-ia64.c (elf_backend_rela_normal): Define.
     5808        * elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL.
     5809        * elf32-m32r.c (elf_backend_rela_normal): Likewise.
     5810
     58112002-05-06  Nick Clifton  <nickc@cambridge.redhat.com>
     5812
     5813        * elf32-arm.h (elf32_arm_final_link_relocate): Convert
     5814        'reloc_signed_max' and 'reloc_signed_min' into half-word offsets.
     5815
     58162002-05-06  Alan Modra  <amodra@bigpond.net.au>
     5817
     5818        * elflink.h (elf_link_input_bfd <emit_relocs>): Adjust r_offset
     5819        when not relocatable.  Fix reloc_emitter call for K&R.
     5820
     58212002-05-04  Alan Modra  <amodra@bigpond.net.au>
     5822
     5823        * elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code
     5824        reloading local sym addend mistakenly removed in 2002-05-01 change.
     5825
     5826        * dwarf2.c (struct line_head): Make prologue_length a bfd_vma.
     5827        (read_abbrevs): Change "offset" param to bfd_vma.
     5828        (parse_comp_unit): Change "version" and addr_size to unsigned ints.
     5829        Change "abbrev_offset" to bfd_vma.
     5830        (read_indirect_string): Use correct conversion chars in error
     5831        message format string, cast bfd_vma's to unsigned long.
     5832        (read_abbrevs): Likewise.
     5833        (read_attribute_value): Likewise.
     5834        (decode_line_info): Likewise.
     5835        (scan_unit_for_functions): Likewise.
     5836        (parse_comp_unit): Likewise.
     5837
     58382002-05-04  Tom Rix  <trix@redhat.com>
     5839
     5840        * coffswap.h (coff_swap_reloc_in): Remove XCOFF support.
     5841        (coff_swap_reloc_out): Same.
     5842        * coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h.
     5843        (xcoff_swap_reloc_out): Same.
     5844        (xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special
     5845        case some 16 bit relocs. Add reloc value to output.
     5846        (xcoff_howto_table): Remove 64 bit R_POS, add 16 bit
     5847        R_RBR. Improve names.
     5848        (_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS.
     5849        (bfd_xcoff_backend_data): Update with new reloc swap names.
     5850        (bfd_pmac_xcoff_backend_data) : Same.
     5851        * coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h.
     5852        (xcoff64_swap_reloc_out): Same.
     5853        (xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit
     5854        R_POS. Add reloc value to output.
     5855        (xcoff64_howto_table): Move 64 bit R_POS to first entry.  Add 16
     5856        bit R_RBR. Improve names, masks.
     5857        (xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS.
     5858        (bfd_xcoff_backend_data): Update with new reloc swap names.
     5859        (bfd_xcoff_aix5_backend_data) : Same.
     5860
     58612002-05-04  Alan Modra  <amodra@bigpond.net.au>
     5862
     5863        * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add
     5864        bfd_count top_index, input_list, all_local_syms.
     5865        (elf32_hppa_setup_section_lists): New function, split from
     5866        elf32_hppa_size_stubs.
     5867        (elf32_hppa_next_input_section): Likewise.
     5868        (group_sections): Likewise.
     5869        (get_local_syms): Likewise.
     5870        (elf32_hppa_size_stubs): Adjust for split out functions.  Look for
     5871        stubs on undefined syms too.
     5872        (elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*.
     5873        Only access htab elf fields when we have an elf hash table.
     5874        * elf32-hppa.h (elf32_hppa_setup_section_lists): Declare.
     5875        (elf32_hppa_next_input_section): Declare.
     5876
     58772002-05-04  Bob Byrnes  <byrnes@curl.com>
     5878
     5879        * opncls.c (_bfd_new_bfd_contained_in): Check return value of
     5880        _bfd_new_bfd.
     5881
     58822002-05-03  H.J. Lu  (hjl@gnu.org)
     5883
     5884        * elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local.
     5885        (mips_elf_link_hash_newfunc): Initialize forced_local to false.
     5886        (mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol
     5887        to hide a global symbol.
     5888        (_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set
     5889        forced_local to true.
     5890
     58912002-05-02  Richard Henderson  <rth@redhat.com>
     5892
     5893        * elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs
     5894        vs SHN_UNDEF to zero.
     5895
     58962002-05-02  Alan Modra  <amodra@bigpond.net.au>
     5897
     5898        * elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_SECTOFF>): Change to a
     5899        16 bit reloc.
     5900        <R_PPC64_SECTOFF_DS>: Likewise.
     5901        (ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
     5902        SECTOFF reloc.
     5903        * elf32-ppc.c (ppc_elf_howto_raw <R_PPC_SECTOFF>): Correct.
     5904        (ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
     5905        SECTOFF reloc.
     5906
     5907        * elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete.
     5908        (ppc64_elf_ha_reloc): New function.
     5909        (ppc64_elf_brtaken_reloc): New function.
     5910        (ppc64_elf_sectoff_reloc): New function.
     5911        (ppc64_elf_sectoff_ha_reloc): New function.
     5912        (ppc64_elf_toc_reloc): New function.
     5913        (ppc64_elf_toc_ha_reloc): New function.
     5914        (ppc64_elf_toc64_reloc): New function.
     5915        (ppc64_elf_unhandled_reloc): New function.
     5916        (ppc64_elf_howto_raw): Use the above.
     5917        <R_PPC64_RELATIVE>: Mark pc_relative, pcrel_offset.
     5918        <R_PPC64_SECTOFF>: Not pc_relative or pcrel_offset.  Fix dst_mask.
     5919        <R_PPC64_SECTOFF_DS>: Likewise.
     5920        (IS_ABSOLUTE_RELOC): Update.
     5921        (struct ppc_link_hash_table): Add have_undefweak.
     5922        (ppc64_elf_link_hash_table_create): Init.
     5923        (func_desc_adjust): Set have_undefweak.
     5924        (ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier.  Only
     5925        add the .sfpr blr when have_undefweak.
     5926        (ppc64_elf_setup_section_lists): Check hash table flavour.
     5927        (ppc64_elf_next_input_section): Move output_section->owner test to
     5928        ppc64elf.em.
     5929        (ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param
     5930        and relocatable test.  Return TOCstart and don't set elf_gp.
     5931        (ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch
     5932        offset calculation.  Add assert on weak sym branch tweaks.
     5933        * elf64-ppc.h (ppc64_elf_set_toc): Delete.
     5934        (ppc64_elf_toc): Declare.
     5935        (ppc64_elf_next_input_section): Update.
     5936
     59372002-05-01  Alan Modra  <amodra@bigpond.net.au>
     5938
     5939        * syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL
     5940        file_name.
     5941
     59422002-05-01  Alan Modra  <amodra@bigpond.net.au>
     5943
     5944        * elf64-ppc.c (CROR_151515, CROR_313131): Define.
     5945        (ppc64_elf_relocate_section): Use them.  Don't look for plt calls
     5946        on R_PPC64_ADDR24 relocs.  Require a nop or no link reg on plt
     5947        call branches.  Correct undefined weak destination.
     5948        (ppc64_elf_func_desc_adjust): Always create at least one blr in
     5949        .sfpr, and correct case where either only savef* or restf* is
     5950        needed.
     5951
     5952        Long branch stubs, multiple stub sections.
     5953        * elf64-ppc.h (ppc64_elf_setup_section_lists): Declare.
     5954        (ppc64_elf_next_input_section): Declare.
     5955        * elf64-ppc.c: Move linker-only prototypes.
     5956        (STUB_SUFFIX): Define.
     5957        (enum ppc_stub_type): New.
     5958        (struct ppc_stub_hash_entry): New.
     5959        (struct ppc_branch_hash_entry): New.
     5960        (struct ppc_link_hash_entry): Add stub_cache, oh.
     5961        (struct ppc_link_hash_table): Add stub_hash_table etc.  Remove
     5962        sstub.  Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration.
     5963        Rename plt_overflow to stub_error.
     5964        (ppc_stub_hash_lookup): Define.
     5965        (ppc_branch_hash_lookup): Define.
     5966        (stub_hash_newfunc): New function.
     5967        (branch_hash_newfunc): New function.
     5968        (link_hash_newfunc): Init new fields.
     5969        (ppc64_elf_link_hash_table_create): Likewise.
     5970        (ppc64_elf_link_hash_table_free): New function.
     5971        (ppc_stub_name): New function.
     5972        (ppc_get_stub_entry): New function.
     5973        (ppc_add_stub): New function.
     5974        (create_linkage_sections): Use bfd_make_section_anyway.  Create
     5975        .branch_lt and .rela.branch_lt sections.  Don't create .stub.
     5976        (ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*,
     5977        and set up for plt call stubs.  Link func and func desc syms.
     5978        (ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24.
     5979        (func_desc_adjust): Avoid hash lookup when func desc sym available
     5980        via shortcut, and set links when processing.
     5981        (ppc64_elf_hide_symbol): Likewise.
     5982        (allocate_dynrelocs): Don't allocate stub section here.
     5983        (ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt.
     5984        Remove sstub code.
     5985        (ppc_type_of_stub): New function.
     5986        (build_one_stub): Delete.
     5987        (ppc_build_one_stub): New function.
     5988        (ppc_size_one_stub): New function.
     5989        (ppc64_elf_setup_section_lists): New function.
     5990        (ppc64_elf_next_input_section): New function.
     5991        (group_sections): New function.
     5992        (get_local_syms): New function.
     5993        (ppc64_elf_size_stubs): Rewrite.
     5994        (ppc64_elf_build_stubs): Rewrite.
     5995        (ppc64_elf_relocate_section): Look up stub entry for REL24
     5996        relocs.  Don't propagate REL14* to dynamic objects.  Look for long
     5997        branch stubs if REL14* or REL24 relocs won't reach.
     5998        (bfd_elf64_bfd_link_hash_table_free): Define.
     5999
     60002002-04-30  Mark Mitchell  <mark@codesourcery.com>
     6001
     6002        * config.bfd: Add support for powerpc-*-windiss.
     6003
     60042002-04-30  Tom Rix  <trix@redhat.com>
     6005
     6006        * xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT
     6007        symbol names into the hash table.
     6008
     60092002-04-28  Tom Rix  <trix@redhat.com>
     6010
     6011        * coff-rs6000.c (xcoff_calculate_relocation) : Function table for
     6012        calulating relocations.
     6013        (xcoff_complain_overflow) : Function table for relocation errors.
     6014        (xcoff_ppc_relocate_section): Use relocation and complain function
     6015        tables.
     6016        (xcoff_complain_overflow_unsigned_func): New complain function.
     6017        (xcoff_complain_overflow_signed_func): Same.
     6018        (xcoff_complain_overflow_bitfield_func): Same.
     6019        (xcoff_complain_overflow_dont_func): Same.
     6020        (xcoff_reloc_type_crel): New recot function.
     6021        (xcoff_reloc_type_br): Same.
     6022        (xcoff_reloc_type_ba): Same.
     6023        (xcoff_reloc_type_toc): Same.
     6024        (xcoff_reloc_type_rel): Same.
     6025        (xcoff_reloc_type_neg): Same.
     6026        (xcoff_reloc_type_pos): Same.
     6027        (xcoff_reloc_type_fail): Same.
     6028        (xcoff_reloc_type_noop): Same.
     6029        * libxcoff.h : Declare common parts for xcoff64.
     6030        * coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation
     6031        and complain function tables.
     6032
     60332002-04-28  Alan Modra  <amodra@bigpond.net.au>
     6034
     6035        * elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo.
     6036        * elf32-hppa.c (elf32_hppa_final_link): Formatting.
     6037
     60382002-04-26  Alan Modra  <amodra@bigpond.net.au>
     6039
     6040        * opncls.c (bfd_make_readable): Call bfd_section_list_clear.
     6041        * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise.
     6042
     6043        * elflink.h (elf_bfd_final_link): Ensure input bfd class is the
     6044        same as the output before calling elf_link_input_bfd.
     6045
     6046        * coffcode.h (coff_compute_section_file_positions): Set
     6047        section_tail after shuffling section list.
     6048
     60492002-04-24  Christian Groessler <chris@groessler.org>
     6050
     6051        * coff-z8k.c (extra_case): Fix R_IMM32 relocations: The
     6052        addresses are 23bit with a special layout, not plain 32bit
     6053        values.  Prevent relocation of immediate values.
     6054
     60552002-04-24  Chris G. Demetriou  <cgd@broadcom.com>
     6056
     6057        * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or
     6058        MIPS-16 ASE flags are set, print something to indicate that.
     6059
     60602002-04-23  Alan Modra  <amodra@bigpond.net.au>
     6061
     6062        * elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition
     6063        under which a plt call stub is used.
     6064        (final_link_relocate): Similarly.
     6065        (allocate_plt_static): Clear h-plabel except when plt entry is
     6066        exclusively used for a plabel.
     6067        (allocate_dynrelocs): Use the above to simplify plt sizing.
     6068        (struct elf32_hppa_link_hash_table): Add has_22bit_branch.
     6069        (elf32_hppa_link_hash_table_create): Init.
     6070        (BL22_RP): Define.
     6071        (hppa_build_one_stub): Use BL22_RP if has_22bit_branch.
     6072        (elf32_hppa_check_relocs): Set has_22bit_branch.
     6073
     6074        * elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message.
     6075        (final_link_relocate): Likewise.
     6076
     60772002-04-22  Jakub Jelinek  <jakub@redhat.com>
     6078
     6079        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build
     6080        search table if some FDE is DW_EH_PE_aligned encoded either.
     6081        (_bfd_elf_write_section_eh_frame): Handle terminating FDE specially.
     6082
     60832002-04-22  Richard Smith  <richard@ex-parrot.com>
     6084            Jakub Jelinek  <jakub@redhat.com>
     6085
     6086        * elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative.
     6087        (_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel
     6088        encoded personality.
     6089        (_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality
     6090        for CIE/FDE removal.
     6091
     60922002-04-20  Tom Rix  <trix@redhat.com>
     6093
     6094        * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent.
     6095
     60962002-04-20  Alan Modra  <amodra@bigpond.net.au>
     6097
     6098        * archures.c (bfd_lookup_arch): Move the list order comment..
     6099        (struct bfd_arch_info): ..to where it belongs.
     6100        * bfd-in2.h: Regenerate.
     6101
     6102        * archures.c (bfd_lookup_arch): Add comment on list order.
     6103        (bfd_default_set_arch_mach): Use bfd_lookup_arch.
     6104        * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
     6105        is always at head of list.
     6106
     61072002-04-18  Nick Clifton  <nickc@cambridge.redhat.com>
     6108
     6109        * coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
     6110        insert_thumb_branch, record_thumb_to_arm_glue): Suppress
     6111        definition of these functions for ARM_WINCE builds as they are
     6112        not used.
     6113        (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define
     6114        for ARM_WINCE builds.
     6115
     61162002-04-18  Nick Clifton  <nickc@cambridge.redhat.com>
     6117
     6118        * coff-arm.c (bfd_arm_process_before_allocation):
     6119
     61202002-04-17  J"orn Rennecke <joern.rennecke@superh.com>
     6121
     6122        * cpu-sh.c (scan_mach): Delete.
     6123        (arch_info_struct): Replace scan_mach with bfd_default_scan.
     6124        (bfd_sh_arch): Likewise.
     6125
     61262002-04-16  Nick Clifton  <nickc@cambridge.redhat.com>
     6127
     6128        * ihex.c (ihex_write_object_contents): Fix check for records
     6129        crossing 64K boundaries.
     6130
     61312002-04-16  Alan Modra  <amodra@bigpond.net.au>
     6132
     6133        * elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table
     6134        type rather than just assuming entries are ELF.
     6135        * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
     6136        * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
     6137        * elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise.
     6138        * elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry
     6139        rather than elf_link_hash_entry.
     6140
     61412002-04-15  Richard Henderson  <rth@redhat.com>
     6142
     6143        * elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow
     6144        n32 binaries.
     6145
     61462002-04-15  Michael Snyder  <msnyder@redhat.com>
     6147
     6148        * opncls.c (bfd_close): Write contents if writeable.
     6149        Minor formatting tidy-ups.
     6150
     61512002-04-15  Alan Modra  <amodra@bigpond.net.au>
     6152
     6153        * elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type.
     6154
     61552002-04-12  Michael Snyder  <msnyder@redhat.com>
     6156
     6157        * bfd-in.h (bfd_get_section_lma): New access macro.
     6158        Minor white-space fix-up.
     6159
     61602002-04-12  Alan Modra  <amodra@bigpond.net.au>
     6161
     6162        * elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or
     6163        header pad.
     6164
     61652002-04-09  DJ Delorie  <dj@redhat.com>
     6166
     6167        * elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks.
     6168
     61692002-04-09  Casper S. Hornstrup <chorns@users.sourceforge.net>
     6170
     6171        * coffcode.h (coff_read_word): New.
     6172        (coff_compute_checksum): New.
     6173        (coff_apply_checksum): New.
     6174        (coff_write_object_contents): Call coff_apply_checksum () to
     6175        apply checksum to PE image.
     6176
     61772002-04-08  Randolph Chung  <tausq@debian.org>
     6178
     6179        * elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h.
     6180        (elf32_hppa_final_link): Split out sorting logic to..
     6181        * elf-hppa.h (elf_hppa_sort_unwind): ..here.
     6182        (elf_hppa_final_link): Call elf_hppa_sort_unwind.
     6183
     61842002-04-07  Andrew Cagney  <ac131313@redhat.com>
     6185
     6186        * configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]*
     6187        pattern.
     6188        * configure: Re-generate.
     6189
     61902002-04-07  Andrew Cagney  <ac131313@redhat.com>
     6191
     6192        * configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version
     6193        is greater or equal to 4.3.3.
     6194        * configure: Regenerate.
     6195        Fix PR gdb/344.
     6196
     61972002-04-05  Hans-Peter Nilsson  <hp@axis.com>
     6198
     6199        * elf32-cris.c (cris_elf_howto_table) <R_CRIS_16_PCREL,
     6200        R_CRIS_32_PCREL>: Fix typo in name.
     6201        (cris_elf_check_relocs): Always create .rela.got here when
     6202        R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen.
     6203        (elf_cris_adjust_gotplt_to_got): Don't create .rela.got here;
     6204        assume it's created.
     6205
     62062002-04-04  Daniel Jacobowitz  <drow@mvista.com>
     6207
     6208        * aout-adobe.c (aout_32_bfd_link_hash_table_free): Define.
     6209        * aout-target.h (MY_bfd_link_hash_table_free): Conditionally
     6210        define.
     6211        * aout-tic30.c (MY_bfd_link_hash_table_free): Likewise.
     6212        * bfd.c (bfd_link_hash_table_free): Define.
     6213        * binary.c (binary_bfd_link_hash_table_free): Define.
     6214        * bout.c (b_out_bfd_link_hash_table_free): Define.
     6215        * coff-rs6000.c (rs6000coff_vec): Include
     6216        _bfd_generic_link_hash_table_free.
     6217        (pmac_xcoff_vec): Likewise.
     6218        * coff64-rs6000.c (rs6000coff64_vec): Likewise.
     6219        (aix5coff64_vec): Likewise.
     6220        * coffcode.h (coff_bfd_link_hash_table_free): Conditionally define.
     6221        * elf-m10300.c (elf32_mn10300_link_hash_table_free): New function.
     6222        (bfd_elf32_bfd_link_hash_table_free): Define.
     6223        * elf32-hppa.c (elf32_hppa_link_hash_table_free): New function.
     6224        (bfd_elf32_bfd_link_hash_table_free): Define.
     6225        * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally
     6226        define.
     6227        * i386msdos.c (msdos_bfd_link_hash_table_free): Define.
     6228        * i386os9k.c (os9k_bfd_link_hash_table_free): Define.
     6229        * ieee.c (ieee_bfd_link_hash_table_free): Define.
     6230        * ihex.c (ihex_bfd_link_hash_table_free): Define.
     6231        * libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define.
     6232        (_bfd_generic_link_hash_table_free): Add prototype.
     6233        * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype.
     6234        * libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define.
     6235        * linker.c (_bfd_generic_link_hash_table_free): New function.
     6236        * mmo.c (mmo_bfd_link_hash_table_free): Define.
     6237        * nlm-target.h (nlm_bfd_link_hash_table_free): Define.
     6238        * oasys.c (oasys_bfd_link_hash_table_free): Define.
     6239        * ppcboot.c (ppcboot_bfd_link_hash_table_free): Define.
     6240        * som.c (som_bfd_link_hash_table_free): Define.
     6241        * srec.c (srec_bfd_link_hash_table_free): Define.
     6242        * tekhex.c (tekhex_bfd_link_hash_table_free): Define.
     6243        * versados.c (versados_bfd_link_hash_table_free): Define.
     6244        * vms.c (vms_bfd_link_hash_table_free): New function.
     6245        * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function.
     6246
     6247        * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc
     6248        instead of bfd_alloc.
     6249        * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
     6250        * coff-mcore.c (coff_mcore_link_hash_table_create): Likewise.
     6251        * coff-ppc.c (ppc_coff_link_hash_table_create): Likewise.
     6252        * cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
     6253        * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
     6254        * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
     6255        * elf.c (_bfd_elf_link_hash_table_create): Likewise.
     6256        * elf32-arm.h (elf32_arm_link_hash_table_create): Likewise.
     6257        * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
     6258        * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
     6259        * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
     6260        * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
     6261        * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
     6262        * elf32-sh.c (sh_elf_link_hash_table_create): Likewise.
     6263        * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise.
     6264        * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
     6265        * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
     6266        * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
     6267        * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise.
     6268        * elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise.
     6269        * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
     6270        * linker.c (_bfd_generic_link_hash_table_create): Likewise.
     6271        * m68klinux.c (linux_link_hash_table_create): Likewise.
     6272        * sparclinux.c (linux_link_hash_table_create): Likewise.
     6273        * sunos.c (sunos_link_hash_table_create): Likewise.
     6274        * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
     6275
     6276        * targets.c: Add _bfd_link_hash_table_free to xvec.
     6277
     6278        * bfd-in2.h: Regenerate.
     6279        * libbfd.h: Regenerate.
    11296280        * libcoff.h: Regenerate.
    1130         * coffgen.c (coff_find_nearest_line): Call
    1131         _bfd_dwarf2_find_nearest_line.
    1132         * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add parameter. Update
     6281
     62822002-04-04  Alan Modra  <amodra@bigpond.net.au>
     6283
     6284        * dep-in.sed: Cope with absolute paths.
     6285        * Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR.
     6286        Run "make dep-am".
     6287        * Makefile.in: Regenerate.
     6288        * coff-arm.c: Fix copyright date.
     6289        * cpu-h8300.c: Likewise.
     6290        * cpu-i370.c: Likewise.
     6291        * cpu-s390.c: Likewise.
     6292        * cpu-mips.c: Likewise.
     6293        * po/SRC-POTFILES.in: Regenerate.
     6294
     62952002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
     6296
     6297        * Makefile.am: Add elfxx-mips.c to the known backends.
     6298        (elf32-mips.lo): remove dependency to coff/external.h.
     6299        * Makefile.in: Regenerate.
     6300        * configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo
     6301        Remove elf32-mips.lo from 64 bit vectors. Update dependencies
    11336302        accordingly.
    1134         (read_abbrevs): Likewise
    1135         (decode_line_info): Likewise.
    1136         (parse_comp_unit): Likewise.
    1137         (comp_unit_find_nearest_line): Likewise.
    1138         * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype.
     6303        * configure: Regenerate.
     6304        * elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h.
     6305        (irix_compat_t): IRIX compatibility level, moved from elf32-mips.c.
     6306        (elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New
     6307        MIPS specific backend functions.
     6308        * elf32-mips.c: Moved most code to elfxx-mips.c.
     6309        (mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make
     6310        static.
     6311        (mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc.
     6312        (mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc.
     6313        (mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc.
     6314        (mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed
     6315        interface to allow selection of the right REL or RELA howto table.
     6316        (mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made
     6317        static. Let it refuse n32 objects.
     6318        (elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus.
     6319        (elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo.
     6320        (elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info.
     6321        (elf32_mips_ignore_discarded_relocs): Rename from
     6322        _bfd_elf32_mips_ignore_discarded_relocs.
     6323        (elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section.
     6324        (elf32_mips_irix_compat): New function, replaces IRIX_COMPAT.
     6325        (elf_mips_howto_table_rela): Remove.
     6326        * elf64-mips.c: Moved most code to elfxx-mips.c.
     6327        (bfd_elf64_bfd_reloc_type_lookup): Make static.
     6328        (mips_elf64_rtype_to_howto): New function.
     6329        (mips_elf64_object_p): Likewise.
     6330        (elf64_mips_irix_compat): Likewise.
     6331        * elfxx-mips.c: New file containing common code merged together from
     6332        elf32-mips.c and elf64-mips.c.
     6333        * elfxx-mips.h: New file containing MIPS specific prototypes from
     6334        elf-bfd.h.
     6335        * elfxx-target.h: Add handling for elf_backend_mips_irix_compat and
     6336        elf_backend_mips_rtype_to_howto.
     6337
     63382002-04-04  Alan Modra  <amodra@bigpond.net.au>
     6339
     6340        * srec.c (MAXCHUNK, Chunk): Revise comments.
     6341        (srec_write_record): Correct buffer size.
     6342        (srec_write_header): Do without intermediate buffer.
     6343        (srec_write_section): Validate Chunk.
     6344        (srec_write_terminator): Pass NULL instead of dummy buffer.
     6345        (srec_write_symbols): Pass file and symbol names directly to
     6346        bfd_bwrite so sprintf won't overflow buffer.
     6347
     63482002-04-03  Jakub Jelinek  <jakub@redhat.com>
     6349
     6350        * elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic
     6351        PC relative relocs against hidden symbols.
     6352        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
     6353
     63542002-04-03  Alan Modra  <amodra@bigpond.net.au>
     6355
     6356        * elf.c (_bfd_elf_make_section_from_shdr): When setting section
     6357        LMAs, loop over segments until p_vaddr and p_memsz specify an
     6358        extent enclosing the section.
     6359
     63602002-04-02  Nick Clifton  <nickc@cambridge.redhat.com>
     6361
     6362        * ihex.c (ihex_write_object_contents): Do not allow records to
     6363        cross a 64K boundary - wrap if necessary.
     6364
     63652002-04-01  Nathan Williams  <nathanw@wasabisystems.com>
     6366
     6367        * elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error
     6368        which caused the returned LWP ID to always be 0.
     6369
     63702002-04-01  Richard Henderson  <rth@redhat.com>
     6371
     6372        * elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
     6373        (elf32_sparc_relocate_section): Use it to figure out when to
     6374        initialize .got entries.
     6375        * elf64-sparc.c: Similarly.
     6376
     63772002-03-28  Alan Modra  <amodra@bigpond.net.au>
     6378
     6379        * linker.c (link_action): Ignore duplicate warning syms.
     6380        (_bfd_generic_link_write_global_symbol): Follow warning symbol link.
     6381        * elflink.h (elf_adjust_dynstr_offsets): Likewise.
     6382        (elf_adjust_dynamic_symbol): Likewise.
     6383        (elf_export_symbol): Likewise.
     6384        (elf_link_find_version_dependencies): Likewise.
     6385        (elf_link_assign_sym_version): Likewise.
     6386        (elf_link_sec_merge_syms): Likewise.
     6387        (elf_link_output_extsym): Likewise.
     6388        (elf_gc_sweep_symbol): Likewise.
     6389        (elf_gc_propagate_vtable_entries_used): Likewise.
     6390        (elf_gc_smash_unused_vtentry_relocs): Likewise.
     6391        (elf_gc_allocate_got_offsets): Likewise.
     6392        (elf_collect_hash_codes): Likewise.
     6393        * elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise.
     6394        * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
     6395        (elf_hppa_remark_useless_dynamic_symbols): Likewise.
     6396        * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
     6397        * elf32-arm.h (elf32_arm_discard_copies): Likewise.
     6398        * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise.
     6399        (elf_cris_discard_excess_dso_dynamics): Likewise.
     6400        * elf32-hppa.c (clobber_millicode_symbols): Likewise.
     6401        (mark_PIC_calls): Likewise.
     6402        (allocate_plt_static): Likewise.
     6403        (allocate_dynrelocs): Likewise.
     6404        (readonly_dynrelocs): Likewise.
     6405        * elf32-i386.c (allocate_dynrelocs): Likewise.
     6406        (readonly_dynrelocs): Likewise.
     6407        * elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
     6408        * elf32-m68k.c (elf_m68k_discard_copies): Likewise.
     6409        * elf32-mips.c (mips_elf_output_extsym): Likewise.
     6410        (mips_elf_sort_hash_table_f): Likewise.
     6411        (mips_elf_check_mips16_stubs): Likewise.
     6412        * elf32-s390.c (allocate_dynrelocs): Likewise.
     6413        (readonly_dynrelocs): Likewise.
     6414        * elf32-sh.c (sh_elf_discard_copies): Likewise.
     6415        * elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise.
     6416        (xstormy16_relax_plt_realloc): Likewise.
     6417        * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
     6418        (elf64_alpha_output_extsym): Likewise.
     6419        * elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise.
     6420        * elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise.
     6421        (mips_elf64_check_mips16_stubs): Likewise.
     6422        (mips_elf64_output_extsym): Likewise.
     6423        * elf64-ppc.c (func_desc_adjust): Likewise.
     6424        (allocate_dynrelocs): Likewise.
     6425        (readonly_dynrelocs): Likewise.
     6426        * elf64-s390.c (allocate_dynrelocs): Likewise.
     6427        (readonly_dynrelocs): Likewise.
     6428        * elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
     6429        * elf64-x86-64.c (allocate_dynrelocs): Likewise.
     6430        (readonly_dynrelocs): Likewise.
     6431        * elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise.
     6432        * aoutx.h (aout_link_write_other_symbol): Likewise.
     6433        * cofflink.c (_bfd_coff_write_task_globals): Likewise.
     6434        (_bfd_coff_write_global_sym): Likewise.
     6435        * i386linux.c (linux_tally_symbols): Likewise.
     6436        * m68klinux.c (linux_tally_symbols): Likewise.
     6437        * sparclinux.c (linux_tally_symbols): Likewise.
     6438        * pdp11.c (aout_link_write_other_symbol): Likewise.
     6439        * sunos.c (sunos_scan_dynamic_symbol): Likewise.
     6440        * xcofflink.c (xcoff_build_ldsyms): Likewise.
     6441        (xcoff_write_global_symbol): Likewise.
     6442
     6443        * cofflink.c (_bfd_coff_final_link): Formatting.
     6444        * cpu-mips.c (mips_compatible): Make static, prototype.
     6445        * elf32-i386.c (elf_i386_check_relocs): Formatting.
     6446        * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
     6447        * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
     6448        * elf64-mips.c (mips_elf64_sort_hash_table): Likewise.
     6449        (mips_elf64_final_link): Likewise.
     6450        * elflink.h (elf_link_find_version_dependencies): Remove duplicate
     6451        prototype.
     6452
     64532002-03-27  Nick Clifton  <nickc@cambridge.redhat.com>
     6454
     6455        * coff-arm.c (SWAP_IN_RELOC_OFFSET): Define.
     6456        (SWAP_OUT_RELOC_OFFSET): Define.
     6457
     64582002-03-27  Gregory Steuck <greg@nest.cx>
     6459
     6460        * elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for
     6461        terminating NULL if empty symbol table.
     6462        (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise.
     6463
     64642002-03-26  H.J. Lu  (hjl@gnu.org)
     6465
     6466        * elflink.h (elf_link_input_bfd): Revert the last change since
     6467        the gcc exception handling isn't fixed yet.
     6468
     64692002-03-26  H.J. Lu  (hjl@gnu.org)
     6470
     6471        * elflink.h (elf_link_input_bfd): Complain about relocations
     6472        against local symbols in discarded sections.
     6473
     64742002-03-26  Alan Modra  <amodra@bigpond.net.au>
     6475
     6476        * elflink.h (elf_gc_mark): Don't recurse into non-ELF sections.
     6477
     64782002-03-23  Alan Modra  <amodra@bigpond.net.au>
     6479
     6480        * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
     6481        section file offset for !SEC_LOAD sections.
     6482
     64832002-03-21  Richard Earnshaw  <rearnsha@arm.com>
     6484
     6485        * elf32-arm.h (elf32_arm_final_link_relocate <case R_ARM_GOTOFF>,
     6486        <case R_ARM_GOT>): Handle relocations to Thumb functions.
     6487
     64882002-03-21  Alan Modra  <amodra@bigpond.net.au>
     6489
     6490        * coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype.
     6491        Whitespace changes.
     6492        * archive.c: Update copyright date.
     6493        * bfd-in2.h: Regenerate.
    11396494        * libbfd.h: Regenerate.
    1140         * elf.c (_bfd_elf_find_nearest_line): Update call.
    1141         * elf-bfd.h (elf_obj_tdata): Change dwarf2_find_line_info to type PTR.
    1142         * dwarf2.c (concat_filename): Use IS_ABSOLUTE_PATH.
    1143         * coffcode.h (STYP_XCOFF_DEBUG, STYP_DEBUG_INFO): New macros.
    1144         (sec_to_styp_flags): Use them. Handle DWARF2 sections.
    1145         (styp_to_sec_flags): Handle DWARF2 sections.
    1146         * elf32-arm.h (elf32_arm_find_nearest_line): Add parameter to call
    1147         to _bfd_find_nearest_line.
    1148         * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Add parameter to
    1149         call to _bfd_find_nearest_line.
    1150 
    1151 2000-12-08  Kazu Hirata  <kazu@hxi.com>
    1152 
    1153         * coffgen.c: Fix formatting.
    1154         * elf-m10300.c: Likewise.
    1155         * elf32-i386.c: Likewise.
    1156         * elf32-i960.c: Likewise.
    1157         * elf32-m68k.c: Likewise.
    1158         * elf32-mcore.c: Likewise.
    1159         * elf32-ppc.c: Likewise.
    1160         * elf32-sh.c: Likewise.
    1161         * elf32-sparc.c: Likewise.
    1162         * elf32-v850.c: Likewise.
    1163         * elf64-alpha.c: Likewise.
    1164         * elf64-hppa.c: Likewise.
    1165         * elf64-mips.c: Likewise.
    1166         * elf64-sparc.c: Likewise.
    1167 
    1168 2000-12-07  Kazu Hirata  <kazu@hxi.com>
    1169 
    1170         * elf32-ppc.c: Fix formatting.
    1171         * elf64-x86-64.c: Likewise.
    1172 
    1173 2000-12-06  Ulf Carlsson  <ulfc@engr.sgi.com>
    1174 
    1175         From  Ralf Baechle  <ralf@gnu.org>
    1176 
    1177         * elf32-mips.c (elf32_mips_merge_private_bfd_data): Always permit
    1178         BFDs containing no sections or empty .text, .data or .bss sections
    1179         to be merged, regardless of their flags.
    1180 
    1181 2000-12-06  Kazu Hirata  <kazu@hxi.com>
    1182 
    1183         * elf32-m32r.c: Fix formatting.
    1184         * elf32-m68hc11.c: Likewise.
    1185         * elf32-m68hc12.c: Likewise.
    1186         * elf32-m68k.c: Likewise.
    1187         * elf32-mcore.c: Likewise.
    1188         * elf32-pj.c: Likewise.
    1189         * elf32-ppc.c: Likewise.
    1190 
    1191 2000-12-05  Kazu Hirata  <kazu@hxi.com>
    1192 
    1193         * elf32-fr30.c: Fix formatting.
    1194         * elf32-hppa.c: Likewise.
    1195         * elf32-i370.c: Likewise.
    1196         * elf32-i386.c: Likewise.
    1197         * elf32-i860.c: Likewise.
    1198         * elf32-i960.c: Likewise.
    1199 
    1200 2000-12-03  Kazu Hirata  <kazu@hxi.com>
    1201 
    1202         * elf32-arm.h: Fix formatting.
    1203         * elf32-avr.c: Likewise.
    1204         * elf32-cris.c: Likewise.
    1205         * elf32-d10v.c: Likewise.
    1206         * elf32-d30v.c: Likewise.
    1207         * elf-hppa.h: Likewise.
    1208         * elf-m10200.c: Likewise.
    1209         * elf-m10300.c: Likewise.
    1210 
    1211 2000-12-01  Chris Demetriou  <cgd@sibyte.com>
    1212 
    1213         * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mips32 and
    1214         bfd_mach_mips32_4k.  Update FIXME comment.
    1215         * archures.c (bfd_mach_mips32): New constant.
    1216         (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to
    1217         the latter, renumber it.
    1218         * bfd-in2.h (bfd_mach_mips32): New constant.
    1219         (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to
    1220         the latter, renumber it.
    1221         * cpu-mips.c (I_mips32): New constant.
    1222         (I_mips4K, I_mips32_4k): Rename the former to the latter.
    1223         (arch_info_struct): Add bfd_mach_mips32 entry, replace
    1224         bfd_mach_mips4K entry with bfd_mach_mips32_4k entry.
    1225         * elf32-mips.c (elf_mips_isa): Add E_MIPS_ARCH_32 case.
    1226         (elf_mips_mach): Likewise.  Also, replace E_MIPS_MACH_MIPS32
    1227         with E_MIPS_MACH_MIPS32_4K.
    1228         (_bfd_mips_elf_final_write_processing): Replace
    1229         bfd_mach_mips4K with bfd_mach_mips32_4k case, add
    1230         bfd_mach_mips32 case.
    1231         (_bfd_mips_elf_merge_private_bfd_data): Generalize ISA mixing
    1232         comparison with support for MIPS32.
    1233         (_bfd_mips_elf_print_private_bfd_data): Print ISA name for
    1234         MIPS32.
    1235 
    1236         * aoutx.h (NAME(aout,machine_type)): Add cases for
    1237         bfd_mach_mips5 and bfd_mach_mips64.
    1238         * archures.c (bfd_mach_mips5, bfd_mach_mips64): New constants.
    1239         * bfd-in2.h (bfd_mach_mips5, bfd_mach_mips64): Likewise.
    1240         * cpu_mips.c (I_mips5, I_mips64): New definitions.
    1241         (arch_info_struct): Add entries for bfd_mach_mips5 and
    1242         bfd_mach_mips64.
    1243         * elf32-mips.c (elf_mips_isa, elf_mips_mach,
    1244         _bfd_mips_elf_print_private_bfd_data): Add cases for
    1245         E_MIPS_ARCH_5 and E_MIPS_ARCH_64.
    1246         (_bfd_mips_elf_final_write_processing): Add cases for
    1247         bfd_mach_mips5 and bfd_mach_mips64.
    1248 
    1249         * bfd/aoutx.h (NAME(aout,machine_type)): Add a
    1250         bfd_mach_mips_sb1 case.
    1251         * bfd/archures.c (bfd_mach_mips_sb1): New constant.
    1252         * bfd/bfd-in2.h (bfd_mach_mips_sb1): New constant.
    1253         * bfd/cpu-mips.c (I_sb1): New constant.
    1254         (arch_info_struct): Add entry for bfd_mach_mips_sb1.
    1255         * bfd/elf32-mips.c (elf_mips_mach): Add case for
    1256         E_MIPS_MACH_SB1.
    1257         (_bfd_mips_elf_final_write_processing): Add case for
    1258         bfd_mach_mips_sb1.
    1259 
    1260 2000-12-01  Joel Sherrill <joel@OARcorp.com>
    1261 
    1262         * config.bfd (arm-*-rtems*, a29k-*rtems*): New targets.
    1263         (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets.
    1264         (sparc*-*-rtems*): Switched from a.out to ELF.
    1265 
    1266 2000-11-30  Jan Hubicka  <jh@suse.cz>
    1267 
    1268         * Makefile.am (BFD64_BACKENDS): Add elf64-x86-64.lo
    1269         BFD64_BACKENDS_CFILES): Add elf64-x86-64.c
    1270         (elf64-x86-64.lo): Add dependencies.
    1271         * archures.c (DESCRIPTION): Add bfd_mach_x86_64,
    1272         bfd_mach_x86_64_intel_syntax.
    1273         * elf.c (prep_headers): Use EM_x86_64 for 64bit output.
    1274         * config.bfd (x86_64): Add.
    1275         * configure.in: Add support for bfd_elf64_x86_64_vec.
    1276         * cpu-i386.c (bfd_x86_64_arch_intel_syntax, bfd_x86_64_arch): Add.
    1277         (bfd_i386_arch, i8086_ar): Link in.
    1278         * elf64-x86-64.c: New file.
    1279         * reloc.c (ENUMDOC): Add BFD_RELOC_X86_64*.
    1280         * targets.c (bfd_elf64_x86_64_vec): Add.
    1281         (bfd_target_vect): Add bfd_elf64_x86_64_vec.
    1282 
    1283 2000-11-30  Kazu Hirata  <kazu@hxi.com>
    1284 
    1285         * xcofflink.c: Fix formatting.
    1286 
    1287 2000-11-28  Kazu Hirata  <kazu@hxi.com>
    1288 
    1289         * aoutx.h: Fix formatting.
    1290         * bfd-in.h: Likewise.
    1291         * bfd-in2.h: Likewise.
    1292         * cache.c: Likewise.
    1293         * cisco-core.c: Likewise.
    1294         * coff64-rs6000.c: Likewise.
    1295         * coffcode.h: Likewise.
    1296         * coffswap.h: Likewise.
    1297         * corefile.c: Likewise.
    1298         * elf32-mips.c: Likewise.
    1299 
    1300 2000-11-27  Kazu Hirata  <kazu@hxi.com>
    1301 
    1302         * aout-adobe.c: Fix formatting.
    1303         * coff64-rs6000.c: Likewise.
    1304         * coffgen.c: Likewise.
    1305         * cofflink.c: Likewise.
    1306 
    1307 2000-11-27  Philip Blundell  <pb@futuretv.com>
    1308 
    1309         * libcoff-in.h (coff_tdata): Add `strings_written' flag.
    1310         (obj_coff_strings_written): New accessor macro for above.
    1311         * libcoff.h: Regenerate.
    1312         * cofflink.c (_bfd_coff_final_link): Say that we wrote the
    1313         strings.
    1314         * coffcode.h (coff_write_object_contents): No need to write out
    1315         the string table if it's already been done.
    1316 
    1317 2000-11-22  Philip Blundell  <pb@futuretv.com>
    1318 
    1319         * cofflink.c (_bfd_coff_generic_relocate_section): Don't object to
    1320         weak undefined symbols.
    1321 
    1322 2000-11-24  Nick Clifton  <nickc@redhat.com>
    1323 
    1324         * archures.c (bfd_mach_arm_5TE): Define.
    1325         (bfd_mach_arm+XScale): Define.
     6495        * Makefile.am: Run "make dep-am"
     6496        * Makefile.in: Regenerate.
     6497        * po/SRC-POTFILES.in: Regenerate.
     6498
     64992002-03-20  Daniel Jacobowitz  <drow@mvista.com>
     6500
     6501        * dwarf2.c (struct funcinfo): Move up.
     6502        (lookup_address_in_function_table): New argument function_ptr.
     6503        Set it.
     6504        (lookup_address_in_line_table): New argument function.  If function
     6505        is non-NULL, use it to handle ``addr'' before the first line note of
     6506        the function.
     6507        (comp_unit_find_nearest_line): Update and swap calls to
     6508        lookup_address_in_function_table and lookup_address_in_line_table.
     6509        * syms.c (_bfd_stab_section_find_nearest_line): Use the first
     6510        N_SLINE encountered if we see an N_FUN before any N_SLINE.
     6511
     65122002-03-20  Tom Rix  <trix@redhat.com>
     6513
     6514        * coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from
     6515        _bfd_xcoff_generic_stat_arch_elt.  Fix format check.
     6516        * coff64-rs6000.c :  Use _bfd_xcoff_stat_arch_elt.
     6517
     65182002-03-19  Tom Rix  <trix@redhat.com>
     6519
     6520        * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all
     6521        dynamic objects in archives.
     6522
     65232002-03-19  Hans-Peter Nilsson  <hp@bitrange.com>
     6524
     6525        * elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set
     6526        STT_NOTYPE symbols to STT_OBJECT.
     6527
     65282002-03-18  Jan Hubicka  <jh@suse.cz>
     6529
     6530        * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"
     6531
     65322002-03-18  Tom Rix  <trix@redhat.com>
     6533
     6534        * aix5ppc.core.c : New file for AIX 5 64 bit core support.
     6535        * bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration.
     6536        * coff-rs6000 (do_pad) : New function for archive padding.
     6537        (do_copy) : New function for object file copying in archives.
     6538        (do_shared_object_padding) : New function for padding shared
     6539        objects to their text section alignment in archives.
     6540        (bfd_xcoff_ar_achive_set_magic) : Stub.
     6541        (xcoff_write_armap_big) : Use do_copy and do_pad.
     6542        (xcoff_write_archive_contents_big) : Use do_shared_object_padding,
     6543        do_copy and do_pad.
     6544        * coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use
     6545        bfd_xcoff_magic_number.
     6546        (xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook
     6547        fop.
     6548        (xcoff_backend_data_r) : Use xcoff64_bad_format_hook.
     6549        (bfd_xcoff_aix5_backend_data) : New Aix 5 backend data.
     6550        (aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000.
     6551        * rs6000-core.c : Update copyright date.
     6552        * xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL
     6553        csectpp.
     6554        * coffcode.h (coff_new_section_hook) : Use new accessor macros.
     6555        (coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #.
     6556        (coff_set_flags) : Use bfd_xcoff_magic_number.
     6557        * libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC.
     6558        * configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support.
     6559        * Makefile.am : Same.
     6560        * config.bfd : Same.
     6561        * targets.c : Same.
     6562        * configure : Regnerate.
     6563        * Makefile.in : Same.
     6564        * bfd-in2.h : Same.
     6565
     65662002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>
     6567
     6568        * po/fr.po: Updated version.
     6569
     65702002-03-18  Alan Modra  <amodra@bigpond.net.au>
     6571
     6572        * libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success.
     6573        * libbfd.h: Regenerate.
     6574        * archive.c (coff_write_armap): Pass on failures from
     6575        bfd_write_bigendian_4byte_int.
     6576
     65772002-03-14  H.J. Lu <hjl@gnu.org>
     6578
     6579        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD
     6580        error to bfd_error_nonrepresentable_section for reinit_array
     6581        section in DSO.
     6582
     65832002-03-14  Nick Clifton  <nickc@cambridge.redhat.com>
     6584
     6585        * coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag,
     6586        OR it in rather than replacing previously selected flags.
     6587
     6588        * elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15.
     6589        (TARGET_LITTLE_SYM): Set ar_max_namelen to 15.
     6590
     65912002-03-14  Alan Modra  <amodra@bigpond.net.au>
     6592
     6593        * cpu-mips.c (mips_compatible): New.  Don't check bits_per_word.
     6594        (N): Use the above.
     6595        * elflink.h (elf_bfd_final_link): Revert last change.  Instead,
     6596        ensure reloc size matches before calling elf_link_input_bfd.
     6597        Add an assert to check reloc size when counting output relocs.
     6598
     65992002-03-14  Nick Clifton  <nickc@cambridge.redhat.com>
     6600
     6601        * mmo.c (mmo_get_loc): Return NULL rather than false.
     6602
     66032002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>
     6604
     6605        * po/fr.po: Updated version.
     6606
     66072002-03-13  Alan Modra  <amodra@bigpond.net.au>
     6608
     6609        * archures.c (bfd_default_compatible): Test bits_per_word.
     6610        * cpu-i386.c (i386_compatible): Remove.  Replace occurrences with
     6611        bfd_default_compatible.
     6612        * cpu-i370.c (i370_compatible): Likewise.
     6613        * cpu-sparc.c (sparc_compatible): Likewise.
     6614        * cpu-h8300.c (compatible): Test in->arch == out->arch.
     6615
     6616        * elflink.h: Formatting fixes.
     6617        (elf_link_output_extsym): Merge undefined and undef weak cases.
     6618
     6619        * elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd
     6620        when word size of input matches output word size.
     6621
     66222002-03-12  Andreas Jaeger  <aj@suse.de>
     6623
     6624        * cpu-i386.c (i386_compatible): New.  Use it instead of
     6625        bfd_default_compatible.
     6626
     66272002-03-07  H.J. Lu  (hjl@gnu.org)
     6628
     6629        * coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type
     6630        as the type for bfd_reloc_val.
     6631
     66322002-03-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     6633
     6634        * elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function.
     6635        (elf_hppa_relocate_section): Ignore undefined dynamic loader symbols.
     6636        (elf_hppa_final_link_relocate): Correct relocations for indirect
     6637        references to local data through the DLT.  Fix .opd creation for
     6638        local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64
     6639        relocations.  Use e_lsel selector for R_PARISC_DLTIND21L,
     6640        R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per
     6641        "Processor-Specific ELF for PA_RISC, Version 1.43" document.
     6642        Similarly, use e_rsel for DLT and LTOFF 'R' relocations.
     6643        * elf32-hppa.c (final_link_relocate): Revise relocation selectors
     6644        as per "Processor-Specific ELF for PA_RISC, Version 1.43" document.
     6645
     66462002-03-05  Jakub Jelinek  <jakub@redhat.com>
     6647
     6648        * merge.c (_bfd_merge_sections): Don't segfault if there
     6649        is nothing to merge due to GC.
     6650
     66512002-03-05  Alan Modra  <amodra@bigpond.net.au>
     6652
     6653        * elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep
     6654        symbols that have been forced local.
     6655
     6656        * elflink.h (elf_bfd_final_link): Call elf_link_output_extsym
     6657        to output forced local syms for non-shared link.
     6658        (elf_link_output_extsym): Tweak condition for calling backend
     6659        adjust_dynamic_symbol so that previous behaviour is kept.
     6660        Whitespace changes throughout file.
     6661
     66622002-03-04  H.J. Lu <hjl@gnu.org>
     6663
     6664        * elf.c (bfd_section_from_shdr): Handle special sections,
     6665        .init_array, .fini_array and .preinit_array.
     6666        (elf_fake_sections): Likewise.
     6667
     6668        * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the
     6669        DT entry only if the section is in output for .init_array,
     6670        .fini_array and .preinit_array. Complain about .preinit_array
     6671        section in DSO.
     6672        (elf_bfd_final_link): Warn zero size for .init_array,
     6673        .fini_array and .preinit_array sections.
     6674
     6675        * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove
     6676        SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY.
     6677        (elfNN_ia64_fake_sections): Remove .init_array, .fini_array and
     6678        .preinit_array.
     6679
     66802002-03-04  Alan Modra  <amodra@bigpond.net.au>
     6681
     6682        * configure.in (WIN32LIBADD): Don't eval PICFLAG assignment.
     6683        * configure: Regenerate.
     6684
     66852002-03-02  Tom Rix  <trix@redhat.com>
     6686
     6687        * coff64-rs6000.c (xcoff64_howto_table): Replace howto types with
     6688        symbolic equiv.
     6689        * coff-rs6000.c (xcoff_howto_table): Same.
     6690
     66912002-03-01  David Mosberger  <davidm@hpl.hp.com>
     6692
     6693        * elflink.h (size_dynamic_sections): If section named
     6694        ".preinit_array" exists, create DT_PREINIT_ARRAY and
     6695        DT_PREINIT_ARRAYSZ entries in dynamic table.  Analogously for
     6696        ".init_array" and ".fini_array".
     6697        (elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ,
     6698        DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and
     6699        DT_FINI_ARRAY.
     6700
     67012002-02-26  Andrew Macleod  <amacleod@cygnus.com>
     6702
     6703        * elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local
     6704        dynsyms.
     6705
     67062002-02-25  Alan Modra  <amodra@bigpond.net.au>
     6707
     6708        * elf64-hppa.h: Update copyright date.
     6709
     6710        * elf64-ppc.c (ppc64_elf_check_relocs): Warning fix.
     6711        (ppc64_elf_relocate_section): Don't generate power4 style branch
     6712        hints for *_BRTAKEN and *_BRNTAKEN relocs.
     6713
     67142002-02-22  Jakub Jelinek  <jakub@redhat.com>
     6715
     6716        * elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my
     6717        last patch.
     6718        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
     6719
     67202002-02-21  Andreas Jaeger  <aj@suse.de>
     6721
     6722        * elf64-x86-64.c: Major rework that introduces all recent changes
     6723        to the x86-64 backend.  Get a closer match to elf32-i386.
     6724        (struct elf64_x86_64_dyn_relocs): Rename from
     6725        elf64_x86_64_pcrel_relocs_copied, add additional fields.  Change
     6726        all users.
     6727        (struct elf64_x86_64_link_hash_table): Add short cuts to some
     6728        sections.
     6729        (link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc,
     6730        remove casts, initialize new hash members.
     6731        (create_got_section): New.
     6732        (elf64_x86_64_create_dynamic_sections): New.
     6733        (elf64_x86_64_copy_indirect_symbol): New.
     6734        (elf64_x86_64_check_relocs): Don't allocate space for dynamic
     6735        relocs, .got or .relgot here but do it in allocate_dynrelocs.
     6736        Reference count possible .plt and .got entries.  Don't test input
     6737        section SEC_READONLY here to try to avoid copy relocs, and keep
     6738        dyn_relocs regardless of ELF_LINK_NON_GOT_REF.  Don't set
     6739        DF_TEXTREL here.  Delay setting of variables until needed.  Cache
     6740        pointer to "sreloc" section in elf_section_data. Tweak condition
     6741        under which .got created.  Report files with bad relocation
     6742        section names.
     6743        (elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
     6744        Reference count possible .plt entries.  Don't deallocate .got and
     6745        .relgot space here.
     6746        (elf64_x86_64_adjust_dynamic_symbol): Handle nocopyreloc.  Don't
     6747        do copy reloc processing for weakdefs.  Remove redundant casts and
     6748        aborts.  Delay setting of vars until needed.  Move creation of
     6749        dynamic symbols and allocation of .plt and .rela.plt to
     6750        allocate_dynrelocs.  Replace BFD_ASSERT with abort.
     6751        (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
     6752        (allocate_dynrelocs): New.
     6753        (readonly_dynrelocs): New.
     6754        (elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs.
     6755        Allocate space for dyn relocs.  Replace BFD_ASSERT with abort.
     6756        Zero out the dynamic allocated content space.
     6757        (elf64_x86_64_discard_copies): Removed.
     6758        (elf64_x86_64_relocate_section): Make use of dynamic section
     6759        short-cuts.  Localise vars, and delay setting.  Better error
     6760        reporting, replace BFD_ASSERT with abort.  Check
     6761        ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the
     6762        regular object file and tread the weak definition as the normal
     6763        one.  Don't discard relocs for undefweak or undefined symbols and
     6764        check !DEF_REGULAR as well as DEF_DYNAMIC in test for avoided copy
     6765        relocs.
     6766        (elf64_x86_64_finish_dynamic_symbol): Don't copy relocs for
     6767        symbols that have been forced local.  Use same test to decide if
     6768        we can use a relative reloc for got as relocate_section.  Expand
     6769        SHN_UNDEF comment.  Move expressions out of function calls.
     6770        Replace BFD_ASSERT with abort.
     6771        (bfd_elf64_bfd_final_link): Removed.
     6772        (elf_backend_copy_indirect_symbol): Define.
     6773
     67742002-02-20  Tom Rix  <trix@redhat.com>
     6775
     6776        * coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA.
     6777        (_bfd_xcoff_reloc_type_lookup): Use it.
     6778        * coff64-rs6000.c (xcoff64_howto_table): Same.
     6779        (xcoff64_reloc_type_lookup): Same.
     6780
     67812002-02-20  Peter Schauer  <pes@regent.e-technik.tu-muenchen.de>
     6782
     6783        * osf-core.c (osf_core_vec):  OSF/1 (Digital Unix) core files are
     6784        little endian.
     6785
     67862002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>
     6787
     6788        * archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31.
     6789        (bfd_mach_s390_esame): Rename to bfd_mach_s390_64.
    13266790        * bfd-in2.h: Regenerate.
    1327 
    1328         * coff-arm.c (coff_arm_reloc_type_lookup): Accept
    1329         BFD_RELOC_ARM_PCREL_BLX.
    1330 
    1331         * coffcode.h (coff_set_flags): Set flags for 5t, 5te and
    1332         XScale machine numbers.
    1333 
    1334         * config.bfd (xscale-elf): Add target.
    1335         (xscale-coff): Add target.
    1336 
    1337         * cpu-arm.c: Add xscale machine name.
    1338         Add v5t, v5te and XScale machine numbers.
    1339 
    1340 2000-11-23  Kazu Hirata  <kazu@hxi.com>
    1341 
    1342         * aix386-core.c: Fix formatting.
    1343 
    1344 2000-11-22  Jim Wilson  <wilson@redhat.com>
    1345 
    1346         * coff-ia64.c (howto_table): Use EMPTY_HOWTO.
    1347         (in_reloc_p): Add ATTRIBUTE_UNUSED to unused parameters.
    1348         * cpu-ia64-opc.c (ins_rsvd, ext_rsvd, ins_const, ext_const): Likewise.
    1349         (ins_imms_scaled): Initialize sign_bit at function entry.
    1350         (elf64_ia64_operands): Add missing initializers.
    1351         * elfxx-ia64.c (elfNN_ia64_reloc, elfNN_ia64_reloc_type_lookup,
    1352         elfNN_ia64_info_to_howto, elfNN_ia64_fake_sections,
    1353         elfNN_ia64_add_symbol_hook, elfNN_ia64_is_local_label_name,
    1354         elfNN_ia64_local_hash_table_init, get_fptr, get_pltoff,
    1355         elfNN_ia64_adjust_dynamic_symbol): Add ATTRIBUTE_UNUSED for unused
    1356         parameters.
    1357         (elfNN_ia64_info_to_howto): Initialize free_relocs, free_contents,
    1358         and free_extsyms at function entry.
    1359         (elfNN_add_symbol_hook): Add unsigned cast to bfd_get_gp_size result.
    1360         (elfNN_ia64_create_dynamic_sections): Delete unused local h.
    1361         (get_got): Delete unused local srel.
    1362         (elfNN_ia64_check_relocs): Initialize dynrel_type when declared.
    1363         (elfNN_ia64_relocate_section): Delete unused local dynindx.
    1364 
    1365 2000-11-21  Kazu Hirata  <kazu@hxi.com>
    1366 
    1367         * coff-a29k.c: Fix formatting.
    1368         * coff-h8500.c: Likewise.
    1369         * coff-i960.c: Likewise.
    1370         * coff-ppc.c: Likewise.
    1371         * coff-rs6000.c: Likewise.
    1372         * coff-stgo32.c: Likewise.
    1373         * coff-tic54x.c: Likewise.
    1374         * coff-w65.c: Likewise.
    1375         * cpu-h8500.c: Likewise.
    1376         * cpu-hppa.c: Likewise.
    1377         * cpu-ns32k.c: Likewise.
    1378         * ecoff.c: Likewise.
    1379         * ecofflink.c: Likewise.
    1380 
    1381 2000-11-21  Nick Clifton  <nickc@redhat.com>
    1382 
    1383         * elf32-sh.c (sh_elf_reloc_loop): Fix compile time warning, and
    1384         remove possibility of infinite loop.
    1385 
    1386 2000-11-20  Kazu Hirata  <kazu@hxi.com>
    1387 
    1388         * aix386-core.c: Fix formatting.
    1389         * aout-adobe.c: Likewise.
    1390         * aout-arm.c: Likewise.
    1391         * aout-encap.c: Likewise.
    1392         * aout-ns32k.c: Likewise.
    1393         * aout-target.h: Likewise.
    1394         * aout-tic30.c: Likewise.
    1395         * aoutf1.h: Likewise.
    1396         * aoutx.h: Likewise.
    1397         * archive.c: Likewise.
    1398         * bfd-in.h: Likewise.
    1399         * bfd-in2.h: Likewise.
    1400         * bfd.c: Likewise.
    1401         * bout.c: Likewise.
    1402 
    1403 2000-11-17  H.J. Lu  <hjl@gnu.org>
    1404 
    1405         * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Don't create
    1406         pltoff entries for DT_INIT and DT_FINI.
    1407         (elfNN_ia64_final_link): Don't set DT_INIT/FINI entries.
    1408         (elfNN_ia64_finish_dynamic_sections): Don't fill in DT_INIT/FINI
    1409         entries.
    1410 
    1411 2000-11-16  Richard Henderson  <rth@redhat.com>
    1412 
    1413         * elfxx-ia64.c (elfNN_ia64_check_relocs): Handle IPLT relocs.
    1414         (allocate_dynrel_entries): Likewise.
    1415         (elfNN_ia64_relocate_section): Likewise.  Set REL addends correctly.
    1416         (set_pltoff_entry): Likewise.
    1417         (ia64_howto_table): Remove R_IA64_SEGBASE, and R_IA64_EPLT[ML]SB
    1418         (elfNN_ia64_reloc_type_lookup): Likewise.
    1419         (elfNN_ia64_install_value): Likewise.
    1420         (elfNN_ia64_relocate_section): Likewise.
    1421         * reloc.c (BFD_RELOC_IA64_SEGBASE): Remove.
    1422         (BFD_RELOC_IA64_EPLTMSB, BFD_RELOC_IA64_EPLTLSB): Remove.
    1423 
    1424 2000-11-16  Kazu Hirata  <kazu@hxi.com>
    1425 
    1426         * cpu-a29k.c: Fix formatting.
    1427         * cpu-alpha.c: Likewise.
    1428         * cpu-arm.c: Likewise.
    1429         * cpu-avr.c: Likewise.
    1430         * cpu-d10v.c: Likewise.
    1431         * cpu-h8500.c: Likewise.
    1432         * cpu-hppa.c: Likewise.
    1433         * cpu-i370.c: Likewise.
    1434         * cpu-i386.c: Likewise.
    1435         * cpu-i960.c: Likewise.
    1436         * cpu-ia64-opc.c: Likewise.
    1437         * cpu-ia64.c: Likewise.
    1438         * cpu-m32r.c: Likewise.
    1439         * cpu-m68hc11.c: Likewise.
    1440         * cpu-m68hc12.c: Likewise.
    1441         * cpu-m68k.c: Likewise.
    1442         * cpu-m88k.c: Likewise.
    1443         * cpu-mips.c: Likewise.
    1444         * cpu-ns32k.c: Likewise.
    1445         * cpu-pj.c: Likewise.
    1446         * cpu-powerpc.c: Likewise.
    1447         * cpu-sh.c: Likewise.
    1448         * cpu-sparc.c: Likewise.
    1449         * cpu-tic54x.c: Likewise.
    1450         * cpu-v850.c: Likewise.
    1451         * cpu-vax.c: Likewise.
    1452         * cpu-w65.c: Likewise.
    1453         * cpu-we32k.c: Likewise.
    1454         * cpu-z8k.c: Likewise.
    1455         * dwarf1.c: Likewise.
    1456         * dwarf2.c: Likewise.
    1457 
    1458 2000-11-15  Kazu Hirata  <kazu@hxi.com>
    1459 
    1460         * coff-arm.c: Fix formatting.
    1461         * coff-ppc.c: Likewise.
    1462         * coff-rs6000.c: Likewise.
    1463         * coff-sh.c: Likewise.
    1464         * coff-sparc.c: Likewise.
    1465         * coff-tic30.c: Likewise.
    1466         * coff-tic54x.c: Likewise.
    1467         * coff-tic80.c: Likewise.
    1468         * coff-w65.c: Likewise.
    1469         * coff-we32k.c: Likewise.
    1470         * coff-z8k.c: Likewise.
    1471 
    1472 2000-11-15  Richard Henderson  <rth@redhat.com>
    1473 
    1474         * elf64-alpha.c (elf64_alpha_check_relocs): Create the reloc
    1475         section with the same ALLOC|LOAD flags as the source section.
    1476 
    1477 2000-11-14  Jakub Jelinek  <jakub@redhat.com>
    1478 
    1479         * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used
    1480         by STO_ALPHA constants.
    1481 
    1482 2000-11-14  Kazu Hirata  <kazu@hxi.com>
    1483 
    1484         * coff-pmac.c: Fix formatting.
    1485         * coff-ppc.c: Likewise.
    1486 
    1487 2000-11-13  H.J. Lu  <hjl@gnu.org>
    1488 
    1489         * elflink.h (elf_link_add_object_symbols): Also add indirect
    1490         symbols for common symbols with the default version.
    1491 
    1492 2000-11-09  Philip Blundell  <pb@futuretv.com>
    1493 
    1494         * section.c (STD_SECTION): Set gc_mark flag.
    1495 
    1496 2000-11-11  Kazu Hirata  <kazu@hxi.com>
    1497 
    1498         * coff-i960.c: Likewise.
    1499         * coff-m68k.c: Likewise.
    1500         * coff-m88k.c: Likewise.
    1501         * coff-mcore.c: Likewise.
    1502         * coff-mips.c: Likewise.
    1503 
    1504 2000-11-11  Bernd Schmidt  <bernds@cygnus.co.uk>
    1505 
    1506         * elf32-sh.c (sh_elf_relocate_section): Ignore R_SH_NONE relocs.
    1507 
    1508 2000-11-10  Kazu Hirata  <kazu@hxi.com>
    1509 
    1510         * coff-h8300.c: Fix formatting.
    1511         * coff-h8500.c: Likewise.
    1512         * coff-i386.c: Likewise.
    1513         * coff-i860.c: Likewise.
    1514         * coff-i960.c: Likewise.
    1515         * coff-ia64.c: Likewise.
    1516 
    1517 2000-11-09  Kazu Hirata  <kazu@hxi.com>
    1518 
    1519         * archive.c: Fix formatting.
    1520         * archures.c: Likewise.
    1521 
    1522 2000-11-07  Richard Henderson  <rth@redhat.com>
    1523 
    1524         * elfxx-ia64.c (elf64_ia64_final_link): New local unwind_output_sec.
    1525         Set it before bfd_elf64_bfd_final_link call.  Use it after the call.
    1526         * section.c (bfd_set_section_contents): Call memcpy if
    1527         section->contents set and location not equal to contents plus offset.
    1528 
    1529 2000-11-08  Kazu Hirata  <kazu@hxi.com>
    1530 
    1531         * bfd-in.h: Fix formatting.
    1532         * bfd-in2.h: Likewise.
    1533         * bfd.c: Likewise.
    1534         * binary.c: Likewise.
    1535         * bout.c: Likewise.
    1536         * coff-a29k.c: Likewise.
    1537         * coff-alpha.c: Likewise.
    1538         * coff-apollo.c: Likewise.
    1539         * coff-aux.c: Likewise.
    1540 
    1541 2000-11-07  Kazu Hirata  <kazu@hxi.com>
    1542 
    1543         * aix386-core.c: Fix formatting.
    1544         * aoutf1.h: Likewise.
    1545         * aoutx.h: Likewise.
    1546         * archures.c: Likewise.
    1547         * armnetbsd.c: Likewise.
    1548 
    1549 2000-11-07  Alan Modra  <alan@linuxcare.com.au>
    1550 
    1551         * coff-h8300.c (special): Adjust reloc address.
    1552 
    1553 2000-11-06  Steve Ellcey <sje@cup.hp.com>
    1554 
    1555         * archures.c (bfd_mach_ia64_elf64, bfd_mach_ia64_elf32): Add defines
    1556         to differentiate elf32 and elf64 on ia64.
     6791        * cpu-s390.c (arch_info_struct): Use renamed architecture defines.
     6792        Replace architecture name "s390" with "s390:31-bit" and "s390:esame"
     6793        with "s390:64-bit".
     6794        * elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations.
     6795        (elf_s390_reloc_type_lookup): Likewise.
     6796        (elf_s390_check_relocs): Likewise.
     6797        (elf_s390_gc_sweep_hook): Likewise.
     6798        (elf_s390_relocate_section): Likewise.
     6799        (elf_s390_object_p): Use renamed architecture define.
     6800        * elf64-s390.c (elf_s390_object_p): Use renamed architecture define.
     6801
     68022002-02-19  Frank Ch. Eigler  <fche@redhat.com>
     6803
     6804        * syms.c (stt[]): Sorted.  Added .init/.fini -> "t" mapping.
     6805
     68062002-02-19  Jakub Jelinek  <jakub@redhat.com>
     6807
     6808        * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable
     6809        absptr -> pcrel optimization for shared libs.
     6810        Only create minimal .eh_frame_hdr if absptr FDE encoding in shared
     6811        library cannot be converted to pcrel.
     6812        (_bfd_elf_eh_frame_section_offset): Return -2 if making absptr
     6813        relative.
     6814        * elf32-i386.c (elf_i386_relocate_section): If
     6815        _bfd_elf_section_offset returned -2, skip, but make sure the
     6816        relocation is installed.
     6817        * elf32-arm.h (elf32_arm_final_link_relocate): Likewise.
     6818        * elf32-cris.c (cris_elf_relocate_section): Likewise.
     6819        * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
     6820        * elf32-i370.c (i370_elf_relocate_section): Likewise.
     6821        * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
     6822        * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
     6823        * elf32-s390.c (elf_s390_relocate_section): Likewise.
     6824        * elf32-sh.c (sh_elf_relocate_section): Likewise.
     6825        * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
     6826        * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
     6827        * elf64-s390.c (elf_s390_relocate_section): Likewise.
     6828        * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
     6829        * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
     6830        * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
     6831        * elf64-alpha.c (elf64_alpha_relocate_section): Handle
     6832        _bfd_elf_section_offset returning -2 the same way as -1.
     6833        * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise.
     6834        * elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME
     6835        and BFD_ASSERT.
     6836        * elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise.
     6837
     68382002-02-18  Tom Rix  <trix@redhat.com>
     6839
     6840        * xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support.
     6841        (bfd_xcoff_size_dynamic_sections): Same.
     6842        * bfd-in.h (bfd_xcoff_link_generate_rtinit): Same.
     6843        (bfd_xcoff_size_dynamic_sections): Same.
     6844        * coff-rs6000.c (xcoff_generate_rtinit): Same.
     6845        * coff-rs646000.c (xcoff64_generate_rtinit): Same.
     6846        * libxcoff.h (struct xcoff_backend_data_rec): Same.
     6847        * xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean.
    15576848        * bfd-in2.h: Regenerate.
    1558         * config.bfd: Add target for "ia64*-*-hpux*".
    1559         * configure.in: Add bfd_elf32_ia64_big_vec to selvecs switch.
     6849
     68502002-02-18  Alan Modra  <amodra@bigpond.net.au>
     6851
     6852        * elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define.
     6853        (struct ppc_link_hash_table): Add sfpr.
     6854        (ppc64_elf_link_hash_table_create): Init it.
     6855        (ppc64_elf_create_dynamic_sections): Split creation of .stub and
     6856        .glink out to..
     6857        (create_linkage_sections): ..here.  Make .sfpr too.
     6858        (ppc64_elf_check_relocs): Call create_linkage_sections, and set
     6859        dynobj early.
     6860        (MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
     6861        (ppc64_elf_func_desc_adjust): Look for missing ._savef* and
     6862        ._restf* functions, and create as needed.
     6863        (func_desc_adjust): Only force_local for shared libs.
     6864
     68652002-02-18  David O'Brien  <obrien@FreeBSD.org>
     6866
     6867        * configure.in: Bump version number post 2.12 branching.
    15606868        * configure: Regenerate.
    1561         * cpu-ia64.c (bfd_ia64_elf32_arch): Add elf32 arch info structure.
    1562         * targets.c: Add bfd_target bfd_elf32_ia64_big_vec.
    1563 
    1564         * Makefile.am: Make elf32-ia64.c and elf64-ia64.c derived objects
    1565         from elfxx-ia64.c.  Add depenency rules for making elf32-ia64.lo.
    1566         * Makefile.in: Regnerate.
    1567         * elf64-ia64.c: Deleted.
    1568         * elfxx-ia64.c: New file, paramaterized version of elf64-ia64.c.
    1569 
    1570 2000-11-06  Kazu Hirata  <kazu@hxi.com>
    1571 
    1572         * aout-adobe.c: Fix formatting.
    1573         * aout-arm.c: Likewise.
    1574         * aout-cris.c: Likewise.
    1575         * aout-encap.c: Likewise.
    1576         * aout-ns32k.c: Likewise.
    1577         * aout-target.h: Likewise.
    1578         * aout-tic30.c: Likewise.
    1579 
    1580 2000-11-05  Philip Blundell  <philb@gnu.org>
    1581 
    1582         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit
    1583         BFDs containing no sections to be merged, regardless of their flags.
    1584 
    1585 2000-11-04  Philip Blundell  <philb@gnu.org>
    1586 
    1587         * elf32-arm.h (elf32_arm_relocate_section): Suppress error message
    1588         if a relocation for an undefined symbol also results in an
    1589         overflow.
    1590 
    1591 2000-11-06  Christopher Faylor <cgf@cygnus.com>
    1592 
    1593         * config.bfd: Add support for Sun Chorus.
    1594 
    1595 2000-11-05  David O'Brien  <obrien@FreeBSD.org>
    1596 
    1597         * configure.in: Recognize alpha-*-freebsd*.
    1598         * configure: Regenerate.
    1599 
    1600 2000-11-02  Luciano Gemme <ishitawa@yahoo.com>
    1601 
    1602         * srec.c (CHUNK): Rename to DEFAULT_CHUNK.
    1603         (Chunk): New global variable set by a parameter in objcopy.c.
    1604         (S3Forced): New global variable set by a parameter in
    1605         objcopy.c.
    1606         (srec_set_section_contents): If S3Forced is true, always generate
    1607         S3 records.
    1608         (srec_write_section): Use 'Chunk' to limit maximum length of S
    1609         records.
    1610 
    1611 2000-11-02  Per Lundberg  <plundis@chaosdev.org>
    1612 
    1613         * config.bfd: Add support for i[3456]86-chaosdev-storm-chaos.
     6869
     68702002-02-17  Hans-Peter Nilsson  <hp@bitrange.com>
     6871
     6872        * mmo.c: Correct and improve comments.
     6873        (mmo_write_chunk): Store trailing byte in bfd buffer; don't
     6874        zero-pad.  Use input to fill up non-empty bfd buffer.
     6875        (mmo_flush_chunk): New function.
     6876        (mmo_write_loc_chunk): Add parameter last_vmap, all callers
     6877        changed.  Don't emit location specifier if VMA is same as
     6878        *LAST_VMAP after omitting leading zero contents.  Call
     6879        mmo_flush_chunk before emitting location specifier.
     6880        (mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished
     6881        with mmo_write_loc_chunk calls.
     6882        (mmo_internal_write_section): Call mmo_flush_chunk after
     6883        mmo_write_chunk.
     6884        (mmo_write_symbols_and_terminator): Move :Main to first position
     6885        in symbol array.  Add faked one if it does not exist if there are
     6886        other symbols.  Don't add it if there are no symbols at all.  Move
     6887        out test for value of :Main from symbol loop.  Rename table
     6888        fakemain to maintable and variable mainsym to fakemain.
     6889
     68902002-02-15  Richard Henderson  <rth@redhat.com>
     6891
     6892        * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target
     6893        section with no got matches any got.  Simplify error generaion.
     6894
     68952002-02-15  Alan Modra  <amodra@bigpond.net.au>
     6896
     6897        Support arbitrary length fill patterns.
     6898        * linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc.
     6899        (_bfd_default_link_order): Remove bfd_fill_link_order code.
     6900        Call default_data_link_order.
     6901        (default_fill_link_order): Delete.
     6902        (default_data_link_order): New function.
     6903        * elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences
     6904        of bfd_fill_link_order with bfd_data_link_order.
     6905        * elf64-alpha.c (elf64_alpha_final_link): Likewise.
     6906        * elf64-mips.c (mips_elf64_final_link): Likewise.
     6907
     6908        * bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value.
     6909        Correct value returned in "end" for "0x<non-hex>".
     6910
     69112002-02-14  Nick Clifton  <nickc@cambridge.redhat.com>
     6912
     6913        * cpu-arm.c (processors): Replace 'arch' field with 'mach'.
     6914        (scan): Test against 'mach' field in info structure.
     6915
     69162002-02-14  Alan Modra  <amodra@bigpond.net.au>
     6917
     6918        * elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD.
     6919
     69202002-02-14  Matt Fredette  <fredette@netbsd.org>
     6921
     6922        * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize
     6923        EF_M68000.
     6924
     69252002-02-13  Nick Clifton  <nickc@cambridge.redhat.com>
     6926
     6927        * elf.c (_bfd_elf_make_section_from_shdr): Do not insist on
     6928        non-zero physical addresses when adjusting the LMAs of new
     6929        sections.
     6930
     69312002-02-12  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     6932
     6933        * elf-hppa.h (elf_hppa_reloc_final_type): New function stripped
     6934        from _bfd_elf_hppa_gen_reloc_type.
     6935        (_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype.
     6936        * elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype.
     6937        * elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h.
     6938        * elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype.
     6939
     69402002-02-12  Alexandre Oliva  <aoliva@redhat.com>
     6941
     6942        * elf-m10300.c (mn10300_elf_relax_section): Skip section before
     6943        loading its contents if there's nothing to do in it.
     6944
     69452002-02-12  Alan Modra  <amodra@bigpond.net.au>
     6946
     6947        * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing
     6948        64k boundary.
     6949
     6950        * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic
     6951        DT_PPC64_OPD and DT_PPC64_OPDSZ tags.
     6952        (ppc64_elf_finish_dynamic_sections): Set values for them.
     6953
     69542002-02-11  Michael Snyder  <msnyder@redhat.com>
     6955
     6956        * elf-bfd.h (elfcore_write_lwpstatus): Add prototype.
     6957        * elf.c (elfcore_grok_pstatus): Add prototype.
     6958        (elfcore_grok_lwpstatus): Add prototype.
     6959        (elfcore_write_lwpstatus): New function.
     6960        (elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy.
     6961
     69622002-02-11  Alexandre Oliva  <aoliva@redhat.com>
     6963
     6964        * elf32-sh.c: Added missing prototypes.
     6965        * elf32-sh64.c: Likewise.
     6966        (sh_elf_align_loads): Mark unused args as such.
     6967        * elf64-sh64.c: Added missing prototypes.
     6968        (struct elf_sh64_link_hash_entry): Fix typo.
     6969        (sh_elf64_relocate_section): Fix info argument passed to
     6970        _bfd_elf_section_offset.
     6971
     69722002-02-11  Alan Modra  <amodra@bigpond.net.au>
     6973
     6974        * Makefile.am: "make dep-am".
    16146975        * Makefile.in: Regenerate.
    1615         * bfd-in2.h: Regenerate.
    1616         * po/bfd.pot: Regenerate.
    1617 
    1618 2000-10-31  Philip Blundell  <philb@gnu.org>
    1619 
    1620         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle
    1621         EF_SOFT_FLOAT if it is defined.
    1622 
    1623 2000-10-27  Philip Blundell  <philb@gnu.org>
    1624 
    1625         * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse
    1626         attempts to mix PIC code with non-PIC, just mark the output as
    1627         being position dependent.
    1628         (elf32_arm_merge_private_bfd_data): Likewise.  Print an error
    1629         message for EF_SOFT_FLOAT mismatches.  Display diagnostics for
    1630         all mismatches, not just the first one.
    1631 
    1632 2000-10-25  Chris Demetriou  <cgd@sibyte.com>
    1633 
    1634         * ieee.c (ieee_archive_p): Plug one of many possible
    1635         memory leaks in error handling.
    1636 
    1637 2000-10-20  Jakub Jelinek  <jakub@redhat.com>
    1638 
    1639         * elf32-sparc.c (elf32_sparc_merge_private_bfd_data,
    1640         elf32_sparc_object_p, elf32_sparc_final_write_processing):
    1641         Support v8plusb.
    1642         * elf64-sparc.c (sparc64_elf_merge_private_bfd_data,
    1643         sparc64_elf_object_p): Support v9b.
    1644         * archures.c: Declare v8plusb and v9b machines.
    1645         * bfd-in2.h: Ditto.
    1646         * cpu-sparc.c: Ditto.
    1647 
    1648 2000-10-16  Geoffrey Keating  <geoffk@shoggoth.cygnus.com>
    1649 
    1650         * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location
    1651         of a GOT reloc.
    1652 
    1653         * elf32-ppc.c (SYMBOL_REFERENCES_LOCAL): New macro.
    1654         (SYMBOL_CALLS_LOCAL): New macro.
    1655         (ppc_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL.
    1656         (ppc_elf_check_relocs): Use SYMBOL_REFERENCES_LOCAL.
    1657         (ppc_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL.
    1658         (ppc_elf_relocate_section): Use flag variable to determine
    1659         whether the relocation refers to a local symbol.
    1660         Test whether a PLTREL24 reloc will produce a reloc by looking
    1661         to see whether a PLT entry was made.
    1662 
    1663 2000-10-14  Geoffrey Keating  <geoffk@shoggoth.cygnus.com>
    1664 
    1665         * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT
    1666         entries that could serve as a definition for a weak symbol.
    1667 
    1668 2000-10-13  Ulf Carlsson  <ulfc@engr.sgi.com>
    1669 
    1670         From  Ralf Baechle  <ralf@gnu.org>
    1671 
    1672         * elf32-mips.c (mips_elf_create_dynamic_relocation): New argument
    1673         local_p.  Add symbol value only for non-R_MIPS_REL32 relocations
    1674         against local symbols.
    1675         (_bfd_mips_elf_finish_dynamic_sections): Undo patch from 2000-10-01.
    1676 
    1677 2000-10-12  Alan Modra  <alan@linuxcare.com.au>
    1678 
    1679         * section.c (struct sec): Add kept_section.
    1680         (struct bfd_comdat_info): Remove sec, we can use above.
    1681         (STD_SECTION): Add initializer.
    1682         (bfd_make_section_anyway): Init here too.
    1683 
    1684         * bfd-in2.h: Regenerate.
    1685 
    1686         * elflink.h (elf_link_add_object_symbols): Remove unnecessary
    1687         zeroing of `flags'.
    1688         (elf_link_input_bfd): Set all asection->symbol->value's here, and
    1689         fudge values for discarded link-once section symbols.
    1690 
    1691         * elf64-hppa.c: Include alloca-conf.h
    1692 
    1693 2000-10-11  Alan Modra  <alan@linuxcare.com.au>
    1694 
    1695         * elf.c (swap_out_syms): Revert 2000-10-07 changes.
    1696 
    1697         * ieee.c (ieee_make_empty_symbol): Oops, bfd_zalloc needs another arg.
    1698 
    1699 2000-10-10  Alan Modra  <alan@linuxcare.com.au>
    1700 
    1701         * ieee.c (ieee_make_empty_symbol): Use bfd_zalloc, not bfd_zmalloc.
    1702 
    1703 2000-10-10  Tom Rix <trix@redhat.com>
    1704 
    1705         * section.c (bfd_make_section_anyway): Release newsect ptr when
    1706         newsect->symbol fails to alloc.  Use bfd_release instead of free.
    1707 
    1708 2000-10-09  Richard Henderson  <rth@cygnus.com
    1709 
    1710         * elf64-ia64.c (elf64_ia64_unwind_entry_compare_bfd): New.
    1711         (elf64_ia64_unwind_entry_compare): New.
    1712         (elf64_ia64_final_link): Sort the .IA_64.unwind section.
    1713 
    1714 2000-10-07  Alan Modra  <alan@linuxcare.com.au>
    1715 
    1716         * elflink.h (size_dynamic_sections): Don't create various tags if
    1717         .dynstr is excluded from the link.  Don't set first dynsym entry
    1718         if dynsymcount is zero.
    1719         (elf_bfd_final_link): Don't try to swap out dynamic syms if
    1720         .dynsym excluded from the link.  Don't try to write any dynamic
    1721         sections excluded from the link.
    1722 
    1723         * elf.c (swap_out_syms): Handle global section symbols.
    1724 
    1725 2000-10-05  DJ Delorie  <dj@redhat.com>
    1726 
    1727         * peigen.c (_bfd_pei_swap_scnhdr_out): note extended relocs
    1728         * coffcode.h (coff_set_alignment_hook): read extended reloc count
    1729         (coff_write_relocs): write extended reloc count
    1730         (coff_write_object_contents): account for extended relocs
    1731 
    1732 2000-10-05  Jim Wilson  <wilson@cygnus.com>
    1733 
    1734         * elf-bfd.h (struct elf_backend_data): Add elf_backend_section_flags
    1735         field.
    1736         * elf.c (_bfd_elf_make_section_from_shdr): Call the
    1737         elf_backend_section_flags function.
    1738         * elf64-ia64.c (elf64_ia64_section_from_shdr): Delete flag conversion
    1739         code.
    1740         (elf64_ia64_section_flags): New function containing flag conversion
    1741         code.
    1742         (elf_backend_section_flags): Define to elf64_ia64_section_flags.
    1743         * elfxx-target.h (elf_backend_section_flags): Define.
    1744         (elfNN_bed): Initialize elf_backend_section_flags field.
    1745 
    1746 2000-10-02  Alan Modra  <alan@linuxcare.com.au>
    1747 
    1748         * elf32-hppa.c (elf32_hppa_check_relocs): Correct call to
    1749         _bfd_elf32_gc_record_vtable.  Correct a comment.
    1750 
    1751 2000-10-01  Ulf Carlsson  <ulfc@engr.sgi.com>
    1752 
    1753         From  Ralf Baechle  <ralf@gnu.org>
    1754 
    1755         * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Mark gld
    1756         produces binaries with got[1] = 0x80000001 to differenciate them
    1757         for the dynamic linker from the broken binaries produced by old
    1758         versions.
    1759 
    1760 2000-09-30  Petr Sorfa <petrs@sco.com>
    1761 
    1762         * elf.c (elfcore_grok_pstatus): Check for size of pxstatus_t.
    1763         (elfcore_grok_lwpstatus): Check for size of lwpxstatus_t.
    1764         * configure.in: Add check for pxstatus_t and lwpxstatus_t.
    1765         * configure: Regenerate.
    1766 
    1767 2000-09-27  Hans-Peter Nilsson  <hp@axis.com>
    1768 
    1769         Define two bfd_targets for absence and presence of leading
    1770         underscore on symbols.  Make sure to only link same kind.
    1771         * elf32-cris.c (cris_elf_object_p,
    1772         cris_elf_final_write_processing, cris_elf_print_private_bfd_data,
    1773         cris_elf_merge_private_bfd_data): New.
    1774         (elf_backend_object_p, elf_backend_final_write_processing,
    1775         bfd_elf32_bfd_print_private_bfd_data,
    1776         bfd_elf32_bfd_merge_private_bfd_data): Define.
    1777         <Target vector definition>: Include elf32-target.h twice with
    1778         different macro settings:
    1779         (TARGET_LITTLE_SYM): First as bfd_elf32_cris_vec, then as
    1780         bfd_elf32_us_cris_vec.
    1781         (TARGET_LITTLE_NAME): First as "elf32-cris", then "elf32-us-cris".
    1782         (elf_symbol_leading_char): First as 0, then '_'.
    1783         (INCLUDED_TARGET_FILE): Define for second include of elf32-target.h.
    1784         * config.bfd (cris-*-*): Add bfd_elf32_us_cris_vec to targ_selvecs.
    1785         * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vector.
    1786         * configure: Regenerate.
    1787         * targets.c: Declare bfd_elf32_us_cris_vec.
    1788         * po/bfd.pot: Regenerate.
    1789 
    1790 2000-09-29  Momchil Velikov  <velco@fadata.bg>
    1791 
    1792         * elf32-arm.h (arm_add_to_rel): Correctly adjust the addend for
    1793         R_ARM_THM_PC22 relocations.
    1794 
    1795 2000-09-29  NIIBE Yutaka <gniibe@chroot.org>
    1796 
    1797         * elflink.h (elf_link_add_object_symbols): Don't bfd_release runpath.
    1798 
    1799 2000-09-29  Momchil Velikov <velco@fadata.bg>
    1800 
    1801         * elf.c (elf_fake_sections): Do not mark the section SHT_NOBITS if
    1802         is has the SEC_HAS_CONTENTS flag set.
    1803 
    1804 2000-09-28  Örjan Friberg  <orjanf@axis.com>
    1805             Hans-Peter Nilsson  <hp@axis.com>
    1806 
    1807         * aout-cris.c (N_TXTADDR): Define.
    1808 
    1809 2000-09-28  John David Anglin <dave@hiauly1.hia.nrc.ca>
    1810 
    1811         * som.c: Include alloca-conf.h.
    1812         * Makefile.am: "make dep-am"
    1813         * Makefile.in: Regenerate.
    1814 
    1815 2000-09-27  Alan Modra  <alan@linuxcare.com.au>
    1816 
    1817         * elf32-hppa.c (plt_stub): New.
    1818         (PLT_STUB_ENTRY): Define.
    1819         (elf32_hppa_link_hash_table): Change multi_subspace to packed
    1820         boolean.  Add need_plt_stub, has_12bit_branch and has_17bit_branch.
    1821         (elf32_hppa_link_hash_table_create): Init to suit.
    1822         (elf32_hppa_check_relocs): Set has_12bit_branch and
    1823         has_17bit_branch as appropriate.
    1824         (elf32_hppa_adjust_dynamic_symbol): Set need_plt_stub for
    1825         non-local functions.
    1826         (elf32_hppa_size_dynamic_sections): Correct setting of reltext.
    1827         Add space for plt_stub as needed.
    1828         (elf32_hppa_finish_dynamic_symbol): Point .plt entries for global
    1829         functions at plt_stub.
    1830         (elf32_hppa_finish_dynamic_sections): Write plt_stub.
    1831         (elf32_hppa_create_dynamic_sections): Leave .plt executable.
    1832 
    1833         * elf32-hppa.h (elf32_hppa_size_stubs): Add group_size param.
    1834         * elf32-hppa.c (elf32_hppa_size_stubs): Likewise.  Use it instead
    1835         of fixed size, and if negative, disable handling of input sections
    1836         before stub section.  Set up default stub group size depending
    1837         on detected branch relocs.
    1838         (hppa_build_one_stub): Use lrsel and rrsel for import stubs to
    1839         ensure different offsets from sym_value aren't rounded to
    1840         different 2k blocks.  Use lrsel and rrsel for other stubs too for
    1841         consistency rather than necessity.
    1842         (elf32_hppa_check_relocs): Handle R_PARISC_DIR14F.
    1843         (final_link_relocate): Likewise.
    1844         (elf32_hppa_relocate_section): Likewise.
    1845 
    1846         * elf-hppa.h (elf_hppa_howto_table): Add R_PARISC_DIR14F reloc.
    1847         (_bfd_elf_hppa_gen_reloc_type): Generate them.
    1848         (elf_hppa_final_link_relocate): Handle them.
    1849         (elf_hppa_relocate_insn): Likewise.
    1850         (_bfd_elf_hppa_gen_reloc_type): Add missing e_ldsel and e_rdsel cases.
    1851 
    1852 2000-09-26  Hans-Peter Nilsson  <hp@axis.com>
    1853 
    1854         * elfcode.h (elf_object_p): Preserve and clear abfd section
    1855         information.  Restore at error.
    1856 
    1857 2000-09-26  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
    1858 
    1859         * peigen.c (_bfd_pei_swap_aouthdr_in): If some DataDirectory
    1860         is empty, make sure that its rva also 0. NT loader dislikes
    1861         having otherwise.
    1862 
    1863 2000-09-26  Steve Ellcey <sje@cup.hp.com>
    1864 
    1865         * som.c (som_bfd_derive_misc_symbol_info): Make weak symbols
    1866         global by default.
    1867 
    1868 2000-09-21  Alan Modra  <alan@linuxcare.com.au>
    1869 
    1870         * elf32-hppa.c (elf32_hppa_check_relocs): Fix weak sym handling in
    1871         currently unused RELATIVE_DYNAMIC_RELOCS code.
    1872         (hppa_discard_copies): Likewise.
    1873         (elf32_hppa_size_stubs): Size `input_list' array correctly.  Correct
    1874         comments.  Don't check non-code output sections for stub grouping.
    1875 
    1876 2000-09-20  Alan Modra  <alan@linuxcare.com.au>
    1877 
    1878         * section.c (bfd_get_unique_section_name): Return NULL if
    1879         bfd_malloc fails.
    1880 
    1881 2000-09-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
    1882 
    1883         * elf32-m68k.c (elf_cpu32_plt0_entry): Change the PLT entry 0
    1884         instruction sequence to actually work.
    1885         (elf_m68k_finish_dynamic_sections): Change the patch-in offset
    1886         accordingly.
    1887 
    1888 2000-09-18  Alexandre Oliva  <aoliva@redhat.com>
    1889 
    1890         * elf32-sh.c (sh_elf_relocate_section): Use
    1891         _bfd_final_link_relocate to apply the relocation against a section
    1892         symbol, when doing relocatable links.
    1893 
    1894 2000-09-18  Alan Modra  <alan@linuxcare.com.au>
    1895 
    1896         * elf32-hppa.c (elf32_hppa_stub_hash_entry): Rename input_section
    1897         to id_sec.
    1898         (stub_hash_newfunc): Here too.
    1899         (hppa_add_stub): And here.
    1900         (elf32_hppa_link_hash_table): Remove stub_section_created,
    1901         reloc_section_created, first_init_sec and first_fini_sec.  Add
    1902         stub_group.
    1903         (elf32_hppa_link_hash_table_create): Init to suit.
    1904         (hppa_get_stub_entry): Add support for grouping stub sections.
    1905         (hppa_add_stub): Likewise.  Remove sec_count param and init/fini
    1906         section code.  Index stub vars by section->id.
    1907         (elf32_hppa_size_stubs): Likewise.  Remove duplicated function
    1908         exit paths.  Zap allocation of above removed vars.  Refine
    1909         link-once test.
    1910 
    1911         * elf32-hppa.h (elf32_hppa_size_stubs): Add output_bfd param.
    1912         * elf32-hppa.c (elf32_hppa_size_stubs): Likewise.
    1913         (hppa_get_stub_entry): Pass in pointer to elf32_hppa_link_hash_table
    1914         rather than pointer to bfd_link_info.
    1915         (hppa_add_stub): Likewise.
    1916         (final_link_relocate): Likewise.
    1917 
    1918 2000-09-17  David Huggins-Daines  <dhd@linuxcare.com>
    1919 
    1920         (elf32_hppa_size_stubs): Don't try to build stubs for discarded
    1921         link-once sections.
    1922 
    1923 2000-09-16  Alexandre Oliva  <aoliva@redhat.com>
    1924 
    1925         * elf32-sh.c (ELF_MAXPAGESIZE): Define to 128, to match
    1926         ld/emulparams/shelf.sh.
    1927 
    1928 2000-09-10  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
    1929 
    1930         * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): New function.
    1931         * bfd-in.h (bfd_m68k_elf32_create_embedded_relocs): Add declaration.
    1932         * bfd-in2.h: Regenerate.
    1933 
    1934 2000-09-15  Kenneth Block  <Kenneth.Block@compaq.com>
    1935 
    1936         * bfd/elf64-alpha.c (elf64_alpha_relax_with_lituse): ld performs
    1937         LITUSE relocations incorrectly if -relax is specified on the ld
    1938         command line and the displacement field of the load or store
    1939         instruction is non-zero. (Patch by paul.winalski@compaq.com)
    1940 
    1941 2000-09-15  Alan Modra  <alan@linuxcare.com.au>
    1942 
    1943         * elf32-hppa.c (hppa_add_stub): Dont set first_init_sec and
    1944         first_fini_sec here.
    1945         (elf32_hppa_size_stubs): Instead correctly find the first .init
    1946         and .fini section here.
    1947 
    1948 2000-09-15  David Huggins-Daines  <dhd@linuxcare.com>
    1949 
    1950         * elf32-hppa.c (clobber_millicode_symbols): New function.
    1951         (elf32_hppa_size_dynamic_sections): Call it.
    1952 
    1953 2000-09-14  Alan Modra  <alan@linuxcare.com.au>
    1954 
    1955         * elf32-hppa.c (elf32_hppa_link_hash_entry): Make pic_call
    1956         packed.  Add plabel, plt_abs packed booleans.
    1957         (hppa_link_hash_newfunc): Init new fields.
    1958         (PLABEL_PLT_ENTRY_SIZE): Define.
    1959         (hppa_stub_name): Use size_t len vars.
    1960         (hppa_add_stub): Likewise.
    1961         (elf32_hppa_build_stubs): Likewise.
    1962         (hppa_build_one_stub): Kill some compiler warnings.
    1963         (elf32_hppa_check_relocs): Always generate a plt entry for PLABELs
    1964         if dynamic linking.  Munge the local plt offsets into
    1965         local_got_refcounts.  Set h->plabel for all global PLABELs.  Use
    1966         size_t len vars.  Add assert for plabel addend.
    1967         (elf32_hppa_gc_sweep_hook): Sweep local plt entries too.
    1968         (elf32_hppa_hide_symbol): New function.
    1969         (elf_backend_hide_symbol): Define.
    1970         (elf32_hppa_adjust_dynamic_symbol): Don't throw away plt entries
    1971         with h->plabel set.  Don't make plt entries to have dynamic syms
    1972         when they have been forced local.  If plt entry is used by a
    1973         plabel, make it PLABEL_PLT_ENTRY_SIZE.
    1974         (elf32_hppa_size_dynamic_sections): Set plt_abs for init fns.
    1975         Set up .plt offsets for local syms.
    1976         (elf32_hppa_relocate_section): Initialise plt entries for local
    1977         syms.  Leave weak undefined plabels zero.  Make global plabel
    1978         relocs against function symbol, and leave the addend zero.
    1979         Use *ABS* DIR32 relocs instead of SEGREL32 for dynamic got relocs.
    1980         (elf32_hppa_finish_dynamic_symbol): Set up IPLT relocs for
    1981         non-dynamic syms.  Init extra plt for plabels.  Use *ABS* DIR32
    1982         relocs instead of SEGREL32 for dynamic got relocs.
    1983         (elf32_hppa_finish_dynamic_sections): Reserve one more .got entry.
    1984         (elf_backend_got_header_size): Adjust.
    1985         (elf32_hppa_set_gp): Calculate an "ideal" LTP.
    1986 
    1987         * elf32-hppa.c (LONG_BRANCH_VIA_PLT): Define.
    1988         (hppa_type_of_stub): Use it instead of #if 0
    1989         (hppa_discard_copies): Use it here too.
    1990         (elf32_hppa_size_dynamic_sections): And here.
    1991 
    1992         * elf32-hppa.c (elf32_hppa_link_hash_table): Remove `offset' field.
    1993         (elf32_hppa_link_hash_table_create): And here.
    1994         (hppa_build_one_stub): And here.  Instead keep track of stub
    1995         offset using _raw_size.
    1996         (elf32_hppa_size_stubs): Likewise.
    1997         (elf32_hppa_build_stubs): Likewise.
    1998         (hppa_size_one_stub): Likewise.  Resize reloc section too.
    1999 
    2000         * elf32-hppa.c (hppa_add_stub): Correct first_init_sec and
    2001         first_fini_sec handling.  Don't search for reloc section or set
    2002         hplink->reloc_section_created here.
    2003         (elf32_hppa_size_stubs): Instead search for reloc sections, and
    2004         set reloc_section_created here.
    2005         (hppa_handle_PIC_calls): Set ELF_LINK_HASH_NEEDS_PLT.
    2006         (elf32_hppa_size_dynamic_sections): Make a .plt entry for DT_INIT
    2007         and DT_FINI.
    2008         (elf32_hppa_finish_dynamic_sections): Set DT_INIT and DT_FINI.
    2009 
    2010         * elf32-hppa.c (hppa_build_one_stub): Replace `elf_hash_table (info)'
    2011         with `hplink->root.'.
    2012         (elf32_hppa_check_relocs): Likewise.
    2013         (elf32_hppa_gc_sweep_hook): Likewise.
    2014         (elf32_hppa_adjust_dynamic_symbol): Likewise.
    2015         (hppa_handle_PIC_calls): Likewise.
    2016         (elf32_hppa_size_dynamic_sections): Likewise.
    2017         (elf32_hppa_set_gp): Likewise.
    2018         (elf32_hppa_relocate_section): Likewise.
    2019         (elf32_hppa_finish_dynamic_symbol): Likewise.
    2020         (elf32_hppa_finish_dynamic_sections): Likewise.
    2021 
    2022         From  David Huggins-Daines  <dhd@linuxcare.com>
    2023         * elf32-hppa.c (hppa_type_of_stub): Generate import stubs for
    2024         defined weak symbols in shared links.
    2025         (final_link_relocate): Calls to defined weak symbols in shared
    2026         objects must go via import stubs, as the target might not be known
    2027         at link time.
    2028 
    2029 2000-09-14  Alexandre Oliva  <aoliva@redhat.com>
    2030 
    2031         * elf32-sh.c (sh_elf_howto_table): Moved R_SH_GOT32, R_SH_PLT32,
    2032         R_SH_COPY, R_SH_GLOB_DAT, R_SH_JMP_SLOT, R_SH_RELATIVE,
    2033         R_SH_GOTOFF, R_SH_GOTPC) to the range from 160 to 167.  Replaced
    2034         the original entries with EMPTY_HOWTOs, and added new ones to fill
    2035         in the gap.
    2036         (sh_elf_info_to_howto): Make sure the new gap isn't used.
    2037         (sh_elf_relocate_section): Likewise.
    2038 
    2039 2000-09-13  Anders Norlander  <anorland@acc.umu.se>
    2040 
    2041         * cpu-mips.c (arch_info_struct): Add mips:4K
    2042         * bfd-in2.h (bfd_mach_mips4K): New define.
    2043         * archures.c: Add bfd_mach_mips4K to comment.
    2044         * elf32-mips.c (_bfd_mips_elf_final_write_processing): Return
    2045         E_MIPS_ARCH_2 for bfd_mach_mips4K.
    2046 
    2047 2000-09-13  Marco Franzen <marcof@thyron.com>
    2048 
    2049         * som.c (som_write_symbol_strings): Do not used fixed buffers,
    2050         use size_t as a counter.
    2051         (som_write_space_strings): Similarly.
    2052 
    2053 2000-09-12  Jason Eckhardt  <jle@cygnus.com>
    2054 
    2055         * elf32-i860.c (elf32_i860_relocate_pc26): New function
    2056         and prototype.
    2057         (elf32_i860_relocate_section): Invoke new function from here.
    2058 
    2059 2000-09-11  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
    2060 
    2061         * elf.c (_bfd_elf_make_section_from_shdr): Make debug_sec_names
    2062         static.
    2063 
    2064 2000-09-10  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
    2065 
    2066         * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Emit 8 NULs for
    2067         target section name instead of dumping core when the target symbol is
    2068         undefined.
    2069 
    2070 2000-09-09  Kazu Hirata  <kazu@hxi.com>
    2071 
    2072         * riscix.c: Remove DEFUN.
    2073 
    2074 2000-09-08  Nick Clifton  <nickc@redhat.com>
    2075 
    2076         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not
    2077         initialise flags in output bfd if the input bfd is the default
    2078         architecture with the default flags.
    2079 
    2080 2000-09-08  Kazu Hirata  <kazu@hxi.com>
    2081 
    2082         * archive.c: Fix formatting.
    2083         * coff-arm.c: Likewise.
    2084         * doc/chew.c: Likewise.
    2085 
    2086 2000-09-08  Alan Modra  <alan@linuxcare.com.au>
    2087 
    2088         * section.c (bfd_get_unique_section_name): Put a dot before the
    2089         numeric suffix.
    2090 
    2091 2000-09-07  Kazu Hirata  <kazu@hxi.com>
    2092 
    2093         * doc/chew.c: Remove all uses of DEFUN and DEFUN_VOID.
    2094         * elf.c: Fix formatting.
    2095 
    2096 2000-09-07  Alexandre Oliva  <aoliva@redhat.com>
    2097 
    2098         * config.bfd (sh-*-linux*): Added.
    2099         * configure.in (bfd_elf32_shlin_vec, bfd_elf32_shblin_vec): New.
    2100         * targets.c: Declare them.
    2101         * elf32-sh-lin.c: New file.
    2102         * Makefile.am: Compile it.
    2103         * elf32-sh.c: Don't override defines from elf32-sh-lin.c.
    2104         * configure, Makefile.in: Rebuilt.
    2105 
    2106 2000-09-06  Geoffrey Keating  <geoffk@cygnus.com>
    2107 
    2108         * xcofflink.c (xcoff_link_input_bfd): Include the .tocbss
    2109         pseduo-section when determining where the TOC ends.
    2110 
    2111         * coff-rs6000.c (_bfd_xcoff_swap_aux_out): Use bfd_h_put_16 to
    2112         output x_tvndx as it is only two bytes wide.
    2113 
    2114         * coff-rs6000.c (xcoff_howto_table): A modifiable branch-absolute
    2115         reloc is 26 or 32 bits wide.
    2116 
    2117         * coff-rs6000.c (_bfd_xcoff_rtype2howto): The bitsize is irrelevant
    2118         for relocs that don't change anything.  Also look at the full
    2119         6 bits of bitsize.
    2120 
    2121 2000-09-06  Philip Blundell  <philb@gnu.org>
    2122 
    2123         * config.bfd (arm*-*-uclinux*): New target.
    2124 
    2125 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
    2126 
    2127         * configure: Rebuilt with new libtool.m4.
    2128 
    2129 2000-09-06  Alan Modra  <alan@linuxcare.com.au>
    2130 
    2131         * section.c (bfd_get_unique_section_name): Avoid c++ reserved
    2132         word for variable name.
    2133         * bfd-in2.h: Regenerate.
    2134 
    2135 2000-09-05  Nick Clifton  <nickc@redhat.com>
    2136 
    2137         * config.in: Regenerate.
    2138         * libbfd.h: Regenerate.
    2139         * po/bfd.pot: Regenerate.
    2140         * doc/bfdint.texi: Remove CVS date string - it foils compares with
    2141         local versions.
    2142 
    2143 2000-09-05  Steven Johnson  <sbjohnson@ozemail.com.au>
    2144 
    2145         * cpu-powerpc.c  (arch_info_struct): Added MPC860 Family entry.
    2146 
    2147 2000-09-05  Alan Modra  <alan@linuxcare.com.au>
    2148 
    2149         Shared library and PIC support.
    2150         * elf32-hppa.c (PLT_ENTRY_SIZE): New.
    2151         (GOT_ENTRY_SIZE): New.
    2152         (ELF_DYNAMIC_INTERPRETER): New.
    2153         (STUB_SUFFIX): Define.
    2154         (LONG_BRANCH_PIC_IN_SHLIB): Define.
    2155         (RELATIVE_DYNAMIC_RELOCS): Define.
    2156         (enum elf32_hppa_stub_type): New.
    2157         (struct elf32_hppa_stub_hash_entry): Rename offset to
    2158         stub_offset.  Add a number of new fields.
    2159         (struct elf32_hppa_link_hash_entry): New.
    2160         (struct elf32_hppa_link_hash_table): Add numerous fields.  Remove
    2161         global_value.
    2162         (elf32_hppa_hash_table): Rename to hppa_link_hash_table.
    2163         (elf32_hppa_stub_hash_lookup): Rename to hppa_stub_hash_lookup.
    2164         (elf32_hppa_stub_hash_newfunc): Rename to stub_hash_newfunc.  Init
    2165         new fields.
    2166         (hppa_link_hash_newfunc): New function.
    2167         (elf32_hppa_link_hash_table_create): Use above function. Init new
    2168         fields.
    2169         (elf32_hppa_stub_name): Rename to hppa_stub_name.  Pass in reloc
    2170         instead of addend, and remove sym_name from args.  Don't use
    2171         symbol name for local syms, instead use sym index.
    2172         (elf32_hppa_size_of_stub): Rename to hppa_type_of_stub, and return
    2173         stub type rather than size.  Pass in hash and handle import stub
    2174         case.  Also pass in reloc instead of offset so we can calculate
    2175         PCREL22F and PCREL12F branches properly.
    2176         (elf32_hppa_build_one_stub): Rename to hppa_build_one_stub.  Build
    2177         import and export stubs too.
    2178         (elf32_hppa_size_one_stub): Rename to hppa_size_one_stub.  Handle
    2179         import and export stub sizing.
    2180         (elf32_hppa_check_relocs): New function.
    2181         (elf32_hppa_adjust_dynamic_symbol): New function.
    2182         (hppa_discard_copies): New function.
    2183         (elf32_hppa_size_dynamic_sections): New function.
    2184         (elf_backend_size_dynamic_sections): Define.
    2185         (elf32_hppa_finish_dynamic_symbol): New function.
    2186         (elf_backend_finish_dynamic_symbol): Define.
    2187         (elf32_hppa_size_stubs): Stash params in link hash table, and move
    2188         some local vars into the link hash table too.  For shared links,
    2189         trundle over function syms, generating export stubs.  Handle
    2190         PCREL22F branches.  Break out stub creation code from here..
    2191         (hppa_add_stub): .. to here.  New function.
    2192         (elf32_hppa_final_link): Rename to elf32_hppa_set_gp, and don't
    2193         call the bfd linker.  Use elf_gp to record global pointer.
    2194         Calculate a value from sections if $global$ is missing.
    2195         (bfd_elf32_bfd_final_link): Define as _bfd_elf32_gc_common_final_link.
    2196         (elf32_hppa_gc_mark_hook): New function.
    2197         (elf_backend_gc_mark_hook): Define.
    2198         (elf32_hppa_gc_sweep_hook): New function.
    2199         (elf_backend_gc_sweep_hook): Define.
    2200         (elf32_hppa_bfd_final_link_relocate): Rename to final_link_relocate.
    2201         Add rel to args, and remove howto, input_bfd, offset, addend,
    2202         sym_name as we can recalculate these locally.  Handle calls to
    2203         dynamic objects, extra PIC relocs, PCREL22F branches.  Change
    2204         handling of undefined weak syms.  Check that stubs are in range.
    2205         Only look for import stubs on PCREL17F and PCREL22F relocs.  Add
    2206         message on hitting a DPREL21L reloc that needs fixing.  Subtract
    2207         off PC for PCREL14F.  Break out code that does a stub lookup from
    2208         here..
    2209         (hppa_get_stub_entry): ..to here.  New function.
    2210         (elf32_hppa_relocate_insn): Merge into final_link_relocate.
    2211         (elf32_hppa_relocate_section): Handle got and plt relocs, dynamic
    2212         relocs, etc. etc.
    2213         (elf32_hppa_finish_dynamic_sections): New function.
    2214         (elf_backend_finish_dynamic_sections): Define.
    2215         (elf_backend_final_write_processing) Define.
    2216         (hppa_handle_PIC_calls): New function.
    2217         (elf32_hppa_build_stubs): Call it.  Pass link_info to
    2218         hppa_build_one_stub.
    2219         (elf32_hppa_create_dynamic_sections): New function
    2220         to create .plt and .got then set .plt flags correctly.
    2221         (elf_backend_create_dynamic_sections): Define.
    2222         (elf32_hppa_object_p): New function.
    2223         (elf_backend_object_p): Define.
    2224         (elf32_hppa_elf_get_symbol_type): New function.
    2225         (elf_backend_get_symbol_type): Define.
    2226         (elf_backend_can_gc_sections): Define.
    2227         (elf_backend_want_got_plt): Define.
    2228         (elf_backend_plt_alignment): Set to 2.
    2229         (elf_backend_plt_readonly): Define.
    2230         (elf_backend_want_plt_sym): Define.
    2231         (elf_backend_got_header_size): Reserve one entry.
    2232 
    2233         * elf32-hppa.h (elf32_hppa_build_stubs): Don't pass stub bfd.
    2234         (elf32_hppa_size_stubs): Pass in multi_subspace.
    2235         (elf32_hppa_set_gp): Declare.
    2236 
    2237         * section.c (SEC_HAS_GOT_REF): Define new flag for asection.
    2238         (bfd_get_unique_section_name): New function.
    2239         * bfd_in2.h: Regenerate.
    2240 
    2241         * elf64-hppa.c (elf64_hppa_check_relocs): Handle R_PARISC_PCREL12F.
    2242         (elf64_hppa_size_dynamic_sections): Remove the FIXME at bfd_zalloc
    2243         comment.
    2244 
    2245         From  David Huggins-Daines  <dhd@linuxcare.com>
    2246         * elf64-hppa.c (elf64_hppa_check_relocs): Fix a warning.
    2247         (elf64_hppa_mark_exported_functions): Set dyn_h->st_shndx.
    2248         (elf64_hppa_link_output_symbol_hook): Test dyn_h->st_shndx has
    2249         been updated in finish_dynamic_symbol before modifying function
    2250         symbol.
    2251 
    2252         * elf-hppa.h (elf_hppa_howto_table): Restructure into groups of
    2253         eight entries.  Replace NULL with bfd_elf_generic_reloc.  Add
    2254         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT and R_PARISC_PCREL12F.
    2255         (_bfd_elf_hppa_gen_reloc_type): Handle R_PARISC_GNU_VT*.  Add some
    2256         comments.  Handle format == 12 for R_HPPA_PCREL_CALL.
    2257         (elf_hppa_final_link_relocate): Handle R_PARISC_PCREL12F.
    2258         (elf_hppa_relocate_insn): Likewise.  Reformat some comments.
    2259         (elf_hppa_final_write_processing): Expose it for ARCH_SIZE == 32.
    2260 
    2261         From David Huggins-Daines  <dhd@linuxcare.com>
    2262         * elf-hppa.h (elf_hppa_is_local_label_name): Accept the SysV/ELF
    2263         style of local labels as well.
    2264 
    2265 2000-09-03  Philip Blundell  <philb@gnu.org>
    2266 
    2267         * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate
    2268         references to undefined symbols in debugging sections.
    2269 
    2270 2000-09-02  H.J. Lu  <hjl@gnu.org>
    2271 
    2272         * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT,
    2273         BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE,
    2274         BFD_RELOC_SH_GOTPC): Move them from the MIPS section to the SH
    2275         section.
    2276 
    2277 2000-09-02  Jason Eckhardt  <jle@cygnus.com>
    2278 
    2279         * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro.
    2280         (elf32_i860_is_local_label_name): New function and prototype.
    2281 
    2282 2000-09-02  Nick Clifton  <nickc@redhat.com>
    2283 
    2284         * configure.in: Increase version number to 2.10.91.
    2285         * configure: Regenerate.
    22866976        * aclocal.m4: Regenerate.
    22876977        * config.in: Regenerate.
    2288         * po/bfd.pot: Regenerate.
    2289 
    2290 2000-09-02  Daniel Berlin <dberlin@redhat.com>
    2291 
    2292         * elf.c (_bfd_elf_make_section_from_shdr): Add
    2293         .gnu.linkobce.wi. to the list of debug section names.
    2294 
    2295 2000-09-02  Nick Clifton  <nickc@redhat.com>
    2296 
    2297         * dwarf2.c (find_debug_info): New function: Locate a section
    2298         containing dwarf2 debug information.
    2299         (bfd_dwarf2_find_nearest_line): Find all sections containing
    2300         debug information and include them in the stash.
    2301 
    2302 2000-09-01  Niibe Yutaka  <gniibe@m17n.org>, Kaz Kojima  <kkojima@rr.iij4u.or.jp>, Alexandre Oliva  <aoliva@redhat.com>
    2303 
    2304         * elf32-sh.c (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,
    2305         R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New.
    2306         (sh_reloc_map): Add new relocs.
    2307         (sh_elf_check_relocs, sh_elf_link_hash_newfunc,
    2308         sh_elf_link_hash_table_create, sh_elf_adjust_dynamic_symbol,
    2309         sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_symbol,
    2310         sh_elf_finishe_dynamic_sections, sh_elf_discard_copies): New
    2311         functions.
    2312         (ELF_DYNAMIC_INTERPRETER, PLT_ENTRY_SIZE): Define.
    2313         (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
    2314         elf_sh_plt_entry_be, elf_sh_plt_entry_le,
    2315         elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le):
    2316         New array constants.
    2317         (elf_sh_plt0_entry, elf_sh_plt_entry, elf_sh_pic_plt_entry):
    2318         New variables.
    2319         (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
    2320         elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset,
    2321         elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset,
    2322         elf_sh_plt_reloc_offset): Define.
    2323         (elf_sh_pcrel_relocs_copied, elf_sh_link_hash_entry,
    2324         elf_sh_link_hash_table): New structs.
    2325         (sh_elf_link_hash_traverse, sh_elf_hash_table): New macros.
    2326         (sh_elf_relocate_section, sh_elf_check_relocs): Handle new
    2327         relocation types.
    2328         (elf_backend_create_dynamic_sections,
    2329         bfd_elf32_bfd_link_hash_table_create,
     6978        * configure: Regenerate.
     6979
     69802002-02-10  Daniel Jacobowitz  <drow@mvista.com>
     6981
     6982        * coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized
     6983        variable warnings.
     6984        * elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned
     6985        comparison warning.
     6986        * trad-core.c (trad_unix_core_file_p): Silence pointer/integer
     6987        cast warnings for the common case.
     6988
     69892002-02-10  Hans-Peter Nilsson  <hp@bitrange.com>
     6990
     6991        * config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64
     6992        vectors.
     6993        (sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64
     6994        vectors.
     6995
     69962002-02-09  Richard Henderson  <rth@redhat.com>
     6997
     6998        * elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP.
     6999        (elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise.
     7000        (elf64_alpha_relocate_section): Likewise.
     7001        * reloc.c (BFD_RELOC_ALPHA_BRSGP): New.
     7002        * bfd-in2.h, libbfd.h: Rebuild.
     7003
     70042002-02-09  Hans-Peter Nilsson  <hp@bitrange.com>
     7005
     7006        * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check
     7007        that base-plus-offset reloc accounting is consistent.
     7008        (mmix_elf_relax_section): Keep base-plus-offset reloc accounting
     7009        up to date for undefined symbols.
     7010
     70112002-02-08  Eric Christopher  <echristo@redhat.com>
     7012
     7013        From Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
     7014
     7015        * elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela
     7016        sections for the O32 ABI.
     7017
     70182002-02-08  Chris Demetriou  <cgd@broadcom.com>
     7019
     7020        * elf32-arm.h: Fix formatting of _("...").
     7021        * elf32-d10v.c: Likewise.
     7022        * elf32-m68k.c: Likewise.
     7023        * elf32-mips.c: Likewise.
     7024
     70252002-02-08  Ivan Guzvinec <ivang@opencores.org>
     7026
     7027        * coff-or32.c: Fix compile time warning messages.
     7028
     70292002-02-08  Alexandre Oliva  <aoliva@redhat.com>
     7030
     7031        Contribute sh64-elf.
     7032        2002-01-23  Alexandre Oliva  <aoliva@redhat.com>
     7033        * reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16,
     7034        R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16,
     7035        R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16,
     7036        R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16,
     7037        R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16,
     7038        R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16,
     7039        R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16,
     7040        R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8,
     7041        R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64):
     7042        New relocs.
     7043        * libbfd.h, bfd-in2.h: Rebuilt.
     7044        * elf32-sh.c (sh_elf_howto_table): Define new relocs.
     7045        (sh_reloc_map): Map them.
     7046        (PLT_ENTRY_SIZE, elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
     7047        elf_sh_plt_entry_be, elf_sh_plt_entry_le, elf_sh_pic_plt_entry_be,
     7048        elf_sh_pic_plt_entry_le, elf_sh_plt0_entry, elf_sh_plt_entry,
     7049        elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
     7050        elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset,
     7051        elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset,
     7052        movi_shori_putval) [INCLUDE_SHMEDIA]: New.
     7053        (elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add
     7054        datalabel_got_offset.
     7055        (sh_elf_link_hash_newfunc): Initialize it.
     7056        (sh_elf_relocate_section): Augment the scope of
     7057        seen_stt_datalabel.  Introduce GOTPLT support.  Extend GOTPC, PLT,
     7058        GOT and GOTOFF handling to new SHmedia relocation types.  Support
     7059        GOT_BIAS.
     7060        (sh_elf_check_relocs): Likewise.
     7061        (sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in
     7062        PLT entries using movi_shori_putval.  Support GOT_BIAS.
     7063        (sh_elf_finish_dynamic_sections): Likewise.
     7064        * elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to
     7065        relocation, it's now done by the caller.
     7066        (GOT_BIAS): New.
     7067        * elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt,
     7068        elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset,
     7069        elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset,
     7070        elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER,
     7071        elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry,
     7072        elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse,
     7073        sh64_elf64_hash_table): New.
     7074        (sh_elf64_howto_table): Introduce new relocs.
     7075        (sh_elf64_info_to_howto): Accept new PIC relocs.
     7076        (sh_elf64_relocate_section): Augment the scope of
     7077        seen_stt_datalabel.  Support new PIC relocs.
     7078        (sh_elf64_check_relocs): Support new PIC relocs.
     7079        (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le,
     7080        elf_sh64_plt_entry_be, elf_sh64_plt_entry_le,
     7081        elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le,
     7082        elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry,
     7083        sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create,
     7084        movi_shori_putval, movi_3shori_putval,
     7085        sh64_elf64_create_dynamic_sections,
     7086        sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies,
     7087        sh64_elf64_size_dynamic_sections,
     7088        sh64_elf64_finish_dynamic_symbol,
     7089        sh64_elf64_finish_dynamic_sections): New.
     7090        (elf_backend_create_dynamic-sections,
     7091        bfd_elf64_bfd_link_hash_table_create,
    23307092        elf_backend_adjust_dynamic_symbol,
    23317093        elf_backend_size_dynamic_sections,
     
    23357097        elf_backend_got_header_size, elf_backend_plt_header_size):
    23367098        Define.
    2337         * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT,
    2338         BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC):
    2339         New relocs.
    2340         * bfd-in2.h, libbfd.h: Rebuilt.
    2341 
    2342 2000-09-01  Alan Modra  <alan@linuxcare.com.au>
    2343 
    2344         * elf32-i386.c (elf_i386_finish_dynamic_symbol): Revert 2000-08-27
    2345         change.
    2346 
    2347 2000-08-31  J"orn Rennecke <amylaar@cygnus.co.uk>
    2348 
    2349         * elf32-sh.c (sh_elf_merge_private_data): If ibfd's elf header flags
    2350         not initialized, set them to indicate the SH1 instruction set.
    2351 
    2352 2000-08-31  Alexandre Oliva  <aoliva@redhat.com>
    2353 
    2354         * acinclude.m4: Include libtool and gettext macros from the
    2355         top level.
    2356         * aclocal.m4, configure: Rebuilt.
    2357 
    2358 2000-08-29  Michael Snyder  <msnyder@seadog.cygnus.com>
    2359 
    2360         * elf.c: Eliminate references to __sparcv9 macro; replace with
    2361         autoconf variables HAVE_PSINFO32_T etc.
    2362         * configure.in: Auto-configure HAVE_PSINFO_32_T, HAVE_PRPSINFO32_T,
    2363         HAVE_PSTATUS32_T, HAVE_PRSTATUS32_T, HAVE_PRSTATUS32_T_PR_WHO.
    2364         * config.in: Ditto.
    2365         * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE) define _SYSCALL32 so it can
    2366         detect the above typedefs.  (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Ditto.
    2367         * aclocal.m4: Ditto.
     7099        2001-05-16  Alexandre Oliva  <aoliva@redhat.com>
     7100        * elf32-sh.c: Renumbered and renamed some SH5 relocations to
     7101        match official numbers and names; moved unmaching ones to the
     7102        range 0xf2-0xff.
     7103        * elf32-sh64.c, elf64-sh64.c: Likewise.
     7104        2001-03-12  DJ Delorie  <dj@redhat.com>
     7105        * elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia
     7106        sections.
     7107        2001-03-12  DJ Delorie  <dj@redhat.com>
     7108        * elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must
     7109        be aligned.
     7110        * elf64-sh64.c (sh_elf64_relocate_section): Ditto.
     7111        2001-01-14  Hans-Peter Nilsson  <hpn@cygnus.com>
     7112        * elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define.
     7113        (sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a
     7114        .cranges section with SEC_SORT_ENTRIES set.
     7115        (sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an
     7116        incoming sorted .cranges section.
     7117        (sh64_bfd_elf_copy_private_section_data): New.
     7118        (sh64_elf_final_write_processing): Only sort .cranges and modify
     7119        start address if called by linker.
     7120        2001-01-08  Ben Elliston  <bje@redhat.com>
     7121        * elf32-sh64.c (sh64_elf_final_write_processing): Activate
     7122        Hans-Peter Nilsson's set bit 0 patch from       2001-01-06.
     7123        * elf64-sh64.c (sh64_elf64_final_write_processing): Ditto.
     7124        2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
     7125        * elf64-sh64.c (sh_elf64_howto_table): No open brace at start of
     7126        line.  Add comments before all entries.
     7127        <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct and clarify describing
     7128        comment.
     7129        (sh_elf64_reloc): Correct head comment.
     7130        (sh_elf64_relocate_section): Correct spacing.
     7131        <relocating for a local symbol>: Do not honour STO_SH5_ISA32;
     7132        instead call reloc_dangerous callback.
     7133        <case R_SH_SHMEDIA_CODE>: New case.
     7134        (sh_elf64_gc_mark_hook): Correct spacing.
     7135        (sh_elf64_check_relocs): Ditto.
     7136        * elf32-sh64.c (shmedia_prepare_reloc) <case R_SH_SHMEDIA_CODE>:
     7137        New case.
     7138        * elf32-sh.c: Correct #endif comments for #ifndef-wrapped
     7139        functions.
     7140        (sh_elf_howto_table) <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct,
     7141        clarify describing comment.  Add comments before all entries.
     7142        (sh_elf_relocate_section) <relocating for a local symbol>: Do not
     7143        honour STO_SH5_ISA32; instead call reloc_dangerous callback.
     7144        2001-01-06  Hans-Peter Nilsson  <hpn@cygnus.com>
     7145        Sort .cranges section in final link.  Prepare to set bit 0 on
     7146        entry address.
     7147        * elf32-sh64.c (struct sh64_find_section_vma_data): New.
     7148        (sh64_elf_link_output_symbol_hook): Fix typo in prototype.
     7149        (sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming
     7150        .cranges section.
     7151        (sh64_backend_section_from_shdr): New, to recognize
     7152        SHT_SH5_CR_SORTED on incoming .cranges section.
     7153        (elf_backend_section_from_shdr): Define.
     7154        (sh64_elf_final_write_processing): Sort outgoing .cranges
     7155        section.  (New, temporarily disabled:) Set bit 0 on entry address
     7156        according to ISA type.
     7157        (sh64_find_section_for_address): New.
     7158        (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
     7159        crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c.
     7160        (sh64_address_in_cranges): Move here from opcodes/sh64-dis.c.  Use
     7161        bfd_malloc, not xmalloc.
     7162        (sh64_get_contents_type): Move here from opcodes/sh64-dis.c.  Make
     7163        global.
     7164        * elf32-sh64.c (sh64_elf64_final_write_processing): New, (but
     7165        temporarily disabled) setting bit 0 on entry address.
     7166        (elf_backend_final_write_processing): Define.
     7167        2001-01-05  Hans-Peter Nilsson  <hpn@cygnus.com>
     7168        * elf32-sh.c (sh_elf_howto_table) <R_SH_PT_16>: Adjust fields to
     7169        be a proper relocation for PTA and PTB rather than a marker.
     7170        <R_SH_IMMU5, R_SH_IMMS6, R_SH_IMMU6, R_SH_IMMS10, R_SH_IMMS10BY2,
     7171        R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16,
     7172        R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16,
     7173        R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL,
     7174        R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL>:
     7175        Zero src_mask.
     7176        * elf64-sh64.c: Ditto.
     7177        (sh_elf64_relocate_section) <case R_SH_PT_16>: New case.
     7178        * elf32-sh64.c: Include opcodes/sh64-opc.h
     7179        (shmedia_prepare_reloc): Take a bfd_link_info pointer as first
     7180        argument.  Drop const qualifiers from "bfd *" and "bfd_byte *"
     7181        parameters.  No unused parameters.  Caller changed.
     7182        <case R_SH_PT_16>: New case.
     7183        * Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h.
     7184        * Makefile.in: Regenerate.
     7185        2000-12-30  Hans-Peter Nilsson  <hpn@cygnus.com>
     7186        * elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for
     7187        all code sections.
     7188        (sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
     7189        (sh64_elf_merge_private_data): Ditto.
     7190        * elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data
     7191        to access stored section flags.
     7192        (sh64_elf_final_write_processing): Return immediately unless
     7193        called by linker.  Use sh64_elf_section_data (cranges) to get size
     7194        of linker-generated cranges entries.
     7195        (sh64_elf_copy_private_data): Add missing "return true".
     7196        (sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
     7197        (sh_elf64_merge_private_data): Ditto.
     7198        2000-12-19  Hans-Peter Nilsson  <hpn@cygnus.com>
     7199        * elf64-sh64.c (sh64_elf64_fake_sections): New, copy of
     7200        elf64-sh64.c:sh64_elf_fake_sections.
     7201        (elf_backend_fake_sections): Define as sh64_elf64_fake_sections.
     7202        2000-12-18  Hans-Peter Nilsson  <hpn@cygnus.com>
     7203        * elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete.
     7204        (sh64_elf_final_write_processing): New.
     7205        (elf_backend_final_write_processing): Define.
     7206        (sh64_elf_fake_sections): Get header flags from tdata field.
     7207        (sh64_elf_copy_private_data): Do not call
     7208        sh64_elf_copy_private_data_internal, just copy e_flags field.
     7209        (sh64_elf_merge_private_data): Do not call
     7210        sh64_elf_copy_private_data_internal.
     7211        2000-12-12  Hans-Peter Nilsson  <hpn@cygnus.com>
     7212        Remove EF_SH64_ABI64, let ELF size make difference.
     7213        Remove SH64-specific BFD section flag.
     7214        * elf32-sh64.c (sh64_elf_fake_sections): Recognize section as
     7215        containing SHmedia through elf_section_data (asect)->tdata
     7216        non-zero, not using a BFD section flag.
     7217        (sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64.
     7218        (sh64_elf_merge_private_data): Similar.
     7219        (elf_backend_section_flags): Don't define.
     7220        (sh64_elf_backend_section_flags): Delete.
     7221        * elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64,
     7222        not EF_SH64_ABI64.
     7223        (sh_elf64_merge_private_data): Similar.
     7224        * section.c (Section flags definitions): Don't define
     7225        SEC_SH_ISA_SHMEDIA.
     7226        (bfd-in2.h): Regenerate.
     7227        2000-12-09  Hans-Peter Nilsson  <hpn@cygnus.com>
     7228        Make DataLabel references work with partial linking.
     7229        * elf32-sh64.c: Fix formatting.
     7230        (sh64_elf_link_output_symbol_hook): New.
     7231        (elf_backend_link_output_symbol_hook): Define to
     7232        sh64_elf_link_output_symbol_hook.
     7233        (sh64_elf_add_symbol_hook): Make DataLabel symbol just global
     7234        undefined if partial linking.  Adjust sanity check.
     7235        * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New.
     7236        (elf_backend_link_output_symbol_hook): Define to
     7237        sh64_elf64_link_output_symbol_hook.
     7238        (sh64_elf64_add_symbol_hook): Make DataLabel symbol just global
     7239        undefined if partial linking.  Adjust sanity check.
     7240        2000-12-07  Hans-Peter Nilsson  <hpn@cygnus.com>
     7241        Implement semantics for inter-file DataLabel references.
     7242        * elf64-sh64.c (DATALABEL_SUFFIX): Define.
     7243        (sh64_elf64_add_symbol_hook): New.
     7244        (sh_elf64_relocate_section): If passing an indirect symbol with
     7245        st_type STT_DATALABEL on the way to a symbol with st_other
     7246        STO_SH5_ISA32, do not bitor 1 to the relocation.
     7247        (elf_backend_add_symbol_hook): Define to
     7248        sh64_elf64_add_symbol_hook.
     7249        * elf64-sh32.c: Tweak comments.
     7250        (DATALABEL_SUFFIX): Define.
     7251        (sh64_elf_add_symbol_hook): New.
     7252        (elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook.
     7253        * elf32-sh.c (sh_elf_relocate_section): If passing an indirect
     7254        symbol with st_type STT_DATALABEL on the way to a symbol with
     7255        st_other STO_SH5_ISA32, do not bitor 1 to the relocation.
     7256        2000-12-05  Hans-Peter Nilsson  <hpn@cygnus.com>
     7257        Pass through STT_DATALABEL.
     7258        * elf32-sh64.c (sh64_elf_get_symbol_type): New.
     7259        (elf_backend_get_symbol_type): Define.
     7260        * elf64-sh64.c (sh64_elf64_get_symbol_type): New.
     7261        (elf_backend_get_symbol_type): Define.
     7262        2000-11-30  Hans-Peter Nilsson  <hpn@cygnus.com>
     7263        * elf32-sh64.c: Tweak comments.
     7264        (sh64_elf_copy_private_data_internal): Add prototype.
     7265        (bfd_elf32_bfd_set_private_flags): Define.
     7266        (sh64_elf_copy_private_data_internal): Compare machine name, not
     7267        textual BFD target name, to check whether to copy section flag
     7268        SHF_SH5_ISA32.
     7269        (sh64_elf_merge_private_data): Validize bfd_get_arch_size.
     7270        Tweak section-contents-type-mismatch message.
     7271        (shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers.
     7272        Validize reloc-types.
     7273        * elf64-sh64.c: New file.
     7274        * targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare.
     7275        * Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo.
     7276        (BFD64_BACKENDS_CFILES): Add elf64-sh64.c.
     7277        Regenerate dependencies.
     7278        * Makefile.in: Regenerate.
     7279        * config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and
     7280        bfd_elf64_sh64l_vec.
     7281        * configure.in: Handle bfd_elf64_sh64_vec and
     7282        bfd_elf64_sh64l_vec.
    23687283        * configure: Regenerate.
    2369 
    2370 2000-08-27  Alan Modra  <alan@linuxcare.com.au>
    2371 
    2372         * elf32-i386.c (elf_i386_check_relocs): Keep info on relocs copied
    2373         for any shared link, not just shared -Bsymbolic.
    2374         (elf_i386_size_dynamic_sections): Call elf_i386_discard_copies on
    2375         any shared link, and pass link info to it.
    2376         (elf_i386_size_dynamic_sections): Update comment.
    2377         (elf_i386_discard_copies): Modify to discard relocs for symbols
    2378         that have been forced local.
    2379         (elf_i386_finish_dynamic_symbol): Don't copy relocs for symbols
    2380         that have been forced local.
    2381 
    2382 2000-08-24  Denis Chertykov  <denisc@overta.ru> & Nick Clifton  <nickc@redhat.com>
    2383 
    2384         * elflink.h (elf_link_add_object_symbols): Allow common
    2385         symbols to have an alignment of 1 if explicitly requested, and
    2386         not overridden by other definitions.
    2387 
    2388 2000-08-22  Doug Kwan <dkwan@transmeta.com>
    2389 
    2390         * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo.
    2391         * coffcode.h (coff_set_flags): Add detection of w65 architecture.
    2392 
    2393 2000-08-22  H.J. Lu  <hjl@gnu.org>
    2394 
    2395         * elf-bfd.h (elf_link_hash_table): Add runpath.
    2396 
    2397         * bfd-in.h (bfd_elf_get_runpath_list): New prototype.
    2398         * bfd-in2.h: Rebuilt.
    2399 
    2400         * elf.c (_bfd_elf_link_hash_table_init): Initialize the
    2401         "runpath" field to NULL.
    2402         (bfd_elf_get_runpath_list): New function.
    2403 
    2404         * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and
    2405         DT_RUNPATH entries.
    2406 
    2407 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
    2408 
    2409         * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W,
    2410         R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them
    2411         explicitly.  Improve validation of r_type.
    2412 
    2413 2000-08-21  H.J. Lu  <hjl@gnu.org>
    2414 
    2415         * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the
    2416         dynamic allocated content space.  Add a comment to remind us that
    2417         one day this ought to be fixed.
    2418         * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
    2419         * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
    2420         * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
    2421 
    2422 2000-08-21  Jason Eckhardt  <jle@cygnus.com>
    2423 
    2424         * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate
    2425         field with the newly relocated value instead of adding it to the
    2426         existing immediate field.
    2427         (elf32_i860_relocate_splitn): Likewise.
    2428         (elf32_i860_relocate_highadj): Likewise.
    2429 
    2430 2000-08-16  Jason Eckhardt  <jle@cygnus.com>
    2431 
    2432         * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it
    2433         was previously just a stub).
    2434 
    2435 2000-08-16  Alexandre Oliva  <aoliva@redhat.com>
    2436 
    2437         * elflink.c (_bfd_elf_create_got_section): Don't abort().
    2438         Formatting fixes.
    2439         (_bfd_elf_create_dynamic_sections): Likewise.
    2440 
    2441 2000-08-16  Andrew Macleod  <amacleod@cygnus.com>
    2442 
    2443         * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address
    2444         for undefined symbols to be the beginning of the section.
    2445 
    2446         * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate
    2447         four extra entries at the beginning of the .rela.plt section.
    2448         (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt
    2449         section to account for the four reserved entries in the .plt section.
    2450 
    2451 2000-08-15  Geoffrey Keating  <geoffk@cygnus.com>
    2452 
    2453         * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0
    2454         to the list of NOPs we recognize after a branch-and-link.
    2455         Use the ori NOP when one is needed.
    2456 
    2457         * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation
    2458         for large archives.
    2459 
    2460 2000-08-14  Jim Wilson  <wilson@cygnus.com>
    2461 
    2462         * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle
    2463         EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP.
    2464         (elf64_ia64_print_private_bfd_data): Likewise.  Also handle
    2465         EF_IA_64_ABSOLUTE.
    2466 
    2467 2000-08-11  Alexandre Oliva  <aoliva@redhat.com>
    2468 
    2469         * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static.
    2470 
    2471 2000-08-10  Jason Eckhardt  <jle@cygnus.com>
    2472 
    2473         * elf32-i860.c (elf32_i860_relocate_section): New function.
    2474         (i860_final_link_relocate): New function.
    2475         (elf32_i860_relocate_splitn): New function.
    2476         (elf32_i860_relocate_pc16): New function.
    2477         (elf32_i860_relocate_highadj): New function.
    2478         (elf32_i860_howto): Minor adjustments to some relocations.
    2479         (elf_info_to_howto_rel): Define.
    2480         (elf_backend_relocate_section): Define.
    2481 
    2482 2000-08-10  Nick Clifton  <nickc@cygnus.com>
    2483 
    2484         * elf32-arm.h: Fix formatting.
    2485 
    2486 2000-08-10  Bernd Schmidt  <bernds@cygnus.co.uk>
    2487 
    2488         * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static.
    2489 
    2490 2000-08-08  Jason Eckhardt  <jle@cygnus.com>
    2491 
    2492         * elf32-i860.c (elf32_i860_howto_table): Updated some fields.
    2493 
    2494 2000-08-07  Kazu Hirata  <kazu@hxi.com>
    2495 
    2496         * ieee.c (ieee_write_debug_part): Rewrite a comment.
    2497         * elf64-ia64.c: Fix a typo.
    2498 
    2499 2000-08-05  Jason Eckhardt  <jle@cygnus.com>
    2500 
    2501         * elf32-i860 (elf32_i860_howto_table): New structure.
    2502         (lookup_howto): New function.
    2503         (elf32_i860_reloc_type_lookup): New function.
    2504         (elf32_i860_info_to_howto_rela): New function.
    2505         (elf_code_to_howto_index): New structure.
    2506         (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela.
    2507         (bfd_elf32_bfd_reloc_type_lookup): Re-define as
    2508         elf32_i860_reloc_type_lookup.
    2509 
    2510 2000-08-04  Rodney Brown  <RodneyBrown@pmsc.com>
    2511 
    2512         * som.c (struct fixup_format): Constify `format'.
    2513         (som_hppa_howto_table): Use SOM_HOWTO macro.
    2514         (try_prev_fixup, hppa_som_reloc): Decorate unused parameter.
    2515         (som_bfd_reloc_type_lookup): Likewise.
    2516         (compare_subspaces): Remove unused `count1', `count2'.
    2517         (som_begin_writing): Remove unused `total_reloc_size'.
    2518         (som_bfd_derive_misc_symbol_info): Decorate unused parameter.
    2519         (som_print_symbol, som_bfd_is_local_label_name): Likewise.
    2520         (som_set_reloc_info): Constify `cp'. Remove unused `addend'.
    2521         (som_find_nearest_line): Decorate unused parameter(s).
    2522         (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise.
    2523         (som_bfd_link_split_section): Likewise.
    2524 
    2525 2000-08-03  Nick Clifton  <nickc@cygnus.com>
    2526 
    2527         * section.c: Restore backed out code.
    2528         * elf.c: Restore backed out code.
    2529         (copy_private_bfd_data): Fix bug preventing stipped dynamic
    2530         binaries from working.
    2531         * bfd-in2.h: Regenerate.
    2532 
    2533 2000-08-03  H.J. Lu  <hjl@gnu.org>
    2534 
    2535         * section.c: Back out the change made by Nick Clifton
    2536         <nickc@cygnus.com> on 2000-07-31. It breaks stripping dynamic
    2537         binaries.
    2538         * bfd-in2.h: Likewise.
    2539         * elf.c: Likewise.
    2540 
    2541 2000-08-03  Alexandre Oliva  <aoliva@redhat.com>
    2542 
    2543         * elf32-sh.c (sh_elf_reloc_loop): Warning removal.
    2544 
    2545 2000-07-31  Jason Eckhardt  <jle@cygnus.com>
    2546 
    2547         * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860.
    2548         * bfd-in2.h, libbfd.h: Regenerate.
    2549 
    2550 2000-07-31  Nick Clifton  <nickc@cygnus.com>
    2551 
    2552         * section.c (struct sec): Add new boolean field 'segment_mark'.
    2553         (STD_SECTION): Initialise new field to zero.
    2554 
    2555         * bfd-in2.h: Regenerate.
    2556 
    2557         * elf.c (copy_private_bfd_data): Reorganise section to segment
    2558         mapping to cope with moved sections requiring new segments,
    2559         and overlapping segments.
    2560         (SEGMENT_END): New macro: Return the end address of a segment.
    2561         (IS_CONTAINED_BY_VMA): New macro: Determine if a segment
    2562         contains a section by comparing their VMA addresses.
    2563         (IS_CONTAINED_BY_LMA): New macro: Determine if a segment
    2564         contains a section by comparing their LMA addresses.
    2565         (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a
    2566         section should be included in a segment.
    2567         (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment
    2568         follows another in memory.
    2569         (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two
    2570         segments overlap.
    2571 
    2572 2000-07-22  Jason Eckhardt  <jle@cygnus.com>
    2573 
    2574         * cpu-i860.c: Added comments.
    2575 
    2576         * elf32-i860.c (TARGET_LITTLE_SYM): Defined to
    2577         bfd_elf32_i860_little_vec.
    2578         (TARGET_LITTLE_NAME): Defined to "elf32-i860-little".
    2579         (ELF_MAXPAGESIZE): Changed to 4096.
    2580 
    2581         * targets.c (bfd_elf32_i860_little_vec): Declaration of
    2582         new target.
    2583         (bfd_target_vector): Added bfd_elf32_i860_little_vec.
    2584 
    2585         * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added
    2586         config for little endian elf32 i860.
    2587         (targ_defvec): Define for the new config above
    2588         as "bfd_elf32_i860_little_vec".
    2589         (targ_selvecs): Define for the new config above
    2590         as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
    2591 
    2592         * configure.in (bfd_elf32_i860_little_vec): Added recognition
    2593         of new target vec.
    2594 
    2595         * configure: Regenerated.
    2596 
    2597 2000-07-27  H.J. Lu  <hjl@gnu.org>
    2598 
    2599         * elflink.h (elf_merge_symbol): Take one more argument,
    2600         dt_needed, to indicate if the symbol comes from a DT_NEEDED
    2601         entry. Don't overide the existing weak definition if dt_needed
    2602         is true.
    2603         (elf_link_add_object_symbols): Pass dt_needed to
    2604         elf_merge_symbol ().
    2605 
    2606 2000-07-27  Nick Clifton  <nickc@cygnus.com>
    2607 
    2608         * elflink.h (elf_link_size_reloc_section): Zeroes the section's
    2609         allocated contents.
    2610 
    2611 2000-07-25  Geoffrey Keating  <geoffk@cygnus.com>
    2612 
    2613         * configure.host (*-*-aix*): AIX has 'long long' always.
    2614 
    2615         * coff-rs6000.c (xcoff_write_one_armap_big): New procedure.
    2616         (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps.
    2617         (xcoff_write_archive_contents_big): Don't update the offset
    2618         of the symbol table, xcoff_write_armap will do it.
    2619 
    2620 2000-07-23  Ulf Carlsson  <ulfc@engr.sgi.com>
    2621 
    2622         * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead
    2623         of dynobj for SGI_COMPAT checks.
    2624 
    2625 2000-07-21  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
    2626 
    2627         * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function.
    2628         * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration.
    2629         * bfd-in2.h: Regenerate.
    2630 
    2631 2000-07-21  Nick Clifton  <nickc@cygnus.com>
    2632 
    2633         * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of
    2634         range symbol indices in relocs and issue an error message.
    2635 
    2636 2000-07-20  H.J. Lu  <hjl@gnu.org>
    2637 
    2638         * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check
    2639         info->new_dtags when setting DT_FLAGS_1. It will only be set
    2640         by the new linker options. It shouldn't break anything.
    2641 
    2642 2000-07-20  H.J. Lu  <hjl@gnu.org>
    2643 
    2644         * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1
    2645         only if info->new_dtags is true.
    2646 
    2647 2000-07-20  H.J. Lu  <hjl@gnu.org>
    2648 
    2649         * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set
    2650         DT_RUNPATH and DT_FLAGS only if info->new_dtags is true.
    2651 
    2652 2000-07-20  Hans-Peter Nilsson  <hp@axis.com>
    2653 
    2654         * Makefile.am (ALL_MACHINES): Add cpu-cris.lo.
    2655         (ALL_MACHINES_CFILES): Add cpu-cris.c.
    2656         (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo.
    2657         (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c.
    2658         (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules.
    2659         * Makefile.in: Rebuild.
    2660         * aclocal.m4: Rebuild.
    2661         * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris.
    2662         * archures.c (enum bfd_architecture): Add bfd_arch_cris.
    2663         (bfd_cris_arch): Declare.
    2664         (bfd_archures_list): Add bfd_cris_arch.
    2665         * bfd-in2.h: Rebuild.
    2666         * config.bfd: (cris-*-*): New target.
    2667         * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors.
    2668         * configure: Rebuild.
    2669         * elf.c (prep_headers): Add bfd_arch_cris.
    2670         * libbfd.h: Rebuild.
    2671         * libaout.h (enum machine_type): Add M_CRIS.
    2672         * reloc.c: Add CRIS relocations.
    2673         * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare.
    2674         (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec.
    2675         * cpu-cris.c, aout-cris.c, elf32-cris.c: New files.
    2676         * po/POTFILES.in, po/bfd.pot: Regenerate.
    2677 
    2678 2000-07-19  H.J. Lu  <hjl@gnu.org>
    2679 
    2680         * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set
    2681         DF_TEXTREL if DT_TEXTREL is set.
    2682         * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
    2683         * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
    2684         * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
    2685         * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise.
    2686         * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
    2687         * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
    2688         * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
    2689         * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
    2690         * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise.
    2691         * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise.
    2692 
    2693         * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also
    2694         set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if
    2695         DT_RPATH is set.
    2696         Set the DT_FLAGS and DT_FLAGS_1 entries if necessary.
    2697 
    2698 2000-07-19  H.J. Lu  <hjl@gnu.org>
    2699 
    2700         * bfd-in.h (bfd_elf_set_dt_needed_soname): New.
    2701         * bfd-in2.h: Rebuild.
    2702 
    2703         * elf-bfd.h (elf_obj_tdata): Add dt_soname.
    2704         (elf_dt_soname): New.
    2705 
    2706         * elf.c (bfd_elf_set_dt_needed_soname): New.
    2707 
    2708         * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED
    2709         entry if the shared object loaded by DT_NEEDED is used to
    2710         resolve the reference in a regular object.
    2711 
    2712 2000-07-19  H.J. Lu  <hjl@gnu.org>
    2713 
    2714         * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG,
    2715         DT_DEPAUDIT and DT_AUDIT as strings.
    2716 
    2717 2000-07-19  Nick Clifton  <nickc@cygnus.com>
    2718 
    2719         * format.c: Fix formatting.
    2720 
    2721 2000-07-19  H.J. Lu  <hjl@gnu.org>
    2722 
    2723         * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM.
    2724 
    2725 2000-07-19  H.J. Lu  <hjl@gnu.org>
    2726 
    2727         * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW,
    2728         DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ,
    2729         DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ,
    2730         DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1,
    2731         DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT,
    2732         DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT,
    2733         DT_FLAGS_1, DT_USED and DT_CHECKSUM.
    2734 
    2735 2000-07-18  Andrew Cagney  <cagney@b1.cygnus.com>
    2736 
    2737         * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move
    2738         renamed functions from here...
    2739         (assign_section_numbers): Use renamed functions.
    2740         (prep_headers): Use renamed functions.
    2741 
    2742         * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here.
    2743         * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update.
    2744         * bfd-in2.h: Regenerate.
    2745 
    2746 2000-07-18  Ulf Carlsson  <ulfc@engr.sgi.com>
    2747 
    2748         * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add
    2749         parenthesis in if statement.
    2750 
    2751 2000-07-17  Koundinya K  <kk@ddeorg.soft.net>
    2752 
    2753         Enable the support for Traditional MIPS.
    2754         * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand
    2755         return ict_none appropriately for traditional mips targets.
    2756         (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips.
    2757         (STUB_MOVE): Conditionalize for traditonal mips.
    2758         (STUB_LI16): Likewise.
    2759         (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making
    2760         room for RTPROC header.
    2761         (_bfd_mips_elf_modify_segment_map): For a normal mips executable set
    2762         the permission for the PT_DYNAMIC as read, write and execute.
    2763         (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING
    2764         for traditonal mips.
    2765         (_bfd_mips_elf_create_dynamic_sections): Add the symbol
    2766         _DYNAMIC_LINKING for traditonal mips.
    2767         (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP
    2768         in case of traditonal mips.
    2769         (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT
    2770         entry is required. For a function if PLT is not required then set the
    2771         corresponding hash table entry to 0.
    2772         (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for
    2773         traditonal mips.
    2774         (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a
    2775         shared object set the value to 0.
    2776         (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol
    2777         _DYNAMIC_LINKING for traditonal mips.
    2778         (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP
    2779         for traditonal mips.
    2780 
    2781 2000-07-15  H.J. Lu  <hjl@gnu.org>
    2782 
    2783         * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL.
    2784 
    2785 2000-07-12  Charles Wilson  <cwilson@ece.gatech.edu>
    2786 
    2787         * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing
    2788         out a structure that is BFD_IN_MEMORY.
    2789 
    2790 2000-07-11  Alan Modra  <alan@linuxcare.com.au>
    2791 
    2792         * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of
    2793         bfd pointer.  Print section id instead of bfd pointer for local
    2794         syms.  Prefix addend with `+' for global syms as well as local.
    2795         Correct calculation of name component lengths.
    2796         (elf64_hppa_check_relocs): Update call to get_dyn_name.
    2797 
    2798         From David Huggins-Daines  <dhd@linuxcare.com>
    2799         * elf-hppa.h (elf_hppa_relocate_section): Update calls here too.
    2800         * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings.
    2801         (elf64_hppa_modify_segment_map): Likewise.
    2802 
    2803 2000-07-11  Andrew Cagney  <cagney@b1.cygnus.com>
    2804 
    2805         * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA
    2806         addresses to be "naturally" sign extended.  Return -1 if unknown.
    2807         * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration.
    2808         * bfd-in2.h: Regenerate.
    2809 
    2810 2000-07-11  Andrew Cagney  <cagney@b1.cygnus.com>
    2811 
    2812         * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32
    2813         and ECOF_SIGNED_64 to list ways to extract an offset.
    2814         (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in,
    2815         ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out):
    2816         Update.
    2817         * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64.
    2818         * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32.
    2819 
    2820 2000-07-11  Andrew Cagney  <cagney@b1.cygnus.com>
    2821 
    2822         * elfcode.h (elf_object_p): Use bfd_set_start_address and not
    2823         bfd_get_start_address.
    2824         (elf_swap_ehdr_in): Sign extend e_entry when applicable.
    2825         (elf_swap_ehdr_out): Ditto.
    2826 
    2827 2000-07-10  Alexander Aganichev  <AAganichev@hypercom.com>
    2828 
    2829         * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for
    2830         compatibility with older binutils.
    2831 
    2832 2000-07-10  Alan Modra  <alan@linuxcare.com.au>
    2833 
    2834         * section.c (bfd_make_section_anyway): Start section_id at 0x10.
    2835         (STD_SECTION): Avoid negative ids, instead use 0 to 3.
    2836 
    2837         From Ryan Bradetich  <rbradetich@uswest.net>
    2838         * dwarf1.c (parse_die): Cure signed/unsigned char warnings.
    2839         (parse_line_table): Ditto.
    2840         (_bfd_dwarf1_find_nearest_line): Ditto.
    2841         * syms.c (cmpindexentry): Remove extra `*' from params.
    2842 
    2843 2000-07-09  Koundinya K  <kk@ddeorg.soft.net>
    2844 
    2845         * elf32-mips.c (sort_dynamic_relocs): New Function.
    2846         (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs
    2847         via qsort to sort the dynamic relocations in increasing r_symndx
    2848         value.
    2849 
    2850 2000-07-09  Alan Modra  <alan@linuxcare.com.au>
    2851 
    2852         * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add
    2853         ATTRIBUTE_UNUSED to unused args.
    2854         (get_opd): Likewise.
    2855         (get_plt): Likewise.
    2856         (get_dlt): Likewise.
    2857         (get_stub): Likewise.
    2858         (elf64_hppa_adjust_dynamic_symbol): Likewise.
    2859         (elf64_hppa_link_output_symbol_hook): Likewise.
    2860         (elf64_hppa_check_relocs): Delete unused var.
    2861         (elf64_hppa_size_dynamic_sections): Likewise.
    2862         (elf64_hppa_finalize_opd): Likewise.
    2863         (elf64_hppa_finalize_dynreloc): Likewise.
    2864         (elf64_hppa_modify_segment_map): Likewise.
    2865         (elf64_hppa_finish_dynamic_sections): Likewise.
    2866 
    2867         * elf-hppa.h (elf_hppa_final_write_processing): Add
    2868         ATTRIBUTE_UNUSED to unused args.
    2869         (elf_hppa_final_link_relocate): Likewise.
    2870         (elf_hppa_record_segment_addrs): Add paretheses.
    2871         (elf_hppa_relocate_section): Constify dyn_name.
    2872 
    2873         From  David Huggins-Daines  <dhd@linuxcare.com>
    2874         * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and
    2875         rearrange case statement so that it gets preferred to 32-bit ones.
    2876 
    2877         * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use
    2878         asection->id instead of address of asection structure.
    2879         (elf32_hppa_size_stubs): Likewise.
    2880 
    2881         * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section
    2882         for .init* and .fini*.
    2883 
    2884         * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers
    2885         and addends used in stub names to 32 bits.
    2886         (elf32_hppa_size_stubs): Likewise.
    2887 
    2888         * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend
    2889         twice for R_PARISC_GPREL64.  Use bfd_put_32 for R_PARISC_PCREL32,
    2890         not bfd_put_64.  Fix minor comment typo and formatting.
    2891 
    2892         Changes to create multiple linker stubs, positioned immediately
    2893         before the section where they are required.
    2894         * elf32-hppa.c: Don't include hppa_stubs.h.
    2895         (elf32_hppa_stub_hash_entry): Add a pointer to the stub section.
    2896         (elf32_hppa_stub_hash_table): Delete.
    2897         (elf32_hppa_link_hash_entry): Delete.
    2898         (elf32_hppa_link_hash_table): Use plain bfd_hash_table for
    2899         stub_hash_table, and store the struct here rather than a pointer.
    2900         Delete output_symbol_count.  Add offset array.  Change
    2901         global_value to a bfd_vma.
    2902         (elf32_hppa_stub_hash_lookup): Use table instead of table->root.
    2903         (elf32_hppa_stub_hash_traverse): Delete.
    2904         (elf32_hppa_name_of_stub): Delete.
    2905         (elf32_hppa_link_hash_lookup): Delete.
    2906         (elf32_hppa_link_hash_traverse): Delete.
    2907         (elf32_hppa_stub_hash_table_init): Delete.
    2908         (elf32_hppa_size_of_stub): Pass input section and offset rather
    2909         than location and calculate location here.  Don't pass name as all
    2910         stubs are now the same size.
    2911         (elf32_hppa_stub_hash_newfunc): Init new fields.
    2912         (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table
    2913         too.
    2914         (elf32_hppa_bfd_final_link_relocate): Cast enums to int before
    2915         comparing against ints.  Rewrite stub handling code.
    2916         (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned.
    2917         Case enums to int before comparing against ints.  Remove
    2918         bfd_reloc_dangerous case.
    2919         (elf32_hppa_build_one_stub): Rewrite.
    2920         (elf32_hppa_size_one_stub): New function.
    2921         (elf32_hppa_build_stubs): Rewrite.
    2922         (elf32_hppa_size_stubs): Pass in linker call-back functions.
    2923         Rewrite stub-handling specific code.
    2924 
    2925         * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype.
    2926 
    2927         * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo.
    2928 
    2929         * hppa_stubs.h: Delete.
    2930         * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h
    2931         (elf32-hppa.lo): Remove hppa_stubs.h from dependencies.
     7284        * po/POTFILES.in: Regenerate.
     7285        * po/bfd.pot: Regenerate.
     7286        2000-11-29  Hans-Peter Nilsson  <hpn@cygnus.com>
     7287        * elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize
     7288        anything else but EF_SH64 and EF_SH64_ABI64.
     7289        (sh64_elf_merge_private_data): Emit error for anything else but
     7290        EF_SH64 and EF_SH64_ABI64.
     7291        * config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec
     7292        from targ_selvecs.
     7293        * configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and
     7294        bfd_elf32_sh64l_vec as a temporary measure.
     7295        * configure: Regenerate.
     7296        2000-11-27  Hans-Peter Nilsson  <hpn@cygnus.com>
     7297        * cpu-sh.c (arch_info_struct): Include sh5 item
     7298        unconditionalized.
     7299        * config.bfd (sh64-*-elf*): Do not set targ_cflags.
     7300        Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec,
     7301        bfd_elf32_shblin_vec and bfd_elf32_shlin_vec.
     7302        * elf32-sh64.c: Tweak comments.
     7303        (sh64_elf_set_mach_from_flags): Recognize all machine flags that
     7304        are proper subsets of SH64 as bfd_mach_sh5.  Add EF_SH64_ABI64.
     7305        (sh64_elf_copy_private_data_internal): Wrap long line.
     7306        (sh64_elf_merge_private_data): Rewrite to allow objects from
     7307        SH64 subsets to be linked together.
     7308        (INCLUDE_SHMEDIA): Define.
     7309        * elf32-sh.c (sh_elf_relocate_section) <local symbol>:
     7310        Parenthesize plus-expression inside or-expression.
     7311        <global symbol>: Ditto.
     7312        (sh_elf_set_mach_from_flags): Remove code refusing
     7313        deleted EF_SH64_32BIT_ABI flag.
     7314        2000-11-26  Hans-Peter Nilsson  <hpn@cygnus.com>
     7315        * elf32-sh.c (sh_elf_howto_table) <R_SH_IMM_LOW16_PCREL,
     7316        R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16_PCREL,
     7317        R_SH_IMM_HI16_PCREL, R_SH_64_PCREL>: Set pcrel_offset to true.
     7318        (sh_elf_relocate_section) <local symbol>: Or 1 in
     7319        calculation of relocation if sym->st_other & STO_SH5_ISA32.
     7320        <global symbol>: Ditto if h->other & STO_SH5_ISA32.
     7321        * elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to
     7322        relocation.
     7323        2000-11-24  Hans-Peter Nilsson  <hpn@cygnus.com>
     7324        * Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo.
     7325        (BFD32_BACKENDS_CFILES): Add elf32-sh64.c.
     7326        Regenerate dependencies.
    29327327        * Makefile.in: Regenerate.
    2933 
    2934         * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and
    2935         e_nlrsel.
    2936 
    2937         * libhppa.h (hppa_field_adjust): Correct e_nsel case.
    2938 
    2939         * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset
    2940         and section name for bfd_reloc_notsupported error message.
    2941         (elf32_hppa_bfd_final_link_relocate): Print reasons for returning
    2942         bfd_reloc_notsupported.
    2943         (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd.
    2944 
    2945         * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle
    2946         undefined weak symbols for all relocs.
    2947         (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch
    2948         offsets are relative to one past the delay slot.
    2949         (elf32_hppa_size_stubs): Account for reloc addend when calculating
    2950         branch destination.  Put addend into stub name too.
    2951         (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and
    2952         adjust by 8 when deciding whether a linker stub is needed.  Put
    2953         addend into stub name as for above.
    2954 
    2955         * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on
    2956         various args and vars.
    2957         (elf32_hppa_bfd_final_link_relocate): Here too.
    2958         (elf32_hppa_size_stubs): Rename index -> indx.  Use e_indx for
    2959         inner block var to avoid shadowing.
    2960 
    2961         * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type):  Make `field' arg
    2962         unsigned.
    2963         * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto.
    2964         * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto.
    2965         (elf_hppa_fake_sections): Rename local var to avoid shadowing.
    2966 
    2967         * libhppa.h: Change practically all unsigned ints to plain ints.
    2968         Remove tests on gcc version.  Instead use ATTRIBUTE_UNUSED for
    2969         prototypes.
    2970 
    2971         From Ryan Bradetich  <rbradetich@uswest.net>
    2972         * libhppa.h (hppa_opcode_type): New enum to replace #define's.
    2973         * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to
    2974         suit above.
    2975         From  David Huggins-Daines  <dhd@linuxcare.com>
    2976         * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants
    2977         to the new OP_* ones.
    2978 
    2979         * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on
    2980         error exit.  Bail out earlier on plabel relocs that we aren't
    2981         interested in.  Don't tell elf32_hppa_stub_hash_lookup to copy
    2982         string, and then don't free our copy.
    2983         (elf32_hppa_build_one_stub): Make insn unsigned int.
    2984 
    2985         * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only
    2986         available with BL, not BE and BLE.
    2987 
    2988         * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example
    2989         code for elf arg relocs.
    2990         (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local
    2991         argument with elf_link_hash_entry h.  Handle undefined weak
    2992         symbols.  Move $global$ lookup from here...
    2993         (elf32_hppa_relocate_section): ...to here.  Return correct error
    2994         message for non-handled relocs.
    2995         (elf32_hppa_size_of_stub): Correctly test branch range.  Previous
    2996         wrong test was -0x3ffff to +0x40000.
    2997 
    2998         * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R,
    2999         R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches;
    3000         Handle them as such.
    3001         (elf_hppa_relocate_insn): Fix a typo.
    3002 
    3003         * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete.
    3004         (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
    3005         assemble_17, assemble_21): Delete.
    3006         Supply defines for all 64 possible opcodes.
    3007         (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode
    3008         formats.  Handle COMICLR.
    3009         (hppa_rebuild_insn): Delete bfd argument.  Handle formats 10, -11,
    3010         -10, -16, 16, 22.
    3011 
    3012         * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite.
    3013         (elf32_hppa_bfd_final_link_relocate): Major rewrite.
    3014         (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls
    3015         to suit.
    3016         (elf32_hppa_size_stubs): Don't free stub_name twice.  Read in all
    3017         the local syms - did this code get deleted accidentally?  Ignore
    3018         undefined and undefweak syms.
    3019 
    3020         * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost
    3021         block.  Use it instead of elf64_hppa_hash_table (info).
    3022         (elf_hppa_final_link_relocate): Use hppa_info instead of
    3023         elf64_hppa_hash_table (info).
    3024 
    3025         * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
    3026         re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
    3027         (hppa_rebuild_insn): Mask immediate bits here instead.
    3028         * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
    3029 
    3030 2000-07-08  Alan Modra  <alan@linuxcare.com.au>
    3031 
    3032         * section.c (struct sec): Add id field.  Tidy comment formatting.
    3033         (bfd_make_section_anyway): Set id.
    3034         (STD_SECTION): Init id too.
    3035         Change CONST to const throughout.
    3036         * archures.c (bfd_arch_info): Tidy comment.
    3037         (bfd_arch_list): Change a CONST to const.
    3038         * libbfd-in.h: Tidy comments and replace CONST with const.
    3039         * elf-bfd.h: Likewise.
     7328        * archures.c: Add bfd_mach_sh5.
     7329        * config.bfd: Map targ_cpu sh* to bfd_sh_arch.
     7330        Handle sh64-*-elf*.  Set targ_cflags to -DINCLUDE_SHMEDIA.
     7331        * configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec.
     7332        * configure: Regenerate.
     7333        * reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5,
     7334        BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6,
     7335        BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
     7336        BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8,
     7337        BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16,
     7338        BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16,
     7339        BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16,
     7340        BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16,
     7341        BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations.
     7342        * cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link
     7343        in item for SH5.
     7344        * elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items
     7345        for SHmedia relocs.
     7346        [INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs.
     7347        [INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call
     7348        shmedia_prepare_reloc, goto final_link_relocate if it returns
     7349        non-zero, else fail as before.
     7350        (sh_elf_set_mach_from_flags): Provide function only if not defined
     7351        as macro.  Do not recognize objects with EF_SH64_32BIT_ABI set.
     7352        (sh_elf_set_private_flags): Provide function only if not defined
     7353        as a macro.
     7354        (sh_elf_copy_private_data): Similar.
     7355        (sh_elf_merge_private_data): Similar.
     7356        * section.c (SEC_SH_ISA_SHMEDIA): New.
     7357        * targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare.
     7358        * elf32-sh64.c: New file.
    30407359        * libbfd.h: Regenerate.
    30417360        * bfd-in2.h: Regenerate.
    3042         * libcoff.h: Regenerate.
    3043 
    3044 2000-07-07  DJ Delorie  <dj@redhat.com>
    3045 
    3046         * archive.c (_bfd_write_archive_contents): Add an informative
    3047         comment.
    3048 
    3049 2000-07-06  Kazu Hirata  <kazu@hxi.com>
    3050 
    3051         * srec.c: Fix formatting.
    3052 
    3053 2000-06-05  DJ Delorie  <dj@redhat.com>
    3054 
    3055         * MAINTAINERS: new
    3056 
    3057 2000-07-04  Alexandre Oliva  <aoliva@redhat.com>
    3058 
    3059         * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol
    3060         value of PC-relative offsets.
    3061 
    3062 2000-07-03  Jim Wilson  <wilson@cygnus.com>
    3063 
    3064         * elf64-alpha.c (alpha_elf_size_info): New.
    3065         (elf_backend_size_info): Define to alpha_elf_size_info.
    3066         * elfcode.h (elf_size_info): Change hash bucket size to 4.
    3067 
    3068 2000-07-03  Ulf Carlsson  <ulfc@engr.sgi.com>
    3069 
    3070         * elf32-mips.c: Include elf32-target.h again for the traditional
    3071         MIPS targets.
    3072 
    3073 2000-07-03  Marek Michalkiewicz  <marekm@linux.org.pl>
    3074 
    3075         * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup):
    3076         Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings.
    3077         (avr_info_to_howto_rela): Likewise.
    3078         (elf32_avr_gc_mark_hook): Likewise.
    3079         (elf32_avr_gc_sweep_hook): Likewise.
    3080         (elf32_avr_relocate_section): Likewise.
    3081 
    3082 2000-07-03  Mark Elbrecht  <snowball3@bigfoot.com>
    3083 
    3084         * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into
    3085         an external symbol for a non-shared, non-relocatable link.
    3086 
    3087 2000-07-03  Nick Clifton  <nickc@redhat.com>
    3088 
    3089         * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol
    3090         is an external symbol.
    3091         (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak
    3092         external symbol.
    3093 
    3094 2000-07-03  Kazu Hirata  <kazu@hxi.com>
    3095 
    3096         * reloc16.c: Fix formatting.
    3097 
    3098 2000-07-01  Koundinya K  <kk@ddeorg.soft.net>
    3099 
    3100         * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4*
    3101         to add a new target for traditional mips i.e
    3102         bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec.
    3103         * configure.in: Likewise.
    3104         * configure: Rebuild.
    3105         * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in
    3106         bfd_target_vector.
    3107         (bfd_elf32_tradlittlemips_vec): Likewise.
    3108         * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test
    3109         to see that elfNN_bed does not get redefined even if the target file
    3110         is included twice for a chip. See elf32-mips.c.
    3111 
    3112 2000-07-01  Alan Modra  <alan@linuxcare.com.au>
    3113 
    3114         * Makefile.am (DEP): Fix 2000-06-22.  grep after running dep.sed
    3115         (CLEANFILES): Add DEPA.
     7361        * po/POTFILES.in: Regenerate.
     7362        * po/bfd.pot: Regenerate.
     7363        * bfd-in2.h: Regenerate.
     7364        * libbfd.h: Regenerate.
     7365
     73662002-02-07  Daniel Jacobowitz  <drow@mvista.com>
     7367
     7368        * bfd-in.h: Update <stdbool.h> check to only see if <stdbool.h> has
     7369        been included, not drag it in.
     7370        * bfd-in2.h: Regenerate.
     7371
     73722002-02-06  H.J. Lu  (hjl@gnu.org)
     7373
     7374        * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update
     7375        the mach and ISA fields if necessary.
     7376
     73772002-02-06  Nick Clifton  <nickc@cambridge.redhat.com>
     7378
     7379        * coffcode.h (coff_set_arch_mach_hook): Select the highest known
     7380        ARM architecture when an F_ARM_5 flag is detected, since we cannot
     7381        be sure exactly which architecture this represents.
     7382
     73832002-02-05  Nick Clifton  <nickc@redhat.com>
     7384
     7385        * po/tr.po: Updated translation.
     7386
     73872002-02-05  Alan Modra  <amodra@bigpond.net.au>
     7388
     7389        From Jimi X <jimix@watson.ibm.com>
     7390        * archures (bfd_mach_ppc64): Define.
     7391        (bfd_powerpc_arch): Rename to bfd_powerpc_archs.
     7392        (bfd_powerpc_arch): Define.
     7393        * bfd-in2.h: Regenerate.
     7394        * cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs.
     7395        (bfd_powerpc_arch): Move to tail of bfd_powerpc_archs.
     7396        (bfd_powerpc_archs): Add default powerpc64 arch.
     7397
     73982002-02-05  Alan Modra  <amodra@bigpond.net.au>
     7399
     7400        * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs
     7401        against section syms in readonly sections.  Don't do the global
     7402        sym check if we find one.
     7403        * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
     7404        * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
     7405        * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
     7406        * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
     7407        (elf_s390_grok_prstatus): Add missing prototype.
     7408
     74092002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>
     7410
     7411        * elf64-mmix.c (mmix_dump_bpo_gregs): New function.
     7412        (mmix_elf_check_common_relocs) <case R_MMIX_BASE_PLUS_OFFSET>:
     7413        Call bfd_get_section_by_name only once.  Initialize
     7414        bpodata->n_bpo_relocs_this_section.
     7415        (_bfd_mmix_prepare_linker_allocated_gregs): Remove comment
     7416        referring to DSOs.
     7417        (bpo_reloc_request_sort_fn): Don't use difference of values as
     7418        return-value.
     7419
     74202002-02-02  David O'Brien  <obrien@FreeBSD>
     7421
     7422        * configure.in: Tweak the FreeBSD 4.x recognition more.  Only treat
     7423        version 4.5 and later the same as 5-CURRENT.
     7424        * configure: Re-generate.
     7425
     74262002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>
     7427
     7428        * config.bfd (hppa*-*-netbsd*): New target.
     7429
     74302002-01-31  Philipp Thomas  <pthomas@suse.de>
     7431
     7432        * coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR
     7433        to front of message. Unify messages with elf32-arm.h. Use
     7434        commas where neccessary.
     7435        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase
     7436        ERROR in messages. Unify messages with coff-arm.c. Correct
     7437        VFP/FPA error message.
     7438        (elf32_arm_print_private_bfd_data): Don't mark APCS-26 and
     7439        APCS-32 for translation.
     7440
     74412002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>
     7442
     7443        Perform on-demand global register allocation from
     7444        R_MMIX_BASE_PLUS_OFFSET relocs.
     7445        * elf64-mmix.c (struct bpo_reloc_section_info, struct
     7446        bpo_reloc_request, struct bpo_greg_section_info): New.
     7447        (mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook,
     7448        bpo_reloc_request_sort_fn, mmix_elf_relax_section,
     7449        _bfd_mmix_check_all_relocs,
     7450        _bfd_mmix_prepare_linker_allocated_gregs,
     7451        _bfd_mmix_finalize_linker_allocated_gregs): New functions.
     7452        (elf_mmix_howto_table): Correct src_mask for most relocs.
     7453        (mmix_elf_perform_relocation) <case R_MMIX_BASE_PLUS_OFFSET>: New
     7454        case.
     7455        (mmix_final_link_relocate) <case R_MMIX_BASE_PLUS_OFFSET>: New
     7456        case.  Fix typo in comment.  New label do_mmix_reloc.
     7457        (mmix_elf_check_relocs): Abuse bfd_link_info member base_file to
     7458        store first object file with a base-plus-offset reloc.  Call
     7459        mmix_elf_check_common_relocs for the part common with mmo.
     7460        (mmix_elf_final_link): Write out linker-allocated register
     7461        contents section.
     7462        (elf_backend_gc_sweep_hook): Define.
     7463        (bfd_elf64_bfd_relax_section): Define.
     7464
     7465        * mmo.c: Don't include <ctype.h>
     7466        (mmo_init): Correct init-once logic.
     7467
     74682002-02-01  Tom Rix  <trix@redhat.com>
     7469
     7470        * config.bfd: Conditionally support <aiaff> for pre AIX 4.3.
     7471
     74722002-02-01  Alan Modra  <amodra@bigpond.net.au>
     7473
     7474        * Makefile.am: Run "make dep-am"
    31167475        * Makefile.in: Regenerate.
    31177476
    3118 2000-06-30  DJ Delorie  <dj@cygnus.com>
    3119 
    3120         * peicode.h (coff_swap_filehdr_in): can't use e_magic because we
    3121         can't assume the PE header is at 0x80.
    3122 
    3123 2000-06-29  Mark Elbrecht  <snowball3@bigfoot.com>
    3124 
    3125         * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH.
    3126 
    3127 2000-06-28  Mark Elbrecht  <snowball3@bigfoot.com>
    3128 
    3129         * go32stub.h: Update stub.
    3130 
    3131 2000-06-26  Marek Michalkiewicz  <marekm@linux.org.pl>
    3132 
    3133         * archures.c (bfd_mach_avr5): Define.
    3134         * bfd-in2.h (bfd_mach_avr5): Define.
    3135         * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to
    3136         bfd_mach_avr5, add bfd_mach_avr4.  Update comments.
    3137         (compatible): Update comment.  Add missing test.
    3138         * elf32-avr.c (avr_final_link_relocate): Support 8K wrap
    3139         for avr2 and avr4.  Simplify 8K wrap code.
    3140         (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5.
    3141         (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5.
    3142 
    3143 2000-06-26  Kazu Hirata  <kazu@hxi.com>
    3144 
    3145         * coff-h8300.c: Fix formatting.
    3146         * cpu-h8300.c: Likewise.
    3147 
    3148 2000-06-24  Alexandre Oliva  <aoliva@redhat.com>
    3149 
    3150         * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)'
    3151         for local symbols whose names are unknown.
    3152 
    3153 2000-06-22  Alan Modra  <alan@linuxcare.com.au>
    3154 
    3155         * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
    3156         find one.
     74772002-01-31  David O'Brien  <obrien@FreeBSD>
     7478
     7479        * configure.in: Recognize the differences in core files from FreeBSD
     7480        4.{0,1} and later versions of 4.x.  This treats 4.2+ the same as
     7481        5-CURRENT.
     7482        * configure: Regenerate.
     7483
     74842002-01-31  Ivan Guzvinec  <ivang@opencores.org>
     7485
     7486        * coff-or32.c: New file.
     7487        * cpu-or32.c: New file.
     7488        * elf32-or32.c: New file.
     7489        * archures.c: Add support for or32.
     7490        * targets.c: Add support for or32.
     7491        * bfd-in2.h: Regenerate.
     7492        * coffcode.h (coff_set_arch_mach_hook, coff_set_flags,
     7493        coff_write_object_contents): Add support for or32.
     7494        * config.bfd: Add target.
     7495        * configure.in: Add support for or32.
     7496        * configure: Regenerate.
     7497        * Makefile.am: Add support for or32.
    31577498        * Makefile.in: Regenerate.
    3158         * doc/Makefile.in: Regenerate.
    3159 
    3160 2000-06-20  H.J. Lu  <hjl@gnu.org>
    3161 
    3162         * Makefile.am: Rebuild dependency.
    3163         * Makefile.in: Rebuild.
    3164 
    3165 2000-06-20  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
    3166 
    3167         * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function.
    3168         (elf_backend_copy_indirect_symbol): Map to the new function.
    3169 
    3170 2000-06-20  Alan Modra  <alan@linuxcare.com.au>
    3171 
    3172         * archive.c (normalize): Correct pointer comparison when checking
    3173         for backslashes.
    3174         (bfd_bsd_truncate_arname): Likewise.
    3175         (bfd_gnu_truncate_arname): Likewise.
    3176 
    3177 2000-06-20  Ulf Carlsson  <ulfc@engr.sgi.com>
    3178 
    3179         * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual
    3180         sections elf_{text,data}_{section,symbol}.
    3181         * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove.
    3182         (_bfd_mips_elf_hide_symbol): New function.
    3183         (elf_backend_hide_symbol): Map to the new function.
    3184         (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD
    3185         definitions of mips_elf_{text,data}_{section,symbol}.
    3186         (mips_elf_local_relocation_p): Try to find the direct symbol
    3187         based on new check_forced argument.
    3188         (mips_elf_calculate_relocation): Use new version of
    3189         mips_elf_local_relocation_p.
    3190         (mips_elf_relocate_section): Likewise.
    3191         (_bfd_mips_elf_relocate_section): Likewise.
    3192         (mips_elf_sort_hash_table): Only assert that have enough GOT
    3193         space.
    3194         (mips_elf_got16_entry): Match all 32 bits to the existing GOT
    3195         entry if the relocation based on the new external argument.
    3196         (mips_elf_create_dynamic_relocation): Assert that we have a
    3197         section contents allocated where we can swap out the dynamic
    3198         relocations.
    3199         (mips_elf_calculate_relocation): Find the real hash-table entry
    3200         correctly by using h->root.root.type.  Only create a dynamic
    3201         relocation entry if the symbol is defined in a shared library.
    3202         Create an external GOT entry for the GOT16 relocation if the
    3203         symbol was forced local.
    3204         (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a
    3205         dynamic index if the symbol was forced local.
    3206 
    3207 2000-06-20  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
    3208 
    3209         * elf32-mips.c: Fix typos in comments.
    3210 
    3211 2000-06-19  Mark Kettenis  <kettenis@gnu.org>
    3212 
    3213         * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef
    3214         CORE_VERSION_1.
    3215 
    3216 2000-06-18  Stephane Carrez  <stcarrez@worldnet.fr>
    3217 
    3218         * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild.
    3219         * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS,
    3220         BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files.
    3221         * configure.in (bfd_elf32_m68hc12_vec): Recognize.
    3222         (bfd_elf32_m68hc11_vec): Likewise.
    3223         * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11.
    3224         Supports 68hc11 & 68hc12  at the same time.
    3225         * targets.c (bfd_elf32_m68hc12_vec): Declare and put in
    3226         bfd_target_vector.
    3227         (bfd_elf32_m68hc11_vec): Likewise.
    3228         * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11.
    3229         * archures.c (bfd_m68hc12_arch): Define and register in global list
    3230         (bfd_m68hc11_arch): Likewise.
    3231         * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8,
    3232         BFD_RELOC_M68HC11_3B): Define.
    3233         * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support.
    3234         * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support.
    3235 
    3236 2000-06-18  Ulf Carlsson  <ulfc@engr.sgi.com>
    3237 
    3238         * elf_bfd.h (struct elf_backend_data): Add info argument to
     7499        * po/SRC-POTFILES.in: Add or32 files.
     7500        * po/bfd.pot: Regenerate.
     7501
     75022002-01-31  Nick Clifton  <nickc@cambridge.redhat.com>
     7503            Don Lindsay  <lindsayd@cisco.com>
     7504
     7505        * elf32-mips.c (mips_elf_calculate_relocation): Replace 'return
     7506        false' with a return of a bfd_reloc_ error code.
     7507
     75082002-01-31  Hans-Peter Nilsson  <hp@axis.com>
     7509
     7510        * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
     7511        unexport unreferenced symbols when --export-dynamic.  Call
     7512        _bfd_elf_strtab_delref when unexporting.
     7513
     75142002-01-30  Daniel Jacobowitz  <drow@mvista.com>
     7515
     7516        * bfd-in.h: Include <stdbool.h> if it is available.
     7517        * bfd-in2.h: Regenerated.
     7518
     75192002-01-31  Alan Modra  <amodra@bigpond.net.au>
     7520
     7521        * elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should
     7522        not go via the plt.
     7523
     75242002-01-30  Nick Clifton  <nickc@cambridge.redhat.com>
     7525
     7526        * archures.c: Tidy up formatting of embedded comments.
     7527        * bfd.c: Tidy up formatting of embedded comments.
     7528        * bfd-in.h: Fix formatting of comments.
     7529        * reloc.c: Tidy up formatting of ordinary & embedded comments.
     7530        * section.c: Tidy up formatting of embedded comments.
     7531        * syms.c: Tidy up formatting of embedded comments.
     7532        * targets.c: Tidy up formatting of embedded comments.
     7533
     7534        * bfd-in2.h: Regenerate.
     7535
     75362002-01-30  Nick Clifton  <nickc@cambridge.redhat.com>
     7537
     7538        * vms-tir.c (cmd_name): New function.
     7539        (tir_cmd_name): New function.
     7540        (etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name().
     7541        (tir_opr, tir_ctl, tir_cmd): use tir_cmd_name().
     7542        Fix formatting.
     7543
     7544        * peXXigen.c (pe_print_idata): Rearrange message to aid in
     7545        translation.
     7546        (pe_print_pdata):  Rearrange message to aid in translation.
     7547
     7548        * libbfd.c (warn_deprecated): Rearrange error message to aid in
     7549        translation.
     7550
     7551        * ihex.c (ihex_write_object_contents): Fix spelling typo.
     7552
     7553        * ieee.c (ieee_slurp_external_symbols): Remove spurious space.
     7554
     7555        * elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error
     7556        message to aid in translation.
     7557
     7558        * elf64-mmix.c (mmix_final_link_relocate): Rearrange error message
     7559        to aid in translation.
     7560
     7561        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo.
     7562
     75632002-01-30  Philipp Thomas  <pthomas@suse.de>
     7564
     7565        * coff-arm.c, elf32-elf.h: Unify messages.
     7566
     75672002-01-30  Nick Clifton <nickc@redhat.com>
     7568
     7569        * po/sv.po: Updated translation.
     7570
     75712002-01-30  Philipp Thomas  <pthomas@suse.de>
     7572
     7573        * dwarf2.c (read_abbrev): Use full section name in error message.
     7574        (decode_line_info): Likewise.
     7575
     7576        * elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging
     7577        message.
     7578
     75792002-01-30  Alan Modra  <amodra@bigpond.net.au>
     7580
     7581        * elf64-ppc.c (func_desc_adjust): Only provide missing function
     7582        descriptor symbols for undefined function code syms.  Clear
     7583        ELF_LINK_NON_ELF so that they can stay weak.
     7584
     75852002-01-29  Chris Demetriou  <cgd@broadcom.com>
     7586            Mitch Lichtenberg  <mpl@broadcom.com>
     7587
     7588        * bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype.
     7589        * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function
     7590        to handle 32-bit ELF embedded reloc (ld --embedded-relocs)
     7591        generation.
     7592        * bfd-in2.h: Regenerate.
     7593
     75942002-01-29  Chris Demetriou  <cgd@broadcom.com>
     7595
     7596        * elf32-mips.c: Add additional comments about HI16 relocation
     7597        processing.
     7598        (_bfd_mips_elf_hi16_reloc): Don't subtract address here for
     7599        pc-relative relocations.  (Reverts change made on 2001-10-31.)
     7600        (_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here
     7601        for pc-relative relocations.
     7602        (mips_elf_calculate_relocation): Add a comment about a kludge
     7603        in the R_MIPS_GNU_REL_HI16 handling.
     7604        (_bfd_mips_elf_relocate_section): Implement that kludge;
     7605        adjust pc-relative HI16 relocation for difference in HI16 and
     7606        LO16 addresses, since it can't easily be done in
     7607        mips_elf_calculate_relocation.
     7608
     76092002-01-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
     7610
     7611        * elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32
     7612        relocations with PC32 relocations for undefined or weak symbols.
     7613        * elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise.
     7614        * elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise.
     7615
     76162002-01-28  Jason Thorpe  <thorpej@wasabisystems.com>
     7617
     7618        * elfcore.h (elf_core_file_p): Improve comment for last change.
     7619
     76202002-01-27  Daniel Jacobowitz  <drow@mvista.com>
     7621
     7622        * configure: Regenerated.
     7623
     76242002-01-27  Jason Thorpe  <thorpej@wasabisystems.com>
     7625
     7626        * elfcore.h (elf_core_file_p): Set the machine architecture
     7627        before processing the program headers.
     7628
     76292002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
     7630
     7631        * configure.in <64-bit configuration>: If using gcc, check and
     7632        emit error for egcs-1.1.2.
     7633        * configure: Regenerate.
     7634
     76352002-01-26  Egor Duda  <deo@logos-m.ru>
     7636
     7637        * elf.c (elfcore_grok_win32pstatus): Copy only as much information
     7638        as possible to avoid stack corruption.
     7639
     76402002-01-26  Richard Henderson  <rth@redhat.com>
     7641
     7642        * elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext
     7643        for non-allocated sections.
     7644
     76452002-01-25  Mark Kettenis  <kettenis@gnu.org>
     7646
     7647        * elf.c (elfcore_write_prstatus): Make sure we pass the address of
     7648        prstat.pr_reg even if it is a struct.
     7649
     76502002-01-25  Steve Ellcey <sje@cup.hp.com>
     7651
     7652        * elfxx-ia64.c: Reset AIX vector function overrides for HP-UX.
     7653
     76542002-01-25  Philipp Thomas  <pthomas@suse.de>
     7655
     7656        * coffgen.c (coff_print_symbol): Don't mark info message
     7657        for translation.
     7658
     76592002-01-25  Nick Clifton <nickc@redhat.com>
     7660
     7661        * po/fr.po: Updated translation.
     7662        * po/es.po: Updated translation.
     7663
     76642002-01-25  Philipp Thomas  <pthomas@suse.de>
     7665
     7666        * coff-alpha.c (alpha_relocate_section): Unify warning message
     7667        for GP relative relocations without GP defined.
     7668        * coff-mips.c (mips_relocate_section): Likewise.
     7669
     76702002-01-25  Alan Modra  <amodra@bigpond.net.au>
     7671
     7672        * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
     7673        unsigned overflow when new_offset < old_offset.
     7674
     76752002-01-24  Philipp Thomas  <pthomas@suse.de>
     7676
     7677        * bfd.c (_bfd_abort): Fix typo.
     7678
     76792002-01-23  Richard Henderson  <rth@redhat.com>
     7680
     7681        * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress
     7682        plt entries for undefweak symbols.
     7683
     76842002-01-23  Steve Ellcey <sje@cup.hp.com>
     7685
     7686        * targets.c (bfd_elf32_ia64_hpux_big_vec): Add to DEFAULT_VECTOR.
     7687        (bfd_elf64_ia64_hpux_big_vec): Ditto.
     7688        (bfd_elf32_h8300_vec): Ditto.
     7689
     76902002-01-23  Alan Modra  <amodra@bigpond.net.au>
     7691
     7692        * elf64-ppc.c: Remove stale part of ABI comment.
     7693        (NO_OPD_RELOCS): Define.
     7694        (ppc64_elf_check_relocs): Use it.
     7695        (ppc64_elf_relocate_section): Here too.
     7696        (build_one_stub): Don't point function syms at the stub.  Instead,
     7697        hijack plt.offset.
     7698        (ppc64_elf_relocate_section): Check whether REL24 relocs should
     7699        really go to the stub.  Make all dynamic relocs in opd against
     7700        locals.
     7701        (ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
     7702        plt.offset.
     7703
     77042002-01-22  Richard Henderson  <rth@redhat.com>
     7705
     7706        * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp.
     7707
     77082002-01-22  Alan Modra  <amodra@bigpond.net.au>
     7709
     7710        * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of
     7711        TOC_BASE_OFF adjustment.
     7712
     7713        * Makefile.am: Run "make dep-am".
     7714        * Makefile.in: Regenerate.
     7715        * po/SRC-POTFILES.in: Regenerate.
     7716
     77172002-01-22  John David Anglin  <dave@hiauly1.hia.nrc.ca>
     7718
     7719        * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new
     7720        host defines.
     7721
     77222002-01-21  Hans-Peter Nilsson  <hp@axis.com>
     7723
     7724        * elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GOTREL>:
     7725        Check for and emit error if sgot is NULL at this point.
     7726
     77272002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>
     7728
     7729        * config.bfd (ia64*-*-netbsd*): New target.
     7730
     77312002-01-21  Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
     7732
     7733        * som.c (som_write_space_strings): Comment typo fix.
     7734
     77352002-01-21  Alan Modra  <amodra@bigpond.net.au>
     7736
     7737        * elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and
     7738        is_func_descriptor fields.
     7739        (link_hash_newfunc): Init them.
     7740        (ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
     7741        dot are candidates for plt entries.  When processing .opd relocs,
     7742        set function descriptor strings to point inside function code
     7743        string, and set new ppc_link_hash_entry fields.
     7744        (ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
     7745        (ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
     7746        function descriptors.  It's now done in..
     7747        (func_desc_adjust): New.
     7748        (ppc64_elf_func_desc_adjust): New.
     7749        (define elf_backend_always_size_sections): Define.
     7750        (ppc64_elf_hide_symbol): New.
     7751        (define elf_backend_hide_symbol): Define.
     7752        (allocate_dynrelocs): Remove code looking up function descriptors
     7753        as that has been done earlier.
     7754        (ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
     7755        table.
     7756        (ppc64_elf_finish_dynamic_symbol): Likewise.  Remove code looking
     7757        up function descriptor.
     7758        (build_one_stub): Look up the function code sym.  Check for
     7759        invalid plt offsets.
     7760        (ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
     7761        Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.
     7762
     7763        * elf-bfd.h (elf_backend_data <elf_backend_hide_symbol>): Add
     7764        boolean param.
     7765        (_bfd_elf_link_hash_hide_symbol): Likewise.
     7766        * elflink.h (elf_link_add_object_symbols): Adjust call to
    32397767        elf_backend_hide_symbol.
    3240         (_bfd_elf_link_hash_hide_symbol): Likewise.
    3241         * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise.
    3242         * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise.
    3243         * elflink.h (elf_link_add_object_symbols): Likewise.
    3244         (elf_link_assign_sym_version): Likewise.
    3245 
    3246 2000-06-18  H.J. Lu  <hjl@gnu.org>
    3247 
    3248         * coff-i386.c (coff_i386_reloc): Don't return in case of
    3249         output_bfd == (bfd *) NULL if COFF_WITH_PE is defined.
    3250         Compensate PE relocations when linking with non-PE object
    3251         files to generate a non-PE executable.
    3252 
    3253 2000-06-17  Ulf Carlsson  <ulfc@engr.sgi.com>
    3254 
    3255         * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write
    3256         GOT entries if we're doing a static link or -Bsymbolic link.
    3257 
    3258 2000-06-15  Ulf Carlsson  <ulfc@engr.sgi.com>
    3259 
    3260         * elflink.h (elf_link_adjust_relocs): Check for and call backend
    3261         specifific swap_reloc_{in,out} and swap_reloca_{in,out} if
    3262         available.
    3263         (elf_link_output_relocs): Likewise.
    3264         (elf_reloc_link_order): Likewise.
    3265 
    3266 2000-06-16  Nicholas Duffek  <nsd@redhat.com>
    3267 
    3268         * archures.c (enum bfd_architecture): #define constants for
    3269         PowerPc and RS6000 machine numbers.
    3270         * bfd-in2.h: Regenerate.
    3271         * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch
    3272         to bfd_arch_powerpc instead of bfd_arch_rs6000.  Refer to PowerPc
    3273         and RS6000 machine numbers using #defined constants from
    3274         archures.c.
    3275         * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000
    3276         machine numbers using #defined constants from archures.c.  Add
    3277         entries for EC603e, 630, A35, RS64II, RS64III, 7400.  Specify
    3278         64-bit words in 620 entry.
    3279         * cpu-rs6000.c (arch_info_struct): Create with entries for RS1,
    3280         RSC, and RS2.
    3281         (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k).
    3282 
    3283 2000-06-16  Nicholas Duffek  <nsd@cygnus.com>
    3284 
    3285         * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64.
    3286         * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field.
    3287         * libcoff.h (struct xcoff_tdata): Define xcoff64 field.
    3288 
    3289 2000-06-16  Nicholas Duffek  <nsd@redhat.com>
    3290 
    3291         * bfd-in.h (bfd_family_coff): Define.
    3292         * bfd-in2.h: Regenerate.
    3293         * coffgen.c (coff_count_linenumbers, coff_symbol_from,
    3294         coff_find_nearest_line): Check COFFness using bfd_family_coff()
    3295         instead of bfd_target_coff_flavour.
    3296         * cofflink.c (_bfd_coff_final_link): Likewise.
    3297         * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to
    3298         exclude XCOFF files.
    3299         * reloc.c (bfd_perform_relocation, bfd_install_relocation):
    3300         Likewise.
    3301         * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour.
    3302         * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour.
    3303         * xcofflink.c (XCOFF_XVECP): Delete.
    3304         (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol,
    3305         bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc,
    3306         bfd_xcoff_record_link_assignment,
    3307         bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with
    3308         check for bfd_target_xcoff_flavour.
    3309 
    3310 2000-06-16  Nicholas Duffek  <nsd@redhat.com>
    3311 
    3312         * rs6000-core.c: Support 64-bit core files, support pre-4.3 core
    3313         files on AIX 4.3.
    3314         (read_hdr): New function.
    3315         (rs6000coff_core_p): Store mstsave or __context64 struct instead
    3316         of trying to extract individual registers.  Set abfd->arch_info
    3317         to match the architecture that created the core file.
    3318         (rs6000coff_get_section_contents): Delete.
    3319         * xcoff-target.h (rs6000coff_get_section_contents): Delete.
    3320 
    3321 2000-06-14  H.J. Lu  <hjl@gnu.org>
    3322 
    3323         * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec)
    3324         is NULL.
    3325 
    3326 2000-06-13  H.J. Lu  <hjl@gnu.org>
    3327 
     7768        (elf_fix_symbol_flags): Likewise.
     7769        (elf_link_assign_sym_version): Likewise. Use bfd_malloc rather
     7770        than bfd_alloc.
     7771        * elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param.
     7772        Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref.
     7773        * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
     7774        (clobber_millicode_symbols): Adjust to suit new hide_symbol.
     7775        * elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param
     7776        and adjust to suit.
     7777        * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call
     7778        _bfd_elf_link_hash_hide_symbol rather than duplicating code.
     7779        * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
     7780
     77812002-01-18  Alan Modra  <amodra@bigpond.net.au>
     7782
     7783        * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a
     7784        dynamic function descriptor symbol, not the associated function
     7785        symbol.
     7786
     77872002-01-17  Eric Christopher  <echristo@redhat.com>
     7788
     7789        * elf32-mips.c (mips_elf_calculate_relocation): Fix typo.
     7790
     77912002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>
     7792
     7793        * po/bfd.pot: Regenerate.
     7794        * po/fr.po: Regenerate.
     7795
     77962002-01-17  Alan Modra  <amodra@bigpond.net.au>
     7797
     7798        * elf-bfd.h (elf_backend_data <elf_backend_section_from_bfd_section>):
     7799        Remove "Elf_Internal_Shdr *" param.
     7800        (_bfd_mips_elf_section_from_bfd_section): Ditto.
     7801        * elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto.
     7802        * elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto.
     7803        * elf32-v850.c (v850_elf_section_from_bfd_section): Ditto.
     7804        * elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto.
     7805        * elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto.
     7806        * elf.c (_bfd_elf_section_from_bfd_section): Allow backend
     7807        function to override special sections.  Remove hdr arg from
     7808        backend call, and don't loop.
     7809
     78102002-01-16  Eric Christopher  <echristo@redhat.com>
     7811
     7812        * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
     7813        on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
     7814        relocations requiring gp0 and gp.
     7815
     78162002-01-16  Richard Earnshaw  <rearnsha@arm.com>
     7817
     7818        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
     7819        EF_ARM_VFP_FLOAT.
     7820        (elf32_arm_print_private_bfd_data): Likewise.
     7821
     78222002-01-16  Nick Clifton  <nickc@cambridge.redhat.com>
     7823
     7824        * po/tr.po: Import new version.
     7825
     78262002-01-16  Alan Modra  <amodra@bigpond.net.au>
     7827
     7828        * elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs.
     7829        (ppc64_elf_reloc_type_lookup): Use proper CTOR reloc.
     7830        (ORI_R0_R0_0): Correct.
     7831
     78322002-01-16  Alan Modra  <amodra@bigpond.net.au>
     7833
     7834        * elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE
     7835        when plt_not_loaded.
     7836        * elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to
     7837        clear .plt SEC_CODE here.  Create .stub and correct .glink flags.
     7838        (PLT_INITIAL_ENTRY_SIZE): Set to 24.
     7839        (ppc64_elf_glink_code): Delete.
     7840        (PPC64_ELF_GLINK_SIZE): Delete.
     7841        (ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11,
     7842        BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0,
     7843        ORI_R0_R0_0): Define.
     7844        (PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define.
     7845        (struct ppc_link_hash_table): Add sstub and plt_overflow.
     7846        (ppc64_elf_link_hash_table_create): Init them.
     7847        (ppc64_elf_check_relocs <R_PPC64_REL24>): Refcount .plt entry.
     7848        Don't copy to shared lib.
     7849        (ppc64_elf_check_relocs): Call bfd_set_error on errors.
     7850        (ppc64_elf_gc_sweep_hook <R_PPC64_REL24>): Sweep plt refcount.
     7851        (allocate_dynrelocs <plt>): Don't change function sym here.  Make
     7852        room for .stub and .glink code.
     7853        (ppc64_elf_size_dynamic_sections): Handle .stub.  Make entry for
     7854        DT_PPC64_GLINK.
     7855        (ppc64_elf_final_link): Rename to ppc64_elf_set_toc.  Don't call
     7856        bfd_elf64_bfd_final_link.
     7857        (bfd_elf64_bfd_final_link): Don't define.
     7858        (ppc64_elf_size_stubs): New.
     7859        (build_plt_stub): New.
     7860        (build_one_stub): New.
     7861        (ppc64_elf_build_stubs): New.
     7862        (ppc64_elf_relocate_section <toc relocs>): Remove assert.
     7863        (ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs.
     7864        (ppc64_elf_finish_dynamic_symbol): Don't build stubs here.  Set
     7865        DT_PPC64_GLINK entry.  Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in
     7866        case output sections not separate.  Adjust DT_RELASZ to not
     7867        include plt relocs.  Set reserved got entry.  Set got and plt
     7868        entry size.
     7869        (elf_backend_got_header_size): Set to 8.
     7870        * elf64-ppc.h: New file.
     7871
     78722002-01-16  Alan Modra  <amodra@bigpond.net.au>
     7873
     7874        * elf32-arm.h (elf32_arm_size_dynamic_sections): When removing
     7875        sections, use bfd_section_list_remove.
     7876        * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
     7877        * elflink.h (elf_link_add_object_symbols): When removing all
     7878        sections, use bfd_section_list_clear.
     7879
     78802002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>
     7881
     7882        * po/sv.po: New file: Swedish translation.
     7883        * configure.in (ALL_LINGUAS): Add sv.
    33287884        * configure: Regenerate.
    33297885
    3330 2000-06-13  J"orn Rennecke <amylaar@cygnus.co.uk>
    3331 
    3332         * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of
    3333         armpei_little_vec.
    3334 
    3335 2000-06-08  David O'Brien  <obrien@FreeBSD.org>
    3336 
    3337         * configure.in (VERSION): Update to show this is the CVS mainline.
    3338 
    3339 2000-06-07  Alan Modra  <alan@linuxcare.com.au>
    3340 
    3341         * elf32-d10v.c: Include elf/d10v.h
    3342         (enum reloc_type): Delete.
    3343         * elf32-d30v.c: Include elf/d30v.h
    3344         (enum reloc_type): Delete.
    3345 
    3346         * Makefile.am: Run "make dep-am" to regenerate dependencies.
     78862002-01-15  Jakub Jelinek  <jakub@redhat.com>
     7887
     7888        * elflink.h (elf_link_input_bfd): Back out 2002-01-07 change.
     7889        * elf.c (merge_sections_remove_hook): New function.
     7890        (_bfd_elf_merge_sections): Pass it as 3rd argument to
     7891        _bfd_merge_sections.
     7892        * libbfd-in.h (_bfd_merge_sections): Add 3rd argument.
     7893        * libbfd.h: Rebuilt.
     7894        * merge.c (_bfd_merge_sections): Add remove_hook argument.
     7895        Call remove_hook if a SEC_EXCLUDE section is encountered.
     7896
     78972002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>
     7898
     7899        * elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'.
     7900        (xstormy16_reloc_map): Initialise new field with correct howto
     7901        table.
     7902        (xstormy16_reloc_type_lookup): Use 'table' field to locate correct
     7903        howto entry.
     7904
     79052002-01-10  Michael Snyder  <msnyder@redhat.com>
     7906
     7907        * elf.c (elfcore_write_prstatus): Use long instead of pid_t;
     7908        (elfcore_write_pstatus): Use long instead of pid_t;
     7909        * elf-bfd.h: Change prototypes to use long instead of pid_t;
     7910
     79112002-01-09  Jason Thorpe  <thorpej@wasabisystems.com>
     7912
     7913        * elf.c: Update copyright years.
     7914        (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
     7915        and NT_NETBSDCORE_FIRSTMACH.  Improve a comment.
     7916
     79172002-01-08  Michael Snyder  <msnyder@redhat.com>
     7918
     7919        Add capability to write corefile note sections, for gdb.
     7920        * elf.c (elfcore_write_note): New function.
     7921        (elfcore_write_prpsinfo): New function.
     7922        (elfcore_write_prstatus): New function.
     7923        (elfcore_write_pstatus): New function.
     7924        (elfcore_write_prfpreg): New function.
     7925        (elfcore_write_prxfpreg): New function.
     7926        * elf-bfd.h: Add prototypes for above functions.
     7927
     79282002-01-08  Alexandre Oliva  <aoliva@redhat.com>
     7929
     7930        * elf.c (elf_fake_sections): Propagate errors from
     7931        elf_backend_fake_section.
     7932
     79332002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>
     7934
     7935        * Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
     7936        (BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
     7937        (elf32-sh-nbsd.lo): New rule.
    33477938        * Makefile.in: Regenerate.
    3348 
    3349         * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs.
    3350         (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and
    3351         move HOWTOs into elf_howto_table.
    3352         (R_386_standard, R_386_ext_offset): Define.
    3353         (R_386_ext, R_386_vt_offset, R_386_vt): Define.
    3354         (elf_i386_reloc_type_lookup): Modify calculation of index into
    3355         elf_howto_table since we've removed the padding.
    3356         (elf_i386_info_to_howto_rel): Likewise.
    3357         (elf_i386_relocate_section): Likewise.
    3358 
    3359 2000-06-06  Michael Snyder  <msnyder@seadog.cygnus.com>
    3360 
    3361         * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t.
    3362 
    3363 2000-06-05  H.J. Lu  <hjl@gnu.org>
    3364 
    3365         * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
    3366         an error when seeing an undefined symbol with hidden/internal
    3367         attribute. It is handled in *_relocate_section ().
    3368 
    3369 2000-06-05  H.J. Lu  <hjl@gnu.org>
    3370 
    3371         * elflink.h (elf_fix_symbol_flags): Follow the link for the
    3372         indirect symbol for the ELF_LINK_NON_ELF bit.
    3373         (elf_link_output_extsym): Don't output the indirect symbol even
    3374         if the ELF_LINK_NON_ELF bit is set.
    3375 
    3376 2000-06-01  J.T. Conklin  <jtc@redback.com>
    3377 
    3378         * config.bfd (i[3456]86-*-netbsdelf*): New target.
    3379         (i[3456]86-*-netbsdaout*): New target.
    3380         (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs.
    3381         (i[3456]86-*-openbsd*): Likewise.
    3382 
    3383 2000-05-30  Andrew Cagney  <cagney@b1.cygnus.com>
    3384 
    3385         * trad-core.c: From hpux-core.c, include <dirent.h> or
    3386         <sys/ndir.h> when possible.
    3387 
    3388 2000-05-31  Nick Clifton  <nickc@cygnus.com>
    3389 
    3390         * opintl.h (_(String)): Explain why dgettext is used instead
    3391         of gettext.
    3392 
    3393 2000-05-31  Ulrich Drepper  <drepper@redhat.com>
    3394 
    3395         * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version
    3396         definitions.  We must not assume they are sorted in the file
    3397         according to their index numbers.
    3398 
    3399 2000-05-31  Alan Modra  <alan@linuxcare.com.au>
    3400 
    3401         * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field
    3402         selector for R_PARISC_PCREL17R.  R_PARISC_DIR17R and
    3403         R_PARISC_DIR17F are for absolute branches; Handle them as such.
    3404 
    3405 2000-05-30  Nick Clifton  <nickc@cygnus.com>
    3406 
    3407         * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB,
    3408         80960CA, 80960MC as valid machine names.
    3409 
    3410 2000-05-30  H.J. Lu  <hjl@gnu.org>
    3411 
    3412         * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the
    3413         visibility bits if the symbol is undefined. Correctly handle
    3414         weak undefined symbols with hidden and internal attributes.
    3415 
    3416         * elflink.h (elf_link_add_object_symbols): Always turn the
    3417         symbol into local if it has the hidden or internal attribute.
    3418 
    3419 2000-05-29  Philip Blundell  <philb@gnu.org>
    3420 
    3421         * ppcboot.c:  Add packed attribute if compiling with GCC.
    3422 
    3423 2000-05-29  Anatoly Vorobey  <mellon@pobox.com>
    3424 
    3425         * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal.
    3426 
    3427 2000-05-26  Michael Snyder  <msnyder@seadog.cygnus.com>
    3428 
    3429         * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus,
    3430         elfcore_grok_psinfo): Add code to allow debugging a 32-bit
    3431         corefile on a 64-bit (Sparc Solaris) host.  Also clean up
    3432         a few old comments.
    3433 
    3434 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
    3435 
    3436         * Makefile.am: Update dependencies with "make dep-am"
    3437         * Makefile.in: Regenerate.
    3438 
    3439         * sysdep.h (gettext, dgettext, dcgettext, textdomain,
    3440         bindtextdomain): Replace defines with those from intl/libgettext.h
    3441         to quieten gcc warnings.
    3442 
    3443 2000-05-26  Eli Zaretskii  <eliz@is.elta.co.il>
    3444 
    3445         * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH.
    3446 
    3447         * archive.c (normalize, bfd_bsd_truncate_arname,
    3448         bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support
    3449         file names with backslashes.
    3450 
    3451         * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file
    3452         before opening it.
    3453 
    3454         * sysdep.h: Include filenames.h.
    3455 
    3456 2000-05-26  Alan Modra  <alan@linuxcare.com.au>
    3457 
    3458         * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777.
    3459 
    3460 2000-05-26  Jakub Jelinek  <jakub@redhat.com>
    3461 
    3462         * elf64-sparc.c (sparc64_elf_relax_section): New.
    3463         (sparc64_elf_relocate_section): Optimize tail call into branch always
    3464         if possible.
    3465         * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
    3466         (elf32_sparc_relax_section): New.
    3467 
    3468 2000-05-26  Jakub Jelinek  <jakub@redhat.com>
    3469 
    3470         * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters.
    3471         Remove unusued variables.
    3472         (sparc64_elf_relocate_section): Change r_symndx type to unsigned long.
    3473         (sparc64_elf_merge_private_bfd_data): Fix shared library case from
    3474         previous fix, so that shared libs really don't influence targets
    3475         extension mask and memory model.
    3476 
    3477 2000-05-23  H.J. Lu  <hjl@gnu.org>
    3478 
    3479         * elf64-alpha.c (elf64_alpha_relocate_section): Check
    3480         h->root.other not h->other.
    3481         * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
    3482 
    3483         * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo.
    3484 
    3485 2000-05-23  H.J. Lu  <hjl@gnu.org>
    3486 
    3487         * elf32-i386.c (elf_i386_relocate_section): Don't allow the
    3488         undefined symbol with the non-default visibility attributes.
    3489         * elf-hppa.h (elf_hppa_relocate_section): Likewise.
    3490         * elf32-arm.h (elf32_arm_relocate_section): Likewise.
    3491         * elf32-i370.c (i370_elf_relocate_section): Likewise.
    3492         * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
    3493         * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
    3494         * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
    3495         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
    3496         * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
    3497         * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
    3498         * elf64-ia64.c (elf64_ia64_relocate_section): Likewise.
    3499         * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
    3500 
    3501 2000-05-22  Richard Henderson  <rth@cygnus.com>
    3502 
    3503         * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI,
    3504         PCREL22, PCREL64I.  Zero size of special relocs.
    3505         (elf64_ia64_reloc_type_lookup): Likewise.
    3506         (USE_BRL, oor_brl, oor_ip): New.
    3507         (elf64_ia64_relax_section): New.
    3508         (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I.
    3509         (elf64_ia64_install_value): Likewise, plus PCREL21BI.
    3510         (elf64_ia64_relocate_section): Likewise.
    3511         (bfd_elf64_bfd_relax_section): New.
    3512         * reloc.c (BFD_RELOC_IA64_PCREL21BI): New.
    3513         (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New.
    3514         * bfd-in2.h, libbfd.h: Regenerate.
    3515 
    3516 2000-05-22  Nick Clifton  <nickc@cygnus.com>
    3517 
    3518         * configure.in : Add peigen.lo to MIPS PE targets.
     7939        * config.bfd (sh*le-*-netbsdelf*): New target.
     7940        (sh*-*-netbsdelf*): New target.
     7941        * configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
     7942        (bfd_elf32_shnbsd_vec): New vector.
     7943        (bfd_elf32_shlnbsd_vec): New vector.
    35197944        * configure: Regenerate.
    3520 
    3521 2000-05-22  Momchil Velikov  <velco@fadata.bg>
    3522 
    3523         * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess
    3524         only if it is known for both input and output bfds. Separate
    3525         error message strings as in some languages, it may be necessary
    3526         to change more than one place in the string to change between
    3527         'big' and 'little'.
    3528 
    3529         * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline
    3530         endianess checks, call _bfd_generic_verify_endian_match() instead.
    3531 
    3532         * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise.
    3533 
    3534         * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise.
    3535 
    3536         * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify
    3537         endianess before checking bfd flavours.
    3538 
    3539 2000-05-22  H.J. Lu  <hjl@gnu.org>
    3540 
    3541         * elflink.h (elf_link_output_extsym): Clear the visibility
    3542         field for symbols not defined locally.
    3543 
    3544 2000-05-18  Alan Modra  <alan@linuxcare.com.au>
    3545 
    3546         * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16,
    3547         re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn.
    3548         (hppa_rebuild_insn): Mask immediate bits here instead.
    3549         * elf-hppa.h (elf_hppa_relocate_insn): Mask here too.
    3550 
    3551 2000-05-18  Momchil Velikov <velco@fadata.bg>
    3552 
    3553         * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting
    3554         relocs for an executable, ensure that they are virtual addresses.
    3555 
    3556 2000-05-18  Jeffrey A Law  (law@cygnus.com)
    3557 
    3558         * config.bfd (hppa*64*-*-hpux11*): New target triplet.
    3559 
    3560 2000-05-17  S. Bharadwaj Yadavalli  <sby@scrugs.lkg.dec.com>
    3561             Rick Gorton             <gorton@scrugs.lkg.dec.com>
    3562 
    3563         * elflink.h: Add emitrelocations support: when enabled, relocation
    3564         information and relocation sections are put into final output
    3565         executables.  If the emitrelocations flag is set, do the following:
    3566         (elf_bfd_final_link): Emit relocation sections.
    3567         (elf_link_input_bfd): Compute relocation section contents.
    3568         (elf_gc_sections): Don't clean relocation sections.
    3569 
    3570 2000-05-16  Catherine Moore  <clm@cygnus.com>
    3571 
    3572         * som.c (som_decode_symclass):  Recognize weak symbols.
    3573 
    3574 2000-05-16  Szabolcs Szakacsits <szaka@F-Secure.com>
    3575 
    3576         * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that
    3577         read idata section only from dataoff.
    3578         (pe_print_edata): Correctly check for valid eat_member.
    3579 
    3580 2000-05-16  J"orn Rennecke <amylaar@cygnus.co.uk>
    3581 
    3582         * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8.
    3583 
    3584 2000-05-14  Philip Blundell  <philb@gnu.org>
    3585 
    3586         * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets.
    3587 
    3588 2000-05-12  Alan Modra  <alan@linuxcare.com.au>
    3589 
    3590         * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec
    3591 
    3592         * peigen.c (pe_print_idata): Look for .idata section and print
    3593         info even if data directory has zero entries.  Read idata section
    3594         starting from dataoff, and adjust all data offsets to suit.  Cast
    3595         all bfd_vma vars to unsigned long before passing to fprintf.
    3596         * peigen.c (pe_print_edata): Similarly, look for .edata section
    3597         and print info even if data directory has zero entries.  Cast
    3598         all bfd_vma vars to unsigned long before passing to fprintf.
    3599 
    3600         From Szabolcs Szakacsits <szaka@F-Secure.com>
    3601         * peigen.c (pe_print_idata): Use bfd_section_size rather than data
    3602         directory size which may be bogus.
    3603         * peigen.c (pe_print_edata): Similarly.
    3604 
    3605 2000-05-09  Alan Modra  <alan@linuxcare.com.au>
    3606 
    3607         * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela
    3608         section is empty.
    3609         (copy_private_bfd_data): Allow for space possibly taken up by elf
    3610         headers when calculating segment physical address from lma.
    3611 
    3612 2000-05-08  Alan Modra  <alan@linuxcare.com.au>
    3613 
    3614         * versados.c (versados_scan): Init stringlen and pass_2_done.
    3615 
    3616         * trad-core.c (trad_unix_core_file_p): Return
    3617         bfd_error_wrong_format rather than bfd_error_file_truncated.
    3618 
    3619         * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to
    3620         add_data_entry.  DataDirectory virtual address is relative.
    3621         (pe_print_idata): Account for relative DataDirectory virtual
    3622         addresses.  Don't trash datasize inside POWERPC_LE_PE code.
    3623         (pe_print_edata): Similarly.
    3624 
    3625         From Szabolcs Szakacsits <szaka@F-Secure.com>
    3626         * peigen.c (dir_names): Add Delay Import Directory.
    3627         (pe_print_idata):  Always search for bfd section containing
    3628         idata address rather than looking up section name.  Print this
    3629         section name rather than .idata.
    3630         (pe_print_edata): Similarly.  Also print some fields as %08lx.
    3631         (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as
    3632         Win32Version.
    3633 
    3634 2000-05-05  Clinton Popetz  <cpopetz@cygnus.com>
    3635 
    3636         * xcoff.h: Rename to xcoff-target.h
    3637         * Makefile.am: Change all instances of xcoff.h to xcoff-target.h
    3638         * coff-rs6000.c: Ditto.
    3639         * coff64-rs6000.c: Ditto.
    3640         * coff-pmac.c: Ditto.
    3641         * Makefile.in: Regenerate.
    3642 
    3643 2000-05-05  Clinton Popetz  <cpopetz@cygnus.com>
    3644 
    3645         * coffcode.h (coff_set_arch_mach_hook, coff_set_flags):
    3646         Change U802TOC64MAGIC to U803XTOCMAGIC.
    3647 
    3648 2000-05-04  Michael Snyder  <msnyder@seadog.cygnus.com>
    3649 
    3650         * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1.
    3651         * bfd-in.h: Prototype bfd_elf_get_arch_size.
    3652         * bfd-in2.h: Prototype bfd_elf_get_arch_size.
    3653 
    3654 2000-05-04  Alan Modra  <alan@linuxcare.com.au>
    3655 
    3656         * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma.
    3657 
    3658 2000-05-03  Martin v. Löwis  <loewis@informatik.hu-berlin.de>
    3659 
    3660         * elflink.h (elf_link_add_object_symbols): Reset dynindx for
    3661         hidden and internal symbols.
    3662         (elf_fix_symbol_flags): Clear NEEDS_PLT for symbols with
    3663         visibility.
    3664         * elflink.c (_bfd_elf_link_record_dynamic_symbol): Do not
    3665         assign a PLT or GOT entry to symbols with hidden and
    3666         internal visibility.
    3667 
    3668 2000-05-03  Mark Elbrecht  <snowball3@bigfoot.com>
    3669 
    3670         * bfd/coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for
    3671         the .bss section.
    3672         * bfd/coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
    3673 
    3674 2000-05-02  H.J. Lu  <hjl@gnu.org>
    3675 
    3676         * elf.c (prep_headers): Use ELFOSABI_NONE instead of
    3677         ELFOSABI_SYSV.
    3678 
    3679 2000-05-02  Alan Modra  <alan@linuxcare.com.au>
    3680 
    3681         * targets.c (bfd_target_vector): Restore bfd_elf32_hppa_vec.
    3682         * Makefile.am (BFD32_BACKENDS): Restore elf32-hppa.lo.  Regenerate
    3683         dependencies.
    3684         * Makefile.in: Regenerate.
    3685 
    3686 2000-05-01  Jim Wilson  <wilson@cygnus.com>
    3687 
    3688         * Makefile.am (BFD32_BACKENDS): Add efi-app-ia32.lo.
    3689         (BFD32_BACKENDS_CFILES): Add efi-app-ia32.c.
    3690         (BFD64_BACKENDS): Delete coff-ia64.lo.  Add efi-app-ia64.lo.
    3691         (BFD64_BACKENDS_CFILES): Delete coff-ia64.c.  Add efi-app-ia64.c.
    3692         * Makefile.in: Rebuild.
    3693 
    3694 2000-05-02  Alan Modra  <alan@linuxcare.com.au>
    3695 
    3696         * config.bfd: Re-enable elf32-hppa.  It now compiles, even if it
    3697         doesn't work very well.
    3698 
    3699         * elf-hppa.h (elf_hppa_internal_shdr): Define.
    3700         (elf_hppa_fake_sections): hdr is elf_hppa_internal_shdr.
    3701         Set hdr->s_type to 1 if ARCH_SIZE == 32.
    3702         (_bfd_elf_hppa_gen_reloc_type): Add prototype.
    3703         (elf_hppa_info_to_howto): Likewise.
    3704         (elf_hppa_info_to_howto_rel): Likewise.
    3705         (elf_hppa_reloc_type_lookup): Likewise.
    3706         (elf_hppa_is_local_label_name): Likewise.
    3707         (elf_hppa_fake_sections): Likewise.
    3708         (elf_hppa_final_write_processing): Likewise.
    3709         (elf_hppa_howto_table): Fully initialise all entries.
    3710         (_bfd_elf_hppa_gen_reloc_type): Add ATTRIBUTE_UNUSED to args.
    3711         (elf_hppa_info_to_howto): Likewise.
    3712         (elf_hppa_info_to_howto_rel): Likewise.
    3713         (elf_hppa_reloc_type_lookup): Likewise.
    3714         (elf_hppa_final_write_processing, elf_hppa_add_symbol_hook,
    3715         elf_hppa_unmark_useless_dynamic_symbols,
    3716         elf_hppa_remark_useless_dynamic_symbols,
    3717         elf_hppa_record_segment_addrs, elf_hppa_final_link,
    3718         elf_hppa_relocate_section, elf_hppa_final_link_relocate,
    3719         elf_hppa_relocate_insn): Compile only if ARCH_SIZE == 64 until
    3720         elf32-hppa.c mess is cleaned up.
    3721         (elf_hppa_final_link_relocate): Make insn and r_type unsigned
    3722         int.  Delete r_field.  In case R_PARISC_PCREL21L, don't set
    3723         r_field then call hppa_field_adjust inline func with variable
    3724         r_field arg, instead call hppa_field_adjust with fixed arg.
    3725         In case R_PARISC_PCREL22F, don't set r_field.
    3726         (elf_hppa_relocate_insn): Change args and return type to unsigned
    3727         int.  Call re_assemble_* funcs to do the work.
    3728 
    3729         * elf32-hppa.c (hppa_elf_relocate_insn): Don't assume 32 bit when
    3730         sign extending.
    3731 
    3732         * libhppa.h (HPPA_R_CONSTANT): Don't assume 32 bit when sign
    3733         extending.
    3734         (sign_extend): Mask first before sign extending.
    3735         (low_sign_extend): Rewrite without condition expression.
    3736         (ones, dis_assemble_3, dis_assemble_12, dis_assemble_16,
    3737         dis_assemble_17, dis_assemble_21, dis_assemble_22): Delete.
    3738         (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a,
    3739         assemble_17, assemble_21, sign_unext, low_sign_unext): Return
    3740         result as function return value rather than through pointer arg.
    3741         Accept unsigned int args, and return unsigned int.
    3742         (re_assemble_3): New.  Combines function of dis_assemble_3 with
    3743         re-assembly of opcode and immediate.
    3744         (re_assemble_12): Likewise.
    3745         (re_assemble_16): Likewise.
    3746         (re_assemble_17): Likewise.
    3747         (re_assemble_21): Likewise.
    3748         (re_assemble_22): Likewise.
    3749         (hppa_field_adjust): Rewrite and document, paying attention to
    3750         size of types and signed/unsigned issues.
    3751         (get_opcode): Shift before masking.
    3752         (FDLW): Rename to FLDW.
    3753         (bfd_hppa_insn2fmt): Change arg to unsigned int.  Delete fmt.
    3754         (hppa_rebuild_insn): Change args and return value to unsigned
    3755         int.  Make use of re_assemble_*.  Correct case 11.
    3756 
    3757         * dep-in.sed: Handle ../opcodes/.
    3758         * Makefile.am (SOURCE_HFILES): Add elf-hppa.h, elf32-hppa.h,
    3759         elf64-hppa.h, hppa_stubs.h, xcoff.h.
    3760         (BFD32_BACKENDS_CFILES): Restore elf32-hppa.c.
    3761         Remove elf64-hppa.lo, cpu-ia64.lo, elf64-ia64.lo, elfarm-oabi.lo,
    3762         elfarm-nabi.lo dependencies outside of auto-dependency area.
    3763         Regenerate dependencies.
    3764         * Makefile.in: Regenerate.
    3765 
    3766         * configure.in (TRAD_HEADER): Test non-null before
    3767         AC_DEFINE_UNQUOTED.
     7945        * elf32-sh-nbsd.c: New file.
     7946        * targets.c: Update copyright years.
     7947        (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
     7948        bfd_elf32_shnbsd_vec.
     7949
     79502002-01-07  Aldy Hernandez  <aldyh@redhat.com>
     7951
     7952        * coff-rs6000.c (READ20): Use bfd_scan_vma.
     7953
     79542002-01-07  Geoffrey Keating  <geoffk@redhat.com>
     7955
     7956        * elflink.h (elf_link_input_bfd): Don't ask for the merged offset
     7957        of a symbol in a section that will be deleted.
     7958
     79592002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>
     7960
     7961        * po/es.po: New file: Spanish translation.
     7962        * configure.in (ALL_LINGUAS): Add es.
    37687963        * configure: Regenerate.
    37697964
    3770         * reloc.c: Fix mis-spelling in comment.
    3771 
    3772 2000-05-01  Alan Modra  <alan@linuxcare.com.au>
    3773 
    3774         * coff-sh.c (bfd_coff_small_swap_table): Fix Fri Apr 28 change.
    3775         * vms.c (vms_openr_next_archived_file): Return NULL.
    3776 
    3777 2000-04-28  Clinton Popetz  <cpopetz@cygnus.com>
    3778 
    3779         * coffcode.h Copy changes mistakenly done to libcoff.h in
    3780         4/24/2000 patch.
    3781 
    3782 2000-04-29  Andreas Jaeger  <aj@suse.de>
    3783 
    3784         * libbfd-in.h: Correctly check GCC version.
    3785         * bfd-in.h: Likewise.
    3786         * libhppa.h: Likewise.
     79652002-01-06  Steve Ellcey  <sje@cup.hp.com>
     7966
     7967        * elfxx-ia64.c (is_unwind_section_name): Add target vector as
     7968        argument so we can handle HP-UX specially.
     7969        (elfNN_ia64_hpux_vec): New for use in is_unwind_section_name.
     7970        (elfNN_hpux_backend_section_from_bfd_section): New for support
     7971        of SHN_IA_64_ANSI_COMMON.
     7972        (elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON.
     7973        (is_unwind_section_name): Add special HP-UX support.
     7974        (elfNN_ia64_section_from_shdr): Add support for more sections.
     7975        (elfNN_ia64_fake_sections): Modify is_unwind_section_name call and
     7976        add support for more sections.
     7977        (elfNN_ia64_additional_program_headers): Modify
     7978        is_unwind_section_name call.
     7979        (elfNN_ia64_modify_segment_map): Remove assumption that there is
     7980        only one unwind section in segment.
     7981
     79822002-01-06  Alan Modra  <amodra@bigpond.net.au>
     7983
     7984        * syms.c (_bfd_generic_make_empty_symbol): New function.
     7985        * libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as
     7986        _bfd_generic_make_empty_symbol.
    37877987        * libbfd.h: Regenerate.
    37887988        * bfd-in2.h: Regenerate.
    3789 
    3790 2000-04-28  Clinton Popetz  <cpopetz@cygnus.com>
    3791 
    3792         * Makefile.am (BFD64_BACKENDS, BFD64_BACKENDS_CFILES): Add
    3793         coffdu-rs6000.{lo,c}.
    3794         (coff-pmac.lo, coff-rs6000.lo, coff64-rs6000.lo): Add dependency
    3795         on xcoff.h
    3796         * Makefile.in: Regenerate.
    3797         * xcoff.h: New file.
    3798         * coff-pmac.c: Use xcoff.h instead of coff-rs6000.c.
    3799         * coff-rs6000.c: Move all declarations and defines that are
    3800         common to the xcoff backends into xcoff.h
    3801         * coff64-rs6000.c: Ditto,
    3802 
    3803 2000-04-28  Clinton Popetz  <cpopetz@cygnus.com>
    3804 
    3805         * coff-mips.c (mips_ecoff_backend_data):  Add initialization of
    3806         _bfd_coff_force_symnames in strings and
    3807         _bfd_coff_debug_string_prefix_length to their default values.
    3808         * coff-sh.c: (bfd_coff_small_swap_table): Ditto.
    3809 
    3810 2000-04-28  Clinton Popetz  <cpopetz@cygnus.com>
    3811 
    3812         * coff-alpha.c (alpha_ecoff_backend_data): Add initialization of
    3813         _bfd_coff_force_symnames in strings and
    3814         _bfd_coff_debug_string_prefix_length to their default values.
    3815 
    3816 2000-04-27  Alan Modra  <alan@linuxcare.com.au>
    3817 
    3818         * elf32-m68k.c (elf_m68k_gc_sweep_hook):  Return if dynobj NULL.
    3819         Check local_got_refcounts before dereferencing.
    3820 
    3821         * elf32-ppc.c (ppc_elf_relocate_section): Check splt != NULL
    3822         before deciding we don't need R_PPC_PLT32 relocation.
    3823         (ppc_elf_gc_sweep_hook): Check local_got_refcounts before
    3824         dereferencing.
    3825 
    3826         * elflink.h (elf_gc_common_finalize_got_offsets): Fix comment.
    3827 
    3828         * elf32-i386.c (elf_i386_check_relocs): Reference count .got and
    3829         .plt entries.
    3830         (elf_i386_gc_sweep_hook): Garbage collect .got and .plt entries.
    3831         (elf_i386_adjust_dynamic_symbol): Recognize unused .plt entries.
    3832         (elf_i386_relocate_section): Allow for .plt to go missing.
    3833         (elf_i386_finish_dynamic_symbol): Use same test to decide if we
    3834         can use a relative reloc for got as elf_i386_relocate_section.
    3835         (bfd_elf32_bfd_final_link): Define to use gc form of final link.
    3836 
    3837 2000-04-26  Clinton Popetz  <cpopetz@cygnus.com>
    3838 
    3839         * config.bfd: Remove extraneous bfd_powerpc_64_arch.
    3840 
    3841 2000-04-24  Clinton Popetz  <cpopetz@cygnus.com>
    3842 
    3843         * Makefile.am (coff64-rs6000.lo): New rule.
    3844         * Makefile.in: Regenerate.
    3845         * coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data,
    3846         xcoff_is_local_label_name, xcoff_rtype2howto,
    3847         xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p,
    3848         xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap,
    3849         xcoff_write_archive_contents): No longer static, and prefix with _bfd_.
    3850         (NO_COFF_SYMBOLS): Define.
    3851         (xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in,
    3852         xcoff64_swap_aux_out): New functions; handle xcoff symbol tables
    3853         internally.
    3854         (MINUS_ONE): New macro.
    3855         (xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS
    3856         relocation.
    3857         (coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in,
    3858         coff_SWAP_aux_out): Map to the new functions.
    3859         * coff64-rs6000.c: New file.
    3860         * libcoff.h (bfd_coff_backend_data): Add new fields
    3861         _bfd_coff_force_symnames_in_strings and
    3862         _bfd_coff_debug_string_prefix_length.
    3863         (bfd_coff_force_symnames_in_strings,
    3864         bfd_coff_debug_string_prefix_length): New macros for above fields.
    3865         * coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic.
    3866         Set machine to 620 for XCOFF64.  Use bfd_coff_swap_sym_in instead
    3867         of using coff_swap_sym_in directly.
    3868         (FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64.
    3869         (coff_set_flags) Set magic for XCOFF64.
    3870         (coff_compute_section_file_positions): Add symbol name length to
    3871         string section length if bfd_coff_debug_string_prefix_length is
    3872         true.
    3873         (coff_write_object_contents): Don't do reloc overflow for XCOFF64.
    3874         (coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of
    3875         using coff_swap_lineno_in directly.
    3876         (bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings
    3877         and _bfd_coff_debug_string_prefix_length fields.
    3878         * coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force
    3879         symbol names into strings table when
    3880         bfd_coff_force_symnames_in_strings is true.
    3881         * coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR,
    3882         SET_RELOC_VADDR): New macros.
    3883         (coff_swap_reloc_in, coff_swap_reloc_out): Use above macros.
    3884         (coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C
    3885         code.
    3886         (coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64
    3887         changes within RS6000COFF_C specific code.
    3888         (coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC,
    3889         MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO.
    3890         * reloc.c (bfd_perform_relocation, bfd_install_relocation):
    3891         Extend existing hack on target name.
    3892         * xcofflink.c (XCOFF_XVECP): Extend existing hack on
    3893         target name.
    3894         * coff-tic54x.c (ticof): Keep up to date with new fields
    3895         in bfd_coff_backend_data.
    3896         * config.bfd: Add bfd_powerpc_64_arch to targ_arch and define
    3897         targ_selvecs to include rs6000coff64_vec for rs6000.
    3898         * configure.in: Add rs6000coff64_vec case.
    3899         * cpu-powerpc.c: New bfd_arch_info_type.
    3900 
    3901 2000-04-24  Jeffrey A Law  (law@cygnus.com)
    3902 
    3903         * config.bfd: Only disable elf32-hppa vectors, not all of the
    3904         BSD and OSF configuration support.  Provide (disabled) clauses
    3905         for PA64 support.
    3906         * configure.in: Add clause for PA64 support.
    3907         * configure: Rebuilt.
    3908 
    3909         * targets.c (bfd_target_vector): Add bfd_elf64_hppa_vec.
    3910         (bfd_elf64_hppa_vec): Declare.
    3911 
    3912         * Makefile.am (BFD64_BACKENDS): Add elf64-hppa.lo
    3913         (BFD64_BACKENDS_CFILES): Add elf64-hppa.c
    3914         (elf64-hppa.lo): Add dependencies.
    3915         * Makefile.in: Rebuilt.
    3916 
    3917         * elf64-hppa.c, elf64-hppa.h: New files with PA64 support.
    3918 
    3919 2000-04-24  Jason Eckhardt  <jle@cygnus.com>
    3920 
    3921         * libhppa.h (dis_assemble_16): New function.
    3922         (pa_arch): Added pa20w element.
    3923 
    3924 2000-04-24  Ulrich Drepper  <drepper@cygnus.com>
    3925 
    3926         * elf-bfd.h: Add prototypes for bfd_elf32_write_relocs,
    3927         bfd_elf32_slurp_reloc_table, bfd_elf64_write_relocs, and
    3928         bfd_elf64_slurp_reloc_table.
    3929 
    3930         * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): New
    3931         definitions to get external names.
    3932         (elf_write_relocs): Renamed from write_relocs and make global.
    3933         (elf_slurp_reloc_table): Make global.
    3934         (_bfd_elf,size_info): Use elf_write_relocs instead of write_relocs.
    3935 
    3936         * archive.c (hpux_uid_gid_encode): New function.
    3937         (bfd_ar_hdr_from_filesystem): Use it if HPUX_LARGE_AR_IDS is
    3938         defined and the ID is greater than 99999.
    3939         (bfd_generic_stat_arch_elt): If HPUX_LARGE_AR_IDS is defined decode
    3940         special uid/gid fields into 32 bit values.
    3941 
    3942 2000-04-21  Matthew Green  <mrg@cygnus.com>
    3943 
    3944         * config.bfd: Add NetBSD/sparc64 support.
    3945 
    3946 Fri Apr 21 13:20:53 2000  Richard Henderson  <rth@cygnus.com>
    3947                           David Mosberger  <davidm@hpl.hp.com>
    3948                           Timothy Wall <twall@cygnus.com>
    3949                           Jim Wilson  <wilson@cygnus.com>
    3950 
    3951         * Makefile.am (ALL_MACHINES): Add cpu-ia64.lo.
    3952         (ALL_MACHINES_CFILES): Add cpu-ia64.c.
    3953         (BFD64_BACKENDS): Add elf64-ia64.lo.
    3954         (BFD64_BACKENDS_CFILES): Add elf64-ia64.c.
    3955         (cpu-ia64.lo, elf64-ia64.lo): New rules.
    3956         * Makefile.in: Rebuild.
    3957         * archures.c (enum bfd_architecture): Add bfd_arch_ia64.
    3958         (bfd_ia64_arch): Declare.
    3959         (bfd_archures_list): Add bfd_ia64_arch.
    3960         * bfd-in2.h: Rebuild.
    3961         * config.bfd: (ia64*-*-linux-gnu*, ia64*-*-elf*): New targets.
    3962         * configure: Rebuild.
    3963         * configure.host: (ia64-*-linux*): New host.
    3964         * configure.in (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec,
    3965         bfd_efi_app_ia64_vec, bfd_efi_app_ia64_vec): New vectors.
    3966         * elf.c (prep_headers): Add bfd_arch_ia64.
    3967         * libbfd.h: Rebuild.
    3968         * reloc.c: Add IA-64 relocations.
    3969         * targets.c (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec):
    3970         Declare.
    3971         (bfd_target_vect): Add bfd_elf64_ia64_little_vec.
    3972         * cpu-ia64-opc.c, cpu-ia64.c, elf64-ia64.c: New files.
    3973 
    3974 2000-04-21  Richard Henderson  <rth@cygnus.com>
    3975 
    3976         * elf32-d30v.c (bfd_elf_d30v_reloc): Don't modify section
    3977         contents when performing a partial link.
    3978         (bfd_elf_d30v_reloc_21): Likewise.
    3979 
    3980 2000-04-20  H.J. Lu  <hjl@gnu.org>
    3981 
    3982         * elf32-i386.c (elf_i386_relocate_section): Restrict 1998-12-10
    3983         patch to symbols defined by a shared object.
    3984         * elf32-ppc.c (ppc_elf_relocate_section): Similarly.
    3985 
    3986 2000-04-19  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
    3987 
    3988         K&R compiler fixes.
    3989         * dwarf2.c (concat_filename): Avoid string literal concatenation.
    3990         * ieee.c (ieee_get_symtab): Don't initialise union in struct.
    3991 
    3992 Mon Apr 17 19:14:36 2000  David Mosberger  <davidm@hpl.hp.com>
    3993 
    3994         * Makefile.am (BFD64_BACKENDS): Mention coff-ia64.lo.
    3995         (BFD64_BACKENDS_CFILES): Mention coff-ia64.c
    3996         (coff-ia64.lo): Add dependency.
    3997         * Makefile.in: Regenerate.
    3998         * coff-ia64.c: New file.
    3999         * efi-app-ia32.c: Ditto.
    4000         * efi-app-ia64.c: Ditto.
    4001         * coffcode.h (coff_set_arch_mach_hook): Handle IA64MAGIC.
    4002         (coff_set_flags): Ditto.
    4003         (coff_write_object_contents) [IA64]: Set magic number to ZMAGIC.
    4004         * config.bfd (i[3456]86-*-linux-gnu*): Mention bfd_efi_app_ia32_vec.
    4005         * configure.in (elf): Handle bfd_efi_app_ia32 and bfd_efi_app_ia64_vec.
     7989        * hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function.
     7990        (hppabsd_core_get_symtab_upper_bound): Don't define.
     7991        (hppabsd_core_get_symtab): Likewise.
     7992        (hppabsd_core_print_symbol): Likewise.
     7993        (hppabsd_core_get_symbol_info): Likewise.
     7994        (hppabsd_core_bfd_is_local_label_name): Likewise.
     7995        (hppabsd_core_get_lineno): Likewise.
     7996        (hppabsd_core_find_nearest_line): Likewise.
     7997        (hppabsd_core_bfd_make_debug_symbol): Likewise.
     7998        (hppabsd_core_read_minisymbols): Likewise.
     7999        (hppabsd_core_minisymbol_to_symbol): Likewise.
     8000        (hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).
     8001        Formatting fixes.
     8002        * hpux-core.c: Similarly.
     8003        * irix-core.c: Similarly.
     8004        * osf-core.c: Similarly.
     8005        * sco5-core.c: Similarly.
     8006        * binary.c (binary_make_empty_symbol): Remove function, define as
     8007        _bfd_generic_make_empty_symbol.
     8008        * ihex.c (ihex_make_empty_symbol): Likewise.
     8009        * mmo.c (mmo_make_empty_symbol): Likewise.
     8010        * ppcboot.c (ppcboot_make_empty_symbol): Likewise.
     8011        * srec.c (srec_make_empty_symbol): Likewise.
     8012        * versados.c (versados_make_empty_symbol): Likewise.
     8013        * vms.c (_bfd_vms_make_empty_symbol): Remove.
     8014        (vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol.
     8015        * vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol
     8016        rather than _bfd_vms_make_empty_symbol.
     8017        * vms-misc.c (new_symbol): Likewise.
     8018
     80192002-01-05  Alan Modra  <amodra@bigpond.net.au>
     8020
     8021        * section.c (bfd_section_init): Remove unnecessary initialisations.
     8022        (bfd_section_list_clear): New function.
     8023        (bfd_section_list_remove, bfd_section_list_insert): New macros.
     8024        (_bfd_strip_section_from_output): Use them.
     8025        * coffcode.h (coff_set_alignment_hook): Likewise.
     8026        * elf32-mips.c (_bfd_mips_elf_final_link): Likewise.
     8027        * elf64-mips.c (mips_elf64_final_link): Likewise.
     8028        * elf64-mmix.c (mmix_elf_final_link): Likewise.
     8029        * sunos.c (sunos_add_dynamic_symbols): Likewise.
     8030        * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
     8031        * bfd-in2.h: Regenerate.
     8032
     8033        * netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway
     8034        rather than doing our own section handling.  Clean up after errors
     8035        with bfd_release and bfd_section_list_clear.  Handle unexpected
     8036        flags.
     8037        * aoutf1.h (sunos4_core_file_p): Likewise.
     8038        * aix386-core.c (aix386_core_file_p): Likewise.
     8039        * cisco-core.c (cisco_core_file_validate): Likewise.
     8040        * ptrace-core.c (ptrace_unix_core_file_p): Likewise.
     8041        * trad-core.c (trad_unix_core_file_p): Likewise.
     8042
     8043        * hppabsd-core.c (hppabsd_core_core_file_p):  Clean up after errors
     8044        with bfd_release and bfd_section_list_clear.
     8045        * hpux-core.c (hpux_core_core_file_p): Likewise.
     8046        * irix-core.c (irix_core_core_file_p): Likewise.
     8047        * lynx-core.c (lynx_core_file_p): Likewise.
     8048        * osf-core.c (osf_core_core_file_p): Likewise.
     8049        * rs6000-core.c (rs6000coff_core_p): Likewise.
     8050        * sco5-core.c (sco5_core_file_p): Likewise.
     8051
     8052        * elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform
     8053        sign extension adjustments without conditionals.
     8054
     80552002-01-04  Jakub Jelinek  <jakub@redhat.com>
     8056
     8057        * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
     8058        CIE at .eh_frame start is removed due to no FDEs referencing it.
     8059
     80602002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>
     8061
     8062        * config.bfd (x86_64-*-netbsd*): New target.
     8063        * configure.in (x86_64-*-netbsd*): Set COREFILE
     8064        to netbsd-core.lo.
     8065        * configure: Regenerated.
     8066
     80672002-01-03  Tom Rix  <trix@redhat.com>
     8068
     8069        * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering
     8070        for recent bfd_make_section_anyway change.
     8071
     80722002-01-03  Nick Clifton  <nickc@cambridge.redhat.com>
     8073
     8074        * elf32-arm.h (elf32_arm_final_link_relocate): Handle
     8075        R_ARM_THM_PC11 reloc.
     8076
     80772002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>
     8078
     8079        * configure.in (LINGUAS): Add ja.
    40068080        * configure: Regenerate.
    4007         * libpei.h (GET_OPTHDR_IMAGE_BASE): New macro.
    4008         (PUT_OPTHDR_IMAGE_BASE): Ditto.
    4009         (GET_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto.
    4010         (PUT_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto.
    4011         (GET_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto.
    4012         (PUT_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto.
    4013         (GET_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto.
    4014         (PUT_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto.
    4015         (GET_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto.
    4016         (PUT_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto.
    4017         (GET_PDATA_ENTRY): Ditto.
    4018         * peigen.c (_bfd_pei_swap_aouthdr_in) [COFF_WITH_PEP64]: Don't read
    4019         data_start.  Use above macros to read fields that are 64 bit wide for
    4020         COFF_WITH_PEP64.  Don't truncate entry and text_start to 32 bits.
    4021         (_bfd_pei_swap_aouthdr_out) [PEI_FORCE_MINIMUM_ALIGNMENT]: Force
    4022         FileAlignment and SectionAlignment to minimum alignment if they
    4023         are zero.
    4024         (_bfd_pei_swap_aouthdr_out) [PEI_DEFAULT_TARGET_SUBSYSTEM]: Set
    4025         Subsystem to default PEI_DEFAULT_TARGET_SUBSYSTEM.
    4026         (_bfd_pei_swap_aouthdr_out) [COFF_WITH_PEP64]: Don't set data_start.
    4027         Use above macros to write fields that are 64 bit wide for
    4028         COFF_WITH_PEP64.
    4029         (pe_print_pdata): Set PDATA_ROW_SIZE to 3*8 for COFF_WITH_PEP64,
    4030         5*4 otherwise.  This should be right for IA-32 and IA-64, but may
    4031         be wrong for platforms.  Use PDATA_ROW_SIZE instead of hardcoded
    4032         value of 20 bytes.  Modify printing for COFF_WITH_PEP64 to print
    4033         begin address, end address, and unwind info address only.  Use
    4034         GET_PDATA_ENTRY() to read .pdata entries.  Use fprintf_vma() to
    4035         print addresses.
    4036         (tbl): Add SECTION, REL32, RESERVED1, MIPS_JMPADDR16, DIR64, and
    4037         HIGH3ADJ relocation names.
    4038         (_bfd_pe_print_private_bfd_data): Print Subsystem name in legible form.
    4039         * targets.c: Declare bfd_efi_app_ia32_vec and
    4040         bfd_efi_app_ia64_vec.
    4041         (bfd_target_vector): Mention bfd_efi_app_ia32_vec and
    4042         bfd_efi_app_ia64_vec.
    4043 
    4044 2000-04-17  Timothy Wall  <twall@cygnus.com>
    4045 
    4046         * bfd-in2.h: Add prototypes for tic54x load page access.
    4047         * bfd-in.h: Regenerate.
    4048         * coff-tic54x.c: Add load page functions; allow bfd_arch_unknown
    4049         in customized _set_arch_mach function.
    4050         * coffcode.h (coff_set_alignment_hook): Set section load page if
    4051         the appropriate macro is defined.
    4052         (write_object_contents): Read section load page.
    4053 
    4054 2000-04-13  Alan Modra  <alan@linuxcare.com.au>
    4055 
    4056         * elf32-hppa.h: Update copyright date.
    4057 
    4058         * elf32-fr30.c (fr30_elf_i20_reloc): Don't use U suffix.
    4059         * elf32-mips.c (_bfd_mips_elf_relocate_section): And here.
    4060 
    4061         * elf32-d30v.c (MAX32): Don't use LL suffix.
    4062         (MIN32): Define in terms of MAX32.
    4063         (bfd_elf_d30v_reloc): Make relocation a bfd_signed_vma.
    4064 
    4065         * coff-a29k.c (SIGN_EXTEND_HWORD): Replace with more concise
    4066         expression.
    4067 
    4068         * peicode.h (pe_ILF_build_a_bfd): Remove UL from hex constants.
    4069 
    4070 2000-04-12  Alan Modra  <alan@linuxcare.com.au>
    4071 
    4072         * dep-in.sed: Match space before file name, not after.
    4073         * Makefile.am: Regenerate dependencies.
    4074         * Makefile.in: Regenerate.
    4075 
    4076         * reloc.c (_bfd_relocate_contents): In complain_overflow_bitfield
    4077         case, allow address wrap-around stupidly removed 2000-03-17.  Sign
    4078         extend without an if statement.
    4079 
    4080 2000-04-11  Alan Modra  <alan@linuxcare.com.au>
    4081 
    4082         * coff-mips.c (mips_gprel_reloc): Test for 16 bit range using
    4083         signed quantites.
    4084         * elf32-mips.c (gprel16_with_gp): Likewise.
    4085         * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Test range
    4086         here using -0x40000, not (int)0xfffc0000.
    4087         (elf32_hppa_size_of_stub): Likewise.
    4088 
    4089 2000-04-11  Timothy Wall  <twall@cygnus.com>
    4090 
    4091         * coff-tic54x.c: Now builds with all targets.
    4092         * Makefile.am: Add coff/tic54x.h to coff-tic54x.o dependencies.
    4093         * Makefile.in: Regenerate.
    4094         * coffcode.h (coff_set_arch_mach_hook): Eliminate warning on
    4095         unitialized variable.
    4096 
    4097 Fri Apr  7 15:56:57 2000  Andrew Cagney  <cagney@b1.cygnus.com>
    4098 
    4099         * configure.in (WARN_CFLAGS): Set to -W -Wall by default.  Add
    4100         --enable-build-warnings option.
    4101         * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
    4102         * Makefile.in, configure: Re-generate.
    4103 
    4104 2000-04-07  Nick Clifton  <nickc@cygnus.com>
    4105 
    4106         * reloc.c: Add BFD_RELOC_ARM_PCREL_BLX and
    4107         BFD_RELOC_THUMB_PCREL_BLX.
    4108 
    4109         * elf32-arm.h (elf32_arm_final_link_relocate): Handle
    4110         R_ARM_XPC25 and R_ARM_THM_PC22.
    4111 
    4112         * elfarm-nabi.c (elf32_arm_howto_): Fix definitions of
    4113         R_ARM_XPC25 and R_ARM_THM_XPC22.
    4114         (elf32_arm_reloc_map): Make BFD_RELOC_{ARM|THUMB}_PCREL_BLX to
    4115         R_ARM_[XPC25|THM_XPC22].
    4116 
    4117         * elfarm-oabi.c: Define OLD_ARM_ABI and change include from
    4118         elf/arm-oabi.h to elf/arm.h
    4119 
    4120         * Makefile.am: Fix dependency for elfarm-oabi.c
    4121         * Makefile.in: Regenerate.
    4122 
    4123         * bfd-in2.h: Regenerate.
    4124         * libbfd.h: Regenerate.
    4125 
    4126 2000-04-06  Michael Snyder  <msnyder@seadog.cygnus.com>
    4127 
    4128         * elfcore.h (elf_core_file_p): preserve value of tdata at entry,
    4129         and restore it on failure.  Release newly allocated tdata on
    4130         failure.
    4131 
    4132 Fri Apr  7 11:33:47 2000  Jim Wilson  <wilson@cygnus.com>
    4133 
    4134         * dwarf2.c (struct dwarf2_debug): New field dwarf_line_size.
    4135         (decode_line_info): Set it.  Report error if unit->line_offset is
    4136         equal to or larger than it.
    4137 
    4138 2000-04-07  Timothy Wall  <twall@cygnus.com>
    4139 
    4140         * targets.c: Added vecs for tic54x.
    4141         * reloc.c: Added relocs for tic54x.
    4142         * libbfd.h: Regenerated.
    4143         * configure: Add TI COFF vecs for tic54x.
    4144         * configure.in: Ditto.
    4145         * config.bfd (targ_cpu): Recognize new tic54x target.
    4146         * coffcode.h (coff_slurp_symbol_table): Additions for TI COFF handling.
    4147         * bfd-in2.h: Add tic54x target and relocations.
    4148         * Makefile.am, Makefile.in: Add tic54x target.
    4149         * archures.c (bfd_archures_list): Add tic54x target.
    4150         * coff-tic54x.c: New.
    4151         * cpu-tic54x.c: New.
    4152 
    4153 2000-04-06  Michael Snyder  <msnyder@seadog.cygnus.com>
    4154 
    4155         * elfcore.h (elf_core_file_p): call backend_object_p which
    4156         thereby gets an opportunity to update the arch/machine type.
    4157 
    4158 2000-04-06  Timothy Wall  <twall@cygnus.com>
    4159 
    4160         * coffcode.h (coff_slurp_symbol_table): Handle C_STATLAB storage
    4161         class.  Handle SEC_CLINK and SEC_BLOCK flags.
    4162         * section.c: Add SEC_CLINK and SEC_BLOCK flags.
    4163         * bfd-in2.h: Add SEC_CLINK and SEC_BLOCK flags.
    4164 
    4165 2000-04-06  Nick Clifton  <nickc@cygnus.com>
    4166 
    4167         * elf32-arm.h (elf32_arm_set_private_flags): Only check for
    4168         EF_INTERWORK if this is an unknown EABI.
    4169         (elf32_arm_merge_private_bfd_data): Check EABI version
    4170         numbers.  Only check EF_xxx flags if the EABI version number
    4171         is unknown.
    4172         (elf32_arm_check_private_bfd_data): Only check EF_xxx flags
    4173         if the EABI version number is unknown.
    4174         (elf32_arm_print_private_bfd_data): Only decode EF_xxx flags
    4175         if the EABI version number is unknown.
    4176 
    4177 Wed Apr  5 22:04:20 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
    4178 
    4179         * reloc.c (_bfd_relocate_contents): Add BFD_RELOC_SH_LOOP_START and
    4180         BFD_RELOC_SH_LOOP_END.
    4181         * elf32-sh.c (sh_elf_howto_tab): Change special_func to
    4182         sh_elf_ignore_reloc for all entries that sh_elf_reloc used to ignore.
    4183         Add entries for R_SH_LOOP_START and R_SH_LOOP_END.
    4184         (sh_elf_reloc_loop): New function.
    4185         (sh_elf_reloc): No need to test for always-to-be-ignored relocs
    4186         any more.
    4187         (sh_rel): Add entries for BFD_RELOC_SH_LOOP_{START,END}.
    4188         (sh_elf_relocate_section): Handle BFD_RELOC_SH_LOOP_{START,END}.
    4189         * bfd-in2.h, libbfd.h: Regenerate.
    4190 
    4191 2000-04-04  Alan Modra  <alan@linuxcare.com.au>
    4192 
    4193         * po/bfd.pot: Regenerate.
    4194 
    4195         * Makefile.am: Remove extraneous mkdep comment.
    4196         (MKDEP): Use gcc -MM rather than mkdep.
    4197         (DEP): Quote when passing vars to sub-make.  Add warning
    4198         message to end.
    4199         (DEP1): Rewrite for "gcc -MM".
    4200         (CLEANFILES): Add DEP2.
    4201         Update dependencies.
    4202         * Makefile.in: Regenerate.
    4203 
    4204 2000-04-03  Kevin Buettner  <kevinb@redhat.com>
    4205 
    4206         * configure.in: Added corefile support for AIX 4.3.  In particular,
    4207         AIX_CORE_DUMPX_CORE will be defined in addition to AIX_CORE when
    4208         compiling rs6000-core.c.
    4209         * configure: Regenerated.
    4210 
    4211 2000-04-03  H.J. Lu  <hjl@gnu.org>
    4212 
    4213         * cache.c (bfd_open_file): Unlink the output file only if
    4214         it has non-zero size.
    4215 
    4216 2000-04-01  Ken Block USG  <block@zk3.dec.com>
    4217 
    4218         * elf64-alpha.c (elf64_alpha_relocate_section): Don't emit
    4219         relative relocations for non-loaded sections in shared objects.
    4220         (elf64_alpha_check_relocs): Similarly.
    4221 
    4222 Mon Apr  3 13:37:15 2000  Hans-Peter Nilsson  <hp@axis.com>
    4223 
    4224         * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and
    4225         BFD_RELOC_16 to switch for extended relocs.
    4226         (MY_swap_ext_reloc_in): New.
    4227         (MY_swap_ext_reloc_out): New.
    4228         (NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather
    4229         than NAME(aout,swap_ext_reloc_in) for extended relocs.
    4230         (NAME(aout,squirt_out_relocs)): Similarly use
    4231         MY_swap_ext_reloc_out.
    4232         (aout_link_reloc_link_order): Use MY_put_ext_reloc if defined.
    4233 
    4234 2000-04-03  Kazu Hirata  <kazu@hxi.com>
    4235 
    4236         * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to
    4237         the R_PCRWORD_B case.
    4238 
    4239 2000-03-31  Thomas de Lellis  <tdel@wrs.com>
    4240 
    4241         * srec.c : Set CHUNK size to 16 bytes to prevent download failures
    4242         on some targets.
    4243         * ihex.c : Ditto.
    4244 
    4245 Wed Mar 30 15:28:00 2000  Donald Lindsay  <dlindsay@cygnus.com>
    4246 
    4247         * elf32-m32r.c (m32r_elf_generic_reloc): new function.  All
    4248         HOWTO references to bfd_elf_generic_reloc, that have
    4249         partial_inplace == true, now use the new function.  The function
    4250         is based on the recent rewrite of m32r_elf_lo16_reloc(), and
    4251         extends its fixes to the R_M32R_{16,24,32} relocs.
    4252         The new logic in m32r_elf_lo16_reloc() has been removed, and
    4253         it instead calls the new routine to obtain that functionality.
    4254 
    4255 2000-03-27  Alan Modra  <alan@linuxcare.com.au>
    4256 
    4257         * elf32-avr.c (elf32_avr_gc_mark_hook, elf32_avr_gc_sweep_hook,
    4258         elf32_avr_check_relocs, avr_final_link_relocate,
    4259         elf32_avr_relocate_section, bfd_elf_avr_final_write_processing,
    4260         elf32_avr_object_p): Add prototypes.
    4261         (elf32_avr_gc_mark_hook): Add default for h->root.type.
    4262         (bfd_elf_avr_final_write_processing): Make static.
    4263 
    4264 2000-03-27  Denis Chertykov  <denisc@overta.ru>
    4265 
    4266         * cpu-avr.c: New file.  BFD support routines for AVR architecture.
    4267         * archures.c (bfd_architecture): Add AVR architecture.
    4268         (bfd_archures_list): Add reference to AVR architecture info.
    4269         * elf.c (prep_headers): Handle bfd_arch_avr.
    4270         * reloc.c: Add various AVR relocation enums.
    4271         * targets.c (bfd_elf32_avr_vec): Declare and add to target vector
    4272         list.
    4273         * Makefile.am: Add support for AVR elf.
    4274         * configure.in: Likewise.
    4275         * config.bfd: Likewise.
    4276         * Makefile.in: Regenerate.
    4277         * configure: This too.
    4278         * bfd-in2.h: And this.
    4279         * libbfd.h: And this.
    4280 
    4281 2000-03-24  H.J. Lu  <hjl@gnu.org>
    4282 
    4283         * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Add prototype.
    4284         (elf64_alpha_find_reloc_at_ofs): Likewise.
    4285 
    4286 2000-03-17  Alan Modra  <alan@linuxcare.com.au>
    4287 
    4288         * reloc.c (bfd_check_overflow): In case complain_overflow_bitfield,
    4289         flag an overflow if the bitfield is outside -2**n to 2**n-1.  The
    4290         allowable range used to be -2**(n-1) to 2**n-1.
    4291         * reloc.c (_bfd_relocate_contents): Same here.  Also replace
    4292         "boolean overflow" with "bfd_reloc_status_type flag".
    4293 
    4294 2000-03-14  Doug Evans  <dje@casey.transmeta.com>
    4295 
    4296         * elf32-m32r.c (m32r_elf_lo16_reloc): Rewrite.
    4297 
    4298 2000-03-14  Kazu Hirata  <kazu@hxi.com>
    4299 
    4300         * reloc16.c (bfd_coff_reloc16_relax_section): Count the total number
    4301         of shrinks properly, including the last reloc.
    4302 
    4303 2000-03-13  Kazu Hirata  <kazu@hxi.com>
    4304 
    4305         * coff-h8300.c (h8300_reloc16_extra_cases): Fix the sanity
    4306         check for R_MOVL2.
    4307 
    4308 2000-03-11  Alan Modra  <alan@linuxcare.com.au>
    4309 
    4310         * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on
    4311         a format mismatch rather than an "error" from bfd_read such as
    4312         bfd_error_file_truncated.
    4313 
    4314 2000-03-10  Geoff Keating  <geoffk@cygnus.com>
    4315 
    4316         * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper
    4317         sign-extension and big-endian compensation for
    4318         R_MIPS_64 even in ld -r.
    4319 
    4320 2000-03-10  Geoffrey Keating  <geoffk@cygnus.com>
    4321 
    4322         * elf32-mips.c (mips_elf_next_relocation): Rename from
    4323         mips_elf_next_lo16_relocation, and generalize to look
    4324         for any relocation type.
    4325         (elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset.
    4326         (elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16.
    4327         (elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16.
    4328         (elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2.
    4329         (elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64.
    4330         (elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32.
    4331         (bfd_elf32_bfd_reloc_type_lookup): Add new relocs.
    4332         (mips_rtype_to_howto): Likewise.
    4333         (mips_elf_calculate_relocation): Handle new relocs.
    4334         (_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs
    4335         are paired.  The addend for R_MIPS_GNU_REL16_S2
    4336         is shifted right two bits.
    4337 
    4338 2000-03-10  Alan Modra  <alan@linuxcare.com.au>
    4339 
    4340         * reloc.c (bfd_perform_relocation): Undo emacs formatting of
    4341         comment, and ensure it doesn't happen again.
    4342         (bfd_install_relocation): Same here.
    4343         (_bfd_relocate_contents): Don't bother assigning unused signmask
    4344         shift result.  Fix typos in comments.
    4345         Remove trailing whitespace throughout file.
    4346 
    4347 2000-03-07  Doug Evans  <dje@casey.transmeta.com>
    4348 
    4349         * reloc.c (reloc_howto_struct): Fix partial_inplace comment.
    4350         * bfd-in2.h: Rebuild.
    4351 
    4352 2000-03-06  Nick Clifton  <nickc@cygnus.com>
    4353 
    4354         * peicode.h (struct pe_ILF_vars): Add sym_ptr_table and
    4355         sym_ptr_ptr fields.
    4356         (SIZEOF_ILF_SYM_PTR_TABLE): Define.
    4357         (SIZEOF_ILF_STRINGS): Redefine.
    4358         (pe_ILF_make_a_symbol-reloc): New function.  Creates a symbol
    4359         relative reloc, as opposed to a section relative reloc.
    4360         (pe_ILF_make_a_symbol): Set the class of local symbols to C_STAT
    4361         not C_LABEL.
    4362         Add length of symbol's prefix to string pointer.
    4363         Store a pointer to the symbol in the symbol pointer table.
    4364         (pe_ILF_build_a_bfd): Do not build .idata$2 or .idata$7.
    4365         Initialise the symbol pointer table.
    4366         Store the hint in the Hint/Name table.
    4367         Make the jump reloc be symbol realtive, not section relative.
    4368         Create an import symbol for imported code.
    4369 
    4370 2000-03-06  Catherine Moore  <clm@cygnus.com>
    4371 
    4372         * elf.c (swap_out_syms):  Check for null type_ptr.
    4373 
    4374 2000-03-01  Hans-Peter Nilsson  <hp@axis.com>
    4375 
    4376         * aout-target.h (MY(write_object_contents)): Remove unused
    4377         and unusable "#if CHOOSE_RELOC_SIZE".
    4378         * pc532-mach.c (MY(write_object_contents)): Ditto.
    4379         * netbsd.h (MY(write_object_contents)): Ditto.
    4380         * hp300hpux.c (MY(write_object_contents)): Ditto.
    4381         * freebsd.h (MY(write_object_contents)): Ditto.
    4382         * aout-tic30.c (tic30_aout_write_object_contents): Ditto.
    4383 
    4384 2000-02-29  H.J. Lu  <hjl@gnu.org>
    4385 
    4386         * peicode.h (jtab): Make it static.
    4387 
    4388         * coff-sh.c (sh_align_load_span): Declared if COFF_WITH_PE is
    4389         defined and COFF_IMAGE_WITH_PE is not defined.
    4390         (_bfd_sh_align_load_span): Defined as sh_align_load_span if
    4391         COFF_WITH_PE is defined and COFF_IMAGE_WITH_PE is not defined.
    4392 
    4393 2000-03-01  Nick Clifton  <nickc@cygnus.com>
    4394 
    4395         * coff-arm.c (bfd_arm_process_before_allocation): Make
    4396         'symndx' signed to prevent compile time warning.
    4397 
    4398         * coff-mcore.c: Remove unused prototype for pe_object_p.
    4399 
    4400         * coff-sh.c: Add "#ifndef COFF_IMAGE_WITH_PE" around static
    4401         functions that are not used when COFF_IMAGE_WITH_PE is
    4402         defined.
    4403         (struct sh_opcode): Change type of 'flags' field to unsigned
    4404         long so that it can hold the USESAS flag.
    4405 
    4406         * coffcode.h (styp_to_sec_flags): Initialise 'target_name'.
    4407 
    4408         * elf-m10300.c (mn10300_elf_relax_section): Initialise
    4409         'sym_sec'.
    4410 
    4411         * elf32-i370.c: Add ATTRIBUTE_UNUSED to unused function
    4412         parameters.
    4413         Remove unusued variables and code.
    4414         (elf_backend_add_symbol_hook): Fix prototype.
    4415 
    4416         * elf32-m68k.c (elf_m68k_gc_sweep_hook): Initialise 'sgot' and
    4417         'srelgot'.
    4418 
    4419         * elf32-mcore.c (mcore_elf_relocate_section): Initialise
    4420         'oldinst'.
    4421 
    4422         * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function
    4423         parameters.
    4424         Remove unusued variables and code.
    4425         (elf_backend_add_symbol_hook): Fix prototype.
    4426 
    4427         * elf32-sh.c (sh_elf_set_mach_from_flags): Use 'flags'.
    4428 
    4429         * elflink.h (elf_bfd_link_add_symbols): Add ATTRIBUTE_UNUSED
    4430         to unused function parameter.
    4431 
    4432         * pe-mips.c: Add ATTRIBUTE_UNUSED to unused function
    4433         parameters.
    4434         Use EMPTY_HOWTO to initialise empty howto slots.
    4435         Remove unused variables.
    4436 
    4437         * peicode.h (pe_ILF_build_a_bfd): Initialise id6.
    4438 
    4439 2000-03-01  H.J. Lu  <hjl@gnu.org>
    4440 
    4441         * aoutx.h (aout_link_input_section_std): Pass "true" to
    4442         the undefined_symbol callback.
    4443         (aout_link_input_section_ext): Likewise.
    4444         * bout.c (get_value): Likewise.
    4445         * coff-a29k.c (coff_a29k_relocate_section): Likewise.
    4446         * coff-alpha.c (alpha_ecoff_get_relocated_section_conten):
    4447         Likewise.
    4448         (alpha_relocate_section): Likewise.
    4449         * coff-arm.c (coff_arm_relocate_section): Likewise.
    4450         * coff-i960.c (coff_i960_relocate_section): Likewise.
    4451         * coff-mcore.c (coff_mcore_relocate_section): Likewise.
    4452         * coff-mips.c (mips_relocate_section): Likewise.
    4453         * coff-ppc.c (coff_ppc_relocate_section): Likewise.
    4454         * coff-sh.c (sh_relocate_section): Likewise.
    4455         * coff-tic80.c (coff_tic80_relocate_section): Likewise.
    4456         * cofflink.c (_bfd_coff_generic_relocate_section): Likewise.
    4457         * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
    4458         * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
    4459         * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
    4460         * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
    4461         * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
    4462         * elf32-i370.c (i370_elf_relocate_section): Likewise.
    4463         * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
    4464         * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
    4465         * elf32-sh.c (sh_elf_relocate_section): Likewise.
    4466         * elf32-v850.c (v850_elf_relocate_section): Likewise.
    4467         * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise.
    4468         * elflink.h (elf_link_output_extsym): Likewise.
    4469         * pe-mips.c (coff_pe_mips_relocate_section): Likewise.
    4470         * reloc.c (bfd_generic_get_relocated_section_conten): Likewise.
    4471         * reloc16.c (_bfd_ppc_xcoff_relocate_section): Likewise.
    4472 
    4473         * elf-hppa.h (elf_hppa_relocate_section): Pass "false" to the
    4474         undefined_symbol callback when building shared library with
    4475         -Bsymbolic and undefined symbols are allowed. Otherwise, pass
    4476         "true".
    4477         * elf32-arm.h (elf32_arm_relocate_section): Likewise.
    4478         * elf32-i386.c (elf_i386_relocate_section): Likewise.
    4479         * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
    4480         * elf32-mips.c (mips_elf_calculate_relocation): Likewise.
    4481         (elf32_mips_get_relocated_section_content): Likewise.
    4482         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
    4483         * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
    4484         * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
    4485         * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
    4486 
    4487 2000-02-28  Nick Clifton  <nickc@cygnus.com>
    4488 
    4489         * Makefile.am: Add rules to build pe[i]-{sh|mips}.lo objects.
    4490         * Makefile.in: Regenerate.
    4491 
    4492         * configure.in: Add support for mips and sh pe vectors.
    4493         * configure: regenerate.
    4494 
    4495         * config.bfd: Add support for arm-wince, mips-pe and sh-pe
    4496         targets.
    4497 
    4498         * targets.c: Add mips and sh pe vectors.
    4499 
    4500         * libpei.h (coff_final_link_postscript): Only define if not
    4501         already defined.
    4502 
    4503         * coffcode.h: Add support for WinCE magic numbers.
    4504 
    4505         * peigen.c (pe_print_reloc): Update comment and rearrange
    4506         appending of newline character.
    4507 
    4508         * peicode.h: Add support for Image Library Format.
    4509         (pe_ILF_vars): Structure containing data used by ILF code.
    4510         (pe_ILF_make_a_section): New function.  Create a section based
    4511         on ILF data.
    4512         (pe_ILF_make_a_reloc): New function.  Create a reloc based on
    4513         ILF data.
    4514         (pe_ILF_make_a_symbol): New function.  Create a symbol based
    4515         on ILF data.
    4516         (pe_ILF_save_relocs): New function.  Store the relocs created
    4517         by pe_ILF_make_a_reloc in a section.
    4518         (pe_ILF_build_a_bfd): New function.  Create a BFD describing
    4519         an ILF object.
    4520         (pe_ILF_object_p): New function.  Return a bfd_target pointer
    4521         for an ILF object.
    4522         (pe_bfd_object_p): If an ILF object is detected call
    4523         pe_ILF_object_p on it.
    4524 
    4525         * coff-arm.c: Add support for WinCE relocs which are different
    4526         from normal ARM COFF relocs.
    4527         * pe-arm.c: Unset TARGET_UNDERSCORE for a WinCE target.
    4528 
    4529         * coff-sh.c: Add support for sh-pe target.
    4530         * pe-sh.c: New file.  Support code for sh-pe target.
    4531         * pei-sh.c: New file.  Support code for sh-pe target.
    4532 
    4533         * pe-mips.c: New file.  Support code for mips-pe target.
    4534         * pei-mips.c: New file.  Support code for mips-pe target.
    4535 
    4536 2000-02-27  Jakub Jelinek  <jakub@redhat.com>
    4537 
    4538         * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Don't bump
    4539         architecture if the object causing the bump is dynamic.
    4540         * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): Likewise,
    4541         and also don't it for memory ordering.
    4542         (sparc64_elf_write_relocs): Take src_rela out of the loop.
    4543 
    4544 2000-02-27  Ian Lance Taylor  <ian@zembu.com>
    4545 
    4546         * dwarf2.c (read_abbrevs): Use _raw_size directly rather than
    4547         calling bfd_get_section_size_before_reloc.
    4548         (decode_line_info): Likewise.
    4549         (_bfd_dwarf2_find_nearest_line): Likewise.
    4550 
    4551 2000-02-27  Eli Zaretskii  <eliz@is.elta.co.il>
    4552 
    4553         * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the
    4554         name of the libtool directory.
    4555         * Makefile.in: Rebuild.
    4556 
    4557 Fri Feb 25 18:39:26 2000  Rodney Brown (RodneyBrown@pmsc.com)
    4558 
    4559         * som.c (SOM_HOWTO): Define.
    4560         (som_hppa_howto_table): Use it.
    4561 
    4562 2000-02-25  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
    4563 
    4564         * config.bfd: Enable 64 bit support for GNU/Linux/sparc.
    4565 
    4566         * config.bfd: Enable 64 bit support for Solaris7+/sparc.
    4567 
    4568 2000-02-24  Catherine Moore  <clm@cygnus.com>
    4569 
    4570         * som.c (som_misc_symbol_info):  Add field
    4571         secondary_def.
    4572         (som_bfd_derive_misc_symbol_info):  Initialize
    4573         secondary_def.
    4574         (som_build_and_write_symbol_table): Keep track
    4575         of secondary_def field.
    4576         (som_slurp_symbol_table): Set BSF_WEAK symbol flag
    4577         if secondary_def field is set.
    4578         (som_bfd_ar_write_symbol_stuff): Initialize
    4579         secondary_def.
    4580 
    4581 2000-02-23  Stephane Carrez  <stcarrez@worldnet.fr>
    4582 
    4583         * dwarf2.c (read_address): Read 16-bits addresses.
    4584         (parse_comp_unit): Accept addr_size == 2.
    4585 
    4586 2000-02-23  Alan Modra  <alan@spri.levels.unisa.edu.au>
    4587 
    4588         * bfd-in.h: Update copyright date.
    4589 
    4590 2000-02-23  Linas Vepstas <linas@linas.org>
    4591 
    4592         * cpu-i370.c: New file.
    4593         * elf32-i370.c:  New file.
    4594         * archures.c (enum bfd_architecture): Add bfd_arch_i370.
    4595         (bfd_i370_arch): New.
    4596         (bfd_archures_list): Add bfd_i370_arch.
    4597         * elf.c (prep_headers): Add bfd_arch_i370.
    4598         * Makefile.am: Add support for IBM 370 elf.
    4599         * config.bfd: Likewise.
    4600         * configure.in: Likewise.
    4601         * libbfd.h (bfd_reloc_code_real_names): Likewise.
    4602         * reloc.c (bfd_reloc_code_type): Likewise.
    4603         * targets.c: Likewise.
    4604 
    4605         * Makefile.in: Regenerate.
    4606         * configure: Regenerate.
    4607         * bfd-in2.h: Regenerate.
    4608 
    4609 2000-02-22  Ian Lance Taylor  <ian@zembu.com>
    4610 
    4611         * elf32-i386.c (elf_i386_info_to_howto_rel): Give a warning for
    4612         invalid relocation types, and change them to R_386_NONE.
    4613 
    4614 2000-02-22  H.J. Lu  <hjl@gnu.org>
    4615 
    4616         * elflink.h (elf_link_add_object_symbols): If a version symbol is
    4617         not defined, don't add a second ELF_VER_CHR.
    4618 
    4619         * elflink.h (elf_bfd_final_link): Call output_extsym for global
    4620         symbols converted to local symbols even when stripping all
    4621         symbols.
    4622         (elf_link_output_extsym): Process global symbols converted to
    4623         local symbols even if they are being stripped.
    4624 
    4625 2000-02-21  Alan Modra  <alan@spri.levels.unisa.edu.au>
    4626 
    4627         * archures.c (bfd_octets_per_byte): Return unsigned int.
    4628         (bfd_arch_mach_octets_per_byte): Ditto.
    4629         * libbfd.c (bfd_read, bfd_seek): Quell signed vs. unsigned
    4630         comparison warning.
    4631         * section.c (bfd_get_section_size_before_reloc): Quell signed
    4632         vs. unsigned comparison warning.
    4633         (bfd_get_section_size_after_reloc): Same here.  Fix parentheses too.
    4634         * trad-core.c (trad_unix_core_file_p): Correct 2000-01-27
    4635         change.  What was I thinking?
    4636         * bfd-in2.h: Regenerate.
    4637 
    4638         * elflink.h (elf_gc_sweep): Skip non-elf input bfds.
    4639         (elf_gc_sections): Same here.
    4640         (elf_gc_common_finalize_got_offsets): And here.
    4641 
    4642 2000-02-21  Ian Lance Taylor  <ian@zembu.com>
    4643 
    4644         ELF HPPA doesn't work at present; remove it until it does.
    4645         * config.bfd: Comment out setting targ_defvec to
    4646         bfd_elf32_hppa_vec.
    4647         * Makefile.am: Rebuild dependencies.
    4648         (BFD32_BACKENDS): Remove elf32-hppa.lo.
    4649         (BFD32_BACKENDS_CFILES): Remove elf32-hppa.c.
    4650         (SOURCE_HFILES): Remove elf32-hppa.h and hppa_stubs.h.
    4651         * Makefile.in: Rebuild.
    4652         * targets.c (bfd_target_vector): Comment out bfd_elf32_hppa_vec.
    4653 
    4654 2000-02-18  Geoff Keating  <geoffk@cygnus.com>
    4655 
    4656         * coffcode.h (coff_set_arch_mach_hook): Use free(), because there
    4657         is no bfd_free().  Revert bfd_free part of previous change.
    4658 
    4659 2000-02-18  Geoff Keating  <geoffk@cygnus.com>
    4660 
    4661         * coffcode.h (coff_set_arch_mach_hook): Don't use variable-size
    4662         arrays.
    4663         (coff_compute_section_file_positions): Use bfd_free to pair
    4664         bfd_malloc.
    4665         (coff_write_object_contents): Likewise.
    4666 
    4667         * coff-rs6000.c (xcoff_howto_table_16): New variable.
    4668         (xcoff_rtype2howto): Handle 16-bit variants of 32-bit relocs.
    4669 
    4670 2000-02-18  Ulrich Drepper  <drepper@cygnus.com>
    4671 
    4672         * coff-rs6000.c (XCOFFARMAGBIG): New macro.
    4673         (xcoff_ar_file_hdr_big): New structure.
    4674         (SIZEOF_AR_FILE_HDR_BIG): New macro.
    4675         (xcoff_ar_hdr_big): New structure.
    4676         (SIZEOF_AR_HDR_BIG): New macro.
    4677         (xcoff_big_format_p): New macro.
    4678         (xcoff_ardata_big): New macro.
    4679         (arch_xhdr_big): New macro.
    4680         (xcoff_slurp_armap): Handle large archives.
    4681         (xcoff_archive_p): Detect large archives.
    4682         (xcoff_read_ar_hdr): Handle large archives.
    4683         (xcoff_openr_next_archived_file): Handle large archives.
    4684         (xcoff_generic_stat_arch_elt): Handle large archives.
    4685         (xcoff_write_armap_old): Rename from xcoff_write_armap.
    4686         (xcoff_write_armap_big): New function.
    4687         (xcoff_write_armap): New function, dispatch to _old or _big.
    4688         (xcoff_write_archive_contents_old): Rename from
    4689         xcoff_write_archive_contents.
    4690         (xcoff_write_archive_contents_big): New function.
    4691         (xcoff_write_archive_contents): New function, dispatch to _old or
    4692         _big.
    4693 
    4694 2000-02-18  Richard Henderson  <rth@cygnus.com>
    4695 
    4696         * elf-bfd.h (struct elf_link_hash_table): Remove copy_indirect
    4697         and hide_symbol members.
    4698         (elf_link_hash_copy_indirect): Remove.
    4699         (elf_link_hash_hide_symbol): Remove.
    4700         (struct elf_backend_data): Add elf_backend_copy_indirect_symbol
    4701         and elf_backend_hide_symbol.
    4702         (_bfd_elf_link_hash_copy_indirect): Declare.
    4703         (_bfd_elf_link_hash_hide_symbol): Declare.
    4704         * elf.c (_bfd_elf_link_hash_copy_indirect): Remove table argument.
    4705         (_bfd_elf_link_hash_hide_symbol): Likewise.
    4706         (_bfd_elf_link_hash_table_init): Don't init killed members.
    4707         * elflink.h (elf_link_add_object_symbols): Use the bed function
    4708         pointers not elf_link_hash_{copy_indirect,hide_symbol}.
    4709         (elf_link_assign_sym_version): Likewise.
    4710         * elfxx-target.h (elf_backend_copy_indirect_symbol): Default.
    4711         (elf_backend_hide_symbol): Likewise.
    4712         (elfNN_bed): Update for new members.
    4713 
    4714 2000-02-17  Kevin Buettner  <kevinb@redhat.com>
    4715 
    4716         * rs6000-core.c (CORE_DATA_SIZE_FIELD, CORE_COMM_FIELD, SAVE_FIELD,
    4717         STACK_END_ADDR): Define for new core file format.
    4718         (LOADER_OFFSET_FIELD, LOADER_REGION_SIZE, CORE_DUMP): New defines
    4719         for handling the vagaries of the various core file structures used
    4720         by AIX over the years.
    4721         (rs6000coff_core_p, rs6000coff_core_file_matches_executable,
    4722         Rs6kCorData): Use above defines to adapt code to use AIX 4.3's
    4723         core_dumpx structure.
    4724 
    4725 Thu Feb 17 00:04:48 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
    4726 
    4727         * archures.c (bfd_mach_sh2, bfd_mach_sh_dsp): New macros.
    4728         (bfd_mach_sh3_dsp): Likewise.
    4729         (bfd_mach_sh4): Reinstate.
    4730         (bfd_default_scan): Recognize 7410, 7708, 7729 and 7750.
    4731         * bfd-in2.h: Regenerate.
    4732         * coff-sh.c (struct sh_opcode): flags is no longer short.
    4733         (USESAS, USESAS_REG, USESR8, SETSAS, SETSAS_REG): New macros.
    4734         (sh_opcode41, sh_opcode42): Integrate as sh_opcode41.
    4735         (sh_opcode01, sh_opcode02, sh_opcode40): Add sh-dsp opcodes.
    4736         (sh_opcode41, sh_opcode4, sh_opcode80): Likewise.
    4737         (sh_opcodes): No longer const.
    4738         (sh_dsp_opcodef0, sh_dsp_opcodef): New arrays.
    4739         (sh_insn_uses_reg): Check for USESAS and USESR8.
    4740         (sh_insn_sets_reg, sh_insns_conflict): Check for SETSAS.
    4741         (_bfd_sh_align_load_span): Return early for SH4.
    4742         Modify sh_opcodes lookup table for sh-dsp / sh3-dsp.
    4743         Take into account that field b of a parallel processing insn
    4744         could be mistaken for a separate insn.
    4745         * cpu-sh.c (arch_info_struct): New array elements for
    4746         sh2, sh-dsp and sh3-dsp.
    4747         Reinstate element for sh4.
    4748         (SH2_NEXT, SH_DSP_NEXT, SH3_DSP_NEXT): New macros.
    4749         (SH4_NEXT): Reinstate.
    4750         (SH3_NEXT, SH3E_NEXT): Adjust.
    4751         * elf-bfd.h (_sh_elf_set_mach_from_flags): Declare.
    4752         * elf32-sh.c (sh_elf_set_private_flags): New function.
    4753         (sh_elf_copy_private_data, sh_elf_set_mach_from_flags): Likewise.
    4754         (sh_elf_merge_private_data): New function.
    4755         (elf_backend_object_p, bfd_elf32_bfd_set_private_bfd_flags): Define.
    4756         (bfd_elf32_bfd_copy_private_bfd_data): Define.
    4757         (bfd_elf32_bfd_merge_private_bfd_data): Change to
    4758         sh_elf_merge_private_data.
    4759 
    4760 2000-02-13  Richard Henderson  <rth@cygnus.com>
    4761 
    4762         * elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and
    4763         hide_symbol members.
    4764         (elf_link_hash_copy_indirect): New.
    4765         (elf_link_hash_hide_symbol): New.
    4766         * elflink.h (elf_link_add_object_symbols): Break out copy from
    4767         indirect new new symbol to elf.c.
    4768         (elf_link_assign_sym_version): Break out privatization of
    4769         non-exported symbol to elf.c.
    4770         * elf.c (_bfd_elf_link_hash_copy_indirect): New.
    4771         (_bfd_elf_link_hash_hide_symbol): New.
    4772         (_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol.
    4773 
    4774 2000-02-13  Ian Lance Taylor  <ian@zembu.com>
    4775 
    4776         * section.c (_bfd_strip_section_from_output): Add info parameter.
    4777         If it passed as non-NULL, use it to check whether any input BFD
    4778         has an input section which uses this output section.  Change all
    4779         callers.
    4780         * bfd-in2.h: Rebuild.
    4781 
    4782         * bfd-in.h: Move declarations of bfd_get_elf_phdr_upper_bound and
    4783         bfd_get_elf_phdrs in from bfd-in2.h, correcting patch of
    4784         1999-11-29.
    4785         * bfd-in2.h: Rebuild.
    4786 
    4787 2000-02-10  Timothy Wall  <twall@cygnus.com>
    4788 
    4789         * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to
    4790         allow final modifications of swapped-in symbol.
    4791         (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST.
    4792         * coffcode.h (coff_write_relocs): Use macro
    4793         SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether
    4794         symbol index should be set to -1.
    4795 
    4796 Thu Feb 10 20:07:50 GMT 2000  Toshiyasu Morita (toshi.morita@sega.com)
    4797 
    4798         * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG,
    4799         USESF1_REG, USESF2_REG, SETSF1_REG, SETSF2_REG): New macros.
    4800         * (sh_insn_sets_reg, sh_insn_sets_freg): New prototypes.
    4801         * (sh_insn_sets_reg, sh_insn_uses_or_sets_reg, sh_insns_sets_freg,
    4802         sh_insns_uses_or_sets_freg): New functions.
    4803         * (sh_insn_uses_reg, sh_insn_uses_freg): Use new macros.
    4804         * (sh_insns_conflict): Use new functions and new macros to
    4805         detect conflicts when two instructions both set same integer registers,
    4806         both set same fp register, and both set special register.
    4807 
    4808 2000-02-09  Timothy Wall  <twall@cygnus.com>
    4809 
    4810         * coffgen.c (coff_real_object_p): Set arch/mach info prior to
    4811         swapping in sections, so that the swapping routines have access to
    4812         the arch/mach info.
    4813 
    4814 2000-02-08 Mark Elbrecht <snowball3@bigfoot.com>
    4815 
    4816         * coff-go32.c: Update comment. Update copyright.
    4817 
    4818 2000-01-27  Thomas de Lellis  <tdel@windriver.com>
    4819 
    4820         * syms.c (bfd_decode_symclass)
    4821         Two new class characters were added - 'V' and 'v'.  The
    4822         meaning of 'W' is now restricted to just weak non-object
    4823         symbols.  This allows differentiation between, for example,
    4824         weak functions vs weak objects.  nm for example now dumps:
    4825         'W' = weak global
    4826         'w' = weak unresolved
    4827         'V' = weak global object
    4828         'v' = weak unresolved object
    4829 
    4830         (bfd_is_undefined_symclass): New function.  Return true if the
    4831         given symbol class represents and undefined/unresolved symbol.
    4832 
    4833         (bfd_symbol_info): Use bfd_is_undefined_symclass to check for
    4834         unresolved symbols.
    4835 
    4836         * bfd-in2.h: Add prototype for bfd_is_undefined_symbol().
    4837 
    4838         * elf32-arm.h (elf32_arm_get_symbol_type): If a symbol has the
    4839         STT_ARM_16BIT flag set, but it is not attached to a data object
    4840         return STT_ARM_16BIT so that it will be treated as code by the
    4841         disassembler.
    4842 
    4843 2000-01-27  Alan Modra  <alan@spri.levels.unisa.edu.au>
    4844 
    4845         * coff-i386.c (i3coff_object_p): Remove prototype.
    4846         Update copyright.
    4847 
    4848         * elflink.c (_bfd_elf_link_record_dynamic_symbol): Add const
    4849         to name.  Update copyright.
    4850 
    4851         * trad-core.c (trad_unix_core_file_p): Cast core_regsec
    4852         assignment to avoid warning.  Update copyright.
    4853 
    4854 2000-01-24  Robert Lipe  (robertl@sco.com)
    4855 
    4856         * coffcode.h (coff_write_object_contents): Get buff via bfd_malloc
    4857         instead of using GNU C extension.
    4858 
    4859 2000-01-21  Nick Clifton  <nickc@cygnus.com>
    4860 
    4861         * libbfd.c (bfd_read): Do not attempt to get a negativly sized
    4862         amount from a bfd_in_memory structure.
    4863         (bfd_seek): Do not allow seeks past the end of a bfd_in_memory
    4864         structure.
    4865 
    4866 2000-01-14  Nick Clifton  <nickc@cygnus.com>
    4867 
    4868         * linker.c (default_indirect_link_order): oops - fix incorrectly
    4869         applied patch from Tim Wall.
    4870 
    4871 2000-01-13  Timothy Wall (twall@tiac.net>
    4872 
    4873         * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx
    4874         = scnhsz, filhsz, relsz, aoutsz, etc)
    4875 
    4876         * coffswap.h: Ditto.
    4877 
    4878 2000-01-13  Nick Clifton  <nickc@cygnus.com>
    4879 
    4880         * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to
    4881         interwork thumb to arm stub.
    4882 
    4883 2000-01-13  Timothy Wall (twall@tiac.net>
    4884 
    4885         * archures.c (bfd_octets_per_byte): New function: Return
    4886         target byte size.
    4887         (bfd_arch_mach_octets_per_byte): New function: Return target
    4888         byte size.
    4889 
    4890         * section.c: Distinguish between octets and bytes for usage of
    4891         _cooked_size,  _raw_size, and output_offset.  Clarify
    4892         description of bfd_set_section_contents.
    4893 
    4894         * bfd-in2.h: Regenerate.
    4895 
    4896         * coffgen.c: Indicate that the offset parameter is in bytes, not
    4897         octets.
    4898 
    4899         * cofflink.c (bfd_coff_link_input_bfd): Use bfd_octets_per_byte
    4900         where appropriate to get the octet offset when calling
    4901         bfd_set_section_contents.
    4902         (bfd_coff_reloc_link_order): Ditto.
    4903 
    4904         * linker.c (bfd_generic_reloc_link_order): Ditto.
    4905         (_bfd_default_link_order): Ditto.
    4906 
    4907         * reloc.c (bfd_perform_relocation):  Distinguish between octets
    4908         and bytes.  Use octets when indexing into octet data; use bytes
    4909         when calculating target addresses.
    4910         (bfd_install_relocation): Ditto.
    4911 
    4912         * srec.c (srec_write_section): Ditto.
    4913 
    4914 2000-01-13  Nick Clifton  <nickc@cygnus.com>
    4915 
    4916         * coff-mcore.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from
    4917         3 to 2.  This allows 4 byte sized sections, which is necessary for
    4918         dlltool to build functioning DLLs.
    4919 
    4920 2000-01-10  Philip Blundell  <pb@futuretv.com>
    4921 
    4922         * config.bfd (arm*-*-linux-gnu*): Match instead of arm*-*-linux-gnu.
    4923         (arm*-*-conix*): New target.
    4924 
    4925 2000-01-10  Egor Duda  <deo@logos-m.ru>
    4926 
    4927         * config.bfd: Include elf32_i386 vector to target list for cygwin
    4928         and mingw.
    4929 
    4930         * config.in: Undefine HAVE_WIN32_PSTATUS_T.
    4931         * configure.in: Test for structure win32_pstatus_t in
    4932         <sys/procfs.h>
    4933         * configure: Regenerate.
    4934 
    4935         * elf.c (elfcore_grok_win32pstatus): New function: process
    4936         win32_pstatus_t notes in elf core file.
    4937         (elfcore_grok_note): Detect win32_pstatus notes.
    4938 
    4939 2000-01-03  Martin v. Loewis  <loewis@informatik.hu-berlin.de>
    4940 
    4941         * elflink.c (_bfd_elf_link_record_dynamic_symbol): Process symbol
    4942         visibility.
    4943         * elflink.h (elf_link_add_object_symbols): Combine visibilities.
    4944         * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility.
    4945 
    4946 For older changes see ChangeLog-9899
     8081        * po/ja.po: Import from translation project's web site.
     8082
     80832002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>
     8084
     8085        * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error
     8086        messages to ease translation into other languages.
     8087
     8088For older changes see ChangeLog-0001
    49478089
    49488090
Note: See TracChangeset for help on using the changeset viewer.