Alan Modra
3dea8fca8b
* elf.c (elf_modify_segment_map): Add remove_empty_load param.
...
Don't remove empty PT_LOAD header if false.
(_bfd_elf_map_sections_to_segments): If user phdrs, pass false
to elf_modify_segment_map.
(assign_file_positions_for_load_sections): Pass false to
elf_modify_segment_map.
2007-08-13 00:44:20 +00:00
Alan Modra
ac2df442ac
bfd/
...
* elf64-ppc.c (ADDI_R12_R12, LD_R11_0R2, LD_R2_0R2): Define.
Update stub comments.
(build_plt_stub): Build two variants, one without "addis".
(ppc_build_one_stub): Build stubs without "addis" if possible.
(ppc_size_one_stub): Size new stubs.
ld/testsuite/
* ld-powerpc/relbrlt.s (.text.pad2): Adjust space.
* ld-powerpc/relbrlt.d: Update.
* ld-powerpc/tlsexe.d: Update.
* ld-powerpc/tlsexe.g: Update.
* ld-powerpc/tlsexe.r: Update.
* ld-powerpc/tlsexetoc.d: Update.
* ld-powerpc/tlsexetoc.g: Update.
* ld-powerpc/tlsexetoc.r: Update.
* ld-powerpc/tlsso.d: Update.
* ld-powerpc/tlsso.g: Update.
* ld-powerpc/tlsso.r: Update.
* ld-powerpc/tlstocso.d: Update.
* ld-powerpc/tlstocso.g: Update.
2007-08-13 00:20:59 +00:00
Alan Modra
d673094738
daily update
2007-08-13 00:00:05 +00:00
Alan Modra
f18b2e1bc4
daily update
2007-08-12 00:00:06 +00:00
Richard Sandiford
2f964f43a7
bfd/
...
* config.bfd (sh-*-vxworks): Define targ_underscore to "yes".
2007-08-11 17:31:23 +00:00
Alan Modra
124c70ca86
daily update
2007-08-11 00:00:06 +00:00
Alan Modra
470e0e5f84
daily update
2007-08-10 00:00:07 +00:00
Michael Snyder
6b8f0fd579
2007-08-09 Michael Snyder <msnyder@access-company.com>
...
* aoutx.h (aout_get_external_symbols): Return if count is zero.
2007-08-09 23:14:55 +00:00
H.J. Lu
6d33f2176c
2007-08-09 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/4909
* elf.c (print_segment_map): New function.
(assign_file_positions_for_load_sections): Call print_segment_map
when a section can't be allocated in segment.
2007-08-09 23:13:41 +00:00
Jan Kratochvil
c309eac207
* opncls.c (bfd_openr_iovec): Fix the OPEN parameter macro expansion.
2007-08-09 14:22:03 +00:00
Alan Modra
4969ffd9c9
daily update
2007-08-09 00:00:06 +00:00
Alan Modra
48219bd292
daily update
2007-08-08 00:00:06 +00:00
Nick Clifton
e6902efc9c
* po/bfd.pot: Updated template.
...
* po/BLD-POTFILES.in: Regenerate.
2007-08-07 11:01:42 +00:00
Alan Modra
817c2f79fd
daily update
2007-08-07 00:00:05 +00:00
Alan Modra
d5191d0cd4
* elf.c: (_bfd_elf_make_section_from_phdr): Properly handle
...
bss segments.
2007-08-06 22:53:27 +00:00
Daniel Jacobowitz
5eda1c47e4
* Makefile.am (BUILD_HFILES): Clean bfd_stdint.h.
...
* Makefile.in: Regenerated.
2007-08-06 20:53:29 +00:00
Daniel Jacobowitz
be118e79ae
* configure.in: Update version to 2.18.50.
...
* configure: Regenerated.
2007-08-06 20:13:48 +00:00
Daniel Jacobowitz
bd97cb95f8
2007-08-06 Paul Brook <paul@codesourcery.com>
...
* elf32-arm.c (elf32_arm_link_hash_entry): Add
plt_maybe_thumb_refcount.
(elf32_arm_link_hash_newfunc): Set plt_maybe_thumb_refcount.
(elf32_arm_copy_indirect_symbol): Ditto.
(elf32_arm_adjust_dynamic_symbol): Ditto.
(bfd_elf32_arm_process_before_allocation): Handle R_ARM_THM_JUMP24.
(arm_add_to_rel): Ditto.
(elf32_arm_final_link_relocate): Merge R_ARM_THM_JUMP24 with
R_ARM_THM_CALL. Handle R_ARM_THM_JUMP19 against a PLT stub.
(elf32_arm_gc_sweep_hook): Call check_use_blx. Update plt counts
for R_ARM_THM_JUMP24 and R_ARM_THM_JUMP19.
(elf32_arm_check_relocs): Update plt counts for R_ARM_THM_JUMP24
and R_ARM_THM_JUMP19.
(allocate_dynrelocs): Use plt_maybe_thumb_refcount.
(elf32_arm_finish_dynamic_symbol): Ditto.
(elf32_arm_output_plt_map): Ditto.
2007-08-06 18:47:21 +00:00
Daniel Jacobowitz
c981028a3f
* elf.c (rewrite_elf_program_header): Handle sections not sorted
...
by address.
(copy_elf_program_header): Likewise.
2007-08-06 18:35:18 +00:00
Alan Modra
6278344fb5
daily update
2007-08-06 00:00:05 +00:00
Alan Modra
ef18b5a26a
daily update
2007-08-05 00:00:06 +00:00
H.J. Lu
f7231afc19
2007-08-04 H.J. Lu <hongjiu.lu@intel.com>
...
* elf-bfd.h (xvec_get_elf_backend_data): Add const.
* elfcode.h (elf_object_p): Use xvec_get_elf_backend_data.
* elfcore.h (elf_core_file_p): Likewise.
2007-08-04 16:31:00 +00:00
Alan Modra
49ff476a98
daily update
2007-08-04 00:00:05 +00:00
Alan Modra
551a778a37
daily update
2007-08-03 00:00:04 +00:00
H.J. Lu
bd33be6e27
bfd/
...
2007-08-02 H.J. Lu <hongjiu.lu@intel.com>
* coffcode.h (ALIGN_SET): Removed.
(ELIFALIGN_SET): Likewise.
(coff_set_alignment_hook): Handle IMAGE_SCN_ALIGN_128BYTES,
IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_512BYTES,
IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN_ALIGN_2048BYTES,
IMAGE_SCN_ALIGN_4096BYTES and IMAGE_SCN_ALIGN_8192BYTES.
include/coff/
2007-08-02 H.J. Lu <hongjiu.lu@intel.com>
* pe.h (IMAGE_SCN_ALIGN_POWER_BIT_POS): New.
(IMAGE_SCN_ALIGN_POWER_BIT_MASK): Likewise.
(IMAGE_SCN_ALIGN_POWER_NUM): Likewise.
(IMAGE_SCN_ALIGN_POWER_CONST): Likewise.
(IMAGE_SCN_ALIGN_128BYTES): Likewise.
(IMAGE_SCN_ALIGN_256BYTES): Likewise.
(IMAGE_SCN_ALIGN_512BYTES): Likewise.
(IMAGE_SCN_ALIGN_1024BYTES): Likewise.
(IMAGE_SCN_ALIGN_2048BYTES): Likewise.
(IMAGE_SCN_ALIGN_4096BYTES): Likewise.
(IMAGE_SCN_ALIGN_8192BYTES): Likewise.
(IMAGE_SCN_ALIGN_1BYTES): Redefined with
IMAGE_SCN_ALIGN_POWER_CONST.
(IMAGE_SCN_ALIGN_2BYTES): Likewise.
(IMAGE_SCN_ALIGN_4BYTES): Likewise.
(IMAGE_SCN_ALIGN_8BYTES): Likewise.
(IMAGE_SCN_ALIGN_16BYTES): Likewise.
(IMAGE_SCN_ALIGN_32BYTES): Likewise.
(IMAGE_SCN_ALIGN_64BYTES): Likewise.
2007-08-02 16:02:01 +00:00
Alan Modra
b49412aab8
daily update
2007-08-02 00:00:05 +00:00
Michael Snyder
9b0ec667bc
2007-08-01 Michael Snyder <msnyder@access-company.com>
...
* vms-tir.c (new_section): Fix cut and paste error.
2007-08-01 20:06:05 +00:00
Michael Snyder
20c6e70e8d
2007-08-01 Michael Snyder <msnyder@access-company.com>
...
* aoutx.h (aout_link_add_symbols): Return if count is zero.
2007-08-01 19:58:40 +00:00
Michael Snyder
dcf6c77984
2007-08-01 Michael Snyder <msnyder@access-company.com>
...
* elf.c (bfd_elf_print_symbol): Macro dereferences pointer, so
pointer must be non-null.
2007-08-01 19:55:10 +00:00
Nick Clifton
e708816d5a
* coffcode.h (coff_sort_func_alent): New function.
...
(coff_slurp_line_table): Sort line table if not already sorted.
2007-08-01 16:55:54 +00:00
Jakub Jelinek
55b581a678
* elf.c (_bfd_elf_map_sections_to_segments): Work around buggy
...
GCC 3.4.x warning.
2007-08-01 08:57:23 +00:00
Alan Modra
ad756e3f9e
* aoutx.h (swap_ext_reloc_in): Set howto to NULL for unknown
...
r_type.
(swap_std_reloc_in): Likewise.
(aout_link_input_section_std): Likewise. Return with an error
on unexpected relocation type.
(aout_link_input_section_ext): Likewise.
2007-08-01 07:50:16 +00:00
Alan Modra
f6e688f76b
PR4694
...
* aoutx.h (final_link): Write a zero in first word of
stringtab if no symbols rather than corrupting last byte
of text/data.
2007-08-01 07:43:36 +00:00
Alan Modra
32d188a6f6
daily update
2007-08-01 00:00:06 +00:00
Jakub Jelinek
1c5265b57d
* elf.c (get_program_header_size): Adjacent loadable .note*
...
sections need just one PT_NOTE segment.
(_bfd_elf_map_sections_to_segments): Likewise.
2007-07-31 08:15:44 +00:00
Michael Snyder
9ee2139f60
2007-07-30 Michael Snyder <msnyder@access-company.com>
...
* coffgen.c (_bfd_coff_read_internal_relocs): Revert change of
2007-07-26. Buffer still in use, can't be freed.
2007-07-31 03:53:24 +00:00
Alan Modra
11fd5315ac
daily update
2007-07-31 00:00:06 +00:00
Alan Modra
16ba7cd086
daily update
2007-07-30 00:00:05 +00:00
Alan Modra
89916163cd
daily update
2007-07-29 00:00:06 +00:00
Alan Modra
888107e419
daily update
2007-07-28 00:00:05 +00:00
Michael Snyder
d63388ff70
2007-07-27 Michael Snyder <msnyder@access-company.com>
...
* cofflink.c (coff_link_add_symbols): Return if count is zero.
2007-07-27 22:04:23 +00:00
Michael Snyder
50a39e971e
2007-07-27 Michael Snyder <msnyder@access-company.com>
...
* coff-i386.c (coff_i386_rtype_to_howto): Off by one error.
2007-07-27 21:23:01 +00:00
Michael Snyder
87b3278031
2007-07-27 Michael Snyder <msnyder@access-company.com>
...
* aoutx.h (slurp_symbol_table): Return if count == 0.
2007-07-27 19:04:39 +00:00
Michael Snyder
9d7038d330
2007-07-27 Michael Snyder <msnyder@access-company.com>
...
* coffgen.c (_bfd_coff_read_internal_relocs): Return if count is zero.
2007-07-27 18:54:04 +00:00
Michael Snyder
c6aa130f78
2007-07-27 Michael Snyder <msnyder@access-company.com>
...
* elf32-i386.c (elf_i386_check_relocs): Check for null pointer.
2007-07-27 18:50:18 +00:00
H.J. Lu
170bfeb9d3
2007-07-27 H.J. Lu <hongjiu.lu@intel.com>
...
* config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
2007-07-27 13:26:44 +00:00
Michael Snyder
507f589808
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* coff-i386.c (coff_i386_rtype_to_howto): Guard against null.
2007-07-27 01:15:27 +00:00
Michael Snyder
a6626e8c30
2007-07-26 Michael Snyder <msnyder@svkmacdonelllnx>
...
* linker.c (bfd_section_already_linked_table_insert): Change
return type from void to boolean. Return FALSE on failure.
(_bfd_generic_section_already_linked): Test return value of
bfd_section_already_linked_table_insert, call fatal on error.
* elflink.c (_bfd_elf_section_already_linked): Test return value
of bfd_section_already_linked_table_insert, call fatal on error.
* libbfd-in.h (bfd_section_already_linked_table_insert): Update
return type to bfd_boolean.
* libbfd.h: Regenerate.
2007-07-27 01:04:29 +00:00
Adam Nemet
36e44abdc2
* archive.c (do_slurp_bsd_armap, do_slurp_coff_armap,
...
bfd_slurp_armap): Improve function comment.
2007-07-27 00:49:06 +00:00
Alan Modra
4ccbd2de24
daily update
2007-07-27 00:00:06 +00:00
Michael Snyder
5ba8816a2d
Fix bollixed check-in
2007-07-26 21:58:44 +00:00
Michael Snyder
2d4f3e92ff
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* linker.c (already_linked_newfunc): Check for NULL return from
bfd_hash_allocate.
2007-07-26 21:53:35 +00:00
Michael Snyder
ac38308c95
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* coffgen.c (fixup_symbol_value): Guard against null;
bfd_is_com_section will dereference the section pointer.
2007-07-26 19:06:12 +00:00
Michael Snyder
c82a7c57df
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* syms.c (bfd_decode_symclass): Guard against NULL, since
bfd_is_com_section dereferences the pointer.
2007-07-26 18:53:51 +00:00
Michael Snyder
3d7b34d85b
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* srec.c (srec_scan): Check for EOF (critical because return value
will be used as array index).
2007-07-26 18:45:13 +00:00
Michael Snyder
44c62d9e24
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* coffgen.c (_bfd_coff_read_internal_relocs): If internal_relocs
are not to be cached, free the temporary buffer.
2007-07-26 18:43:24 +00:00
Michael Snyder
078c4bfc87
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* aoutx.h (slurp_reloc_table): Return TRUE if reloc_size == zero
or count == zero.
2007-07-26 18:30:28 +00:00
Michael Snyder
814b5378b4
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* tekhex.c (first_phase): Check return value for null.
2007-07-26 18:18:07 +00:00
Michael Snyder
b7fd5ce17d
2007-07-26 Michael Snyder <msnyder@access-company.com>
...
* elf.c (_bfd_elf_get_synthetic_symtab): Remove meaningless
pointer increment.
2007-07-26 18:15:46 +00:00
Alan Modra
33774f084b
* elflink.c (_bfd_elf_fix_symbol_flags): Remove unnecessary
...
check on dynobj. Remove bed shadow.
2007-07-26 13:45:59 +00:00
Alan Modra
e62071b60e
* srec.c (srec_get_section_contents): Return immediately on
...
count zero. Check that offset and count are within section.
* libbfd.c (_bfd_generic_get_section_contents): Check that
offset + count does not overflow.
2007-07-26 12:34:43 +00:00
Alan Modra
b9da616afe
* srec.c (srec_canonicalize_symtab): Don't alloc when symcount
...
is zero. Correct return value on error.
* mmo.c (mmo_canonicalize_symtab): Likewise.
* binary.c (binary_canonicalize_symtab) Correct return on error.
2007-07-26 11:13:59 +00:00
Thiemo Seufer
c2c966314b
* bfd.c (_bfd_set_gp_value): Use abort instead of BFD_FAIL.
2007-07-26 11:05:23 +00:00
Alan Modra
d494715016
* reloc.c (bfd_generic_get_relocated_section_contents): Avoid
...
bfd_canonicalize_reloc call when bfd_get_reloc_upper_bound
says there are no relocs.
2007-07-26 09:37:13 +00:00
Nick Clifton
bd210d54db
Speed up bfd_dwarf2_find_line.
...
* dwarf2.c (struct dwarf2_debug): Add new fields to support function and variable info hash tables. Add last_comp_unit, info_hash_count, funcinfo_hash_table, varinfo_hash_table, hash_units_head.
(struct comp_unit): Add prev_unit, cached.
(struct info_list_node, struct info_hash_entry, struct info_hash_table): New.
(info_hash_table_newfunc, create_info_hash_table, insert_info_hash_table, lookup_info_hash_table): New functions implementing function and variable info hash tables.
(scan_unit_for_symbols): Add checks to make sure hash tables are consistent with compilation units.
(comp_unit_maybe_decode_line_info): New function.
(comp_unit_find_line): Use comp_unit_maybe_decode_line_info.
(reverse_funcinfo_list, reverse_varinfo_list, comp_unit_hash_info, info_hash_lookup_funcinfo, info_hash_lookup_varinfo, stash_maybe_update_info_hash_table, stash_verify_info_hash_table, stash_maybe_enable_info_hash_tables, stash_find_line_fast): New functions. Make use of info hash tables to speed up bfd_dwarf2_find_line.
(find_line): Use hash table for faster lookup if it is turned on.
Also add code to maintain bi-directional link in comp units.
2007-07-26 08:31:03 +00:00
Michael Snyder
353c55748a
2007-07-25 Michael Snyder <msnyder@access-company.com>
...
* coffgen.c (_bfd_coff_get_external_symbols): Nothing to be done
if size == 0; return and avoid possible null pointer issues.
2007-07-26 02:01:49 +00:00
Alan Modra
d429448cf8
daily update
2007-07-26 00:00:07 +00:00
Alan Modra
7124a847c2
daily update
2007-07-25 00:00:17 +00:00
Alan Modra
f08c429c32
warning fix
2007-07-24 23:38:13 +00:00
Michael Snyder
f6eea5aed8
2007-07-23 Michael Snyder <msnyder@access-company.com>
...
* opncls.c (bfd_make_writable): Check return from bfd_malloc.
2007-07-24 19:58:06 +00:00
Michael Snyder
d0f16d5ece
2007-07-24 Michael Snyder <msnyder@access-company.com>
...
* elflink.c (bfd_elf_final_link): Avoid redundant frees -- return
on bfd_malloc error rather than goto error_return.
2007-07-24 19:54:01 +00:00
Alan Modra
4d269e42e3
* elflink.c (_bfd_elf_link_just_syms, merge_sections_remove_hook,
...
_bfd_elf_merge_sections, _bfd_elf_link_hash_newfunc,
_bfd_elf_link_hash_copy_indirect, _bfd_elf_link_hash_hide_symbol,
_bfd_elf_link_hash_table_init, _bfd_elf_link_hash_table_create,
bfd_elf_set_dt_needed_name, bfd_elf_get_dyn_lib_class,
bfd_elf_set_dyn_lib_class, bfd_elf_get_needed_list,
bfd_elf_get_runpath_list, bfd_elf_get_dt_soname,
bfd_elf_get_bfd_needed_list, struct elf_symbuf_symbol,
struct elf_symbuf_head, struct elf_symbol, elf_sort_elf_symbol,
elf_sym_name_compare, elf_create_symbuf,
bfd_elf_match_symbols_in_sections,
_bfd_elf_match_sections_by_type): Move to here..
* elf.c: ..from here.
2007-07-24 08:09:20 +00:00
Alan Modra
685b3d2680
daily update
2007-07-24 00:00:06 +00:00
Richard Sandiford
a26587bab5
bfd/
...
* elflink.c (_bfd_elf_fix_symbol_flags): Only assert the type
of weakdef->root.type if weakdef has no regular definition.
ld/testsuite/
* ld-elf/weak-dyn-1a.s, ld-elf/weak-dyn-1b.s, ld-elf/weak-dyn-1.ld,
* ld-elf/weak-dyn-1.rd: New test.
* ld-elf/elf.exp: Run it.
2007-07-23 09:56:19 +00:00
Alan Modra
07a5aea53e
daily update
2007-07-23 00:00:06 +00:00
Adam Nemet
0e53d9daab
* elfxx-mips.c (struct mips_elf_link_hash_table): Add new field
...
small_data_overflow_reported.
(_bfd_mips_elf_link_hash_table_create): Initialize it.
(_bfd_mips_elf_relocate_section) <bfd_reloc_overflow>: Report
small-data section overflow.
2007-07-22 16:45:06 +00:00
Alan Modra
9516781d06
daily update
2007-07-22 00:00:05 +00:00
Alan Modra
8dcdf3b7aa
daily update
2007-07-21 00:00:05 +00:00
Alan Modra
dec4bb46b3
daily update
2007-07-20 00:00:07 +00:00
Nick Clifton
6b33789f61
PR binutils/4797
...
* dwarf2.c: (find_line) Do not dereference functionname_ptr if do_line is true.
2007-07-19 16:51:10 +00:00
Alan Modra
b93bc07744
daily update
2007-07-19 00:00:06 +00:00
Bob Wilson
13161072f2
* elf32-xtensa.c (xtensa_callback_required_dependence): Ignore
...
non-ELF sections.
2007-07-18 21:06:06 +00:00
Bob Wilson
e29297b73c
* elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section
...
vma and size for dynamic tags from the output sections.
2007-07-18 18:23:47 +00:00
Alan Modra
a5d1b3b53e
* elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx".
...
* elf.c (bfd_section_from_r_symndx): Don't cache bfd section of
symbol. Instead cache ELF section index. Remove redundant
checks of st_shndx.
2007-07-18 11:23:37 +00:00
Alan Modra
e6b368d89f
daily update
2007-07-18 00:00:05 +00:00
Alan Modra
bd4dd364df
daily update
2007-07-17 00:00:06 +00:00
Alan Modra
cbafdc0d90
daily update
2007-07-16 00:00:06 +00:00
Mike Frysinger
d955dada99
* trad-core.c (NBPG): If not defined, set to getpagesize().
2007-07-15 06:33:34 +00:00
Alan Modra
20ee575b1e
daily update
2007-07-15 00:00:06 +00:00
Alan Modra
c144990811
daily update
2007-07-14 00:00:06 +00:00
Roland McGrath
979dc3bca9
.
2007-07-13 10:44:44 +00:00
Roland McGrath
bfb53a4f5b
2007-07-13 Roland McGrath <roland@redhat.com>
...
* elf-bfd.h (struct elf_obj_tdata): Revert last change.
Add after_write_object_contents, after_write_object_contents_info.
* elf.c (_bfd_elf_write_object_contents): Revert last change.
Instead, call after_write_object_contents if set.
2007-07-13 10:44:12 +00:00
Alan Modra
44139f2d0c
daily update
2007-07-13 00:00:05 +00:00
Nick Clifton
d2df793a71
Add support for building on a 64-bit Windows host.
2007-07-12 07:16:41 +00:00
Alan Modra
2d9d480e3b
daily update
2007-07-12 00:00:06 +00:00
Alan Modra
5aa7ce4b0a
daily update
2007-07-11 00:00:06 +00:00
H.J. Lu
a3a4ddad29
2007-07-10 H.J. Lu <hongjiu.lu@intel.com>
...
* Makefile.in: Regenerated.
2007-07-10 15:03:03 +00:00
H.J. Lu
329b43c490
2007-07-10 H.J. Lu <hongjiu.lu@intel.com>
...
PR binutils/4756
* simple.c (bfd_simple_get_relocated_section_content): Don't
apply relocation on executable and shared library.
2007-07-10 13:49:04 +00:00
Nathan Sidwell
cfd2c77310
* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't eliminate
...
copy relocs on vxworks.
2007-07-10 07:42:30 +00:00
Alan Modra
1489a3a0d7
* elf32-arm.c (elf32_arm_size_info): Init checksum_contents field.
...
* elf64-alpha.c (alpha_elf_size_info): Likewise.
* elf64-hppa.c (hppa64_elf_size_info): Likewise.
* elf64-mips.c (mips_elf64_size_info): Likewise.
* elf64-s390.c (s390_elf64_size_info): Likewise.
* elf64-sparc.c (elf64_sparc_size_info): Likewise.
2007-07-10 04:08:12 +00:00
H.J. Lu
00cbee0aa8
2007-07-09 H.J. Lu <hongjiu.lu@intel.com>
...
* elflink.c (bfd_elf_record_link_assignment): Handle indirect
symbol.
(_bfd_elf_merge_symbol): Properly update normal symbol when
overriding the versioned symbol from a dynamic library.
2007-07-10 02:40:31 +00:00
Alan Modra
e93cb65d42
daily update
2007-07-10 00:00:05 +00:00
Roland McGrath
fd2f25da9b
.
2007-07-09 21:25:39 +00:00
Roland McGrath
ff59fc360e
2007-07-09 Roland McGrath <roland@redhat.com>
...
* elf-bfd.h (struct elf_obj_tdata): Add members
emit_note_gnu_build_id and note_gnu_build_id_sec.
* elf.c (_bfd_id_note_section_size): New global function.
(read_hex, _bfd_elf_write_build_id_section): New static functions.
(_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
if emit_note_gnu_build_id is set.
* Makefile.am (elf.lo): Update dependencies.
2007-07-09 21:23:43 +00:00
Roland McGrath
20a761b5e9
2007-07-09 Roland McGrath <roland@redhat.com>
...
* elf-bfd.h (struct elf_obj_tdata): Add members
emit_note_gnu_build_id and note_gnu_build_id_sec.
* elf.c (_bfd_id_note_section_size): New global function.
(read_hex, _bfd_elf_write_build_id_section): New static functions.
(_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
if emit_note_gnu_build_id is set.
* Makefile.am (elf.lo): Update dependencies.
* elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
(bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
* elfcode.h (elf_checksum_contents): New macro and function.
(NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
2007-07-09 21:23:39 +00:00
Roland McGrath
d94838b102
2007-07-09 Roland McGrath <roland@redhat.com>
...
* elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
(bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
* elfcode.h (elf_checksum_contents): New macro and function.
(NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
2007-07-09 21:23:37 +00:00
Alan Modra
049c3c6b72
daily update
2007-07-09 00:00:06 +00:00
Alan Modra
5da62ef0e8
daily update
2007-07-08 00:00:06 +00:00
Alan Modra
489cadc25a
daily update
2007-07-07 00:00:06 +00:00
Alan Modra
9af2a943ee
* elflink.c (elf_link_add_object_symbols): Return via
...
error_free_vers on "notice" failure.
2007-07-06 02:29:10 +00:00
Alan Modra
e3bb9257f6
daily update
2007-07-06 00:00:05 +00:00
H.J. Lu
a93221e521
2007-07-04 H.J. Lu <hongjiu.lu@intel.com>
...
* peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
if arch is unknown.
2007-07-05 02:50:02 +00:00
Alan Modra
004082e09a
daily update
2007-07-05 00:00:06 +00:00
Nick Clifton
b49281938d
* elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly compensate
...
for high bit set in R_MEP_LOW16.
2007-07-04 14:23:22 +00:00
Alan Modra
51afcce0d3
daily update
2007-07-04 00:00:05 +00:00
Joseph Myers
3cfad14c4a
bfd:
...
* elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
input attributes if value has been copied.
ld/testsuite:
* ld-arm/attr-merge-2a.s, ld-arm/attr-merge-2b.s,
ld-arm/attr-merge-2.attr: New.
* ld-arm/arm-elf.exp (armelftests): Add new test.
2007-07-03 15:21:30 +00:00
Nick Clifton
cd123cb70c
Switch sources over to use the GPL version 3
2007-07-03 14:26:43 +00:00
Alan Modra
6e29ef6d28
daily update
2007-07-03 00:00:05 +00:00
Joseph Myers
741d6ea85b
bfd:
...
* elfxx-mips.c (mips_elf_calculate_relocation): Handle
R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
* elf64-mips.c (mips_elf64_howto_table_rela): Support
R_MIPS_TLS_DTPREL64.
gas:
* config/tc-mips.c (s_dtprelword, s_dtpreldword,
s_dtprel_internal): New.
(mips_pseudo_table): Add .dtprelword and .dtpreldword.
(md_apply_fix): Handle BFD_RELOC_MIPS_TLS_DTPREL32 and
BFD_RELOC_MIPS_TLS_DTPREL64.
2007-07-02 10:49:42 +00:00
Alan Modra
ae351704e2
Regenerate files.
2007-07-02 07:12:53 +00:00
Alan Modra
3e5484dbb9
* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
...
symsec != NULL tests.
2007-07-02 06:51:57 +00:00
Alan Modra
08a40648e5
PR 4712
...
* elf.c (assign_file_positions_for_load_sections): Adjust lma
by p_vaddr_offset.
2007-07-02 06:47:43 +00:00
Alan Modra
3adf154903
daily update
2007-07-02 00:00:06 +00:00
Alan Modra
89526cc00d
daily update
2007-07-01 00:00:04 +00:00
H.J. Lu
86b57e315d
bfd/
...
2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
* aclocal.m4: Regenerated.
* Makefile.in: Likewise.
bfd/doc/
2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
* Makefile.in: Likewise.
binutils/
2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
* aclocal.m4: Regenerated.
* doc/Makefile.in: Likewise.
* Makefile.in: Likewise.
gas/
2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
* aclocal.m4: Regenerated.
* doc/Makefile.in: Likewise.
* Makefile.in: Likewise.
gprof/
2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
* aclocal.m4: Regenerated.
* Makefile.in: Likewise.
ld/
2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
* aclocal.m4: Regenerated.
* Makefile.in: Likewise.
opcodes/
2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
* aclocal.m4: Regenerated.
* Makefile.in: Likewise.
2007-06-30 17:21:16 +00:00
Joseph Myers
34c8bcbae2
bfd:
...
* elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
(ppc_elf_merge_private_bfd_data): Call it.
binutils:
* readelf.c (display_power_gnu_attribute, process_power_specific):
New.
(process_arch_specific): Call process_power_specific.
include/elf:
* ppc.h (Tag_GNU_Power_ABI_FP): Define.
ld/testsuite:
* ld-powerpc/attr-gnu-4-0.s, ld-powerpc/attr-gnu-4-00.d,
ld-powerpc/attr-gnu-4-01.d, ld-powerpc/attr-gnu-4-02.d,
ld-powerpc/attr-gnu-4-1.s, ld-powerpc/attr-gnu-4-10.d,
ld-powerpc/attr-gnu-4-11.d, ld-powerpc/attr-gnu-4-12.d,
ld-powerpc/attr-gnu-4-13.d, ld-powerpc/attr-gnu-4-2.s,
ld-powerpc/attr-gnu-4-20.d, ld-powerpc/attr-gnu-4-21.d,
ld-powerpc/attr-gnu-4-22.d, ld-powerpc/attr-gnu-4-3.s,
ld-powerpc/attr-gnu-4-31.d: New.
* ld-powerpc/powerpc.exp: Run these new tests.
2007-06-30 00:03:40 +00:00
Alan Modra
89ebe69733
daily update
2007-06-30 00:00:05 +00:00
Joseph Myers
2cf19d5cb9
bfd:
...
* elfxx-mips.c (mips_elf_merge_obj_attributes): New.
(_bfd_mips_elf_merge_private_bfd_data): Call it.
binutils:
* readelf.c (display_mips_gnu_attribute): New.
(process_mips_specific): Call process_attributes.
include/elf:
* mips.h (Tag_GNU_MIPS_ABI_FP): Define.
ld/testsuite:
* ld-mips-elf/attr-gnu-4-0.s, ld-mips-elf/attr-gnu-4-00.d,
ld-mips-elf/attr-gnu-4-01.d, ld-mips-elf/attr-gnu-4-02.d,
ld-mips-elf/attr-gnu-4-03.d, ld-mips-elf/attr-gnu-4-1.s,
ld-mips-elf/attr-gnu-4-10.d, ld-mips-elf/attr-gnu-4-11.d,
ld-mips-elf/attr-gnu-4-12.d, ld-mips-elf/attr-gnu-4-13.d,
ld-mips-elf/attr-gnu-4-14.d, ld-mips-elf/attr-gnu-4-2.s,
ld-mips-elf/attr-gnu-4-20.d, ld-mips-elf/attr-gnu-4-21.d,
ld-mips-elf/attr-gnu-4-22.d, ld-mips-elf/attr-gnu-4-23.d,
ld-mips-elf/attr-gnu-4-3.s, ld-mips-elf/attr-gnu-4-30.d,
ld-mips-elf/attr-gnu-4-31.d, ld-mips-elf/attr-gnu-4-32.d,
ld-mips-elf/attr-gnu-4-33.d, ld-mips-elf/attr-gnu-4-4.s,
ld-mips-elf/attr-gnu-4-41.d: New.
* ld-mips-elf/mips-elf.exp: Run these new tests.
2007-06-29 16:41:32 +00:00
Joseph Myers
104d59d19c
bfd:
...
* elf-attrs.c: New.
* Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
(BFD32_BACKENDS_CFILES): Add elf-attrs.c.
(elf-attrs.lo): Generate dependencies.
* Makefile.in: Regenerate.
* configure.in (elf): Add elf-attrs.lo.
* configure: Regenerate.
* elf-bfd.h (struct elf_backend_data): Add entries for object
attributes.
(NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
New.
(struct elf_obj_tdata): Add entries for object attributes.
(elf_known_obj_attributes, elf_other_obj_attributes,
elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
New.
(bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
_bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
_bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
* elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
(bfd_section_from_shdr): Handle attributes sections.
* elflink.c (bfd_elf_final_link): Handle attributes sections.
* elfxx-target.h (elf_backend_obj_attrs_vendor,
elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
elf_backend_obj_attrs_section_type): New.
(elfNN_bed): Update.
* elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
aeabi_attribute_list): Remove.
(struct elf32_arm_obj_tdata): Remove object attributes fields.
(check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
Update for new object attributes interfaces.
(uleb128_size, is_default_attr, eabi_attr_size,
elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
elf32_arm_add_eabi_attr_int, attr_strdup,
elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
copy_eabi_attributes, elf32_arm_parse_attributes): Remove. Moved
to generic code in elf-attrs.c.
(elf32_arm_obj_attrs_arg_type): New.
(elf32_arm_fake_sections): Do not handle .ARM.attributes.
(elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
(bfd_elf32_bfd_final_link): Remove.
(elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
elf_backend_obj_attrs_arg_type,
elf_backend_obj_attrs_section_type): New.
* elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
attributes.
* elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
* elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
* elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
* elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
* elf32-sh.c (sh_elf_copy_private_data): Likewise.
* elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.
binutils:
* readelf.c (display_gnu_attribute): New.
(process_arm_specific): Rearrange as process_attributes.
(process_arm_specific): Replace by wrapper of process_attributes.
gas:
* as.c (create_obj_attrs_section): New.
(main): Call create_obj_attrs_section for ELF.
* read.c (s_gnu_attribute, skip_whitespace, skip_past_char,
skip_past_comma, s_vendor_attribute): New.
(potable): Add gnu_attribute for ELF.
* read.h (s_vendor_attribute): Declare.
* config/tc-arm.c (s_arm_eabi_attribute): Replace by wrapper
round s_vendor_attribute.
(aeabi_set_public_attributes): Update for new attributes
interfaces.
(arm_md_end): Remove attributes contents setting now done
generically.
include/elf:
* arm.h (elf32_arm_add_eabi_attr_int,
elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
elf32_arm_get_eabi_attr_int, elf32_arm_set_eabi_attr_contents,
elf32_arm_eabi_attr_size, Tag_NULL, Tag_File, Tag_Section,
Tag_Symbol, Tag_compatibility): Remove.
* common.h (SHT_GNU_ATTRIBUTES): Define.
ld:
* emulparams/armelf.sh (OTHER_SECTIONS): Remove .ARM.attributes.
(ATTRS_SECTIONS): Define.
* scripttempl/elf.sc, scripttempl/elf32sh-symbian.sc,
scripttempl/elf_chaos.sc, scripttempl/elfi370.sc,
scripttempl/elfxtensa.sc: Handle ATTRS_SECTIONS.
2007-06-29 16:29:17 +00:00
Paul Brook
5ab7998193
2007-06-29 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
call veneers for call relocations against undefined symbols.
(elf32_arm_final_link_relocate): Turn call to undefined symbol
into a jump to the next instruction.
ld/testuite/
* ld-arm/arm-elf.exp (armelftests): Add callweak.
* ld-arm/callweak.d: New test.
* ld-arm/callweak.s: New test.
2007-06-29 15:05:47 +00:00
Nick Clifton
32e8a950c4
* bfd.c (bfd_demangle): Plug memory leak (Coverity).
2007-06-29 14:36:21 +00:00
Nick Clifton
3d3d428f04
New port: National Semiconductor's CR16
2007-06-29 14:09:34 +00:00
Alan Modra
c55fe0967e
* elflink.c (_bfd_elf_link_assign_sym_version): Improve error
...
message for undefined version nodes.
(elf_gc_sweep): Don't warn when zero size sections are
removed.
2007-06-29 02:09:42 +00:00
Alan Modra
375de94a5e
* elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
...
types.
2007-06-29 01:51:55 +00:00
Alan Modra
7d3287cb71
* elf32-spu.c (spu_elf_fake_sections): New function.
...
(elf_backend_fake_sections): Define.
2007-06-29 01:39:54 +00:00
H.J. Lu
36fc76aebb
Mention PR ld/4701.
2007-06-29 01:22:40 +00:00
Alan Modra
6a3cd2b4ed
* elf.c (assign_file_positions_for_load_sections): Use elf
...
section header sh_size rather than bfd section size, simplifying
.tbss handling.
2007-06-29 01:21:08 +00:00
Alan Modra
bf988460f1
* elf.c (assign_file_positions_for_load_sections): Ensure bss
...
segments meet gABI alignment requirements. Don't allocate
file space for bss sections in a segment also containing file
or program headers.
2007-06-29 01:12:52 +00:00
Alan Modra
0f504e0094
daily update
2007-06-29 00:00:05 +00:00
Alan Modra
fe0a07a117
daily update
2007-06-28 00:00:05 +00:00
Alan Modra
cc481421d0
bfd/
...
* bfd.c (struct bfd): Rename "next" to "archive_next".
* archive.c: Rename uses throughout file.
* archive64.c: Likewise.
* coff-rs6000.c: Likewise.
* ecoff.c: Likewise.
* som.c: Likewise.
* bfd-in2.h: Regenerate.
binutils/
* ar.c: Rename uses of bfd.next to bfd.archive_next throughout.
* arsup.c: Likewise.
* binemul.c: Likewise.
* objcopy.c: Likewise.
* dlltool.c: Likewise.
ld/
* pe-dll.c: Rename uses of bfd.next to bfd.archive_next throughout.
2007-06-27 11:54:10 +00:00
Alan Modra
58eb693ef1
* elf32-spu.c (spu_elf_create_sections): Properly iterate over
...
input bfds.
2007-06-27 07:12:54 +00:00
Alan Modra
60b31e8d17
* elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
...
input bfds.
2007-06-27 06:42:14 +00:00
Alan Modra
bd30bda7eb
daily update
2007-06-27 00:00:05 +00:00
Nick Clifton
bec42b1574
* dwarf2.c (find_line): New. Contains the duplicated code from:
...
(_bfd_dwarf2_find_nearest_line): Use it.
(_bfd_dwarf2_find_line): Use it.
2007-06-26 14:28:13 +00:00
Joseph Myers
3d3e6f9a7c
bfd:
...
* elf32-arm.c (copy_eabi_attributes): Copy type of attributes.
ld/testsuite:
* ld-arm/attr-merge.s, ld-arm/attr-merge.attr: New.
* ld-arm/arm-elf.exp (armelftests): Add new test.
2007-06-26 13:55:04 +00:00
Alan Modra
5bbffd3d1d
daily update
2007-06-26 00:00:05 +00:00
Richard Sandiford
b314ec0eae
bfd/
...
* elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
to be used for calls from MIPS16 code.
gas/
* config/tc-mips.h (TC_SYMFIELD_TYPE): New.
* config/tc-mips.c (append_insn): Record which symbols have
R_MIPS16_26 relocations against them.
(mips_fix_adjustable): Don't reduce relocations against such symbols.
ld/testsuite/
* ld-mips-elf/mips16-local-stubs-1.s,
* ld-mips-elf/mips16-local-stubs-1.d: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
2007-06-25 10:13:57 +00:00
Alan Modra
10efce5dc8
daily update
2007-06-25 00:00:06 +00:00
Alan Modra
fa1de3c9b5
daily update
2007-06-24 00:00:05 +00:00