aboutsummaryrefslogtreecommitdiff
path: root/ld
AgeCommit message (Collapse)AuthorFilesLines
2001-05-11 * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwindJakub Jelinek3-2/+9
sections as well. (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO to .gnu.linkonce.t.FOO text section. * readelf.c (process_unwind): Print all unwind sections, not just one. * config/tc-ia64.c (special_linkonce_name): New. (make_unw_section): Map .gnu.linkonce.t.FOO text section into .gnu.linkonce.ia64unw{,i}.FOO. (ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO. (dot_endp): Add comment about it. * elf/ia64.h (ELF_STRING_ia64_unwind_once): Define. (ELF_STRING_ia64_unwind_info_once): Define. * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put .gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind* output sections. * emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
2001-05-11 * merge.c (struct sec_merge_hash_entry): Add u.entsize and u.suffixJakub Jelinek2-0/+10
fields, change sec into secinfo. (struct sec_merge_info): Add chain, remove last fields. (struct sec_merge_sec_info): Add next, sec, psecinfo fields. (sec_merge_hash_lookup): If lookup could not use a string only because it has bad alignment, mark the old string for deletion. (sec_merge_add): Add secinfo argument. Don't compute entry's position, instead record the section. (sec_merge_emit): Update for the sec into secinfo change in struct sec_merge_hash_entry. (_bfd_merge_section): Only record the section for merging, defer putting strings into the hash table. (cmplengthentry, last4_eq, last_eq, record_section, merge_strings, _bfd_merge_sections): New functions. (_bfd_merged_section_offset): Update for the sec_merge_hash_entry changes. * libbfd-in.h (_bfd_merge_sections): Add prototype. (_bfd_nolink_bfd_merge_sections): Define. * libbfd.h: Likewise. (bfd_generic_merge_sections): Add prototype. * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_merge_sections. (struct bfd_target): Likewise. * bfd.c (bfd_merge_sections): Define. * bfd-in2.h: Rebuilt. * elf.c (_bfd_elf_merge_sections): New function. * elf-bfd.h (_bfd_elf_merge_sections): Add prototype. * elfxx-target.h (bfd_elfNN_bfd_merge_sections): Define. * reloc.c (bfd_generic_merge_sections): New function. * vms.c (vms_bfd_merge_sections): New function. * aout-adobe.c (aout_32_bfd_merge_sections): Define. * aout-target.h (MY_bfd_merge_sections): Define. * aout-tic30.c (MY_bfd_merge_sections): Define. * binary.c (binary_bfd_merge_sections): Define. * bout.c (b_out_bfd_merge_sections): Define. * coff-alpha.c (_bfd_ecoff_bfd_merge_sections): Define. * coffcode.c (coff_bfd_merge_sections): Define. * coff-mips.c (_bfd_ecoff_bfd_merge_sections): Define. * i386msdos.c (msdos_bfd_merge_sections): Define. * i386os9k.c (os9k_bfd_merge_sections): Define. * ieee.c (ieee_bfd_merge_sections): Define. * ihex.c (ihex_bfd_merge_sections): Define. * nlm-target.h (nlm_bfd_merge_sections): Define. * oasys.c (oasys_bfd_merge_sections): Define. * ppcboot.c (ppcboot_bfd_merge_sections): Define. * som.c (som_bfd_merge_sections): Define. * srec.c (srec_bfd_merge_sections): Define. * tekhex.c (tekhex_bfd_merge_sections): Define. * versados.c (versados_bfd_merge_sections): Define. * xcoff-target.h (_bfd_xcoff_bfd_merge_sections): Define. * ldlang.c (lang_process): Call bfd_merge_sections.
2001-05-07 * ldgram.y: Fix typo.Alan Modra2-3/+7
2001-05-032001-05-03 H.J. Lu <hjl@gnu.org>H.J. Lu2-35/+22
* emultempl/elf32.em: Include "libiberty.h". (gld${EMULATION_NAME}_vercheck): Call basename () to get the basename of the bfd filename. (gld${EMULATION_NAME}_stat_needed): Likewise. (gld${EMULATION_NAME}_try_needed): Likewise. (gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
2001-05-032001-05-03 H.J. Lu <hjl@gnu.org>H.J. Lu2-1/+6
* ld-elfvers/vers19.ver: Expect vers17.so instead of *tmpdir/vers17.so.
2001-05-022001-05-02 H.J. Lu <hjl@gnu.org>H.J. Lu2-0/+6
* emultempl/pe.em: Include <ctype.h>.
2001-05-02Add gas and ld support for openriscNick Clifton8-239/+480
2001-05-022001-05-02 H.J. Lu <hjl@gnu.org>H.J. Lu9-28/+35
* ldfile.c: Include "libiberty.h". * ldlex.l: Likewise. * ldmisc.c (buystring): Removed. * ldmisc.h: Likewise. * ldfile.c: Replace buystring with xstrdup. * ldlang.c: Likewise. * ldlex.l: Likewise. * ldmain.c: Likewise. * ldmisc.c: Likewise. * lexsup.c: Likewise. * mpw-eppcmac.c: Likewise.
2001-05-01 * ld-scripts/phdrs.exp: Fix regexp, s390x is 64 bit platform.Andreas Jaeger3-6/+16
* ld-scripts/phdrs.t: Use startaddress that's greater than any MAXPAGESIZE used.
2001-04-30 * emulparms/elf_x86_64.sh (MAXPAGESIZE): Fix value.Andreas Jaeger2-4/+8
2001-04-292001-04-29 H.J. Lu <hjl@gnu.org>H.J. Lu3-0/+21
* ld-shared/symbolic.dat: New. * ld-shared/shared.exp: Also check -Bsymbolic.
2001-04-28Give emulation a chance to process unrecognized file before fatal error isNick Clifton2-6/+11
reported, not after.
2001-04-28 * ld-scripts/phdrs.exp: x86-64 is a 64 bit ELF platform, handle itAndreas Jaeger2-9/+14
special.
2001-04-27Add support for arm-vxworks targetNick Clifton5-368/+389
2001-04-13* ld.texinfo: Document --fatal-warnings.J.T. Conklin6-5/+47
* ld.1: Regenerate. * ldmisc.c (vfinfo): Set flag to inhibit making executable if warnings have been turned into errors. * lexsup.c (OPTION_WARN_FATAL): Define. (ld_options): Entry for --fatal-warnings. (parse_args): Handle OPTION_WARN_FATAL. * ld.h (ld_config_type): Add fatal_warnings field.
2001-04-13bfd/Jakub Jelinek4-3/+33
* libbfd-in.h (_bfd_merge_section): New. (_bfd_write_merged_section): New. (_bfd_merged_section_offset): New. * libbfd.h: Rebuilt. * linker.c (_bfd_generic_link_output_symbols): Handle discard_sec_merge. * aoutx.h (aout_link_write_symbols): Likewise. * pdp11.c (aout_link_write_symbols): Likewise. * elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section. (elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE sections. (elf_link_sec_merge_syms): New. (elf_link_input_bfd): Call _bfd_merged_section_offset and _bfd_write_merged_section. Handle discard_sec_merge. * elf-bfd.h (struct elf_link_hash_table): Add merge_info field. (struct bfd_elf_section_data): Likewise. * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and SEC_STRINGS section flags and entsize from their ELF counterparts. (_bfd_elf_link_hash_table_init): Initialize merge_info. (elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize from their BFD counterparts. * merge.c: New file. * Makefile.am: Add strtab.lo. * Makefile.in: Rebuilt. include/ * bfdlink.h (bfd_link_discard): Add discard_sec_merge. gas/ * config/obj-elf.c (obj_elf_change_section): Add entsize argument, handle SHF_MERGE and SHF_STRINGS. (obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS. (obj_elf_section): Allow additional argument specifying entity size. * write.c (adjust_reloc_syms): Keep relocations against local symbols in SEC_MERGE sections. ld/ * ldmain.c (main): Default to discard_sec_merge. * lexsup.c (OPTION_DISCARD_NONE): Define. (ld_options): Add --discard-none. (parse_args): Handle OPTION_DISCARD_NONE. * ldlang.c (wild_doit): SEC_MERGE should be set in the output section only if SEC_MERGE and SEC_STRINGS flags and entsize of all its input sections match.
2001-04-082001-04-05 Steven J. Hill <sjhill@cotw.com>H.J. Lu7-7/+167
* Makefile.am (ALL_EMULATIONS): Add eelf32ltsmip.o. (ALL_64_EMULATIONS): Add eelf64btsmip.o and eelf64ltsmip.o. (eelf32ltsmip.c): New target. (eelf64btsmip.c): Likewise. (eelf64ltsmip.c): Likewise. * Makefile.in: Regenerated. * configure.tgt (mips*el-*-linux-gnu): Uses traditional MIPS target. (mips*-*-linux-gnu*): Likewise. * emulparams/elf32ltsmip.sh: New. Traditional little endian MIPS taget. * emulparams/elf64btsmip.sh: New. Traditional 64bit big endian target. * emulparams/elf64ltsmip.sh: New. Traditional 64bit little endian target.
2001-04-05 * emulparams/criself.sh (EXECUTABLE_SYMBOLS): Cannot provideHans-Peter Nilsson3-7/+16
correct value of __Stext here. (TEXT_START_SYMBOLS): Define; always define __Stext, to start of .startup section. * emulparams/crislinux.sh: Remove FIXME.
2001-04-022001-04-01 David O'Brien <obrien@FreeBSD.org>David O'Brien2-1/+6
* ld-undefined/undefined.exp: XFAIL on FreeBSD/i386 for the usual (even though it doesn't use DWARF2 yet (but its output is identical). Approved by: Alan Modra <alan@linuxcare.com.au> <Pine.LNX.4.21.0104021511350.487-100000@front.linuxcare.com.au>
2001-04-02001-04-01 David O'Brien <obrien@FreeBSD.org>David O'Brien2-1/+7
* ld-selective/selective.exp: Use -O with gcc rather than -O2. This optimization level is buggy on some platforms, and this test is not intended to test compiler optimizations. Approved by: Alan Modra <alan@linuxcare.com.au> <Pine.LNX.4.21.0104021510450.487-100000@front.linuxcare.com.au>
2001-04-02Bump page size to 64kAlan Modra2-3/+8
2001-03-27 * configure.tgt (cris-*-*): Change default emulation to criself.Hans-Peter Nilsson2-1/+9
(cris-*-*aout*): New rule.
2001-03-27Go to 16k page size on hppa-linux.Alan Modra2-3/+8
2001-03-262001-03-26 Andreas Jaeger <aj@suse.de>Andreas Jaeger2-4/+8
* binutils.texi (nm): Fix texi syntax. 2001-03-26 Andreas Jaeger <aj@suse.de> * ld.texinfo (Overview): Fix syntax in texi code.
2001-03-25Automate generate on man pagesNick Clifton5-1674/+1775
2001-03-23Support the GCC flags '-ffunction-sections' and '-fdata-sections'.Nick Clifton2-0/+10
Set the VMA of STABS sections to zero.
2001-03-20 * emultmpl/elf32.em (gld${EMULATION_NAME}_search_needed): If NAMEUlrich Drepper2-0/+8
is an absolute path look only for this file and not along the path.
2001-03-17 * emultempl/elf32.em (OPTION_GROUP): New macro.Ulrich Drepper4-45/+90
Add new option Bgroup to longopts. (gld*_parse_args): Handle GROUP_OPTION and recognize -z defs. (gld*_list_options): Add -Bgroup and -z defs. * ld.1: Document -Bgroup and -z defs. * ld.texinfo: Likewise.
2001-03-13Fixtypos in ChangeLogs, fix copyright dates in filesNick Clifton85-604/+832
2001-03-08Fixup checkin of wrong sourceMichael Meissner1-1/+6
2001-03-08Add support for -fdata-sectionsMichael Meissner2-3/+24
2001-03-06* ld-scripts/cross2.t: Support any type of text/data sections, notDJ Delorie2-2/+7
just the canonical ones.
2001-03-05* emultempl/m68kelf.em (m68k_elf_after_allocation): CallAlan Modra2-1/+6
after_allocation_default, not gld..._before_allocation.
2001-03-01*** empty log message ***Matthew Hiller1-1/+1
2001-03-012001-02-28 Matt Hiller <hiller@redhat.com>Matthew Hiller4-10/+50
* testsuite/ld-scripts/crossref.exp: Initialize flags to [big_or_little_endian]. * testsuite/ld-undefined/undefined.exp: Ditto, and include $flags in ld invocations. * testsuite/lib/ld-lib.exp (big_or_little_endian): Recognize -EB, -eb, EL and el. (is_endian_output_format): New function. (default_ld_link): Set flags to [big_or_little_endian] only if ld is being invoked such that the output format being used is of known endianness. (default_ld_simple_link): Ditto.
2001-02-27Bump version to 2.11.90, fix missing dependencies in bfd/,Alan Modra5-213/+236
and run "make dep-am".
2001-02-27Add aix5 settings.Timothy Wall2-3/+8
2001-02-27BFD: Catch & report unhandled PE section flags.Nick Clifton3-66/+129
LD: Catch BFD errors whilst loading symbols and do not produce an executable.
2001-02-22Add ia64-*-aix* configuration.Timothy Wall7-1/+45
2001-02-21Fix a typo.Kazu Hirata1-1/+1
2001-02-202001-02-20 H.J. Lu <hjl@gnu.org>H.J. Lu2-7/+21
* ldfile.c (ldfile_open_file): Set entry->search_dirs_flag to false if we found the file.
2001-02-19001-02-18 David O'Brien <obrien@FreeBSD.org>David O'Brien2-0/+26
* configure.tgt: Add FreeBSD/Alpha, FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/PowerPC, FreeBSD/arm, and FreeBSD/sparc64 entries. Approved by: Philip Blundell <philb@gnu.org> Message-Id: <E14URxF-00023n-00@kings-cross.london.uk.eu.org>
2001-02-18Add PDP-11 supportNick Clifton6-8/+28
2001-02-182001-02-17 David O'Brien <obrien@FreeBSD.org>David O'Brien2-24/+29
* configure.host: Add a generic FreeBSD configuration entry such that all [modern] FreeBSD systems on all platforms will look the same. Approved by: Alan Modra <alan@linuxcare.com.au> <Pine.LNX.4.21.0102172155140.30011-100000@front.linuxcare.com.au>
2001-02-15Change "armelf" to armelf.H.J. Lu1-1/+1
2001-02-152001-02-14 H.J. Lu <hjl@gnu.org>H.J. Lu6-17/+58
* ld-bootstrap/bootstrap.exp: Rebuild tmpdir/ld2 with tmpdir/ld3 for -static on ia64. * ld-checks/checks.exp: Don't run on ia64-*-elf* nor ia64-*-linux*. * ld-elfvers/vers.exp: Also run ia64-*-elf* and ia64-*-linux*. * ld-elfvsb/elfvsb.exp: Use i?86-*-*. Also run on ia64-*-linux*. Set up expected failures for ia64-*-linux*. * ld-shared/shared.exp: Likewise.
2001-02-142001-02-14 H.J. Lu <hjl@gnu.org>H.J. Lu2-1/+5
* configure.tgt: Remove mention of earmelf_linux26.
2001-02-13 * emulparams/elf64_ia64.sh (OTHER_GOT_SYMBOLS): Remove.Richard Henderson2-1/+4
2001-02-132001-02-13 H.J. Lu <hjl@gnu.org>H.J. Lu4-2/+18
* ldexp.h (node_type): Add etree_provided. * ldexp.c (exp_fold_tree): Handle etree_provided. Set the node type to etree_provided if defined by PROVIDE. Allow updating for etree_provided. (exp_print_tree): Handle etree_provided. * mpw-elfmips.c (gldelf32ebmip_find_exp_assignment): Handle etree_provided.
2001-02-10 * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): AddRichard Henderson2-1/+7
.IA_64.unwind.* pattern to unwind table section and .IA_64.unwind_info* pattern to unwind info section.