summaryrefslogtreecommitdiff
path: root/ld
Commit message (Collapse)AuthorAgeFilesLines
* * ldmain.c (main): Rename BufferSize to ld_bufsz because HPUXAlan Modra2001-09-162-3/+8
| | | | defines BufferSize. Increase buffer size by one.
* * lib/ld-lib.exp (run_dump_test): Handle new optionHans-Peter Nilsson2001-09-152-3/+50
| | | | | | "objcopy_linked_file". Return after failing, if errors were expected but none were found. (slurp_options): Support underscores in option names.
* 2001-09-14 H.J. Lu <hjl@gnu.org>H.J. Lu2001-09-147-25/+52
| | | | | | | | | * ld-elfweak/bar.c: Updated. * ld-elfweak/bar1a.c: Likewise. * ld-elfweak/main.c: Likewise. * ld-elfweak/main1.c: Likewise. * ld-elfweak/elfweak.exp: Likewise. * ld-elfweak/weakdata.dsym: Updated.
* Fix memory leakNick Clifton2001-09-142-394/+434
|
* Add support for arm-openbsd targetNick Clifton2001-09-142-0/+5
|
* 2001-09-12 H.J. Lu <hjl@gnu.org>H.J. Lu2001-09-123-4/+11
| | | | | | | * Makefile.am (ALL_EMULATIONS): Move eelf64ppc.o and eelf64lppc.o to ... (ALL_64_EMULATIONS): Here. * Makefile.in: Regenerated.
* 2001-09-12 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>Charles Wilson2001-09-125-14/+143
| | | | | | | | | | | | | | | | | * emultempl/pe.em(make_import_fixup): change signature to take asection as well as arelec; we need this for proper error reporting. Only call pe_create_import_fixup() if there is no attempt to add a constant addend to the reloc; otherwise, report error condition. * pe-dll.c(pe_walk_relocs_of_symbol): change signature, since final argument is a pointer to make_import_fixup(). Change call to cb() to match make_import_fixup() signature. (make_import_fixup_mark): make buffer_len unsigned. * pe-dll.h: change signature of pe_walk_relocs_of_symbol. 2001-09-12 Charles Wilson <cwilson@ece.gatech.edu> * ld.texinfo: add verbose documentation for auto-import direct-addressing workaround, to compliment the terse error message.
* * scripttempl/v850.sc: Add gcc_except_table sections.Catherine Moore2001-09-122-0/+8
|
* 2001-09-11 H.J. Lu <hjl@gnu.org>H.J. Lu2001-09-1117-15/+186
| | | | | | | | | | | | | | | | | | | | | | | | * ld-elfweak/elfweak.exp (build_lib): Take a list of object files. (build_exec): Likewise. Add more tests and make some xfail. * ld-elfweak/dso.dsym: Support symbol versioning. * ld-elfweak/dsow.dsym: Likewise. * ld-elfweak/main1.c: New. * ld-elfweak/bar1a.c: Likewise. * ld-elfweak/bar1b.c: Likewise. * ld-elfweak/bar1c.c: Likewise. * ld-elfweak/foo1a.c: Likewise. * ld-elfweak/foo1b.c: Likewise. * ld-elfweak/dsodata.dsym: Likewise. * ld-elfweak/dsowdata.dsym: Likewise. * ld-elfweak/weakdata.dsym: Likewise. * ld-elfweak/strongcomm.sym: Likewise. * ld-elfweak/strongdata.sym: Likewise. * ld-elfweak/weakdata.dat: Likewise. * ld-elfweak/strongdata.dat: Likewise.
* 2001-09-10 H.J. Lu <hjl@gnu.org>H.J. Lu2001-09-1011-0/+447
| | | | | | | | | | | | * ld-elfweak/elfweak.exp: New. * ld-elfweak/bar.c: Likewise. * ld-elfweak/foo.c: Likewise. * ld-elfweak/main.c: Likewise. * ld-elfweak/dso.dsym: Likewise. * ld-elfweak/dsow.dsym: Likewise. * ld-elfweak/strong.sym: Likewise. * ld-elfweak/strong.dat: Likewise. * ld-elfweak/weak.dat: Likewise.
* * emulparams/h8300helf.sh: Move stack to a much higher memory address.Jeff Law2001-09-073-2/+7
| | | | * emulparams/h8300self.sh: Similarly.
* Fix import symbols for AIX.Tom Rix2001-09-062-61/+53
|
* Set correct value for default (PE) stack size.Nick Clifton2001-09-052-1/+6
|
* * emultempl/beos.em: Declare prototypes for comparions functions,Andreas Jaeger2001-09-032-29/+32
| | | | adjust definitions.
* * emultempl/aix.em: Add missing prototype.Andreas Jaeger2001-09-0310-7/+58
| | | | | | | | | | | | | * emultempl/lnk960.em: Likewise. * emultempl/vanilla.em: Likewise. * emultempl/armcoff.em: Likewise. * emultempl/armelf_oabi.em: Likewise. * emultempl/beos.em: Likewise. * emultempl/gld960c.em: Likewise. * emultempl/gld960.em: Likewise. * emulparams/elf64alpha.sh (PARSE_AND_LIST_PROLOGUE): Add parameter for prototype declaration.
* 2001-08-31 Eric Christopher <echristo@redhat.com>Eric Christopher2001-08-312-1/+8
| | | | | | Jason Eckhardt <jle@redhat.com> * ldmain.c (get_emulation): Add support for -mips32 and -mips64.
* * emultempl/pe.em: Add missing prototypes.Andreas Jaeger2001-08-312-65/+94
| | | | | | (gld_${EMULATION_NAME}_after_open): Remove extra args to pe_find_data_imports. (pr_sym): Add unused attribute.
* omitted in previous deltaNick Clifton2001-08-301-3/+3
|
* 2001-08-29 Joel Sherrill <joel@OARcorp.com>Phil Blundell2001-08-292-2/+9
| | | | | * configure.tgt (i[3456]86-*-rtems*, m68*-*-rtems*): Change default from coff to elf.
* * emulparams/h8300helf.sh: Resync with h8300elf.sh. UpdateJeff Law2001-08-293-5/+25
| | | | | ARCH specification. * emulparams/h8300self.sh: Similarly.
* Add missing changelog entryNick Clifton2001-08-291-0/+5
|
* * Makefile.am (ALL_EMULATIONS): Add eh8300elf.o, eh8300elf.o andJoern Rennecke2001-08-297-1/+61
| | | | | | | | | eh8300self.o . (eh8300elf.c, eh8300helf.c, eh8300self.c): New targets. * configure.tgt (h8300-*-elf*): New case. * emulparams/h8300elf.sh, emulparams/h8300helf.sh: New files. * emulparams/h8300self.sh: New file. * Makefile.in: Regenerated.
* * ld-checks/checks.exp: .lcomm is incompatible with ppc coff.Alan Modra2001-08-276-5/+20
| | | | | | | * ld-scripts/cross1.t: Add .toc section. * ld-scripts/cross2.t: Likewise. * ld-scripts/phdrs.exp: powerpc64 is 64 bit. * ld-srec/srec.exp: xfail powerpc64
* * Makefile.am (ALL_EMULATIONS): Add eelf64ppc.o and eelf64lppc.o.Alan Modra2001-08-276-12/+86
| | | | | | | | | | (eelf64ppc.c, eelf64lppc.c): Add make targets. Run "make dep-am" * Makefile.in: Regenerate. * configure.tgt: Add powerpc64 support. Move pdp11, pjl, pj entries to correct alphabetical position. * emulparams/elf64ppc.sh: New. * emulparams/elf64lppc.sh: New.
* Declare BSIZE as staticNick Clifton2001-08-272-1/+5
|
* * elf-bfd.h (enum elf_reloc_type_class): New.Jakub Jelinek2001-08-239-12/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (struct elf_backend_data): Add elf_backend_reloc_type_class. (_bfd_elf_reloc_type_class): New. * elfxx-target.h (elf_backend_reloc_type_class): Define. (elfNN_bed): Add elf_backend_reloc_type_class. * elf.c (_bfd_elf_reloc_type_class): New. * elf32-i386.c (elf_i386_check_relocs): Set DF_TEXTREL if the reloc is against read-only section. (elf_i386_size_dynamic_sections): Use DF_TEXTREL flag instead of looking up section names for DT_TEXTREL. (elf_i386_reloc_type_class): New. (elf_backend_reloc_type_class): Define. * elf32-sparc.c (elf32_sparc_check_relocs): Set DF_TEXTREL if the reloc is against read-only section. (elf32_sparc_size_dynamic_sections): Use DF_TEXTREL flag instead of looking up section names for DT_TEXTREL. (elf32_sparc_reloc_type_class): New. (elf_backend_reloc_type_class): Define. * elf64-sparc.c (sparc64_elf_check_relocs): Set DF_TEXTREL if the reloc is against read-only section. (sparc64_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of looking up section names for DT_TEXTREL. (sparc64_elf_reloc_type_class): New. (elf_backend_reloc_type_class): Define. * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add reltext field. (elfNN_ia64_hash_table_create): Clear ia64_info. (get_reloc_section): Set DF_TEXTREL if the reloc is against read-only section. (elfNN_ia64_size_dynamic_sections): Use ia64_info->reltext flag instead of looking up section names for DT_TEXTREL. (elfNN_ia64_reloc_type_class): New. (elf_backend_reloc_type_class): Define. * elflink.h (size_dynamic_sections): Add spare DT_NULL tags. (struct elf_link_sort_rela): New. (elf_link_sort_cmp1, elf_link_sort_cmp2, elf_link_sort_relocs): New. (elf_bfd_final_link): Call elf_link_sort_relocs. Convert one spare DT_NULL into DT_RELCOUNT resp. DT_RELACOUNT if necessary. * bfdlink.h (struct bfd_link_info): Add combreloc and spare_dynamic_tags fields. * emultempl/elf32.em (place_orphan): Place orphan .rel* sections into .rel.dyn resp. .rela.dyn if combreloc. (get_script): If .x linker script is equal to .xn, only put it once into the binary. Add .xc and .xsc scripts. (parse_args): Handle -z combreloc and -z nocombreloc. * scripttempl/elf.sc (.rela.sbss): Fix a typo. For .xc and .xsc scripts put all .rel* or .rela* input sections but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn. * genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME is elf. Strip trailing whitespace from script. Generate .xc and .xsc scripts if requested. * ldmain.c (main): Initialize link_info.combreloc and link_info.spare_dynamic_tags. * lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define. (ld_options): Add --spare-dynamic-tags option. (parse_args): Likewise. * ld.texinfo: Document -z combreloc and -z nocombreloc. * ldint.texinfo: Document .xc and .xsc linker scripts. * NEWS: Add notes about -z combreloc and SHF_MERGE.
* 2001-08-22 H.J. Lu <hjl@gnu.org>H.J. Lu2001-08-222-1/+5
| | | | * emulparams/elf32fr30.sh: Add a newline.
* Return if target is `vax-*-ultrix*'.Nick Clifton2001-08-212-7/+17
| | | | Continue with other tests when there is a compilation error.
* * deffilep.y: Add missing prototypes.Andreas Jaeger2001-08-213-5/+36
| | | | * pe-dll.c: Likewise.
* * ldlang.c (insert_pad): Fix typos in last patch.Alan Modra2001-08-202-2/+12
|
* * ldlang.c: When traversing lang_statement_union_type lists,Alan Modra2001-08-206-28/+27
| | | | | | | | | consistently use "header.next" rather than "next". * mpw-eppcmac.c: Likewise. * emultempl/beos.em: Likewise. * emultempl/hppaelf.em: Likewise. * emultempl/pe.em: Likewise. * ldlang.h (union lang_statement_union): Remove "next" field.
* * ldlang.c (insert_pad): Use offsetof macro.Alan Modra2001-08-203-83/+14
| | | | | (lang_size_sections): Always neuter padding statements. * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete.
* * pe-dll.c (pe_dll_fill_sections): Correct type of "relax" paramAlan Modra2001-08-203-36/+99
| | | | | | | passed to lang_size_sections. (pe_exe_fill_sections): Likewise. * emultempl/pe.em (output_prev_sec_find): Copied from elf32.em. (gld_${EMULATION_NAME}_place_orphan): Merge from elf32.em.
* * emultempl/aix.em: Formatting fixes.Alan Modra2001-08-182-335/+371
|
* * ldlang.c (insert_pad): Make use of an existing pad statement ifAlan Modra2001-08-183-106/+112
| | | | | | | | | | | | | | | available. Move code calculating alignment, adjusting section alignment power, and adjusting dot to .. (size_input_section): .. here. Remove unused relax param. (lang_size_sections): Change boolean `relax' param to boolean *. Adjust call to size_input_section. Make use of insert_pad to place pad after the assignment statement. If relaxing, zap padding statements. (reset_memory_regions): Reset output_bfd section sizes too. (relax_again): Move to.. (lang_process): ..here. Adjust call to lang_size_sections, and remove duplicated code. * ldlang.h (lang_size_sections): Change `relax' param to boolean *.
* * ld.texinfo: Document that fill values now use the four leastAlan Modra2001-08-1719-25/+47
| | | | | | | | | | | | | | | | | | | | | significant bytes. * emulparams/elf32fr30.sh (NOP): Update. * emulparams/elf32mcore.sh: Likewise. * emulparams/elf64_s390.sh: Likewise. * emulparams/elf_i386.sh: Likewise. * emulparams/elf_i386_be.sh: Likewise. * emulparams/elf_i386_chaos.sh: Likewise. * emulparams/elf_i386_ldso.sh: Likewise. * emulparams/elf_s390.sh: Likewise. * emulparams/elf_x86_64.sh: Likewise. * emulparams/i386moss.sh: Likewise. * emulparams/i386nw.sh: Likewise. * emulparams/m68kelf.sh: Likewise. * scripttempl/elf.sc: Update NOP comment. * scripttempl/elfi370.sc: Likewise. * scripttempl/elfm68hc11.sc: Likewise. * scripttempl/elfm68hc12.sc: Likewise. * scripttempl/nw.sc: Likewise.
* Fix for ldTom Rix2001-08-153-2/+7
|
* * emultempl/elf32.em: Formatting fixes.Alan Modra2001-08-142-57/+63
| | | | | | | | (output_prev_sec_find): Test for bfd_ind_section too; do so by looking at sec->owner. (output_rel_find): Move function inside LDEMUL_PLACE_ORPHAN test. (gld${EMULATION_NAME}_place_orphan): Add a few comments. Remove unused code, and reorganize orphan section placement code.
* (wild_doit): Rename to lang_add_section.Alan Modra2001-08-148-30/+41
|
* * emultempl/needrelax.em: New file.Richard Henderson2001-08-135-2/+52
| | | | | | * emulparams/elf64_ia64.sh (EXTRA_EM_FILE): Reference it. * Makefile.am (eelf64_ia64.c): Depend on it. * Makefile.in: Rebuild.
* * emultempl/elf32.em: For SEC_EXCLUDE sections, ensure thatAlan Modra2001-08-132-4/+11
| | | | output_section is set non-NULL.
* * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): ReturnAlan Modra2001-08-132-5/+13
| | | | | | `true' for SEC_EXCLUDE sections so that the generic code doesn't needlessly create an output_section_statement. Treat a correctly named output_section_statement with NULL bfd_section as compatible.
* Update copyright noticeHans-Peter Nilsson2001-08-131-1/+1
|
* * emultempl/generic.em: Support EXTRA_EM_FILE.Hans-Peter Nilsson2001-08-132-21/+52
| | | | | | | | | | | | | (ld_${EMULATION_NAME}_emulation): Support emulation parameters LDEMUL_BEFORE_PARSE, LDEMUL_SYSLIB, LDEMUL_HLL, LDEMUL_AFTER_PARSE, LDEMUL_AFTER_OPEN, LDEMUL_AFTER_ALLOCATION, LDEMUL_SET_OUTPUT_ARCH, LDEMUL_CHOOSE_TARGET, LDEMUL_BEFORE_ALLOCATION, LDEMUL_GET_SCRIPT, LDEMUL_FINISH, LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS, LDEMUL_OPEN_DYNAMIC_ARCHIVE, LDEMUL_PLACE_ORPHAN, LDEMUL_SET_SYMBOLS, LDEMUL_PARSE_ARGS, LDEMUL_UNRECOGNIZED_FILE, LDEMUL_LIST_OPTIONS, LDEMUL_RECOGNIZED_FILE, LDEMUL_FIND_POTENTIAL_LIBRARIES.
* * scripttempl/elf.sc, scripttempl/elfd30v.sc,Richard Henderson2001-08-126-2/+26
| | | | | scripttempl/elfm68hc11.sc, scripttempl/elfm68hc12.sc, scripttempl/v850.sc: Keep .jcr data.
* Make --verbose always display linker scriptNick Clifton2001-08-127-18/+63
|
* * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypesAndreas Jaeger2001-08-103-219/+214
| | | | | to build warnings. * configure: Regenerate.
* * emultempl/elf32.em (output_prev_sec_find): Add missing prototype.Alan Modra2001-08-092-0/+4
|
* * scripttempl/elf.sc: Move non-text .dynamic section beforeAlan Modra2001-08-0918-19/+45
| | | | | | | | | | | | | | | | | | | | | | | .plt/.got/.sdata* group. (OTHER_GOT_SECTIONS): Move to immediately after .got. (OTHER_SDATA_SECTIONS): Add. * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than OTHER_GOT_SECTIONS. * emulparams/crislinux.sh: Likewise. * emulparams/elf32b4300.sh: Likewise. * emulparams/elf32bmip.sh: Likewise. * emulparams/elf32bmipn32.sh: Likewise. * emulparams/elf32bsmip.sh: Likewise. * emulparams/elf32btsmip.sh: Likewise. * emulparams/elf32ebmip.sh: Likewise. * emulparams/elf32elmip.sh: Likewise. * emulparams/elf32l4300.sh: Likewise. * emulparams/elf32lmip.sh: Likewise. * emulparams/elf32lsmip.sh: Likewise. * emulparams/elf32ltsmip.sh: Likewise. * emulparams/elf64bmip.sh: Likewise. * emulparams/elf64btsmip.sh: Likewise. * emulparams/elf64ltsmip.sh: Likewise.
* * genscripts.sh: Source the emulparams script before each outputAlan Modra2001-08-082-12/+24
| | | | | script is generated so that variables like `RELOCATING' may affect variables defined in the emulparams script.