Nick Clifton
b5f5fd962e
* config/tc-mn10300.c (mn10300_force_relocation): Force a reloc to be generated for alignment fixups.
...
* config/tc-mn10300.h (TC_FORCE_RELOCATION): Call mn10300_force_relocation.
* elf-m10300.c (mn10300_elf_final_link_relocate): Prevent the accidental termination of DWARF location list entries.
(mn10300_elf_relax_delete_bytes): Stop deletion if an align reloc is encountered that is larger than or not a mutliple of the number of bytes being deleted.
When adjusting symbols, any symbols inside the region being deleted must be moved to the end of the region.
Move align relocs forward if there is room for them after the deletion of the region.
2007-11-13 10:40:29 +00:00
Alan Modra
0067a5693a
PR 5233
...
* elf.c (rewrite_elf_program_header): Formatting. Add
first_matching_lma and first_suggested_lma booleans and use
instead of testing matching_lma and suggested_lma for zero.
2007-11-13 05:56:10 +00:00
Alan Modra
52cd869883
daily update
2007-11-12 23:00:04 +00:00
H.J. Lu
fa4dfc15df
2007-11-12 H.J. Lu <hongjiu.lu@intel.com>
...
PR binutils/5299
* peicode.h (pe_bfd_object_p): Save and restore previous bfd
state when calling coff_object_p.
2007-11-12 21:55:50 +00:00
Alan Modra
8f39ba8ef2
* elf.c (_bfd_elf_get_synthetic_symtab): Only bump the symbol
...
pointer when we have a valid symbol. Init udata.p to NULL.
2007-11-12 03:28:52 +00:00
Alan Modra
6395c08d39
daily update
2007-11-11 23:00:05 +00:00
Alan Modra
d07b42f3b7
daily update
2007-11-10 23:00:05 +00:00
Alan Modra
bbce853ae5
daily update
2007-11-09 23:00:06 +00:00
Nathan Sidwell
6b60be102a
* elf-vxworks.c (elf_vxworks_emit_relocs): Don't clobber
...
rel_hash. Move loop inside if test.
2007-11-09 10:20:17 +00:00
Danny Smith
b2766bff8e
Apply delta accidentally omitted from 2007-11-05 commit.
...
* pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Let .data, .text
and .bss section use the default.
2007-11-09 08:35:29 +00:00
Alan Modra
25e073af51
daily update
2007-11-08 23:00:49 +00:00
Nathan Sidwell
4d2c0abd8e
* elf-vxworks.h (elf_vxworks_add_dynamic_entries): Declare.
...
(elf_vxworks_finish_dynamic_entry): Declare.
* elf-vxworks.c: Include elf/vxworks.h.
(elf_vxworks_add_dynamic_entries): New.
(elf_vxworks_finish_dynamic_entry): New.
* Makefile.am (elf-vxworks.lo): Add dependency.
* Makefile.in (elf-vxworks.lo): Add dependency.
* elf32-i386.c (elf_i386_size_dynamic_sections,
elf_i386_finish_dynamic_sections): Call
elf_vxworks_add_dynamic_entries and
elf_vxworks_finish_dynamic_entry.
* elf32-ppc.c (ppc_elf_size_dynamic_sections,
ppc_elf_finish_dynamic_sections): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections,
sparc_finish_dyn): Likewise.
* elf32-sh.c (sh_elf_size_dynamic_sections,
sh_elf_finish_dynamic_sections): Likewise.
* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections,
_bfd_mips_elf_finish_dynamic_sections): Likewise.
* elf32-arm.c (elf32_arm_size_dynamic_sections,
elf32_arm_finish_dynamic_sections): Likewise.
2007-11-08 13:57:44 +00:00
Nathan Sidwell
7a2b07ff7e
include/elf/
...
* vxworks.h: New.
bfd/
* elf-vxworks.h (elf_vxworks_add_dynamic_entries): Declare.
(elf_vxworks_finish_dynamic_entry): Declare.
* elf-vxworks.c: Include elf/vxworks.h.
(elf_vxworks_add_dynamic_entries): New.
(elf_vxworks_finish_dynamic_entry): New.
* Makefile.am (elf-vxworks.lo): Add dependency.
* Makefile.in (elf-vxworks.lo): Add dependency.
* elf32-i386.c (elf_i386_size_dynamic_sections,
elf_i386_finish_dynamic_sections): Call
elf_vxworks_add_dynamic_entries and
elf_vxworks_finish_dynamic_entry.
* elf32-ppc.c (ppc_elf_size_dynamic_sections,
ppc_elf_finish_dynamic_sections): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections,
sparc_finish_dyn): Likewise.
* elf32-sh.c (sh_elf_size_dynamic_sections,
sh_elf_finish_dynamic_sections): Likewise.
* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections,
_bfd_mips_elf_finish_dynamic_sections): Likewise.
* elf32-arm.c (elf32_arm_size_dynamic_sections,
elf32_arm_finish_dynamic_sections): Likewise.
ld/
* ld-vxworks/tls-2.d: New.
* ld-vxworks/tls-2.s: New.
2007-11-08 13:51:07 +00:00
Alan Modra
f549fcc222
daily update
2007-11-07 23:00:05 +00:00
Nick Clifton
b5482f211e
* bfd/elfxx-mips.c (_bfd_mips_elf_fake_sections): Force SHF_MIPS_NOSTRIP on
...
.debug_frame for Irix.
2007-11-07 14:52:44 +00:00
Alan Modra
5de6e39c09
daily update
2007-11-06 23:00:15 +00:00
Alan Modra
102890f04c
bfd/
...
* elf64-ppc.c (ppc64_elf_check_relocs): Don't refcount tlsld_got here..
(ppc64_elf_gc_sweep_hook): ..or here..
(ppc64_elf_tls_optimize): ..or here. Make two passes through the
relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
(allocate_dynrelocs): Refcount tlsld_got here.
(ppc64_elf_size_dynamic_sections): Allocate local got and call
allocate_dynrelocs before allocating tlsld_got.
(ppc64_elf_relocate_section): Remove check that a tls_get_addr
call follows gd and ld relocs.
ld/testsuite/
* ld-powerpc/tlsso.d: Update for changed got alloc order.
* ld-powerpc/tlsso.r: Likewise.
2007-11-06 13:49:19 +00:00
Alan Modra
b7fcf6f6bb
bfd/
...
* elf32-ppc.c (ppc_elf_check_relocs): Don't refcount tlsld_got here..
(ppc_elf_gc_sweep_hook): ..or here..
(ppc_elf_tls_optimize): ..or here. Make two passes through the
relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
(allocate_dynrelocs): Refcount tlsld_got here.
(ppc_elf_size_dynamic_sections): Call allocate_dynrelocs before
allocating tlsld_got.
(ppc_elf_relocate_section): Remove check that a tls_get_addr
call follows gd and ld relocs.
ld/testsuite/
* ld-powerpc/tlsso32.d: Update for changed got alloc order.
2007-11-06 03:59:16 +00:00
Alan Modra
fa91f3452d
daily update
2007-11-05 23:00:05 +00:00
Alan Modra
9ca98086ff
* merge.c (sec_merge_hash_lookup): Revert last change.
...
(record_section): Likewise.
(_bfd_merge_sections): Likewise.
(_bfd_merged_section_offset): Properly handle NULL secinfo.
(_bfd_add_merge_section): Allocate extra space for a zero
terminator on SEC_STRINGS sections.
2007-11-05 02:13:46 +00:00
Danny Smith
11ec4ba977
include
...
* coff/pe.h (COFF_ENCODE_ALIGNMENT) Define.
gas
* read.c (ALIGN_LIMIT): Rename to ...
(TC_ALIGN_LIMIT): Guard against prior definition.
* config/tc-i386.h (TC_ALIGN_LIMIT)[TE_PE]: Define.
bfd
* pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Let .data, .text
and .bss section use the default.
* pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
ld/testsuite
* ld-scripts/align.exp: Enable for PECOFF.
* ld-scripts/alignof.exp: Likewise.
2007-11-04 23:49:09 +00:00
Alan Modra
4c9b8248ed
daily update
2007-11-04 23:00:05 +00:00
Alan Modra
3550616229
daily update
2007-11-03 23:00:05 +00:00
Alan Modra
8942f2584c
daily update
2007-11-02 23:00:05 +00:00
Alan Modra
c8d3672277
daily update
2007-11-01 23:00:05 +00:00
Joseph Myers
e6c6c8f39c
bfd:
...
* merge.c (sec_merge_hash_lookup): Add parameter sec_end. Check
for unterminated strings. All callers changed.
(record_section): Add parameter abfd. Give error message for
unterminated strings.
(_bfd_merge_sections): Update call to record_section.
(_bfd_write_merged_section, _bfd_merged_section_offset): Handle
NULL secinfo from merge failures.
ld/testsuite:
* ld-elf/merge3.d, ld-elf/merge3.s: New.
2007-11-01 11:45:20 +00:00
Alan Modra
69ff358819
daily update
2007-10-31 23:00:05 +00:00
Nick Clifton
cf4a529b63
* elf-m10300.c (mn10300_elf_relax_delete_bytes): Do not look for align
...
relocs when there are no relocs attached to the section.
2007-10-31 11:33:27 +00:00
Alan Modra
8f317e3169
* elf-bfd.h (bfd_elf_match_symbols_in_sections): Don't declare.
...
* elflink.c (bfd_elf_match_symbols_in_sections): Make static.
Remove section name comparisons.
2007-10-31 07:36:46 +00:00
Alan Modra
1dda9f5f8c
daily update
2007-10-30 23:00:06 +00:00
Nick Clifton
569006e582
* mn10300.h (R_MN10300_ALIGN): Define.
...
* reloc.c (BFD_RELOC_MN10300_ALIGN): Add.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* elf-m10300.h: Handle R_MN10300_ALIGN relocs.
* mn10300_elf_relax_delete_bytes): Honour R_MN10300_ALIGN relocs.
Re-fix off by one error in comparisons.
* config/tc-mn10300.c (tc_gen_reloc): Fix test that decides when
sym_diff relocs should be generated.
(md_apply_fix): Skip R_MN10300_ALIGN relocs.
(mn10300_fix_adjustable): Do not adjust R_MN10300_ALIGN relocs.
(mn10300_handle_align): New function. Generate R_MN10300_ALIGN
relocs to record alignment requests.
* config/tc-mn10300.h (TC_FORCE_RELOCATION_SUB_SAME): Also force
R_MN10300_ALIGN relocs.
(HANDLE_ALIGN): Define. Call mn10300_handle_align.
* gas/all/gas.exp: Do not run diff1.s test for mn10300.
* ld-mn10300/mn10300.exp: Run new tests. Skip i126256 test if
a compiler is not available.
* ld-mn10300/i112045-3.s: New test.
* ld-mn10300/i112045-3.d: Expected disassembly.
* ld-mn10300/i135409.s: Rename to i135409-1.s.
* ld-mn10300/i135409.d: Rename to i135409-1.d
* ld-mn10300/i135409-2.s: New test.
* ld-mn10300/i135409-2.d: Expected symbol table.
* ld-mn10300/i36434.d: Adjust expected disassembly.
2007-10-30 15:18:29 +00:00
Alan Modra
4534d6ccfc
daily update
2007-10-29 23:00:05 +00:00
Alan Modra
10e9477429
daily update
2007-10-28 23:00:04 +00:00
Alan Modra
abe97724f4
daily update
2007-10-27 23:00:05 +00:00
Alan Modra
35cd7f3544
daily update
2007-10-27 00:00:05 +00:00
Alan Modra
485ab6b48a
daily update
2007-10-26 00:00:06 +00:00
Pedro Alves
db86b2dce1
bfd/
...
* bfd-in.h (STRING_COMMA_LEN): Don't handle NULL STR case.
* bfd-in2.h: Regenerate.
ld/
* pe-dll.c (autofilter_symbollist_generic)
(autofilter_symbollist_i386, autofilter_liblist)
(autofilter_objlist, autofilter_symbolprefixlist)
(autofilter_symbolsuffixlist): Don't use STRING_COMMA_LEN with
NULL.
2007-10-25 21:01:55 +00:00
Daniel Jacobowitz
c6e653525f
* elf32-ppc.c (ppc_elf_merge_obj_attributes): Add support for
...
Tag_GNU_Power_ABI_Vector.
* readelf.c (display_power_gnu_attribute): Add support for
Tag_GNU_Power_ABI_Vector.
* ppc.h (Tag_GNU_Power_ABI_Vector): New.
* ld-powerpc/attr-gnu-8-1.s, ld-powerpc/attr-gnu-8-11.d,
ld-powerpc/attr-gnu-8-2.s, ld-powerpc/attr-gnu-8-23.d,
ld-powerpc/attr-gnu-8-3.s, ld-powerpc/attr-gnu-8-31.d: New.
* ld-powerpc/powerpc.exp: Run new tests.
2007-10-25 15:20:24 +00:00
Joseph Myers
7c8b76cc17
* elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Do not add
...
PT_NULL header when not linking.
2007-10-25 11:38:30 +00:00
Alan Modra
97753bd5d7
* elf.c (elfcore_grok_ppc_vmx): New function.
...
(elfcore_grok_note): Handle NT_PPC_VMX.
(elfcore_write_ppc_vmx): New function.
* elf-bfd.h (elfcore_write_ppc_vmx): Declare.
2007-10-25 00:40:34 +00:00
Alan Modra
62e1af1715
daily update
2007-10-25 00:00:04 +00:00
Alan Modra
dd32307890
* Makefile.am: Run "make dep-am".
...
* Makefile.in: Regenerate.
* po/SRC-POTFILES.in: Regenerate.
2007-10-24 04:54:38 +00:00
Alan Modra
2de39ffda3
daily update
2007-10-24 00:00:05 +00:00
Alan Modra
f94498ff0f
* elf64-ppc.c (ppc_build_one_stub): Don't duplicate relocs
...
emitted for ".brlt" entries.
(toc_adjusting_stub_needed): Don't treat ".fixup" specially here..
(ppc64_elf_next_input_section): ..instead do so here.
2007-10-23 12:54:17 +00:00
Alan Modra
5cab600649
daily update
2007-10-23 00:00:06 +00:00
Alan Modra
dd8de1a32e
daily update
2007-10-22 00:00:05 +00:00
Alan Modra
a190e9e3e6
daily update
2007-10-21 00:00:05 +00:00
Alan Modra
342dae88a7
daily update
2007-10-20 00:00:05 +00:00
Nick Clifton
bfff164249
Add MN10300 linker relaxation support for symbol differences
2007-10-19 17:31:31 +00:00
Nick Clifton
603b72571d
* elf-m10300.c: Convert to ISO C.
...
* tc-mn10300.c: Convert to ISO C.
2007-10-19 11:48:57 +00:00