2012-07-04 02:29:52 +02:00
|
|
|
|
2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (assign_section_numbers): Check if number of sections
|
|
|
|
|
>= SHN_LORESERVE.
|
|
|
|
|
* elfcode.h (elf_object_p): Likewise.
|
|
|
|
|
|
2012-07-03 18:25:17 +02:00
|
|
|
|
2012-07-03 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* archive.c (bsd_write_armap): Catch attempts to create an archive
|
|
|
|
|
with indicies bigger than 4Gb.
|
|
|
|
|
(coff_write_armap): Likewise.
|
|
|
|
|
|
2012-07-03 18:06:34 +02:00
|
|
|
|
2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/14319
|
|
|
|
|
* elf.c (_bfd_elf_make_section_from_shdr): Don't compress empty
|
|
|
|
|
debug section.
|
|
|
|
|
|
2012-07-03 16:44:35 +02:00
|
|
|
|
2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/3351
|
|
|
|
|
* elflink.c (_bfd_elf_update_dynamic_flags): New.
|
|
|
|
|
(_bfd_elf_merge_symbol): Update both real and indirect symbol
|
|
|
|
|
dynamic flags.
|
|
|
|
|
(_bfd_elf_add_default_symbol): Make the real symbol dynamic if
|
|
|
|
|
the indirect symbol is defined in a shared library.
|
|
|
|
|
(elf_link_add_object_symbols): Likewise. If the indirect
|
|
|
|
|
symbol has been forced local, don't make the real symbol
|
|
|
|
|
dynamic.
|
|
|
|
|
(elf_link_check_versioned_symbol): Check indirect symbol.
|
|
|
|
|
(elf_link_output_extsym): Use real symbol definition when
|
|
|
|
|
reporting indirect symbol error. Check version info for
|
|
|
|
|
dynamic versioned symbol.
|
|
|
|
|
|
2012-07-03 07:47:35 +02:00
|
|
|
|
2012-07-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/14207
|
|
|
|
|
* elf.c (assign_file_positions_for_load_sections): Remove assertions
|
|
|
|
|
that only PT_LOAD headers include file header and section headers.
|
|
|
|
|
(assign_file_positions_for_non_load_sections): Similarly don't
|
|
|
|
|
assert PT_GNU_RELRO header does not include file and section headers.
|
|
|
|
|
Compare first section vma rather than PT_LOAD p_vaddr against
|
|
|
|
|
relro_start when looking for PT_LOAD covering PT_GNU_RELRO. Replace
|
|
|
|
|
abort with assertion.
|
|
|
|
|
|
2012-07-02 05:02:45 +02:00
|
|
|
|
2012-07-02 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-m32c.c (m32c_elf_check_relocs): Use bfd_make_section
|
|
|
|
|
"anyway" variant when creating .plt.
|
|
|
|
|
(m32c_elf_relax_plt_section): Remove redundant test and unused param.
|
|
|
|
|
(m32c_elf_relax_section): Test SEC_LINKER_CREATED before calling
|
|
|
|
|
m32c_elf_relax_plt_section.
|
|
|
|
|
* elfxx-mips.c (mips_elf_create_got_section): Use make anyway variant
|
|
|
|
|
when creating .got and .got.plt.
|
|
|
|
|
(_bfd_mips_elf_final_link): Likewise for .rtproc, and use
|
|
|
|
|
bfd_get_linker_section.
|
|
|
|
|
* sunos.c: Similarly throughout.
|
|
|
|
|
|
2012-07-01 10:23:13 +02:00
|
|
|
|
2012-07-01 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
* elf.c (_bfd_elf_make_section_from_shdr): Fix typo in error
|
|
|
|
|
message.
|
|
|
|
|
|
2012-06-29 23:54:44 +02:00
|
|
|
|
2012-06-29 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Return FALSE
|
|
|
|
|
on unresolvable relocation.
|
|
|
|
|
|
2012-06-29 19:36:21 +02:00
|
|
|
|
2012-06-29 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* archive.c (_bfd_compute_and_write_armap): Simplify global
|
|
|
|
|
symbol handling.
|
|
|
|
|
|
2012-06-29 17:20:30 +02:00
|
|
|
|
2012-06-29 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR ld/14189
|
|
|
|
|
* elf32-arm.c (elf32_arm_check_relocs): Do not increment refcount
|
|
|
|
|
for locally bound symbols.
|
|
|
|
|
|
2012-06-29 16:46:03 +02:00
|
|
|
|
2012-06-29 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* section.c (bfd_get_linker_section): New function.
|
|
|
|
|
* elf32-arm.c: When retrieving SEC_LINKER_CREATED sections, use
|
|
|
|
|
the above throughout rather than bfd_get_section_by_name. Use
|
|
|
|
|
bfd_make_section_anyway rather than bfd_make_section when creating
|
|
|
|
|
them.
|
|
|
|
|
* elf32-bfin.c: Likewise.
|
|
|
|
|
* elf32-cr16.c: Likewise.
|
|
|
|
|
* elf32-cris.c: Likewise.
|
|
|
|
|
* elf32-frv.c: Likewise.
|
|
|
|
|
* elf32-hppa.c: Likewise.
|
|
|
|
|
* elf32-i370.c: Likewise.
|
|
|
|
|
* elf32-i386.c: Likewise.
|
|
|
|
|
* elf32-lm32.c: Likewise.
|
|
|
|
|
* elf32-m32c.c: Likewise.
|
|
|
|
|
* elf32-m32r.c: Likewise.
|
|
|
|
|
* elf32-m68k.c: Likewise.
|
|
|
|
|
* elf32-microblaze.c: Likewise.
|
|
|
|
|
* elf32-ppc.c: Likewise.
|
|
|
|
|
* elf32-rl78.c: Likewise.
|
|
|
|
|
* elf32-s390.c: Likewise.
|
|
|
|
|
* elf32-score.c: Likewise.
|
|
|
|
|
* elf32-score7.c: Likewise.
|
|
|
|
|
* elf32-sh.c: Likewise.
|
|
|
|
|
* elf32-tic6x.c: Likewise.
|
|
|
|
|
* elf32-tilepro.c: Likewise.
|
|
|
|
|
* elf32-vax.c: Likewise.
|
|
|
|
|
* elf32-xstormy16.c: Likewise.
|
|
|
|
|
* elf32-xtensa.c: Likewise.
|
|
|
|
|
* elf64-alpha.c: Likewise.
|
|
|
|
|
* elf64-hppa.c: Likewise.
|
|
|
|
|
* elf64-ia64-vms.c: Likewise.
|
|
|
|
|
* elf64-ppc.c: Likewise.
|
|
|
|
|
* elf64-s390.c: Likewise.
|
|
|
|
|
* elf64-sh64.c: Likewise.
|
|
|
|
|
* elf64-sparc.c: Likewise.
|
|
|
|
|
* elf64-x86-64.c: Likewise.
|
|
|
|
|
* elfnn-ia64.c: Likewise.
|
|
|
|
|
* elfxx-mips.c: Likewise.
|
|
|
|
|
* elfxx-sparc.c: Likewise.
|
|
|
|
|
* elfxx-tilegx.c: Likewise.
|
|
|
|
|
* elflink.c: Likewise.
|
|
|
|
|
* elf-vxworks.c: Likewise.
|
|
|
|
|
* elf-m10300.c: Likewise. Also make use of htab plt, got and
|
|
|
|
|
gotplt shortcuts.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* elf32-lm32.c (lm32_elf_check_relocs): Use the correct bfd when
|
|
|
|
|
calling create_rofixup_section.
|
|
|
|
|
* elflink.c (bfd_elf_final_link): Simplify test for .dynstr.
|
|
|
|
|
|
2012-06-29 09:37:50 +02:00
|
|
|
|
2012-06-29 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-sh.c (sh_elf_create_dynamic_sections): Don't create .rela
|
|
|
|
|
section for bss type sections, except for .rela.bss.
|
|
|
|
|
* elf-m10300.c (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
|
|
|
|
|
* elf32-cr16.c (_bfd_cr16_elf_create_dynamic_sections): Likewise.
|
|
|
|
|
* elf32-lm32.c (lm32_elf_create_dynamic_sections): Likewise.
|
|
|
|
|
* elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise.
|
|
|
|
|
* elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise.
|
|
|
|
|
|
2012-06-28 18:57:24 +02:00
|
|
|
|
2012-06-28 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* elf32-arm.c (elf32_arm_populate_plt_entry): Use int32_t for
|
|
|
|
|
displacement calculation in nacl_p case.
|
|
|
|
|
|
2012-06-28 16:36:01 +02:00
|
|
|
|
2012-06-28 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/uk.po: New Ukranian translation.
|
|
|
|
|
* configure.in (ALL_LINGUAS): Add uk.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2012-06-26 03:40:59 +02:00
|
|
|
|
2012-06-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_next_toc_section): Don't error if input
|
|
|
|
|
file has multiple .got/.toc sections and all don't fit in
|
|
|
|
|
current toc group.
|
|
|
|
|
|
2012-06-22 18:52:33 +02:00
|
|
|
|
2012-06-22 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (assign_file_positions_for_non_load_sections): Define
|
|
|
|
|
__ehdr_start symbol if it's referenced and there's a PT_LOAD
|
|
|
|
|
segment that covers both the file and program headers.
|
|
|
|
|
|
2012-06-22 11:30:18 +02:00
|
|
|
|
2012-06-22 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
* elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Don't make
|
|
|
|
|
_GLOBAL_OFFSET_TABLE_ and _DYNAMIC absolute.
|
|
|
|
|
|
2012-06-22 07:53:04 +02:00
|
|
|
|
2012-06-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't emit out-of-line
|
|
|
|
|
save/restore functions when relocatable. Make "funcs" static.
|
|
|
|
|
|
2012-06-18 08:16:59 +02:00
|
|
|
|
2012-06-18 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* elf32-cris.c (cris_elf_plt_sym_val): Rewrite to work in presence
|
|
|
|
|
of merged .got and .got.plt entries.
|
|
|
|
|
|
2012-06-18 02:46:28 +02:00
|
|
|
|
2012-06-18 John Szakmeister <john@szakmeister.net>
|
|
|
|
|
|
|
|
|
|
* elf32-arm.c (elf32_arm_final_link_relocate): Correct return value.
|
|
|
|
|
|
2012-06-17 09:28:29 +02:00
|
|
|
|
2012-06-17 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* elf32-cris.c (cris_elf_relocate_section): <R_CRIS_32_IE>
|
|
|
|
|
<R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>: Handle references to
|
|
|
|
|
thread common symbols.
|
|
|
|
|
|
2012-06-13 12:01:50 +02:00
|
|
|
|
2012-06-13 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* elf32-arm.c (bfd_arm_get_mach_from_attributes): New function.
|
|
|
|
|
(elf32_arm_object_p): If the machine number could not be deduced
|
|
|
|
|
from the notes, call bfd_arm_get_mach_from_attributes to get the
|
|
|
|
|
number from the attributes.
|
|
|
|
|
|
2012-06-12 14:55:11 +02:00
|
|
|
|
2012-06-12 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR bfd/14207
|
|
|
|
|
* elf.c (assign_file_positions_for_non_load_sections): Abort if
|
|
|
|
|
PT_GNU_RELRO segment doesn't fit in PT_LOAD segment.
|
|
|
|
|
|
2012-06-12 08:31:06 +02:00
|
|
|
|
2012-06-12 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/14207
|
|
|
|
|
* elf.c (_bfd_elf_map_sections_to_segments): Disregard bss type
|
|
|
|
|
sections at end of PT_LOAD segment when searching for segment
|
|
|
|
|
that contains end of relro extent.
|
|
|
|
|
|
2012-06-11 18:48:35 +02:00
|
|
|
|
2012-06-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (assign_file_positions_for_non_load_sections): Reindent.
|
|
|
|
|
|
2012-06-11 18:44:02 +02:00
|
|
|
|
2012-06-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (_bfd_elf_map_sections_to_segments): Reindent.
|
|
|
|
|
|
2012-06-06 12:50:18 +02:00
|
|
|
|
2012-06-06 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (elf_link_input_bfd): Provide a file symbol for
|
|
|
|
|
each input file with local syms, if the input lacks such.
|
|
|
|
|
(bfd_elf_final_link): Add a file symbol to mark end of locals
|
|
|
|
|
for which we can associate with input files.
|
|
|
|
|
(struct elf_final_link_info): Add filesym_count field.
|
|
|
|
|
(struct elf_outext_info): Add need_second_pass and second_pass.
|
|
|
|
|
(elf_link_output_extsym): Detect symbols defined in the output
|
|
|
|
|
file, emit them on second pass over locals.
|
|
|
|
|
|
2012-06-04 16:35:25 +02:00
|
|
|
|
2012-06-04 Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
|
|
|
|
|
|
|
|
* bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
|
|
|
|
|
of target_read_memory as bfd_size_type.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
|
|
|
|
|
argument of target_read_memory as bfd_size_type.
|
|
|
|
|
(_bfd_elf32_bfd_from_remote_memory): Likewise.
|
|
|
|
|
(_bfd_elf64_bfd_from_remote_memory): Likewise.
|
|
|
|
|
* elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
|
|
|
|
|
* elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
|
|
|
|
|
|
2012-06-03 06:08:07 +02:00
|
|
|
|
2012-06-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13897
|
|
|
|
|
* elf.c (elf_find_function): Cache last function sym info.
|
|
|
|
|
(_bfd_elf_maybe_function_sym): Return function size, pass in
|
|
|
|
|
section of interest.
|
|
|
|
|
* elf-bfd.h (struct elf_backend_data <maybe_function_sym>): Likewise.
|
|
|
|
|
(_bfd_elf_maybe_function_sym): Likewise.
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
|
|
|
|
|
(opd_entry_value): Add in_code_sec param. Revert caching code.
|
|
|
|
|
Return -1 if in_code_sec and function found in wrong section.
|
|
|
|
|
Update all calls.
|
|
|
|
|
|
2012-06-01 18:37:59 +02:00
|
|
|
|
2012-06-01 Siddhesh Poyarekar <siddhesh@redhat.com>
|
|
|
|
|
|
|
|
|
|
* bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
|
|
|
|
|
of target_read_memory as size_t.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
|
|
|
|
|
argument of target_read_memory as size_t.
|
|
|
|
|
(_bfd_elf32_bfd_from_remote_memory): Likewise.
|
|
|
|
|
(_bfd_elf64_bfd_from_remote_memory): Likewise.
|
|
|
|
|
* elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
|
|
|
|
|
* elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
|
|
|
|
|
|
2012-06-01 14:26:55 +02:00
|
|
|
|
2012-06-01 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13897
|
|
|
|
|
* elf64-ppc.c (opd_entry_value): Rewrite cache code.
|
|
|
|
|
|
2012-05-29 16:23:40 +02:00
|
|
|
|
2012-05-29 Tom Tromey <tromey@redhat.com>
|
|
|
|
|
|
|
|
|
|
* opncls.c (bfd_fopen): Always close fd on failure.
|
|
|
|
|
(bfd_fdopenr): Likewise.
|
|
|
|
|
|
2012-05-27 15:55:45 +02:00
|
|
|
|
2012-05-27 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/14170
|
|
|
|
|
* elflink.c (_bfd_elf_merge_symbol): When a symbol defined in
|
|
|
|
|
a dynamic library finds a new instance with non-default
|
|
|
|
|
visibility in a regular object, correctly handle symbols
|
|
|
|
|
already on the undefs list and undo dynamic symbol state when
|
|
|
|
|
the new symbol is hidden or internal.
|
|
|
|
|
|
2012-05-25 18:20:15 +02:00
|
|
|
|
2012-05-25 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf32-i386.c (elf_i386_create_dynamic_sections): Don't use
|
|
|
|
|
dynamic_sec_flags to create PLT .eh_frame section.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
|
|
|
|
|
|
2012-05-25 03:12:20 +02:00
|
|
|
|
2012-05-25 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13909
|
|
|
|
|
* elf-eh-frame.c (_bfd_elf_eh_frame_present): New function.
|
|
|
|
|
(_bfd_elf_maybe_strip_eh_frame_hdr): Use it here.
|
|
|
|
|
* elf-bfd.h (_bfd_elf_eh_frame_present): Declare.
|
|
|
|
|
* elflink.c (bfd_elf_size_dynamic_sections): Let the backend
|
|
|
|
|
size dynamic sections before stripping eh_frame_hdr.
|
|
|
|
|
(bfd_elf_gc_sections): Handle multiple .eh_frame sections.
|
|
|
|
|
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame
|
|
|
|
|
if no other .eh_frame sections exist.
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_size_stubs): Likewise.
|
|
|
|
|
* elf32-i386.c (elf_i386_create_dynamic_sections): Don't size
|
|
|
|
|
or alloc plt_eh_frame here..
|
|
|
|
|
(elf_i386_size_dynamic_sections): ..do it here instead. Don't
|
|
|
|
|
specially keep sgotplt, iplt, tgotplt, sdynbss for symbols.
|
|
|
|
|
(elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents
|
|
|
|
|
before writing plt offset.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size
|
|
|
|
|
or alloc plt_eh_frame here..
|
|
|
|
|
(elf_x86_64_size_dynamic_sections): ..do it here instead.
|
|
|
|
|
(elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents
|
|
|
|
|
before writing plt offset.
|
|
|
|
|
|
2012-05-24 08:20:52 +02:00
|
|
|
|
2012-05-24 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/14158
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame
|
|
|
|
|
size to output section alignment.
|
|
|
|
|
(ppc64_elf_build_stubs): Likewise, and extend last FDE to cover.
|
|
|
|
|
|
2012-05-23 06:38:08 +02:00
|
|
|
|
2012-05-23 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle
|
|
|
|
|
BFDs with multiple .eh_frame sections.
|
|
|
|
|
|
2012-05-23 06:35:31 +02:00
|
|
|
|
2012-05-23 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13909
|
|
|
|
|
* elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs.
|
|
|
|
|
|
2012-05-22 17:55:01 +02:00
|
|
|
|
2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13909
|
|
|
|
|
* elf32-i386.c (elf_i386_create_dynamic_sections): Revert the
|
|
|
|
|
last change.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
|
|
|
|
|
|
2012-05-22 16:58:15 +02:00
|
|
|
|
2012-05-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (bfd_elf_discard_info): Look for next .eh_frame if
|
|
|
|
|
first one is zero size or discarded.
|
|
|
|
|
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of
|
|
|
|
|
glink_eh_frame contents here..
|
|
|
|
|
(ppc_elf_finish_dynamic_sections): ..rather than here. Just set
|
|
|
|
|
offset to .glink.
|
|
|
|
|
|
2012-05-22 16:46:44 +02:00
|
|
|
|
2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13909
|
|
|
|
|
* elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT
|
|
|
|
|
eh_frame section if there is an input .eh_frame section.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
|
|
|
|
|
|
2012-05-22 16:05:21 +02:00
|
|
|
|
2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/14105
|
|
|
|
|
* elf32-i386.c (elf_i386_create_dynamic_sections): Always
|
|
|
|
|
create PLT eh_frame section with SEC_LINKER_CREATED.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
|
|
|
|
|
|
2012-05-22 14:09:26 +02:00
|
|
|
|
2012-05-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame
|
|
|
|
|
sections attached to a BFD.
|
|
|
|
|
* section.c (bfd_get_section_by_name): Rewrite description.
|
|
|
|
|
(bfd_get_next_section_by_name): New function.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
|
2012-05-21 10:17:15 +02:00
|
|
|
|
2012-05-21 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
* elf32-m68k.c (elf_m68k_grok_prstatus): New function.
|
|
|
|
|
(elf_m68k_grok_psinfo): New function.
|
|
|
|
|
(elf_backend_grok_prstatus): Define.
|
|
|
|
|
(elf_backend_grok_psinfo): Define.
|
|
|
|
|
|
2012-05-19 21:30:45 +02:00
|
|
|
|
2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* elf64-mips.c (elf_backend_got_header_size): Correct definition.
|
|
|
|
|
* elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF
|
|
|
|
|
backend's GOT header size instead of hardcoding it.
|
|
|
|
|
|
2012-05-19 21:27:01 +02:00
|
|
|
|
2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* elf32-vax.c (elf_vax_relocate_section)
|
|
|
|
|
<R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again.
|
|
|
|
|
|
2012-05-19 21:23:24 +02:00
|
|
|
|
2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* elf32-vax.c (elf_vax_relocate_section)
|
|
|
|
|
<R_VAX_8, R_VAX_16, R_VAX_32>: Use section flags rather than
|
|
|
|
|
its name as the check for text sections.
|
|
|
|
|
|
2012-05-19 21:13:56 +02:00
|
|
|
|
2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* elf64-mips.c (mips_elf64_be_swap_reloc_out): Also make sure
|
|
|
|
|
the third reloc offset is the same as the first.
|
|
|
|
|
|
2012-05-19 08:58:48 +02:00
|
|
|
|
2012-05-19 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-ppc.h (has_vle_insns, is_ppc_vle): Delete.
|
|
|
|
|
(has_tls_reloc, has_tls_get_addr_call): Move back to..
|
|
|
|
|
* elf32-ppc.c: ..here.
|
|
|
|
|
(ppc_elf_section_flags, elf_backend_section_flags): Delete.
|
|
|
|
|
(ppc_elf_modify_segment_map): Use ELF sh_flags to detect VLE sections.
|
|
|
|
|
|
2012-05-19 00:26:18 +02:00
|
|
|
|
2012-05-18 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf32-i386.c (elf_i386_finish_dynamic_symbol): Don't make
|
|
|
|
|
_DYNAMIC nor _GLOBAL_OFFSET_TABLE_ absolute.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
|
|
|
|
|
|
2012-05-18 18:38:22 +02:00
|
|
|
|
2012-05-18 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* archive.c (_bfd_generic_read_ar_hdr_mag): Fix last change so as
|
|
|
|
|
not to clobber the ar_fmag field stored in ARED->arch_header.
|
|
|
|
|
|
2012-05-18 17:11:53 +02:00
|
|
|
|
2012-05-18 Pedro Alves <palves@redhat.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.h: Don't include sysdep.h.
|
|
|
|
|
|
2012-05-18 12:29:12 +02:00
|
|
|
|
2012-05-18 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 14072
|
|
|
|
|
* bfd-in.h: Check for PACKAGE or PACKAGE_VERSION before
|
|
|
|
|
complaining about config.h not having been included.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
|
2012-05-18 00:23:42 +02:00
|
|
|
|
2012-05-18 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
* aclocal.m4: Regenerate.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
|
2012-05-17 17:13:28 +02:00
|
|
|
|
2012-05-17 Daniel Richard G. <skunk@iskunk.org>
|
|
|
|
|
Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 14072
|
|
|
|
|
* configure.in: Add check that sysdep.h has been included before
|
|
|
|
|
any system header files.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* config.in: Regenerate.
|
|
|
|
|
* aclocal.m4: Regenerate.
|
|
|
|
|
* bfd-in.h: Generate an error if included before config.h.
|
|
|
|
|
* sysdep.h: Likewise.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* compress.c: Remove #include "config.h".
|
|
|
|
|
* plugin.c: Likewise.
|
|
|
|
|
* elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h.
|
|
|
|
|
* elf64-hppa.c: Likewise.
|
|
|
|
|
* som.c: Likewise.
|
|
|
|
|
* xsymc.c: Likewise.
|
|
|
|
|
|
2012-05-17 08:29:02 +02:00
|
|
|
|
2012-05-17 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (ignore_section_sym): Correct comment. Don't return
|
|
|
|
|
true for absolute section.
|
|
|
|
|
(elf_map_symbols): Move stray comment. Adjust for above change.
|
|
|
|
|
Don't discard global section symbols.
|
|
|
|
|
|
2012-05-17 04:43:36 +02:00
|
|
|
|
2012-05-17 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make _DYNAMIC,
|
|
|
|
|
_GLOBAL_OFFSET_TABLE_ or _PROCEDURE_LINKAGE_TABLE_ absolute.
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Don't make _DYNAMIC
|
|
|
|
|
absolute.
|
|
|
|
|
|
2012-05-17 04:24:50 +02:00
|
|
|
|
2012-05-17 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call, has_vle_insns,
|
|
|
|
|
is_ppc_vle): Move to..
|
|
|
|
|
* elf32-ppc.h: ..here, making is_ppc_vle a macro.
|
|
|
|
|
|
2012-05-16 18:38:29 +02:00
|
|
|
|
2012-05-16 Sergio Durigan Junior <sergiodj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
|
|
|
|
|
bfd_get_section_lma, bfd_get_section_alignment,
|
|
|
|
|
bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
|
|
|
|
|
in order to use the `bfd' argument.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
|
|
|
|
|
as the first argument for `bfd_get_section_alignment'.
|
|
|
|
|
* elf32-arm.c (create_ifunc_sections): Likewise, for
|
|
|
|
|
`bfd_set_section_alignment'.
|
|
|
|
|
* elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
|
|
|
|
|
`bfd_get_section_name'.
|
|
|
|
|
* elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
|
|
|
|
|
(ppc_elf_relocate_section): Likewise.
|
|
|
|
|
* elf64-mmix.c (mmix_final_link_relocate): Likewise, for
|
|
|
|
|
`bfd_get_section_vma'.
|
|
|
|
|
* elf64-ppc.c (create_linkage_sections): Likewise, for
|
|
|
|
|
`bfd_set_section_alignment'.
|
|
|
|
|
|
2012-05-16 16:52:16 +02:00
|
|
|
|
2012-05-16 Georg-Johann Lay <avr@gjlay.de>
|
|
|
|
|
|
|
|
|
|
PR target/13503
|
|
|
|
|
* reloc.c: Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* libbfd.h: Regenrate.
|
|
|
|
|
* elf32-avr.c (elf_avr_howto_table): Rename R_AVR_8_HHI8 to
|
|
|
|
|
R_AVR_8_HLO8.
|
|
|
|
|
(avr_reloc_map): Likewise.
|
|
|
|
|
|
2012-05-16 16:26:46 +02:00
|
|
|
|
2012-05-16 Daniel Richard G. <skunk@iskunk.org>
|
|
|
|
|
|
|
|
|
|
PR binutils/13558
|
|
|
|
|
* bfd/aout-cris.c: Include sysdep.h before bfd.h.
|
|
|
|
|
* bfd/aout-ns32k.c: Likewise.
|
|
|
|
|
* bfd/aout-sparcle.c: Likewise.
|
|
|
|
|
* bfd/aout0.c: Likewise.
|
|
|
|
|
* bfd/bfd-in2.h: Likewise.
|
|
|
|
|
* bfd/coff-stgo32.c: Likewise.
|
|
|
|
|
* bfd/cpu-lm32.c: Likewise.
|
|
|
|
|
* bfd/cpu-microblaze.c: Likewise.
|
|
|
|
|
* bfd/cpu-score.c: Likewise.
|
|
|
|
|
* bfd/cpu-tilegx.c: Likewise.
|
|
|
|
|
* bfd/cpu-tilepro.c: Likewise.
|
|
|
|
|
* bfd/elf32-lm32.c: Likewise.
|
|
|
|
|
* bfd/elf32-microblaze.c: Likewise.
|
|
|
|
|
* bfd/elf32-score7.c: Likewise.
|
|
|
|
|
* bfd/elf32-tilepro.c: Likewise.
|
|
|
|
|
* bfd/elfxx-tilegx.c: Likewise.
|
|
|
|
|
* bfd/mach-o.h: Likewise.
|
|
|
|
|
* bfd/nlm32-ppc.c: Likewise.
|
|
|
|
|
* bfd/ns32knetbsd.c: Likewise.
|
|
|
|
|
* bfd/pef.h: Likewise.
|
|
|
|
|
* bfd/plugin.c: Likewise.
|
|
|
|
|
* bfd/stab-syms.c: Likewise.
|
|
|
|
|
* bfd/sunos.c: Likewise.
|
|
|
|
|
* bfd/syms.c: Likewise.
|
|
|
|
|
* bfd/xsym.h: Likewise.
|
|
|
|
|
|
2012-05-16 16:13:26 +02:00
|
|
|
|
2012-05-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c: Rename flaginfo to flinfo throughout, except..
|
|
|
|
|
(bfd_elf_lookup_section_flags): ..here, rename finfo to flaginfo.
|
|
|
|
|
Formatting, style. Simplify flag match.
|
|
|
|
|
|
2012-05-16 15:57:11 +02:00
|
|
|
|
2012-05-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2.c: Formatting.
|
|
|
|
|
(arange_add): Pass in unit rather than bfd. Update callers.
|
|
|
|
|
Ignore empty ranges. Don't ask for cleared memory.
|
|
|
|
|
(parse_comp_unit): Only set unit->base_address if processing
|
|
|
|
|
DW_TAG_compile_unit.
|
|
|
|
|
(find_debug_info): Optimise section lookup.
|
|
|
|
|
(place_sections): Use bfd_alloc for stash->adjusted_sections.
|
|
|
|
|
(find_line): Match previously parsed comp unit addresses as we
|
|
|
|
|
do for newly parsed comp units.
|
|
|
|
|
|
2012-05-16 15:00:29 +02:00
|
|
|
|
2012-05-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* archive.c (_bfd_generic_read_ar_hdr_mag): Ensure sscanf
|
|
|
|
|
stops at end of ar_size field.
|
|
|
|
|
|
2012-05-16 05:35:29 +02:00
|
|
|
|
2012-05-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13962
|
|
|
|
|
PR ld/7023
|
|
|
|
|
* elf.c (bfd_section_from_shdr): Fail when .dynsym sh_info is
|
|
|
|
|
out of range. As a special case, fix sh_info for zero sh_size.
|
|
|
|
|
Do the same for .symtab.
|
|
|
|
|
|
2012-05-15 14:55:51 +02:00
|
|
|
|
2012-05-15 James Murray <jsm@jsm-net.demon.co.uk>
|
|
|
|
|
Stephane Carrez <stcarrez@nerim.fr>
|
|
|
|
|
|
|
|
|
|
* archures.c: Add bfd_arch_m9s12x and bfd_arch_m9s12xg.
|
|
|
|
|
* config.bfd: Likewise.
|
|
|
|
|
* cpu-m9s12x.c: New.
|
|
|
|
|
* cpu-m9s12xg.c: New.
|
|
|
|
|
* elf32-m68hc12.c: Add S12X and XGATE co-processor support.
|
|
|
|
|
Add option to offset S12 addresses into XGATE memory space.
|
|
|
|
|
Fix carry bug in IMM16 (IMM8 low/high) relocate.
|
|
|
|
|
* Makefile.am (ALL_MACHINES): Add cpu-m9s12x and cpu-m9s12xg.
|
|
|
|
|
(ALL_MACHINES_CFILES): Likewise.
|
|
|
|
|
* reloc.c: Add S12X relocs.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* libbfd.h: Regenerate.
|
|
|
|
|
|
Add support for PowerPC VLE.
2012-05-14 Catherine Moore <clm@codesourcery.com>
* NEWS: Mention PowerPC VLE port.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
Catherine Moore <clm@codesourcery.com>
bfd/
* bfd.c (bfd_lookup_section_flags): Add section parm.
* ecoff.c (bfd_debug_section): Remove flag_info initializer.
* elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
(bfd_elf_lookup_section_flags): Add section parm.
* elf32-ppc.c (is_ppc_vle): New function.
(ppc_elf_modify_segment_map): New function.
(elf_backend_modify_segment_map): Define.
(has_vle_insns): New define.
* elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
* elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
Move in logic to omit / include a section.
* libbfd-in.h (bfd_link_info): Add section parm.
(bfd_generic_lookup_section_flags): Likewise.
* reloc.c (bfd_generic_lookup_section_flags): Likewise.
* section.c (bfd_section): Move out section_flag_info.
(BFD_FAKE_SECTION): Remove flag_info initializer.
* targets.c (_bfd_lookup_section_flags): Add section parm.
2012-05-14 Catherine Moore <clm@codesourcery.com>
bfd/
* archures.c (bfd_mach_ppc_vle): New.
* bfd-in2.h: Regenerated.
* cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
* elf32-ppc.c (split16_format_type): New enumeration.
(ppc_elf_vle_split16): New function.
(HOWTO): Add entries for R_PPC_VLE relocations.
(ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
(ppc_elf_section_flags): New function.
(ppc_elf_lookup_section_flags): New function.
(ppc_elf_section_processing): New function.
(ppc_elf_check_relocs): Handle PPC_VLE relocations.
(ppc_elf_relocation_section): Likewise.
(elf_backend_lookup_section_flags_hook): Define.
(elf_backend_section_flags): Define.
(elf_backend_section_processing): Define.
* elf32-ppc.h (ppc_elf_section_processing): Declare.
* libbfd.h: Regenerated.
* reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
gas/
* config/tc-ppc.c (insn_validate): New func of existing code to call..
(ppc_setup_opcodes): ..from 2 places here.
Revise for second (VLE) opcode table.
Add #ifdef'd code to print opcode tables.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
gas/
* config/tc-ppc.c (ppc_setup_opcodes): Allow out-of-order
for the VLE conditional branches.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
gas/
* config/tc-ppc.c (PPC_VLE_SPLIT16A): New macro.
(PPC_VLE_SPLIT16D): New macro.
(PPC_VLE_LO16A): New macro.
(PPC_VLE_LO16D): New macro.
(PPC_VLE_HI16A): New macro.
(PPC_VLE_HI16D): New macro.
(PPC_VLE_HA16A): New macro.
(PPC_VLE_HA16D): New macro.
(PPC_APUINFO_VLE): New definition.
(md_chars_to_number): New function.
(md_parse_option): Check for combinations of little
endian and -mvle.
(md_show_usage): Document -mvle.
(ppc_arch): Recognize VLE.
(ppc_mach): Recognize bfd_mach_ppc_vle.
(ppc_setup_opcodes): Print the opcode table if
* config/tc-ppc.h (ppc_frag_check): Declare.
* doc/c-ppc.texi: Document -mvle.
* NEWS: Mention PowerPC VLE port.
2012-05-14 Catherine Moore <clm@codesourcery.com>
gas/
* config/tc-ppc.h (ppc_dw2_line_min_insn_length): Declare.
(DWARF2_LINE_MIN_INSN_LENGTH): Redefine.
* config/tc-ppc.c (ppc_dw2_line_min_insn_length): New.
* dwarf2dbg.c (scale_addr_delta): Handle values of 1
for DWARF2_LINE_MIN_INSN_LENGTH.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
gas/testsuite/
* gas/ppc/ppc.exp: Run new tests.
* gas/ppc/vle-reloc.d: New test.
* gas/ppc/vle-reloc.s: New test.
* gas/ppc/vle-simple-1.d: New test.
* gas/ppc/vle-simple-1.s: New test.
* gas/ppc/vle-simple-2.d: New test.
* gas/ppc/vle-simple-2.s: New test.
* gas/ppc/vle-simple-3.d: New test.
* gas/ppc/vle-simple-3.s: New test.
* gas/ppc/vle-simple-4.d: New test.
* gas/ppc/vle-simple-4.s: New test.
* gas/ppc/vle-simple-5.d: New test.
* gas/ppc/vle-simple-5.s: New test.
* gas/ppc/vle-simple-6.d: New test.
* gas/ppc/vle-simple-6.s: New test.
* gas/ppc/vle.d: New test.
* gas/ppc/vle.s: New test.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
include/elf/
* ppc.h (SEC_PPC_VLE): Remove.
2012-05-14 Catherine Moore <clm@codesourcery.com>
James Lemke <jwlemke@codesourcery.com>
include/elf/
* ppc.h (R_PPC_VLE_REL8): New reloction.
(R_PPC_VLE_REL15): Likewise.
(R_PPC_VLE_REL24): Likewise.
(R_PPC_VLE_LO16A): Likewise.
(R_PPC_VLE_LO16D): Likewise.
(R_PPC_VLE_HI16A): Likewise.
(R_PPC_VLE_HI16D): Likewise.
(R_PPC_VLE_HA16A): Likewise.
(R_PPC_VLE_HA16D): Likewise.
(R_PPC_VLE_SDA21): Likewise.
(R_PPC_VLE_SDA21_LO): Likewise.
(R_PPC_VLE_SDAREL_LO16A): Likewise.
(R_PPC_VLE_SDAREL_LO16D): Likewise.
(R_PPC_VLE_SDAREL_HI16A): Likewise.
(R_PPC_VLE_SDAREL_HI16D): Likewise.
(R_PPC_VLE_SDAREL_HA16A): Likewise.
(R_PPC_VLE_SDAREL_HA16D): Likewise.
(SEC_PPC_VLE): Remove.
(PF_PPC_VLE): New program header flag.
(SHF_PPC_VLE): New section header flag.
(vle_opcodes, vle_num_opcodes): New.
(VLE_OP): New macro.
(VLE_OP_TO_SEG): New macro.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
include/opcode/
* ppc.h (PPC_OPCODE_VLE): New definition.
(PPC_OP_SA): New macro.
(PPC_OP_SE_VLE): New macro.
(PPC_OP): Use a variable shift amount.
(powerpc_operand): Update comments.
(PPC_OPSHIFT_INV): New macro.
(PPC_OPERAND_CR): Replace with...
(PPC_OPERAND_CR_BIT): ...this and
(PPC_OPERAND_CR_REG): ...this.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
ld/
* ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
Pass it to callback.
(walk_wild_section_general): Pass section_flag_list to callback.
(lang_add_section): Add sflag_list parm.
Move out logic to keep / omit a section & call bfd_lookup_section_flags.
(output_section_callback_fast): Add sflag_list parm.
Add new parm to lang_add_section calls.
(output_section_callback): Likewise.
(check_section_callback): Add sflag_list parm.
(lang_place_orphans): Add new parm to lang_add_section calls.
(gc_section_callback): Add sflag_list parm.
(find_relro_section_callback): Likewise.
* ldlang.h (callback_t): Add flag_info parm.
(lang_add_section): Add sflag_list parm.
* emultempl/armelf.em (elf32_arm_add_stub_section):
Add lang_add_section parm.
* emultempl/beos.em (gld*_place_orphan): Likewise.
* emultempl/elf32.em (gld*_place_orphan): Likewise.
* emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
* emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
* emultempl/mipself.em (mips_add_stub_section): Likewise.
* emultempl/mmo.em (mmo_place_orphan): Likewise.
* emultempl/pe.em (gld_*_place_orphan): Likewise.
* emultempl/pep.em (gld_*_place_orphan): Likewise.
* emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
* emultempl/spuelf.em (spu_place_special_section): Likewise.
* emultempl/vms.em (vms_place_orphan): Likewise.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
ld/testsuite/
* ld-powerpc/powerpc.exp: Create ppceabitests.
* ld-powerpc/vle-multiseg.s: New.
* ld-powerpc/vle-multiseg-1.d: New.
* ld-powerpc/vle-multiseg-1.ld: New.
* ld-powerpc/vle-multiseg-2.d: New.
* ld-powerpc/vle-multiseg-2.ld: New.
* ld-powerpc/vle-multiseg-3.d: New.
* ld-powerpc/vle-multiseg-3.ld: New.
* ld-powerpc/vle-multiseg-4.d: New.
* ld-powerpc/vle-multiseg-4.ld: New.
* ld-powerpc/vle-multiseg-5.d: New.
* ld-powerpc/vle-multiseg-5.ld: New.
* ld-powerpc/vle-multiseg-6.d: New.
* ld-powerpc/vle-multiseg-6.ld: New.
* ld-powerpc/vle-multiseg-6a.s: New.
* ld-powerpc/vle-multiseg-6b.s: New.
* ld-powerpc/vle-multiseg-6c.s: New.
* ld-powerpc/vle-multiseg-6d.s: New.
* ld-powerpc/powerpc.exp: Run new tests.
2012-05-14 Catherine Moore <clm@codesourcery.com>
ld/
* NEWS: Mention PowerPC VLE port.
2012-05-14 Catherine Moore <clm@codesourcery.com>
ld/testsuite/
* ld-powerpc/apuinfo.rd: Update for VLE.
* ld-powerpc/vle-reloc-1.d: New.
* ld-powerpc/vle-reloc-1.s: New.
* ld-powerpc/vle-reloc-2.d: New.
* ld-powerpc/vle-reloc-2.s: New.
* ld-powerpc/vle-reloc-3.d: New.
* ld-powerpc/vle-reloc-3.s: New.
* ld-powerpc/vle-reloc-def-1.s: New.
* ld-powerpc/vle-reloc-def-2.s: New.
* ld-powerpc/vle-reloc-def-3.s: New.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
opcodes/
* ppc-dis.c (get_powerpc_dialect): Use is_ppc_vle.
(PPC_OPCD_SEGS, VLE_OPCD_SEGS): New defines.
(vle_opcd_indices): New array.
(lookup_vle): New function.
(disassemble_init_powerpc): Revise for second (VLE) opcode table.
(print_insn_powerpc): Likewise.
* ppc-opc.c: Likewise.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
Nathan Froyd <froydnj@codesourcery.com>
opcodes/
* ppc-opc.c (insert_arx, extract_arx): New functions.
(insert_ary, extract_ary): New functions.
(insert_li20, extract_li20): New functions.
(insert_rx, extract_rx): New functions.
(insert_ry, extract_ry): New functions.
(insert_sci8, extract_sci8): New functions.
(insert_sci8n, extract_sci8n): New functions.
(insert_sd4h, extract_sd4h): New functions.
(insert_sd4w, extract_sd4w): New functions.
(insert_vlesi, extract_vlesi): New functions.
(insert_vlensi, extract_vlensi): New functions.
(insert_vleui, extract_vleui): New functions.
(insert_vleil, extract_vleil): New functions.
(BI_MASK, BB_MASK, BT): Use PPC_OPERAND_CR_BIT.
(BI16, BI32, BO32, B8): New.
(B15, B24, CRD32, CRS): New.
(CRD, OBF, BFA, CR, CRFS): Use PPC_OPERAND_CR_REG.
(DB, IMM20, RD, Rx, ARX, RY, RZ): New.
(ARY, SCLSCI8, SCLSCI8N, SE_SD, SE_SDH): New.
(SH6_MASK): Use PPC_OPSHIFT_INV.
(SI8, UI5, OIMM5, UI7, BO16): New.
(VLESIMM, VLENSIMM, VLEUIMM, VLEUIMML): New.
(XT6, XA6, XB6, XB6S, XC6): Use PPC_OPSHIFT_INV.
(ALLOW8_SPRG): New.
(insert_sprg, extract_sprg): Check ALLOW8_SPRG.
(OPVUP, OPVUP_MASK OPVUP): New
(BD8, BD8_MASK, BD8IO, BD8IO_MASK): New.
(EBD8IO, EBD8IO1_MASK, EBD8IO2_MASK, EBD8IO3_MASK): New.
(BD15, BD15_MASK, EBD15, EBD15_MASK, EBD15BI, EBD15BI_MASK): New.
(BD24,BD24_MASK, C_LK, C_LK_MASK, C, C_MASK): New.
(IA16, IA16_MASK, I16A, I16A_MASK, I16L, I16L_MASK): New.
(IM7, IM7_MASK, LI20, LI20_MASK, SCI8, SCI8_MASK): New.
(SCI8BF, SCI8BF_MASK, SD4, SD4_MASK): New.
(SE_IM5, SE_IM5_MASK): New.
(SE_R, SE_R_MASK, SE_RR, SE_RR_MASK): New.
(EX, EX_MASK, BO16F, BO16T, BO32F, BO32T): New.
(BO32DNZ, BO32DZ): New.
(NO371, PPCSPE, PPCISEL, PPCEFS, MULHW): Include PPC_OPCODE_VLE.
(PPCVLE): New.
(powerpc_opcodes): Add new VLE instructions. Update existing
instruction to include PPCVLE if supported.
* ppc-dis.c (ppc_opts): Add vle entry.
(get_powerpc_dialect): New function.
(powerpc_init_dialect): VLE support.
(print_insn_big_powerpc): Call get_powerpc_dialect.
(print_insn_little_powerpc): Likewise.
(operand_value_powerpc): Handle negative shift counts.
(print_insn_powerpc): Handle 2-byte instruction lengths.
2012-05-14 21:45:30 +02:00
|
|
|
|
2012-05-14 James Lemke <jwlemke@codesourcery.com>
|
|
|
|
|
Catherine Moore <clm@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* bfd.c (bfd_lookup_section_flags): Add section parm.
|
|
|
|
|
* ecoff.c (bfd_debug_section): Remove flag_info initializer.
|
|
|
|
|
* elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
|
|
|
|
|
(bfd_elf_lookup_section_flags): Add section parm.
|
|
|
|
|
* elf32-ppc.c (is_ppc_vle): New function.
|
|
|
|
|
(ppc_elf_modify_segment_map): New function.
|
|
|
|
|
(elf_backend_modify_segment_map): Define.
|
|
|
|
|
(has_vle_insns): New define.
|
|
|
|
|
* elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
|
|
|
|
|
* elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
|
|
|
|
|
Move in logic to omit / include a section.
|
|
|
|
|
* libbfd-in.h (bfd_link_info): Add section parm.
|
|
|
|
|
(bfd_generic_lookup_section_flags): Likewise.
|
|
|
|
|
* reloc.c (bfd_generic_lookup_section_flags): Likewise.
|
|
|
|
|
* section.c (bfd_section): Move out section_flag_info.
|
|
|
|
|
(BFD_FAKE_SECTION): Remove flag_info initializer.
|
|
|
|
|
* targets.c (_bfd_lookup_section_flags): Add section parm.
|
|
|
|
|
|
|
|
|
|
2012-05-14 Catherine Moore <clm@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* archures.c (bfd_mach_ppc_vle): New.
|
|
|
|
|
* bfd-in2.h: Regenerated.
|
|
|
|
|
* cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
|
|
|
|
|
* elf32-ppc.c (split16_format_type): New enumeration.
|
|
|
|
|
(ppc_elf_vle_split16): New function.
|
|
|
|
|
(HOWTO): Add entries for R_PPC_VLE relocations.
|
|
|
|
|
(ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
|
|
|
|
|
(ppc_elf_section_flags): New function.
|
|
|
|
|
(ppc_elf_lookup_section_flags): New function.
|
|
|
|
|
(ppc_elf_section_processing): New function.
|
|
|
|
|
(ppc_elf_check_relocs): Handle PPC_VLE relocations.
|
|
|
|
|
(ppc_elf_relocation_section): Likewise.
|
|
|
|
|
(elf_backend_lookup_section_flags_hook): Define.
|
|
|
|
|
(elf_backend_section_flags): Define.
|
|
|
|
|
(elf_backend_section_processing): Define.
|
2012-05-15 14:55:51 +02:00
|
|
|
|
* elf32-ppc.h (ppc_elf_section_processing): Declare.
|
Add support for PowerPC VLE.
2012-05-14 Catherine Moore <clm@codesourcery.com>
* NEWS: Mention PowerPC VLE port.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
Catherine Moore <clm@codesourcery.com>
bfd/
* bfd.c (bfd_lookup_section_flags): Add section parm.
* ecoff.c (bfd_debug_section): Remove flag_info initializer.
* elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
(bfd_elf_lookup_section_flags): Add section parm.
* elf32-ppc.c (is_ppc_vle): New function.
(ppc_elf_modify_segment_map): New function.
(elf_backend_modify_segment_map): Define.
(has_vle_insns): New define.
* elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
* elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
Move in logic to omit / include a section.
* libbfd-in.h (bfd_link_info): Add section parm.
(bfd_generic_lookup_section_flags): Likewise.
* reloc.c (bfd_generic_lookup_section_flags): Likewise.
* section.c (bfd_section): Move out section_flag_info.
(BFD_FAKE_SECTION): Remove flag_info initializer.
* targets.c (_bfd_lookup_section_flags): Add section parm.
2012-05-14 Catherine Moore <clm@codesourcery.com>
bfd/
* archures.c (bfd_mach_ppc_vle): New.
* bfd-in2.h: Regenerated.
* cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
* elf32-ppc.c (split16_format_type): New enumeration.
(ppc_elf_vle_split16): New function.
(HOWTO): Add entries for R_PPC_VLE relocations.
(ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
(ppc_elf_section_flags): New function.
(ppc_elf_lookup_section_flags): New function.
(ppc_elf_section_processing): New function.
(ppc_elf_check_relocs): Handle PPC_VLE relocations.
(ppc_elf_relocation_section): Likewise.
(elf_backend_lookup_section_flags_hook): Define.
(elf_backend_section_flags): Define.
(elf_backend_section_processing): Define.
* elf32-ppc.h (ppc_elf_section_processing): Declare.
* libbfd.h: Regenerated.
* reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
gas/
* config/tc-ppc.c (insn_validate): New func of existing code to call..
(ppc_setup_opcodes): ..from 2 places here.
Revise for second (VLE) opcode table.
Add #ifdef'd code to print opcode tables.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
gas/
* config/tc-ppc.c (ppc_setup_opcodes): Allow out-of-order
for the VLE conditional branches.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
gas/
* config/tc-ppc.c (PPC_VLE_SPLIT16A): New macro.
(PPC_VLE_SPLIT16D): New macro.
(PPC_VLE_LO16A): New macro.
(PPC_VLE_LO16D): New macro.
(PPC_VLE_HI16A): New macro.
(PPC_VLE_HI16D): New macro.
(PPC_VLE_HA16A): New macro.
(PPC_VLE_HA16D): New macro.
(PPC_APUINFO_VLE): New definition.
(md_chars_to_number): New function.
(md_parse_option): Check for combinations of little
endian and -mvle.
(md_show_usage): Document -mvle.
(ppc_arch): Recognize VLE.
(ppc_mach): Recognize bfd_mach_ppc_vle.
(ppc_setup_opcodes): Print the opcode table if
* config/tc-ppc.h (ppc_frag_check): Declare.
* doc/c-ppc.texi: Document -mvle.
* NEWS: Mention PowerPC VLE port.
2012-05-14 Catherine Moore <clm@codesourcery.com>
gas/
* config/tc-ppc.h (ppc_dw2_line_min_insn_length): Declare.
(DWARF2_LINE_MIN_INSN_LENGTH): Redefine.
* config/tc-ppc.c (ppc_dw2_line_min_insn_length): New.
* dwarf2dbg.c (scale_addr_delta): Handle values of 1
for DWARF2_LINE_MIN_INSN_LENGTH.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
gas/testsuite/
* gas/ppc/ppc.exp: Run new tests.
* gas/ppc/vle-reloc.d: New test.
* gas/ppc/vle-reloc.s: New test.
* gas/ppc/vle-simple-1.d: New test.
* gas/ppc/vle-simple-1.s: New test.
* gas/ppc/vle-simple-2.d: New test.
* gas/ppc/vle-simple-2.s: New test.
* gas/ppc/vle-simple-3.d: New test.
* gas/ppc/vle-simple-3.s: New test.
* gas/ppc/vle-simple-4.d: New test.
* gas/ppc/vle-simple-4.s: New test.
* gas/ppc/vle-simple-5.d: New test.
* gas/ppc/vle-simple-5.s: New test.
* gas/ppc/vle-simple-6.d: New test.
* gas/ppc/vle-simple-6.s: New test.
* gas/ppc/vle.d: New test.
* gas/ppc/vle.s: New test.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
include/elf/
* ppc.h (SEC_PPC_VLE): Remove.
2012-05-14 Catherine Moore <clm@codesourcery.com>
James Lemke <jwlemke@codesourcery.com>
include/elf/
* ppc.h (R_PPC_VLE_REL8): New reloction.
(R_PPC_VLE_REL15): Likewise.
(R_PPC_VLE_REL24): Likewise.
(R_PPC_VLE_LO16A): Likewise.
(R_PPC_VLE_LO16D): Likewise.
(R_PPC_VLE_HI16A): Likewise.
(R_PPC_VLE_HI16D): Likewise.
(R_PPC_VLE_HA16A): Likewise.
(R_PPC_VLE_HA16D): Likewise.
(R_PPC_VLE_SDA21): Likewise.
(R_PPC_VLE_SDA21_LO): Likewise.
(R_PPC_VLE_SDAREL_LO16A): Likewise.
(R_PPC_VLE_SDAREL_LO16D): Likewise.
(R_PPC_VLE_SDAREL_HI16A): Likewise.
(R_PPC_VLE_SDAREL_HI16D): Likewise.
(R_PPC_VLE_SDAREL_HA16A): Likewise.
(R_PPC_VLE_SDAREL_HA16D): Likewise.
(SEC_PPC_VLE): Remove.
(PF_PPC_VLE): New program header flag.
(SHF_PPC_VLE): New section header flag.
(vle_opcodes, vle_num_opcodes): New.
(VLE_OP): New macro.
(VLE_OP_TO_SEG): New macro.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
include/opcode/
* ppc.h (PPC_OPCODE_VLE): New definition.
(PPC_OP_SA): New macro.
(PPC_OP_SE_VLE): New macro.
(PPC_OP): Use a variable shift amount.
(powerpc_operand): Update comments.
(PPC_OPSHIFT_INV): New macro.
(PPC_OPERAND_CR): Replace with...
(PPC_OPERAND_CR_BIT): ...this and
(PPC_OPERAND_CR_REG): ...this.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
ld/
* ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
Pass it to callback.
(walk_wild_section_general): Pass section_flag_list to callback.
(lang_add_section): Add sflag_list parm.
Move out logic to keep / omit a section & call bfd_lookup_section_flags.
(output_section_callback_fast): Add sflag_list parm.
Add new parm to lang_add_section calls.
(output_section_callback): Likewise.
(check_section_callback): Add sflag_list parm.
(lang_place_orphans): Add new parm to lang_add_section calls.
(gc_section_callback): Add sflag_list parm.
(find_relro_section_callback): Likewise.
* ldlang.h (callback_t): Add flag_info parm.
(lang_add_section): Add sflag_list parm.
* emultempl/armelf.em (elf32_arm_add_stub_section):
Add lang_add_section parm.
* emultempl/beos.em (gld*_place_orphan): Likewise.
* emultempl/elf32.em (gld*_place_orphan): Likewise.
* emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
* emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
* emultempl/mipself.em (mips_add_stub_section): Likewise.
* emultempl/mmo.em (mmo_place_orphan): Likewise.
* emultempl/pe.em (gld_*_place_orphan): Likewise.
* emultempl/pep.em (gld_*_place_orphan): Likewise.
* emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
* emultempl/spuelf.em (spu_place_special_section): Likewise.
* emultempl/vms.em (vms_place_orphan): Likewise.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
ld/testsuite/
* ld-powerpc/powerpc.exp: Create ppceabitests.
* ld-powerpc/vle-multiseg.s: New.
* ld-powerpc/vle-multiseg-1.d: New.
* ld-powerpc/vle-multiseg-1.ld: New.
* ld-powerpc/vle-multiseg-2.d: New.
* ld-powerpc/vle-multiseg-2.ld: New.
* ld-powerpc/vle-multiseg-3.d: New.
* ld-powerpc/vle-multiseg-3.ld: New.
* ld-powerpc/vle-multiseg-4.d: New.
* ld-powerpc/vle-multiseg-4.ld: New.
* ld-powerpc/vle-multiseg-5.d: New.
* ld-powerpc/vle-multiseg-5.ld: New.
* ld-powerpc/vle-multiseg-6.d: New.
* ld-powerpc/vle-multiseg-6.ld: New.
* ld-powerpc/vle-multiseg-6a.s: New.
* ld-powerpc/vle-multiseg-6b.s: New.
* ld-powerpc/vle-multiseg-6c.s: New.
* ld-powerpc/vle-multiseg-6d.s: New.
* ld-powerpc/powerpc.exp: Run new tests.
2012-05-14 Catherine Moore <clm@codesourcery.com>
ld/
* NEWS: Mention PowerPC VLE port.
2012-05-14 Catherine Moore <clm@codesourcery.com>
ld/testsuite/
* ld-powerpc/apuinfo.rd: Update for VLE.
* ld-powerpc/vle-reloc-1.d: New.
* ld-powerpc/vle-reloc-1.s: New.
* ld-powerpc/vle-reloc-2.d: New.
* ld-powerpc/vle-reloc-2.s: New.
* ld-powerpc/vle-reloc-3.d: New.
* ld-powerpc/vle-reloc-3.s: New.
* ld-powerpc/vle-reloc-def-1.s: New.
* ld-powerpc/vle-reloc-def-2.s: New.
* ld-powerpc/vle-reloc-def-3.s: New.
2012-05-14 James Lemke <jwlemke@codesourcery.com>
opcodes/
* ppc-dis.c (get_powerpc_dialect): Use is_ppc_vle.
(PPC_OPCD_SEGS, VLE_OPCD_SEGS): New defines.
(vle_opcd_indices): New array.
(lookup_vle): New function.
(disassemble_init_powerpc): Revise for second (VLE) opcode table.
(print_insn_powerpc): Likewise.
* ppc-opc.c: Likewise.
2012-05-14 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Rhonda Wittels <rhonda@codesourcery.com>
Nathan Froyd <froydnj@codesourcery.com>
opcodes/
* ppc-opc.c (insert_arx, extract_arx): New functions.
(insert_ary, extract_ary): New functions.
(insert_li20, extract_li20): New functions.
(insert_rx, extract_rx): New functions.
(insert_ry, extract_ry): New functions.
(insert_sci8, extract_sci8): New functions.
(insert_sci8n, extract_sci8n): New functions.
(insert_sd4h, extract_sd4h): New functions.
(insert_sd4w, extract_sd4w): New functions.
(insert_vlesi, extract_vlesi): New functions.
(insert_vlensi, extract_vlensi): New functions.
(insert_vleui, extract_vleui): New functions.
(insert_vleil, extract_vleil): New functions.
(BI_MASK, BB_MASK, BT): Use PPC_OPERAND_CR_BIT.
(BI16, BI32, BO32, B8): New.
(B15, B24, CRD32, CRS): New.
(CRD, OBF, BFA, CR, CRFS): Use PPC_OPERAND_CR_REG.
(DB, IMM20, RD, Rx, ARX, RY, RZ): New.
(ARY, SCLSCI8, SCLSCI8N, SE_SD, SE_SDH): New.
(SH6_MASK): Use PPC_OPSHIFT_INV.
(SI8, UI5, OIMM5, UI7, BO16): New.
(VLESIMM, VLENSIMM, VLEUIMM, VLEUIMML): New.
(XT6, XA6, XB6, XB6S, XC6): Use PPC_OPSHIFT_INV.
(ALLOW8_SPRG): New.
(insert_sprg, extract_sprg): Check ALLOW8_SPRG.
(OPVUP, OPVUP_MASK OPVUP): New
(BD8, BD8_MASK, BD8IO, BD8IO_MASK): New.
(EBD8IO, EBD8IO1_MASK, EBD8IO2_MASK, EBD8IO3_MASK): New.
(BD15, BD15_MASK, EBD15, EBD15_MASK, EBD15BI, EBD15BI_MASK): New.
(BD24,BD24_MASK, C_LK, C_LK_MASK, C, C_MASK): New.
(IA16, IA16_MASK, I16A, I16A_MASK, I16L, I16L_MASK): New.
(IM7, IM7_MASK, LI20, LI20_MASK, SCI8, SCI8_MASK): New.
(SCI8BF, SCI8BF_MASK, SD4, SD4_MASK): New.
(SE_IM5, SE_IM5_MASK): New.
(SE_R, SE_R_MASK, SE_RR, SE_RR_MASK): New.
(EX, EX_MASK, BO16F, BO16T, BO32F, BO32T): New.
(BO32DNZ, BO32DZ): New.
(NO371, PPCSPE, PPCISEL, PPCEFS, MULHW): Include PPC_OPCODE_VLE.
(PPCVLE): New.
(powerpc_opcodes): Add new VLE instructions. Update existing
instruction to include PPCVLE if supported.
* ppc-dis.c (ppc_opts): Add vle entry.
(get_powerpc_dialect): New function.
(powerpc_init_dialect): VLE support.
(print_insn_big_powerpc): Call get_powerpc_dialect.
(print_insn_little_powerpc): Likewise.
(operand_value_powerpc): Handle negative shift counts.
(print_insn_powerpc): Handle 2-byte instruction lengths.
2012-05-14 21:45:30 +02:00
|
|
|
|
* libbfd.h: Regenerated.
|
|
|
|
|
* reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
|
|
|
|
|
BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
|
|
|
|
|
BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
|
|
|
|
|
BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
|
|
|
|
|
BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
|
|
|
|
|
BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
|
|
|
|
|
BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
|
|
|
|
|
BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
|
|
|
|
|
BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
|
|
|
|
|
|
2012-05-16 16:13:26 +02:00
|
|
|
|
2012-05-11 Georg-Johann Lay <avr@gjlay.de>
|
PR 13503
* reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO,
BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenrate.
* elf32-avr.c (elf_avr_howto_table): Add entries for
R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
(avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8,
R_AVR_8_HHI8.
* config/tc-avr.c (exp_mod_pm): Remove variable.
(exp_mod_data_t): New typedef.
(pexp_mod_data, exp_mod_data): New variables.
(avr_parse_cons_expression): Scan through exp_mod_data[] to find
data expression modifiers "pm", "gs", "lo8", hi8", "hhi8", "hh8"
and set pexp_mod_data accordingly to be used in avr_cons_fix_new.
(avr_cons_fix_new): Handle new data expression modifiers shipped
in pexp_mod_data.
(md_apply_fix): Handle BFD_RELOC_AVR_8_LO, BFD_RELOC_AVR_8_HI,
BFD_RELOC_AVR_8_HHI.
* elf/avr.h (RELOC_NUMBERS): Add values for R_AVR_8_LO8,
R_AVR_8_HI8, R_AVR_8_HHI8.
2012-05-11 14:59:23 +02:00
|
|
|
|
|
|
|
|
|
PR target/13503
|
|
|
|
|
* reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO,
|
|
|
|
|
BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* libbfd.h: Regenrate.
|
|
|
|
|
* elf32-avr.c (elf_avr_howto_table): Add entries for
|
|
|
|
|
R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
|
|
|
|
|
(avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8,
|
|
|
|
|
R_AVR_8_HHI8.
|
|
|
|
|
|
2012-05-11 02:50:43 +02:00
|
|
|
|
2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Use int in x32
|
|
|
|
|
addend overflow check.
|
|
|
|
|
|
2012-05-11 02:01:58 +02:00
|
|
|
|
2012-05-10 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* elf32-rx.c (rx_elf_object_p): Ignore empty segments.
|
|
|
|
|
|
2012-05-10 22:46:34 +02:00
|
|
|
|
2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Display signed
|
|
|
|
|
hex number in x32 addend overflow check.
|
|
|
|
|
|
2012-05-10 19:15:19 +02:00
|
|
|
|
2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
|
|
|
|
|
R_X86_64_RELATIVE64.
|
|
|
|
|
|
2012-05-10 05:25:17 +02:00
|
|
|
|
2012-05-09 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Check addend
|
|
|
|
|
overflow for R_X86_64_RELATIVE64.
|
|
|
|
|
|
2012-05-08 19:18:21 +02:00
|
|
|
|
2012-05-08 Ben Cheng <bccheng@google.com>
|
|
|
|
|
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elf.c: Preserve the original p_align and p_flags if they are
|
2012-05-08 19:18:21 +02:00
|
|
|
|
valid.
|
|
|
|
|
|
2012-05-07 11:25:27 +02:00
|
|
|
|
2012-05-07 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf64-ia64-vms.c (elf64_ia64_relocate_section): Update
|
|
|
|
|
RELOC_AGAINST_DISCARDED_SECTION invocation.
|
|
|
|
|
|
2012-05-07 07:44:35 +02:00
|
|
|
|
2012-05-07 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Declare and use
|
|
|
|
|
local variable i_ instead of assuming and using a variable i.
|
|
|
|
|
|
2012-05-07 05:27:52 +02:00
|
|
|
|
2012-05-07 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Handle compound
|
|
|
|
|
relocations.
|
|
|
|
|
* elfxx-mips.c (mips_reloc_against_discarded_section): New
|
|
|
|
|
function.
|
|
|
|
|
(_bfd_mips_elf_relocate_section): Call it, in place of
|
|
|
|
|
RELOC_AGAINST_DISCARDED_SECTION.
|
|
|
|
|
* elf-m10200.c (mn10200_elf_relocate_section): Update arguments
|
|
|
|
|
to RELOC_AGAINST_DISCARDED_SECTION.
|
|
|
|
|
* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-arm.c (elf32_arm_relocate_section): Likewise.
|
|
|
|
|
* elf32-avr.c (elf32_avr_relocate_section): Likewise.
|
|
|
|
|
* elf32-bfin.c (bfin_relocate_section): Likewise.
|
|
|
|
|
(bfinfdpic_relocate_section): Likewise.
|
|
|
|
|
* elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
|
|
|
|
|
* elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
|
|
|
|
|
* elf32-cris.c (cris_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-crx.c (elf32_crx_relocate_section): Likewise.
|
|
|
|
|
* elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
|
|
|
|
|
* elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-fr30.c (fr30_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-frv.c (elf32_frv_relocate_section): Likewise.
|
|
|
|
|
* elf32-h8300.c (elf32_h8_relocate_section): Likewise.
|
|
|
|
|
* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
|
|
|
|
|
* elf32-i370.c (i370_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-i386.c (elf_i386_relocate_section): Likewise.
|
|
|
|
|
* elf32-i860.c (elf32_i860_relocate_section): Likewise.
|
|
|
|
|
* elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-lm32.c (lm32_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-m32c.c (m32c_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
|
|
|
|
|
* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
|
|
|
|
|
* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-mep.c (mep_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-moxie.c (moxie_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
|
|
|
|
|
* elf32-mt.c (mt_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-rl78.c (rl78_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-rx.c (rx_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-s390.c (elf_s390_relocate_section): Likewise.
|
|
|
|
|
* elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-sh.c (sh_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-spu.c (spu_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
|
|
|
|
|
* elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-v850.c (v850_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-vax.c (elf_vax_relocate_section): Likewise.
|
|
|
|
|
* elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
|
|
|
|
|
* elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
|
|
|
|
|
* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
|
|
|
|
|
* elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
|
|
|
|
|
(elf64_alpha_relocate_section): Likewise.
|
|
|
|
|
* elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
|
|
|
|
|
* elf64-mmix.c (mmix_elf_relocate_section): Likewise.
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
|
|
|
|
|
* elf64-s390.c (elf_s390_relocate_section): Likewise.
|
|
|
|
|
* elf64-sh64.c (sh_elf64_relocate_section): Likewise.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
|
|
|
|
|
* elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
|
|
|
|
|
* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
|
|
|
|
|
* elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
|
|
|
|
|
|
2012-05-05 06:51:16 +02:00
|
|
|
|
2012-05-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/14052
|
|
|
|
|
PR ld/13621
|
|
|
|
|
* linker.c (_bfd_nearby_section): Revert 2012-02-13 change.
|
|
|
|
|
|
2012-05-05 05:05:32 +02:00
|
|
|
|
2012-05-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* aout-arm.c: Replace all uses of bfd_abs_section, bfd_com_section,
|
|
|
|
|
bfd_und_section and bfd_ind_section with their _ptr variants, or
|
|
|
|
|
use corresponding bfd_is_* macros.
|
|
|
|
|
* aout-ns32k.c: Likewise.
|
|
|
|
|
* aout-tic30.c: Likewise.
|
|
|
|
|
* coff-arm.c: Likewise.
|
|
|
|
|
* coff-tic54x.c: Likewise.
|
|
|
|
|
* cpu-ns32k.c: Likewise.
|
|
|
|
|
* elf-attrs.c: Likewise.
|
|
|
|
|
* elfcode.h: Likewise.
|
|
|
|
|
* peicode.h: Likewise.
|
|
|
|
|
* reloc.c: Likewise.
|
|
|
|
|
* riscix.c: Likewise.
|
|
|
|
|
* versados.c: Likewise.
|
|
|
|
|
* section.c: Likewise.
|
|
|
|
|
(bfd_abs_section, bfd_ind_section, bfd_com_section,
|
|
|
|
|
bfd_ind_section): Delete.
|
|
|
|
|
(std_section): New array replacing above.
|
|
|
|
|
(bfd_abs_section_ptr, bfd_ind_section_ptr, bfd_com_section_ptr,
|
|
|
|
|
bfd_ind_section_ptr, STD_SECTION): Update.
|
|
|
|
|
(BFD_FAKE_SECTION, GLOBAL_SYM_INIT): Remove unnecessary casts.
|
2012-05-05 06:37:32 +02:00
|
|
|
|
* bfd-in2.h: Regenerate.
|
2012-05-05 05:05:32 +02:00
|
|
|
|
|
2012-05-03 15:12:08 +02:00
|
|
|
|
2012-05-03 Sean Keys <skeys@ipdatasys.com>
|
|
|
|
|
|
|
|
|
|
* cpu-xgate.c: New file. Added XGATE support.
|
|
|
|
|
* archures.c (bfd_architecture): Add XGATE architecture.
|
|
|
|
|
(bfd_archures_list): Add reference to XGATE architecture info.
|
|
|
|
|
* elf-bfd.h (prep_headers): Handle bfd_arch_xgate.
|
|
|
|
|
* reloc.c: Add various XGATE relocation enums.
|
|
|
|
|
* targets.c (bfd_elf32_xgate_vec): Declare and add to target vector
|
|
|
|
|
list.
|
|
|
|
|
* Makefile.am: Add support for XGATE elf.
|
|
|
|
|
* configure.in: Ditto.
|
|
|
|
|
* config.bfd: Ditto.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* configure: Ditto.
|
|
|
|
|
* bfd-in2.h: Ditto.
|
|
|
|
|
* libbfd.h: Ditto.
|
|
|
|
|
Added files for XGATE relocations.
|
|
|
|
|
* elf32-xgate.c: Created minimal relocation file.
|
|
|
|
|
* elf32-xgate.h: Created minimal header file for elf32-xgate.
|
|
|
|
|
|
2012-05-03 14:49:22 +02:00
|
|
|
|
2012-05-03 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2.c (decode_line_info): Ignore
|
|
|
|
|
DW_LNE_HP_source_file_correlation.
|
|
|
|
|
|
2012-05-01 18:07:36 +02:00
|
|
|
|
2012-05-01 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13121
|
|
|
|
|
* aoutx.h: Rename 'finfo' to 'flaginfo' to avoid conflicts with
|
|
|
|
|
AIX system headers.
|
|
|
|
|
* coff-ppc.c: Likewise.
|
|
|
|
|
* cofflink.c: Likewise.
|
|
|
|
|
* elf32-arm.c: Likewise.
|
|
|
|
|
* elf64-sparc.c: Likewise.
|
|
|
|
|
* elflink.c: Likewise.
|
|
|
|
|
* pdp11.c: Likewise.
|
|
|
|
|
* rescoff.c: Likewise.
|
|
|
|
|
|
2012-04-27 21:03:04 +02:00
|
|
|
|
2012-04-26 Mark Wielaard <mjw@redhat.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2.c (scan_unit_for_symbols): Account for DW_AT_high_pc
|
|
|
|
|
possibly being relative to DW_AT_low_pc.
|
|
|
|
|
(parse_comp_unit): Likewise.
|
|
|
|
|
|
2012-04-26 16:38:45 +02:00
|
|
|
|
2012-04-26 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
* elf32-m68k.c (elf_m68k_check_relocs): Mark non-GOT references
|
|
|
|
|
also when generating PIE.
|
|
|
|
|
(elf_m68k_discard_copies): Mark undefined weak symbols referenced
|
|
|
|
|
by relocations as dynamic.
|
|
|
|
|
|
2012-04-26 15:49:52 +02:00
|
|
|
|
2012-04-26 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
Provide a way for programs to recognize BFD_ASSERT calls.
|
|
|
|
|
* bfd.c (bfd_assert_handler_type): New API type.
|
|
|
|
|
(bfd_set_assert_handler, bfd_get_assert_handler): New API functions.
|
|
|
|
|
(_bfd_assert_handler): New variable.
|
|
|
|
|
(_bfd_default_assert_handler): New function.
|
|
|
|
|
(bfd_assert): Call _bfd_assert_handler, not _bfd_error_handler.
|
|
|
|
|
* libbfd-in.h (_bfd_assert_handler): Declare.
|
|
|
|
|
* libbfd.h, bfd-in2.h: Regenerate.
|
|
|
|
|
|
2012-04-24 18:09:12 +02:00
|
|
|
|
2012-04-24 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13990
|
|
|
|
|
* elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local
|
|
|
|
|
symbol, where PLT refcount is set to -1.
|
|
|
|
|
|
PR ld/13991
bfd/
* bfd/elf-bfd.h (_bfd_elf_link_just_syms): Define as
_bfd_generic_link_just_syms.
* bfd/elflink.c (_bfd_elf_link_just_syms): Delete.
* bfd/linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
* bfd/bfd-in.h (discarded_section): Renamed from elf_discarded_section.
* bfd/section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
* bfd/elf-eh-frame.c, * bfd/elf-m10200.c, * bfd/elf-m10300.c,
* bfd/elf.c, * bfd/elf32-arm.c, * bfd/elf32-avr.c, * bfd/elf32-bfin.c,
* bfd/elf32-cr16.c, * bfd/elf32-cr16c.c, * bfd/elf32-cris.c,
* bfd/elf32-crx.c, * bfd/elf32-d10v.c, * bfd/elf32-epiphany.c,
* bfd/elf32-fr30.c, * bfd/elf32-frv.c, * bfd/elf32-h8300.c,
* bfd/elf32-hppa.c, * bfd/elf32-i370.c, * bfd/elf32-i386.c,
* bfd/elf32-i860.c, * bfd/elf32-ip2k.c, * bfd/elf32-iq2000.c,
* bfd/elf32-lm32.c, * bfd/elf32-m32c.c, * bfd/elf32-m32r.c,
* bfd/elf32-m68hc1x.c, * bfd/elf32-m68k.c, * bfd/elf32-mcore.c,
* bfd/elf32-mep.c, * bfd/elf32-moxie.c, * bfd/elf32-msp430.c,
* bfd/elf32-mt.c, * bfd/elf32-openrisc.c, * bfd/elf32-ppc.c,
* bfd/elf32-rl78.c, * bfd/elf32-rx.c, * bfd/elf32-s390.c,
* bfd/elf32-score.c, * bfd/elf32-score7.c, * bfd/elf32-sh.c,
* bfd/elf32-spu.c, * bfd/elf32-tic6x.c, * bfd/elf32-tilepro.c,
* bfd/elf32-v850.c, * bfd/elf32-vax.c, * bfd/elf32-xc16x.c,
* bfd/elf32-xstormy16.c, * bfd/elf32-xtensa.c, * bfd/elf64-alpha.c,
* bfd/elf64-hppa.c, * bfd/elf64-ia64-vms.c, * bfd/elf64-mmix.c,
* bfd/elf64-ppc.c, * bfd/elf64-s390.c, * bfd/elf64-sh64.c,
* bfd/elf64-x86-64.c, * bfd/elflink.c, * bfd/elfnn-ia64.c,
* bfd/elfxx-mips.c, * bfd/elfxx-sparc.c, * bfd/elfxx-tilegx.c,
* bfd/reloc.c: Update all references.
* bfd/bfd-in2.h: Regenerate.
ld/
* ld/ldlang.c (size_input_section): Use sec_info_type rather than
usrdata->flags.just_syms.
* ld/ldwrite.c (build_link_order): Likewise.
* ld/emultempl/hppaelf.em (build_section_lists): Likewise.
* ld/emultempl/ppc64elf.em (build_toc_list): Likewise.
* ld/emultempl/armelf.em (build_section_lists): Likewise.
(after_allocation): Update for renamed sec_info_type value.
* ld/emultempl/tic6xdsbt.em: Likewise.
2012-04-24 07:12:40 +02:00
|
|
|
|
2012-04-24 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13991
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elf-bfd.h (_bfd_elf_link_just_syms): Define as
|
PR ld/13991
bfd/
* bfd/elf-bfd.h (_bfd_elf_link_just_syms): Define as
_bfd_generic_link_just_syms.
* bfd/elflink.c (_bfd_elf_link_just_syms): Delete.
* bfd/linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
* bfd/bfd-in.h (discarded_section): Renamed from elf_discarded_section.
* bfd/section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
* bfd/elf-eh-frame.c, * bfd/elf-m10200.c, * bfd/elf-m10300.c,
* bfd/elf.c, * bfd/elf32-arm.c, * bfd/elf32-avr.c, * bfd/elf32-bfin.c,
* bfd/elf32-cr16.c, * bfd/elf32-cr16c.c, * bfd/elf32-cris.c,
* bfd/elf32-crx.c, * bfd/elf32-d10v.c, * bfd/elf32-epiphany.c,
* bfd/elf32-fr30.c, * bfd/elf32-frv.c, * bfd/elf32-h8300.c,
* bfd/elf32-hppa.c, * bfd/elf32-i370.c, * bfd/elf32-i386.c,
* bfd/elf32-i860.c, * bfd/elf32-ip2k.c, * bfd/elf32-iq2000.c,
* bfd/elf32-lm32.c, * bfd/elf32-m32c.c, * bfd/elf32-m32r.c,
* bfd/elf32-m68hc1x.c, * bfd/elf32-m68k.c, * bfd/elf32-mcore.c,
* bfd/elf32-mep.c, * bfd/elf32-moxie.c, * bfd/elf32-msp430.c,
* bfd/elf32-mt.c, * bfd/elf32-openrisc.c, * bfd/elf32-ppc.c,
* bfd/elf32-rl78.c, * bfd/elf32-rx.c, * bfd/elf32-s390.c,
* bfd/elf32-score.c, * bfd/elf32-score7.c, * bfd/elf32-sh.c,
* bfd/elf32-spu.c, * bfd/elf32-tic6x.c, * bfd/elf32-tilepro.c,
* bfd/elf32-v850.c, * bfd/elf32-vax.c, * bfd/elf32-xc16x.c,
* bfd/elf32-xstormy16.c, * bfd/elf32-xtensa.c, * bfd/elf64-alpha.c,
* bfd/elf64-hppa.c, * bfd/elf64-ia64-vms.c, * bfd/elf64-mmix.c,
* bfd/elf64-ppc.c, * bfd/elf64-s390.c, * bfd/elf64-sh64.c,
* bfd/elf64-x86-64.c, * bfd/elflink.c, * bfd/elfnn-ia64.c,
* bfd/elfxx-mips.c, * bfd/elfxx-sparc.c, * bfd/elfxx-tilegx.c,
* bfd/reloc.c: Update all references.
* bfd/bfd-in2.h: Regenerate.
ld/
* ld/ldlang.c (size_input_section): Use sec_info_type rather than
usrdata->flags.just_syms.
* ld/ldwrite.c (build_link_order): Likewise.
* ld/emultempl/hppaelf.em (build_section_lists): Likewise.
* ld/emultempl/ppc64elf.em (build_toc_list): Likewise.
* ld/emultempl/armelf.em (build_section_lists): Likewise.
(after_allocation): Update for renamed sec_info_type value.
* ld/emultempl/tic6xdsbt.em: Likewise.
2012-04-24 07:12:40 +02:00
|
|
|
|
_bfd_generic_link_just_syms.
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elflink.c (_bfd_elf_link_just_syms): Delete.
|
|
|
|
|
* linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
|
PR ld/13991
bfd/
* bfd/elf-bfd.h (_bfd_elf_link_just_syms): Define as
_bfd_generic_link_just_syms.
* bfd/elflink.c (_bfd_elf_link_just_syms): Delete.
* bfd/linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
* bfd/bfd-in.h (discarded_section): Renamed from elf_discarded_section.
* bfd/section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
* bfd/elf-eh-frame.c, * bfd/elf-m10200.c, * bfd/elf-m10300.c,
* bfd/elf.c, * bfd/elf32-arm.c, * bfd/elf32-avr.c, * bfd/elf32-bfin.c,
* bfd/elf32-cr16.c, * bfd/elf32-cr16c.c, * bfd/elf32-cris.c,
* bfd/elf32-crx.c, * bfd/elf32-d10v.c, * bfd/elf32-epiphany.c,
* bfd/elf32-fr30.c, * bfd/elf32-frv.c, * bfd/elf32-h8300.c,
* bfd/elf32-hppa.c, * bfd/elf32-i370.c, * bfd/elf32-i386.c,
* bfd/elf32-i860.c, * bfd/elf32-ip2k.c, * bfd/elf32-iq2000.c,
* bfd/elf32-lm32.c, * bfd/elf32-m32c.c, * bfd/elf32-m32r.c,
* bfd/elf32-m68hc1x.c, * bfd/elf32-m68k.c, * bfd/elf32-mcore.c,
* bfd/elf32-mep.c, * bfd/elf32-moxie.c, * bfd/elf32-msp430.c,
* bfd/elf32-mt.c, * bfd/elf32-openrisc.c, * bfd/elf32-ppc.c,
* bfd/elf32-rl78.c, * bfd/elf32-rx.c, * bfd/elf32-s390.c,
* bfd/elf32-score.c, * bfd/elf32-score7.c, * bfd/elf32-sh.c,
* bfd/elf32-spu.c, * bfd/elf32-tic6x.c, * bfd/elf32-tilepro.c,
* bfd/elf32-v850.c, * bfd/elf32-vax.c, * bfd/elf32-xc16x.c,
* bfd/elf32-xstormy16.c, * bfd/elf32-xtensa.c, * bfd/elf64-alpha.c,
* bfd/elf64-hppa.c, * bfd/elf64-ia64-vms.c, * bfd/elf64-mmix.c,
* bfd/elf64-ppc.c, * bfd/elf64-s390.c, * bfd/elf64-sh64.c,
* bfd/elf64-x86-64.c, * bfd/elflink.c, * bfd/elfnn-ia64.c,
* bfd/elfxx-mips.c, * bfd/elfxx-sparc.c, * bfd/elfxx-tilegx.c,
* bfd/reloc.c: Update all references.
* bfd/bfd-in2.h: Regenerate.
ld/
* ld/ldlang.c (size_input_section): Use sec_info_type rather than
usrdata->flags.just_syms.
* ld/ldwrite.c (build_link_order): Likewise.
* ld/emultempl/hppaelf.em (build_section_lists): Likewise.
* ld/emultempl/ppc64elf.em (build_toc_list): Likewise.
* ld/emultempl/armelf.em (build_section_lists): Likewise.
(after_allocation): Update for renamed sec_info_type value.
* ld/emultempl/tic6xdsbt.em: Likewise.
2012-04-24 07:12:40 +02:00
|
|
|
|
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* bfd-in.h (discarded_section): Renamed from elf_discarded_section.
|
|
|
|
|
* section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
|
PR ld/13991
bfd/
* bfd/elf-bfd.h (_bfd_elf_link_just_syms): Define as
_bfd_generic_link_just_syms.
* bfd/elflink.c (_bfd_elf_link_just_syms): Delete.
* bfd/linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
* bfd/bfd-in.h (discarded_section): Renamed from elf_discarded_section.
* bfd/section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
* bfd/elf-eh-frame.c, * bfd/elf-m10200.c, * bfd/elf-m10300.c,
* bfd/elf.c, * bfd/elf32-arm.c, * bfd/elf32-avr.c, * bfd/elf32-bfin.c,
* bfd/elf32-cr16.c, * bfd/elf32-cr16c.c, * bfd/elf32-cris.c,
* bfd/elf32-crx.c, * bfd/elf32-d10v.c, * bfd/elf32-epiphany.c,
* bfd/elf32-fr30.c, * bfd/elf32-frv.c, * bfd/elf32-h8300.c,
* bfd/elf32-hppa.c, * bfd/elf32-i370.c, * bfd/elf32-i386.c,
* bfd/elf32-i860.c, * bfd/elf32-ip2k.c, * bfd/elf32-iq2000.c,
* bfd/elf32-lm32.c, * bfd/elf32-m32c.c, * bfd/elf32-m32r.c,
* bfd/elf32-m68hc1x.c, * bfd/elf32-m68k.c, * bfd/elf32-mcore.c,
* bfd/elf32-mep.c, * bfd/elf32-moxie.c, * bfd/elf32-msp430.c,
* bfd/elf32-mt.c, * bfd/elf32-openrisc.c, * bfd/elf32-ppc.c,
* bfd/elf32-rl78.c, * bfd/elf32-rx.c, * bfd/elf32-s390.c,
* bfd/elf32-score.c, * bfd/elf32-score7.c, * bfd/elf32-sh.c,
* bfd/elf32-spu.c, * bfd/elf32-tic6x.c, * bfd/elf32-tilepro.c,
* bfd/elf32-v850.c, * bfd/elf32-vax.c, * bfd/elf32-xc16x.c,
* bfd/elf32-xstormy16.c, * bfd/elf32-xtensa.c, * bfd/elf64-alpha.c,
* bfd/elf64-hppa.c, * bfd/elf64-ia64-vms.c, * bfd/elf64-mmix.c,
* bfd/elf64-ppc.c, * bfd/elf64-s390.c, * bfd/elf64-sh64.c,
* bfd/elf64-x86-64.c, * bfd/elflink.c, * bfd/elfnn-ia64.c,
* bfd/elfxx-mips.c, * bfd/elfxx-sparc.c, * bfd/elfxx-tilegx.c,
* bfd/reloc.c: Update all references.
* bfd/bfd-in2.h: Regenerate.
ld/
* ld/ldlang.c (size_input_section): Use sec_info_type rather than
usrdata->flags.just_syms.
* ld/ldwrite.c (build_link_order): Likewise.
* ld/emultempl/hppaelf.em (build_section_lists): Likewise.
* ld/emultempl/ppc64elf.em (build_toc_list): Likewise.
* ld/emultempl/armelf.em (build_section_lists): Likewise.
(after_allocation): Update for renamed sec_info_type value.
* ld/emultempl/tic6xdsbt.em: Likewise.
2012-04-24 07:12:40 +02:00
|
|
|
|
SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
|
|
|
|
|
SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c,
|
|
|
|
|
* elf.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
|
|
|
|
|
* elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c,
|
|
|
|
|
* elf32-crx.c, * elf32-d10v.c, * elf32-epiphany.c,
|
|
|
|
|
* elf32-fr30.c, * elf32-frv.c, * elf32-h8300.c,
|
|
|
|
|
* elf32-hppa.c, * elf32-i370.c, * elf32-i386.c,
|
|
|
|
|
* elf32-i860.c, * elf32-ip2k.c, * elf32-iq2000.c,
|
|
|
|
|
* elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c,
|
|
|
|
|
* elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
|
|
|
|
|
* elf32-mep.c, * elf32-moxie.c, * elf32-msp430.c,
|
|
|
|
|
* elf32-mt.c, * elf32-openrisc.c, * elf32-ppc.c,
|
|
|
|
|
* elf32-rl78.c, * elf32-rx.c, * elf32-s390.c,
|
|
|
|
|
* elf32-score.c, * elf32-score7.c, * elf32-sh.c,
|
|
|
|
|
* elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c,
|
|
|
|
|
* elf32-v850.c, * elf32-vax.c, * elf32-xc16x.c,
|
|
|
|
|
* elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
|
|
|
|
|
* elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
|
|
|
|
|
* elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c,
|
|
|
|
|
* elf64-x86-64.c, * elflink.c, * elfnn-ia64.c,
|
|
|
|
|
* elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c,
|
|
|
|
|
* reloc.c: Update all references.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
PR ld/13991
bfd/
* bfd/elf-bfd.h (_bfd_elf_link_just_syms): Define as
_bfd_generic_link_just_syms.
* bfd/elflink.c (_bfd_elf_link_just_syms): Delete.
* bfd/linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
* bfd/bfd-in.h (discarded_section): Renamed from elf_discarded_section.
* bfd/section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
* bfd/elf-eh-frame.c, * bfd/elf-m10200.c, * bfd/elf-m10300.c,
* bfd/elf.c, * bfd/elf32-arm.c, * bfd/elf32-avr.c, * bfd/elf32-bfin.c,
* bfd/elf32-cr16.c, * bfd/elf32-cr16c.c, * bfd/elf32-cris.c,
* bfd/elf32-crx.c, * bfd/elf32-d10v.c, * bfd/elf32-epiphany.c,
* bfd/elf32-fr30.c, * bfd/elf32-frv.c, * bfd/elf32-h8300.c,
* bfd/elf32-hppa.c, * bfd/elf32-i370.c, * bfd/elf32-i386.c,
* bfd/elf32-i860.c, * bfd/elf32-ip2k.c, * bfd/elf32-iq2000.c,
* bfd/elf32-lm32.c, * bfd/elf32-m32c.c, * bfd/elf32-m32r.c,
* bfd/elf32-m68hc1x.c, * bfd/elf32-m68k.c, * bfd/elf32-mcore.c,
* bfd/elf32-mep.c, * bfd/elf32-moxie.c, * bfd/elf32-msp430.c,
* bfd/elf32-mt.c, * bfd/elf32-openrisc.c, * bfd/elf32-ppc.c,
* bfd/elf32-rl78.c, * bfd/elf32-rx.c, * bfd/elf32-s390.c,
* bfd/elf32-score.c, * bfd/elf32-score7.c, * bfd/elf32-sh.c,
* bfd/elf32-spu.c, * bfd/elf32-tic6x.c, * bfd/elf32-tilepro.c,
* bfd/elf32-v850.c, * bfd/elf32-vax.c, * bfd/elf32-xc16x.c,
* bfd/elf32-xstormy16.c, * bfd/elf32-xtensa.c, * bfd/elf64-alpha.c,
* bfd/elf64-hppa.c, * bfd/elf64-ia64-vms.c, * bfd/elf64-mmix.c,
* bfd/elf64-ppc.c, * bfd/elf64-s390.c, * bfd/elf64-sh64.c,
* bfd/elf64-x86-64.c, * bfd/elflink.c, * bfd/elfnn-ia64.c,
* bfd/elfxx-mips.c, * bfd/elfxx-sparc.c, * bfd/elfxx-tilegx.c,
* bfd/reloc.c: Update all references.
* bfd/bfd-in2.h: Regenerate.
ld/
* ld/ldlang.c (size_input_section): Use sec_info_type rather than
usrdata->flags.just_syms.
* ld/ldwrite.c (build_link_order): Likewise.
* ld/emultempl/hppaelf.em (build_section_lists): Likewise.
* ld/emultempl/ppc64elf.em (build_toc_list): Likewise.
* ld/emultempl/armelf.em (build_section_lists): Likewise.
(after_allocation): Update for renamed sec_info_type value.
* ld/emultempl/tic6xdsbt.em: Likewise.
2012-04-24 07:12:40 +02:00
|
|
|
|
|
2012-04-20 13:45:54 +02:00
|
|
|
|
2012-04-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
|
|
|
|
|
|
|
|
|
|
* elf32-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
|
|
|
|
|
* elf64-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
|
|
|
|
|
|
2012-04-19 11:50:24 +02:00
|
|
|
|
2012-04-19 Thomas Schwinge <thomas@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for
|
|
|
|
|
got_type.
|
|
|
|
|
(allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use
|
|
|
|
|
it.
|
|
|
|
|
|
2012-04-17 23:58:51 +02:00
|
|
|
|
2012-04-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
|
|
|
|
|
|
|
|
|
* elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
|
|
|
|
|
relocations when LE conversion happens on the IE tls symbol.
|
|
|
|
|
|
2012-04-17 21:53:19 +02:00
|
|
|
|
2012-04-17 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding
|
|
|
|
|
so that 32-byte boundary is a proper instruction boundary.
|
|
|
|
|
|
2012-04-17 12:51:07 +02:00
|
|
|
|
2012-04-17 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
|
|
|
|
|
member of an object archive.<
|
|
|
|
|
|
2012-04-17 12:28:19 +02:00
|
|
|
|
2012-04-17 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* vms-lib.c (MAX_EKEYLEN): Define.
|
|
|
|
|
(MAX_KEYLEN): Fix value.
|
|
|
|
|
(vms_write_index): Add comments and fix indentation.
|
|
|
|
|
Adjust comparaison. Add assertions. Free kbn_blk.
|
|
|
|
|
(_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN.
|
|
|
|
|
Compense MAX_KEYLEN adjustment.
|
|
|
|
|
|
2012-04-16 13:45:56 +02:00
|
|
|
|
2012-04-16 Maciej W. Rozycki <macro@linux-mips.org>
|
|
|
|
|
|
|
|
|
|
* elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs.
|
|
|
|
|
(_bfd_mips_elf_check_relocs): Update accordingly.
|
|
|
|
|
|
2012-04-14 01:20:00 +02:00
|
|
|
|
2012-04-13 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13947
|
|
|
|
|
* elflink.c (bfd_elf_final_link): Set reloc_count to 0 for
|
|
|
|
|
reloc sections.
|
|
|
|
|
|
2012-04-12 18:26:06 +02:00
|
|
|
|
2012-04-12 David S. Miller <davem@davemloft.net>
|
|
|
|
|
|
|
|
|
|
* reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32,
|
|
|
|
|
BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs.
|
|
|
|
|
* libbfd.h: Regenerate.
|
|
|
|
|
* bfd-in2.h: Likewise.
|
|
|
|
|
* elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function.
|
|
|
|
|
(_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34,
|
|
|
|
|
R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10.
|
|
|
|
|
(_bfd_sparc_elf_reloc_type_lookup): Handle new relocs.
|
|
|
|
|
(_bfd_sparc_elf_check_relocs): Likewise.
|
|
|
|
|
(_bfd_sparc_elf_gc_sweep_hook): Likewise.
|
|
|
|
|
(_bfd_sparc_elf_relocate_section): Likewise.
|
|
|
|
|
|
* elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
New variables.
(struct elf32_arm_link_hash_table): New member `nacl_p'.
(elf32_arm_link_hash_table_create): Initialize it.
(elf32_arm_nacl_link_hash_table_create): New function.
(arm_movw_immediate, arm_movt_immediate): New functions.
(elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
(elf32_arm_finish_dynamic_sections): Likewise.
(elf32_arm_output_plt_map_1): Likewise.
(bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
New backend vector stanza.
(elf32_arm_nacl_modify_segment_map): New function.
* config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
* targets.c: Support bfd_elf32_{big,little}_nacl_vec.
* configure.in: Likewise.
(bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
(bfd_elf32_littlearm_nacl_vec): Likewise.
(bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
(bfd_elf32_bigarm_symbian_vec): Likewise.
(bfd_elf32_littlearm_symbian_vec): Likewise.
(bfd_elf32_bigarm_vxworks_vec): Likewise.
(bfd_elf32_littlearm_vxworks_vec): Likewise.
* configure: Regenerated.
* configure.tgt (arm-*-nacl*): Match it.
* config/te-nacl.h (FPU_DEFAULT, EABI_DEFAULT): Define.
(LOCAL_LABELS_DOLLAR): Define.
* config/tc-arm.c (elf32_arm_target_format) [TE_NACL]:
Use nacl format variants.
* gas/elf/elf.exp (run_elf_list_test): Treat arm-*-nacl* targets
as -armeabi.
* gas/arm/any-idiv.d: Match *-*-nacl* targets too.
* gas/arm/arch4t.d: Likewise.
* gas/arm/arch4t-eabi.d: Likewise.
* gas/arm/attr-any-armv4t.d: Likewise.
* gas/arm/attr-any-thumbv6.d: Likewise.
* gas/arm/attr-cpu-directive.d: Likewise.
* gas/arm/attr-default.d: Likewise.
* gas/arm/attr-march-all.d: Likewise.
* gas/arm/attr-march-armv1.d: Likewise.
* gas/arm/attr-march-armv2a.d: Likewise.
* gas/arm/attr-march-armv2.d: Likewise.
* gas/arm/attr-march-armv2s.d: Likewise.
* gas/arm/attr-march-armv3.d: Likewise.
* gas/arm/attr-march-armv3m.d: Likewise.
* gas/arm/attr-march-armv4.d: Likewise.
* gas/arm/attr-march-armv4t.d: Likewise.
* gas/arm/attr-march-armv4txm.d: Likewise.
* gas/arm/attr-march-armv4xm.d: Likewise.
* gas/arm/attr-march-armv5.d: Likewise.
* gas/arm/attr-march-armv5t.d: Likewise.
* gas/arm/attr-march-armv5te.d: Likewise.
* gas/arm/attr-march-armv5tej.d: Likewise.
* gas/arm/attr-march-armv5texp.d: Likewise.
* gas/arm/attr-march-armv5txm.d: Likewise.
* gas/arm/attr-march-armv6.d: Likewise.
* gas/arm/attr-march-armv6j.d: Likewise.
* gas/arm/attr-march-armv6k.d: Likewise.
* gas/arm/attr-march-armv6k+sec.d: Likewise.
* gas/arm/attr-march-armv6kt2.d: Likewise.
* gas/arm/attr-march-armv6-m.d: Likewise.
* gas/arm/attr-march-armv6-m+os.d: Likewise.
* gas/arm/attr-march-armv6s-m.d: Likewise.
* gas/arm/attr-march-armv6t2.d: Likewise.
* gas/arm/attr-march-armv6z.d: Likewise.
* gas/arm/attr-march-armv6zk.d: Likewise.
* gas/arm/attr-march-armv6zkt2.d: Likewise.
* gas/arm/attr-march-armv6zt2.d: Likewise.
* gas/arm/attr-march-armv7-a.d: Likewise.
* gas/arm/attr-march-armv7a.d: Likewise.
* gas/arm/attr-march-armv7-a+idiv.d: Likewise.
* gas/arm/attr-march-armv7-a+mp.d: Likewise.
* gas/arm/attr-march-armv7-a+sec.d: Likewise.
* gas/arm/attr-march-armv7-a+sec+virt.d: Likewise.
* gas/arm/attr-march-armv7-a+virt.d: Likewise.
* gas/arm/attr-march-armv7.d: Likewise.
* gas/arm/attr-march-armv7em.d: Likewise.
* gas/arm/attr-march-armv7-m.d: Likewise.
* gas/arm/attr-march-armv7m.d: Likewise.
* gas/arm/attr-march-armv7-r.d: Likewise.
* gas/arm/attr-march-armv7r.d: Likewise.
* gas/arm/attr-march-armv7-r+mp.d: Likewise.
* gas/arm/attr-march-iwmmxt2.d: Likewise.
* gas/arm/attr-march-iwmmxt.d: Likewise.
* gas/arm/attr-march-xscale.d: Likewise.
* gas/arm/attr-mcpu.d: Likewise.
* gas/arm/attr-mfpu-arm1020e.d: Likewise.
* gas/arm/attr-mfpu-arm1020t.d: Likewise.
* gas/arm/attr-mfpu-arm1136jf-s.d: Likewise.
* gas/arm/attr-mfpu-arm1136jfs.d: Likewise.
* gas/arm/attr-mfpu-arm7500fe.d: Likewise.
* gas/arm/attr-mfpu-fpa10.d: Likewise.
* gas/arm/attr-mfpu-fpa11.d: Likewise.
* gas/arm/attr-mfpu-fpa.d: Likewise.
* gas/arm/attr-mfpu-fpe2.d: Likewise.
* gas/arm/attr-mfpu-fpe3.d: Likewise.
* gas/arm/attr-mfpu-fpe.d: Likewise.
* gas/arm/attr-mfpu-maverick.d: Likewise.
* gas/arm/attr-mfpu-neon.d: Likewise.
* gas/arm/attr-mfpu-neon-fp16.d: Likewise.
* gas/arm/attr-mfpu-softfpa.d: Likewise.
* gas/arm/attr-mfpu-softvfp.d: Likewise.
* gas/arm/attr-mfpu-softvfp+vfp.d: Likewise.
* gas/arm/attr-mfpu-vfp10.d: Likewise.
* gas/arm/attr-mfpu-vfp10-r0.d: Likewise.
* gas/arm/attr-mfpu-vfp3.d: Likewise.
* gas/arm/attr-mfpu-vfp9.d: Likewise.
* gas/arm/attr-mfpu-vfp.d: Likewise.
* gas/arm/attr-mfpu-vfpv2.d: Likewise.
* gas/arm/attr-mfpu-vfpv3-d16.d: Likewise.
* gas/arm/attr-mfpu-vfpv3.d: Likewise.
* gas/arm/attr-mfpu-vfpv4-d16.d: Likewise.
* gas/arm/attr-mfpu-vfpv4.d: Likewise.
* gas/arm/attr-mfpu-vfpxd.d: Likewise.
* gas/arm/attr-names.d: Likewise.
* gas/arm/attr-order.d: Likewise.
* gas/arm/attr-override-cpu-directive.d: Likewise.
* gas/arm/attr-override-mcpu.d: Likewise.
* gas/arm/got_prel.d: Likewise.
* gas/arm/mapdir.d: Likewise.
* gas/arm/mapmisc.d: Likewise.
* gas/arm/mapsecs.d: Likewise.
* gas/arm/mapshort-eabi.d: Likewise.
* gas/arm/mapshort-elf.d: Likewise.
* gas/arm/mov-highregs-any.d: Likewise.
* gas/arm/mov-lowregs-any.d: Likewise.
* gas/arm/pr12198-1.d: Likewise.
* gas/arm/pr12198-2.d: Likewise.
* gas/arm/thumb.d: Likewise.
* gas/arm/thumb-eabi.d: Likewise.
* gas/arm/thumbrel.d: Likewise.
* configure.tgt (arm*-*-nacl*, arm*b-*-nacl*): Handle them.
* emulparams/armelf_nacl.sh: New file.
* emulparams/armelfb_nacl.sh: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add earmelf_nacl.c
and earmelfb_nacl.c here.
(earmelf_nacl.c, earmelfb_nacl.c): New targets.
* Makefile.in: Regenerated.
* ld-arm/arm-elf.exp (armelftests): Split out into ...
(armelftests_common, armelftests_nonacl): ... these two.
(armeabitests): Split out into ...
(armeabitests_common, armeabitests_nonacl): ... these two.
Omit _nonacl sets for arm*-*-nacl* targets.
* ld-arm/farcall-mix.d: Don't match exact addresses, only symbolic ones.
* ld-arm/farcall-mix2.d: Likewise.
* ld-arm/farcall-group.d: Likewise.
* ld-arm/tls-gdesc-got.d: Match variant file formats too.
Accept some variation in exact addresses.
* ld-arm/thumb2-b-interwork.d: Match variant file formats too.
Fix regexps not to care about exact addresses where not relevant.
* ld-arm/thumb2-bl-undefweak.d: Match any hex strings, not any
strings of particular exact lengths.
* ld-arm/thumb2-bl-undefweak1.d: Likewise.
* ld-arm/arm-app.r: Match variant file formats too.
* ld-arm/arm-app-abs32.r: Likewise.
* ld-arm/arm-lib.d: Likewise.
* ld-arm/arm-lib.r: Likewise.
* ld-arm/arm-static-app.r: Likewise.
* ld-arm/armv4-bx.d: Likewise.
* ld-arm/data-only-map.d: Likewise.
* ld-arm/group-relocs.d: Likewise.
* ld-arm/jump19.d: Likewise.
* ld-arm/reloc-boundaries.d: Likewise.
* ld-arm/thumb1-bl.d: Likewise.
* ld-arm/thumb2-bl.d: Likewise.
* ld-arm/tls-app.d: Likewise.
* ld-arm/tls-app.r: Likewise.
* ld-arm/tls-gdierelax.d: Likewise.
* ld-arm/tls-gdierelax2.d: Likewise.
* ld-arm/tls-gdlerelax.d: Likewise.
* ld-arm/tls-lib.d: Likewise.
* ld-arm/tls-lib.r: Likewise.
* ld-arm/tls-mixed.r: Likewise.
* ld-arm/vfp11-fix-none.d: Likewise.
* ld-arm/vfp11-fix-scalar.d: Likewise.
* ld-arm/vfp11-fix-vector.d: Likewise.
* ld-arm/arm-static-app.d: Likewise.
Fix regexps not to care about exact number of leading spaces.
* ld-arm/arm-app-abs32.d: Likewise.
* ld-arm/fix-arm1176-off.d: Likewise.
* ld-arm/fix-arm1176-on.d: Likewise.
* ld-arm/arm-elf.exp: Treat nacl targets like eabi targets.
2012-04-12 15:01:15 +02:00
|
|
|
|
2012-04-12 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
|
|
|
|
|
New variables.
|
|
|
|
|
(struct elf32_arm_link_hash_table): New member `nacl_p'.
|
|
|
|
|
(elf32_arm_link_hash_table_create): Initialize it.
|
|
|
|
|
(elf32_arm_nacl_link_hash_table_create): New function.
|
|
|
|
|
(arm_movw_immediate, arm_movt_immediate): New functions.
|
|
|
|
|
(elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
|
|
|
|
|
(elf32_arm_finish_dynamic_sections): Likewise.
|
|
|
|
|
(elf32_arm_output_plt_map_1): Likewise.
|
|
|
|
|
(bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
|
|
|
|
|
New backend vector stanza.
|
|
|
|
|
(elf32_arm_nacl_modify_segment_map): New function.
|
|
|
|
|
* config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
|
|
|
|
|
* targets.c: Support bfd_elf32_{big,little}_nacl_vec.
|
|
|
|
|
* configure.in: Likewise.
|
|
|
|
|
(bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
|
|
|
|
|
(bfd_elf32_littlearm_nacl_vec): Likewise.
|
|
|
|
|
(bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
|
|
|
|
|
(bfd_elf32_bigarm_symbian_vec): Likewise.
|
|
|
|
|
(bfd_elf32_littlearm_symbian_vec): Likewise.
|
|
|
|
|
(bfd_elf32_bigarm_vxworks_vec): Likewise.
|
|
|
|
|
(bfd_elf32_littlearm_vxworks_vec): Likewise.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2012-04-12 09:35:07 +02:00
|
|
|
|
2012-04-12 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (elf_link_output_extsym): Add a guard.
|
|
|
|
|
(bfd_elf_final_link): Remove assertion.
|
|
|
|
|
(bfd_elf_final_link): Add a guard.
|
|
|
|
|
* elfnn-ia64.c (INCLUDE_IA64_VMS): Removed.
|
|
|
|
|
(elfNN_vms_section_from_shdr, elfNN_vms_object_p)
|
|
|
|
|
(elfNN_vms_post_process_headers, elfNN_vms_section_processing)
|
|
|
|
|
(elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup):
|
|
|
|
|
Remove.
|
|
|
|
|
(elfNN-ia64-vms target): Move to ...
|
|
|
|
|
* elf64-ia64-vms.c: New file.
|
|
|
|
|
* configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo
|
|
|
|
|
* Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo.
|
|
|
|
|
(BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
|
2012-04-11 16:16:09 +02:00
|
|
|
|
2012-04-11 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13897
|
|
|
|
|
* elf64-ppc.c (opd_entry_value): When dealing with sections
|
|
|
|
|
without relocs, keep the last section loaded in order to avoid
|
|
|
|
|
unnecessary reloads.
|
|
|
|
|
|
2012-04-09 18:27:18 +02:00
|
|
|
|
2012-04-09 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs.
|
|
|
|
|
* elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs.
|
|
|
|
|
(nacl_modify_program_headers): Likewise.
|
|
|
|
|
|
bfd/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* elf-nacl.c: New file.
* elf-nacl.h: New file.
* elf32-i386.c (elf_backend_modify_segment_map): Define for
bfd_elf32_i386_nacl_vec.
(elf_backend_modify_program_headers): Likewise.
* elf64-x86-64.c (elf_backend_modify_segment_map): Define for
bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
(elf_backend_modify_program_headers): Likewise.
* Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
(BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
* Makefile.in: Regenerated.
* configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
(bfd_elf32_x86_64_nacl_vec): Likewise.
(bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
(bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
(bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
(bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
(bfd_elf32_i386_nacl_vec): Likewise.
(bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
(bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
* configure: Regenerated.
binutils/testsuite/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* lib/binutils-common.exp (is_elf_format): Consider *-*-nacl* to
be ELF too.
* binutils-all/elfedit-4.d: Add "#as: --64" option.
* binutils-all/i386/i386.exp: Accept nacl targets too.
* binutils-all/x86-64/x86-64.exp: Likewise.
gas/testsuite/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* gas/i386/k1om.d: Add not-target match for *-*-nacl*.
* gas/i386/l1om.d: Likewise.
ld/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* configure.tgt (i[3-7]86-*-nacl*, x86_64-*-nacl*): Handle them.
* emulparams/elf_nacl.sh: New file.
* emulparams/elf_i386_nacl.sh: New file.
* emulparams/elf32_x86_64_nacl.sh: New file.
* emulparams/elf_x86_64_nacl.sh: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf_i386_nacl.c here.
(ALL_64_EMULATION_SOURCES): Add eelf32_x86_64_nacl.c and
eelf_x86_64_nacl.c here.
(eelf_i386_nacl.c, eelf32_x86_64_nacl.c, eelf_x86_64_nacl.c):
New targets.
* Makefile.in: Regenerated.
* scripttempl/elf.sc: Handle SEPARATE_CODE cases.
ld/testsuite/
2012-04-03 Roland McGrath <mcgrathr@google.com>
* ld-x86-64/ilp32-4-nacl.d: New file.
* ld-x86-64/x86-64.exp: Run it.
* ld-discard/discard.exp: Accept nacl targets too.
* ld-elf/binutils.exp: Likewise.
* ld-elf/comm-data.exp: Likewise.
* ld-elf/elf.exp: Likewise.
* ld-elf/tls_common.exp: Likewise.
* ld-elfvers/vers.exp: Likewise.
* ld-elfvsb/elfvsb.exp: Likewise.
* ld-elfweak/elfweak.exp: Likewise.
* ld-gc/gc.exp: Likewise.
* ld-ifunc/binutils.exp: Likewise.
* ld-ifunc/ifunc.exp: Likewise.
* ld-linkonce/linkonce.exp:Likewise.
* ld-pie/pie.exp: Likewise.
* ld-shared/shared.exp: Likewise.
* ld-undefined/weak-undef.exp: Likewise.
* ld-unique/unique.exp: Likewise.
* ld-x86-64/dwarfreloc.exp: Likewise.
* ld-x86-64/line.exp: Likewise.
* lib/ld-lib.exp (slurp_options): Support global array
options_regsub to apply substitutions to the contents
of options lines read from the file.
* ld-i386/emit-relocs.d: Renamed to ...
* ld-i386/emit-relocs.rd: ... this.
* ld-i386/i386.exp: Accept nacl targets too.
For them, use options_regsub to replace elf_i386 with
elf_i386_nacl in run_dump_test cases; apply the same
substitution in $i386tests; replace foo.rd expectations
files with foo-nacl.rd in $i386tests.
(i386tests): Change emit-relocs.d to emit-relocs.rd here.
* ld-i386/emit-relocs-nacl.rd: New file.
* ld-i386/plt-nacl.pd: New file.
* ld-i386/plt-pic-nacl.pd: New file.
* ld-i386/tlsbin-nacl.rd: New file.
* ld-i386/tlsbindesc-nacl.rd: New file.
* ld-i386/tlsdesc-nacl.rd: New file.
* ld-i386/tlsgdesc-nacl.rd: New file.
* ld-i386/tlsnopic-nacl.rd: New file.
* ld-i386/tlspic-nacl.rd: New file.
* ld-x86-64/x86-64.exp: Accept nacl targets too.
For them, use options_regsub to replace elf_x86_64 with
elf_x86_64_nacl in run_dump_test cases; apply the same
substitution in $x86_64tests; replace foo.rd expectations
files with foo-nacl.rd in $x86_64tests.
Add explicit -melf_x86_64 to ld options in tests that need it,
in case the default emulation is x32 (as it is for x86_64-nacl).
* ld/testsuite/ld-x86-64/plt-nacl.pd: New file.
* ld/testsuite/ld-x86-64/split-by-file-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsbin-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsbindesc-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsdesc-nacl.pd: New file.
* ld/testsuite/ld-x86-64/tlsdesc-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlsgdesc-nacl.rd: New file.
* ld/testsuite/ld-x86-64/tlspic-nacl.rd: New file.
* ld-i386/hidden2.d: Loosen regexps to match any file format variant,
and not to depend on exact addresses, displacements, etc. where
they are irrelevant.
* ld-i386/pcrel16.d: Likewise.
* ld-i386/pcrel16abs.d: Likewise.
* ld-i386/pr12718.d: Likewise.
* ld-i386/pr12921.d: Likewise.
* ld-i386/reloc.d: Likewise.
* ld-i386/tlsbin.dd: Likewise.
* ld-i386/tlsbin.sd: Likewise.
* ld-i386/tlsbin.td: Likewise.
* ld-i386/tlsbindesc.dd: Likewise.
* ld-i386/tlsbindesc.sd: Likewise.
* ld-i386/tlsbindesc.td: Likewise.
* ld-i386/tlsdesc.dd: Likewise.
* ld-i386/tlsdesc.sd: Likewise.
* ld-i386/tlsdesc.td: Likewise.
* ld-i386/tlsg.sd: Likewise.
* ld-i386/tlsgdesc.dd: Likewise.
* ld-i386/tlsindntpoff.dd: Likewise.
* ld-i386/tlsnopic.dd: Likewise.
* ld-i386/tlsnopic.sd: Likewise.
* ld-i386/tlspic.dd: Likewise.
* ld-i386/tlspic.sd: Likewise.
* ld-i386/tlspic.td: Likewise.
* ld-i386/tlspie2.d: Likewise.
* ld-x86-64/hidden2.d: Likewise.
* ld-x86-64/pcrel16.d: Likewise.
* ld-x86-64/pr12718.d: Likewise.
* ld-x86-64/pr12921.d: Likewise.
* ld-x86-64/protected3.d: Likewise.
* ld-x86-64/tlsbin.dd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
* ld-x86-64/tlsdesc.dd: Likewise.
* ld-x86-64/tlsdesc.sd: Likewise.
* ld-x86-64/tlsdesc.td: Likewise.
* ld-x86-64/tlsg.sd: Likewise.
* ld-x86-64/tlsgd5.dd: Likewise.
* ld-x86-64/tlsgd6.dd: Likewise.
* ld-x86-64/tlsgdesc.dd: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
* ld-x86-64/tlspic.sd: Likewise.
* ld-x86-64/tlspic.td: Likewise.
* ld-x86-64/ilp32-8.d: Match any file format variant.
Use a -Ttext and adjust expected results, to handle variant layouts.
* ld-x86-64/ilp32-9.d: Likewise.
* ld-i386/alloc.t: Remove superfluous OUTPUT_FORMAT statement.
* ld-i386/pr12627.t: Likewise.
* ld-x86-64/abs-l1om.d: Add target: constraint.
* ld-x86-64/protected2-l1om.d: Likewise.
* ld-x86-64/protected3-l1om.d: Likewise.
* ld-x86-64/ilp32-4.d: Likewise.
* ld-x86-64/plt.s: New file.
* ld-x86-64/pltlib.s: New file.
* ld-x86-64/plt.pd: New file.
* ld-x86-64/x86-64.exp (x86_64tests): Add them.
* ld-i386/plt.s: New file.
* ld-i386/pltlib.s: New file.
* ld-i386/plt.pd: New file.
* ld-i386/plt-pic.s: New file.
* ld-i386/plt-pic.pd: New file.
* ld-i386/i386.exp (i386tests): Add them.
2012-04-03 18:01:38 +02:00
|
|
|
|
2012-04-03 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* elf-nacl.c: New file.
|
|
|
|
|
* elf-nacl.h: New file.
|
|
|
|
|
* elf32-i386.c (elf_backend_modify_segment_map): Define for
|
|
|
|
|
bfd_elf32_i386_nacl_vec.
|
|
|
|
|
(elf_backend_modify_program_headers): Likewise.
|
|
|
|
|
* elf64-x86-64.c (elf_backend_modify_segment_map): Define for
|
|
|
|
|
bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
|
|
|
|
|
(elf_backend_modify_program_headers): Likewise.
|
|
|
|
|
* Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
|
|
|
|
|
(BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
* configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
|
|
|
|
|
(bfd_elf32_x86_64_nacl_vec): Likewise.
|
|
|
|
|
(bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
|
|
|
|
|
(bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
|
|
|
|
|
(bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
|
|
|
|
|
(bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
|
|
|
|
|
(bfd_elf32_i386_nacl_vec): Likewise.
|
|
|
|
|
(bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
|
|
|
|
|
(bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2012-03-31 16:27:33 +02:00
|
|
|
|
2012-03-31 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
* elf32-m68k.c (elf_m68k_relocate_section): Allow
|
|
|
|
|
R_68K_TLS_LE{8,16,32} for PIE.
|
|
|
|
|
|
2012-03-30 15:38:04 +02:00
|
|
|
|
2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
|
|
|
|
|
|
|
|
|
|
* elf64-s390.c: Fix several comments regarding PLT entry
|
|
|
|
|
description.
|
|
|
|
|
* elf32-s390.c: Likewise.
|
|
|
|
|
|
2012-03-30 15:37:13 +02:00
|
|
|
|
2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
|
|
|
|
|
|
|
|
|
|
* elf64-s390.c: Use the section pointer shortcuts in
|
|
|
|
|
elf_link_hash_table and remove them from the target specific
|
|
|
|
|
variant.
|
|
|
|
|
* elf32-s390.c: Likewise.
|
|
|
|
|
|
2012-03-30 15:36:22 +02:00
|
|
|
|
2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
|
|
|
|
|
|
|
|
|
|
* elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry):
|
|
|
|
|
New definitions.
|
|
|
|
|
(PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove.
|
|
|
|
|
(elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32.
|
|
|
|
|
(elf_s390_finish_dynamic_sections): Likewise.
|
|
|
|
|
* elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry)
|
|
|
|
|
(elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry)
|
|
|
|
|
(elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions.
|
|
|
|
|
(PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*)
|
|
|
|
|
(PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove.
|
|
|
|
|
|
2012-03-30 15:35:33 +02:00
|
|
|
|
2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
|
|
|
|
|
|
|
|
|
|
* elf32-s390.c (struct elf_s390_dyn_relocs): Remove.
|
|
|
|
|
Rename all occurrences in the file to elf_dyn_relocs.
|
|
|
|
|
* elf64-s390.c: Likewise.
|
|
|
|
|
|
2012-03-30 01:17:37 +02:00
|
|
|
|
2012-03-30 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic
|
|
|
|
|
libraries.
|
|
|
|
|
|
2012-03-29 15:22:43 +02:00
|
|
|
|
2012-03-29 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
|
2012-03-23 10:34:57 +01:00
|
|
|
|
2012-03-23 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (assign_file_positions_for_non_load_sections): Don't warn
|
|
|
|
|
on empty alloc sections.
|
|
|
|
|
|
2012-03-23 10:27:43 +01:00
|
|
|
|
2012-03-23 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* linker.c (_bfd_nearby_section): New function, split out from..
|
|
|
|
|
(fix_syms): ..here.
|
|
|
|
|
* bfd-in.h (_bfd_nearby_section): Declare.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* elflink.c (elf_link_input_bfd): Don't use text_index_section or
|
|
|
|
|
data_index_section with ld -q or ld -r output relocs against
|
|
|
|
|
stripped output sections. Instead use _bfd_nearby_section.
|
|
|
|
|
|
2012-03-23 07:41:21 +01:00
|
|
|
|
2012-03-23 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13894
|
|
|
|
|
* elf64-ppc.c (opd_entry_value): Read full symbol table when
|
|
|
|
|
sym hashes unavailable.
|
|
|
|
|
|
2012-03-21 15:55:45 +01:00
|
|
|
|
2012-03-21 Eliot Dresselhaus <eliot@sonic.net>
|
|
|
|
|
|
|
|
|
|
* elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE
|
|
|
|
|
for non-C6X objects.
|
|
|
|
|
|
2012-03-20 20:24:32 +01:00
|
|
|
|
2012-03-20 Kai Tietz <ktietz@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR ld/12742
|
|
|
|
|
* configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h.
|
|
|
|
|
* plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined.
|
|
|
|
|
Add windows.h header include if HAVE_WINDOWS_H is defined.
|
|
|
|
|
(dlerror): New static function if windows variant is used instead
|
|
|
|
|
of dlfcn.h.
|
|
|
|
|
(dlclose): Likewise.
|
|
|
|
|
(dlopen): Likewise.
|
|
|
|
|
(dlsym): Likewise.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
* config.in: Regenerated.
|
|
|
|
|
|
2012-03-20 19:16:38 +01:00
|
|
|
|
2012-03-20 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13880
|
|
|
|
|
* elf32-i386.c (elf_i386_relocate_section): Don't issue an error
|
|
|
|
|
for R_386_GOTOFF relocation against protected function if
|
|
|
|
|
SYMBOLIC_BIND is true.
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an
|
|
|
|
|
error for R_X86_64_GOTOFF64 relocation against protected function
|
|
|
|
|
when building executable or SYMBOLIC_BIND is true.
|
|
|
|
|
|
2012-03-17 00:19:47 +01:00
|
|
|
|
2012-03-16 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* config.bfd: Handle x86_64-*-nacl*.
|
|
|
|
|
* elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza.
|
|
|
|
|
(bfd_elf32_x86_64_nacl_vec): Likewise.
|
|
|
|
|
* targets.c: Support them.
|
|
|
|
|
* configure.in: Likewise.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2012-03-16 16:15:14 +01:00
|
|
|
|
2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
|
|
|
|
|
|
|
|
|
|
* elf32-arm.c (elf32_arm_attributes_accept_div): New function.
|
|
|
|
|
(elf32_arm_attributes_forbid_div): Likewise.
|
|
|
|
|
(elf32_arm_merge_eabi_attributes): Correct handling of
|
|
|
|
|
Tag_DIV_use.
|
|
|
|
|
|
2012-03-15 17:37:25 +01:00
|
|
|
|
2012-03-15 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
2012-03-15 19:20:22 +01:00
|
|
|
|
* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use
|
|
|
|
|
elf_x86_64_backend_data parameters for plt_eh_frame.
|
|
|
|
|
|
2012-03-15 17:37:25 +01:00
|
|
|
|
* elf64-x86-64.c (struct elf_x86_64_backend_data): New type.
|
|
|
|
|
(get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros.
|
|
|
|
|
(elf_x86_64_arch_bed): New variable.
|
|
|
|
|
(elf_backend_arch_data): New macro.
|
|
|
|
|
(elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE.
|
|
|
|
|
(elf_x86_64_allocate_dynrelocs): Likewise.
|
|
|
|
|
(elf_x86_64_relocate_section): Likewise.
|
|
|
|
|
(elf_x86_64_plt_sym_val): Likewise.
|
|
|
|
|
(elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data
|
|
|
|
|
parameters for PLT details.
|
|
|
|
|
(elf_x86_64_finish_dynamic_sections): Likewise.
|
|
|
|
|
|
2012-03-14 20:32:11 +01:00
|
|
|
|
2012-03-14 Roland McGrath <mcgrathr@google.com>
|
|
|
|
|
|
|
|
|
|
* elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
|
|
|
|
|
to the full size, padding out with nop instructions.
|
|
|
|
|
|
2012-03-13 07:04:37 +01:00
|
|
|
|
2012-03-12 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn
|
|
|
|
|
on zero size dynbss symbol.
|
|
|
|
|
* elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
* elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
|
|
|
|
|
|
include/opcode/
* ppc.h: Add PPC_OPCODE_ALTIVEC2, PPC_OPCODE_E6500, PPC_OPCODE_TMR.
opcodes/
* ppc-dis.c (ppc_opts): Add entries for "e5500" and "e6500".
* ppc-opc.c (insert_ls, TMR, ESYNC, XSYNCLE_MASK): New.
(PPCVEC2, PPCTMR, E6500): New short names.
(powerpc_opcodes): Add vabsdub, vabsduh, vabsduw, dni, mvidsplt,
mviwsplt, icblq., mftmr, mttmr, dcblq., miso, lvexbx, lvexhx,
lvexwx, stvexbx, stvexhx, stvexwx, lvepx, lvepxl, stvepx, stvepxl,
lvtrx, lvtrxl, lvtlx, lvtlxl, stvfrx, stvfrxl, stvflx, stvflxl,
lvswx, lvswxl, stvswx, stvswxl, lvsm mnemonics. Accept LS, ESYNC
optional operands on sync instruction for E6500 target.
bfd/
* archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
* bfd-in2.h: Regenerate.
* cpu-powerpc.c (bfd_powerpc_archs): Add entryies for
bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
gas/
* config/tc-ppc.c (md_show_usage): Document -me5500 and -me6500.
(ppc_handle_align): Add termination nop opcode for e500mc family.
* doc/as.texinfo: Document options -me5500 and -me6500.
* doc/c-ppc.texi: Likewise.
gas/testsuite/
* gas/ppc/e500mc64_nop.s: New test case for e500mc family
termination nops.
* gas/ppc/e500mc64_nop.d: Likewise.
* gas/ppc/e5500_nop.s: Likewise.
* gas/ppc/e5500_nop.d: Likewise.
* gas/ppc/e6500_nop.s: Likewise.
* gas/ppc/e6500_nop.d: Likewise.
* gas/ppc/e6500.s: New.
* gas/ppc/e6500.d: Likewise.
* gas/ppc/ppc.exp: Run e6500, e500mc64_nop, e5500_nop, and e6500_nop.
2012-03-10 00:39:06 +01:00
|
|
|
|
2012-03-10 Edmar Wienskoski <edmar@freescale.com>
|
|
|
|
|
|
|
|
|
|
* archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* cpu-powerpc.c (bfd_powerpc_archs): Add entries for
|
|
|
|
|
bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
|
|
|
|
|
|
2012-03-09 17:28:38 +01:00
|
|
|
|
2012-03-09 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13817
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elf32-i386.c (elf_i386_relocate_section): Restore
|
2012-03-09 17:28:38 +01:00
|
|
|
|
R_386_IRELATIVE.
|
|
|
|
|
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Restore
|
2012-03-09 17:28:38 +01:00
|
|
|
|
R_X86_64_IRELATIVE.
|
|
|
|
|
|
2012-03-08 15:25:29 +01:00
|
|
|
|
2012-03-08 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum
|
|
|
|
|
keylen according to archive kind. Set nextvbn and nextrfa lhd
|
|
|
|
|
fields. Add comments.
|
|
|
|
|
|
* mn10300.h (elf_mn10300_reloc_type): Add R_MN10300_TLS_GD,
R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
R_MN10300_TLS_DTPOFF and R_MN10300_TLS_TPOFF.
* elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type
field.
(elf32_mn10300_link_hash_table): Add tls_ldm_got entry;
(elf_mn10300_tdata): Define.
(elf_mn10300_local_got_tls_type): Define.
(elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD,
R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs.
(mn10300_reloc_map): Likewise.
(elf_mn10300_tls_transition): New function.
(dtpoff, tpoff, mn10300_do_tls_transition): New functions.
(mn10300_elf_check_relocs): Add TLS support.
(mn10300_elf_final_link_relocate): Likewise.
(mn10300_elf_relocate_section): Likewise.
(mn10300_elf_relax_section): Likewise.
(elf32_mn10300_link_hash_newfunc): Initialise new field.
(_bfd_mn10300_copy_indirect_symbol): New function.
(elf32_mn10300_link_hash_table_create): Initialise new fields.
(_bfd_mn10300_elf_size_dynamic_sections): Add TLS support.
(_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
(_bfd_mn10300_elf_reloc_type_class): Allocate an
elf_mn10300_obj_tdata structure.
(elf_backend_copy_indirect_symbol): Define.
* reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD,
BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE,
BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD,
BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations.
(BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to
alongside other MN10300 relocations.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* config/tc-mn10300.c (other_registers): Add SSP and USP.
(md_assemble): Add support for TLS relocs.
(mn10300_parse_name): Likewise.
* readelf.c (is_16bit_abs_reloc): Add detection of R_MN10300_16.
2012-03-07 18:52:00 +01:00
|
|
|
|
2012-03-07 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type
|
|
|
|
|
field.
|
|
|
|
|
(elf32_mn10300_link_hash_table): Add tls_ldm_got entry;
|
|
|
|
|
(elf_mn10300_tdata): Define.
|
|
|
|
|
(elf_mn10300_local_got_tls_type): Define.
|
|
|
|
|
(elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD,
|
|
|
|
|
R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
|
|
|
|
|
R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
|
|
|
|
|
R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs.
|
|
|
|
|
(mn10300_reloc_map): Likewise.
|
|
|
|
|
(elf_mn10300_tls_transition): New function.
|
|
|
|
|
(dtpoff, tpoff, mn10300_do_tls_transition): New functions.
|
|
|
|
|
(mn10300_elf_check_relocs): Add TLS support.
|
|
|
|
|
(mn10300_elf_final_link_relocate): Likewise.
|
|
|
|
|
(mn10300_elf_relocate_section): Likewise.
|
|
|
|
|
(mn10300_elf_relax_section): Likewise.
|
|
|
|
|
(elf32_mn10300_link_hash_newfunc): Initialise new field.
|
|
|
|
|
(_bfd_mn10300_copy_indirect_symbol): New function.
|
|
|
|
|
(elf32_mn10300_link_hash_table_create): Initialise new fields.
|
|
|
|
|
(_bfd_mn10300_elf_size_dynamic_sections): Add TLS support.
|
|
|
|
|
(_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
|
|
|
|
|
(_bfd_mn10300_elf_reloc_type_class): Allocate an
|
|
|
|
|
elf_mn10300_obj_tdata structure.
|
|
|
|
|
(elf_backend_copy_indirect_symbol): Define.
|
|
|
|
|
* reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD,
|
|
|
|
|
BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE,
|
|
|
|
|
BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD,
|
|
|
|
|
BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations.
|
|
|
|
|
(BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to
|
|
|
|
|
alongside other MN10300 relocations.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* libbfd.h: Regenerate.
|
|
|
|
|
|
2012-03-06 21:15:56 +01:00
|
|
|
|
2012-03-06 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE
|
|
|
|
|
set relocate to TRUE.
|
|
|
|
|
|
2012-03-05 17:02:19 +01:00
|
|
|
|
2012-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
PR ld/12152
|
|
|
|
|
* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
|
|
|
|
|
overflows for R_SPARC_UA32 in .stab sections.
|
|
|
|
|
|
2012-03-01 02:55:11 +01:00
|
|
|
|
2012-03-01 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
|
|
|
|
|
|
2012-02-27 07:48:10 +01:00
|
|
|
|
2012-02-27 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd
|
|
|
|
|
before calling elf specific function.
|
|
|
|
|
(sh_elf_osec_readonly_p): Test for error return from above.
|
|
|
|
|
|
2012-02-27 00:12:16 +01:00
|
|
|
|
2012-02-27 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-spu.c (build_stub): Fix malloc under-allocation.
|
|
|
|
|
|
Improve TLS support on TILE-Gx/TILEPro:
- Add support for TLS LE references.
- Support linker optimization of TLS references.
- Delete relocations of GOT/tp relative offsets beyond 32-bits.
This brings binutils in line with the support expected in gcc 4.7, for
TILE-Gx/TILEPro.
bfd/
* reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
* elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
relocations.
(tilepro_reloc_map): Ditto.
(tilepro_info_to_howto_rela): Ditto.
(reloc_to_create_func): Ditto.
(tilepro_tls_translate_to_le): New.
(tilepro_tls_translate_to_ie): New.
(tilepro_elf_tls_transition): New.
(tilepro_elf_check_relocs): Handle new tls relocations.
(tilepro_elf_gc_sweep_hook): Ditto.
(allocate_dynrelocs): Ditto.
(tilepro_elf_relocate_section): Ditto.
(tilepro_replace_insn): New.
(insn_mask_X1): New.
(insn_mask_X0_no_dest_no_srca): New
(insn_mask_X1_no_dest_no_srca): New
(insn_mask_Y0_no_dest_no_srca): New
(insn_mask_Y1_no_dest_no_srca): New
(srca_mask_X0): New
(srca_mask_X1): New
(insn_tls_le_move_X1): New
(insn_tls_le_move_zero_X0X1): New
(insn_tls_ie_lw_X1): New
(insn_tls_ie_add_X0X1): New
(insn_tls_ie_add_Y0Y1): New
(insn_tls_gd_add_X0X1): New
(insn_tls_gd_add_Y0Y1): New
* elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
relocations.
(tilegx_reloc_map): Ditto.
(tilegx_info_to_howto_rela): Ditto.
(reloc_to_create_func): Ditto.
(tilegx_elf_link_hash_table): New field disable_le_transition.
(tilegx_tls_translate_to_le): New.
(tilegx_tls_translate_to_ie): New.
(tilegx_elf_tls_transition): New.
(tilegx_elf_check_relocs): Handle new tls relocations.
(tilegx_elf_gc_sweep_hook): Ditto.
(allocate_dynrelocs): Ditto.
(tilegx_elf_relocate_section): Ditto.
(tilegx_copy_bits): New.
(tilegx_replace_insn): New.
(insn_mask_X1): New.
(insn_mask_X0_no_dest_no_srca): New.
(insn_mask_X1_no_dest_no_srca): New.
(insn_mask_Y0_no_dest_no_srca): New.
(insn_mask_Y1_no_dest_no_srca): New.
(insn_mask_X0_no_operand): New.
(insn_mask_X1_no_operand): New.
(insn_mask_Y0_no_operand): New.
(insn_mask_Y1_no_operand): New.
(insn_tls_ie_ld_X1): New.
(insn_tls_ie_ld4s_X1): New.
(insn_tls_ie_add_X0X1): New.
(insn_tls_ie_add_Y0Y1): New.
(insn_tls_ie_addx_X0X1): New.
(insn_tls_ie_addx_Y0Y1): New.
(insn_tls_gd_add_X0X1): New.
(insn_tls_gd_add_Y0Y1): New.
(insn_move_X0X1): New.
(insn_move_Y0Y1): New.
(insn_add_X0X1): New.
(insn_add_Y0Y1): New.
(insn_addx_X0X1): New.
(insn_addx_Y0Y1): New.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
gas/
* tc-tilepro.c (O_tls_le): Define operator.
(O_tls_le_lo16): Ditto.
(O_tls_le_hi16): Ditto.
(O_tls_le_ha16): Ditto.
(O_tls_gd_call): Ditto.
(O_tls_gd_add): Ditto.
(O_tls_ie_load): Ditto.
(md_begin): Delete old operators; handle new operators.
(emit_tilepro_instruction): Ditto.
(md_apply_fix): Ditto.
* tc-tilegx.c (O_hw1_got): Delete operator.
(O_hw2_got): Ditto.
(O_hw3_got): Ditto.
(O_hw2_last_got): Ditto.
(O_hw1_tls_gd): Ditto.
(O_hw2_tls_gd): Ditto.
(O_hw3_tls_gd): Ditto.
(O_hw2_last_tls_gd): Ditto.
(O_hw1_tls_ie): Ditto.
(O_hw2_tls_ie): Ditto.
(O_hw3_tls_ie): Ditto.
(O_hw2_last_tls_ie): Ditto.
(O_hw0_tls_le): Define operator.
(O_hw0_last_tls_le): Ditto.
(O_hw1_last_tls_le): Ditto.
(O_tls_gd_call): Ditto.
(O_tls_gd_add): Ditto.
(O_tls_ie_load): Ditto.
(O_tls_add): Ditto.
(md_begin): Delete old operators; handle new operators.
(emit_tilegx_instruction): Ditto.
(md_apply_fix): Ditto.
* doc/c-tilegx.texi: Delete old operators; document new operators.
* doc/c-tilepro.texi: Ditto.
include/elf/
* tilegx.h (R_TILEGX_IMM16_X0_HW1_GOT): Delete.
(R_TILEGX_IMM16_X1_HW1_GOT): Ditto.
(R_TILEGX_IMM16_X0_HW2_GOT): Ditto.
(R_TILEGX_IMM16_X1_HW2_GOT): Ditto.
(R_TILEGX_IMM16_X0_HW3_GOT): Ditto.
(R_TILEGX_IMM16_X1_HW3_GOT): Ditto.
(R_TILEGX_IMM16_X0_HW2_LAST_GOT): Ditto.
(R_TILEGX_IMM16_X1_HW2_LAST_GOT): Ditto.
(R_TILEGX_IMM16_X0_HW1_TLS_GD): Ditto.
(R_TILEGX_IMM16_X1_HW1_TLS_GD): Ditto.
(R_TILEGX_IMM16_X0_HW2_TLS_GD): Ditto.
(R_TILEGX_IMM16_X1_HW2_TLS_GD): Ditto.
(R_TILEGX_IMM16_X0_HW3_TLS_GD): Ditto.
(R_TILEGX_IMM16_X1_HW3_TLS_GD): Ditto.
(R_TILEGX_IMM16_X0_HW2_LAST_TLS_GD): Ditto.
(R_TILEGX_IMM16_X1_HW2_LAST_TLS_GD): Ditto.
(R_TILEGX_IMM16_X0_HW1_TLS_IE): Ditto.
(R_TILEGX_IMM16_X1_HW1_TLS_IE): Ditto.
(R_TILEGX_IMM16_X0_HW2_TLS_IE): Ditto.
(R_TILEGX_IMM16_X1_HW2_TLS_IE): Ditto.
(R_TILEGX_IMM16_X0_HW3_TLS_IE): Ditto.
(R_TILEGX_IMM16_X1_HW3_TLS_IE): Ditto.
(R_TILEGX_IMM16_X0_HW2_LAST_TLS_IE): Ditto.
(R_TILEGX_IMM16_X1_HW2_LAST_TLS_IE): Ditto.
(R_TILEGX_IMM16_X0_HW0_TLS_LE): New relocation.
(R_TILEGX_IMM16_X1_HW0_TLS_LE): Ditto.
(R_TILEGX_IMM16_X0_HW0_LAST_TLS_LE): Ditto.
(R_TILEGX_IMM16_X1_HW0_LAST_TLS_LE): Ditto.
(R_TILEGX_IMM16_X0_HW1_LAST_TLS_LE): Ditto.
(R_TILEGX_IMM16_X1_HW1_LAST_TLS_LE): Ditto.
(R_TILEGX_TLS_GD_CALL): Ditto.
(R_TILEGX_IMM8_X0_TLS_GD_ADD): Ditto.
(R_TILEGX_IMM8_X1_TLS_GD_ADD): Ditto.
(R_TILEGX_IMM8_Y0_TLS_GD_ADD): Ditto.
(R_TILEGX_IMM8_Y1_TLS_GD_ADD): Ditto.
(R_TILEGX_TLS_IE_LOAD): Ditto.
(R_TILEGX_IMM8_X0_TLS_ADD): Ditto.
(R_TILEGX_IMM8_X1_TLS_ADD): Ditto.
(R_TILEGX_IMM8_Y0_TLS_ADD): Ditto.
(R_TILEGX_IMM8_Y1_TLS_ADD): Ditto.
* tilepro.h (R_TILEPRO_TLS_GD_CALL): New relocation.
(R_TILEPRO_IMM8_X0_TLS_GD_ADD): Ditto.
(R_TILEPRO_IMM8_X1_TLS_GD_ADD): Ditto.
(R_TILEPRO_IMM8_Y0_TLS_GD_ADD): Ditto.
(R_TILEPRO_IMM8_Y1_TLS_GD_ADD): Ditto.
(R_TILEPRO_TLS_IE_LOAD): Ditto.
(R_TILEPRO_IMM16_X0_TLS_LE): Ditto.
(R_TILEPRO_IMM16_X1_TLS_LE): Ditto.
(R_TILEPRO_IMM16_X0_TLS_LE_LO): Ditto.
(R_TILEPRO_IMM16_X1_TLS_LE_LO): Ditto.
(R_TILEPRO_IMM16_X0_TLS_LE_HI): Ditto.
(R_TILEPRO_IMM16_X1_TLS_LE_HI): Ditto.
(R_TILEPRO_IMM16_X0_TLS_LE_HA): Ditto.
(R_TILEPRO_IMM16_X1_TLS_LE_HA): Ditto.
include/opcode/
* tilegx.h (tilegx_mnemonic): Add TILEGX_OPC_LD4S_TLS,
TILEGX_OPC_LD_TLS.
* tilepro.h (tilepro_mnemonic): Add TILEPRO_OPC_LW_TLS,
TILEPRO_OPC_LW_TLS_SN.
opcodes/
* tilegx-opc.c: Handle TILEGX_OPC_LD4S_TLS and TILEGX_OPC_LD_TLS.
* tilepro-opc.c: Handle TILEPRO_OPC_LW_TLS and
TILEPRO_OPC_LW_TLS_SN.
2012-02-25 23:24:21 +01:00
|
|
|
|
2012-02-25 Walter Lee <walt@tilera.com>
|
|
|
|
|
* reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
|
|
|
|
|
BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
|
|
|
|
|
BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
|
|
|
|
|
BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
|
|
|
|
|
Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
|
|
|
|
|
BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
|
|
|
|
|
* elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
|
|
|
|
|
relocations.
|
|
|
|
|
(tilepro_reloc_map): Ditto.
|
|
|
|
|
(tilepro_info_to_howto_rela): Ditto.
|
|
|
|
|
(reloc_to_create_func): Ditto.
|
|
|
|
|
(tilepro_tls_translate_to_le): New.
|
|
|
|
|
(tilepro_tls_translate_to_ie): New.
|
|
|
|
|
(tilepro_elf_tls_transition): New.
|
|
|
|
|
(tilepro_elf_check_relocs): Handle new tls relocations.
|
|
|
|
|
(tilepro_elf_gc_sweep_hook): Ditto.
|
|
|
|
|
(allocate_dynrelocs): Ditto.
|
|
|
|
|
(tilepro_elf_relocate_section): Ditto.
|
|
|
|
|
(tilepro_replace_insn): New.
|
|
|
|
|
(insn_mask_X1): New.
|
|
|
|
|
(insn_mask_X0_no_dest_no_srca): New
|
|
|
|
|
(insn_mask_X1_no_dest_no_srca): New
|
|
|
|
|
(insn_mask_Y0_no_dest_no_srca): New
|
|
|
|
|
(insn_mask_Y1_no_dest_no_srca): New
|
|
|
|
|
(srca_mask_X0): New
|
|
|
|
|
(srca_mask_X1): New
|
|
|
|
|
(insn_tls_le_move_X1): New
|
|
|
|
|
(insn_tls_le_move_zero_X0X1): New
|
|
|
|
|
(insn_tls_ie_lw_X1): New
|
|
|
|
|
(insn_tls_ie_add_X0X1): New
|
|
|
|
|
(insn_tls_ie_add_Y0Y1): New
|
|
|
|
|
(insn_tls_gd_add_X0X1): New
|
|
|
|
|
(insn_tls_gd_add_Y0Y1): New
|
|
|
|
|
* elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
|
|
|
|
|
relocations.
|
|
|
|
|
(tilegx_reloc_map): Ditto.
|
|
|
|
|
(tilegx_info_to_howto_rela): Ditto.
|
|
|
|
|
(reloc_to_create_func): Ditto.
|
|
|
|
|
(tilegx_elf_link_hash_table): New field disable_le_transition.
|
|
|
|
|
(tilegx_tls_translate_to_le): New.
|
|
|
|
|
(tilegx_tls_translate_to_ie): New.
|
|
|
|
|
(tilegx_elf_tls_transition): New.
|
|
|
|
|
(tilegx_elf_check_relocs): Handle new tls relocations.
|
|
|
|
|
(tilegx_elf_gc_sweep_hook): Ditto.
|
|
|
|
|
(allocate_dynrelocs): Ditto.
|
|
|
|
|
(tilegx_elf_relocate_section): Ditto.
|
|
|
|
|
(tilegx_copy_bits): New.
|
|
|
|
|
(tilegx_replace_insn): New.
|
|
|
|
|
(insn_mask_X1): New.
|
|
|
|
|
(insn_mask_X0_no_dest_no_srca): New.
|
|
|
|
|
(insn_mask_X1_no_dest_no_srca): New.
|
|
|
|
|
(insn_mask_Y0_no_dest_no_srca): New.
|
|
|
|
|
(insn_mask_Y1_no_dest_no_srca): New.
|
|
|
|
|
(insn_mask_X0_no_operand): New.
|
|
|
|
|
(insn_mask_X1_no_operand): New.
|
|
|
|
|
(insn_mask_Y0_no_operand): New.
|
|
|
|
|
(insn_mask_Y1_no_operand): New.
|
|
|
|
|
(insn_tls_ie_ld_X1): New.
|
|
|
|
|
(insn_tls_ie_ld4s_X1): New.
|
|
|
|
|
(insn_tls_ie_add_X0X1): New.
|
|
|
|
|
(insn_tls_ie_add_Y0Y1): New.
|
|
|
|
|
(insn_tls_ie_addx_X0X1): New.
|
|
|
|
|
(insn_tls_ie_addx_Y0Y1): New.
|
|
|
|
|
(insn_tls_gd_add_X0X1): New.
|
|
|
|
|
(insn_tls_gd_add_Y0Y1): New.
|
|
|
|
|
(insn_move_X0X1): New.
|
|
|
|
|
(insn_move_Y0Y1): New.
|
|
|
|
|
(insn_add_X0X1): New.
|
|
|
|
|
(insn_add_Y0Y1): New.
|
|
|
|
|
(insn_addx_X0X1): New.
|
|
|
|
|
(insn_addx_Y0Y1): New.
|
|
|
|
|
* libbfd.h: Regenerate.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
|
2012-02-25 19:57:55 +01:00
|
|
|
|
2012-02-25 Walter Lee <walt@tilera.com>
|
|
|
|
|
|
2012-02-25 20:51:34 +01:00
|
|
|
|
* config.bfd (tilegx-*-*): rename little endian vector; add big
|
|
|
|
|
endian vector.
|
|
|
|
|
(tilegxbe-*-*): New case.
|
|
|
|
|
* configure.in (bfd_elf32_tilegx_vec): Rename...
|
|
|
|
|
(bfd_elf32_tilegx_le_vec): ... to this.
|
|
|
|
|
(bfd_elf32_tilegx_be_vec): New vector.
|
|
|
|
|
(bfd_elf64_tilegx_vec): Rename...
|
|
|
|
|
(bfd_elf64_tilegx_le_vec): ... to this.
|
|
|
|
|
(bfd_elf64_tilegx_be_vec): New vector.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* elf32-tilegx.c (TARGET_LITTLE_SYM): Rename.
|
|
|
|
|
(TARGET_LITTLE_NAME): Ditto.
|
|
|
|
|
(TARGET_BIG_SYM): Define.
|
|
|
|
|
(TARGET_BIG_NAME): Define.
|
|
|
|
|
* elf64-tilegx.c (TARGET_LITTLE_SYM): Rename.
|
|
|
|
|
(TARGET_LITTLE_NAME): Ditto.
|
|
|
|
|
(TARGET_BIG_SYM): Define.
|
|
|
|
|
(TARGET_BIG_NAME): Define.
|
|
|
|
|
* targets.c (bfd_elf32_tilegx_vec): Rename...
|
|
|
|
|
(bfd_elf32_tilegx_le_vec): ... to this.
|
|
|
|
|
(bfd_elf32_tilegx_be_vec): Declare.
|
|
|
|
|
(bfd_elf64_tilegx_vec): Rename...
|
|
|
|
|
(bfd_elf64_tilegx_le_vec): ... to this.
|
|
|
|
|
(bfd_elf64_tilegx_be_vec): Declare.
|
|
|
|
|
(_bfd_target_vector): Add / rename above vectors.
|
2012-02-25 19:57:55 +01:00
|
|
|
|
* arctures.c (bfd_architecture): Define bfd_mach_tilegx32.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* cpu-tilegx.c (bfd_tilegx32_arch): define.
|
2012-02-25 20:51:34 +01:00
|
|
|
|
(bfd_tilegx_arch): link to bfd_tilegx32_arch.
|
2012-02-25 19:57:55 +01:00
|
|
|
|
|
2012-02-24 11:54:47 +01:00
|
|
|
|
2012-02-24 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13730
|
|
|
|
|
* reloc.c (bfd_generic_get_relocated_section_contents): Issue an
|
|
|
|
|
error message instead of aborting, when an outofrange reloc is
|
|
|
|
|
encountered.
|
|
|
|
|
|
2012-02-23 17:29:56 +01:00
|
|
|
|
2012-02-23 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New.
|
|
|
|
|
(bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc
|
|
|
|
|
bit-fields when target and host differ in endian-ness. When
|
|
|
|
|
PAIRs are non-scattered find the 'symbol' from the preceding
|
|
|
|
|
reloc. Add FIXME re. reloc symbols on section boundaries.
|
|
|
|
|
(bfd_mach_o_swap_out_non_scattered_reloc): New.
|
|
|
|
|
(bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc.
|
|
|
|
|
|
2012-02-17 12:23:44 +01:00
|
|
|
|
2012-02-17 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o-i386.c (i386_howto_table): Add support for 16 bit
|
|
|
|
|
sect-diffs.
|
|
|
|
|
(bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs.
|
|
|
|
|
(bfd_mach_o_i386_swap_reloc_out): Likewise.
|
|
|
|
|
|
2012-02-17 11:57:33 +01:00
|
|
|
|
2012-02-17 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF):
|
|
|
|
|
* libbfd.h: Regenerated.
|
|
|
|
|
* bfd-in2.h: Likewise.
|
|
|
|
|
* mach-o-i386.c (i386_howto_table): Include local sectdiff.
|
|
|
|
|
(bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff.
|
|
|
|
|
(bfd_mach_o_i386_swap_reloc_out): Likewise.
|
|
|
|
|
|
2012-02-17 09:38:06 +01:00
|
|
|
|
2012-02-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
|
|
|
|
|
|
|
|
|
|
* elf32-s390.c (elf_s390_relocate_section): Support basr in the
|
|
|
|
|
GD->LE and LD->LE optimizations.
|
|
|
|
|
|
2012-02-16 08:40:23 +01:00
|
|
|
|
2012-02-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13355
|
|
|
|
|
* elf32-rx.c (elf32_rx_relax_section): Correct width check.
|
|
|
|
|
|
2012-02-13 19:08:51 +01:00
|
|
|
|
2012-02-13 Richard Henderson <rth@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13621
|
|
|
|
|
* linker.c (fix_syms): Force symbols outside any section into
|
|
|
|
|
bfd_abs_section_ptr.
|
|
|
|
|
|
2012-02-13 03:29:51 +01:00
|
|
|
|
2012-02-13 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
|
|
|
|
|
* elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare.
|
|
|
|
|
* elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define.
|
|
|
|
|
* elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define.
|
|
|
|
|
|
2012-02-11 16:10:12 +01:00
|
|
|
|
2012-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
|
|
|
Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* oasys.c (oasys_write_header): Fix compilation warning on zero-sized
|
|
|
|
|
memset.
|
|
|
|
|
|
2012-02-10 12:24:44 +01:00
|
|
|
|
2012-02-10 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section
|
|
|
|
|
vma additions in their logical, rather than physical order.
|
|
|
|
|
|
2012-02-10 12:07:33 +01:00
|
|
|
|
2012-02-10 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (mach_o_section_name_xlat): Correct eh-frame section
|
|
|
|
|
parameters.
|
|
|
|
|
* mach-o-x86-64.c (text_section_names_xlat): New.
|
|
|
|
|
(mach_o_x86_64_segsec_names_xlat): New.
|
|
|
|
|
(bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat.
|
|
|
|
|
* mach-o-i386.c (text_section_names_xlat): Correct section parameters.
|
|
|
|
|
|
2012-02-10 11:09:14 +01:00
|
|
|
|
2012-02-10 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator
|
|
|
|
|
to avoid infinite loop. Add comments.
|
|
|
|
|
|
2012-02-09 23:51:58 +01:00
|
|
|
|
2012-02-09 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13675
|
|
|
|
|
* cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte
|
|
|
|
|
nop instructions.
|
|
|
|
|
(bfd_arch_i386_short_nop_fill): New.
|
|
|
|
|
(bfd_arch_i386_long_nop_fill): Likewise.
|
|
|
|
|
Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info
|
|
|
|
|
initializers. Use bfd_arch_i386_long_nop_fill on 64bit
|
|
|
|
|
bfd_arch_info initializers.
|
|
|
|
|
|
|
|
|
|
* cpu-k1om.c (bfd_arch_i386_fill): Renamed to ...
|
|
|
|
|
(bfd_arch_i386_short_nop_fill): This.
|
|
|
|
|
Update bfd_arch_info initializers.
|
|
|
|
|
* cpu-l1om.c: Likewise.
|
|
|
|
|
|
2012-02-08 11:12:20 +01:00
|
|
|
|
2012-02-08 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too.
|
|
|
|
|
(_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear
|
|
|
|
|
the correct h->u.weakdef.
|
|
|
|
|
|
2012-02-07 08:04:04 +01:00
|
|
|
|
2012-02-07 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (elf_find_function): Don't use internal_elf_sym.
|
|
|
|
|
(_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type
|
|
|
|
|
parameter with asymbol.
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
|
|
|
|
|
* elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype.
|
|
|
|
|
(struct elf_backend_data <maybe_function_sym>): Likewise.
|
|
|
|
|
|
2012-02-02 19:02:10 +01:00
|
|
|
|
2012-02-02 Vidya Praveen (vidya.praveen@atmel.com)
|
|
|
|
|
|
|
|
|
|
PR bfd/13410
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elf32-avr.c (elf32_avr_relax_section): Correct the
|
2012-02-02 19:02:10 +01:00
|
|
|
|
condition that qualifies the candidates for relaxation.
|
|
|
|
|
|
2012-02-02 16:36:44 +01:00
|
|
|
|
2012-02-02 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* bfdio.c (real_fopen): Remove unused vms_modes variable.
|
|
|
|
|
|
2012-02-02 12:55:43 +01:00
|
|
|
|
2012-02-02 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_read_header): Silent uninitialized
|
|
|
|
|
variable warning.
|
|
|
|
|
|
2012-02-02 12:35:31 +01:00
|
|
|
|
2012-02-02 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* archive.c (bfd_slurp_armap): Fix thinko in cast.
|
|
|
|
|
|
2012-01-31 18:54:39 +01:00
|
|
|
|
2012-01-31 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13616
|
|
|
|
|
* archures.c (bfd_arch_info): Add fill.
|
|
|
|
|
(bfd_default_arch_struct): Add bfd_arch_default_fill.
|
|
|
|
|
(bfd_arch_default_fill): New.
|
|
|
|
|
|
|
|
|
|
* configure.in: Set bfd version to 2.22.52.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
|
|
|
|
* cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info
|
|
|
|
|
initializer.
|
|
|
|
|
* cpu-arc.c: Likewise.
|
|
|
|
|
* cpu-arm.c: Likewise.
|
|
|
|
|
* cpu-avr.c: Likewise.
|
|
|
|
|
* cpu-bfin.c: Likewise.
|
|
|
|
|
* cpu-cr16.c: Likewise.
|
|
|
|
|
* cpu-cr16c.c: Likewise.
|
|
|
|
|
* cpu-cris.c: Likewise.
|
|
|
|
|
* cpu-crx.c: Likewise.
|
|
|
|
|
* cpu-d10v.c: Likewise.
|
|
|
|
|
* cpu-d30v.c: Likewise.
|
|
|
|
|
* cpu-dlx.c: Likewise.
|
|
|
|
|
* cpu-epiphany.c: Likewise.
|
|
|
|
|
* cpu-fr30.c: Likewise.
|
|
|
|
|
* cpu-frv.c: Likewise.
|
|
|
|
|
* cpu-h8300.c: Likewise.
|
|
|
|
|
* cpu-h8500.c: Likewise.
|
|
|
|
|
* cpu-hppa.c: Likewise.
|
|
|
|
|
* cpu-i370.c: Likewise.
|
|
|
|
|
* cpu-i860.c: Likewise.
|
|
|
|
|
* cpu-i960.c: Likewise.
|
|
|
|
|
* cpu-ia64.c: Likewise.
|
|
|
|
|
* cpu-ip2k.c: Likewise.
|
|
|
|
|
* cpu-iq2000.c: Likewise.
|
|
|
|
|
* cpu-lm32.c: Likewise.
|
|
|
|
|
* cpu-m10200.c: Likewise.
|
|
|
|
|
* cpu-m10300.c: Likewise.
|
|
|
|
|
* cpu-m32c.c: Likewise.
|
|
|
|
|
* cpu-m32r.c: Likewise.
|
|
|
|
|
* cpu-m68hc11.c: Likewise.
|
|
|
|
|
* cpu-m68hc12.c: Likewise.
|
|
|
|
|
* cpu-m68k.c: Likewise.
|
|
|
|
|
* cpu-m88k.c: Likewise.
|
|
|
|
|
* cpu-mcore.c: Likewise.
|
|
|
|
|
* cpu-mep.c: Likewise.
|
|
|
|
|
* cpu-microblaze.c: Likewise.
|
|
|
|
|
* cpu-mips.c: Likewise.
|
|
|
|
|
* cpu-mmix.c: Likewise.
|
|
|
|
|
* cpu-moxie.c: Likewise.
|
|
|
|
|
* cpu-msp430.c: Likewise.
|
|
|
|
|
* cpu-mt.c: Likewise.
|
|
|
|
|
* cpu-ns32k.c: Likewise.
|
|
|
|
|
* cpu-openrisc.c: Likewise.
|
|
|
|
|
* cpu-or32.c: Likewise.
|
|
|
|
|
* cpu-pdp11.c: Likewise.
|
|
|
|
|
* cpu-pj.c: Likewise.
|
|
|
|
|
* cpu-plugin.c: Likewise.
|
|
|
|
|
* cpu-powerpc.c: Likewise.
|
|
|
|
|
* cpu-rl78.c: Likewise.
|
|
|
|
|
* cpu-rs6000.c: Likewise.
|
|
|
|
|
* cpu-rx.c: Likewise.
|
|
|
|
|
* cpu-s390.c: Likewise.
|
|
|
|
|
* cpu-score.c: Likewise.
|
|
|
|
|
* cpu-sh.c: Likewise.
|
|
|
|
|
* cpu-sparc.c: Likewise.
|
|
|
|
|
* cpu-spu.c: Likewise.
|
|
|
|
|
* cpu-tic30.c: Likewise.
|
|
|
|
|
* cpu-tic4x.c: Likewise.
|
|
|
|
|
* cpu-tic54x.c: Likewise.
|
|
|
|
|
* cpu-tic6x.c: Likewise.
|
|
|
|
|
* cpu-tic80.c: Likewise.
|
|
|
|
|
* cpu-tilegx.c: Likewise.
|
|
|
|
|
* cpu-tilepro.c: Likewise.
|
|
|
|
|
* cpu-v850.c: Likewise.
|
|
|
|
|
* cpu-vax.c: Likewise.
|
|
|
|
|
* cpu-w65.c: Likewise.
|
|
|
|
|
* cpu-we32k.c: Likewise.
|
|
|
|
|
* cpu-xc16x.c: Likewise.
|
|
|
|
|
* cpu-xstormy16.c: Likewise.
|
|
|
|
|
* cpu-xtensa.c: Likewise.
|
|
|
|
|
* cpu-z80.c: Likewise.
|
|
|
|
|
* cpu-z8k.c: Likewise.
|
|
|
|
|
|
|
|
|
|
* cpu-i386.c: Include "libiberty.h".
|
2012-02-07 08:04:04 +01:00
|
|
|
|
(bfd_arch_i386_fill): New.
|
2012-01-31 18:54:39 +01:00
|
|
|
|
Add bfd_arch_i386_fill to bfd_arch_info initializer.
|
|
|
|
|
|
|
|
|
|
* cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer.
|
|
|
|
|
* cpu-l1om.c: Likewise.
|
|
|
|
|
|
2012-02-07 08:04:04 +01:00
|
|
|
|
* linker.c (default_data_link_order): Call abfd->arch_info->fill
|
2012-01-31 18:54:39 +01:00
|
|
|
|
if fill size is 0.
|
|
|
|
|
|
|
|
|
|
* bfd-in2.h: Regenerated.
|
|
|
|
|
|
2012-01-27 17:47:27 +01:00
|
|
|
|
2012-01-27 Michael Eager <eager@eagercon.com>
|
|
|
|
|
|
2012-05-16 16:13:26 +02:00
|
|
|
|
* elf32-microblaze.c (create_got_section):
|
2012-01-27 17:47:27 +01:00
|
|
|
|
Reuse existing .rela.got section.
|
|
|
|
|
|
2012-01-23 07:16:38 +01:00
|
|
|
|
2012-01-23 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf-bfd.h: Formatting.
|
|
|
|
|
(struct elf_backend_data): Add "maybe_function_sym".
|
|
|
|
|
(_bfd_elf_maybe_function_sym): Declare.
|
|
|
|
|
* elfxx-target.h (elf_backend_maybe_function_sym): Define.
|
|
|
|
|
(elfNN_bed): Init new field.
|
|
|
|
|
* elf.c (elf_find_function): Use maybe_function_sym.
|
|
|
|
|
(_bfd_elf_maybe_function_sym): New function.
|
|
|
|
|
* elf64-ppc.c (elf_backend_maybe_function_sym): Define.
|
|
|
|
|
(ppc64_elf_maybe_function_sym): New function.
|
|
|
|
|
|
2012-01-20 15:42:57 +01:00
|
|
|
|
2012-01-20 Francois Gouget <fgouget@codeweavers.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13534
|
|
|
|
|
* archive.c (_bfd_ar_sizepad): New function. Correctly install and
|
|
|
|
|
pad the size field in an archive header.
|
|
|
|
|
(_bfd_generic_read_ar_hdr_mag): Use the correct type and scan
|
|
|
|
|
function for the archive size field.
|
|
|
|
|
(bfd_generic_openr_next_archived_file): Likewise.
|
|
|
|
|
(do_slurp_coff_armap): Likewise.
|
|
|
|
|
(_bfd_write_archive_contents): Likewise.
|
|
|
|
|
(_bfd_bsd44_write_ar_hdr): Use the new function.
|
|
|
|
|
(bfd_ar_hdr_from_filesystem): Likewise.
|
|
|
|
|
(_bfd_write_archive_contents): Likewise.
|
|
|
|
|
(bsd_write_armap): Likewise.
|
|
|
|
|
(coff_write_armap): Likewise.
|
|
|
|
|
* archive64.c (bfd_elf64_archive_write_armap): Likewise.
|
|
|
|
|
* bfdio.c (bfd_bread): Use correct type for archive element
|
|
|
|
|
sizes.
|
|
|
|
|
* ar.c (open_inarch): Likewise.
|
|
|
|
|
(extract_file): Likewise.
|
|
|
|
|
* libbfd-in.h (struct areltdata): Use correct types for
|
|
|
|
|
parsed_size and extra_size fields.
|
|
|
|
|
Prototype _bfd_ar_sizepad function.
|
|
|
|
|
* libbfd.h: Regenerate.
|
|
|
|
|
|
2012-01-20 10:52:43 +01:00
|
|
|
|
2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
|
|
|
|
|
|
|
|
|
|
* elf.c (elfcore_write_prpsinfo): Provide unconditionally.
|
|
|
|
|
Return NULL if core file generation is unsupported.
|
|
|
|
|
(elfcore_write_prstatus): Likewise.
|
|
|
|
|
* elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
|
|
|
|
|
(elf_backend_write_core_note): Define.
|
|
|
|
|
|
2012-01-19 12:45:36 +01:00
|
|
|
|
2012-01-19 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* pef.c: Add a comment.
|
|
|
|
|
* xsym.c: Likewise.
|
|
|
|
|
|
2012-01-16 23:30:19 +01:00
|
|
|
|
2012-01-17 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
|
|
|
|
|
trailing garbage in the note.
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
|
|
|
|
|
|
2012-01-16 09:30:18 +01:00
|
|
|
|
2012-01-16 Daniel Green <venix1@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13491
|
|
|
|
|
* coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
|
|
|
|
|
h->root.type not h->type.
|
|
|
|
|
* coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
|
|
|
|
|
|
2012-01-13 13:08:23 +01:00
|
|
|
|
2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
2012-01-16 09:30:18 +01:00
|
|
|
|
* mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute
|
|
|
|
|
indirect symbols.
|
2012-01-13 13:59:30 +01:00
|
|
|
|
|
|
|
|
|
2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file
|
2012-01-13 13:08:23 +01:00
|
|
|
|
position from here... to (bfd_mach_o_build_seg_command): Here.
|
|
|
|
|
|
2012-01-12 15:03:12 +01:00
|
|
|
|
2012-01-12 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_count_indirect_symbols): New.
|
|
|
|
|
(bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
|
|
|
|
|
* mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
|
|
|
|
|
file. (bfd_mach_o_section): Add indirect_syms field.
|
|
|
|
|
|
2012-01-11 16:24:10 +01:00
|
|
|
|
2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_build_seg_command): Separate computation of
|
|
|
|
|
vmsize from filesize. Don't compute offsets or file sizes for
|
|
|
|
|
zerofill sections.
|
|
|
|
|
|
2012-01-11 16:06:36 +01:00
|
|
|
|
2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_build_commands): Make the building of each
|
|
|
|
|
command type independent.
|
|
|
|
|
|
2012-01-11 10:28:45 +01:00
|
|
|
|
2012-01-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf64-ppc.c: Define more insns used in plt call stubs.
|
|
|
|
|
(ppc64_elf_brtaken_reloc): Assume isa version 2 or above.
|
|
|
|
|
(ppc64_elf_relocate_section): Likewise.
|
|
|
|
|
(enum ppc_stub_type): Add ppc_stub_plt_call_r2save.
|
|
|
|
|
(struct ppc_link_hash_table): Increase size of stub_count array.
|
|
|
|
|
Add plt_stub_align and plt_thread_safe.
|
|
|
|
|
(ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define.
|
|
|
|
|
(plt_stub_size, plt_stub_pad): New functions.
|
|
|
|
|
(build_plt_stub): Emit barriers for power7 thread safety. Don't
|
|
|
|
|
emit needless save of r2.
|
|
|
|
|
(build_tls_get_addr_stub): Adjust params.
|
|
|
|
|
(ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning
|
|
|
|
|
plt stubs. Adjust build_*plt_stub calls.
|
|
|
|
|
(ppc_size_one_stub): Similarly.
|
|
|
|
|
(ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align
|
|
|
|
|
params. Choose default for plt_thread_safe based on existence of
|
|
|
|
|
calls to thread creation functions. Modify plt_call to
|
|
|
|
|
plt_call_r2save when no tocsave reloc found. Align tail of stub
|
|
|
|
|
sections.
|
|
|
|
|
(ppc64_elf_build_stubs): Align tail of stub sections. Adjust
|
|
|
|
|
output of stub statistics.
|
|
|
|
|
(ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save.
|
|
|
|
|
* elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
|
|
|
|
|
|
2012-01-10 21:18:18 +01:00
|
|
|
|
2012-01-10 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/13581
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P
|
|
|
|
|
check on R_X86_64_PCXX.
|
|
|
|
|
|
2012-01-10 12:59:28 +01:00
|
|
|
|
2012-01-10 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false
|
|
|
|
|
warning.
|
|
|
|
|
|
2012-01-10 12:51:09 +01:00
|
|
|
|
2012-01-10 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* bfdio.c (bfd_tell): Handle nested archives.
|
|
|
|
|
(bfd_seek): Ditto.
|
|
|
|
|
* cache.c (bfd_cache_lookup_worker): Ditto.
|
|
|
|
|
* archive.c (_bfd_get_elt_at_filepos): Remove code dealing with
|
|
|
|
|
nested archives.
|
|
|
|
|
(bfd_generic_openr_next_archived_file): Likewise.
|
|
|
|
|
|
2012-01-09 11:47:50 +01:00
|
|
|
|
2012-01-09 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement.
|
|
|
|
|
(bfd_mach_o_write_symtab): Remove handling for indirect syms.
|
|
|
|
|
(bfd_mach_o_primary_symbol_sort_key): Likewise.
|
|
|
|
|
(bfd_mach_o_cf_symbols): Likewise.
|
|
|
|
|
(bfd_mach_o_sort_symbol_table): Remove.
|
|
|
|
|
(bfd_mach_o_mangle_symbols): Adjust arguments, remove handling
|
|
|
|
|
for indirect and dysymtab counts. Do the symbol sorting here.
|
|
|
|
|
(bfd_mach_o_build_dysymtab_command): Count the symbol types here.
|
|
|
|
|
Make the indirect symbols a TODO.
|
|
|
|
|
(bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols.
|
|
|
|
|
(bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with
|
|
|
|
|
a non-zero value.
|
|
|
|
|
(bfd_mach_o_read_symtab_symbol): Record the symbol index.
|
|
|
|
|
(bfd_mach_o_read_symtab_symbol): Adjust recording of global status.
|
|
|
|
|
* mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries.
|
|
|
|
|
(IS_MACHO_INDIRECT): Remove.
|
|
|
|
|
(SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New.
|
|
|
|
|
|
2012-01-06 16:44:30 +01:00
|
|
|
|
2012-01-06 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/13121
|
|
|
|
|
* reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to
|
|
|
|
|
'flaginfo' to avoid conflicts with AIX system headers.
|
|
|
|
|
|
2012-01-06 12:43:51 +01:00
|
|
|
|
2012-01-06 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* bfdio.c (bfd_bread): Use arelt_size macro.
|
|
|
|
|
|
2012-01-06 12:41:28 +01:00
|
|
|
|
2012-01-06 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs.
|
|
|
|
|
|
2012-01-05 10:57:18 +01:00
|
|
|
|
2012-01-05 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR ld/12161
|
|
|
|
|
* elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if
|
|
|
|
|
necessary.
|
|
|
|
|
|
2012-01-05 08:50:44 +01:00
|
|
|
|
2012-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
|
|
|
|
|
|
|
|
|
|
Fix zero registers core files when built by gcc-4.7.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and
|
|
|
|
|
size. Call elfcore_write_note for the local variables. Remove the
|
|
|
|
|
final elfcore_write_note call. Add NOTREACHED comments.
|
|
|
|
|
|
2012-01-04 14:31:27 +01:00
|
|
|
|
2012-01-04 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function.
|
|
|
|
|
(bfd_mach_o_generic_stat_arch_elt): Adjust.
|
|
|
|
|
|
2012-01-04 14:22:21 +01:00
|
|
|
|
2012-01-04 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_fat_member_init): New function.
|
|
|
|
|
(bfd_mach_o_openr_next_archived_file): Reindent.
|
|
|
|
|
Adjust to call bfd_mach_o_fat_member_init.
|
|
|
|
|
(bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init.
|
|
|
|
|
|
2012-01-04 13:59:23 +01:00
|
|
|
|
2012-01-04 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle
|
|
|
|
|
BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1,
|
|
|
|
|
BFD_RELOC_MACH_O_X86_64_PCREL32_2,
|
|
|
|
|
BFD_RELOC_MACH_O_X86_64_PCREL32_4,
|
|
|
|
|
BFD_RELOC_MACH_O_X86_64_BRANCH32,
|
|
|
|
|
BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32,
|
|
|
|
|
BFD_RELOC_MACH_O_X86_64_GOT.
|
|
|
|
|
|
2012-01-04 11:37:36 +01:00
|
|
|
|
2012-01-04 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.h (bfd_mach_o_fvmlib_command): New structure.
|
|
|
|
|
(bfd_mach_o_load_command): Add fvmlib field.
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_read_fvmlib): New function.
|
|
|
|
|
(bfd_mach_o_read_command): Handle fvmlib.
|
|
|
|
|
|
2012-01-04 11:25:14 +01:00
|
|
|
|
2012-01-04 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_convert_architecture): Reindent.
|
|
|
|
|
Decode msubtype for ARM.
|
|
|
|
|
|
2012-01-04 11:14:25 +01:00
|
|
|
|
2012-01-04 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments.
|
|
|
|
|
|
2012-01-04 10:58:55 +01:00
|
|
|
|
2012-01-04 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.h: Reindent header.
|
|
|
|
|
(bfd_mach_o_encryption_info_command): New structure.
|
|
|
|
|
(bfd_mach_o_load_command): Add encryption_info field.
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_read_encryption_info): New function.
|
|
|
|
|
(bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO.
|
|
|
|
|
(bfd_mach_o_read_command): Adjust error message.
|
|
|
|
|
|
2012-01-04 09:44:04 +01:00
|
|
|
|
2012-01-04 Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
|
|
|
|
|
|
|
|
|
|
* dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part
|
|
|
|
|
which reads DWARF2 and stores in stash from find_line.
|
|
|
|
|
(find_line) Call _bfd_dwarf2_slurp_debug_info.
|
|
|
|
|
* libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration.
|
|
|
|
|
* libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate.
|
|
|
|
|
* mach-o.c (dsym_subdir): The name of subdir where debug
|
|
|
|
|
information may be stored.
|
|
|
|
|
(bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose
|
|
|
|
|
type is UUID.
|
|
|
|
|
(bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is
|
|
|
|
|
corresponding to the executable.
|
|
|
|
|
(bfd_mach_o_find_dsym): New. Find a debug information BFD in the
|
|
|
|
|
specified binary file.
|
|
|
|
|
(bfd_mach_o_follow_dsym): New. Find a debug information BFD for
|
|
|
|
|
the original BFD.
|
|
|
|
|
(bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O
|
|
|
|
|
executables, dylibs, and bundles.
|
|
|
|
|
(bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file.
|
|
|
|
|
* mach-o.h (dsym_bfd): The BFD of the dSYM file.
|
|
|
|
|
|
2012-01-03 14:18:48 +01:00
|
|
|
|
2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index
|
|
|
|
|
for stabd symbols.
|
|
|
|
|
(bfd_mach_o_primary_symbol_sort_key): Adjust for stabs.
|
|
|
|
|
(bfd_mach_o_cf_symbols): Likewise.
|
|
|
|
|
|
2012-01-03 13:03:10 +01:00
|
|
|
|
2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_mangle_symbols): Correct typo.
|
|
|
|
|
|
2012-01-03 11:54:01 +01:00
|
|
|
|
2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index
|
|
|
|
|
as the value of an indirect symbol. Keep the string table index in
|
|
|
|
|
non-indirect syms for reference.
|
|
|
|
|
(bfd_mach_o_write_dysymtab): New.
|
|
|
|
|
(bfd_mach_o_primary_symbol_sort_key): New.
|
|
|
|
|
(bfd_mach_o_cf_symbols): New.
|
|
|
|
|
(bfd_mach_o_sort_symbol_table): New.
|
|
|
|
|
(bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols.
|
|
|
|
|
If we are emitting a dysymtab, process indirect symbols and count the
|
|
|
|
|
number of each other kind.
|
|
|
|
|
(bfd_mach_o_mangle_sections): New.
|
|
|
|
|
(bfd_mach_o_write_contents): Split out some pre-requisite code into
|
|
|
|
|
the command builder. Write dysymtab if the command is present.
|
|
|
|
|
(bfd_mach_o_count_sections_for_seg): New.
|
|
|
|
|
(bfd_mach_o_build_seg_command): New.
|
|
|
|
|
(bfd_mach_o_build_dysymtab_command): New.
|
|
|
|
|
(bfd_mach_o_build_commands): Reorganize to support the fact that some
|
|
|
|
|
commands are optional and should not be emitted if there are no
|
|
|
|
|
sections or symbols.
|
|
|
|
|
(bfd_mach_o_set_section_contents): Amend comment.
|
2012-01-05 11:09:39 +01:00
|
|
|
|
* mach-o.h: Amend and add to comments.
|
2012-01-03 11:54:01 +01:00
|
|
|
|
(mach_o_data_struct): Add fields for dysymtab symbols counts and a
|
|
|
|
|
pointer to the indirects, when present.
|
|
|
|
|
(bfd_mach_o_should_emit_dysymtab): New macro.
|
|
|
|
|
(IS_MACHO_INDIRECT): Likewise.
|
|
|
|
|
|
2012-01-05 11:09:39 +01:00
|
|
|
|
For older changes see ChangeLog-2011
|
2001-09-08 07:47:01 +02:00
|
|
|
|
|
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|