aboutsummaryrefslogtreecommitdiff
path: root/bfd
AgeCommit message (Collapse)AuthorFilesLines
2004-05-15 * elfxx-mips.c (MINUS_TWO): Define.Thiemo Seufer2-10/+17
(mips_elf_higher, mips_elf_highest, mips_elf_create_dynamic_relocation): Use MINUS_ONE and MINUS_TWO for some bfd_vma values. (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Code cleanup.
2004-05-15daily updateAlan Modra1-1/+1
2004-05-14 * som.c (log2): Rename to exact_log2. Adjust all callers.Dave Anglin2-6/+10
2004-05-14daily updateAlan Modra1-1/+1
2004-05-13Remove comment rendered obsolete by previous deltaNick Clifton2-6/+2
2004-05-13fix typo in file nameNick Clifton1-2/+2
2004-05-13Handle dwarf3 format CIE entries.Nick Clifton2-3/+11
2004-05-13Change or32-rtems target from COFF to ELF formatNick Clifton2-2/+6
2004-05-13Updated French translationsNick Clifton2-2/+7
2004-05-13daily updateAlan Modra1-1/+1
2004-05-11bfd/Jakub Jelinek6-20/+167
* elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol into .dynsym if elf_section_data (sec)->dynindx <= 0. Adjust counting of last_local. (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt created by the linker nor !SHF_ALLOC. * elf32-i386.c (elf_i386_finish_dynamic_sections): Point DT_PLTGOT to the start of the .got.plt section instead of the .got output section. Set sh_entsize for .got section in addition to .got.plt. (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_ is at sgot->output_section->vma. * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point DT_PLTGOT to the start of the .got.plt section instead of the .got output section. (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_ is at sgot->output_section->vma. Set sh_entsize for .got section in addition to .got.plt. * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO. (bfd_section_from_phdr): Likewise. (map_sections_to_segments): Likewise. (assign_file_positions_for_segments): Likewise. (get_program_header_size): Likewise. * elflink.c (bfd_elf_size_dynamic_sections): Set elf_tdata (output_bfd)->relro from info->relro. * elf-bfd.h (struct elf_obj_tdata): Add relro field. include/ * bfdlink.h (struct bfd_link_info): Add relro, relro_start and relro_end fields. * elf/common.h (PT_GNU_EH_FRAME, PT_GNU_STACK): Add comments. (PT_GNU_RELRO): Define. binutils/ * readelf.c (get_segment_type): Handle PT_GNU_RELRO. ld/ * genscripts.sh: Generate -z combreloc -z now -z relro scripts for binaries, -shared and -pie. * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Set. * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Set. * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Rename to... (OTHER_RELRO_SECTIONS): ... this. * ldlex.l (DATA_SEGMENT_RELRO_END): Add. * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle -z relro and -z norelro. (gld${EMULATION_NAME}_list_options): Add it to usage. (gld${EMULATION_NAME}_get_script): Return -z combreloc -z now -z relro scripts when appropriate. * scripttempl/elf.sc: Unset SEPARATE_GOTPLT if RELRO_NOW is set. Create separate .got.plt section if SEPARATE_GOTPLT. Move sections which are only written during relocation handling to the beginning of RW segment. If NO_SMALL_DATA, move .got before .data. Add DATA_SEGMENT_RELRO_END directive. Include OTHER_RELRO_SECTIONS. * ldgram.y (DATA_SEGMENT_RELRO_END): Add. * ldexp.c (exp_print_token): Handle DATA_SEGMENT_RELRO_END. (fold_unary): Likewise. (fold_binary): Handle -z relro. * ldexp.h (struct exp_data_seg): Add exp_dataseg_relro_seen and exp_dataseg_relro_adjust phases. Add relro_end field. * ldmain.c (main): Initialize link_info.relro to FALSE. * ldlang.c (lang_size_sections): Handle -z relro. ld/testsuite/ * ld-i386/tlspic.rd: Adjust for section reordering changes and removal of unneeded STT_SECTION symbols from .dynsym. * ld-i386/tlspic.dd: Likewise. * ld-i386/tlspic.sd: Likewise. * ld-i386/tlsbin.rd: Likewise. * ld-i386/tlsbinpic.s: Likewise. * ld-i386/tlsbin.dd: Likewise. * ld-i386/tlsbin.sd: Likewise. * ld-i386/tlsnopic.rd: Likewise. * ld-i386/tlsnopic1.s: Likewise. * ld-i386/combreloc.d: Likewise. * ld-i386/tlsnopic.dd: Likewise. * ld-i386/tlsnopic.sd: Likewise. * ld-x86-64/tlspic.rd: Likewise. * ld-x86-64/tlspic.dd: Likewise. * ld-x86-64/tlsbin.dd: Likewise. * ld-x86-64/tlspic.sd: Likewise. * ld-x86-64/tlsbin.sd: Likewise. * ld-x86-64/tlspic.td: Likewise. * ld-x86-64/tlsbin.td: Likewise. * ld-x86-64/tlsbin.rd: Likewise. * ld-s390/tlspic1.s: Likewise. * ld-s390/tlsbinpic.s: Likewise. * ld-s390/tlspic.rd: Likewise. * ld-s390/tlsbin.rd: Likewise. * ld-s390/tlspic.dd: Likewise. * ld-s390/tlsbin.dd: Likewise. * ld-s390/tlsbin.sd: Likewise. * ld-s390/tlsbin.td: Likewise. * ld-s390/tlspic.sd: Likewise. * ld-s390/tlspic.td: Likewise. * ld-s390/tlspic1_64.s: Likewise. * ld-s390/tlsbinpic_64.s: Likewise. * ld-s390/tlspic_64.rd: Likewise. * ld-s390/tlsbin_64.rd: Likewise. * ld-s390/tlspic_64.dd: Likewise. * ld-s390/tlsbin_64.dd: Likewise. * ld-s390/tlspic_64.sd: Likewise. * ld-s390/tlspic_64.td: Likewise. * ld-s390/tlsbin_64.td: Likewise. * ld-s390/tlsbin_64.sd: Likewise. * ld-powerpc/tlsexe32.r: Likewise. * ld-powerpc/tlsso32.r: Likewise. * ld-powerpc/tlsso32.d: Likewise. * ld-powerpc/tlsso32.g: Likewise. * ld-powerpc/tlsso32.t: Likewise. * ld-powerpc/tlsexe.r: Likewise. * ld-powerpc/tlsso.r: Likewise. * ld-powerpc/tlsso.g: Likewise. * ld-powerpc/tlsexetoc.r: Likewise. * ld-powerpc/tlstocso.r: Likewise. * ld-powerpc/tlstocso.g: Likewise. * ld-ia64/tlspic.rd: Likewise. * ld-ia64/tlspic.dd: Likewise. * ld-ia64/tlspic.sd: Likewise. * ld-ia64/tlspic.td: Likewise. * ld-ia64/tlsbin.rd: Likewise. * ld-ia64/tlsbin.sd: Likewise. * ld-ia64/tlsbin.td: Likewise. * ld-elfvsb/elfvsb.exp: XFAIL non-PIC load offset tests on s390x. * ld-shared/shared.exp: Likewise.
2004-05-11daily updateAlan Modra1-1/+1
2004-05-10daily updateAlan Modra1-1/+1
2004-05-08* elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we getAlexandre Oliva2-3/+21
a zero symndx for which we hadn't accounted a dynamic relocation. (_frvfdpic_add_rofixup): Likewise.
2004-05-08daily updateAlan Modra1-1/+1
2004-05-07* coffcode.h (coff_write_object_contents) [COFF_IMAGE_WITH_PE]:Brian Ford3-10/+21
Propagate IMAGE_FILE_LARGE_ADDRESS_AWARE. * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Recognize IMAGE_FILE_LARGE_ADDRESS_AWARE. Use PE defines.
2004-05-07* elf32-frv.c (elf32_frvfdpic_modify_segment_map): ReturnAlexandre Oliva2-0/+59
immediately if there's no link info. (elf32_frvfdpic_copy_private_bfd_data): New. (bfd_elf32_bfd_copy_private_bfd_data): Use it for frvfdpic.
2004-05-07 * dwarf2.c (add_line_info): Also set info->filename to NULL ifZack Weinberg2-5/+9
filename argument is null; do not call strlen on a null pointer.
2004-05-07daily updateAlan Modra1-1/+1
2004-05-06 * elf32-arm.h (elf32_arm_relocate_section): Remove R_ARM_PLT32Daniel Jacobowitz2-5/+7
special case.
2004-05-06* configure.in (bfd_elf32_frvfdpic_vec): New.Alexandre Oliva6-827/+1085
* configure: Rebuilt. * targets.c (bfd_elf32_frvfdpic_vec): New. * config.bfd: Enable it on frv-*-elf and frv-*-*linux*, as default on the latter. * elf32-frv.c: Prefix all identifiers added for FDPIC support with frvfdpic instead of frv. Rearrange elf-target macros such that the FDPIC-specific ones are only defined for this new target vector. (bfd_elf32_frvfdpic_vec): Declare. (IS_FDPIC): New. (elf32_frv_relocate_section): Use it to enable segment checking and to control rofixup emission. Add output section vma to applied relocation in non-LOAD non-ALLOC sections. Use _bfd_error_handler for errors. (_frv_create_got_section): Create .rel.got and .rofixup only in FDPIC. Create non-dynamic _gp at .got+2048 in non-FDPIC, like the linker script. (elf32_frvfdpic_size_dynamic_sections): Assume FDPIC. (elf32_frvfdpic_modify_segment_map): Likewise. (elf32_frv_finish_dynamic_sections): New, do-nothing. (elf32_frvfdpic_finish_dynamic_sections): Assume FDPIC. Improve error message if we miscompute the rofixup size. (frvfdpic_elf_use_relative_eh_frame): Assume FDPIC. (frvfdpic_elf_encode_eh_address): Likewise. (elf32_frv_check_relocs): Reject FDPIC-only relocs in non-FDPIC. Record relocs only in FDPIC. Make sure _gp is defined for GPREL relocs. Reject unknown relocation types. (elf32_frv_object_p): Make sure target vector matches FDPIC bits. (frv_elf_merge_private_bfd_data): Likewise. (ELF_MAXPAGESIZE): Revert to 0x1000 for elf32-frv; keep it as 0x4000 for newly-added elf32-frvfdpic.
2004-05-06daily updateAlan Modra1-1/+1
2004-05-05Remove checks of the return value from bfd_cache_ookup()Nick Clifton4-6/+9
2004-05-05PR/136 - Have bfd_cache_lookup_worker() abort rather than return anNick Clifton3-26/+35
(unchecked-for) NULL.
2004-05-05Add support for 521x,5249,547x,548x.Nick Clifton4-1/+19
2004-05-05daily updateAlan Modra1-1/+1
2004-05-04daily updateAlan Modra1-1/+1
2004-05-03 * elf.c (_bfd_elf_rela_local_sym): Set kept_section for excludedAlan Modra2-9/+30
SEC_MERGE sections. * elflink.c (elf_link_input_bfd): Adjust output reloc index for those against discarded link-once and SEC_MERGE section symbols.
2004-05-03daily updateAlan Modra1-1/+1
2004-05-02bfd/H.J. Lu3-0/+62
2004-05-02 H.J. Lu <hongjiu.lu@intel.com> * section.c (bfd_get_section_by_name_if): New. * bfd-in2.h: Regenerated. gas/ 2004-05-02 H.J. Lu <hongjiu.lu@intel.com> * config/obj-elf.c (get_section): Return bfd_boolean. (obj_elf_change_section): Call bfd_get_section_by_name_if instead of bfd_map_over_sections.
2004-05-02 * som.c (som_bfd_is_group_section): Define.Alan Modra2-1/+6
2004-05-02daily updateAlan Modra1-1/+1
2004-05-01 * section.c (bfd_make_section_anyway): Copy the wholeAlan Modra2-1/+6
bfd_hash_entry, not just "next" from existing entry.
2004-05-01daily updateAlan Modra1-1/+1
2004-04-302004-04-30 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-2/+37
* elf.c (bfd_section_from_shdr): Maintain the section order in a section group. (special_sections): Add ".note.GNU-stack". (elf_fake_sections): Handle section group for relocatable link..
2004-04-302004-04-30 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu3-0/+45
* section.c (bfd_sections_find_if): New. * bfd-in2.h: Regenerated.
2004-04-30 * section.c (bfd_make_section_anyway): Add all sections to hash tab.Alan Modra35-36/+169
* elf-bfd.h (bfd_elf_is_group_section): Declare. * elf.c (bfd_elf_is_group_section): New function. * elfxx-target.h (bfd_elfNN_bfd_is_group_section * section.c (bfd_generic_is_group_section): New function. * targets.c (struct bfd_target): Add _bfd_is_group_section field. (BFD_JUMP_TABLE_LINK): Adjust. * aout-adobe.c (aout_32_bfd_is_group_section): Define. * aout-target.h (MY_bfd_is_group_section): Define. * aout-tic30.c (MY_bfd_is_group_section): Define. * bfd.c (bfd_is_group_section): Define. * binary.c (binary_bfd_is_group_section): Define. * bout.c (b_out_bfd_is_group_section): Define. * coff-alpha.c (_bfd_ecoff_bfd_is_group_section): Define. * coff-mips.c (_bfd_ecoff_bfd_is_group_section): Define. * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Adjust. * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Adjust. * coffcode.h (coff_bfd_is_group_section): Define. * i386msdos.c (msdos_bfd_is_group_section): Define. * i386os9k.c (os9k_bfd_is_group_section): Define. * ieee.c (ieee_bfd_is_group_section): Define. * ihex.c (ihex_bfd_is_group_section): Define. * libbfd-in.h (_bfd_nolink_bfd_is_group_section): Define. * mach-o.c (bfd_mach_o_bfd_is_group_section): Define. * mmo.c (mmo_bfd_is_group_section): Define. * nlm-target.h (nlm_bfd_is_group_section): Define. * oasys.c (oasys_bfd_is_group_section): Define. * pef.c (bfd_pef_bfd_is_group_section): Define. * ppcboot.c (ppcboot_bfd_is_group_section): Define. * srec.c (srec_bfd_is_group_section): Define. * tekhex.c (tekhex_bfd_is_group_section): Define. * versados.c (versados_bfd_is_group_section): Define. * vms.c (vms_bfd_is_group_section): Define. * xsym.c (bfd_sym_bfd_is_group_section): Define. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate.
2004-04-30 * elflink.c (elf_gc_mark): Follow indirect and warning syms.Alan Modra2-0/+7
2004-04-30Eh... sanitize date of last entryHans-Peter Nilsson1-1/+1
2004-04-30 * configure.in: Update version to 2.15.91.Hans-Peter Nilsson3-305/+299
* configure: Regenerate.
2004-04-30daily updateAlan Modra1-1/+1
2004-04-29Add support for generating DWARF2 debug sections in the x86 PE portNick Clifton5-22/+56
2004-04-29[ bfd/ChangeLog ]Chris Demetriou4-16/+6
2004-04-28 Chris Demetriou <cgd@broadcom.com> * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16. * bfd-in2.h: Regenerate. * libbfd.h: Likewise. [ gas/ChangeLog ] 2004-04-28 Chris Demetriou <cgd@broadcom.com> * config/tc-mips.c (HAVE_32BIT_ADDRESSES, append_insn, macro_build) (load_address, macro, mips_ip, md_parse_option) (mips_force_relocation, mips_validate_fix, md_apply_fix3) (s_change_sec, pic_need_relax, tc_gen_reloc): Remove all embedded-PIC handling, and update comments. (SWITCH_TABLE): Remove. * config/tc-mips.h (DIFF_EXPR_OK): Delete. (enum mips_pic_level): Remove EMBEDDED_PIC. (EXTERN_FORCE_RELOC): Remove embedded-PIC handling. (TC_FORCE_RELOCATION): Update comment. * ecoff.c (ecoff_build_lineno): Add comment about some code that might be safe to remove now that MIPS embedded-PIC is gone.
2004-04-29daily updateAlan Modra1-1/+1
2004-04-28 * som.c (struct som_misc_symbol_info): Add is_comdat, is_common andDave Anglin3-35/+147
dup_common fields. (setup_sections): Use som_subspace_dictionary_record struct instead subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is is_comdat, is_common or dup_common. (som_prep_headers): Use som_subspace_dictionary_record struct. Set is_comdat, is_common and dup_common in section subspace_dict from copy_data. (som_begin_writing): Use som_subspace_dictionary_record struct. (som_finish_writing): Likewise. (som_bfd_derive_misc_symbol_info): Add support to set is_comdat, is_common and dup_common flags in info for symbol. Add comment regarding linker support for these fields. Slightly reorganize function. (som_build_and_write_symbol_table): Set is_comdat, is_common and dup_common fields in symbol table from symbol info. (bfd_som_set_subsection_attributes): Add comdat, common and dup_common arguments. Set corresponding fields in copy_data. Change all callers. (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library symbol table. (som_vec): Add SEC_LINK_ONCE to applicable section flags. * som.h (som_subspace_dictionary_record): Define. (som_copyable_section_data_struct): Add is_comdat, is_common and dup_common fields. (som_section_data_struct): Use som_subspace_dictionary_record struct instead of subspace_dictionary_record. (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype. * config/obj-som.c (obj_som_init_stab_section): Add new arguments in call to obj_set_subsection_attributes. (obj_som_init_stab_section): Likewise. * config/tc-hppa.c (default_subspace_dict): Add comdat field. (pa_def_subspaces): Provide comdat default. (pa_subspace): Handle new "comdat" parameter. Set SEC_LINK_ONCE and not SEC_IS_COMMON if section is comdat, common or dup_common. Update calls to create_new_subspace and update_subspace to pass comdat flag. (create_new_subspace, update_subspace): Add new comdat argument. Use it in calls to obj_set_subsection_attributes. * doc/c-hppa.texi (.subspa, .nsubspa): Document new comdat parameter and use of comdat, common and dup_comm parameters.
2004-04-28daily updateAlan Modra1-1/+1
2004-04-27 * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_sizeBob Wilson2-9/+23
if set. Check reloc_done flag before applying relocations. Use output addresses, both when applying relocations and when comparing against the specified section. (elf_xtensa_relocate_section): Use output address to check if dynamic reloc is in a literal pool. Set section's reloc_done flag.
2004-04-272004-04-27 H.J. Lu <hongjiu.lu@intel.com>H.J. Lu2-11/+20
* elf32-sh64.c (elf_backend_section_flags): New. Defined. (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges section. (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges section.
2004-04-27 * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assignAlan Modra7-12/+25
structure field removed in 2004-04-24 patch. * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix. * elf-bfd.h (struct elf_backend_data <elf_backend_section_flags>): Constify hdr arg. * elf32-arm.h (elf32_arm_section_flags): Likewise. * elf64-alpha.c (elf64_alpha_section_flags): Likewise. * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise. * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section field before calling elf_backend_section_flags.
2004-04-27daily updateAlan Modra1-1/+1