aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2003-07-10 * elf64-ppc.c (bfd_elf64_mkobject): Define.Alan Modra4-130/+298
(struct ppc64_elf_obj_tdata): New. (ppc64_elf_tdata, ppc64_tlsld_got): Define. (ppc64_elf_mkobject): New function. (struct got_entry): Add "owner". Move "tls_type". (struct ppc_link_hash_table): Delete "relgot", "tlsld_got". (ppc64_elf_init_stub_bfd): New function. (create_got_section): Create header .got in dynobj. Create .got and .rela.got in each bfd. Stash pointers in ppc64_elf_obj_tdata. (ppc64_elf_create_dynamic_sections): Don't call create_got_section. Look for dynobj .got, and test it. (ppc64_elf_copy_indirect_symbol): Adjust for changed got. (update_local_sym_info): Likewise. (ppc64_elf_check_relocs): Likewise. (ppc64_elf_gc_sweep_hook): Likewise. (ppc64_elf_tls_optimize): Likewise. (allocate_dynrelocs): Likewise. (ppc64_elf_size_dynamic_sections): Likewise. (ppc64_elf_relocate_section): Likewise. (ppc64_elf_next_toc_section): Update comment. (toc_adjusting_stub_needed): Remove unneeded cast. (ppc64_elf_build_stubs): Check for stub sections in stub bfd by testing section flags. (ppc64_elf_build_stubs): Likewise. (ppc64_elf_size_stubs): Likewise. Remove stub_bfd param. (ppc64_elf_finish_dynamic_sections): Write out got sections. (func_desc_adjust): Copy over dynamic info for undef weaks. * elf64-ppc.h (ppc64_elf_init_stub_bfd): Declare. (ppc64_elf_size_stubs): Update prototype. * elflink.h (elf_link_sort_relocs): Use link_orders to find reldyn input sections rather than scanning dynobj.
2003-07-10daily updateAlan Modra1-1/+1
2003-07-09 * elfxx-mips.c (mips_elf_link_hash_entry): Remove min_dyn_reloc_index.Richard Sandiford2-134/+13
(bfd_mips_elf_swap_msym_in, bfd_mips_elf_swap_msym_out): Delete. (mips_elf_create_msym_section): Delete. (mips_elf_create_dynamic_relocation): Don't set min_dyn_reloc_index. (_bfd_mips_elf_copy_indirect_symbol): Likewise. (_bfd_mips_elf_create_dynamic_sections): Don't create .msym. (_bfd_mips_elf_size_dynamic_sections): Don't calculate its size. (_bfd_mips_elf_size_dynamic_sections): Don't add DT_MIPS_MSYM. (_bfd_mips_elf_finish_dynamic_symbol): Don't add symbols to .msym. (_bfd_mips_elf_finish_dynamic_sections): Likewise.
2003-07-09 * elfxx-mips.c (mips_elf_irix6_finish_dynamic_symbol): Make theRichard Sandiford2-0/+6
symbols protected.
2003-07-09 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Fix handlingRichard Sandiford2-2/+15
of relocations whose offset is -2.
2003-07-09 * bfd/elfxx-mips.c (mips_elf_create_dynamic_relocation): TreatRichard Sandiford2-6/+16
forced-local symbols like other locals. Don't create relocations against STN_UNDEF in irix objects.
2003-07-09 * bfd/elfxx-mips.c (mips_elf_create_dynamic_relocation): In SGI-Richard Sandiford2-1/+18
compatible objects, add the values of defined external symbols to the addend.
2003-07-09 * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): AlwaysRichard Sandiford2-16/+6
initialize a GOT entry to the symbol's st_value.
2003-07-09daily updateAlan Modra1-1/+1
2003-07-08 * elf-bfd.h (struct elf_obj_tdata): Move linker_section_pointers..Alan Modra3-7/+34
* elf32-ppc.c (struct ppc_elf_obj_tdata): ..to here. New. (ppc_elf_tdata): Define. (elf_local_ptr_offsets): Adjust. (ppc_elf_mkobject): New function. (bfd_elf32_mkobject): Define.
2003-07-08 * elfcode.h (elf_object_p): Allocate tdata via _bfd_set_format.Alan Modra4-15/+15
* elfcore.h (elf_core_file_p): Likewise. * section.c (bfd_section_init): Remove prototype.
2003-07-08daily updateAlan Modra1-1/+1
2003-07-07 * elf-bfd.h (struct elf_link_hash_entry): Remove linker_section_pointerAlan Modra4-305/+223
field. (enum elf_linker_section_enum): Delete. (struct elf_linker_section): Delete. (struct elf_linker_section_pointers): Delete. (struct elf_obj_tdata): Remove #if 0 chunk. Remove linker_section. Make linker_section_pointers a void**. (elf_local_ptr_offsets, elf_linker_section): Don't define. * elf32-ppc.c (enum elf_linker_section_enum): New, cut-down version of old item in elf-bfd.h. (struct elf_linker_section): Likewise. (struct elf_linker_section_pointers): Likewise. (elf_local_ptr_offsets): Define. (struct ppc_elf_link_hash_entry): Add linker_section_pointer. (ppc_elf_link_hash_newfunc): Init it. (struct ppc_elf_link_hash_table): Add sbss. (ppc_elf_link_hash_table_create): zmalloc rather than clearing individual fields. (elf_create_linker_section): Fold into.. (ppc_elf_create_linker_section): ..here. Remove hole_size code. Make rela section here if shared. (elf_find_pointer_linker_section): Pass lsect rather than enum. (elf_create_pointer_linker_section): Adjust. zalloc rather than clearing in a loop. (elf_finish_pointer_linker_section): Adjust. Don't make rela section here. (ppc_elf_check_relocs): Adjust. (ppc_elf_add_symbol_hook): Tighten hash creator test. Remove code creating .sbss by hand. * elf.c (_bfd_elf_link_hash_newfunc): Adjust.
2003-07-07 * elf32-s390.c (elf_howto_table): Change R_390_GOT12 toJakub Jelinek3-2/+9
complain_overflow_bitfield. * elf64-s390.c (elf_howto_table): Change R_390_GOT12 to complain_overflow_bitfield.
2003-07-07Add Clarke's surname to ChangeLog entryNick Clifton1-1/+1
2003-07-07daily updateAlan Modra1-1/+1
2003-07-06daily updateAlan Modra1-1/+1
2003-07-05daily updateAlan Modra1-1/+1
2003-07-04(MKDOC rule): Add $(CFLAGS) in case it contains CC_FOR_BUILD specific switches.Nick Clifton4-4/+10
2003-07-04 * elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): ReturnJakub Jelinek2-2/+7
true even if -pie.
2003-07-04bfd/Jakub Jelinek11-33/+143
* elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add rel_fptr_sec. (elfNN_ia64_dynamic_symbol_p): Change info->shared into !info->executable. (get_fptr): For -pie create .opd as writable section and create .rela.opd as well. (elfNN_ia64_check_relocs): Change info->shared into !info->executable. (allocate_fptr): Likewise. (allocate_dynrel_entries): Account for a relative reloc for -pie @fptr(). Don't account for a relative reloc if -pie want_ltoff_fptr for undefweak symbol. Account for an IPLT reloc in .rela.opd section if -pie. (set_got_entry): Don't create a relative reloc if -pie want_ltoff_fptr for undefweak symbol. (set_fptr_entry): Emit an IPLT reloc in .rela.opd for -pie. (elfNN_ia64_relocate_section): Emit a relative reloc for -pie @fptr(). * elfxx-ia64.c (elfNN_ia64_relocate_section): Issue undefined_symbol even if -pie. * elf32-i386.c (elf_i386_relocate_section): Likewise. * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. * elf64-s390.c (elf_s390_relocate_section): Likewise. * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. * elf32-s390.c (elf_s390_relocate_section): Likewise. * elf32-ppc.c (ppc_elf_relocate_section): Likewise. ld/ * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't include .opd if -pie. (OTHER_READWRITE_SECTIONS): Include .opd if -pie. * scripttempl/elf.sc: Use SHLIB_DATA_ADDR instead of DATA_ADDR if -pie.
2003-07-04* elf32-h8300.c (R_H8_DIR32A16): Fix name field.Nick Clifton2-2/+11
(elf32_h8_relax_section) <R_H8_DIR16A8>: Adjust position of relocation. <R_H8_DIR32A16>: Fix type of relocation. * ld-h8300/h8300.exp: Replace loop with explicit list. Run relax.d unconditionally. Run relax-2.d for *-elf targets. * ld-h8300/relax.d: Fix typo. * ld-h8300/relax.s: Add 0x prefixes. * ld-h8300/relad-2.[sd]: New test.
2003-07-04 * elf32-sh.c (sh_elf_create_dynamic_sections): Return if dynamicKaz Kojima2-30/+27
sections were created already. Remove unnecessary tests of the previous change.
2003-07-04 * elf32-sh.c (sh_elf_create_dynamic_sections): Don't callKaz Kojima2-19/+37
bfd_make_section for existing sections.
2003-07-04 * elf32-sparc.c (elf32_sparc_check_relocs): Don't callAlan Modra3-31/+40
create_got_section if we already have done so. * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise. (sh_elf_check_relocs): Likewise. (sh_elf_adjust_dynamic_symbol): Delete "dynobj" var. Use htab->root.dynobj instead. (sh_elf_check_relocs): Likewise. (sh_elf_finish_dynamic_sections): Likewise.
2003-07-04 * section.c (bfd_make_section): Return NULL for existing section.Alan Modra2-1/+5
2003-07-04 * elf32-ppc.c (ppc_elf_create_dynamic_sections): Don't callAlan Modra1-1/+4
ppc_elf_create_got if we've already done so.
2003-07-04 * elf-bfd.h (_bfd_elf_create_linker_section) Don't declare.Alan Modra7-564/+397
(_bfd_elf_find_pointer_linker_section): Likewise. (bfd_elf32_create_pointer_linker_section): Likewise. (bfd_elf32_finish_pointer_linker_section): Likewise. (bfd_elf64_create_pointer_linker_section): Likewise. (bfd_elf64_finish_pointer_linker_section): Likewise. (_bfd_elf_make_linker_section_rela): Likewise. * elfcode.h (elf_create_pointer_linker_section): Don't define. (elf_finish_pointer_linker_section): Likewise. * elflink.c (_bfd_elf_make_linker_section_rela): Delete. (_bfd_elf_create_linker_section): Move this function.. (_bfd_elf_find_pointer_linker_section): ..and this.. * elflink.h (elf_create_pointer_linker_section): ..and this.. (elf_finish_pointer_linker_section): ..and this.. * elf32-ppc.c: ..to here, renaming to the following, and adjusting calls. (elf_create_linker_section): Convert to C90, tidy. (elf_find_pointer_linker_section): Likewise. (elf_create_pointer_linker_section): Likewise. (elf_finish_pointer_linker_section): Likewise. * elf32-i370.c: Delete #if 0 code.
2003-07-04daily updateAlan Modra1-1/+1
2003-07-03daily updateAlan Modra1-1/+1
2003-07-02 * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't allow _savef* andAlan Modra2-7/+20
_restf* to be satisfied by shared libs, and always force them local. (toc_adjusting_stub_needed): Avoid scanning linker created sections. Correct test for "bl". (ppc64_elf_relocate_section <R_PPC64_TLS>): Correct test for primary opcode 31.
2003-07-02daily updateAlan Modra1-1/+1
2003-07-01 * elf32-s390.c (s390_elf_ldisp_reloc): New prototype.Martin Schwidefsky6-4/+237
(s390_tls_reloc): New function. (elf_howto_table): Add long displacement relocations R_390_20, R_390_GOT20, R_390_GOTPLT20 and R_390_TLS_GOTIE20. (elf_s390_reloc_type_lookup): Likewise. (elf_s390_check_relocs): Likewise. (elf_s390_gc_sweep_hook): Likewise. (elf_s390_relocate_section): Likewise. * elf64-s390.c: Same changes as for elf32-s390.c. * reloc.c: Add long displacement relocations BFD_RELOC_390_20, BFD_RELOC_390_GOT20, BFD_RELOC_390_GOTPLT20 and BFD_RELOC_390_TLS_GOTIE20. * bfd-in2.h: Regenerate. * libbfd.h: Likewise.
2003-07-01daily updateAlan Modra1-1/+1
2003-06-30 * cpu-ia64-opc.c (ext_imms_scaled): Don't sign extend using shifts.Alan Modra2-12/+11
(ins_imms, ins_immsm1u4): Likewise. Warning fix.
2003-06-30daily updateAlan Modra1-1/+1
2003-06-29Convert to C90 and a few tweaks.Alan Modra26-3030/+2354
2003-06-29Add forgotten ChangeLog snippet for last elf64-x86-64.c patch.Andreas Jaeger1-0/+11
2003-06-29 * elf64-x86-64.c: Convert to ISO C90 prototypes, removeAndreas Jaeger2-175/+72
unnecessary prototypes. Replace PTR with void *.
2003-06-29daily updateAlan Modra1-1/+1
2003-06-28 * elfxx-mips.c: Allow lazy binding for R_MIPS_JALR.Thiemo Seufer2-0/+5
2003-06-28daily updateAlan Modra1-1/+1
2003-06-27Fix --add-gnu-debuglinkNick Clifton3-33/+89
2003-06-27 * elfxx-mips.c: Revert .got alignment to 2**4.Thiemo Seufer2-1/+7
2003-06-27 * elf32-mips.c: Fix addend for _gp_disp special symbol.Thiemo Seufer2-29/+34
2003-06-27 * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove non-defaultThiemo Seufer2-24/+10
relocation header setup. * binutils-all/readelf.ss-tmips: Adjust symbol indices.
2003-06-27daily updateAlan Modra1-1/+1
2003-06-26daily updateAlan Modra1-1/+1
2003-06-25Missed copyright update in last commit.Alan Modra1-1/+1
2003-06-25 * elf32-ppc.c (ppc_elf_howto_table): Remove unnecessary cast.Alan Modra2-5/+16
(ppc_elf_reloc_type_lookup): Modify comment. (ppc_elf_info_to_howto): Ditto. (ppc_elf_relocate_section): Ditto. (ppc_elf_check_relocs): Call ppc_elf_howto_init.