aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2005-05-18daily updateAlan Modra1-1/+1
2005-05-17 * elf.c (_bfd_elf_write_object_contents): Check for non-NULLDaniel Jacobowitz4-15/+29
elf_shstrtab. * format.c (bfd_check_format_matches): Set output_has_begun for both_direction. * section.c (bfd_set_section_contents): Use bfd_write_p. Remove special case for both_direction.
2005-05-17(group_signature): Check for a group section which is actually a (corrupt)Nick Clifton2-1/+22
symbol table section in disguise and prevent an infinite loop from occurring.
2005-05-172005-05-17 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-24/+23
* elfxx-ia64.c (elfNN_ia64_relax_brl): Undo the change made on 2005-02-16.
2005-05-172005-05-17 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-3/+11
* elfxx-ia64.c (elfNN_ia64_relax_br): Keep the original predicate on slot 0 only if slot 0 isn't br.
2005-05-17bfd/H.J. Lu3-2/+11
2005-05-17 H.J. Lu <hongjiu.lu@intel.com> PR 797 * elf32-i386.c (elf_i386_size_dynamic_sections): Also remove empty sdynbss section. * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise. ld/ 2005-05-17 H.J. Lu <hongjiu.lu@intel.com> PR 797 * ldexp.c (exp_fold_tree_1): Renamed from exp_fold_tree and take take a bfd_boolean, mark_used. Ignore assert failure if mark_used is TRUE. (exp_fold_tree) Call exp_fold_tree_1 with mark_used == FALSE. (exp_fold_tree_no_dot): Updated to take a bfd_boolean, mark_used and pass down. (fold_unary): Likewise. (fold_binary): Likewise. (fold_trinary): Likewise. (exp_binop): Add FALSE to call to exp_fold_tree_no_dot. (exp_trinop): Likewise. (exp_unop): Likewise. (exp_nameop): Likewise. (exp_get_vma): Likewise. (exp_get_fill): Likewise. (exp_get_abs_int): Likewise. (fold_name): Likewise. Set SEC_KEEP in output section flags. (exp_mark_used_section): New. * ldexp.h (exp_mark_used_section): New. * ldlang.c (lang_output_section_statement_lookup_1): Set the ignored field to FALSE. (lang_mark_used_section_1): New. (lang_mark_used_section): Call lang_mark_used_section_1. (strip_excluded_output_sections): Call lang_mark_used_section and check for unused sections. (lang_size_sections_1): Skip an output section if it should be ignored. (lang_do_assignments_1): Likewise. (lang_process): Don't call lang_mark_used_section here. * ldlang.h (lang_output_section_statement_type): Change all_input_readonly to bitfield. Add ignored. ld/testsuite/ 2005-05-17 H.J. Lu <hongjiu.lu@intel.com> PR 797 * empty-aligned.d: New file. * empty-aligned.exp: Likewise. * empty-aligned.s: Likewise. * empty-aligned.t: Likewise.
2005-05-17(bfd_section_from_shdr): Add sanity check when parsing dynamic sections.Nick Clifton2-0/+8
2005-05-17ldlang.c (print_assignment): Do not rely upon a valid result having a sectionNick Clifton2-1/+9
associated with it. elf32-arm.c (elf32_arm_final_link_relocate): Gracefully handle the situation where a symbols's section is not known but a section relative R_ARM_RELATIVE reloc has to be generated for the Symbian OS.
2005-05-17 * elf32-ppc.c (LIS_11. LIS_12): Define.Alan Modra2-38/+100
(LWZU_0_X_12, LWZ_0_X_12, LWZ_12_4_12, LWZ_12_X_12): Define. (ppc_elf_finish_dynamic_sections): Provide non-pic plt call stub for --data-plt when building non-pie executables.
2005-05-17(v850_elf_relocate_section): Move code to test for the presence of a symbolNick Clifton2-9/+18
table to just before the symbol table is actually used.
2005-05-17daily updateAlan Modra1-1/+1
2005-05-162005-05-16 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-0/+151
PR 834 * elfxx-ia64.c (elfNN_ia64_relax_br): New. (elfNN_ia64_relax_section): Use it.
2005-05-16daily updateAlan Modra1-1/+1
2005-05-15daily updateAlan Modra1-1/+1
2005-05-14* elflink.c (bfd_elf_size_dynamic_sections): Use lbasename insteadMark Kettenis2-2/+7
of basename.
2005-05-14include/elf/Alan Modra2-10/+17
* ppc.h (DT_PPC_GOT): Rename from DT_PPC_GLINK. bfd/ * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set DT_PPC_GOT, not DT_PPC_GLINK. (ppc_elf_finish_dynamic_sections): Likewise. binutils/ * readelf.c (get_ppc_dynamic_type): Display DT_PPC_GOT, not DT_PPC_GLINK.
2005-05-14Fix obvious typo in comment.Fred Fish3-2/+7
2005-05-13 Fred Fish <fnf@specifixinc.com> * libbfd-in.h: Fix a comment typo, 'neaderst' -> 'nearest' * libbfd.h: Rebuilt.
2005-05-14 * elf32-xtensa.c (xtensa_get_property_section_name): Add missingBob Wilson2-2/+7
periods in linkonce_kind values.
2005-05-14daily updateAlan Modra1-1/+1
2005-05-13daily updateAlan Modra1-1/+1
2005-05-122005-05-12 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-0/+6
* elf32-i386.c (elf_i386_relocate_section): Allow R_386_GOTOFF against protected function when building executable.
2005-05-12 * elf32-ppc.c (LWZU_0_X_11): Delete.Alan Modra2-38/+94
(B, LWZ_11_X_11, LWZ_11_X_30, MTCTR_11): Define. (ppc_elf_select_plt_layout): Set .got flags too. Formatting. (ppc_elf_size_dynamic_sections): Allocate space for .glink branch table. (ppc_elf_finish_dynamic_symbol): Point .plt entries into the branch table. (ppc_elf_finish_dynamic_sections): Adjust DT_PPC_GLINK value. Generate .glink branch table and updated stubs.
2005-05-12daily updateAlan Modra1-1/+1
2005-05-11 * reloc.c (BFD_RELOC_HI16_PCREL): Define.Alan Modra6-65/+424
(BFD_RELOC_HI16_S_PCREL, BFD_RELOC_LO16_PCREL): Define. * elf32-ppc.c (GLINK_PLTRESOLVE, GLINK_ENTRY_SIZE): Define. (CROR_151515, CROR_313131): Delete. (ADDIS_11_11, ADDI_11_11, SUB_11_11_30, ADD_0_11_11, ADD_11_0_11, LWZ_0_4_30, MTCTR_0, LWZ_12_8_30, BCTR, ADDIS_11_30, LWZU_0_X_11): Define. (ppc_elf_howto_raw): Add R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI and R_PPC_REL16_HA entries. (ppc_elf_reloc_type_lookup): Convert new bfd reloc types. (ppc_elf_addr16_ha_reloc): Also handle R_PPC_REL16_HA. (struct ppc_elf_link_hash_table): Add glink, glink_pltresolve, new_plt, and old_plt. (ppc_elf_create_dynamic_sections): Create .glink section. (ppc_elf_check_relocs): Set new_plt and old_plt. (ppc_elf_select_plt_layout): New function. (ppc_elf_tls_setup): Set plt output section elf type and flags. (allocate_got): Handle differences between old and new got layout. (allocate_dynrelocs): Likewise for plt. (ppc_elf_size_dynamic_sections): Likewise. Allocate memory for .glink. Don't allocate memory for old bss .plt. Emit DT_PPC_GLINK. (ppc_elf_relax_section): Rename ppc_info to htab. Handle .glink destination of R_PPC_PLTREL24 relocs. (ppc_elf_relocate_section): Handle new relocs and changed destination of R_PPC_PLTREL24. (ppc_elf_finish_dynamic_symbol): Init new style plt and handle differences in layout. (ppc_elf_finish_dynamic_sections): Set DT_PPC_GLINK value. Don't put a blrl in new got. Write glink contents. * elf32-ppc.h (ppc_elf_select_plt_layout): Declare. * libbfd.h: Regenerate. * bfd-in2.h: Regenerate.
2005-05-11 * elf32-i386.c (elf_i386_finish_dynamic_sections): Fix signednessAndreas Schwab2-1/+6
warning.
2005-05-112005-05-10 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-18/+43
* elf.c (_bfd_elf_make_section_from_shdr): Only check debug section if SEC_ALLOC isn't set.
2005-05-11daily updateAlan Modra1-1/+1
2005-05-102005-05-09 Kelley Cook <kcook@gcc.gnu.org>Kelley Cook7-47/+1079
* configure.in: Replace AC_COMPILE_CHECK_SIZEOF with AC_CHECK_SIZEOF. * acinclude.m4: Don't sinclude accross.m4. * config.in, configure, Makefile.in, doc/Makefile.in: Regenerate.
2005-05-10daily updateAlan Modra1-1/+1
2005-05-09 * Makefile.am: Use a temporary file to build chew.Daniel Jacobowitz3-4/+15
* Makefile.in: Regenerated.
2005-05-09 * elf64-ppc.c (struct ppc64_elf_obj_tdata): Add has_dotsym.Alan Modra2-14/+51
(ppc64_elf_add_symbol_hook): Set has_dotsym. (ppc64_elf_check_directives): Only process syms when has_dotsym. (func_desc_adjust): Hide fake function descriptors when function code entry is defined. (adjust_opd_syms): Adjust for deleted_section becoming union field.
2005-05-09 * elfcode.h (elf_object_p): Add more sanity checks on elf header.Alan Modra2-6/+52
2005-05-09daily updateAlan Modra1-1/+1
2005-05-082005-05-08 Dave Korn <dave.korn@artimi.com>Dave Korn2-0/+13
* coff-tic80.c: Undefine _CONST after system headers to prevent clash with tic80-specific definition in include/coff/tic80.h
2005-05-082005-05-08 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-1/+10
PR 939 * elflink.c (elf_link_output_extsym): Use output_bfd if h->root.u.def.section is bfd_abs_section_ptr when reporting error.
2005-05-08daily updateAlan Modra1-1/+1
2005-05-072005-05-07 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu19-64/+865
* elf-bfd.h (elf_backend_data): Update special_sections to array of pointer to bfd_elf_special_section. * elf.c (special_sections): Likewise. * elf32-arm.c (elf32_arm_symbian_special_sections): Likewise. * elf32-m32r.c (m32r_elf_special_sections): Likewise. * elf32-m68hc11.c (elf32_m68hc11_special_sections): Likewise. * elf32-m68hc12.c (elf32_m68hc12_special_sections): Likewise. * elf32-mcore.c (mcore_elf_special_sections): Likewise. * elf32-ppc.c (ppc_elf_special_sections): Likewise. * elf32-sh64.c (sh64_elf_special_sections): Likewise. * elf32-v850.c (v850_elf_special_sections): Likewise. * elf32-xtensa.c (elf_xtensa_special_sections): Likewise. * elf64-alpha.c (elf64_alpha_special_sections): Likewise. * elf64-hppa.c (elf64_hppa_special_sections): Likewise. * elf64-ppc.c (ppc64_elf_special_sections): Likewise. * elf64-sh64.c (sh64_elf64_special_sections): Likewise. * elfxx-ia64.c (elfNN_ia64_special_sections): Likewise. * elfxx-mips.c (_bfd_mips_elf_special_sections): Likewise. * elfxx-mips.h (_bfd_mips_elf_special_sections): Likewise. * elf.c (get_special_section): Updated.
2005-05-07Move doc/ entries into doc/ChangeLog.Nick Clifton2-77/+12
Remove duplicated ChangeLog entry.
2005-05-07bfd/Alan Modra9-276/+324
* elf-bfd.h (struct elf_backend_data): Remove got_symbol_offset. * elfxx-target.h (elf_backend_got_symbol_offset): Delete. * elflink.c (_bfd_elf_create_got_section): Use zero in place of got_symbol_offset. * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Likewise. * elf32-frv.c (_frv_create_got_section): Likewise. * elf32-i370.c (i370_elf_finish_dynamic_sections): Delete ppc code. (elf_backend_got_symbol_offset): Don't define. * elf64-ppc.c (elf_backend_got_symbol_offset): Don't define. * elf32-ppc.c (struct ppc_elf_link_hash_table): Add got_header_size and got_gap. (ppc_elf_create_got): Tidy. (ppc_elf_create_dynamic_sections): Don't set SEC_IN_MEMORY for .plt. (ppc_elf_check_relocs): Reduce string comparisons by using elf.hgot. (ppc_elf_gc_sweep_hook): Likewise. (ppc_elf_relocate_section): Likewise. (ppc_elf_finish_dynamic_symbol): Likewise. (allocate_got): New function. (allocate_dynrelocs): Use allocate_got. (ppc_elf_size_dynamic_sections): Likewise. Delay tlsld_got allocation so that local got can refcount it. Set got_header_size. (ppc_elf_relocate_section): Use value of elf.hgot rather than hard- coded 4. (ppc_elf_finish_dynamic_sections): Likewise. (elf_backend_got_symbol_offset): Don't define. (elf_backend_got_header_size): Ditto. ld/testsuite/ * ld-powerpc/tlsexe32.d: Update for changed got layout. * ld-powerpc/tlsexe32.g: Likewise. * ld-powerpc/tlsexe32.r: Likewise. * ld-powerpc/tlsso32.d: Likewise. * ld-powerpc/tlsso32.g: Likewise. * ld-powerpc/tlsso32.r: Likewise.
2005-05-07daily updateAlan Modra1-1/+1
2005-05-06Correct changelog snafu.Daniel Jacobowitz2-0/+10
2005-05-06daily updateAlan Modra1-1/+1
2005-05-05Fix ia64-hpux build failure, patch from Steve Ellcey.Jim Wilson5-92/+253
* configure.in (ACX_HEADER_STRING): New. * configure: Regenerate. * config.in: Regenerate. * sysdep.h (STRING_WITH_STRINGS): Use.
2005-05-052005-05-05 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-3/+7
* elf.c (_bfd_elf_close_and_cleanup): Only call _bfd_dwarf2_cleanup_debug_info on bfd_object.
2005-05-05bfd/H.J. Lu2-2/+7
2005-05-05 H.J. Lu <hongjiu.lu@intel.com> * elflink.c (_bfd_elf_provide_section_bound_symbols): Use "__bss_start" instead of "_edata" as fallback. ld/ 2005-05-05 H.J. Lu <hongjiu.lu@intel.com> * scripttempl/elf.sc: Document the usage of __bss_start.
2005-05-052005-05-05 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu3-2/+7
* Makefile.am (INCLUDES): Remove -D_GNU_SOURCE. * Makefile.in: Regenerate.
2005-05-052005-05-05 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-0/+10
* bfd-in2.h: Regenerated.
2005-05-052005-05-05 Paul Brook <paul@codesourcery.com>Paul Brook13-217/+640
bfd/ * config.bfd: Use bfd_elf32_i386_vxworks_vec for i?86-*-vxworks. * configure.in: Add bfd_elf32_i386_vxworks_vec. i386 targets need elf-vxworks.lo. * configure: Regenerate. * Makefile.am (BFD32_BACKENDS): Add elf-vxworks.lo. (BFD32_BACKENDS_CFILES): Add elf-vxworks.c. (elf32-i386.lo): Depend on elf-vxworks.h. (elf-vxworks.lo): New rule. * Makefile.in: Regenerate. * elf-bfd.h (elf_backend_data): Update type of elf_backend_emit_relocs. (_bfd_elf_link_output_relocs): Update prototype. * elflink.c (_bfd_elf_link_output_relocs): Always use bed->elf_backend_emit_relocs when outputting relocations. * elfxx-target.h (elf_backend_emit_relocs): Default to _bfd_elf_link_output_relocs. * targets.c (bfd_elf32_i386_vxworks_vec): Declare. (_bfd_target_vector): Add bfd_elf32_i386_vxworks_vec. * elf32-i386.c: Add elf32-i386-vxworks target BFD. (elf_i386_plt0_entry): Remove padding. (elf_i386_pic_plt0_entry): Ditto. (PLTRESOLVE_RELOCS_SHLIB, PLTRESOLVE_RELOCS): Define. (PLT_NON_JUMP_SLOT_RELOCS): Define. (elf_i386_link_hash_table): Add srelplt2, hgot, hplt, is_vxworks and plt0_pad_byte fields. (elf_i386_link_hash_table_create): Zero them. (elf_i386_create_dynamic_sections): Create static relocation section. (allocate_dynrelocs): Allocate space for static PLT relocations. (elf_i386_size_dynamic_sections): Save shortcuts to PLT and GOT symbols. Give PLT symbols function type. Don't strip PLT sections if we have exported symbols from them. (elf_i386_finish_dynamic_symbol): Fill in VxWorks PLT static relocation section. Don't mark _GLOBAL_OFFSET_TABLE_ as absolute on VxWorks. (elf_i386_finish_dynamic_sections): Allow different pad bytes. Add relocation for GOT location. Fill in PLT static relocations. (elf_i386_vxworks_link_hash_table_create): New function. (elf_i386_vxworks_link_output_symbol_hook): New function. * elf-vxworks.h: New file. gas/ * config/tc-i386.h (ELF_TARGET_FORMAT): Define for TE_VXWORKS. gas/testsuite/ * gas/i386/i386.exp: Don't run divide test on vxworks. ld/ * Makefile.am: Add eelf_i386_vxworks. * Makefile.in: Regenerate. * configure.tgt: Make i?86-*-vxworks use targ_emul=elf_i386_vxworks. * emulparams/elf_i386_vxworks.sh: New file. * emulparams/vxworks.sh: New file. * scripttempl/elf.sc: Add DATA_END_SYMBOLS and ETEXT_NAME.
2005-05-052005-05-05 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu29-514/+640
* section.c (bfd_make_section_anyway_with_flags): New. (bfd_make_section_anyway): Call bfd_make_section_anyway_with_flags, (bfd_make_section_with_flags): New. (bfd_make_section): Call bfd_make_section_with_flags. * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Call bfd_make_section_with_flags/bfd_make_section_anyway_with_flags instead of bfd_make_section/bfd_make_section and don't call bfd_set_section_flags. (mn10300_elf_check_relocs): Likewise. (_bfd_mn10300_elf_create_dynamic_sections): Likewise. * elf32-arm.c (create_got_section): Likewise. (bfd_elf32_arm_add_glue_sections_to_bfd): Likewise. (elf32_arm_check_relocs): Likewise. * elf32-cris.c (cris_elf_check_relocs): Likewise. * elf32-frv.c (elf32_frv_add_symbol_hook): Likewise. (_frv_create_got_section): Likewise. (elf32_frvfdpic_create_dynamic_sections): Likewise. * elf32-hppa.c (elf32_hppa_create_dynamic_sections): Likewise. (elf32_hppa_check_relocs): Likewise. * elf32-i370.c (i370_elf_create_dynamic_sections): Likewise. (i370_elf_check_relocs): Likewise. * elf32-i386.c (create_got_section): Likewise. (elf_i386_check_relocs): Likewise. * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise. (create_got_section): Likewise. (m32r_elf_create_dynamic_sections): Likewise. (m32r_elf_check_relocs): Likewise. * elf32-m68k.c (elf_m68k_check_relocs): Likewise. * elf32-ppc.c (ppc_elf_create_got): Likewise. (ppc_elf_create_dynamic_sections): Likewise. (ppc_elf_add_symbol_hook): Likewise. (ppc_elf_check_relocs): Likewise. * elf32-s390.c (create_got_section): Likewise. (elf_s390_check_relocs): Likewise. * elf32-sh.c (create_got_section): Likewise. (sh_elf_create_dynamic_sections): Likewise. (sh_elf_check_relocs): Likewise. * elf32-vax.c (elf_vax_check_relocs): Likewise. * elf32-xstormy16.c (xstormy16_elf_check_relocs): Likewise. * elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Likewise. (add_extra_plt_sections): Likewise. * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise. (elf64_alpha_create_got_section): Likewise. (elf64_alpha_create_dynamic_sections): Likewise. (elf64_alpha_check_relocs): Likewise. * elf64-hppa.c (get_reloc_section): Likewise. (get_opd): Likewise. (get_plt): Likewise. (get_dlt): Likewise. (get_stub): Likewise. (elf64_hppa_create_dynamic_sectionso): Likewise. * elf64-mmix.c (mmix_elf_check_common_relocs): Likewise. * elf64-ppc.c (create_linkage_sections): Likewise. (ppc64_elf_check_relocs): Likewise. * elf64-s390.c (create_got_section): Likewise. (elf_s390_check_relocs): Likewise. * elf64-sh64.c (sh_elf64_check_relocs): Likewise. (sh64_elf64_create_dynamic_sections): Likewise. * elf64-x86-64.c (create_got_section): Likewise. (elf64_x86_64_check_relocs): Likewise. * elflink.c (_bfd_elf_create_got_section): Likewise. (_bfd_elf_link_create_dynamic_sections): Likewise. (elf_link_add_object_symbols): Likewise. * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise. (elfNN_ia64_create_dynamic_sections): Likewise. (get_fptr): Likewise. (get_pltoff): Likewise. (get_reloc_section): Likewise. (elfNN_ia64_object_p): Likewise. * elfxx-mips.c (mips_elf_rel_dyn_section): Likewise. (mips_elf_create_compact_rel_section): Likewise. (mips_elf_create_got_section): Likewise. (_bfd_mips_elf_create_dynamic_sections): Likewise. * elfxx-sparc.c (create_got_section): Likewise. (_bfd_sparc_elf_check_relocs): Likewise. * elf.c (_bfd_elf_new_section_hook): Call _bfd_elf_get_sec_type_attr on linker created sections.
2005-05-052005-05-05 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-2/+6
PR 882 * elflink.c (_bfd_elf_link_assign_sym_version): Allow version script on executable.