Alan Modra
707bba77b5
* elflink.c (_bfd_elf_merge_symbol): Simplify.
2005-09-19 23:30:05 +00:00
Alan Modra
5c3dead3ce
* elf64-ppc.c (ppc_build_one_stub): Replace assertion that long
...
branch offset is in range with an error. Print full stub name on
errors.
(ppc_size_one_stub): Print full stub name on errors.
(group_sections): Warn if section size exceeds group size.
(ppc64_elf_size_stubs): Continue relaxing when stub types change.
2005-09-19 09:35:26 +00:00
Kevin Buettner
6cfda9479f
* elf32-am33lin.c (bfd.h, sysdep.h, elf-bfd.h, elf/mn10300.h):
...
Include.
(elf32_am33lin_grok_prstatus, elf32_am33lin_grok_psinfo): New
functions.
(elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define.
2005-09-09 18:26:03 +00:00
Richard Earnshaw
0951f0190e
* elf32-arm.c (elf32_arm_section_from_shdr): Accept SHT_ARM_PREEMPTMAP
...
and SHT_ARM_ATTRIBUTES.
2005-09-09 13:10:01 +00:00
H.J. Lu
e04bcc6d65
2005-09-08 H.J. Lu <hongjiu.lu@intel.com>
...
* elflink.c (elf_get_linked_section_vma): Fix a typo in comment.
* elfxx-ia64.c (elf_backend_link_order_error_handler): Likewise.
2005-09-09 05:11:51 +00:00
H.J. Lu
92fd189de1
2005-09-08 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/1263
* elflink.c (elf_link_add_object_symbols): Abort for
--just-symbols on DSO.
2005-09-08 14:24:22 +00:00
Paul Brook
3eb17e6bd2
2005-09-08 Paul Brook <paul@codesourcery.com>
...
bfd/
* reloc.c: Rename BFD_RELOC_ARM_SMI to BFD_RELOC_ARM_SMC.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
opcodes/
* arm-dis.c (arm_opcodes, thumb32_opcodes): Rename smi to smc.
gas/
* config/tc-arm.c (do_smi, do_t_smi): Rename ...
(do_smc, do_t_smc): ... to this.
(insns): Remane smi to smc.
(md_apply_fix, tc_gen_reloc): Rename BFD_RELOC_ARM_SMI to
BFD_RELOC_ARM_SMC.
gas/testsuite/
* gas/arm/arch6zk.d: Rename smi to smc.
* gas/arm/arch6zk.s: Ditto.
* gas/arm/thumb32.d: Ditto.
* gas/arm/thumb32.s: Ditto.
2005-09-08 12:49:27 +00:00
H.J. Lu
68f49ba335
2005-09-06 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/1301
* elflink.c (_bfd_elf_merge_symbol): Don't check undefined
symbol introduced by "ld -u" for TLS.
2005-09-07 05:01:16 +00:00
Paul Brook
8f06b2d82f
2005-09-02 Paul Brook <paul@codesourcery.com>
...
bfd/
* libbdf.h: Regenerate.
* bfd-in2.h: Regenerate.
* reloc.c: Add BFD_RELOC_ARM_T32_CP_OFF_IMM and
BFD_RELOC_ARM_T32_CP_OFF_IMM_S2.
gas/
* config/tc-arm.c (encode_arm_cp_address): Use
BFD_RELOC_ARM_T32_CP_OFF_IMM in thumb mode.
(do_iwmmxt_wldstbh): Use BFD_RELOC_ARM_T32_CP_OFF_IMM_S2 in thumb
mode.
(md_assemble): Only allow coprocessor instructions when Thumb-2 is
available.
(cCE, cC3): Define.
(insns): Use them for coprocessor instructions.
(md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM.
(get_thumb32_insn): New function.
(put_thumb32_insn): New function.
(md_apply_fix): Handle BFD_RELOC_ARM_T32_CP_OFF_IMM and
BFD_RELOC_ARM_T32_CP_OFF_IMM_S2.
gas/testsuite/
* gas/arm/vfp-bad_t2.d, gas/arm/vfp-bad_t2.l, arm/vfp-bad_t2.s,
gas/arm/vfp1_t2.d, gas/arm/vfp1_t2.s, gas/arm/vfp1xD_t2.d,
gas/arm/vfp1xD_t2.s, gas/arm/vfp2_t2.d, gas/arm/vfp2_t2.s): New files.
opcodes/
* arm-dis.c (coprocessor_opcodes): New.
(arm_opcodes, thumb32_opcodes): Remove coprocessor insns.
(print_insn_coprocessor): New function.
(print_insn_arm): Use print_insn_coprocessor. Remove coprocessor
format characters.
(print_insn_thumb32): Use print_insn_coprocessor.
2005-09-02 13:12:45 +00:00
Dmitry Diky
046aeb7490
2005-09-01 Dmitry Diky <diwil@spec.ru>
...
* elf32-msp430.c (msp430_elf_relax_delete_bytes): Do not adjust
local symbols and move it to
(msp430_elf_relax_adjust_locals): New function - walk over the
sections in the bfd and adjust relocations as necessary.
2005-09-01 11:27:15 +00:00
DJ Delorie
e81d3500e7
* elf32-i386.c (elf_i386_check_relocs): Don't cast a unary &
...
address operator, as that breaks GCC's strict aliasing rules.
(elf_i386_size_dynamic_sections): Avoid the need for type
punning.
* elf64-x86-64.c (elf_x86_64_check_relocs): Don't cast a unary
& address operator, as that breaks GCC's strict aliasing
rules.
(elf_x86_64_size_dynamic_sections): Avoid the need for type
punning.
2005-08-31 23:45:46 +00:00
Nick Clifton
e26f8bd9b4
(i[3-7]86-*-vxworks): Match vxworks* instead.
2005-08-30 16:06:00 +00:00
H.J. Lu
1faab634be
2005-08-29 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/1247
* elfxx-ia64.c (allocate_fptr): Check undefined symbol.
2005-08-29 22:25:04 +00:00
Nick Clifton
c9adbffeea
(_bfd_mips_elf_relocate_section): Initialise 'value' to avoid compile time
...
warning message.
2005-08-29 16:42:15 +00:00
Nick Clifton
c0524131ea
Re-enable GAS for z8k-coff
2005-08-26 09:47:49 +00:00
Kaz Kojima
4195f552a6
* elf32-sh.c (sh_elf_get_flags_from_mach): Fix off-by-one error.
2005-08-25 05:10:22 +00:00
H.J. Lu
843fe662b9
2005-08-24 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/1208
* elf-hppa.h (elf_hppa_relocate_section): Print out the name
of unresolvable relocation.
* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
* elf32-arm.c (elf32_arm_relocate_section): Likewise.
* elf32-i386.c (elf_i386_relocate_section): Likewise.
* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
* elf32-s390.c (elf_s390_relocate_section): Likewise.
* elf32-sh.c (sh_elf_relocate_section): Likewise.
* elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
* elf64-s390.c (elf_s390_relocate_section): Likewise.
* elf64-sh64.c (sh_elf64_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
2005-08-25 02:32:11 +00:00
Kaz Kojima
1cddf1366e
* config.bfd: Add bfd_elf32_shnbsd_vec and bfd_elf32_shlnbsd_vec
...
to targ_selvecs for sh5*-*-netbsd* and sh64*-*-netbsd*.
2005-08-18 11:06:58 +00:00
Alan Modra
848cf006a0
Remove a29k files.
2005-08-18 03:59:24 +00:00
Alan Modra
c17ae8a24e
Remove a29k support.
2005-08-18 03:51:51 +00:00
Alan Modra
909272ee76
* elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Warn on
...
zero size dynamic variables.
* elf32-arm.c (elf32_arm_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-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-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 (elf64_x86_64_adjust_dynamic_symbol): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
2005-08-18 01:28:26 +00:00
H.J. Lu
bc79cded48
bfd/
...
2005-08-17 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/1179
* dwarf2.c (_bfd_dwarf2_find_nearest_line): Use section lma
instead of vma.
(_bfd_dwarf2_find_line): Likewise.
binutils/
2005-08-17 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/1179
* objdump.c (disassemble_bytes): Don't adjust
adjust_section_vma.
(adjust_addresses): Don't adjust vma for debugging section.
Adjust lma only for relocatable files.
(dump_bfd): Tell adjust_addresses if it is a relocatable file.
2005-08-17 14:28:01 +00:00
Alan Modra
46fda84e78
* elf64-mmix.c (mmix_elf_add_symbol_hook): Mark reg section
...
SEC_LINKER_CREATED.
(mmix_elf_final_link): Check that section hasn't already been
removed before removing.
* mmo.c (mmo_scan): Mark reg contents section SEC_LINKER_CREATED.
(mmo_canonicalize_symtab): Likewise for reg section.
2005-08-17 13:29:55 +00:00
Alan Modra
8d1d654fb4
bfd/
...
* elf32-cris.c (elf_cris_adjust_gotplt_to_got): Move assert later.
* elfxx-mips.c (_bfd_mips_elf_hide_symbol): Cope with being called
without any got section.
ld/testsuite/
* ld-alpha/tlsbin.rd: Update.
* ld-alpha/tlsbinr.rd: Update.
* ld-cris/locref1.d: Update.
* ld-cris/locref2.d: Update.
* ld-i386/tlsbin.rd: Update.
* ld-ia64/tlsbin.rd: Update.
* ld-powerpc/tlsexe.r: Update.
* ld-powerpc/tlsexe32.r: Update.
* ld-powerpc/tlsexetoc.r: Update.
* ld-s390/tlsbin.rd: Update.
* ld-s390/tlsbin_64.rd: Update.
* ld-sparc/tlssunbin32.rd: Update.
* ld-sparc/tlssunbin64.rd: Update.
* ld-x86-64/tlsbin.rd: Update.
2005-08-17 10:04:33 +00:00
Danny Smith
27198fa9f3
bfd
...
* cofflink.c (_bfd_coff_generic_relocate_section): Correct
comment.
gas
* config/obj-coff.c (obj_coff_weak): Set auxiliary record
of NT weak externals to IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY.
2005-08-17 08:58:01 +00:00
Alan Modra
ccabcbe51e
* elflink.c (_bfd_elf_define_linkage_sym): Don't call
...
bfd_elf_link_record_dynamic_symbol. Call elf_backend_hide_symbol.
(_bfd_elf_link_renumber_dynsyms): Formatting.
(struct elf_gc_sweep_symbol_info): New.
(elf_gc_sweep_symbol): Rewrite.
(elf_gc_sweep): Adjust params and elf_gc_sweep_symbol call.
Call _bfd_elf_link_renumber_dynsyms.
(bfd_elf_gc_sections): Adjust elf_gc_sweep call.
2005-08-17 03:07:12 +00:00
Alan Modra
18d944df00
* elf64-ppc.c (ppc64_elf_edit_opd): Don't call dec_dynrel_count
...
when relocatable.
2005-08-16 10:13:43 +00:00
Bob Wilson
4af0a1d8b6
* elf32-xtensa.c (ELF_MACHINE_CODE, ELF_MACHINE_ALT1): Swap values
...
of EM_XTENSA and EM_XTENSA_OLD.
2005-08-15 18:17:12 +00:00
Alan Modra
d98685ac81
* elf-bfd.h (_bfd_elf_define_linkage_sym): Declare.
...
* elflink.c (_bfd_elf_define_linkage_sym): New function, extracted
from..
(_bfd_elf_create_got_section): ..here.
(_bfd_elf_link_create_dynamic_sections): Call it for _DYNAMIC.
(_bfd_elf_create_dynamic_sections): ..and _PROCEDURE_LINKAGE_TABLE_.
* elf-m10300.c (_bfd_mn10300_elf_create_got_section): Use
_bfd_elf_define_linkage_sym.
* elf32-frv.c (_frv_create_got_section): Likewise.
* elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise.
2005-08-15 15:39:08 +00:00
Paul Brook
ce490eda4b
2005-08-15 Paul Brook <paul@codesourcery.com>
...
* elf32-arm.c (elf32_arm_howto_table_1): Make R_ARM_PLT32 the same as
R_ARM_PC24.
2005-08-15 15:01:39 +00:00
Dave Anglin
4fc35ca996
PR ld/1135
...
* elf64-hppa.c (elf64_hppa_special_sections): Add flag definitions for
.plt, .dlt, .sdata, .sbss and .tbss.
2005-08-14 01:01:32 +00:00
Dmitry Diky
fa9ee72b80
2005-08-12 Dmitry Diky <diwil@spec.ru>
...
* elf32-msp430.c (msp430_elf_relax_delete_bytes): Adjust relocations
referenced by .section + DISPLACEMENT.
2005-08-12 11:45:26 +00:00
Jim Wilson
98b880f44f
Fix linker error found when compiling glibc with a mismatched gcc.
...
* dwarf2.c (scan_unit_for_symbols, case DT_AT_location): Verify that
DW_OP_addr is only opcode in location before using it.
2005-08-10 23:33:39 +00:00
H.J. Lu
a38a2e96b0
2005-08-09 H.J. Lu <hongjiu.lu@intel.com>
...
* elfxx-ia64.c (elfNN_ia64_final_link): Reset gp.
2005-08-10 04:32:49 +00:00
Nick Clifton
fd6212e6f1
(xcoff64_core_p): Constify return_value variable. Also, do not use core_hdr
...
macro as it evaluates to a cast of an lvalue which is no longer supported by
GCC 4.0.
2005-08-09 08:56:36 +00:00
Nick Clifton
44c86e8c6d
Add support for msp430x21xx variants
2005-08-08 17:08:04 +00:00
Nick Clifton
957c6e41da
PR 1147
...
elf32-arm.c (bfd_elf32_close_and_cleanup): Define.
(elf32_arm_close_and_cleanup): New function - walk over the sections in the
bfd that is being closed removing them from the list of recorded sections.
(unrecord_section_via_map_over_sections): New helper function.
(record_section_with_arm_elf_section_data): Call bfd_malloc instead of
bfd_alloc. Remove unneeded abfd parameter.
(elf32_arm_new_section_hook): Do not pass bfd to record_section_with_arm_elf_section_data.
elfxx-target.h (bfd_elfNN_close_and_cleanup): Only define if not already
defined by the target.
2005-08-08 11:06:16 +00:00
Fred Fish
a29b7e88f2
Reviewed and approved by Nick Clifton <nickc@redhat.com>
...
2005-08-05 Fred Fish <fnf@specifix.com>
* dwarf2.c (read_rangelist): Use addr_size instead of offset_size
to determine how many bytes to read from each rangelist entry.
2005-08-07 14:47:02 +00:00
H.J. Lu
7af8e99880
bfd/
...
2005-08-05 H.J. Lu <hongjiu.lu@intel.com>
* bfd.c (bfd_hide_symbol): New.
* bfd-in2.h: Regenerated.
ld/
2005-08-05 H.J. Lu <hongjiu.lu@intel.com>
* ld.texinfo: Document PROVIDE_HIDDEN.
* ldexp.c (exp_fold_tree_1): Hide a provided symbol if asked.
(exp_provide): Add and set hidden.
* ldexp.h (etree_type): Add hidden to assign.
* ldgram.y (PROVIDE_HIDDEN): New.
* ldlex.l (PROVIDE_HIDDEN): Likewise.
* scripttempl/elf.sc: Use PROVIDE_HIDDEN on array bound
symbols.
2005-08-05 13:52:13 +00:00
H.J. Lu
0049299953
2005-08-04 H.J. Lu <hongjiu.lu@intel.com>
...
* elf64-x86-64.c (elf64_x86_64_merge_symbol): When mixing a
large common symbol and a normal common symbol, always turn
the large common symbol into a normal one.
2005-08-04 14:49:55 +00:00
Alan Modra
046183de0e
bfd/
...
* elf32-ppc.c (struct elf_linker_section): Replace sym_val field
with sym.
(ppc_elf_relocate_section): Adjust for above.
(create_sdata_sym): New function.
(ppc_elf_create_linker_section): Call it.
(ppc_elf_check_relocs): Correct has_sda_refs and non_got_refs.
Create sdata syms for all SDA relocs.
(ppc_elf_adjust_dynamic_symbol): Don't special case _SDA_BASE_
and _SDA2_BASE_.
(ppc_elf_set_sdata_syms): Delete.
* elflink.c (bfd_elf_size_dynamic_sections): Don't create DT_INIT
and DT_FINI tags unless associated section has input.
(bfd_elf_set_symbol, _bfd_elf_provide_symbol): Delete.
(_bfd_elf_provide_section_bound_symbols): Delete.
* bfd-in.h (_bfd_elf_provide_symbol): Delete.
(_bfd_elf_provide_section_bound_symbols): Delete.
* bfd-in2.h: Regenerate.
ld/
* ldemul.c (ldemul_do_assignments, do_assignments_default): Delete.
* ldemul.h (ldemul_do_assignments, do_assignments_default): Delete.
(struct ld_emulation_xfer_struct): Remove do_assignments field.
* ldlang.c (lang_do_assignments): Don't call ldemul_do_assignments.
* emulparams/elf32ppc.sh (SDATA_START_SYMBOLS): New.
(SDATA2_START_SYMBOLS, SBSS_START_SYMBOLS, SBSS_END_SYMBOLS): New.
* emultempl/aix.em (ld_*_emulation): Delete do_assignments init.
* emultempl/armcoff.em: Likewise.
* emultempl/beos.em: Likewise.
* emultempl/generic.em: Likewise.
* emultempl/gld960.em: Likewise.
* emultempl/gld960c.em: Likewise.
* emultempl/linux.em: Likewise.
* emultempl/lnk960.em: Likewise.
* emultempl/m68kcoff.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/vanilla.em: Likewise.
* emultempl/elf32.em: Likewise.
(gld*_provide_bound_symbols): Delete.
(gld*_provide_init_fini_syms): Delete.
(gld*_before_allocation): Don't call ldemul_do_assignments.
* emultempl/ppc32elf.em (ppc_do_assignments): Delete.
(LDEMUL_DO_ASSIGNMENTS): Delete.
* scripttempl/elf.sc: Provide init/fini syms. Add SBSS_START_SYMBOLS,
SBSS_END_SYMBOLS, SDATA2_START_SYMBOLS.
2005-08-04 06:22:14 +00:00
Alan Modra
1e035701d6
bfd/
...
* elflink.c (fix_syms, _bfd_elf_fix_excluded_sec_syms): Move to..
* linker.c (fix_syms, _bfd_fix_excluded_sec_syms): ..here.
* bfd-in.h (_bfd_fix_excluded_sec_syms): Rename.
* bfd-in2.h: Regenerate.
ld/
* ldemul.c (ldemul_finish): Call ld_emulation->finish unconditionally.
(finish_default): New function.
* ldemul.h (finish_default): Declare.
* emultempl/aix.em (gld*_before_allocation): Call
before_allocation_default rather than strip_excluded_output_sections.
(ld_*_emulation): Init finish field to finish_default.
* emultempl/armcoff.em: Likewise.
* emultempl/beos.em: Likewise.
* emultempl/elf32.em: Likewise.
* emultempl/generic.em: Likewise.
* emultempl/gld960.em: Likewise.
* emultempl/gld960c.em: Likewise.
* emultempl/hppaelf.em: Likewise.
* emultempl/linux.em: Likewise.
* emultempl/lnk960.em: Likewise.
* emultempl/m68kcoff.em: Likewise.
* emultempl/mmo.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/vanilla.em: Likewise.
2005-08-04 01:19:10 +00:00
H.J. Lu
90b263f311
2005-08-03 H.J. Lu <hongjiu.lu@intel.com>
...
* elfxx-ia64.c (elfNN_ia64_relax_section): Resize .rela.got
only if it isn't NULL.
2005-08-04 00:39:02 +00:00
H.J. Lu
b0360d8cfa
bfd/
...
2005-08-03 H.J. Lu <hongjiu.lu@intel.com>
* elf32-i386.c (elf_howto_table): Undo the overflow change for
R_386_PC16 made on 2005-07-18.
* elf64-x86-64.c (x86_64_elf_howto_table): Undo the overflow
change for R_X86_64_PC16 made on 2005-07-18.
ld/testsuite/
2005-08-03 H.J. Lu <hongjiu.lu@intel.com>
* ld-i386/pcrel16.d: Updated.
* ld-i386/pcrel16.s: Likewise.
* ld-x86-64/pcrel16.d: Likewise.
2005-08-03 16:30:34 +00:00
Alan Modra
636ce3f5bf
* elf32-ppc.c (struct ppc_elf_link_hash_table): Remove hgot. Use
...
elf.hgot throughout file.
2005-08-02 23:32:52 +00:00
Alan Modra
4d9620504f
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Correct value of
...
_GLOBAL_OFFSET_TABLE_ for > 32k GOT.
2005-08-02 23:09:16 +00:00
Andreas Schwab
4a78a1f4de
* elfxx-ia64.c (struct elfNN_ia64_allocate_data): Add only_got.
...
(elfNN_ia64_relax_section): Reallocate .rela.got when .got has
changed.
(allocate_dynrel_entries): Look only at GOT relocations when
only_got is true.
(elfNN_ia64_size_dynamic_sections): Set only_got to false before
calling allocate_dynrel_entries.
2005-08-02 19:58:11 +00:00
Nick Clifton
8e3de13a7d
PR 1147
...
* elf32-arm.c (struct _arm_elf_section_data): Turn into a typedef and make the
mapcount field unsigned.
(struct section_list): New: Used to keep track of which sections have an
_arm_elf_section_data structure.
(record_section_with_arm_elf_section_data): New function.
(get_arm_elf_section_data): New function.
(unrecord_section_with_arm_elf_section_data): New function.
(elf32_arm_output_symbol_hook): Use get_arm_elf_section_data.
(elf32_arm_new_section_hook): Call record_section_with_arm_elf_section_data.
(elf32_arm_write_section): Use get_arm_elf_section_data and
unrecord_section_with_arm_elf_section_data.
2005-08-02 08:17:45 +00:00
Richard Sandiford
c5211a5487
* elfxx-mips.c (mips_mach_extends_p): Treat MIPS64 as an extension
...
of MIPS32 and MIPS64r2 as an extension of MIPS32r2.
2005-08-01 11:59:33 +00:00
David Daney
1b9ee6a2f0
* elflink.c (elf_gc_sweep): Set dynsymcount to correct value.
2005-07-31 06:14:15 +00:00
David Daney
eedecc0705
* elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Ignore _gp_disp
...
if it is in the *ABS* section.
2005-07-29 23:24:01 +00:00
Paul Brook
e9f89963c4
2005-07-29 Paul Brook <paul@codesourcery.com>
...
bfd/
* reloc.c: Add BFD_RELOC_ARM_T32_ADD_PC12.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
gas/
* config/tc-arm.c (T16_32_TAB): Add "addr". Fix encoding of push and
pop.
(do_t_addr): Implement 32-bit variant.
(do_t_push_pop): Make some errors warnings. Handle single register
32-bit case.
(insns): Use tCE for adr.
(md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_ADD_PC12.
(md_apply_fix): Ditto.
gas/testsuite/
* gas/arm/thumb32.d: Fix expected output for writeback addressing
modes. Add single high reg push/pop test.
* gas/asm/thumb32.s: Add single high reg push/pop test.
opcodes/
* arm-dis.c: Fix disassebly of thumb2 writeback addressing modes.
2005-07-29 17:39:39 +00:00
Paul Brook
92e90b6eb3
2005-07-29 Paul Brook <paul@codesourcery.com>
...
bfd/
* reloc.c (BFD_RELOC_ARM_T32_IMM12): Add.
* bfd-in2.h: Regeenrate.
* libbfd.h: Regenerate.
gas/
* config/tc-arm.c (parse_tb): New function.
(enum operand_parse_code): Add OP_TB.
(parse_operands): Handle OP_TB.
(do_t_add_sub_w, do_t_tb): New functions.
(insns): Add entries for addw, subw, tbb and tbh.
(md_apply_fix): Handle BFD_RELOC_ARM_T32_IMM12.
gas/testsuite/
* gas/arm/thumb32.s: Add tests for addw, subw, tbb and tbh.
* gas/arm/thumb32.d: Ditto.
opcodes/
* arm-dis.c (thumb32_opc): Fix addressing mode for tbh.
(print_insn_thumb32): Fix decoding of thumb2 'I' operands.
2005-07-29 17:28:33 +00:00
Nick Clifton
0facbdf5c2
* peXXigen.c (pe_print_edata): Compute the size of the export table from the
...
size field in the DataDictionary and not the size of the section. Some
linkers embed the export table inside a larger section.
2005-07-29 14:07:01 +00:00
Alan Modra
8a69675106
* elf-bfd.h (struct elf_backend_data): Add action_discarded.
...
(enum action_discarded): Move from..
* elflink.c (enum action_discarded): ..here.
(_bfd_elf_default_action_discarded): Rename from elf_action_discarded.
Remove target specific section checks.
(elf_link_input_bfd): Adjust.
* elfxx-target.h (elf_backend_action_discarded): Define.
(elfNN_bed): Init new field.
* bfd-in.h (_bfd_elf_default_action_discarded): Declare.
* bfd-in2.h: Regenerate.
* elf-hppa.h (elf_hppa_action_discarded): New function.
* elf32-hppa.c (elf_backend_action_discarded): Define.
* elf64-hppa.c (elf_backend_action_discarded): Define.
* elf32-ppc.c (ppc_elf_action_discarded): New function.
(elf_backend_action_discarded): Define.
2005-07-29 02:46:04 +00:00
Alan Modra
2f5028a7c8
* elflink.c (fix_syms): Handle symbols defined in input sections.
2005-07-27 08:32:53 +00:00
Jan Beulich
a33d77bc5f
bfd/
...
2005-07-27 Jan Beulich <jbeulich@novell.com>
* elf64-x86-64.c (R_X86_64_standard, R_X86_64_vt_offset): New.
(elf64_x86_64_info_to_howto): Use them.
2005-07-27 07:01:30 +00:00
Alan Modra
f41d945bae
* elflink.c (_bfd_elf_merge_symbol): Skip weak redefinition
...
regardless of strength of previous definition.
2005-07-26 15:19:37 +00:00
Alan Modra
87538722be
* elflink.c (elf_gc_mark_dynamic_ref_symbol): Handle -shared.
...
(bfd_elf_gc_sections): Allow -gc-sections when -shared.
* elf32-ppc.c (ppc_elf_gc_sweep_hook): Correct for -shared.
2005-07-26 12:06:38 +00:00
Alan Modra
9e8cc8b4bf
* elflink.c (elf_gc_sweep): Move gcc_except_table code..
...
(bfd_elf_gc_sections): ..to here.
2005-07-26 11:47:05 +00:00
DJ Delorie
fd54057a29
[bfd]
...
* reloc.c: Remove unused M32C relocs, add BFD_RELOC_M32C_HI8.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
* elf32-m32c.c (m32c_elf_howto_table): Add R_M32C_8, R_M32C_LO16,
R_M32C_HI8, R_M32C_HI16.
(m32c_reloc_map): Likewise.
(m32c_elf_relocate_section): Add R_M32C_HI8 and R_M32C_HI16.
[cpu]
* m32c.opc (parse_unsigned8): Add %dsp8().
(parse_signed8): Add %hi8().
(parse_unsigned16): Add %dsp16().
(parse_signed16): Add %lo16() and %hi16().
(parse_lab_5_3): Make valuep a bfd_vma *.
[gas]
* config/tc-m32c.c (md_cgen_lookup_reloc): Add 8 bit operands.
Support %mod() modifiers from opcodes.
* doc/c-m32c.texi (M32C-Modifiers): New section.
[include/elf]
* m32c.h: Add R_M32C_8, R_M32C_LO16, R_M32C_HI8, and R_M32C_HI16.
[opcodes]
* m32c-asm.c Regenerate.
* m32c-dis.c Regenerate.
2005-07-26 03:21:53 +00:00
H.J. Lu
3b22753a67
bfd/
...
2005-07-25 Jan Hubicka <jh@suse.cz>
H.J. Lu <hongjiu.lu@intel.com>
* elf-bfd.h (_bfd_elf_large_com_section): New.
* elf.c (_bfd_elf_large_com_section): New. Defined.
* elf64-x86-64.c (elf64_x86_64_add_symbol_hook): New.
(elf64_x86_64_elf_section_from_bfd_section): New.
(elf64_x86_64_symbol_processing): New.
(elf64_x86_64_common_definition): New.
(elf64_x86_64_common_section_index): New.
(elf64_x86_64_common_section): New.
(elf64_x86_64_merge_symbol): New.
(elf64_x86_64_additional_program_headers): New.
(elf64_x86_64_special_sections): New.
(elf_backend_section_from_bfd_section): New. Defined.
(elf_backend_add_symbol_hook): Likewise.
(elf_backend_common_section_index): Likewise.
(elf_backend_common_section): Likewise.
(elf_backend_common_definition): Likewise.
(elf_backend_merge_symbol): Likewise.
(elf_backend_special_sections): Likewise.
(elf_backend_additional_program_headers): Likewise.
binutils/
2005-07-25 H.J. Lu <hongjiu.lu@intel.com>
* readelf.c (dump_relocations): Handle SHN_X86_64_LCOMMON.
(get_symbol_index_type): Likewise.
(get_elf_section_flags): Handle SHF_X86_64_LARGE.
gas/
2005-07-25 Jan Hubicka <jh@suse.cz>
H.J. Lu <hongjiu.lu@intel.com>
* config/obj-elf.c: Include "elf/x86-64.h" if TC_I386 is
defined.
(elf_com_section_ptr): New.
(elf_begin): Set elf_com_section_ptr to bfd_com_section_ptr.
(elf_common_parse): Make it global. Use elf_com_section_ptr
instead of bfd_com_section_ptr.
(obj_elf_change_section): Handle x86-64 large bss sections.
* config/obj-elf.h (elf_com_section_ptr): New.
(elf_common_parse): New.
* config/tc-i386.c (handle_large_common): New.
(md_pseudo_table): Add "largecomm".
(x86_64_section_letter): New.
(x86_64_section_word): New.
* config/tc-i386.h (x86_64_section_word): New.
(x86_64_section_letter): New.
(md_elf_section_letter): New. Defined.
(md_elf_section_word): Likewise.
include/elf/
2005-07-25 Jan Hubicka <jh@suse.cz>
* x86-64.h (SHN_X86_64_LCOMMON): New.
(SHF_X86_64_LARGE): New.
ld/
2005-07-25 Jan Hubicka <jh@suse.cz>
H.J. Lu <hongjiu.lu@intel.com>
* emulparams/elf_x86_64.sh (LARGE_SECTIONS): New.
* scripttempl/elf.sc: Updated for large section support.
2005-07-25 15:41:08 +00:00
H.J. Lu
a4d8e49b50
2005-07-25 H.J. Lu <hongjiu.lu@intel.com>
...
* elf-bfd.h (elf_backend_data): Add common_definition,
common_section_index, common_section, and merge_symbol.
(_bfd_elf_common_definition): New.
(_bfd_elf_common_section_index): New.
(_bfd_elf_common_section): New.
* elf.c (elf_fake_sections): Don't clear sh_flags.
* elflink.c (_bfd_elf_merge_symbol): Call backend merge_symbol
if it is available.
(is_global_data_symbol_definition): Call backend
common_definition instead of checking SHN_COMMON.
(elf_link_add_object_symbols): Likewise.
(elf_link_output_extsym): Call backend common_section_index
for common section index.
(_bfd_elf_common_definition): New.
(_bfd_elf_common_section_index): New.
(_bfd_elf_common_section): New.
* elfxx-target.h (elf_backend_common_definition): New.
(elf_backend_common_section_index): New.
(elf_backend_common_section): New.
(elf_backend_merge_symbol): New.
(elfNN_bed): Initialize common_definition, common_section_index,
common_section, and merge_symbol.
* section.c (BFD_FAKE_SECTION): New.
(STD_SECTION): Use it.
* bfd-in2.h: Regenerated.
2005-07-25 15:35:37 +00:00
H.J. Lu
58ac56d0c8
2005-07-23 Olaf Hering <olh@suse.de>
...
* elflink.c (elf_link_input_bfd): Add '\n' for linker einfo
callback.
2005-07-23 15:42:51 +00:00
Nick Clifton
9f971fcbd4
Remove special case handling for rtems targets that are sufficiently handled by
...
the default rtems targets.
2005-07-22 10:34:30 +00:00
Nick Clifton
a9b7b1745d
(m32r_elf_check_relocs): Fix pc count for R_M32R_REL32.
2005-07-22 10:27:44 +00:00
Ben Elliston
240a342512
bfd/
...
* Makefile.am (BFD32_BACKENDS): Remove cf-m68klynx.lo.
(BFD32_BACKENDS): Likewise, remove m68klynx.lo.
(BFD32_BACKENDS_CFILES): Remove cf-m68klynx.c, m68klynx.c.
(cf-m68klynx.lo, m68klynx.lo): Remove targets.
* Makefile.in: Regenerate.
* cf-m68klynx.c: Remove.
* m68klynx.c: Likewise.
* configure.in (m68klynx_aout_vec): Remove vector.
(m68klynx_coff_vec): Likewise.
* configure: Regenerate.
* targets.c (m68klynx_aout_vec): Remove extern.
(m68klynx_coff_vec): Likewise.
(_bfd_target_vector): Remove m68klynx_{aout,coff}_vec.
* po/SRC-POTFILES.in: Remove cf-m68klynx.c, m68klynx.c.
gas/
* config/tc-m68k.h: Remove TE_LYNX conditional code.
2005-07-21 13:23:37 +00:00
Nick Clifton
157e7bd196
Add support for a 32bit PC relative reloc
2005-07-20 11:35:03 +00:00
Nick Clifton
85da3a565d
Add ChangeLog entries for yesterdays deltas (oops!)
2005-07-19 10:01:32 +00:00
Jan Beulich
ac2aa337d3
bfd/
...
2005-07-18 Jan Beulich <jbeulich@novell.com>
* elf32-i386.c (elf_howto_table): Adjust overflow complaint handler
for R_386_PC16.
* elf64-x86-64.c (x86_64_elf_howto_table): Adjust overflow complaint
handler for R_X86_64_PC16, R_X86_64_8, and R_X86_64_DTPOFF.
ld/testsuite/
2005-07-18 Jan Beulich <jbeulich@novell.com>
* ld-i386/abs.s, ld-i386/zero.s, ld-i386/abs.d, ld-x86-64/abs.d,
ld-i386/pcrel16.s, ld-i386/pcrel16.d, ld-x86-64/pcrel16.d,
ld-i386/pcrel8.s, ld-i386/pcrel8.d, ld-x86-64/pcrel8.d: New.
* ld-i386/i386.exp, ld-x86-64/x86-64.exp: Run new tests.
2005-07-18 06:23:40 +00:00
Eric Botcazou
9a20ed6e90
Fix typo in the date.
2005-07-16 15:21:10 +00:00
Eric Botcazou
cc86ff917d
PR ld/1021
...
PR ld/1031
* elflink.c (elf_link_add_object_symbols): Also append the version
name to non-hidden absolute symbols that are functions.
2005-07-16 15:08:14 +00:00
Alan Modra
42fa7765a2
bfd/
...
* elf32-ppc.c (ppc_elf_set_sdata_syms): Return void. Remove hack
for zero size sections. Don't set .sbss syms here.
* elf32-ppc.h (ppc_elf_set_sdata_syms): Adjust prototype.
ld/
* emultempl/elf32.em (gld*_provide_init_fini_syms): Prototype.
(gld*_before_allocation): Call ldemul_do_assignments rather than
gld*_provide_init_fini_syms directly.
* emultempl/ppc32elf.em (gld*_after_allocation): Delete.
(ppc_do_assignments): New function.
(LDEMUL_AFTER_ALLOCATION): Don't define.
(LDEMUL_DO_ASSIGNMENTS): Define.
2005-07-16 03:30:24 +00:00
Alan Modra
0f82ff91a0
bfd/
...
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
opcodes/
* Makefile.am: Run "make dep-am".
(stamp-m32c): Fix cpu dependencies.
* Makefile.in: Regenerate.
* ip2k-dis.c: Regenerate.
binutils/
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
gas/
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
ld/
* Makefile.am: Run "make dep-am".
(emipsidt.c, emipsidtl.c): Depend on generic.em.
* Makefile.in: Regenerate.
2005-07-16 02:03:55 +00:00
Bob Wilson
2db662bee4
* elf32-xtensa.c (vsprint_msg): Add prototype.
...
(build_encoding_error_message): Delete. Code moved into....
(elf_xtensa_do_reloc): ....here, and changed to give better
error messages for out of range literals.
2005-07-15 20:43:37 +00:00
Alan Modra
eaae8ded62
* elflink.c (bfd_elf_record_link_assignment): Remove output_bfd param.
...
(_bfd_elf_provide_symbol): Allow redefinition of weak syms and those
defined in output sections. Call bfd_elf_record_link_assignment.
* bfd-in.h (bfd_elf_record_link_assignment): Update prototype.
* bfd-in2.h: Regenerate.
2005-07-15 12:18:01 +00:00
Jim Blandy
49f58d10f8
ChangeLog:
...
2005-07-14 Jim Blandy <jimb@redhat.com>
* configure.in: Add cases for Renesas m32c.
* configure: Regenerated.
bfd/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
Add support for m32c-*-elf (Renesas m32c and m16c).
* Makefile.am (ALL_MACHINES): Add cpu-m32c.lo.
(ALL_MACHINES_CFILES): Add cpu-m32c.c.
(BFD32_BACKENDS): Add elf32-m32c.lo.
(BFD32_BACKENDS_CFILES): Add elf32-m32c.c.
(cpu-m32c.lo, elf32-m32c.lo): New rules, generated by 'make dep-am'.
* Makefile.in: Regenerated.
* archures.c (bfd_arch_m32c, bfd_mach_m16c, bfd_mach_m32c): New
arch and mach codes.
(bfd_m32c_arch): New arch info object.
(bfd_archures_list): List bfd_m32c_arch.
* bfd-in2.h: Regenerated.
* config.bfd: Add case for the m32c.
* configure.in: Add case for the m32c.
* configure: Regenerated.
* cpu-m32c.c, elf32-m32c.c: New files.
* libbfd.h: Regenerated.
* targets.c (bfd_elf32_m32c_vec): Declare.
(_bfd_target_vector): List bfd_elf32_m32c_vec.
binutils/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
* readelf.c: #include "elf/m32c.h"
(guess_is_rela, dump_relocations, get_machine_name): Add cases for
EM_M32C.
* Makefile.am (readelf.o): Update dependencies.
* Makefile.in: Regenerated.
cpu/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
* m32c.cpu, m32c.opc: Machine description for the Renesas M32C.
gas/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
Add support for the Renesas M32C.
* Makefile.am (CPU_TYPES): List m32c.
(TARGET_CPU_CFILES): List config/tc-m32c.c.
(TARGET_CPU_HFILES): List config/tc-m32c.h.
* configure.in: Add case for m32c.
* configure.tgt: Add cases for m32c and m32c-*-elf.
* configure: Regenerated.
* config/tc-m32c.c, config/tc-m32c.h: New files.
* doc/Makefile.am (CPU_DOCS): Add c-m32c.texi.
* doc/Makefile.in: Regenerated.
* doc/all.texi: Set M32C.
* doc/as.texinfo: Add text for the M32C-specific options and line
comment characters, and refer to c-m32c.texi.
* doc/c-m32c.texi: New file.
include/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
* dis-asm.h (print_insn_m32c): New declaration.
include/elf/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
Add support for Renesas M32C and M16C.
* common.h (EM_M32C): New machine number.
* m32c.h: New file.
ld/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
Add support for the Renesas M32C and M16C.
* Makefile.am (ALL_EMULATIONS): Add eelf32m32c.o.
(eelf32m32c.c): New target.
* Makefile.in: Regenerated.
* configure.tgt: Add case for m32c-*-elf.
* emulparams/elf32m32c.sh: New file.
opcodes/ChangeLog:
2005-07-14 Jim Blandy <jimb@redhat.com>
Add support for the Renesas M32C and M16C.
* m32c-asm.c, m32c-desc.c, m32c-dis.c, m32c-ibld.c, m32c-opc.c: New.
* m32c-desc.h, m32c-opc.h: New.
* Makefile.am (HFILES): List m32c-desc.h and m32c-opc.h.
(CFILES): List m32c-asm.c, m32c-desc.c, m32c-dis.c, m32c-ibld.c,
m32c-opc.c.
(ALL_MACHINES): List m32c-asm.lo, m32c-desc.lo, m32c-dis.lo,
m32c-ibld.lo, m32c-opc.lo.
(CLEANFILES): List stamp-m32c.
(M32C_DEPS): List stamp-m32c, if CGEN_MAINT.
(CGEN_CPUS): Add m32c.
(m32c-asm.c, m32c-desc.c, m32c-dis.c, m32c-ibld.c, m32c-opc.c)
(m32c-desc.h, m32c-opc.h): Depend on M32C_DEPS.
(m32c_opc_h): New variable.
(stamp-m32c, m32c-asm.lo, m32c-desc.lo, m32c-dis.lo, m32c-ibld.lo)
(m32c-opc.lo): New rules.
* Makefile.in: Regenerated.
* configure.in: Add case for bfd_m32c_arch.
* configure: Regenerated.
* disassemble.c (ARCH_m32c): New.
[ARCH_m32c]: #include "m32c-desc.h".
(disassembler) [ARCH_m32c]: Add case for bfd_arch_m32c.
(disassemble_init_for_target) [ARCH_m32c]: Same.
* cgen-ops.h, cgen-types.h: New files.
* Makefile.am (HFILES): List them.
* Makefile.in: Regenerated.
2005-07-14 22:52:28 +00:00
Alan Modra
a3c2b96af6
bfd/
...
* bfd-in.h (_bfd_elf_fix_excluded_sec_syms): Declare.
(_bfd_elf_provide_section_bound_symbols): Remove param name.
Formatting.
* bfd-in2.h: Regenerate.
* elflink.c (bfd_elf_gc_sections): Don't call generic function.
(_bfd_elf_provide_symbol): Formatting.
(_bfd_elf_provide_section_bound_symbols): Remove all hacks, just
create section relative syms.
(fix_syms, _bfd_elf_fix_excluded_sec_syms): New functions.
* elf32-ppc.c (ppc_elf_set_sdata_syms): Use
_bfd_elf_provide_section_bound_symbols.
* reloc.c (bfd_mark_used_section): Delete.
(bfd_generic_gc_sections): Don't call the above.
ld/
* ldlang.c (strip_excluded_output_sections): Don't call
bfd_gc_sections.
* emultempl/elf32.em (gld*_provide_bound_symbols): Move.
(gld*_provide_init_fini_syms): Move.
(gld*_before_allocation): Call the above from here..
(gld*_finish): ..not here. Call _bfd_elf_fix_excluded_sec_syms.
* emultempl/hppaelf.em (hppaelf_finish): Likewise.
* emultempl/ppc64elf.em (ppc_finish): Likewise.
2005-07-14 13:54:23 +00:00
Nick Clifton
cb4aa4730f
Add PR number for the last ChangeLog entry.
2005-07-14 07:22:37 +00:00
Nick Clifton
1787c3409c
(bfd_last_cache): Initialise to NULL.
2005-07-14 07:22:02 +00:00
Nick Clifton
15ac1d4f68
Add code to detect and either handle or issue an error message for binaries
...
created by the DEC ALPHA compilers.
2005-07-14 07:07:46 +00:00
Steve Ellcey
d49093754d
* bfd.m4 (BFD_NEED_DECLARATION): Remove.
2005-07-13 21:19:13 +00:00
Alan Modra
15b552e906
* elf64-ppc.c (ppc64_elf_relocate_section): Don't use a plt stub
...
when !can_plt_call.
2005-07-12 12:03:57 +00:00
Alan Modra
70961b9d70
* elf32-xtensa.c (bfd_elf_xtensa_reloc): Warning fix.
2005-07-12 11:53:56 +00:00
Alan Modra
632a56fd4c
* elf32-ppc.c (ppc_elf_set_sdata_syms): Correct __sbss_start value.
2005-07-12 11:39:42 +00:00
H.J. Lu
49ff44d641
2005-07-11 H.J. Lu <hongjiu.lu@intel.com>
...
* elflink.c (_bfd_elf_symbol_refs_local_p): Revert the last
change.
2005-07-11 17:40:25 +00:00
Paul Koning
0af4cd7c60
2005-07-08 Paul Koning <pkoning@equallogic.com>
...
* dwarf2.c (read_address): Check sign_extend_vma to handle targets
where addresses are sign extended.
2005-07-08 21:42:33 +00:00
Nick Clifton
7e4e2059b5
Mark i960-*-rtems*, or32-*-rtems* as obsolete.
...
Mark a29k-*rtems*, hppa*-*-rtems*, *-go32-rtems*, i[3-7]86*-*-rtemscoff*,
mips*el-*-rtems*, powerpcle-*-rtems*, sparc*-*-rtemsaout* as removed
2005-07-08 11:17:16 +00:00
Alan Modra
c456f0829f
* elf-hppa.h (elf_hppa_final_link): Use gp val of zero when none
...
of the usual sections are found.
* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Tidy.
Strip .dynbss if it is zero size.
* elf32-arm.c (elf32_arm_size_dynamic_sections): Likewise.
* elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
* elf32-i370.c (i370_elf_size_dynamic_sections): Likewise, and
.dynsbss.
(i370_elf_finish_dynamic_sections): Don't attempt to write .got
when it is zero size.
* elf32-i386.c (elf_i386_size_dynamic_sections): Correct handling
of .dynbss and zero size sections.
* elf32-m32r.c (m32r_elf_size_dynamic_sections): Strip .dynbss if
it is zero size.
* elf32-m68k.c (elf_m68k_size_dynamic_sections): Tidy. Strip
.dynbss if zero size.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise, .dynsbss
too.
* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
* elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
* elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Tidy. Strip
.plt.* and .got.plt.* if zero size.
* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Tidy. Strip
.got* and .dynbss if zero size.
* elf64-hppa.c (elf64_hppa_size_dynamic_sections): Tidy. Strip
* elf64-ppc.c (create_linkage_sections): Create branch lookup table
in .data.rel.ro.brlt or .rodata.brlt, and similarly for associated
reloc section.
(create_got_section): Always create new .got and .rela.got sections.
(ppc64_elf_size_dynamic_sections): Tidy. Strip .dynbss if zero size.
* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
* elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise.
* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Handle
dynamic bss sections correctly.
* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Tidy.
* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Tidy. Strip
.dynbss if zero size.
2005-07-08 06:20:06 +00:00
Ben Elliston
6c98dd1ecb
* elf32-xtensa.c: Include <stdarg.h> unconditionally, not only
...
when ANSI_PROTOTYPES is defined. Remove #ifdef logic.
2005-07-08 05:44:53 +00:00
H.J. Lu
29ef70053f
2005-07-07 H.J. Lu <hongjiu.lu@intel.com>
...
* elf-bfd.h (elf_backend_data): Add special_sections.
* elf.c (_bfd_elf_get_sec_type_attr): Check special_sections
first.
* elf32-arm.c (elf_backend_get_sec_type_attr): Removed.
(elf_backend_special_sections): New. Defined.
* elf32-m32r.c: Likewise.
* elf32-m68hc11.c: Likewise.
* elf32-m68hc12.c: Likewise.
* elf32-mcore.c: Likewise.
* elf32-sh64.c: Likewise.
* elf32-v850.c: Likewise.
* elf32-xtensa.c: Likewise.
* elf64-alpha.c: Likewise.
* elf64-hppa.c: Likewise.
* elf64-ppc.c: Likewise.
* elf64-sh64.c: Likewise.
* elfxx-ia64.c: Likewise.
* elfxx-mips.c: Likewise.
* elfxx-mips.h: Likewise.
* elfxx-target.h (elf_backend_special_sections): New.
(elfNN_bed): Initialize special_sections.
2005-07-08 00:26:53 +00:00
Bob Wilson
074f51093b
* xtensa-modules.c: Update tables with Xtensa MMU features.
2005-07-07 21:50:57 +00:00
Jim Wilson
0fd3a4776c
Kaveh Ghazi's printf format attribute checking patch.
...
bfd:
* elf32-xtensa.c (vsprint_msg): Add format attribute. Fix
format bugs.
* vms.h (_bfd_vms_debug): Add format attribute.
(_bfd_vms_debug, _bfd_hexdump): Fix typos.
binutils:
* bucomm.h (report): Add format attribute.
* dlltool.c (inform): Likewise.
* dllwrap.c (display, inform, warn): Likewise.
* objdump.c (objdump_sprintf): Likewise.
* readelf.c (error, warn): Likewise. Fix format bugs.
gas:
* config/tc-tic30.c (debug): Add format attribute. Fix format
bugs.
include:
* dis-asm.h (fprintf_ftype): Add format attribute.
opcodes:
* arc-dis.c, arm-dis.c, cris-dis.c, crx-dis.c, d10v-dis.c,
d30v-dis.c, fr30-dis.c, h8300-dis.c, h8500-dis.c, i860-dis.c,
ia64-dis.c, ip2k-dis.c, m10200-dis.c, m10300-dis.c,
m88k-dis.c, mcore-dis.c, mips-dis.c, ms1-dis.c, or32-dis.c,
ppc-dis.c, sh64-dis.c, sparc-dis.c, tic4x-dis.c, tic80-dis.c,
v850-dis.c: Fix format bugs.
* ia64-gen.c (fail, warn): Add format attribute.
* or32-opc.c (debug): Likewise.
2005-07-07 19:27:52 +00:00
H.J. Lu
9968d831f9
2005-07-07 H.J. Lu <hongjiu.lu@intel.com>
...
PR 975
* elflink.c (_bfd_elf_symbol_refs_local_p): Only undefined
symbol with default visibility is local.
2005-07-07 17:44:58 +00:00
Ben Elliston
3b1fcf963b
* config.bfd: Mark m68*-*-rtemscoff as obsolete.
2005-07-07 12:12:40 +00:00
H.J. Lu
5cf2e3f01e
2005-07-06 H.J. Lu <hongjiu.lu@intel.com>
...
* dwarf2.c (varinfo): Add addr.
(lookup_symbol_in_variable_table): Also check addr.
(scan_unit_for_symbols): Set addr for variable.
(comp_unit_find_line): Updated.
2005-07-06 13:43:21 +00:00
Nick Clifton
0adc9281f0
coff-alpha.c (alpha_adjust_reloc_in): Issue an informative error message if an
...
unknown reloc is encountered.
(alpha_relocate_section): Likewise.
ecoff.c (_bfd_ecoff_write_object_contents): Cope with a reloc with a missing
howto field.
2005-07-06 10:35:41 +00:00
Alan Modra
cfbe541f8a
* po/SRC-POTFILES.in: Add cpu-ms1.c, elf32-ms1.c, elf-vxworks.c,
...
elfxx-sparc.c.
2005-07-06 08:18:13 +00:00
Paul Brook
d5e3d971f0
2005-07-05 Paul Brook <paul@codesourcery.com>
...
* elf32-ppc.c (ppc_elf_vxworks_special_sections): Remove.
(ppc_elf_vxworks_get_sec_type_attr): New function.
(elf_backend_special_sections): Remove vxwords definition.
(elf_backend_get_sec_type_attr): Define for vxworks.
2005-07-05 16:52:48 +00:00
Nick Clifton
3ec2b351bd
Fix compile time warnings from a GCC 4.0 compiler
2005-07-05 15:07:46 +00:00
Paul Brook
9d8504b17f
2005-05-07 Paul Brook <paul@codesourcery.com>
...
bfd/
* config.bfd: Add separate case for ppc-vxworks.
* configure: Regenerate.
* configure.in: Include elf-vxworks.lo on ppc targets.
* elf-vxworks.c (elf_vxworks_final_write_processing): Handle
.rela.plt.unloaded.
* elf32-ppc.c: Add VxWorks target vec. Include elf-vxworks.h.
(PLT_ENTRY_SIZE, PLT_INITIAL_ENTRY_SIZE, PLT_SLOT_SIZE): Remove.
(VXWORKS_PLT_ENTRY_SIZE, ppc_elf_vxworks_plt_entry,
ppc_elf_vxworks_pic_plt_entry, VXWORKS_PLT_INITIAL_ENTRY_SIZE,
ppc_elf_vxworks_plt0_entry, ppc_elf_vxworks_pic_plt0_entry,
VXWORKS_PLT_NON_JMP_SLOT_RELOCS, VXWORKS_PLTRESOLVE_RELOCS,
VXWORKS_PLTRESOLVE_RELOCS_SHLIB): New.
(ppc_elf_link_hash_table): Add srelplt2, sgotplt, hgot, hplt,
is_vxworks, plt_entry_size, plt_slot_size, plt_initial_entry_size.
(ppc_elf_link_hash_table_create): Initialize hadtab plt fields.
(ppc_elf_create_got): Create .got.plt for VxWorks.
(ppc_elf_create_dynamic_sections): Create unloaded plt relocation
section for VxWorks.
(ppc_elf_select_plt_layout): Handle VxWorks plt format.
(allocate_got): VxWorks does not need a got header.
(allocate_dynrelocs): Handle VxWorks plt format.
(ppc_elf_size_dynamic_sections): Save _G_O_T_ and _P_L_T_ symbols for
VxWorks. Handle VxWorks plt/got.
(ppc_elf_finish_dynamic_sections): Fill in VxWorks plt.
(ppc_elf_vxworks_special_sections): New.
(ppc_elf_vxworks_link_hash_table_create,
ppc_elf_vxworks_add_symbol_hook,
elf_i386_vxworks_link_output_symbol_hook,
ppc_elf_vxworks_final_write_processing): New functions.
* targets.c (bfd_elf32_powerpc_vxworks_vec): Declare.
(_bfd_target_vector): Use it.
gas/
* config/tc-ppc.c (ppc_target_format): Add VxWorks.
gas/testsuite/
* gas/ppc/altivec.d: Match all powerpc target vecs.
* gas/ppc/booke.d: Ditto.
* gas/ppc/e500.d: Ditto.
ld/
* Makefile.am (ALL_EMULATIONS): Add eelf32ppcvxworks.o.
(eelf32ppcvxworks.o): Add dependencies.
* Makefile.in: Regenerate.
* configure.tgt: Add entry for powerpc-vxworks.
* emulparams/elf32-ppc.c: Mention elf32ppcvxworks.sh in comment.
* emulparams/elf32ppcvxworks.sh: New file.
* emultempl/ppc32elf.em (bfd_elf32_powerpc_vxworks_vec): Declare.
(is_ppc_elf32_vec): New function.
(ppc_after_open, ppc_before_allocation,
gld${EMULATION_NAME}_after_allocation): Use it.
2005-07-05 13:25:56 +00:00
Jakub Jelinek
9e492e0549
* libbfd-in.h (struct artdata): Add extended_names_size field.
...
* libbfd.h: Rebuilt.
* coff-rs600.c (_bfd_xcoff_archive_p): Don't clear fields in freshly
allocated object by bfd_zalloc.
* coff64-rs6000.c (xcoff64_archive_p): Likewise.
* ecoff.c (_bfd_ecoff_archive_p): Likewise.
* archive.c (_bfd_generic_mkarchive, bfd_generic_archive_p): Likewise.
(get_extended_arelt_filename): Fail if index is bigger or equal to
extended_names_size.
(_bfd_generic_read_ar_hdr_mag): Don't set bfd_error_malformed_archive,
get_extended_arelt_filename already did that.
(_bfd_slurp_extended_name_table): Initialize extended_names_size field.
Allocate one extra byte and clear it, in case extended names table
is not terminated.
2005-07-05 09:45:54 +00:00
Jakub Jelinek
d0fb9a8d03
* libbfd-in.h (bfd_malloc2, bfd_realloc2, bfd_zmalloc2, bfd_alloc2,
...
bfd_zalloc2): New prototypes.
* bfd-in.h (HALF_BFD_SIZE_TYPE): Define.
* libbfd.c (bfd_malloc2, bfd_realloc2, bfd_zmalloc2): New functions.
* opncls.c (bfd_alloc2, bfd_zalloc2): New functions.
* elf.c (bfd_elf_get_elf_syms, setup_group, assign_section_numbers,
elf_map_symbols, map_sections_to_segments,
assign_file_positions_for_segments, copy_private_bfd_data,
swap_out_syms, _bfd_elf_slurp_version_tables): Use bfd_*alloc2
where appropriate.
* bfd-in2.h: Rebuilt.
* libbfd.h: Rebuilt.
* elf.c (_bfd_elf_print_private_bfd_data): Don't crash on bogus
verdef or verneed section.
(_bfd_elf_slurp_version_tables): Handle corrupt verdef and/or
verneed sections gracefully.
* elfxx-sparc.c (_bfd_sparc_elf_info_to_howto_ptr): Don't crash on
bogus relocation values.
* elf64-ppc.c (ppc64_elf_info_to_howto): Likewise.
* elf64-s390.c (elf_s390_info_to_howto): Likewise.
* elf32-s390.c (elf_s390_info_to_howto): Likewise.
* elf64-x86-64.c (elf64_x86_64_info_to_howto): Likewise.
* elfxx-ia64.c (lookup_howto): Likewise.
2005-07-05 09:44:20 +00:00
Jakub Jelinek
c6c60d09fd
* elf.c (bfd_elf_get_str_section): Allocate an extra byte after
...
the end of strtab and clear it.
(elf_read): Remove.
2005-07-05 09:38:45 +00:00
Nick Clifton
dcd4b381c7
Add Vietnamese translation.
2005-07-05 09:17:22 +00:00
Nick Clifton
8532796c0c
(elf32_arm_size_dynamic_sections): Fix a typo and touchup logic like i386/ppc.
2005-07-05 09:14:14 +00:00
Alan Modra
b35d266b30
* elf.c (special_sections): Move const qualifier.
...
(special_sections_b..special_sections_t): Likewise.
* elf32-arm.c (elf32_arm_symbian_get_sec_type_attr): Remove duplicate
const.
(elf32_arm_symbian_special_sections): Move const qualifier.
* elf32-m32r.c: Similarly.
* elf32-m68hc11.c: Similarly.
* elf32-m68hc12.c: Similarly.
* elf32-mcore.c: Similarly.
* elf32-ppc.c: Similarly.
* elf32-sh64.c: Similarly.
* elf32-v850.c: Similarly.
* elf32-xtensa.c: Similarly.
* elf64-alpha.c: Similarly.
* elf64-hppa.c: Similarly.
* elf64-ppc.c: Similarly.
* elf64-sh64.c: Similarly.
* elfxx-ia64.c: Similarly.
* elfxx-mips.c: Similarly.
2005-07-05 06:23:37 +00:00
Nick Clifton
80447b21a9
m32r-linux-ld support for position independent executables
2005-07-04 13:54:36 +00:00
Alan Modra
540b09cb7d
PR 1042
...
* elf.c (assign_file_positions_for_segments): Remove excluded
sections from the segment map.
2005-07-04 10:30:09 +00:00
Alan Modra
551b43fde1
PR 1004
...
bfd/
* elf-bfd.h (struct elf_backend_data): Add get_sec_type_attr. Delete
special_sections.
(_bfd_elf_get_special_section): Declare.
(bfd_elf_special_section): Update prototype.
* elf.c (special_sections): Remove unused outer entries.
(get_special_section): Delete.
(_bfd_elf_get_special_section): New function.
(_bfd_elf_get_sec_type_attr): Replace "name" arg with "sec". Update
special_sections indexing.
(_bfd_elf_new_section_hook): Call backend get_sec_type_attr.
* elf32-arm.c (symbian_special_sections_d): Delete.
(symbian_special_sections_g, symbian_special_sections_h): Delete.
(symbian_special_sections_i, symbian_special_sections_f): Delete.
(symbian_special_sections_p): Delete.
(elf32_arm_symbian_special_sections): Merge above to here.
(elf32_arm_symbian_get_sec_type_attr): New function.
(elf_backend_special_sections): Don't define.
(elf_backend_get_sec_type_attr): Define.
* elf32-m32r.c: Similarly to elf32-arm.c.
* elf32-m68hc11.c: Likewise.
* elf32-m68hc12.c: Likewise.
* elf32-mcore.c: Likewise.
* elf32-sh64.c: Likewise.
* elf32-v850.c: Likewise.
* elf32-xtensa.c: Likewise.
* elf64-alpha.c: Likewise.
* elf64-hppa.c: Likewise.
* elf64-ppc.c: Likewise.
* elf64-sh64.c: Likewise.
* elfxx-ia64.c: Likewise.
* elfxx-mips.c: Likewise.
* elf32-ppc.c: Likewise.
(bfd_elf_special_section ppc_alt_plt): New. Use it if .plt loadable.
* elfxx-mips.h (_bfd_mips_elf_get_sec_type_attr): Declare.
(_bfd_mips_elf_special_sections, elf_backend_special_sections): Delete.
(elf_backend_get_sec_type_attr): Define.
* elfxx-target.h (elf_backend_get_sec_type_attr): Define.
(elf_backend_special_sections): Don't define.
(elfNN_bed): Update.
binutils/
* objcopy.c (copy_object): Use bfd_make_section_with_flags.
(write_debugging_info): Likewise.
(setup_section): Use bfd_make_section_anyway_with_flags.
gas/
* config/obj-elf.c (obj_elf_change_section): Use backend
get_sec_type_attr.
2005-07-04 01:53:44 +00:00
Nick Clifton
47b0e7ad8c
Update function declarations to ISO C90 formatting
2005-07-01 11:16:33 +00:00
Alan Modra
85d162e6db
* elf64-alpha.c (elf64_alpha_create_got_section): Always create
...
a new .got section.
(elf64_alpha_create_dynamic_sections): Always make new sections
by using bfd_make_section_anyway_with_flags. Check that .got not
already created.
(elf64_alpha_check_relocs): Delete "got_created". Use tdata->gotobj
instead.
2005-07-01 04:46:08 +00:00
Alan Modra
b116d4a7eb
* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Ignore dynamic
...
_SDA_BASE_ and _SDA2_BASE_ symbols.
* elflink.c (_bfd_elf_provide_symbol): Correct comment. Define
sym if not def_regular.
(_bfd_elf_provide_section_bound_symbols): Similarly.
2005-06-30 08:11:15 +00:00
Ben Elliston
7f41b278fe
* config.bfd: Mark as obsolete:
...
m68*-apollo-*
m68*-apple-aux*
m68*-bull-sysv*
2005-06-29 21:22:13 +00:00
Alan Modra
39c2f51bd9
* elflink.c (_bfd_elf_gc_mark): Mark sections referenced by
...
.eh_frame specially..
(bfd_elf_gc_sections): ..rather than totally ignoring .eh_frame.
Don't recheck sections we have already marked.
(elf_gc_sweep): Keep non-code sections referenced from .eh_frame.
* section.c (struct bfd_section): Add gc_mark_from_eh.
(STD_SECTION): Adjust.
* ecoff.c (bfd_debug_section): Adjust.
* bfd-in2.h: Regenerate.
2005-06-29 14:05:21 +00:00
Alan Modra
e8aaee2ad4
* elflink.c (elf_gc_sweep): Do not refcount on sections that have
...
not been processed by check_relocs.
2005-06-29 13:56:06 +00:00
Paul Brook
3b2175db9a
2005-06-29 Paul Brook <paul@codesourcery.com>
...
* bfd-in.h (_bfd_elf_provide_symbol): Update prototype.
* bfd-in2.h: Regenerate.
* elf32-ppc.c (ppc_elf_set_sdata_syms): Make sdata symbols section
relative.
* elflink.c (bfd_elf_set_symbol): Add section argument.
(_bfd_elf_provide_symbol): Ditto.
(_bfd_elf_provide_section_bound_symbols): Pass NULL section argument.
2005-06-29 13:16:44 +00:00
Dave Anglin
a63e02c7f8
* bfd/elf32-hppa.c (struct elf32_hppa_stub_hash_entry):
...
Use bh_root, and hh.
(struct elf32_hppa_link_hash_entry): Use eh, and hsh_cache.
(struct elf32_hppa_dyn_reloc_entry): Use hdh_next.
(struct elf32_hppa_link_hash_table): Use etab and bstab.
(stub_hash_newfunc): Use hh.
(hppa_link_hash_newfunc): Use hsh_cache.
(elf32_hppa_link_hash_table_create): Use etab, and bstab.
(elf32_hppa_link_hash_table_free): Use bstab.
(hppa_stub_name): Use eh.
(hppa_get_stub_entry): Use hh, hsh_entry, and hsh_cache.
(hppa_add_stub): Use bstab.
(hppa_type_of_stub): Use eh.
(hppa_build_one_stub): Use hh and bh_root.
(elf32_hppa_copy_indirect_symbol): Use hdh_next.
(elf32_hppa_check_relocs): Use eh, etab, and hdh_next.
(elf32_hppa_gc_sweep_hook): Use hdh_next.
(elf32_hppa_adjust_dynamic_symbol): Use hdh_next, and etab.
(allocate_plt_static): Use etab.
(allocate_dynrelocs): Use etab, and hdh_next.
(readonly_dynrelocs): Use hdh_next.
(elf32_hppa_size_dynamic_sections): Use etab, and hdh_next.
(get_local_syms): Use eh, bstab, and hh.
(elf32_hppa_size_stubs): Use eh, bstab, and hh.
(elf32_hppa_set_gp): Use etab.
(elf32_hppa_build_stubs): Use bstab.
(final_link_relocate): Use eh, bh_root.
(elf32_hppa_relocate_section): Use elf, etab.
(elf32_hppa_finish_dynamic_sections): Use etab.
2005-06-27 23:43:43 +00:00
H.J. Lu
5f1cb35385
2005-06-27 H.J. Lu <hongjiu.lu@intel.com>
...
* elfxx-ia64.c (elfNN_hpux_backend_symbol_processing): Remove
the extra `;'.
2005-06-27 21:08:10 +00:00
Dave Anglin
875c087201
* bfd/elf32-hppa.c (hppa_elf_hash_entry): Define.
...
(hppa_stub_hash_entry): Define.
(stub_hash_newfunc): Rename variables.
(hppa_link_hash_newfunc): Likewise.
(elf32_hppa_link_hash_table_free): Likewise.
(hppa_stub_name): Likewise.
(hppa_get_stub_entry): Likewise.
(hppa_add_stub): Likewise.
(hppa_type_of_stub): Likewise.
(hppa_build_one_stub): Likewise.
(hppa_size_one_stub): Likewise.
(elf32_hppa_create_dynamic_sections): Likewise.
(elf32_hppa_copy_indirect_symbol): Likewise.
(elf32_hppa_check_relocs): Likewise.
(elf32_hppa_gc_mark_hook): Likewise.
(elf32_hppa_gc_sweep_hook): Likewise.
(elf32_hppa_grok_psinfo): Likewise.
(elf32_hppa_hide_symbol): Likewise.
(elf32_hppa_adjust_dynamic_symbol): Likewise.
(allocate_dynrelocs): Likewise.
(clobber_millicode_symbols): Likewise.
(readonly_dynrelocs): Likewise.
(elf32_hppa_size_dynamic_sections): Likewise.
(get_local_syms): Likewise.
(elf32_hppa_size_stubs): Likewise.
(hppa_record_segment_addr): Likewise.
(final_link_relocate): Likewise.
(elf32_hppa_relocate_section): Likewise.
(elf32_hppa_finish_dynamic_symbol): Likewise.
2005-06-21 13:53:55 +00:00
H.J. Lu
973a3492d5
2005-06-20 H.J. Lu <hongjiu.lu@intel.com>
...
PR 1025
* elf-m10300.c (mn10300_elf_check_relocs): Handle indirect
symbol.
* elf32-arm.c (elf32_arm_check_relocs): Likewise.
* elf32-avr.c (elf32_avr_check_relocs): Likewise.
* elf32-cris.c (cris_elf_check_relocs): Likewise.
* elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
* elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
* elf32-fr30.c (fr30_elf_check_relocs): Likewise.
* elf32-frv.c (elf32_frv_check_relocs): Likewise.
* elf32-i370.c (i370_elf_check_relocs): Likewise.
* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
* elf32-m32r.c (m32r_elf_check_relocs): Likewise.
* elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
* elf32-m68k.c (elf_m68k_check_relocs): Likewise.
* elf32-mcore.c (mcore_elf_check_relocs): Likewise.
* elf32-ms1.c (ms1_elf_check_relocs): Likewise.
* elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
* elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
* elf32-ppc.c (ppc_elf_check_relocs): Likewise.
* elf32-s390.c (elf_s390_check_relocs): Likewise.
* elf32-sh.c (sh_elf_check_relocs): Likewise.
* elf32-v850.c (v850_elf_check_relocs): Likewise.
* elf32-vax.c (elf_vax_check_relocs): Likewise.
* elf64-mmix.c (mmix_elf_check_relocs): Likewise.
* elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
* elf64-s390.c (elf_s390_check_relocs): Likewise.
* elf64-sh64.c (sh_elf64_check_relocs): Likewise.
* elfxx-mips.c (_bfd_mips_elf_check_relocs): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_check_relocs): Likewise.
2005-06-20 18:12:11 +00:00
H.J. Lu
f7c5057a52
2005-06-20 H.J. Lu <hongjiu.lu@intel.com>
...
PR 1022
* elf32-hppa.c (elf32_hppa_check_relocs): Handle indirect
symbol.
2005-06-20 13:06:27 +00:00
H.J. Lu
71cb94647f
2005-06-20 H.J. Lu <hongjiu.lu@intel.com>
...
PR 1025:
* elf32-i386.c (elf_i386_check_relocs): Handle indirect symbol.
* elf64-x86-64.c (elf64_x86_64_check_relocs): Likewise.
2005-06-20 12:59:49 +00:00
H.J. Lu
73d147dcf0
2005-06-18 H.J. Lu <hongjiu.lu@intel.com>
...
* reloc.c: Add BFD_RELOC_X86_64_GOTOFF64 and
BFD_RELOC_X86_64_GOTPC32.
* bfd-in2.h: Regenerated.
2005-06-18 13:23:06 +00:00
Jakub Jelinek
aa2ca951cf
* elf.c (bfd_section_from_shdr): Kill bogus warning.
2005-06-17 15:48:25 +00:00
Jakub Jelinek
a50b216054
* elf.c (bfd_section_from_shdr): Fail if sh_entsize is bogus for
...
symbol, relocation, group or versym sections.
* coffcode.h (coff_slurp_reloc_table): Don't crash if native_relocs
is NULL.
* peXXigen.c (pe_print_idata): Don't crash if dll_name or start_address
doesn't point into the section.
2005-06-17 13:39:56 +00:00
Jan Beulich
d6ab8113e3
bfd/
...
2005-06-17 Jan Beulich <jbeulich@novell.com>
* bfd-in2.h (elf_x86_64_reloc_type): Add BFD_RELOC_X86_64_GOTOFF64
and BFD_RELOC_X86_64_GOTPC32.
* libbfd.h (bfd_reloc_code_real_names): Likewise.
* elf64-x86-64.c (x86_64_elf_howto_table): Add entries for
R_X86_64_PC64, R_X86_64_GOTOFF64, and R_X86_64_GOTPC32.
(x86_64_reloc_map): Add entries for R_X86_64_PC64, R_X86_64_GOTOFF64,
and R_X86_64_GOTPC32.
(elf64_x86_64_info_to_howto): Adjust bounding relocation type.
(elf64_x86_64_check_relocs): Also handle R_X86_64_PC64,
R_X86_64_GOTOFF64, and R_X86_64_GOTPC32.
(elf64_x86_64_relocate_section): Likewise.
(elf64_x86_64_gc_sweep_hook): Also handle R_X86_64_PC64.
gas/
2005-06-17 Jan Beulich <jbeulich@novell.com>
* config/tc-i386.c (reloc): Also handle BFD_RELOC_64_PCREL.
(tc_i386_fix_adjustable): Include BFD_RELOC_X86_64_GOTOFF64,
BFD_RELOC_X86_64_DTPOFF64, and BFD_RELOC_X86_64_TPOFF64.
(output_disp): Do GOTPC conversion also for BFD_RELOC_X86_64_32S
and BFD_RELOC_32_PCREL. Use BFD_RELOC_X86_64_GOTPC32 instead of
aborting.
(output_imm): Do GOTPC conversion also for BFD_RELOC_X86_64_32S.
Use BFD_RELOC_X86_64_GOTPC32 instead of aborting.
(tc_gen_reloc): Do GOTPC conversion also for BFD_RELOC_32_PCREL.
Use BFD_RELOC_X86_64_GOTPC32 instead of aborting. Also handle
BFD_RELOC_X86_64_GOTOFF64, BFD_RELOC_X86_64_GOTPC32,
BFD_RELOC_X86_64_DTPOFF64, and BFD_RELOC_X86_64_TPOFF64. Also
convert 8-byte pc-relative relocations.
(lex_got): Use BFD_RELOC_X86_64_GOTOFF64 for 64-bit @gotoff.
(i386_validate_fix): Likewise.
(x86_cons): Also handle quad values in 64-bit mode.
(i386_displacement): Also handle BFD_RELOC_X86_64_GOTOFF64.
(md_apply_fix): Include BFD_RELOC_X86_64_DTPOFF64 and
BFD_RELOC_X86_64_TPOFF64 in the TLS check. Also convert BFD_RELOC_64
to pc-relative variant. Also check for BFD_RELOC_64_PCREL.
gas/testsuite/
2005-06-17 Jan Beulich <jbeulich@novell.com>
* gas/i386/x86-64-pcrel.s: Add insn requiring 64-bit pc-relative
relocation. Add insns for all widths of non-pc-relative relocations.
* gas/i386/x86-64-pcrel.d: Adjust.
include/elf/
2005-06-17 Jan Beulich <jbeulich@novell.com>
* x86-64.h (elf_x86_64_reloc_type): Adjust comment for
R_X86_64_GOTPCREL. Add R_X86_64_PC64, R_X86_64_GOTOFF64, and
R_X86_64_GOTPC32.
2005-06-17 08:03:59 +00:00
Mark Kettenis
b820f1e4a8
* archive.c: Include "libiberty.h".
2005-06-16 08:05:39 +00:00
Nick Clifton
4676756165
* elf32-v850.c (ELF_MACHINE_ALT2): Define so that binaries produced by the
...
GreenHills toolchain can be assimilated.
2005-06-15 08:22:45 +00:00
Dave Anglin
580a09db88
* som.c (som_find_inliner_info): New.
2005-06-15 00:16:10 +00:00
H.J. Lu
91134c823b
2005-06-14 H.J. Lu <hongjiu.lu@intel.com>
...
* elflink.c (_bfd_elf_merge_symbol): Fix a typo in comment.
2005-06-14 19:25:45 +00:00
Jakub Jelinek
933d961a3c
* elf.c (bfd_section_from_shdr): Fail if name is NULL.
...
Prevent endless recursion on broken objects.
* archive.c (do_slurp_coff_armap): Check for overflows.
2005-06-14 11:04:22 +00:00
Daniel Jacobowitz
9a44bbd9a9
* elfcode.h (elf_write_relocs): Do nothing if there are no
...
relocations.
2005-06-10 20:22:23 +00:00
Alan Modra
75758e9ddb
* dwarf2.c (decode_line_info): Revert last change. Instead set
...
initial low_pc to -1 to avoid need to test whether loc_pc has
been set.
2005-06-10 10:14:23 +00:00
Christopher Faylor
2ae0844c54
* coffcode.h (sec_to_styp_flags): Set appropriate section flags when either
...
SEC_ALLOC OR SEC_LOAD.
2005-06-09 19:22:15 +00:00
Christopher Faylor
3b137b9a08
* coffcode.h (sec_to_styp_flags): Remove read/write flags from noload section
...
header. Do not add STYP_NOLOAD since it does not appear to be a valid PE flag.
2005-06-09 14:40:50 +00:00
H.J. Lu
6bd00c5db5
2005-06-09 H.J. Lu <hongjiu.lu@intel.com>
...
PR 1000
* dwarf2.c (lookup_address_in_line_info_table): Restore code
handling NULL function info, removed with 2005-04-03 change.
2005-06-09 13:32:30 +00:00
Mark Mitchell
a366f4ff7b
* opncls.c (bfd_fopen): Mark returned BFD as cacheable if FD == -1.
2005-06-09 07:30:19 +00:00
Alan Modra
0e58fcf315
* elflink.c (elf_mark_used_section): Delete.
...
(bfd_elf_gc_sections): Call bfd_generic_gc_sections.
* reloc.c (bfd_mark_used_section): New function.
(bfd_generic_gc_sections): Call bfd_mark_used_section.
2005-06-09 02:02:18 +00:00
Alan Modra
d83747fa84
* opncls.c (bfd_fdopenr): Don't set bfd_error unconditionally.
2005-06-08 03:51:32 +00:00
Alan Modra
92a7c1b8ba
* opncls.c (bfd_fopen): Don't set bfd_error unconditionally.
2005-06-08 03:16:48 +00:00
Mark Mitchell
dfab97d66b
* opncls.c (bfd_fdopenr): Add missing break statements.
2005-06-08 00:00:05 +00:00
Mark Mitchell
2d0123b785
* opncls.c (bfd_fopen): New API.
...
(bfd_openr): Use it.
(bfd_fdopenr): Likewise.
* bfd-in2.h: Regenerated.
2005-06-07 22:53:32 +00:00
Aldy Hernandez
de33e64021
* Makefile.am (ALL_MACHINES): Add ms1 support.
...
(ALL_MACHINES_CFILES): Same.
(BFD32_BACKENDS): Same.
(BFD32_BACKENDS_CFILES): Same.
* Makefile.in: Regenerate.
* archures.c (bfd_architecture): Add ms1 entries.
Externalize bfd_ms1_arch.
(bfd_archures_list): Add bfd_ms1_arch.
* bfd-in2.h: Regenerate.
* cpu-ms1.c: New file.
* elf32-ms1.c: New file.
* targets.c: Define extern of bfd_elf32_ms1_vec.
Add bfd_elf32_ms1_vec to _bfd_target_vector.
* configure.in: Add bfd_elf32_ms1_vec case.
* configure: Regenerate.
* config.bfd: Add ms1-*-elf to table.
2005-06-07 21:07:32 +00:00
Zack Weinberg
55cf6793d8
gas:
...
* cgen.c, cgen.h, tc.h, write.c, config/obj-coff.c
* config/tc-a29k.c, config/tc-alpha.c, config/tc-alpha.h
* config/tc-arc.c, config/tc-arc.h, config/tc-arm.c
* config/tc-arm.h, config/tc-avr.c, config/tc-avr.h
* config/tc-cris.c, config/tc-crx.c, config/tc-d10v.c
* config/tc-d10v.h, config/tc-d30v.c, config/tc-d30v.h
* config/tc-dlx.c, config/tc-dlx.h, config/tc-fr30.h
* config/tc-frv.c, config/tc-frv.h, config/tc-h8300.c
* config/tc-h8500.c, config/tc-hppa.c, config/tc-hppa.h
* config/tc-i370.c, config/tc-i370.h, config/tc-i386.c
* config/tc-i386.h, config/tc-i860.c, config/tc-i860.h
* config/tc-i960.c, config/tc-i960.h, config/tc-ia64.c
* config/tc-ip2k.c, config/tc-ip2k.h, config/tc-iq2000.c
* config/tc-iq2000.h, config/tc-m32r.c, config/tc-m32r.h
* config/tc-m68hc11.c, config/tc-m68hc11.h, config/tc-m68k.c
* config/tc-m68k.h, config/tc-m88k.c, config/tc-maxq.c
* config/tc-mcore.c, config/tc-mcore.h, config/tc-mips.c
* config/tc-mips.h, config/tc-mmix.c, config/tc-mn10200.c
* config/tc-mn10300.c, config/tc-msp430.c, config/tc-ns32k.c
* config/tc-openrisc.h, config/tc-or32.c, config/tc-or32.h
* config/tc-pdp11.c, config/tc-pj.c, config/tc-pj.h
* config/tc-ppc.c, config/tc-ppc.h, config/tc-s390.c
* config/tc-s390.h, config/tc-sh64.c, config/tc-sh.c
* config/tc-sh.h, config/tc-sparc.c, config/tc-sparc.h
* config/tc-tahoe.c, config/tc-tic30.c, config/tc-tic4x.c
* config/tc-tic54x.c, config/tc-tic80.c, config/tc-v850.c
* config/tc-v850.h, config/tc-vax.c, config/tc-vax.h
* config/tc-w65.c, config/tc-xstormy16.c, config/tc-xstormy16.h
* config/tc-xtensa.c, config/tc-z8k.c:
Replace all instances of the string "_apply_fix3" with
"_apply_fix".
* po/POTFILES.in, po/gas.pot: Regenerate.
bfd:
* coff-i386.c: Change md_apply_fix3 to md_apply_fix in comment.
cgen:
* doc/porting.texi: Change all mention of md_apply_fix3 and
gas_cgen_md_apply_fix3 to md_apply_fix and gas_cgen_md_apply_fix
respectively.
2005-06-07 17:54:22 +00:00
Alan Modra
4575b1b508
* coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Init _bfd_find_line.
...
* coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise.
2005-06-07 03:13:05 +00:00
H.J. Lu
5420f73dbb
bfd/
...
2005-06-06 H.J. Lu <hongjiu.lu@intel.com>
PR 990
* bfd.c (bfd_find_line): New.
* dwarf2.c (comp_unit): Add variable_table.
(funcinfo): Add file, line, and sec.
(varinfo): New.
(lookup_symbol_in_function_table): New.
(lookup_symbol_in_variable_table): New.
(scan_unit_for_functions): Renamed to ...
(scan_unit_for_symbols): This. Handle DW_TAG_entry_point and
DW_TAG_variable.
(comp_unit_find_nearest_line): Updated.
(comp_unit_find_line): New.
(_bfd_dwarf2_find_line): New.
* elf-bfd.h (_bfd_elf_find_line): New.
(_bfd_generic_find_line): New. Defined.
* elf.c (_bfd_elf_find_line): New.
* libbfd-in.h (_bfd_dwarf2_find_line): New.
(_bfd_generic_find_line): New.
* bfd-in2.h: Regenerated.
* libbfd.h: Likewise.
* libbfd.c (_bfd_generic_find_line): New.
* targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize _bfd_find_line
with _bfd_generic_find_line.
(bfd_target): Add _bfd_find_line.
binutils/
2005-06-06 H.J. Lu <hongjiu.lu@intel.com>
PR 990
* nm.c (print_symbol): Call bfd_find_line before
bfd_find_nearest_line.
2005-06-06 14:28:31 +00:00
H.J. Lu
b42f9a05b6
2005-06-06 H.J. Lu <hongjiu.lu@intel.com>
...
* dwarf2.c (decode_line_info): Properly set low_pc.
2005-06-06 14:16:45 +00:00
Alan Modra
46de2a7c48
* elf64-ppc.c (ppc_stub_name): Return immediately on bfd_malloc fail.
...
(ppc64_elf_edit_opd): Ignore zero size .opd. Check bfd_alloc
return value.
2005-06-06 13:16:15 +00:00
Alan Modra
b4f4e59fff
bfd/
...
* elf64-pcc.c (ppc64_elf_gc_mark_hook): For the local sym in .opd
case, include addend when indexing .opd section map.
(ppc64_elf_edit_opd): Add no_opd_opt param. Do nothing besides
clear opd_adjust array if no_opd_opt set. Tidy code.
* elf64-ppc.h (ppc64_elf_edit_opd): Update prototype.
ld/
* emultempl/ppc64elf.em (ppc_before_allocation): Always run
ppc64_elf_edit_opd.
2005-06-06 12:59:59 +00:00