Alan Modra
7e9f086769
bfd/
...
* elflink.c (elf_link_add_object_symbols): Don't create link dynamic
sections immediately when linking shared libs. Instead, wait until
we know a lib is needed.
(_bfd_elf_link_create_dynstrtab): Extract from..
(_bfd_elf_link_create_dynamic_sections_): ..here.
(elf_add_dt_needed_tag): Call _bfd_elf_link_create_dynstrtab and
_bfd_elf_link_create_dynamic_sections. Add abfd param. Allow
for non-existent .dynamic.
(elf_link_output_extsym): Don't complain about undefined symbols
in as-needed dynamic libs that aren't actually linked.
ld/
* emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Formatting.
(gld${EMULATION_NAME}_after_open): Ignore needed libs if they were
only needed by an as-needed lib that didn't get linked.
2005-01-25 01:40:04 +00:00
Alan Modra
7e69709c9e
* ld.texinfo (Output Section Keywords <CONSTRUCTORS>): Correct
...
__DTOR_LIST__ description.
2005-01-23 07:43:52 +00:00
Alan Modra
b5666f2f09
* ld.texinfo (Location Counter <dot outside sections>): Document
...
effects of orphan section placement, and ". = ." workaround.
* Makefile.in: Regenerate.
2005-01-23 05:36:37 +00:00
Richard Sandiford
4e25343c6e
* emulparams/elf32bmip.sh (OTHER_GOT_SECTIONS): Add ". = .;".
...
* emulparams/elf32bmipn32-defs.sh (OTHER_GOT_SECTIONS): Likewise.
2005-01-22 18:13:16 +00:00
Mark Mitchell
ab730cc79f
* emulparams/armelfb_linux_eabi.sh: New file.
2005-01-22 01:50:35 +00:00
Jakub Jelinek
b717d30eb5
* ldgram.y (AS_NEEDED): New token.
...
(input_list): Handle AS_NEEDED ( input_list ).
* ldlex.l (AS_NEEDED): Add.
* ld.texinfo: Document AS_NEEDED ().
* NEWS: Mention AS_NEEDED ().
2005-01-21 12:04:25 +00:00
Ben Elliston
7a64f7b8d6
* ldlang.c (lang_reasonable_defaults): Remove.
...
(lang_process): Don't call lang_reasonable_defaults.
* ldexp.c (exp_assop): Remove #if 0'd code.
(exp_print_tree): Likewise.
* ldlang.c (lang_memory_region_lookup): Likewise.
(open_output): Likewise.
(lang_do_assignments_1): Likewise.
(lang_place_orphans): Likewise.
(lang_enter_output_section_statement): Likewise.
(lang_reasonable_defaults): Likewise.
* ldlang.h (struct lang_input_statement_struct): Likewise.
* mri.c (mri_draw_tree): Likewise.
(mri_load): Likewise.
* pe-dll.c (generate_reloc): Likewise.
(make_import_fixup_entry): Likewise.
(pe_as16): Likewise.
* emultempl/beos.em (set_pe_subsystem): Likewise.
* emultempl/hppaelf.em (hppaelf_after_parse): Likewise.
* emultempl/pe.em: Likewise.
* emultempl/xtensaelf.em (xtensa_colocate_literals): Likewise.
2005-01-21 04:15:59 +00:00
Mark Mitchell
a154a8ad20
* Makefile.am (ALL_EMULATIONS): Add earmelfb_linux_eabi.o.
...
(earmelfb_linux_eabi.c): New target.
* Makefile.in: Regenerated.
* configure.tgt (arm*b-*-linux-gnueabi): New target.
* emulparams/armelfb_linux_eabi.sh: New file.
2005-01-20 19:37:49 +00:00
Alan Modra
9c18318347
PR ld/676
...
* emultempl/hppaelf.em (hppaelf_create_output_section_statements):
Handle bfd_elf32_hppa_nbsd_vec.
2005-01-20 07:47:49 +00:00
Richard Sandiford
e22430578c
* ldmain.h (ld_sysroot): Change type to a constant string.
...
* ldmain.c (ld_sysroot): Likewise.
(get_relative_sysroot, get_sysroot): New functions, adding command-line
support for changing the sysroot.
(main): Call the new functions.
* lexsup.c (OPTION_SYSROOT): New.
(ld_options): Add --sysroot.
(parse_args): Add a dummy handler for it.
* ld.texinfo (--sysroot): Document.
* NEWS: Mention the new --sysroot option.
2005-01-19 11:42:49 +00:00
Alan Modra
1449d79bae
bfd/
...
* bfd.c (bfd_link_just_syms): Add abfd param.
* bfd-in2.h: Regenerate.
ld/
* ldlang.c (section_already_linked): Adjust bfd_link_just_syms call.
(lang_place_orphans): Don't abort on just_syms_flag, instead call
bfd_link_just_syms.
2005-01-18 08:51:54 +00:00
Richard Sandiford
dcf507a6ee
* elf-eh-frame.c (skip_cfa_op, skip_non_nops): New functions.
...
(_bfd_elf_discard_section_eh_frame): Use them to interpret the CFA
instructions. If the amount of padding is known, reduce the size
of the CIE or FDE by that amount.
2005-01-17 17:44:41 +00:00
Nick Clifton
e38bc3b524
Fix SH2A machine variants in order to correctly select instruction inheritance
2005-01-17 14:08:17 +00:00
Danny Smith
a880c7485c
* defilep.y (def_name, def_library): Combine into...
...
(def_image_name): New function. Strip name to basename,
with warning.
2005-01-16 09:18:35 +00:00
Mark Kettenis
07baa8eeeb
* configure.in: Be sure to invoke config.sub using the shell.
...
* configure: Regenerate.
2005-01-12 22:12:24 +00:00
Kaz Kojima
15dd0fe8d4
* ld-sh/shared-1.d: Update for changed dynamic syms.
...
* ld-sh/sh64/gotplt.d: Likewise.
* ld-sh/sh64/init-cmpct.d: Likewise.
* ld-sh/sh64/init-media.d: Likewise.
* ld-sh/sh64/init64.d: Likewise.
2005-01-11 23:55:14 +00:00
Alan Modra
e9b181b83c
* configure.host: Correct sed patterns for last change.
2005-01-11 09:36:46 +00:00
Nick Clifton
59ef2528a2
PR binutils/609
...
* ldmisc.c (vfinfo): Add an extra argument: is_warning. Use this to determine
whether config.make_executable should be set to FALSE in conjunction with
config.fatal_warnings.
(info_msg, minfo, lfinof): Pass FALSE as the extra argument.
(einfo): Pass TRUE as the extra argument.
2005-01-10 15:45:00 +00:00
Nick Clifton
71a2d53a5c
(linux targets): Use "${CC} -dumpspecs" instead of "${CC} --print-file-name=specs" to appease GCC versions >= 4.0.
...
(ia64-*-aix): Delete - this target is obsolete, and would be broken by this patch.
2005-01-10 14:57:32 +00:00
Eric Botcazou
d6d0b336f8
* configure.host (sparc*-*-solaris2*): Rename into sparc-*-solaris2*.
...
(sparc64-sun-solaris2*): New host.
2005-01-06 18:05:17 +00:00
Paul Brook
4e7fd91e3e
2005-01-06 Paul Brook <paul@codesourcery.com>
...
bfd/
* config.bfd: Add entry for arm-*-vxworks and arm-*-windiss.
* configure.in: Add bfd_elf32_{big,little}arm_vxworks_vec.
* configure: Regenerate.
* elf32-arm.c: Add VxWorks target bfd.
(USE_REL): Remove.
(elf32_arm_link_hash_table): Add use_rel.
(elf32_arm_link_hash_table_create, elf32_arm_final_link_relocate,
elf32_arm_relocate_section): Replace USE_REL with runtime check.
Correct offset calculation for RELA case.
(elf_backend_may_use_rel_p, elf_backend_may_use_rela_p,
elf_backend_default_use_rela_p, elf_backend_rela_normal): Define.
(elf32_arm_vxworks_link_hash_table_create): New function.
* targets.c (bfd_elf32_bigarm_vxworks_vec): Add declaration.
(bfd_elf32_littlearm_vxworks_vec): Ditto.
(_bfd_target_vector): Add bfd_elf32_{big,little}arm_vxworks_vec.
gas/
* config/tc-arm.c (FPU_DEFAULT): Define for TE_VXWORKS.
(md_begin): Handle TE_VXWORKS for FP defaults.
(md_apply_fix3): Correct rela offsets.
(elf32_arm_target_format): Add VxWorks targets.
ld/
* Makefie.am: Add earmelf_vxworks.
* Makefile.in: Regenerate.
* configure.tgt: Make arm-*-vxworks a separate case.
* emulparams/armelf_vxworks.sh: New function.
2005-01-06 16:18:25 +00:00
Alan Modra
4c52953f84
bfd/
...
* elf64-ppc.c (struct ppc_link_hash_table): Add no_multi_toc and
multi_toc_needed.
(has_toc_reloc, makes_toc_func_call, call_check_in_progress): Define.
(ppc64_elf_check_relocs): Update references to has_gp_reloc.
(ppc64_elf_setup_section_lists): Add no_multi_toc parm, set htab bit.
(ppc64_elf_next_toc_section): Heed no_multi_toc.
(ppc64_elf_reinit_toc): Set multi_toc_needed.
(toc_adjusting_stub_needed): Rewrite.
(ppc64_elf_next_input_section): Use multi_toc_needed to shortcut
toc tests. Adjust for toc_adjusting_stub_needed changes.
(ppc64_elf_size_stubs): Update references to has_gp_reloc.
* elf64-ppc.h (ppc64_elf_setup_section_lists): Update prototype.
* section.c: Expand comment on backend bits.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
ld/
* emultempl/ppc64elf.em (no_multi_toc): New var.
(gld${EMULATION_NAME}_finish): Pass to ppc64_elf_setup_section_lists.
(OPTION_NO_MULTI_TOC): Define.
(PARSE_AND_LIST_LONGOPTS): Add --no-multi-toc support.
(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
2005-01-06 09:03:56 +00:00
Nick Clifton
98d87ee709
PR binutils/614
...
* ldmisc.c (vfinfo): Alter output to conform to the GNU Coding Standard's
specification for parsable error messages.
2005-01-05 16:03:23 +00:00
Paul Brook
5f81b918e0
* Makefile.am: Correct dependency for earmsymbian.c.
...
* Makefile.in: Regenerate.
2005-01-04 15:16:25 +00:00
Danny Smith
2af59babed
* emultempl/pe.em (set_pe_subsystem): Change second arg to
...
lang_add_entry to FALSE.
2004-12-29 05:59:29 +00:00
Nick Clifton
c38f024c3d
PR 600
...
* emulparams/shelf.sh (.stack): Increase stack start address to 0x300000.
2004-12-23 12:27:45 +00:00
Tomer Levi
911a63006c
2004-12-21 Tomer Levi <Tomer.Levi@nsc.com>
...
* ld-crx/reloc-abs32.d: Update reference file according
to disassembler printing method.
* ld-crx/reloc-rel16.d: Likewise.
* ld-crx/reloc-rel24.d: Likewise.
* ld-crx/reloc-rel32.d: Likewise.
* ld-crx/reloc-rel4.d: Likewise.
* ld-crx/reloc-rel8-cmp.d: Likewise.
* ld-crx/reloc-rel8.d: Likewise.
2004-12-22 08:14:38 +00:00
Tomer Levi
5b269403ba
2004-12-21 Tomer Levi <Tomer.Levi@nsc.com>
...
* ld-crx/reloc-abs32.d: Update reference file according to disassembler printing method.
* ld-crx/reloc-rel16.d: Likewise.
* ld-crx/reloc-rel24.d: Likewise.
* ld-crx/reloc-rel32.d: Likewise.
* ld-crx/reloc-rel4.d: Likewise.
* ld-crx/reloc-rel8-cmp.d: Likewise.
* ld-crx/reloc-rel8.d: Likewise.
2004-12-21 16:28:40 +00:00
Nick Clifton
550bdea6de
Issue an error message if -static and -shared are used together.
2004-12-20 15:16:06 +00:00
Jakub Jelinek
e3070fef41
* ldexp.h (exp_data_seg): Add min_base and maxpagesize fields.
...
* ldexp.c (fold_binary) <case DATA_SEGMENT_ALIGN>: Initialize them.
* ldlang.c (lang_size_sections): Use them to avoid wasting virtual
address space at DATA_SEGMENT_ALIGN. Fix computation of expected
PT_GNU_RELRO segment end.
2004-12-17 15:50:02 +00:00
Richard Sandiford
1e50d24d55
include/elf/
...
* v850.h (R_V850_LO16_SPLIT_OFFSET): New reloc.
bfd/
* reloc.c (BFD_RELOC_V850_LO16_SPLIT_OFFSET): New bfd_reloc_code_type.
* elf32-v850.c (v850_elf_howto_table): Add entry for
R_V850_LO16_SPLIT_OFFSET.
(v850_elf_reloc_map): Map it to BFD_RELOC_V850_LO16_SPLIT_OFFSET.
(v850_elf_perform_lo16_relocation): New function, extracted from...
(v850_elf_perform_relocation): ...here. Use it to handle
R_V850_LO16_SPLIT_OFFSET.
(v850_elf_check_relocs, v850_elf_final_link_relocate): Handle
R_V850_LO16_SPLIT_OFFSET.
* libbfd.h, bfd-in2.h: Regenerate.
gas/
* config/tc-v850.c (handle_lo16): New function.
(v850_reloc_prefix): Use it to check lo().
(md_assemble, md_apply_fix3): Handle BFD_RELOC_V850_LO16_SPLIT_OFFSET.
gas/testsuite/
* gas/v850/split-lo16.{s,d}: New test.
* gas/v850/v850.exp: Run it.
ld/testsuite/
* ld-v850: New directory.
2004-12-16 16:56:04 +00:00
Nick Clifton
2fbd2a87e2
Add support for s390x-ibm-tpf target
2004-12-16 16:02:59 +00:00
Nick Clifton
f2763b012e
* ldmisc.c (vfinfo): Handle the case where %B is passed a NULL BFD.
2004-12-16 15:40:36 +00:00
Richard Sandiford
c314987d19
* elfxx-mips.c (mips_elf_calculate_relocation): Don't report an
...
overflow for calls to undefined weak symbols.
2004-12-14 09:48:20 +00:00
Richard Sandiford
1f0f3e9b89
* ld-mips-elf/mips-elf.exp: Only run jalbal if n32 is supported.
2004-12-13 13:09:55 +00:00
Alan Modra
5c799c0790
bfd/
...
* elfcode.h (elf_slurp_symbol_table): Use bfd_elf_sym_name so that
canonical sections syms have a name.
gas/testsuite/
Update for changed section syms.
ld/testsuite/
Update for changed section syms.
2004-12-11 04:32:37 +00:00
Ian Lance Taylor
3a6eb9c0d7
* ld-mips-elf/jalbal.d: New test.
...
* ld-mips-elf/jalbal.s: New test.
* ld-mips-elf/mips-elf.exp: Run it.
2004-12-09 07:14:53 +00:00
Ian Lance Taylor
0efd416086
* ld-mips-elf/jaloverflow.d: New test.
...
* ld-mips-elf/jaloverflow.s: New test.
* ld-mips-elf/mips-elf.exp: Run it.
2004-12-08 20:28:08 +00:00
Ben Elliston
cb9faf63f8
* ldemul.h: Forward declare struct option.
2004-12-07 12:29:41 +00:00
H.J. Lu
e1d9786917
2004-12-03 H.J. Lu <hongjiu.lu@intel.com>
...
* ld-elf/group1.d: Support 64bit.
2004-12-03 17:06:28 +00:00
Paul Brook
529fcb9585
2004-12-01 Paul Brook <paul@codesourcery.com>
...
bfd/
* elflink.c (elf_link_add_object_symbols): Make symbols from discarded
sections undefined.
ld/testsuite/
* ld-elf/group1.d: New test.
* ld-elf/group.ld, ld-elf/group1a.s, ld-elf/group1b.s: New test.
2004-12-01 23:23:12 +00:00
Daniel Jacobowitz
6db74b6f21
* ld-selective/selective.exp: Use -print-libgcc-file-name for
...
ARM and v850 also.
2004-12-01 21:12:39 +00:00
Danny Smith
02f80eef3f
* scripttempl/pe.sc (.data): Add .jcr subsection.
2004-11-30 23:54:53 +00:00
Paul Brook
dea514f51d
2004-11-30 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (struct elf32_arm_link_hash_table): Remove
no_pipeline_knowledge
(elf32_arm_link_hash_table_create): Ditto.
(bfd_elf32_arm_process_before_allocation): Ditto.
(elf32_arm_final_link_relocate): Ditto. Remove oabi relocation
handling.
* bfd-in.h (bfd_elf32_arm_process_before_allocation): Update
prototype.
* bfd-in2.h: Regenerate.
ld/
* emultempl/armelf.em: Ignore -p and -no-pipeline-knowledge.
2004-11-30 17:45:54 +00:00
Nick Clifton
3211808135
Change LOCALEDIR to $(datadir)/share.
2004-11-30 17:20:48 +00:00
Nick Clifton
33f362e109
Add support for --subsystem:xbox as well as --subsystem:<number>.
2004-11-26 09:42:04 +00:00
Paul Brook
0beaef2b05
2004-11-24 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (elf32_arm_swap_symbol_in): New function.
(elf32_arm_swap_symbol_out): New function.
(elf32_arm_size_info): Add.
(elf_backend_size_info): Define.
ld/testsuite/
* ld-arm/mixed-lib.sym: Update for THUMB_FUNC change.
2004-11-24 14:44:47 +00:00
Alan Modra
3eda52aa32
* ldexp.c (fold_name): Correct PR 338 fix.
2004-11-24 11:30:17 +00:00
Mark Mitchell
6b3221b47a
* Makefile.am (ALL_EMULATIONS): Add earmelf_linux_eabi.o.
...
(earmelf_linux_eabi.c): New target.
* configure.tgt (arm*-*-linux-gnueabi): Handle it.
* emulparams/armelf_linux_eabi.sh: New file.
* Makefile.in: Regenerated.
2004-11-19 19:28:40 +00:00
Nick Clifton
9cd6d51a56
PR 518
...
Update the descriptions of the ORIGIN and LENGTH fields in the MEMORY command,
to explicitly state that symbols cannot be used in their expressions.
2004-11-19 09:38:04 +00:00