H.J. Lu
a19bcec6a7
2007-06-29 H.J. Lu <hongjiu.lu@intel.com>
...
* NEWS: Remove a line with '*' only.
2007-06-29 18:44:09 +00:00
Joseph Myers
2cf19d5cb9
bfd:
...
* elfxx-mips.c (mips_elf_merge_obj_attributes): New.
(_bfd_mips_elf_merge_private_bfd_data): Call it.
binutils:
* readelf.c (display_mips_gnu_attribute): New.
(process_mips_specific): Call process_attributes.
include/elf:
* mips.h (Tag_GNU_MIPS_ABI_FP): Define.
ld/testsuite:
* ld-mips-elf/attr-gnu-4-0.s, ld-mips-elf/attr-gnu-4-00.d,
ld-mips-elf/attr-gnu-4-01.d, ld-mips-elf/attr-gnu-4-02.d,
ld-mips-elf/attr-gnu-4-03.d, ld-mips-elf/attr-gnu-4-1.s,
ld-mips-elf/attr-gnu-4-10.d, ld-mips-elf/attr-gnu-4-11.d,
ld-mips-elf/attr-gnu-4-12.d, ld-mips-elf/attr-gnu-4-13.d,
ld-mips-elf/attr-gnu-4-14.d, ld-mips-elf/attr-gnu-4-2.s,
ld-mips-elf/attr-gnu-4-20.d, ld-mips-elf/attr-gnu-4-21.d,
ld-mips-elf/attr-gnu-4-22.d, ld-mips-elf/attr-gnu-4-23.d,
ld-mips-elf/attr-gnu-4-3.s, ld-mips-elf/attr-gnu-4-30.d,
ld-mips-elf/attr-gnu-4-31.d, ld-mips-elf/attr-gnu-4-32.d,
ld-mips-elf/attr-gnu-4-33.d, ld-mips-elf/attr-gnu-4-4.s,
ld-mips-elf/attr-gnu-4-41.d: New.
* ld-mips-elf/mips-elf.exp: Run these new tests.
2007-06-29 16:41:32 +00:00
Joseph Myers
104d59d19c
bfd:
...
* elf-attrs.c: New.
* Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
(BFD32_BACKENDS_CFILES): Add elf-attrs.c.
(elf-attrs.lo): Generate dependencies.
* Makefile.in: Regenerate.
* configure.in (elf): Add elf-attrs.lo.
* configure: Regenerate.
* elf-bfd.h (struct elf_backend_data): Add entries for object
attributes.
(NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
New.
(struct elf_obj_tdata): Add entries for object attributes.
(elf_known_obj_attributes, elf_other_obj_attributes,
elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
New.
(bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
_bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
_bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
* elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
(bfd_section_from_shdr): Handle attributes sections.
* elflink.c (bfd_elf_final_link): Handle attributes sections.
* elfxx-target.h (elf_backend_obj_attrs_vendor,
elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
elf_backend_obj_attrs_section_type): New.
(elfNN_bed): Update.
* elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
aeabi_attribute_list): Remove.
(struct elf32_arm_obj_tdata): Remove object attributes fields.
(check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
Update for new object attributes interfaces.
(uleb128_size, is_default_attr, eabi_attr_size,
elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
elf32_arm_add_eabi_attr_int, attr_strdup,
elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
to generic code in elf-attrs.c.
(elf32_arm_obj_attrs_arg_type): New.
(elf32_arm_fake_sections): Do not handle .ARM.attributes.
(elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
(bfd_elf32_bfd_final_link): Remove.
(elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
elf_backend_obj_attrs_arg_type,
elf_backend_obj_attrs_section_type): New.
* elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
attributes.
* elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
* elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
* elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
* elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
* elf32-sh.c (sh_elf_copy_private_data): Likewise.
* elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
binutils:
* readelf.c (display_gnu_attribute): New.
(process_arm_specific): Rearrange as process_attributes.
(process_arm_specific): Replace by wrapper of process_attributes.
gas:
* as.c (create_obj_attrs_section): New.
(main): Call create_obj_attrs_section for ELF.
* read.c (s_gnu_attribute, skip_whitespace, skip_past_char,
skip_past_comma, s_vendor_attribute): New.
(potable): Add gnu_attribute for ELF.
* read.h (s_vendor_attribute): Declare.
* config/tc-arm.c (s_arm_eabi_attribute): Replace by wrapper
round s_vendor_attribute.
(aeabi_set_public_attributes): Update for new attributes
interfaces.
(arm_md_end): Remove attributes contents setting now done
generically.
include/elf:
* arm.h (elf32_arm_add_eabi_attr_int,
elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
elf32_arm_get_eabi_attr_int, elf32_arm_set_eabi_attr_contents,
elf32_arm_eabi_attr_size, Tag_NULL, Tag_File, Tag_Section,
Tag_Symbol, Tag_compatibility): Remove.
* common.h (SHT_GNU_ATTRIBUTES): Define.
ld:
* emulparams/armelf.sh (OTHER_SECTIONS): Remove .ARM.attributes.
(ATTRS_SECTIONS): Define.
* scripttempl/elf.sc, scripttempl/elf32sh-symbian.sc,
scripttempl/elf_chaos.sc, scripttempl/elfi370.sc,
scripttempl/elfxtensa.sc: Handle ATTRS_SECTIONS.
2007-06-29 16:29:17 +00:00
Paul Brook
5ab7998193
2007-06-29 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
call veneers for call relocations against undefined symbols.
(elf32_arm_final_link_relocate): Turn call to undefined symbol
into a jump to the next instruction.
ld/testuite/
* ld-arm/arm-elf.exp (armelftests): Add callweak.
* ld-arm/callweak.d: New test.
* ld-arm/callweak.s: New test.
2007-06-29 15:05:47 +00:00
Nick Clifton
3d3d428f04
New port: National Semiconductor's CR16
2007-06-29 14:09:34 +00:00
H.J. Lu
f403ca9371
2007-06-28 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/4701
* ld-elf/noload-2.d: New.
2007-06-29 03:10:53 +00:00
Alan Modra
cc481421d0
bfd/
...
* bfd.c (struct bfd): Rename "next" to "archive_next".
* archive.c: Rename uses throughout file.
* archive64.c: Likewise.
* coff-rs6000.c: Likewise.
* ecoff.c: Likewise.
* som.c: Likewise.
* bfd-in2.h: Regenerate.
binutils/
* ar.c: Rename uses of bfd.next to bfd.archive_next throughout.
* arsup.c: Likewise.
* binemul.c: Likewise.
* objcopy.c: Likewise.
* dlltool.c: Likewise.
ld/
* pe-dll.c: Rename uses of bfd.next to bfd.archive_next throughout.
2007-06-27 11:54:10 +00:00
H.J. Lu
d431cc14f3
2007-06-29 H.J. Lu <hjl@gnu.org>
...
* ld-scripts/assert.t: Discard .reginfo sections.
2007-06-26 16:41:04 +00:00
Joseph Myers
3d3e6f9a7c
bfd:
...
* elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
ld/testsuite:
* ld-arm/attr-merge.s, ld-arm/attr-merge.attr: New.
* ld-arm/arm-elf.exp (armelftests): Add new test.
2007-06-26 13:55:04 +00:00
Richard Sandiford
b314ec0eae
bfd/
...
* elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
to be used for calls from MIPS16 code.
gas/
* config/tc-mips.h (TC_SYMFIELD_TYPE): New.
* config/tc-mips.c (append_insn): Record which symbols have
R_MIPS16_26 relocations against them.
(mips_fix_adjustable): Don't reduce relocations against such symbols.
ld/testsuite/
* ld-mips-elf/mips16-local-stubs-1.s,
* ld-mips-elf/mips16-local-stubs-1.d: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
2007-06-25 10:13:57 +00:00
Alan Modra
3e6c41d1d5
* emulparams/elf32_spu.sh (OTHER_SECTIONS): KEEP .note.spu_name.
2007-06-20 00:28:44 +00:00
H.J. Lu
293a012441
bfd/
...
2007-06-19 H.J. Lu <hongjiu.lu@intel.com>
PR ld/4590
* elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
when removing duplicated entries.
(get_dyn_sym_info): Initialize the got_offset field to -1.
Update call to sort_dyn_sym_info.
(elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
array of addend and remove duplicates.
ld/testsuite/
2007-06-19 H.J. Lu <hongjiu.lu@intel.com>
PR ld/4590
* ld-ia64/merge1.d: New.
* ld-ia64/merge1.s: Likewise.
* ld-ia64/merge2.d: Likewise.
* ld-ia64/merge2.s: Likewise.
* ld-ia64/merge3.d: Likewise.
* ld-ia64/merge3.s: Likewise.
* ld-ia64/merge4.d: Likewise.
* ld-ia64/merge4.s: Likewise.
* ld-ia64/merge5.d: Likewise.
* ld-ia64/merge5.s: Likewise.
2007-06-19 13:05:55 +00:00
Andreas Schwab
49e8a957c1
* ld-scripts/cross3.t: Add .opd section.
2007-06-18 18:53:45 +00:00
Nathan Sidwell
5d41b3efe4
* ldlex.l, ldgram.y: Add ALIGNOF.
...
* ldexp.c (exp_print_token, foldname): Likewise.
* ld.texinfo: Likewise.
: ----------------------------------------------------------------------
2007-06-18 14:23:57 +00:00
Nathan Sidwell
362c1d1a04
* ldlex.l, ldgram.y: Add ALIGNOF.
...
* ldexp.c (exp_print_token, foldname): Likewise.
* ld.texinfo: Likewise.
ld/testsuite/
* ld-scripts/alignof.s: New.
* ld-scripts/alignof.t: New
* ld-scripts/alignof.exp: New.
2007-06-18 12:38:22 +00:00
Alan Modra
42ba7415cc
* Makefile.am: Add eelf32_spu.o rule.
...
* Makefile.in: Regenerate.
* emultempl/spuelf.em: Revert last change. Instead use EMBEDSPU
defined in Makefile for embedspu name.
2007-06-18 10:58:07 +00:00
Alan Modra
628e885946
* emultempl/spuelf.em (embedded_spu_file): Deduce embedspu program
...
name prefix from that of ld.
2007-06-18 02:23:56 +00:00
H.J. Lu
798879259b
bfd/
...
2007-06-14 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.
* acinclude.m4: Don't include m4 files. Remove libtool
kludge.
* Makefile.in: Regenerated.
* doc/Makefile.in: Likewise.
* aclocal.m4: Likewise.
* configure: Likewise.
binutils/
2007-06-14 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
* acinclude.m4: Removed.
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: Likewise.
gas/
2007-06-14 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
* acinclude.m4: Don't include m4 files.
(BFD_BINARY_FOPEN): Removed.
Remove libtool kludge.
* Makefile.in: Regenerated.
* doc/Makefile.in: Likewise.
* aclocal.m4: Likewise.
* configure: Likewise.
gprof/
2007-06-14 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
* acinclude.m4: Removed.
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: Likewise.
ld/
2007-06-14 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
* acinclude.m4: Removed.
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: Likewise.
opcodes/
2007-06-14 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
* acinclude.m4: Removed.
* Makefile.in: Regenerated.
* doc/Makefile.in: Likewise.
* aclocal.m4: Likewise.
* configure: Likewise.
2007-06-14 15:31:01 +00:00
Alan Modra
b7b949f5e9
Update.
2007-06-14 08:53:09 +00:00
Alan Modra
107eb3fc40
* emultempl/spu_ovl.S: Don't trash lr on tail call from one
...
overlay to another.
* emultempl/spu_ovl.o: Regenerate.
2007-06-14 08:41:41 +00:00
Bob Wilson
460d3e08a2
* emulparams/elf32xtensa.sh (OTHER_READONLY_SECTIONS): Add ONLY_IF_RO
...
for .xt_except_table.
(OTHER_RELRO_SECTIONS): New.
2007-06-11 23:46:32 +00:00
Bob Wilson
99ded152a5
bfd/
...
* elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
(extend_ebb_bounds_backward, compute_text_actions): Likewise.
(compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
(xtensa_get_property_predef_flags): Likewise.
(compute_removed_literals): Pass new arguments to is_removable_literal.
(is_removable_literal): Add sec, prop_table and ptblsize arguments.
Do not remove literal if the NO_TRANSFORM property flag is set.
gas/
* config/tc-xtensa.c (XTENSA_PROP_INSN_NO_TRANSFORM): Renamed to...
(XTENSA_PROP_NO_TRANSFORM): ...this.
(frag_flags_struct): Move is_no_transform out of the insn sub-struct.
(xtensa_mark_frags_for_org): New.
(xtensa_handle_align): Set RELAX_ORG frag subtype for rs_org.
(xtensa_post_relax_hook): Call xtensa_mark_frags_for_org.
(get_frag_property_flags): Adjust reference to is_no_transform flag.
(xtensa_frag_flags_combinable): Likewise.
(frag_flags_to_number): Likewise. Use XTENSA_PROP_NO_TRANSFORM.
* config/tc-xtensa.h (xtensa_relax_statesE): Add RELAX_ORG.
include/elf/
* xtensa.h (XTENSA_PROP_INSN_NO_TRANSFORM): Renamed to...
(XTENSA_PROP_NO_TRANSFORM): ...this.
ld/
* emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Use renamed
XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
2007-06-11 16:53:08 +00:00
Alan Modra
a9a4c53ecc
include/
...
* bfdlink.h (struct bfd_link_info): Add input_bfds_tail.
bfd/
* simple.c (bfd_simple_get_relocated_section_content): Init
input_bfds_tail.
ld/
* ldlang.c (ldlang_add_file): Use input_bfds_tail.
* ldmain.c (main): Init input_bfds_tail. Sort link_info
initialization.
2007-05-31 15:04:52 +00:00
Alan Modra
3ba20bde7e
binutils/
...
* embedspu.sh: Emit SPU ELF image to .data.rel.ro.speelf if
pic or pie and image needs relocs.
ld/
* emultempl/spuelf.em (base_name): New function, split out from..
(embedded_spu_file) ..here. Pass -fPIC or -fpie to embedspu
invocation if we deduce a shared lib or position independent
executable build by looking at ctrbegin* linker input files.
2007-05-29 13:10:10 +00:00
Alan Modra
a7e4b3fed3
* emultempl/spu_ovl.S (__rv_pattern, __cg_pattern): Set symbol
...
types and sizes.
* emultempl/spu_ovl.o: Regenerate.
2007-05-29 12:54:29 +00:00
Steve Ellcey
d7040cdb28
* regenerated files from updating libtool.
2007-05-24 18:12:51 +00:00
Steve Ellcey
37ad95141b
* ltmain.sh: Update from GCC.
...
* libtool.m4: Update from GCC.
* ltsugar.m4: New. Update from GCC.
* ltversion.m4: New. Update from GCC.
* ltoptions.m4: New. Update from GCC.
* ltconfig: Remove.
* ltcf-c.sh: Remove.
* ltcf-cxx.sh: Remove.
* ltcf-gcj.sh: Remove.
* src-release: Update with new libtool file list.
* newlib/*/configure.in: invoke _LD_DECL_SED.
* newlib/*/Makefile.am: Ensure toplevel is included in ACLOCAL_AMFLAGS.
* Regenerate subdirectories
2007-05-24 17:33:42 +00:00
Nathan Sidwell
8545d1a9dd
* ldlex.l: ASSERT is recognized in SCRIPT env. NAMES cannot
...
contain commas in EXP env.
* ldgram.y (extern_name_list): Push to EXP env, move body to ...
(extern_name_list_body): ... here.
(script_file, ifile_list): Reformat.
(statement): Add ASSERT.
testsuite:
* ld-scripts/assert.t: Add additional cases.
* ld-scripts/extern.t, ld-scripts/extern.s,
ld-scripts/extern.exp: New.
2007-05-24 09:24:09 +00:00
Paul Brook
91a5743d01
2007-05-22 Paul Brook <paul@codesourcery.com>
...
ld/testsuite/
* ld-arm/arm-pic-veneer.d: Update expected output.
* ld-arm/arm-call.d: Ditto.
bfd/
* elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
with sec and sec_shndx.
(elf32_arm_ouput_plt_map_sym): Use them.
(elf32_arm_output_arch_local_syms): Output mapping symbols for
interworking glue.
2007-05-22 17:17:53 +00:00
Paul Brook
e39ff52a3b
2007-05-22 Paul Brook <paul@codesourcery.com>
...
bunutils/
* objdump.c (find_symbol_for_address): Merge section and target
specific filtering code.
ld/testsuite/
* ld-arm-mixed-lib.d: Update expected output.
* ld-arm/arm-app.d: Ditto.
* ld-arm/mixed-app.d: Ditto.
* ld-arm/arm-lib-plt32.d: Ditto.
* ld-arm/arm-app-abs32.d: Ditto.
* ld-arm/mixed-app-v5.d: Ditto.
* ld-arm/armthumb-lib.d: Ditto.
* ld-arm/arm-lib.d: Ditto.
gas/testsuite/
* gas/arm/backslash-at.d: Update expected output.
2007-05-22 15:05:12 +00:00
Nick Clifton
0e9517a90d
Use @copying around copyright notices
2007-05-22 09:16:39 +00:00
Richard Sandiford
7df428b116
binutils/
...
* objdump.c (disassemble_bytes): Ignore disassembler_needs_relocs
for executables and shared libraries.
ld/testsuite/
* ld-arm/emit-relocs1.d, ld-arm/emit-relocs1.s,
* ld-arm/emit-relocs1-vxworks.d: New tests.
* ld-arm/arm-elf.exp: Run them.
* ld-arm/vxworks1.dd: Expect proper branch targets.
2007-05-21 06:36:01 +00:00
Joseph Myers
d5da93a2e1
* ld-elf/group.ld: Discard .reginfo.
2007-05-18 19:04:51 +00:00
Richard Sandiford
120facfc96
ld/
...
* emulparams/elf32ebmipvxworks.sh (OTHER_READONLY_SECTIONS)
(OTHER_READWRITE_SECTIONS): Define. Add .rdata sections.
2007-05-18 09:18:18 +00:00
Paul Brook
26079076f5
2007-05-18 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
(a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
(record_arm_to_thumb_glue): Add v5t non-pic glue.
(elf32_arm_create_thumb_stub): Ditto.
ld/testsuite/
* ld-arm/arm-call.d: Update expected output.
2007-05-18 00:25:04 +00:00
Paul Brook
30618a1e61
2007-05-17 Paul Brook <paul@codesourcery.com>
...
ld/testsuite/
* ld-elf/multibss1.s: Use %nobits instead of @nobits.
2007-05-17 16:54:38 +00:00
Nathan Sidwell
c210d850a7
* ld-m68k/merge-error-1a.d: Mismatch is an error.
...
* ld-m68k/merge-error-1b.d: Likewise.
* ld-m68k/merge-error-1c.d: Likewise.
* ld-m68k/merge-error-1d.d: Likewise.
* ld-m68k/merge-error-1e.d: Likewise.
2007-05-17 13:11:42 +00:00
Richard Sandiford
fa1e8d8e04
ld/
...
* configure.in: Allow sysroots to be relocated under $prefix as
well as $exec_prefix.
* configure: Regenerate.
2007-05-16 07:19:46 +00:00
H.J. Lu
43edfb7fac
2007-05-15 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/4504
* ld-elf/data1.c: New file.
* ld-elf/data1.h: Likewise.
* ld-elf/dynbss1.c: Likewise.
* ld-elf/pass.out: Likewise.
* ld-elf/shared.exp (build_tests): Add "Build libdata1.so".
(run_tests): Add "Run with libdata1.so".
2007-05-15 13:57:03 +00:00
Richard Sandiford
e68ed250e8
ld/testsuite/
...
* ld-arm/vxworks1.ld: Swap .bss and .data.
* ld-arm/vxworks1-lib.rd: Update accordingly.
* ld-arm/vxworks1-lib.td: New test.
* ld-arm/arm-elf.exp: Run it.
* ld-i386/vxworks1.ld: Swap .bss and .data.
* ld-i386/vxworks1-lib.rd: Update accordingly.
* ld-i386/vxworks1-lib.td: New test.
* ld-i386/i386.exp: Run it.
* ld-mips-elf/vxworks1.ld: Swap .bss and .data.
* ld-mips-elf/vxworks1-lib.rd: Update accordingly.
* ld-mips-elf/vxworks1.rd: Likewise.
* ld-powerpc/vxworks1.ld: Swap .bss and .data.
* ld-powerpc/vxworks1-lib.rd: Update accordingly.
* ld-powerpc/vxworks1-lib.td: New test.
* ld-powerpc/powerpc.exp: Run it.
* ld-sh/vxworks1.ld: Swap .bss and .data.
* ld-sh/vxworks1-lib.rd: Update accordingly.
* ld-sh/vxworks1-lib.td: New test.
* ld-sh/sh-vxworks.exp: Run it.
* ld-sparc/vxworks1.ld: Swap .bss and .data.
* ld-sparc/vxworks1-lib.rd: Update accordingly.
* ld-sparc/vxworks1-lib.td: New test.
* ld-sparc/sparc.exp: Run it.
2007-05-15 12:22:34 +00:00
Richard Sandiford
5c18022ec5
bfd/
...
* elfxx-mips.c (mips_elf_create_local_got_entry): Remove
input_section argument. Create .rela.dyn relocations against
symbol 0 rather than the section symbol.
(mips_elf_local_got_index): Remove input_section argument.
Update call to mips_elf_create_local_got_entry.
(mips_elf_got_page, mips_elf_got16_entry): Likewise.
(mips_elf_calculate_relocation): Update calls to
mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.
ld/testsuite/
* ld-mips-elf/vxworks1-lib.rd: Expect the GOT relocation to be
against symbol 0.
2007-05-15 12:18:53 +00:00
Mark Shinwell
a00a1f35e1
bfd/
...
* elf32-arm.c (elf32_arm_final_link_relocate): Correctly
handle the Thumb-2 JUMP19 relocation.
ld/testsuite/
* ld-arm/arm-elf.exp: Add jump19 testcase.
* ld-arm/jump19.d: New.
* ld-arm/jump19.s: New.
2007-05-15 09:54:09 +00:00
Richard Sandiford
224e2b28d4
ld/testsuite/
...
* ld-sh/vxworks1.dd: Remove hexadecimal prefixes from constant pool
contents. Consistently use "!" as the comment character.
Consistently use _PROCEDURE_LINKAGE_TABLE_ in the first PLT entry.
* ld-sh/vxworks1-le.dd: Likewise.
* ld-sh/vxworks1-lib.dd: Likewise.
* ld-sh/vxworks1-lib-le.dd: Likewise.
* ld-sh/vxworks3.dd: Likewise.
* ld-sh/vxworks3-le.dd: Likewise.
2007-05-14 12:07:11 +00:00
Andreas Schwab
b7b7fe3f8f
* emultempl/ppc64elf.em (gld${EMULATION_NAME}_new_vers_pattern):
...
Handle null pattern.
testsuite/:
* ld-elf/dl2a.list: New file.
* ld-elf/shared.exp: Add test using --dynamic-list=dl2a.list.
2007-05-14 08:53:23 +00:00
Alan Modra
016687f8ba
bfd/
...
* elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
(enum ppc_elf_plt_type): Move from..
* elf32-ppc.c: ..here.
(struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
(struct ppc_elf_link_hash_table): Reorder. Add old_bfd. Delete
can_use_new_plt. Make is_vxworks a bitfield.
(ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
(ppc_elf_check_relocs): Update setting of reloc flags. Set old_bfd.
(ppc_elf_select_plt_layout): Modify parameters. Use bfd reloc
flags to better detect object files needing old bss-style plt.
Allow secure plt to be used without rel16 relocs being detected.
Warn if secure plt request cannot be allowed.
ld/
* emultempl/ppc32elf.em (plt_style): New variable.
(old_plt): Delete.
(ppc_after_open): Adjust ppc_elf_select_plt_layout call.
(PARSE_AND_LIST_PROLOGUE): Define OPTION_NEW_PLT, renumber
OPTION_OLD_PLT, OPTION_OLD_GOT and OPTION_STUBSYMS.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add secure-plt.
(PARSE_AND_LIST_ARGS_CASES): Handle OPTION_NEW_PLT.
* ld.texinfo (--secure-plt): Document.
2007-05-11 06:39:05 +00:00
Richard Sandiford
d3753b85b4
bfd/
...
* elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
for R_ARM_ABS12 relocs.
(elf32_arm_finish_dynamic_symbol): Fix the loop that creates
non-shared VxWorks PLT entries.
ld/testsuite/
* ld-arm/vxworks1-lib.dd: Expect "push" instead of stmdb and
"pop" instead of ldmia. Don't require specific symbolic addresses
for in-text addresses. Expect data to be rendered as .words rather
than disassembled.
* ld-arm/vxworks1.dd: Likewise.
2007-05-10 17:00:03 +00:00
Richard Sandiford
8c252fd9c3
bfd/
...
* elf.c (assign_file_positions_for_load_sections): Use p_memsz
rather than p_filesz to calculate the LMA of the end of a segment.
ld/testsuite/
* ld-elf/multibss1.d, ld-elf/multibss1.s: New test.
2007-05-10 14:46:48 +00:00
Alan Modra
3b95049e0a
* ld.h (args_type, ld_config_type): Reorder fields.
...
* ldmain.c (main): Don't initialise a bunch of vars we know are
zero already.
2007-05-07 15:04:53 +00:00
Denis Chertykov
2a69000bfa
* multempl/avrelf.em (PARSE_AND_LIST_ARGS_CASES): Add new value for
...
"--pmem-wrap-around".
(PARSE_AND_LIST_OPTIONS): Describe new value for "--pmem-wrap-around".
2007-05-05 06:51:24 +00:00
Bob Wilson
93c0f4a497
* scripttempl/elfxtensa.sc: Merge changes from elf.sc.
2007-05-03 19:31:03 +00:00