Maciej W. Rozycki
af924177b5
* elfxx-mips.c (mips_elf_allocate_lazy_stub): Correct data type.
2013-03-08 11:50:27 +00:00
Alan Modra
457f4f60b6
daily update
2013-03-07 23:00:05 +00:00
Alan Modra
309a4436e3
daily update
2013-03-06 23:00:05 +00:00
Alan Modra
b27744474a
daily update
2013-03-05 23:00:06 +00:00
Corinna Vinschen
48385e3898
* config.bfd: Add x86_64-*-cygwin to list of supported targets.
2013-03-05 11:47:01 +00:00
Alan Modra
ea9346df17
daily update
2013-03-04 23:00:06 +00:00
Alan Modra
f75e0e336f
* elf32-ppc.c (ppc_elf_relocate_section <R_PPC_PLTREL24>): Adjust
...
non-zero addends when relocatable, rather than addends >= 32768.
Always zero "addend" before applying relocation.
2013-03-04 12:12:11 +00:00
Nick Clifton
17e3916e23
* archive64.c (bfd_elf64_archive_write_armap): Fix calculation of
...
file pointer offsets for thin archives.
2013-03-04 09:21:43 +00:00
Alan Modra
72973c5dec
daily update
2013-03-03 23:00:07 +00:00
Alan Modra
42ab3ce955
daily update
2013-03-02 23:00:06 +00:00
Alan Modra
7d7a477d00
daily update
2013-03-01 23:00:06 +00:00
Alan Modra
0ad3b6e07e
daily update
2013-02-28 23:00:07 +00:00
Julian Brown
3064e1ff79
bfd/
...
* elf32-arm.c (elf32_arm_size_dynamic_sections): Don't call
elf32_arm_allocate_dynrelocs for source reloc for non-dynamic link.
ld/testsuite/
* ld-arm/tls-local-static.s: New test.
* ld-arm/tls-local-static.d: New.
* ld-arm/arm-elf.exp (tls-local-static): Add test.
2013-02-28 10:31:34 +00:00
Alan Modra
71091f23fd
daily update
2013-02-27 23:00:07 +00:00
DJ Delorie
4107ae2218
* reloc.c (BFD_RELOC_RL78_CODE): Add.
...
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
* elf32-rl78.c (rl78_elf_relocate_section): Handle weak code
references in compuated relocs.
* config/tc-rl78.c (reloc_function): Add %code -> BFD_RELOC_RL78_CODE.
(rl78_op): Handle %code().
(rl78_cons_fix_new): Likewise, but ignore for 20-bit operands.
(tc_gen_reloc): Likwise; convert to a computed reloc.
(md_apply_fix): Likewise.
2013-02-27 21:39:20 +00:00
Alan Modra
50ee9dd93f
daily update
2013-02-26 23:00:06 +00:00
Anthony Green
730fbaf8fd
Tweak moxie-rtems triplet recognition
2013-02-26 22:07:55 +00:00
Alan Modra
d741c78fe2
daily update
2013-02-25 23:06:52 +00:00
Alan Modra
94e04d1e40
daily update
2013-02-24 23:00:05 +00:00
Alan Modra
a5e83a5abb
daily update
2013-02-23 23:00:07 +00:00
Alan Modra
d38b600c90
daily update
2013-02-22 23:00:06 +00:00
H.J. Lu
35399224a1
Set unique_global only for definition
...
bfd/
PR ld/15167
* elf64-ia64-vms.c (elf64_vms_link_add_object_symbols): Set
unique_global only for definition.
* elflink.c (_bfd_elf_merge_symbol): Don't set unique_global
here.
(elf_link_add_object_symbols): Set unique_global only
for definition.
ld/testsuite/
PR ld/15167
* ld-unique/unique.exp: Add a test for shared library with
reference.
2013-02-22 01:20:48 +00:00
Alan Modra
f0d5fdd979
daily update
2013-02-21 23:00:05 +00:00
Alan Modra
c03551323c
bfd/
...
* elf-bfd.h (struct elf_build_id): Extracted from..
(struct elf_build_id_info): ..here. Delete.
(struct output_elf_obj_tdata): New, extracted from..
(struct elf_obj_tdata): ..here. Reorganize for better packing.
Add "o" field.
(elf_program_header_size): Reference tdata->o.
(elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
elf_stack_flags, elf_shstrtab, elf_strtab_sec, elf_shstrtab_sec,
elf_section_syms, elf_num_section_syms, elf_flags_init): Likewise.
* elf.c (bfd_elf_allocate_object): Allocate output_elf_obj_tdata
when opening bfd in any mode that might write.
(_bfd_elf_write_object_contents): Use build_id field in
output_elf_obj_tdata.
(_bfd_elf_close_and_cleanup): Tweak elf_shstrtab test.
(elfobj_grok_gnu_build_id): Adjust for elf_tdata changes.
gdb/
* elfread.c (build_id_bfd_get): Adjust for elf_tdata changes.
ld/
* emultempl/elf32.em (write_build_id, setup_build_id): Adjust
for elf_tdata changes.
2013-02-21 04:35:22 +00:00
Alan Modra
228e534f16
* elf-bfd.h (struct core_elf_obj_tdata): New.
...
(struct elf_obj_tdata): Delete core_signal, core_pid, core_lwpid,
core_program, and core_command. Add "core".
* elf.c (bfd_elf_mkcorefile): Allocate "core" struct.
Update all refs to tdata core fields.
* elf32-am33lin.c, * elf32-arm.c, * elf32-cris.c, * elf32-frv.c,
* elf32-hppa.c, * elf32-i386.c, * elf32-m68k.c, * elf32-mips.c,
* elf32-nios2.c, * elf32-ppc.c, * elf32-s390.c, * elf32-score.c,
* elf32-score7.c, * elf32-sh.c, * elf32-sparc.c, * elf32-tilegx.c,
* elf32-tilepro.c, * elf32-xtensa.c, * elf64-aarch64.c,
* elf64-hppa.c, * elf64-mips.c, * elf64-ppc.c, * elf64-tilegx.c,
* elf64-x86-64.c, * elfcore.h, * elfn32-mips.c: Update all refs
to tdata core fields.
2013-02-21 03:02:30 +00:00
Alan Modra
12bd695738
bfd/
...
* elf-bfd.h (struct elf_obj_tdata): Rename segment_map to seg_map.
Delete num_locals and num_globals.
(elf_num_locals, elf_num_globals): Don't define.
(elf_seg_map, elf_next_file_pos, elf_eh_frame_hdr, elf_linker,
elf_stack_flags, elf_strtab_sec, elf_shstrtab_sec): Define.
* bfd.c, * elf-eh-frame.c, * elf-nacl.c, * elf-vxworks.c, * elf.c,
* elf32-arm.c, * elf32-lm32.c, * elf32-ppc.c, * elf32-rx.c,
* elf32-spu.c, * elf64-hppa.c, * elfcode.h, * elflink.c,
* elfnn-ia64.c, * elfxx-mips.c: Use newly defined elf_obj_tdata
accessor macros.
* elf.c (elf_map_symbols): Add pnum_locals param. Return
number of locals syms via new param.
(swap_out_syms): Adjust to suit elf_map_symbols change.
ld/
* emultempl/elf-generic.em: Use newly defined elf_obj_tdata
accessor macros.
2013-02-21 02:29:11 +00:00
Alan Modra
0de77a42a4
daily update
2013-02-20 23:00:06 +00:00
Alan Modra
de0f1f2f05
daily update
2013-02-19 23:00:05 +00:00
Maciej W. Rozycki
cbf8d970f7
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Also clear
...
STO_MICROMIPS annotation.
2013-02-19 21:58:46 +00:00
Alan Modra
30e8ee25e3
include/
...
* bfdlink.h (struct bfd_link_info): Delete emit_note_gnu_build_id.
bfd/
* configure.in: Bump version to 2.23.52.
* elf-bfd.h (struct elf_build_id_info): New.
(struct elf_obj_tdata): Delete after_write_object_contents,
after_write_object_contents_info and build_id_size. Make build_id
a pointer to struct elf_build_id_info.
* elf.c (_bfd_elf_write_object_contents): Style. Update
after_write_ibject_contents invocation.
(elfobj_grok_gnu_build_id): Update for new build_id struct. Don't
allow zero size notes.
* configure: Regenerate.
gdb/
* elfread.c (struct build_id): Delete. Use struct elf_build_id
throughout file instead.
(build_id_bfd_get): Update to use new elf_tdata build_id field.
Don't xmalloc return value.
(build_id_verify): Similarly. Don't xfree.
(build_id_to_debug_filename): Update.
(find_separate_debug_file_by_buildid): Update, don't xfree.
ld/
* emultempl/elf32.em (emit_note_gnu_build_id): New static var.
Replace all info->emit_note_gnu_build_id refs.
(id_note_section_size): Rename from
gld${EMULATION_NAME}_id_note_section_size.
(struct build_id_info): Delete.
(write_build_id): Rename from
gld${EMULATION_NAME}_write_build_id_section.
Update elf_tdata usage. Style, formatting.
(setup_build_id): New function.
(gld${EMULATION_NAME}_after_open): Use setup_build_id.
2013-02-18 23:50:32 +00:00
Maciej W. Rozycki
5b175e562b
* elf64-mips.c (micromips_elf64_howto_table_rel): Add
...
R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
(micromips_elf64_howto_table_rela): Likewise.
(micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
* elfn32-mips.c (elf_micromips_howto_table_rel): Add
R_MICROMIPS_SCN_DISP and R_MICROMIPS_JALR.
(elf_micromips_howto_table_rela): Likewise.
(micromips_reloc_map): Add BFD_RELOC_MICROMIPS_JALR.
2013-02-18 23:20:45 +00:00
Maciej W. Rozycki
e8faf7d129
* elfxx-mips.c (MICROMIPS_P): New macro.
...
(_bfd_mips_elf_symbol_processing): Use it.
2013-02-18 23:18:16 +00:00
Maciej W. Rozycki
c164a95dfa
* elfxx-mips.c (_bfd_mips_elf_create_dynamic_sections): Clarify
...
comment on _PROCEDURE_LINKAGE_TABLE_ creation.
2013-02-18 23:16:35 +00:00
Alan Modra
7b4c9bf698
daily update
2013-02-18 23:00:04 +00:00
Alan Modra
d45f8bdadc
PR ld/12549
...
* elf-bfd.h (_bfd_elf_strtab_clear_refs): Delete.
(_bfd_elf_strtab_clear_all_refs): Declare.
(_bfd_elf_strtab_resize): Declare.
* elf-strtab.c (_bfd_elf_strtab_clear_refs): Delete.
(_bfd_elf_strtab_clear_all_refs): New function.
(_bfd_elf_strtab_resize): Likewise.
* elflink.c (elf_link_add_object_symbols): Use _bfd_elf_strtab_resize.
2013-02-18 10:40:19 +00:00
Alan Modra
698600e4b4
* elf-bfd.h (struct elf_obj_tdata): Move find_line_info, local_stubs,
...
local_call_stubs, elf_data_symbol, elf_text_symbol, elf_data_section,
and elf_text_section to..
* elfxx-mips.c (struct mips_elf_obj_tdata): ..here. Update all refs.
* elf64-alpha.c (struct mips_elf_find_line): Rename to..
(struct alpha_elf_find_line): ..this.
(struct alpha_elf_obj_tdata): Add find_line_info, update refs.
2013-02-18 02:56:58 +00:00
Alan Modra
5c092ce819
daily update
2013-02-17 23:00:06 +00:00
Alan Modra
56fd55a9da
daily update
2013-02-16 23:00:05 +00:00
H.J. Lu
3d5bef4c08
Don't add DT_NEEDED for references from the dummy bfd
...
bfd/
PR ld/15146
* elflink.c (elf_link_add_object_symbols): Don't add DT_NEEDED
for references from the dummy bfd.
ld/
PR ld/15146
* plugin.c (plugin_notice): Replace the undefined dummy bfd with
the real one.
ld/testsuite/
PR ld/15146
* ld-plugin/pr15146.d: New file.
* ld-plugin/pr15146a.c: Likewise.
* ld-plugin/pr15146b.c: Likewise.
* ld-plugin/pr15146c.c: Likewise.
* ld-plugin/pr15146d.c: Likewise.
* ld-plugin/lto.exp: Add tests for PR ld/15146.
2013-02-16 17:54:37 +00:00
H.J. Lu
313ed4a9b0
Also track weak references
...
PR ld/15149
* elflink.c (elf_link_add_object_symbols): Also track weak
references.
2013-02-16 17:48:57 +00:00
Alan Modra
512b5d674d
daily update
2013-02-15 23:00:05 +00:00
H.J. Lu
989fbeffb2
Don't allow a nested archive pointing to itself
...
PR binutils/15151
* archive.c (_bfd_find_nested_archive): Don't allow a nested
archive pointing to itself.
(_bfd_get_elt_at_filepos): Revert the last 2 changes.
2013-02-15 18:26:06 +00:00
Nick Clifton
088f7bb95c
Allow for some recursion when scanning archives.
2013-02-15 15:53:42 +00:00
Nick Clifton
a043396b72
PR binutils/15140
...
* ar.c (open_inarch): Fail on attempts to convert a normal archive
to a thin archive or vice versa.
* elfcomm.c (make_qualified_name): Handle corrupted thin
archives.
* readelf.c (process_archive): Likewise.
* doc/binutils.texi: Clarify documentation describing thin
archives.
* archive.c (_bfd_get_elt_at_filepos): Prevent an infinite loop
accessing a corrupt nested archive.
2013-02-15 14:37:39 +00:00
Alan Modra
12ec676307
daily update
2013-02-14 23:00:04 +00:00
Alan Modra
c7e80221a9
daily update
2013-02-13 23:00:05 +00:00
Richard Sandiford
13db6b44ea
bfd/
...
* elfxx-mips.c (mips_got_page_ref): New structure.
(mips_got_page_entry): Use a section rather than a (bfd, symndx)
pair to represent the anchor point.
(mips_got_info): Add a got_page_refs field.
(mips_elf_link_hash_table): Add a sym_cache field.
(mips_got_page_ref_hash, mips_got_page_ref_eq): New functions.
(mips_got_page_entry_hash, mips_got_page_entry_eq): Update for
new anchor representation.
(mips_elf_create_got_info): Create got_page_refs rather than
got_page_entries.
(mips_elf_record_got_page_ref): New function.
(mips_elf_pages_for_range): Move further down file.
(mips_elf_record_got_page_entry): Likewise. Take a got as argument.
Use a section rather than a (bfd, symndx) pair to represent the
anchor point.
(mips_elf_resolve_got_page_ref): New function.
(mips_elf_resolve_final_got_entries): Use it to populate
got_page_entries.
(_bfd_mips_elf_check_relocs): Call mips_elf_record_got_page_ref
rather than mips_elf_record_got_page_entry. Only nullify h
afterwards.
(mips_elf_lay_out_got): Call mips_elf_resolve_final_got_entries
earlier.
ld/testsuite/
* ld-mips-elf/mips16-pic-2.dd,
ld-mips-elf/mips16-pic-2.gd: Remove 3 unused local GOT entries.
* ld-mips-elf/got-page-4a.s, ld-mips-elf/got-page-4b.s,
ld-mips-elf/got-page-4a.d, ld-mips-elf/got-page-4a.got,
ld-mips-elf/got-page-4b.d, ld-mips-elf/got-page-4b.got,
ld-mips-elf/got-page-5.s, ld-mips-elf/got-page-5.d,
ld-mips-elf/got-page-5.got, ld-mips-elf/got-page-6.s,
ld-mips-elf/got-page-6.d, ld-mips-elf/got-page-6.got,
ld-mips-elf/got-page-7a.s, ld-mips-elf/got-page-7b.s,
ld-mips-elf/got-page-7c.s, ld-mips-elf/got-page-7d.s,
ld-mips-elf/got-page-7e.s, ld-mips-elf/got-page-7.d,
ld-mips-elf/got-page-7.got: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
2013-02-13 14:08:58 +00:00
Alan Modra
27df6be5ad
daily update
2013-02-12 23:00:05 +00:00
Richard Sandiford
57093f5e80
bfd/
...
* elfxx-mips.c (mips_elf_lay_out_got): Count VxWorks GOT relocs
in g->relocs.
2013-02-12 09:54:56 +00:00
Alan Modra
a21f0dd3aa
daily update
2013-02-11 23:00:04 +00:00