(linenum→info "unix/slp.c:2238")

binutils/2.18/bfd/ChangeLog-0203

    1: 2003-12-19  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
    2: 
    3:         Adfd m32r-linux and PIC support.  Add new ABI that uses RELA.
    4:         * config.bfd (m32r*-*-linux*, m32r*le-*-linux*, m32r*le-*-*): Added.
    5:         * configure.in (bfd_elf32_m32rlin_vec, bfd_elf32_m32rlelin_vec,
    6:         bfd_elf32_m32rle_vec): Added
    7:         * configure: Regenerated.
    8:         * elf32-m32r.c (m32r_info_to_howto, m32r_elf_adjust_dynamic_symbol,
    9:         m32r_elf_size_dynamic_sections, m32r_elf_create_dynamic_sections,
   10:         m32r_elf_finish_dynamic_sections, m32r_elf_finish_dynamic_symbol,
   11:         allocate_dynrelocs, readonly_dynrelocs, m32r_elf_reloc_type_class,
   12:         m32r_elf_fake_sections): Added.
   13:         (m32r_elf_howto_table): Added
   14:         R_M32R_16_RELA, R_M32R_32_RELA, R_M32R_24_RELA,
   15:         R_M32R_10_PCREL_RELA, R_M32R_18_PCREL_RELA,
   16:         R_M32R_26_PCREL_RELA, R_M32R_HI16_ULO_RELA,
   17:         R_M32R_HI16_SLO_RELA, R_M32R_LO16_RELA,
   18:         R_M32R_SDA16_RELA, R_M32R_RELA_GNU_VTINHERIT,
   19:         R_M32R_RELA_GNU_VTENTRY, R_M32R_GOT24,
   20:         R_M32R_26_PLTREL, R_M32R_COPY, R_M32R_GLOB_DAT,
   21:         R_M32R_JMP_SLOT, R_M32R_RELATIVE, R_M32R_GOTOFF,
   22:         R_M32R_GOTPC24, R_M32R_GOT16_HI_ULO,
   23:         R_M32R_GOT16_HI_SLO, R_M32R_GOT16_LO,
   24:         R_M32R_GOTPC_HI_ULO, R_M32R_GOTPC_HI_SLO,
   25:         R_M32R_GOTPC_LO.
   26:         (m32r_elf_relocate_section, m32r_elf_check_relocs): Changed for
   27:         New ABI.
   28:         * reloc.c: Add BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL,
   29:         BFD_RELOC_M32R_COPY, BFD_RELOC_M32R_GLOB_DAT,
   30:         BFD_RELOC_M32R_JMP_SLOT, BFD_RELOC_M32R_RELATIVE,
   31:         BFD_RELOC_M32R_GOTOFF, BFD_RELOC_M32R_GOTPC24,
   32:         BFD_RELOC_M32R_GOT16_HI_ULO, BFD_RELOC_M32R_GOT16_HI_SLO,
   33:         BFD_RELOC_M32R_GOT16_LO, BFD_RELOC_M32R_GOTPC_HI_ULO,
   34:         BFD_RELOC_M32R_GOTPC_HI_SLO, BFD_RELOC_M32R_GOTPC_LO.
   35:         * targets.c (bfd_elf32_m32rlin_vec, bfd_elf32_m32rlelin_vec,
   36:         bfd_elf32_m32rle_vec): Added.
   37:         * bfd-in2.h: Regenerated.
   38:         * libbfd.h: Regenerated.
   39: 
   40: 2003-12-19  Danny Smith  <dannysmith@users.sourceforge.net>
   41: 
   42:         * coffcode.h (styp_to_sec_flags): Don't treat .reloc section
   43:         as SEC_DEBUGGING.
   44: 
   45: 2003-12-18  Richard Sandiford  <rsandifo@redhat.com>
   46: 
   47:         * elf32-mips.c (elf_mips_howto_table_rel): Replace all uses of
   48:         mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.  Use
   49:         _bfd_mips_elf_hi16_reloc for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16,
   50:         _bfd_mips_elf_lo16_reloc for R_MIPS_LO16 and R_MIPS_GNU_REL_LO16,
   51:         and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16.  Change rightshift
   52:         to 16 for R_MIPS_HI16 and R_MIPS_GNU_REL_HI16.
   53:         (mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc)
   54:         (mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete.
   55:         (_bfd_mips_elf32_gprel16_reloc): Remove special case.
   56:         (mips_elf_gprel32_reloc, mips32_64bit_reloc): Likewise.
   57: 
   58:         * elf64-mips.c (mips_elf64_howto_table_rel): Replace all uses of
   59:         mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.  Use
   60:         _bfd_mips_elf_hi16_reloc for R_MIPS_HI16, _bfd_mips_elf_lo16_reloc
   61:         for R_MIPS_LO16 and _bfd_mips_elf_got16_reloc for R_MIPS_GOT16.
   62:         Change R_MIPS_HI16's rightshift to 16.
   63:         (mips_elf64_howto_table_rela): Replace all uses of
   64:         mips_elf_generic_reloc with _bfd_mips_elf_generic_reloc.
   65:         Use _bfd_mips_elf_generic_reloc for R_MIPS_GOT16 as well.
   66:         (mips_elf64_hi16_reloc, mips_elf64_got16_reloc): Delete.
   67:         (mips_elf64_shift6_reloc): Remove special case.  Use
   68:         _bfd_mips_elf_generic_reloc instead of returning bfd_reloc_continue.
   69: 
   70:         * elfn32-mips.c (prev_reloc_section): Delete.
   71:         (prev_reloc_address, prev_reloc_addend): Delete.
   72:         (elf_mips_howto_table_rel, elf_mips_howto_table_rela): As for
   73:         elf64-mips.c
   74:         (GET_RELOC_ADDEND, SET_RELOC_ADDEND): Delete.
   75:         (mips_elf_generic_reloc, struct mips_hi16, mips_elf_hi16_reloc)
   76:         (mips_elf_lo16_reloc, mips_elf_got16_reloc): Delete.
   77:         (mips_elf_gprel16_reloc): Delete use of GET_RELOC_ADDEND.
   78:         (mips_elf_literal_reloc, mips_elf_gprel32_reloc): Likewise.
   79:         (mips16_jump_reloc, mips16_gprel_reloc): Likewise.
   80:         (mips_elf_shift6_reloc): Likewise.  Delete use of SET_RELOC_ADDEND.
   81: 
   82:         * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Use
   83:         _bfd_relocate_contents to install an in-place addend.
   84:         (mips_hi16): New structure.
   85:         (mips_hi16_list): Moved from elf32-mips.c.
   86:         (_bfd_mips_elf_hi16_reloc, _bfd_mips_elf_got16_reloc): New functions.
   87:         (_bfd_mips_elf_lo16_reloc, _bfd_mips_elf_generic_reloc): New functions.
   88:         (mips_elf_calculate_relocation): Assume addend is unshifted.
   89:         (_bfd_mips_elf_relocate_section): Don't apply the howto rightshift
   90:         on top of the usual high-part shift.  Don't shift the addend right
   91:         before calling mips_elf_calculate_relocation.
   92: 
   93:         * elfxx-mips.h (_bfd_mips_elf_hi16_reloc): Declare.
   94:         (_bfd_mips_elf_got16_reloc, _bfd_mips_elf_lo16_reloc): Declare.
   95:         (_bfd_mips_elf_generic_reloc): Declare.
   96: 
   97: 2003-12-16  Eric Youngdale  <eric@mkssoftware.com>
   98:             Nick Clifton  <nickc@redhat.com>
   99: 
  100:         * peicode.h (pe_ILF_build_a_bfd): Only skip one instance of each
  101:         prefix character, if they are present.
  102: 
  103: 2003-12-15  Dmitry Semyonov  <Dmitry.Semyonov@oktet.ru>
  104:             Nick Clifton  <nickc@redhat.com>
  105: 
  106:         * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Ensure that correct flags
  107:         are set on known section types.
  108: 
  109: 2003-12-12  Nick Clifton  <nickc@redhat.com>
  110: 
  111:         * po/ro.po: Updated translation.
  112: 
  113: 2003-12-12  Alan Modra  <amodra@bigpond.net.au>
  114: 
  115:         * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Check for
  116:         NULL dyn_h.
  117: 
  118: 2003-12-11  Nick Clifton  <nickc@redhat.com>
  119: 
  120:         * elf.c (INCLUDE_SECTION_IN_SEGMENT): Skip PT_GNU_STACK segments.
  121: 
  122: 2003-12-08  Richard Sandiford  <rsandifo@redhat.com>
  123: 
  124:         * elfxx-mips.h, elfxx-mips.c, cpu-mips.c: Convert prototypes.
  125:         Remove casts that were only needed for K&R compatibility.
  126: 
  127: 2003-12-08  Alan Modra  <amodra@bigpond.net.au>
  128: 
  129:         * elf-bfd.h (struct elf_backend_data): Remove "bfd *" and add
  130:         "elflink_hash_entry *" param to elf_backend_link_output_symbol_hook.
  131:         Add "elflink_hash_entry *" param to elf_backend_output_arch_syms.
  132:         * elflink.h (elf_link_output_sym): Add "elflink_hash_entry *" param,
  133:         and pass to output_symbol_hook.
  134:         (elf_bfd_final_link): Adjust elf_link_output_sym calls.
  135:         (elf_link_output_extsym): Likewise.
  136:         (elf_link_input_bfd): Likewise.
  137:         * elf32-sh64.c (sh64_elf_link_output_symbol_hook): Adjust.
  138:         * elf32-v850.c (v850_elf_link_output_symbol_hook): Likewise.
  139:         * elf64-mmix.c (mmix_elf_link_output_symbol_hook): Likewise.
  140:         * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Likewise.
  141:         * elfxx-mips.c (_bfd_mips_elf_link_output_symbol_hook): Likewise.
  142:         * elfxx-mips.h (_bfd_mips_elf_link_output_symbol_hook): Likewise.
  143:         * elf64-sparc.c (sparc64_elf_output_arch_syms): Likewise.
  144:         * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Likewise.
  145:         Validate dynh->h against h.
  146:         * elf64-ppc.c (struct ppc_link_hash_entry): Add adjust_done bitfield.
  147:         (link_hash_newfunc): Init it.
  148:         (adjust_opd_syms): New function.
  149:         (ppc64_elf_edit_opd): Set adjust_done when global .opd sym adjusted.
  150:         Set opd.adjust for all .opd relocs.  Call adjust_opd_syms.
  151:         (ppc64_elf_tls_optimize): Adjust possible .opd sym values here.
  152:         (ppc64_elf_relocate_section): Also adjust syms not a multiple of 24.
  153:         (ppc64_elf_output_symbol_hook): New function.
  154:         (elf_backend_link_output_symbol_hook): Define.
  155: 
  156: 2003-12-07  Richard Sandiford  <rsandifo@redhat.com>
  157: 
  158:         * elf32-mips.c, elfn32-mips.c, elf64-mips.c: Convert prototypes.
  159:         Remove casts that were only needed for K&R compatibility.
  160: 
  161: 2003-12-05  Dmitry Semyonov  <Dmitry.Semyonov@oktet.ru>
  162: 
  163:         * coff-arm.c (aoutarm_std_reloc_howto [ARM_WINCE]): Set
  164:         partial_inplace for these relocs to FALSE for comptability with
  165:         the MS linker.
  166:         Remap ARM_26D relocation from 5 to 0. This fixes "bad fixup" error
  167:         generated by MS linker, and brings the relocation in line the MS
  168:         PE documentation.
  169: 
  170: 2003-12-04  H.J. Lu  <hongjiu.lu@intel.com>
  171: 
  172:         * elf32-ppc.c (ppc_elf_relax_section): Don't check relax_finalizing.
  173: 
  174: 2003-12-04  H.J. Lu  <hongjiu.lu@intel.com>
  175: 
  176:         * elfxx-ia64.c (elfNN_ia64_relax_section): Use the
  177:         need_relax_finalize field in link_info instead of
  178:         relax_finalizing to check if the relax finalize pass is being
  179:         done.
  180: 
  181: 2003-12-04  Dmitry Semyonov  <Dmitry.Semyonov@oktet.ru>
  182: 
  183:         * coff-arm.c (coff_arm_relocate_section, bfd_arm_process_before_allocation):
  184:         Change ARM26* to ARM_26* in comments to match definitions.
  185:         (coff_arm_adjust_symndx): Replace hard-coded constants with
  186:         appropriate definitions (ARM_26*).
  187: 
  188: 2003-12-04  Alan Modra  <amodra@bigpond.net.au>
  189: 
  190:         * coff-i860.c (coff_i860_reloc_nyi): Return bfd_reloc_not_supported.
  191:         * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Warning fixes.
  192:         (mn10300_elf_relax_section): Likewise.
  193:         * nlm32-alpha.c (ONES): Define.
  194:         (nlm32_alpha_howto_table): Use it to avoid warnings.
  195: 
  196: 2003-12-04  Alan Modra  <amodra@bigpond.net.au>
  197: 
  198:         * elf32-i386.c (elf_i386_object_p): Delete.
  199:         (elf_backend_object_p): Don't define.
  200:         * elf32-s390.c (elf_s390_object_p): No need to alloc tdata here.
  201:         * elf32-sh.c (sh_elf_object_p): Likewise.
  202:         * elf32-sparc.c (elf32_sparc_object_p): Likewise.
  203:         * elf64-alpha.c (elf64_alpha_object_p): Likewise.
  204:         * elf64-s390.c (elf_s390_object_p): Likewise.
  205:         * elf64-x86-64.c (elf64_x86_64_elf_object_p): Likewise.
  206: 
  207: 2003-12-03  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
  208: 
  209:         * archures.c (bfd_mach_m32r2): Add new machine type.
  210:         * bfd-in2.h: Regenerate.
  211:         * cpu-m32r.c : Add new machine type.
  212:         * elf32-m32r.c (m32r_elf_object_p, m32r_elf_final_write_processing,
  213:         m32r_elf_merge_private_bfd_data): Add support for new machine
  214:         type.
  215: 
  216: 2003-12-03  Dave Airlie  <airlied@linux.ie>
  217: 
  218:         * config.bfd: Add vax-linux-gnu target.
  219:         * configure.in: Likewise.
  220:         * configure: Regenerate.
  221: 
  222: 2003-12-03  Alan Modra  <amodra@bigpond.net.au>
  223: 
  224:         * ecoff.c (ecoff_link_add_archive_symbols): Update for renamed
  225:         bfd_link_hash_entry field "next" -> "und_next".
  226:         * linker.c (_bfd_link_hash_newfunc): Likewise.
  227:         (bfd_link_add_undef): Likewise.
  228:         (_bfd_generic_link_add_archive_symbols): Likewise.
  229:         (_bfd_generic_link_add_one_symbol): Likewise.
  230:         * xcofflink.c (xcoff_link_add_symbols): Likewise.
  231: 
  232: 2003-12-02  Nick Clifton  <nickc@redhat.com>
  233: 
  234:         * configure.in (ALL_LINGUAS): Add ro.
  235:         * po/ro.po: New Romanian translation.
  236: 
  237: 2003-12-02  Alan Modra  <amodra@bigpond.net.au>
  238: 
  239:         * Makefile.am: Run "make dep-am".
  240:         * Makefile.in: Regenerate.
  241: 
  242: 2003-12-01  Dmitry Semyonov  <Dmitry.Semyonov@oktet.ru>
  243: 
  244:         * coffcode.h (coff_compute_section_file_positions): Set page_size
  245:         to 1 instead of 0 in the case file alignment value is zero.
  246: 
  247: 2003-12-01  Kazu Hirata  <kazu@cs.umass.edu>
  248: 
  249:         * coff-rs6000.c: Remove ARGSUSED and VARARGS.
  250:         * coff64-rs6000.c: Likewise.
  251:         * coffcode.h: Likewise.
  252:         * elf32-vax.c: Likewise.
  253:         * hash.c: Likewise.
  254:         * hppabsd-core.c: Likewise.
  255:         * hpux-core.c: Likewise.
  256:         * ihex.c: Likewise.
  257:         * netbsd-core.c: Likewise.
  258:         * osf-core.c: Likewise.
  259:         * pdp11.c: Likewise.
  260:         * ptrace-core.c: Likewise.
  261:         * sco5-core.c: Likewise.
  262:         * section.c: Likewise.
  263:         * sunos.c: Likewise.
  264:         * trad-core.c: Likewise.
  265: 
  266: 2003-12-01  Alan Modra  <amodra@bigpond.net.au>
  267: 
  268:         * elf-bfd.h (is_elf_hash_table): Take hash tab rather than info arg.
  269:         * elf.c (_bfd_elf_merge_sections): Adjust to suit.
  270:         (_bfd_elf_link_just_syms): Likewise.
  271:         (bfd_elf_get_needed_list): Likewise.
  272:         (bfd_elf_get_runpath_list): Likewise.
  273:         (_bfd_elf_link_hash_copy_indirect): Remove unneeded parens.
  274:         * elf32-hppa.c (elf32_hppa_setup_section_lists): Don't check hash tab
  275:         creator flavour.
  276:         (elf32_hppa_set_gp): Look up output sections rather than using htab.
  277:         * elf32-i960.c: Comment fix.  Formatting.
  278:         * elf32-m32r.c (m32r_elf_add_symbol_hook): Use is_elf_hash_table
  279:         rather than testing creator flavour.
  280:         * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
  281:         * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
  282:         * elflink.c (_bfd_elf_link_create_dynamic_sections): Adjust for
  283:         is_elf_hash_table change.  Remove redundant test.
  284:         (bfd_elf_record_link_assignment): Use is_elf_hash_table rather than
  285:         testing creator flavour.
  286:         (elf_link_record_local_dynamic_symbol): Adjust for is_elf_hash_table.
  287:         (_bfd_elf_fix_symbol_flags): Likewise.
  288:         (_bfd_elf_adjust_dynamic_symbol): Likewise.
  289:         * elflink.h (elf_link_add_object_symbols): Likewise.  Remove redundant
  290:         checks.  Use is_elf_hash_table rather than testing creator flavour.
  291:         Use hash_table throughout in place of info->hash.
  292:         (elf_add_dynamic_entry): Adjust for is_elf_hash_table change.
  293:         (NAME(bfd_elf,size_dynamic_sections)): Likewise.  Remove redundant
  294:         check.
  295:         (elf_bfd_final_link): Adjust for is_elf_hash_table change.
  296:         (elf_link_check_versioned_symbol): Use is_elf_hash_table rather than
  297:         testing creator flavour.
  298:         (elf_gc_sections): Add is_elf_hash_table check.
  299:         (elf_gc_common_finalize_got_offsets): Likewise.
  300:         (elf_bfd_discard_info): Adjust for is_elf_hash_table change.  Remove
  301:         redundant check.
  302:         * elfxx-ia64.c (elfNN_ia64_relax_section): Use is_elf_hash_table
  303:         rather than testing creator flavour.
  304: 
  305: 2003-11-28  Christian Groessler  <chris@groessler.org>
  306: 
  307:         * cpu-z8k.c: Convert to ISO C90.
  308:         * coff-z8k.c: Likewise.
  309: 
  310: 2003-11-27  Alexandre Oliva  <aoliva@redhat.com>
  311: 
  312:         * elf-bfd.h (elf_backend_data::elf_backend_modify_segment_map):
  313:         Add link info argument.
  314:         * elf32-i370.c (elf_backend_modify_segment_map): Likewise.
  315:         * elf32-ppc.c (ppc_elf_modify_segment_map): Likewise.
  316:         * elf32-xtensa.c (elf_xtensa_modify_segment_map): Likewise.
  317:         * elf64-hppa.c (elf64_hppa_modify_segment_map): Likewise.
  318:         * elfxx-ia64.c (elfNN_ia64_modify_segment_map): Likewise.
  319:         * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Likewise.
  320:         * elfxx-mips.h (_bfd_mips_elf_modify_segment_map): Likewise.
  321:         * elf.c (assign_file_positions_except_relocs,
  322:         assign_file_positions_for_segments): Likewise.  Adjust calls.
  323: 
  324: 2003-11-27  Mark Kettenis  <kettenis@gnu.org>
  325: 
  326:         * elf.c (elfcore_grok_netbsd_procinfo): Make a pseudosection out
  327:         of the note.
  328: 
  329: 2003-11-26  Daniel Jacobowitz  <drow@mvista.com>
  330:             Richard Sandiford  <rsandifo@redhat.com>
  331: 
  332:         * elfxx-mips.c (mips_elf_set_global_got_offset): Don't set no_fn_stub.
  333:         (mips_elf_set_no_stub): New function.
  334:         (mips_elf_multi_got): Call it.
  335:         (_bfd_mips_elf_finish_dynamic_symbol): If a relocation is needed for
  336:         a secondary GOT entry, create an R_MIPS_32 or R_MIPS_64 relocation and
  337:         use mips_elf_create_dynamic_relocation to deal with any compatibility
  338:         issues.  Store the adjusted addend in the GOT slot.
  339: 
  340: 2003-11-25  Mattias Engdeg?  <mattias@virtutech.se>
  341: 
  342:         * stabs.c (_bfd_link_section_stabs): Skip N_EXCL stabs when
  343:         procesing N_BINCL stabs.
  344: 
  345: 2003-11-25  Alan Modra  <amodra@bigpond.net.au>
  346: 
  347:         * elf64-ppc.c (ppc_type_of_stub): Disallow stubs other than
  348:         ppc_stub_plt_call to symbols defined in shared libs.
  349: 
  350: 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
  351: 
  352:         * elf-bfd.h (ELF_LINK_POINTER_EQUALITY_NEEDED): Define new flag.
  353:         * elf.c (_bfd_elf_link_hash_copy_indirect): Copy it.
  354:         * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
  355:         (elf_i386_check_relocs): Set it.
  356:         (elf_i386_finish_dynamic_symbol): If it is not set,
  357:         clear st_value of SHN_UNDEF symbol.
  358: 
  359: 2003-11-20  Jim Blandy  <jimb@redhat.com>
  360: 
  361:         * cpu-powerpc.c (powerpc_compatible): Any ISA in the PowerPC
  362:         family is a superset of <bfd_arch_rs6000,bfd_mach_rs6k>.
  363: 
  364: 2003-11-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
  365: 
  366:         * elf32-s390.c (elf_s390_relocate_section): Don't recalculate symbol
  367:         section for reloc output and subtract the output section's address
  368:         from the addend when converting a relocation into one against a
  369:         section symbol.
  370:         * elf64-s390.c (elf_s390_relocate_section): Likewise.
  371: 
  372: 2003-11-18  James E Wilson  <wilson@specifixinc.com>
  373: 
  374:         * elfxx-ia64.c (get_fptr): For fptr_rel, use dynobj not abfd.
  375:         (elfNN_ia64_size_dynamic_sections): When stripping sections, check
  376:         for ia64_info->rel_fptr_sec.
  377: 
  378: 2003-11-18  Alan Modra  <amodra@bigpond.net.au>
  379: 
  380:         * elf64-ppc.c (toc_adjusting_stub_needed): Exit early if section
  381:         size is zero.
  382: 
  383: 2003-11-17  Daniel Jacobowitz  <drow@mvista.com>
  384: 
  385:         * elf.c (_bfd_elf_link_hash_copy_indirect): Copy
  386:         ELF_LINK_HASH_NEEDS_PLT.  Fix formatting.
  387:         * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise.
  388:         * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise.
  389:         * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Likewise.
  390:         * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise.
  391:         * elf32-sh.c (sh_elf_copy_indirect_symbol): Likewise.
  392:         * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise.
  393:         * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise.
  394:         * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise.
  395:         * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise.
  396:         * elf32-xtensa.c (elf_xtensa_copy_indirect_symbol): Remove.
  397:         (elf_backend_copy_indirect_symbol): Don't define.
  398: 
  399: 2003-11-14  Daniel Jacobowitz  <drow@mvista.com>
  400: 
  401:         * elfxx-mips.c (mips_elf_merge_gots): Weaken assert for local
  402:         GOT entries.
  403: 
  404: 2003-11-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
  405: 
  406:         * elf32-s390.c (elf_s390_relocate_section): Only convert R_390_32
  407:         to R_390_RELATIVE. Convert the other relocations against local
  408:         symbols to relocations against the start of the section.
  409:         * elf64-s390.c (elf_s390_relocate_section): Only convert R_390_64
  410:         to R_390_RELATIVE. Convert the other relocations against local
  411:         symbols to relocations against the start of the section.
  412: 
  413: 2003-11-11  Nick Clifton  <nickc@redhat.com>
  414: 
  415:         * elf-m10300.c (bfd_mn10300_elf_size_dynamic_sections): Use
  416:         info->executable not info->shared to decide if a .interp section
  417:         should be present.
  418:         * elf32-arm.h (elf32_arm_size_dynamic_sections): Likewise.
  419:         * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
  420:         * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
  421:         * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
  422:         * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
  423:         * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
  424:         * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
  425:         * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
  426:         * elfxx-mips.c (_bfd_mips_size_dynamic_sections): Likewise.
  427:         * elflink.h (size_dynamic_sections): Likewise.
  428: 
  429: 2003-11-10  Jonathan Wilson <jonwil@tpgi.com.au>
  430: 
  431:         * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Swap out tls pointer.
  432:         (_bfd_XXi_final_link_postscript): Look for __tks_used symbol.  If
  433:         found initialise the tls data directory entry.
  434: 
  435: 2003-11-07  Alan Modra  <amodra@bigpond.net.au>
  436: 
  437:         * elf32-ppc.c (ppc_elf_install_value): Delete.
  438:         (shared_stub_entry, stub_entry): Make them arrays of ints.
  439:         Remove initial branch.
  440:         (ppc_elf_relax_section): Write one branch around all trampolines
  441:         instead.  Correct bogus R_PPC_PLTREL24 handling.  Correct
  442:         branch range check.  Only use shared_stub_entry when shared.
  443:         Test that branches can reach stubs.  Write trampolines out at
  444:         end so that just one realloc is used.  Handle little-endian
  445:         mode.  Move relevant code from ppc_elf_install_value to here.
  446:         (ppc_elf_relocate_section): Move code handling RELAX32 from
  447:         ppc_elf_install_value to here.
  448: 
  449: 2003-11-06  Alan Modra  <amodra@bigpond.net.au>
  450: 
  451:         * elf32-ppc.c (ppc_elf_howto_raw); Add entry for R_PPC_RELAX32PC.
  452:         (ppc_elf_install_value): Handle R_PPC_RELAX32PC.  Merge duplicate
  453:         cases.
  454:         (shared_stub_entry): Correct opcode.
  455:         (ppc_elf_relax_section): Generate R_PPC_RELAX32PC relocs.
  456:         (ppc_elf_relocate_section): Handle them.
  457: 
  458: 2003-11-05  Alan Modra  <amodra@bigpond.net.au>
  459: 
  460:         * elf.c (_bfd_elf_rela_local_sym): Accept asection **, and return
  461:         updated section in case of merged section.
  462:         * elf-bfd.h (_bfd_elf_rela_local_sym): Update declaration.
  463:         * elf-hppa.h (elf_hppa_relocate_section): Adjust call.
  464:         * elf-m10200.c (mn10200_elf_relocate_section): Likewise.
  465:         * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
  466:         * elf32-arm.h (elf32_arm_relocate_section): Likewise.
  467:         * elf32-avr.c (elf32_avr_relocate_section): Likewise.
  468:         * elf32-cris.c (cris_elf_relocate_section): Likewise.
  469:         * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
  470:         * elf32-frv.c (elf32_frv_relocate_section): Likewise.
  471:         * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
  472:         * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
  473:         * elf32-i370.c (i370_elf_relocate_section): Likewise.
  474:         * elf32-i860.c (elf32_i860_relocate_section): Likewise.
  475:         * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
  476:         * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
  477:         * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
  478:         * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
  479:         * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
  480:         * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
  481:         * elf32-s390.c (elf_s390_relocate_section): Likewise.
  482:         * elf32-sh.c (sh_elf_relocate_section): Likewise.
  483:         * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
  484:         * elf32-v850.c (v850_elf_relocate_section) Likewise.
  485:         * elf32-vax.c (elf_vax_relocate_section): Likewise.
  486:         * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
  487:         * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
  488:         * elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
  489:         * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
  490:         * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
  491:         * elf64-s390.c (elf_s390_relocate_section): Likewise.
  492:         * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
  493:         * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
  494:         * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
  495:         * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
  496: 
  497:         * elf32-cris.c (cris_elf_relocate_section): Don't recalculate symbol
  498:         section for reloc output.
  499:         * elf32-i370.c (i370_elf_relocate_section): Likewise.
  500:         * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
  501:         * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
  502:         * elf32-vax.c (elf_vax_relocate_section): Likewise.
  503:         * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
  504:         * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
  505: 
  506:         * elf32-ppc.c (ppc_elf_relocate_section): Don't recalculate everything
  507:         for R_PPC_RELAX32 reloc.  Don't bother checking ppc_elf_install_value
  508:         return value.
  509:         * elf64-ppc.c (ppc64_elf_relocate_section <R_PPC64_TOC>): Sanity check
  510:         sec->id.
  511: 
  512: 2003-11-05  Alan Modra  <amodra@bigpond.net.au>
  513: 
  514:         * elf32-d10v.c (extract_rel_addend, insert_rel_addend): New functions.
  515:         (elf32_d10v_relocate_section): Use them to handle -r reloc
  516:         adjustments, and in place of _bfd_elf_rela_local_sym.
  517: 
  518:         * cpu-iq2000.c (arch_info_struct): Warning fix.
  519: 
  520: 2003-11-05  Alan Modra  <amodra@bigpond.net.au>
  521: 
  522:         * elf32-hppa.c (ELIMINATE_COPY_RELOCS): Define.
  523:         (elf32_hppa_copy_indirect_symbol): Don't copy NON_GOT_REF on
  524:         weakdefs.
  525:         (elf32_hppa_check_relocs): Use ELIMINATE_COPY_RELOCS.
  526:         (elf32_hppa_adjust_dynamic_symbol): Likewise.  Copy weakdef
  527:         NON_GOT_REF.
  528:         (allocate_dynrelocs): Use ELIMINATE_COPY_RELOCS and
  529:         SYMBOL_CALLS_LOCAL.  Discard relocs for undef weak syms with
  530:         non-default visibility.
  531:         (elf32_hppa_relocate_section): Use ELIMINATE_COPY_RELOCS and
  532:         SYMBOL_CALLS_LOCAL.
  533: 
  534: 2003-11-04  Alan Modra  <amodra@bigpond.net.au>
  535: 
  536:         * aout-target.h, aoutf1.h, bfdio.c, bfdwin.c: Update copyright date.
  537:         * coff-apollo.c, coff-sparc.c, coff-w65.c, coff-we32k.c: Ditto.
  538:         * coff-z8k.c, coffgen.c, cpu-frv.c, cpu-h8500.c, cpu-hppa.c: Ditto.
  539:         * cpu-ia64-opc.c, cpu-m10300.c, cpu-mips.c, cpu-msp430.c: Ditto.
  540:         * cpu-rs6000.c, cpu-z8k.c, efi-app-ia32.c, elf32-am33lin.c: Ditto.
  541:         * gen-aout.c, hash.c, hp300hpux.c, init.c, mach-o.c: Ditto.
  542:         * nlm-target.h, nlm.c, som.h, stabs.c, sysdep.h, xsym.h: Ditto.
  543: 
  544:         * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Fix
  545:         "dereferencing type-punned pointer" warnings.
  546: 
  547:         * aout-adobe.c (aout_adobe_set_section_contents): Constify location.
  548:         * aoutx.h (NAME(aout,set_section_contents)): Ditto.
  549:         * bfd-in2.h: Regenerate.
  550:         * binary.c (binary_set_section_contents): Ditto.
  551:         * bout.c (b_out_set_section_contents): Ditto.
  552:         * coff-tic54x.c (tic54x_set_section_contents): Ditto.
  553:         * coffcode.h (coff_set_section_contents): Ditto.
  554:         * ecoff.c (_bfd_ecoff_set_section_contents): Ditto.
  555:         * elf-bfd.h (_bfd_elf_set_section_contents): Ditto.
  556:         * elf.c (_bfd_elf_set_section_contents): Ditto.
  557:         * elfxx-mips.c (_bfd_mips_elf_set_section_contents): Ditto.
  558:         * elfxx-mips.h (_bfd_mips_elf_set_section_contents): Ditto.
  559:         * i386msdos.c (msdos_set_section_contents): Ditto.
  560:         * ieee.c (ieee_set_section_contents): Ditto.
  561:         * ihex.c (ihex_set_section_contents): Ditto.
  562:         * libaout.h (NAME(aout,set_section_contents)): Ditto.
  563:         * libbfd-in.h (_bfd_nowrite_set_section_contents): Ditto.
  564:         (_bfd_generic_set_section_contents): Ditto.
  565:         * libbfd.h: Regenerate.
  566:         * libbfd.c (_bfd_generic_set_section_contents): Ditto.
  567:         * libecoff.h (_bfd_ecoff_set_section_contents): Ditto.
  568:         * libnlm.h (nlmNAME(set_section_contents)): Ditto.
  569:         (struct nlm_backend_data <nlm_mangle_relocs>): Ditto.
  570:         * mmo.c (mmo_set_section_contents): Ditto.
  571:         * nlm32-alpha.c (nlm_alpha_mangle_relocs): Ditto.
  572:         * nlm32-i386.c (nlm_i386_mangle_relocs): Ditto.
  573:         * nlm32-ppc.c (nlm_powerpc_mangle_relocs): Ditto.
  574:         * nlm32-sparc.c (nlm_sparc_mangle_relocs): Ditto.
  575:         * nlmcode.h (nlm_set_section_contents): Ditto.
  576:         * oasys.c (oasys_set_section_contents): Ditto.
  577:         * pdp11.c (NAME(aout,set_section_contents)): Ditto.
  578:         * ppcboot.c (ppcboot_set_section_contents): Ditto.
  579:         * srec.c (srec_set_section_contents): Ditto.
  580:         * targets.c (BFD_JUMP_TABLE_WRITE <_bfd_set_section_contents>): Ditto.
  581:         * tekhex.c (tekhex_set_section_contents): Ditto.
  582:         (move_section_contents): Ditto.
  583:         * versados.c (versados_set_section_contents): Ditto.
  584:         * vms-misc.c (_bfd_save_vms_section): Ditto.
  585:         * vms.c (vms_set_section_contents): Ditto.
  586:         * vms.h (_bfd_save_vms_section): Ditto.
  587: 
  588: 2003-11-04  Alan Modra  <amodra@bigpond.net.au>
  589: 
  590:         * elf64-ppc.c (ppc_size_one_stub): Size relbrlt.  Accept info arg
  591:         rather than htab.
  592:         (ppc64_elf_size_stubs): Adjust ppc_size_one_stub traversal.  Zero
  593:         relbrlt size.
  594:         (ppc64_elf_build_stubs): Allocate space for relbrlt.
  595: 
  596: 2003-11-04  Alan Modra  <amodra@bigpond.net.au>
  597: 
  598:         * bfd-in.h (_bfd_elf_tls_setup): Declare.
  599:         * bfd-in2.h: Regenerate.
  600:         * elf-bfd.h (struct elf_link_tls_segment): Delete.
  601:         (struct elf_link_hash_table): Add tls_sec and tls_size.
  602:         * elf.c (_bfd_elf_link_hash_table_init): Init tls_sec and tls_size.
  603:         * elflink.c (_bfd_elf_tls_setup): New function.
  604:         * elflink.h (struct elf_final_link_info): Remove first_tls_sec.
  605:         (elf_bfd_final_link): Don't set first_tls_sec here.  Update code
  606:         saving tls segment info, round segment size up.
  607:         (elf_link_output_extsym): Adjust code using tls segment info.
  608:         (elf_link_input_bfd): Likewise.
  609:         * elf32-i386.c (dtpoff_base, tpoff): Likewise.
  610:         * elf32-s390.c (dtpoff_base, tpoff): Likewise.
  611:         * elf32-sh.c (dtpoff_base, tpoff): Likewise.
  612:         * elf32-sparc.c (dtpoff_base, tpoff): Likewise.
  613:         * elf64-s390.c (dtpoff_base, tpoff): Likewise.
  614:         * elf64-x86-64.c (dtpoff_base, tpoff): Likewise.
  615:         * elfxx-ia64.c (elfNN_ia64_tprel_base): Likewise.
  616:         (elfNN_ia64_dtprel_base): Likewise.
  617:         * elf64-alpha.c (alpha_get_dtprel_base): Likewise.
  618:         (alpha_get_tprel_base): Likewise.
  619:         (struct alpha_relax_info): Remove tls_segment.
  620:         (elf64_alpha_relax_got_load): Adjust invocation of
  621:         alpha_get_dtprel_base and alpha_get_tprel_base.
  622:         (elf64_alpha_relax_tls_get_addr): Likewise.
  623:         (elf64_alpha_relax_section): Likewise.
  624:         (elf64_alpha_relocate_section): Likewise.
  625:         (elf64_alpha_relax_find_tls_segment): Delete.
  626:         * elf32-ppc.c (struct ppc_elf_link_hash_table): Remove tls_sec.
  627:         (ppc_elf_tls_setup): Call _bfd_elf_tls_setup.  Return section.
  628:         (ppc_elf_relocate_section): Adjust to use elf.tls_sec.
  629:         * elf32-ppc.h (ppc_elf_tls_setup): Update.
  630:         * elf64-ppc.c (struct ppc_link_hash_table): Remove tls_sec.
  631:         (ppc64_elf_tls_setup): Call _bfd_elf_tls_setup.  Return section.
  632:         (ppc64_elf_tls_optimize): Adjust to use elf.tls_sec.
  633:         (ppc64_elf_relocate_section): Likewise.
  634:         * elf64-ppc.h (ppc64_elf_tls_setup): Update.
  635: 
  636: 2003-11-03  Daniel Jacobowitz  <drow@mvista.com>
  637: 
  638:         * elf-bfd.h (struct elf_backend_data): Remove plt_header_size.
  639:         * elf-m10300.c (elf_backend_plt_header_size): Don't define.
  640:         * elf32-arm.h (elf_backend_plt_header_size): Don't define.
  641:         * elf32-cris.c (elf_backend_plt_header_size): Don't define.
  642:         * elf32-i386.c (elf_backend_plt_header_size): Don't define.
  643:         * elf32-mips.c (elf_backend_plt_header_size): Don't define.
  644:         * elf32-ppc.c (elf_backend_plt_header_size): Don't define.
  645:         * elf32-s390.c (elf_backend_plt_header_size): Don't define.
  646:         * elf32-sh.c (elf_backend_plt_header_size): Don't define.
  647:         * elf32-sparc.c (elf_backend_plt_header_size): Don't define.
  648:         * elf64-alpha.c (elf_backend_plt_header_size): Don't define.
  649:         * elf64-hppa.c (elf_backend_plt_header_size): Don't define.
  650:         * elf64-mips.c (elf_backend_plt_header_size): Don't define.
  651:         * elf64-ppc.c (elf_backend_plt_header_size): Don't define.
  652:         * elf64-s390.c (elf_backend_plt_header_size): Don't define.
  653:         * elf64-sh64.c (elf_backend_plt_header_size): Don't define.
  654:         * elf64-sparc.c (elf_backend_plt_header_size): Don't define.
  655:         * elf64-x86-64.c (elf_backend_plt_header_size): Don't define.
  656:         * elfn32-mips.c (elf_backend_plt_header_size): Don't define.
  657:         * elfxx-ia64.c (elf_backend_plt_header_size): Don't define.
  658:         * elfxx-target.h (elf_backend_plt_header_size): Don't define
  659:         or include in target initializer.
  660: 
  661: 2003-11-03  Andrew Cagney  <cagney@redhat.com>
  662: 
  663:         * section.c (bfd_set_section_contents): Make the "location" buffer
  664:         constant.
  665:         * bfd-in2.h: Re-generate.
  666: 
  667: 2003-10-30  Andrew Cagney  <cagney@redhat.com>
  668: 
  669:         * syms.c: Replace "struct symbol_cache_entry" with "struct
  670:         bfd_symbol".
  671:         * vms.h, targets.c, section.c, reloc.c, peicode.h: Ditto.
  672:         * mipsbsd.c, elf.c, linker.c, elf-bfd.h, ecoff.c: Ditto.
  673:         * cpu-z8k.c, cpu-ns32k.c, cpu-h8500.c, bfd.c, bfd-in.h: Ditto.
  674:         * bfd-in2.h: Re-generate.
  675: 
  676: 2003-10-30  Jakub Jelinek  <jakub@redhat.com>
  677: 
  678:         * elfxx-ia64.c: Include objalloc.h, hashtab.h.
  679:         (struct elfNN_ia64_local_hash_entry): Remove root. Add id and r_sym
  680:         fields.
  681:         (struct elfNN_ia64_local_hash_table): Remove.
  682:         (struct elfNN_ia64_link_hash_table): Change loc_hash_table's type
  683:         to htab_t.  Add loc_hash_memory field.
  684:         (elfNN_ia64_local_hash_table_init, elfNN_ia64_new_loc_hash_entry):
  685:         Removed.
  686:         (elfNN_ia64_local_htab_hash, elfNN_ia64_local_htab_eq): New
  687:         functions.
  688:         (elfNN_ia64_hash_table_create): Use hashtab.h hashtable for
  689:         loc_hash_table.  Initialize loc_hash_memory.
  690:         (elfNN_ia64_hash_table_free): New function.
  691:         (elfNN_ia64_local_hash_lookup): Remove.
  692:         (elfNN_ia64_local_dyn_sym_thunk): Change into htab_traverse
  693:         callback.
  694:         (elfNN_ia64_dyn_sym_traverse): Use htab_traverse.
  695:         (get_local_sym_hash): Use hashtab.h hashtable for loc_hash_table.
  696:         (bfd_elfNN_bfd_link_hash_table_free): Define.
  697: 
  698: 2003-10-30  Alan Modra