Alan Modra
e79f59555a
* elf32-ppc.c (ppc_elf_finish_dynamic_sections): Handle vxworks
...
_GLOBAL_OFFSET_TABLE_ in .got.plt section. Add BFD_ASSERTs.
2008-09-19 09:51:32 +00:00
Alan Modra
2a403edaa8
daily update
2008-09-19 00:00:05 +00:00
Bob Wilson
b45329f94a
* elf32-xtensa.c (elf_xtensa_check_relocs): Check for negative refcount.
2008-09-18 00:37:47 +00:00
Alan Modra
bf43e54522
daily update
2008-09-18 00:00:05 +00:00
Jan Kratochvil
2a7b2e88e3
bfd/
...
PR 6893 - Do not consider FDEs for discarded sections as invalid.
* elf-eh-frame.c (_bfd_elf_parse_eh_frame): New REQUIRE_CLEARED_RELOCS.
Consider FDEs with cleared relocations as valid and ignorable.
ld/testsuite/
* ld-elf/eh-group.exp, ld-elf/eh-group1.s, ld-elf/eh-group2.s: New test.
binutils/
Suppress warnings on NONE relocations to discarded sections.
* readelf.c (is_none_reloc): New function.
(debug_apply_relocations): Ignore is_none_reloc() relocations.
2008-09-17 07:50:29 +00:00
Alan Modra
1c4a0acdd3
daily update
2008-09-17 00:00:05 +00:00
H.J. Lu
0a36a439ee
bfd/
...
2008-09-16 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6877
* elflink.c (_bfd_elf_merge_symbol): Allow a common symbol to
override the function in a shared library.
ld/testsuite/
2008-09-16 H.J. Lu <hongjiu.lu@intel.com>
PR ld/6877
* ld-elf/comm1.c: New.
* ld-elf/func1.c: Likewise.
* ld-elf/shared.exp: Add tests for libfunc1.so and comm1.
2008-09-16 14:09:34 +00:00
Alan Modra
e87d403811
PR 6844
...
* elf32-ppc.c (SYM_VAL): Define. Use throughout to find symbol vma.
(ppc_elf_relocate_section): Correct GOT offset calculation.
(ppc_elf_finish_dynamic_symbol): Use PPC_HA and PPC_LO.
(ppc_elf_finish_dynamic_sections): Likewise. Error if
htab->elf.hgot symbol is not defined in htab->got section.
2008-09-16 13:43:36 +00:00
Alan Modra
d02dc88c3d
daily update
2008-09-16 00:00:05 +00:00
Alan Modra
3b4f3a113f
PR 6888
...
* elf32-ppc.c (ppc_elf_relocate_section): Handle NULL symbol section
on R_PPC_TOC16, R_PPC_SDAREL16, R_PPC_EMB_SDA2REL, R_PPC_EMB_SDA21,
R_PPC_EMB_RELSDA, R_PPC_SECTOFF* relocs.
2008-09-15 23:41:55 +00:00
Alan Modra
c63c8ecb3c
daily update
2008-09-15 00:00:06 +00:00
Alan Modra
aae9ff7f49
daily update
2008-09-14 00:00:05 +00:00
Alan Modra
34a05b3e01
daily update
2008-09-13 00:00:05 +00:00
Alan Modra
d140ac6b03
daily update
2008-09-12 00:00:05 +00:00
Jan Kratochvil
d053aef827
bfd/
...
Fix loading large elf64 binaries on 32bit hosts.
* configure.in: Call AC_SYS_LARGEFILE.
* config.in: Regenerate.
* configure: Regenerate.
binutils/
Fix loading large elf64 binaries on 32bit hosts.
* configure.in: Call AC_SYS_LARGEFILE.
* config.in: Regenerate.
* configure: Regenerate.
gas/
* configure.in: Call AC_SYS_LARGEFILE.
* config.in: Regenerate.
* configure: Regenerate.
gprof/
* configure.in: Call AC_SYS_LARGEFILE.
* gconfig.in: Regenerate.
* configure: Regenerate.
ld/
* configure.in: Call AC_SYS_LARGEFILE.
* config.in: Regenerate.
* configure: Regenerate.
libiberty/
* configure.in: Call AC_SYS_LARGEFILE.
* config.in: Regenerate.
* configure: Regenerate.
2008-09-11 19:02:04 +00:00
Alan Modra
db6e5d65fa
daily update
2008-09-11 00:00:06 +00:00
Alan Modra
07bbff8fcf
daily update
2008-09-10 00:00:05 +00:00
Tom Tromey
502e814e6e
* elfxx-mips.c (mips16_stub_symndx) <sec>: Mark argument as
...
unused.
2008-09-09 03:17:13 +00:00
Alan Modra
cc19d45962
daily update
2008-09-09 00:00:05 +00:00
Daniel Jacobowitz
5609a71e68
PR ld/3191
...
* dwarf2.c (struct adjusted_section): Renamed from struct
loadable_section.
(struct dwarf2_debug): Adjust for renaming. Add version field.
(read_attribute_value): Correctly handle DW_FORM_ref_addr for
DWARF3.
(find_abstract_instance_name): Pass a pointer to
attribute instead of offset. For DW_FORM_ref_addr, get the
entry at the offset from the .debug_info section.
(scan_unit_for_symbols): Update.
(parse_comp_unit): Allow DWARF3. Save the version.
(unset_sections): Update for renaming.
(place_sections): Likewise. Set new VMAs for DWARF sections
also.
2008-09-08 21:58:29 +00:00
Tristan Gingold
96497422d6
2008-09-08 Tristan Gingold <gingold@adacore.com>
...
* configure.in: Update version to 2.19.50
* configure: Regenerated.
2008-09-08 12:55:19 +00:00
Alan Modra
449373d9d0
daily update
2008-09-08 00:00:06 +00:00
Alan Modra
6e27dbe836
daily update
2008-09-07 00:00:05 +00:00
Alan Modra
a0057aa056
daily update
2008-09-06 00:00:05 +00:00
Daniel Jacobowitz
9e32b19ffe
Fix last commit.
2008-09-05 17:55:07 +00:00
Daniel Jacobowitz
2d47a72cd5
* dwarf2.c: Change leading whitespace to tabs.
2008-09-05 17:48:08 +00:00
Tristan Gingold
1e8a024a6b
2008-09-05 Tristan Gingold <gingold@adacore.com>
...
Add MacOSX 64 bits support.
* mach-o.h (bfd_mach_o_ppc_thread_flavour): Add
BFD_MACH_O_PPC_THREAD_STATE_64.
(bfd_mach_o_i386_thread_flavour): Add BFD_MACH_O_x86_THREAD_STATE64,
BFD_MACH_O_x86_FLOAT_STATE64, BFD_MACH_O_x86_EXCEPTION_STATE64,
BFD_MACH_O_x86_THREAD_STATE, BFD_MACH_O_x86_FLOAT_STATE,
BFD_MACH_O_x86_EXCEPTION_STATE.
(bfd_mach_o_load_command_type): Add
BFD_MACH_O_LC_SEGMENT_64, BFD_MACH_O_LC_ROUTINES_64,
BFD_MACH_O_LC_UUID.
(BFD_MACH_O_CPU_IS64BIT): Added.
(bfd_mach_o_cpu_type): Add BFD_MACH_O_CPU_TYPE_POWERPC_64,
BFD_MACH_O_CPU_TYPE_X86_64.
(bfd_mach_o_header): Add version field.
(bfd_mach_o_section) Add reserved3 field.
(bfd_mach_o_segment_command): Add initprot and maxprot fields.
* mach-o.c (N_TEXT, N_DATA, N_BSS): Added.
(bfd_mach_o_version): New function.
(bfd_mach_o_valid): Handle 64bits cpus.
(bfd_mach_o_write_header): handler 64bits headers.
(bfd_mach_o_scan_write_section_32, bfd_mach_o_scan_write_section_64):
New functions (from bfd_mach_o_scan_write_section) to handle both
flavors.
(bfd_mach_o_scan_write_segment): Parameter wide added to support
both flavors.
(bfd_mach_o_write_contents): Support both flavors.
(bfd_mach_o_read_header): Ditto.
(bfd_mach_o_scan_read_section_32, bfd_mach_o_scan_read_section_64):
New functions (from bfd_mach_o_scan_read_section) to support both
flavors.
(bfd_mach_o_scan_read_symtab_symbol): Support both flavors.
(bfd_mach_o_scan_read_symtab): Ditto.
(bfd_mach_o_scan_read_segment): Parameter wide added to support
both flavors.
(bfd_mach_o_scan_read_segment_32, bfd_mach_o_scan_read_segment_64):
New functions to call bfd_mach_o_scan_read_segment.
(bfd_mach_o_flatten_sections): Support both flavors.
(bfd_mach_o_scan_start_address): Ditto.
(bfd_mach_o_scan): Ditto.
(bfd_mach_o_lookup_section): Ditto.
2008-09-05 08:07:54 +00:00
Alan Modra
cf7af6f7e2
daily update
2008-09-05 00:00:06 +00:00
Alan Modra
b8b8da908d
daily update
2008-09-04 00:00:06 +00:00
Alan Modra
a1a92630f9
daily update
2008-09-03 00:00:05 +00:00
Alan Modra
0150ecb5c0
daily update
2008-09-02 00:00:06 +00:00
Alan Modra
70296270a4
daily update
2008-09-01 00:00:06 +00:00
Alan Modra
b79326b5de
daily update
2008-08-31 00:00:06 +00:00
Alan Modra
4dc1b553ac
daily update
2008-08-30 00:05:55 +00:00
Dave Anglin
6bba1048d6
* elf-hppa.h (elf_hppa_reloc_final_type): Handle R_PARISC_GPREL64,
...
R_PARISC_SEGREL32 and R_PARISC_SEGREL64.
* som.c (som_fixup_formats): Add R_DATA_GPREL fixup.
(som_hppa_howto_table): Likewise.
(hppa_som_gen_reloc_type): In case R_HPPA_GOTOFF, detect R_DATA_GPREL
final type.
(som_write_fixups): Handle R_DATA_GPREL.
* config/tc-hppa.c (is_SB_relative): New macro.
(fix_new_hppa): Remove $segrel$ marker.
(cons_fix_new_hppa): Set reloc type R_PARISC_SEGREL32 if expression is
segment relative.
* config/tc-hppa.h (tc_frob_symbol): Check for $segrel$.
2008-08-28 02:33:45 +00:00
Alan Modra
ae72b420a0
daily update
2008-08-27 00:00:06 +00:00
Nick Clifton
fcef9eb7bc
* elf32-arm.c: Fix up comment describing Thumb to ARM interworking
...
stub.
2008-08-26 14:40:18 +00:00
Nick Clifton
c820be077e
bfd/
...
* elf32-arm.c (arm_thumb_arm_v4t_short_branch_stub): Define.
(elf32_arm_stub_type): Add arm_thumb_arm_v4t_stub_short_branch.
(arm_type_of_stub): Handle armv4t short branches. Update
prototype.
(arm_stub_is_thumb): Handle arm_thumb_arm_v4t_stub_short_branch.
(arm_build_one_stub): Likewise.
(arm_size_one_stub): Likewise.
(elf32_arm_size_stubs): Use new arm_type_of_stub prototype.
(arm_map_one_stub): Handle arm_thumb_arm_v4t_stub_short_branch.
ld/testsuite/
* ld-arm/arm-elf.exp: Add farcall-thumb-arm-short test.
* ld-arm/farcall-group2.s: Fix comment.
* ld-arm/farcall-thumb-arm-short.d: New test.
* ld-arm/farcall-thumb-arm-short.s: New test.
2008-08-26 11:46:41 +00:00
Alan Modra
267a00c3ce
daily update
2008-08-26 00:00:05 +00:00
Alan Modra
4b3a2bf238
daily update
2008-08-25 00:00:05 +00:00
Andreas Schwab
9c47c4c178
(_bfd_elf_write_section_eh_frame): Do proper
...
extension when calculating difference of offsets.
2008-08-24 21:43:00 +00:00
Alan Modra
50fbf7fec2
* Makefile.am (chew.o): Delete rule.
...
($(MKDOC)): Move options before C file.
* Makefile.in: Regenerate.
2008-08-24 03:57:28 +00:00
Alan Modra
da594c4a29
Update a number of obsolete autoconf macros.
2008-08-24 03:13:05 +00:00
Alan Modra
f27f411ae7
daily update
2008-08-24 00:00:06 +00:00
Andreas Schwab
91910cddf1
(find_separate_debug_file): Use the canonical
...
absolute name of the bfd object for finding the debug file in
the global debugfile directory.
2008-08-23 08:08:58 +00:00
Alan Modra
eb38fc9dc9
daily update
2008-08-23 00:00:14 +00:00
Jan Kratochvil
b2064611d4
bfd/
...
Fix PR ld/3290 regression for cross-files DW_FORM_ref_addr relocations.
* elflink.c (elf_link_add_object_symbols): Make debug symbols local
now only for non-RELOCATABLE targets.
ld/testsuite/
* ld-x86-64/dwarfreloc.exp, ld-x86-64/dwarfreloc.rd,
ld-x86-64/dwarfreloc1.s, ld-x86-64/dwarfreloc2.s: New test.
2008-08-22 08:32:40 +00:00
Alan Modra
c427de38f1
daily update
2008-08-22 00:00:05 +00:00
Alan Modra
655e852974
daily update
2008-08-21 00:00:11 +00:00
Bob Wilson
28dbbc0203
2008-08-20 Bob Wilson <bob.wilson@acm.org>
...
bfd/
* elf-bfd.h (elf_object_id): Add XTENSA_ELF_TDATA.
* elf32-xtensa.c (elf_howto_table): Add TLS relocations.
(elf_xtensa_reloc_type_lookup): Likewise.
(TCB_SIZE): Define.
(elf_xtensa_link_hash_entry): New.
(GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD, GOT_TLS_IE, GOT_TLS_ANY): Define.
(elf_xtensa_hash_entry): Define.
(elf_xtensa_obj_tdata): New.
(elf_xtensa_tdata): Define.
(elf_xtensa_local_got_tls_type): Define.
(elf_xtensa_local_tlsfunc_refcounts): Define.
(is_xtensa_elf): Define.
(elf_xtensa_mkobject): New.
(elf_xtensa_link_hash_table): Add tlsbase field.
(elf_xtensa_link_hash_newfunc): New.
(elf_xtensa_link_hash_table_create): Use elf_xtensa_link_hash_newfunc.
Create an entry for "_TLS_MODULE_BASE_" and save it in tlsbase field.
(elf_xtensa_copy_indirect_symbol): New.
(elf_xtensa_check_relocs): Rewrite to handle TLS relocations.
(elf_xtensa_gc_sweep_hook): Likewise.
(elf_xtensa_allocate_dynrelocs): Optimize away GOT entries for
TLSDESC_FN relocations when an IE reference is seen.
(elf_xtensa_allocate_local_got_size): Likewise.
(elf_xtensa_always_size_sections): New.
(dtpoff_base, tpoff): New.
(elf_xtensa_do_reloc): Handle TLS relocations.
(replace_tls_insn): New.
(IS_XTENSA_TLS_RELOC): Define.
(elf_xtensa_relocate_section): Handle TLS relocations.
(get_indirect_call_dest_reg): New.
(bfd_elf32_mkobject): Define.
(elf_backend_always_size_sections): New.
(elf_backend_copy_indirect_symbol): New.
* reloc.c (BFD_RELOC_XTENSA_TLSDESC_FN, BFD_RELOC_XTENSA_TLSDESC_ARG)
(BFD_RELOC_XTENSA_TLS_DTPOFF, BFD_RELOC_XTENSA_TLS_TPOFF)
(BFD_RELOC_XTENSA_TLS_FUNC, BFD_RELOC_XTENSA_TLS_ARG)
(BFD_RELOC_XTENSA_TLS_CALL): New.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
gas/
* config/tc-xtensa.c (O_tlsfunc, O_tlsarg, O_tlscall): Define.
(O_tpoff, O_dtpoff): Define.
(suffix_relocs): Add entries for TLS suffixes.
(xtensa_elf_cons): Check for invalid use of TLS relocations.
(map_operator_to_reloc): Add is_literal parameter and use it to
control translating TLS instruction relocations to the corresponding
literal relocations.
(xg_valid_literal_expression): Allow TLS operators.
(xg_build_to_insn): Copy TLS operators from pseudo-instruction
operands to generated literals.
(xg_assemble_literal): Handle TLS operators. Update call to
map_operator_to_reloc.
(md_assemble): Handle CALLXn.TLS pseudo-instruction.
(md_apply_fix): Handle TLS relocations.
(emit_single_op): Handle TLS operators.
(convert_frag_immed): Update call to map_operator_to_reloc.
(vinsn_to_insnbuf): Emit relocations for TLS-related instructions.
* config/xtensa-istack.h (tinsn_struct): Add tls_reloc field.
* config/xtensa-relax.c (append_literal_op): Add src_op parameter
to initialize the op_data field of the BuildOp.
(build_transition): Use it here to record the source operand
corresponding to a generated literal.
* config/xtensa-relax.h (build_op): Comment op_data use for literals.
include/elf/
* xtensa.h (R_XTENSA_TLSDESC_FN, R_XTENSA_TLSDESC_ARG)
(R_XTENSA_TLS_DTPOFF, R_XTENSA_TLS_TPOFF, R_XTENSA_TLS_FUNC)
(R_XTENSA_TLS_ARG, R_XTENSA_TLS_CALL): New.
ld/testsuite/
* ld-xtensa/tlsbin.dd, ld-xtensa/tlsbin.rd, ld-xtensa/tlsbin.s,
ld-xtensa/tlsbin.sd, ld-xtensa/tlsbin.td, ld-xtensa/tlslib.s,
ld-xtensa/tlspic.dd, ld-xtensa/tlspic.rd, ld-xtensa/tlspic.sd,
ld-xtensa/tlspic.td, ld-xtensa/tlspic1.s, ld-xtensa/tlspic2.s: New.
* ld-xtensa/xtensa.exp: Run them.
2008-08-20 23:28:59 +00:00