Alexandre Oliva
709e685dff
* elf-m10300.c (mn10300_elf_relax_section): Take symbol hash table
...
from input_bfd.
2003-07-29 06:18:40 +00:00
Alan Modra
ac400888b3
daily update
2003-07-29 00:00:05 +00:00
Alan Modra
36c506c536
* elf.c (special_sections): Set attributes for .got and .plt.
2003-07-28 14:21:44 +00:00
Alan Modra
7b968b10bd
daily update
2003-07-28 00:00:06 +00:00
Alan Modra
5d35169e36
* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Ensure no copy relocs
...
on function descriptors.
(ELIMINATE_COPY_RELOCS): Expand comment.
(ppc64_elf_special_sections): Move. Don't include non-ppc64 sections.
Do include ".toc1".
2003-07-27 09:05:08 +00:00
Alan Modra
936102220a
daily update
2003-07-27 00:00:05 +00:00
H.J. Lu
3cddba1e54
bfd/
...
2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
* elf.c (_bfd_elf_new_section_hook): Set the default section
type to SHT_NULL.
(elf_fake_sections): Set the section type based on asect->flags
if it is SHT_NULL. Don't abort on processor specific section
types.
gas/
2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
* config/obj-elf.c (obj_elf_change_section): Update
elf_section_type and elf_section_flags only when they are
specified.
2003-07-26 01:06:27 +00:00
Alan Modra
a6f8f4b8d2
daily update
2003-07-26 00:00:06 +00:00
H.J. Lu
d622ef4b20
2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
...
* bfd-in2.h: Regenerated.
2003-07-25 14:55:16 +00:00
H.J. Lu
2f89ff8d8e
bfd/
...
2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
* elf-bfd.h (bfd_elf_special_section): New.
(elf_backend_data): Add special_sections, a pointer to
bfd_elf_special_section.
(elf_section_type). New.
(elf_section_flags): New.
(_bfd_elf_get_sec_type_attr): New.
* elf.c (_bfd_elf_make_section_from_shdr): Always use the
real section type/flags.
(special_sections): New.
(get_special_section): New.
(_bfd_elf_get_sec_type_attr): New.
(_bfd_elf_new_section_hook): Check special_section to set
elf_section_type and elf_section_flags.
(elf_fake_sections): Don't use section name to set ELF section
data.
* elf32-m32r.c (m32r_elf_special_sections): New.
(elf_backend_special_sections): Defined.
* elf32-m68hc11.c (elf32_m68hc11_special_sections): New.
(elf_backend_special_sections): Defined.
* elf32-mcore.c (mcore_elf_special_sections): New.
(elf_backend_special_sections): Defined.
* elf32-ppc.c (ppc_elf_special_sections): New.
(elf_backend_special_sections): Defined.
* elf32-sh64.c (sh64_elf_special_sections): New.
(elf_backend_special_sections): Defined.
* elf32-v850.c (v850_elf_special_sections): New.
(elf_backend_special_sections): Defined.
* elf32-xtensa.c (elf_xtensa_special_sections): New.
(elf_backend_special_sections): Defined.
* elf64-alpha.c (elf64_alpha_special_sections): New.
(elf_backend_special_sections): Defined.
* elf64-hppa.c (elf64_hppa_special_sections): New.
(elf_backend_special_sections): Defined.
* elf64-ppc.c (ppc64_elf_special_sections): New.
(elf_backend_special_sections): Defined.
* elf64-sh64.c (sh64_elf64_special_sections): New.
(elf_backend_special_sections): Defined.
* elfxx-ia64.c (elfNN_ia64_special_sections): New.
(elf_backend_special_sections): Defined.
* elfxx-mips.c (_bfd_mips_elf_special_sections): New.
* elfxx-mips.h (_bfd_mips_elf_special_sections): New.
(elf_backend_special_sections): Defined.
* elfxx-target.h (elf_backend_special_sections): New. Default
to NULL.
(elfNN_bed): Initialize special_sections.
* section.c (bfd_abs_section): Remove const.
(bfd_und_section): Likewise.
(bfd_com_section): Likewise.
(bfd_ind_section): Likewise.
gas/
2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
* config/obj-elf.c (special_sections): Removed.
(obj_elf_change_section): Call _bfd_elf_get_sec_type_attr. Set
elf_section_type and elf_section_flags.
(elf_frob_file): Set SHT_GROUP.
* config/obj-elf.h (obj_sec_set_private_data): New.
* config/tc-alpha.h (ELF_TC_SPECIAL_SECTIONS): Removed.
* config/tc-ia64.h: Likewise.
* config/tc-m32r.h: Likewise.
* config/tc-m68hc11.h: Likewise.
* config/tc-mcore.h: Likewise.
* config/tc-mips.h: Likewise.
* config/tc-ppc.h: Likewise.
* config/tc-sh64.h: Likewise.
* config/tc-v850.h: Likewise.
* config/tc-xtensa.h: Likewise.
* config/tc-v850.h (SHF_V850_GPREL): Removed.
(SHF_V850_EPREL): Likewise.
(SHF_V850_R0REL): Likewise.
* subsegs.c (subseg_get): Call obj_sec_set_private_data if it
is defined.
include/elf/
2003-07-25 H.J. Lu <hongjiu.lu@intel.com>
* v850.h (SHF_V850_GPREL): New.
(SHF_V850_EPREL): Likewise.
(SHF_V850_R0REL): Likewise.
2003-07-25 14:35:56 +00:00
Nick Clifton
2065057979
Include SEC_CODE so that code sections are assigned the LOAD attribute.
2003-07-25 10:50:03 +00:00
Kaz Kojima
09fd220b8e
* elf32-sh.c: Convert to C90. Replace PTR with void *.
...
* elf32-sh64-com.c: Likewise.
* elf32-sh64.c: Likewise.
* elf32-sh64.h: Likewise.
* elf64-sh64.c: Likewise.
2003-07-25 06:19:20 +00:00
Alan Modra
882b74b33c
daily update
2003-07-25 00:00:05 +00:00
Kaz Kojima
3d85aebe2a
* elf32-sh.c (sh_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL.
...
(allocate_dynrelocs): Likewise.
(sh_elf_relocate_section): Likewise. Use SYMBOL_REFERENCES_LOCAL.
(sh_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL.
2003-07-24 11:37:02 +00:00
Nick Clifton
834d807bb8
Updated French translations
2003-07-24 11:16:05 +00:00
Bob Wilson
571b5725d5
* elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Make inline and move
...
near the beginning of the file. Swap order of arguments. Call
_bfd_elf_dynamic_symbol_p with "ignore_protected" set to 0.
(elf_xtensa_fix_refcounts): Adjust xtensa_elf_dynamic_symbol_p call.
(elf_xtensa_relocate_section): Likewise.
(shrink_dynamic_reloc_sections): Likewise.
2003-07-24 00:24:00 +00:00
Bob Wilson
b536dc1e25
* elf32-xtensa.c (plt_reloc_count): Fix typo in comment.
...
(elf_xtensa_size_dynamic_sections): Use elf_discarded_section.
(elf_xtensa_combine_prop_entries): Avoid returning non-zero without
first printing an error message.
(elf_xtensa_finish_dynamic_sections): Likewise.
(elf_xtensa_discard_info_for_section): Adjust size of .got.loc when
discarding literal table entries.
(elf_xtensa_merge_private_bfd_data): Remove newline from error message.
(elf_xtensa_do_asm_simplify): Likewise.
2003-07-24 00:13:42 +00:00
Alan Modra
f330c8387c
daily update
2003-07-24 00:00:05 +00:00
Stephane Carrez
7f88833084
* elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Avoid crash when
...
we have a local symbol in common section.
2003-07-23 19:40:23 +00:00
Alan Modra
53878e7ae5
daily update
2003-07-23 00:00:05 +00:00
H.J. Lu
ecc27c311f
2003-07-22 H.J. Lu <hongjiu.lu@intel.com>
...
* elflink.c (_bfd_elf_dynamic_symbol_p): Don't return TRUE for
weak symbols.
2003-07-22 15:52:44 +00:00
Nick Clifton
f9f3cf656a
Add C_TCSYM and C_ECOML to expected RS6000 storage classes.
2003-07-22 09:06:49 +00:00
Alan Modra
8ad3c6b136
daily update
2003-07-22 00:00:06 +00:00
H.J. Lu
bb32e54ff4
2003-07-21 H.J. Lu <hongjiu.lu@intel.com>
...
* elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Mark
output_bfd unused to silence gcc.
2003-07-21 23:00:22 +00:00
Nick Clifton
796f2a93d1
Updated Swedish translation
2003-07-21 09:36:39 +00:00
Alan Modra
f6c52c1368
* elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Use..
...
(_bfd_elf_symbol_refs_local_p): ..this. Declare.
* elflink.c (_bfd_elf_symbol_refs_local_p): New function.
* elf32-i386.c (elf_i386_relocate_section): Remove h NULL test
now done in _bfd_elf_symbol_refs_local_p.
* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
2003-07-21 00:24:10 +00:00
Alan Modra
aaba06d939
daily update
2003-07-21 00:00:06 +00:00
Alan Modra
3ecf492f80
daily update
2003-07-20 00:00:05 +00:00
H.J. Lu
aa37626c9e
2003-07-18 H.J. Lu <hongjiu.lu@intel.com>
...
* elflink.c (_bfd_elf_dynamic_symbol_p): Undo the last change.
2003-07-19 06:41:42 +00:00
H.J. Lu
1e364ec981
2003-07-18 H.J. Lu <hongjiu.lu@intel.com>
...
* elf-bfd.h (SYMBOL_REFERENCES_LOCAL): Fix a typo.
(SYMBOL_CALLS_LOCAL): Likewise.
* elflink.c (_bfd_elf_dynamic_symbol_p): Return TRUE
immediately if symbol isn't defined locally.
2003-07-19 04:12:22 +00:00
Alan Modra
4a5917ba56
daily update
2003-07-19 00:00:06 +00:00
Richard Henderson
986a241f8b
* elflink.c (_bfd_elf_dynamic_symbol_p): New.
...
* elf-bfd.h (_bfd_elf_dynamic_symbol_p): Declare it.
(SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Use it.
* elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Likewise.
* elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise.
* elf64-hppa.c (elf64_hppa_dynamic_symbol_p): Likewise.
* elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Likewise.
Update all callers to provide the relocation being resolved.
2003-07-18 21:09:28 +00:00
Alan Modra
61fdd1259b
daily update
2003-07-18 00:00:05 +00:00
Nick Clifton
ac4b3dd8ca
Define ARM_COFF_BUGFIX for arm-wince-pe targets
2003-07-17 14:27:38 +00:00
Nick Clifton
6c37ac4d15
Update translations
2003-07-17 14:22:45 +00:00
Alan Modra
5c7556e871
daily update
2003-07-17 00:00:05 +00:00
Richard Henderson
02e6ad56bf
* config.bfd, configure.host, configure.in: Remove ia64-aix support.
...
* elfxx-ia64.c, targets.c: Likewise.
2003-07-16 22:48:59 +00:00
Richard Henderson
5686517c77
* elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Properly return false
...
for symbols defined locally plus -Bsymbolic. Tidy logic.
2003-07-16 21:47:36 +00:00
Alan Modra
7ff7fe6db3
daily update
2003-07-16 00:00:05 +00:00
Richard Sandiford
5a7ea74950
include/opcode/
...
* mips.h (CPU_RM7000): New macro.
(OPCODE_IS_MEMBER): Match CPU_RM7000 against 4650 insns.
bfd/
* archures.c (bfd_mach_mips7000): New.
* bfd-in2.h: Regenerated.
* cpu-mips.c (arch_info_struct): Add an entry for mips:7000.
* elfxx-mips.c (mips_set_isa_flags): Handle bfd_mach_mips7000.
(mips_mach_extensions): Add an entry for it.
opcodes/
* mips-dis.c (mips_arch_choices): Add rm7000 and rm9000 entries.
gas/
* config/tc-mips.c (hilo_interlocks): True for CPU_RM7000.
(mips_cpu_info_table): Add rm7000 and rm9000 entries.
gas/testsuite/
* gas/mips/rm7000.[sd]: New test.
* gas/mips/mips.exp: Run it.
2003-07-15 07:50:39 +00:00
Alan Modra
0502b0971b
daily update
2003-07-15 00:00:15 +00:00
Nick Clifton
76bff7057c
Update Turkish translation files for bfd, gas and opcodes
2003-07-14 11:18:13 +00:00
Richard Sandiford
2808c7aac4
Missing from 2003-07-11 commit.
2003-07-14 06:27:24 +00:00
Alan Modra
542df965d0
daily update
2003-07-14 00:00:07 +00:00
Alan Modra
974b2f82b1
daily update
2003-07-13 00:00:05 +00:00
Nick Clifton
d0facd1b42
Set maxpagesize for NTO targets to 4k
2003-07-12 11:16:46 +00:00
Nick Clifton
bcb9b88db6
Set the IMAGE_FILE_32BIT_MACHINE flag for PE targets.
2003-07-12 10:55:05 +00:00
Alan Modra
3c11cdbf48
daily update
2003-07-12 00:00:05 +00:00
Richard Sandiford
7a9823f1a9
bfd/
...
* bfd-in.h (bfd_h8300_pad_address): Declare.
* bfd-in2.h: Regenerate.
* cpu-h8300.c (bfd_h8300_pad_address): New function.
* coff-h8300.c (h8300_reloc16_estimate): Use it to canonicalize
addresses before checking whether they can be relaxed.
(h8300_reloc16_extra_cases): Likewise for the R_MOVL2 sanity check.
Don't complain about overflows in general 8-bit relocations.
* elf32-h8300.c (elf32_h8_relax_section): Use bfd_h8300_pad_address.
Fix handling of R_H8_DIR24A8.
ld/testsuite/
* ld-h8300/relax-3{.s,.d,-coff.d}: New test.
* ld-h8300/h8300.exp: Run it.
2003-07-11 14:59:41 +00:00
Richard Sandiford
c6baf75ed1
* elf32-h8300.c: Convert function prototypes and definitions
...
to C90 syntax.
* coff-h8300.c: Likewise.
* cpu-h8300.c: Likewise.
2003-07-11 11:08:30 +00:00
Alan Modra
fce0080055
Update pot files.
2003-07-11 05:10:21 +00:00
Alan Modra
82599cce24
daily update
2003-07-11 00:00:05 +00:00
Bob Wilson
e901de8951
bfd ChangeLog:
...
* elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Create new
.got.loc section. Do not set SEC_ALLOC or SEC_LOAD flags for the
.xt.lit.plt section.
(elf_xtensa_size_dynamic_sections): Set size of the .got.loc section
and allocate memory for it.
(elf_xtensa_combine_prop_entries): Copy contents of .xt.lit output
section to the .got.loc section.
(elf_xtensa_finish_dynamic_sections): Fix up call to
elf_xtensa_combine_prop_entries and set DT_XTENSA_GOT_LOC_OFF to
the address of .got.loc.
(relax_property_section): Shrink .got.loc to match changes in any
literal table section.
(xtensa_is_property_section): Change to match
xtensa_get_property_section_name.
(xtensa_is_littable_section): New.
ld ChangeLog:
* emulparams/elf32xtensa.sh (OTHER_READONLY_SECTIONS): Replace .xt.lit
with new .got.loc section.
(OTHER_READWRITE_SECTIONS): Do not combine linkonce sections for
non-relocating links.
(OTHER_SECTIONS): Add .xt.lit here. Change it to keep linkonce
sections separate for non-relocating links; likewise for .xt.insn.
2003-07-10 19:01:48 +00:00
H.J. Lu
eff26f7814
2003-07-10 H.J. Lu <hongjiu.lu@intel.com>
...
* elfxx-ia64.c (IA64_HOWTO): Set dst_mask to -1 instead of
-1LL.
2003-07-10 14:22:15 +00:00
Alan Modra
942e0f4252
* Makefile.am (BFD32_BACKENDS): Add elf32-am33lin.lo.
...
(BFD32_BACKENDS_CFILES): elf32-am33lin.c not elf32-am33lin.lo.
Run "make dep-am".
* Makefile.in: Regenerate.
2003-07-10 07:48:46 +00:00
Alexandre Oliva
73c3cd1c3d
2001-09-12 Alexandre Oliva <aoliva@redhat.com>
...
* elf32-am33lin.c (ELF_MACHINE_CODE): Redefine to EM_MN10300.
(ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300.
2001-06-02 Nick Clifton <nickc@cambridge.redhat.com>
* elf32-am33lin.c: Rename global functions.
2001-05-09 Alexandre Oliva <aoliva@redhat.com>
* config.bfd (am33_2.0, am33_2.0-*-linux*): Added.
* configure.in (bfd_elf32_am33lin_vec): Added.
* Makefile.am (BFD32_BACKENDS): Added elf32-am33lin.lo.
(elf32-am33lin.lo): List dependencies.
* aclocal.m4, configure, Makefile.in: Rebuilt.
* elf-m10300.c (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME,
ELF_ARCH, ELF_MACHINE_CODE, ELF_MAXPAGESIZE): Define only if
ELF_ARCH was not defined before.
(elf_symbol_leading_char): Define if not defined.
* elf32-am33lin.c: Override the definitions above.
* targets.c (bfd_elf32_am33lin_vec): New.
2003-07-10 04:44:37 +00:00
Alexandre Oliva
03a1283107
2002-12-12 Alexandre Oliva <aoliva@redhat.com>
...
* elf-m10300.c (elf32_mn10300_link_hash_newfunc): Initialize
pcrel_relocs_copied.
2001-12-13 Alexandre Oliva <aoliva@redhat.com>
* elf-m10300.c (ELF_DYNAMIC_INTERPRETER): Renamed from
ld-linux.so.2 to ld.so.1.
2001-10-10 Alexandre Oliva <aoliva@redhat.com>
* elf-m10300.c (elf_mn10300_sizeof_plt0): New macro.
(_bfd_mn10300_elf_adjust_dynamic_symbol): Use it.
(_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Allocate
.rela.* section contents with bfd_zalloc.
2001-09-25 Alexandre Oliva <aoliva@redhat.com>
* elf-m10300.c: Added declarations for functions missing them.
Merge some shared-library changes from the i386 back-end. Use
R_MN10300_RELATIVE instead of R_MN10300_PCREL32 and
R_MN10300_GLOB_DAT instead of R_MN10300_32 where appropriate.
(struct elf32_mn10300_link_hash_entry): Remove duplicates of
members of elf_link_hash_entry. Adjusted references.
(mn10300_elf_final_link_relocate): dynobj was already loaded
into a local variable, use it.
2001-09-21 Nick Clifton <nickc@cambridge.redhat.com>
* elf-m10300.c: Add missing function prototypes.
2001-08-24 Alexandre Oliva <aoliva@redhat.com>
* elf-m10300.c (mn10300_elf_relocate_section): Don't compute
relocation for dynamic relocations.
2001-05-16 Alexandre Oliva <aoliva@redhat.com>
* reloc.c (BFD_RELOC_MN10300_GOTOFF24): New.
* elf-m10300.c: Introduce GOTPC16, GOTOFF24, GOTOFF16 and
PLT16, and rename GOTPC to GOTPC32 and GOTOFF to GOTOFF32.
(_bfd_mn10300_elf_create_dynamic_sections): Move creation ot PLT...
(_bfd_mn10300_elf_create_got_section): ... here, so that its
adress is already known at the time we compute relaxations.
(mn10300_elf_relax_section): Relax GOTPC32, GOTOFF32, GOT32
and PLT32 to narrower relocations.
* libbfd.h, bfd-in2.h: Rebuilt.
2001-04-12 Alexandre Oliva <aoliva@redhat.com>
* reloc.c (BFD_RELOC_MN10300_GOT32, BFD_RELOC_MN10300_GOT24,
BFD_RELOC_MN10300_GOT16, BFD_RELOC_MN10300_COPY,
BFD_RELOC_MN10300_GLOB_DAT, BFD_RELOC_MN10300_JMP_SLOT,
BFD_RELOC_MN10300_RELATIVE): New relocs.
* libbfd.h, bfd-in2.h: Rebuilt.
* elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): New.
(struct elf32_mn10300_link_hash_entry): Added DSO-related
fields.
(elf_mn10300_howto): Defined new relocation types.
(mn10300_reloc_map): Map them.
(_bfd_mn10300_elf_create_got_section): New fn.
(mn10300_elf_check_relocs): Handle PIC relocs.
(mn10300_elf_final_link_relocate): Likewise.
(mn10300_elf_relocate_section): Handle DSOs.
(PLT0_ENTRY_SIZE, PLT_ENTRY_SIZE, PIC_PLT_ENTRY_SIZE): New macros.
(elf_mn10300_plt0_entry, elf_mn10300_plt_entry,
elf_mn10300_pic_plt_entry): New.
(elf_mn10300_sizeof_plt, elf_mn10300_plt_plt0_offset,
elf_mn10300_plt0_linker_offset, elf_mn10300_plt0_gotid_offset,
elf_mn10300_plt_temp_offset, elf_mn10300_plt_symbol_offset,
elf_mn10300_plt_reloc_offset: New macros.
(ELF_DYNAMIC_INTERPRETER): Likewise.
(_bfd_mn10300_elf_create_dynamic_sections): New function.
(_bfd_mn10300_elf_adjust_dynamic_symbol): Likewise.
(_bfd_mn10300_elf_discard_copies): Likewise.
(_bfd_mn10300_elf_size_dynamic_sections): Likewise.
(_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
(_bfd_mn10300_elf_finish_dynamic_sections): Likewise.
(elf_backend_can_gc_sections,
elf_backend_create_dynamic_sections,
elf_backend_adjust_dynamic_sections,
elf_backend_size_dynamic_sections,
elf_backend_finish_dynamic_symbol,
elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
elf_backend_plt_readonly, elf_backend_want_plt_sym,
elf_backend_got_header_size, elf_backend_plt_header_size): New
macros.
2003-07-10 03:20:00 +00:00
Alexandre Oliva
b08fa4d3bf
2001-05-06 Alexandre Oliva <aoliva@redhat.com>
...
* elf-m10300.c (compute_function_info): Account for AM33
registers in `movm' when computing stack space for `call' when
linking for AM33/2.0 link.
2000-04-01 Alexandre Oliva <aoliva@cygnus.com>
* archures.c (bfd_mach_am33_2): Renamed from bfd_mach_am332.
* bfd-in2.h: Rebuilt.
* cpu-m10300.c (bfd_am33_2_arch): Renamed from bfd_am332_arch.
* elf-m10300.c: Updated.
2000-03-31 Alexandre Oliva <aoliva@cygnus.com>
* archures.c (bfd_mach_am332): Defined.
* bfd-in2.h: Rebuilt.
* cpu-m10300.c (bfd_am332_arch): Defined.
(bfd_am33_arch): Chained with am33-2.
* elf-m10300.c (elf_mn10300_mach): Handle am332.
(_bfd_mn10300_elf_final_write_processing): Likewise.
2003-07-10 02:53:10 +00:00
H.J. Lu
201933ea37
2003-07-09 H.J. Lu <hongjiu.lu@intel.com>
...
* elfxx-ia64.c (IA64_HOWTO): Set dst_mask to -1LL.
2003-07-10 01:30:16 +00:00
Alan Modra
e717da7ead
* elf64-ppc.c (bfd_elf64_mkobject): Define.
...
(struct ppc64_elf_obj_tdata): New.
(ppc64_elf_tdata, ppc64_tlsld_got): Define.
(ppc64_elf_mkobject): New function.
(struct got_entry): Add "owner". Move "tls_type".
(struct ppc_link_hash_table): Delete "relgot", "tlsld_got".
(ppc64_elf_init_stub_bfd): New function.
(create_got_section): Create header .got in dynobj. Create .got
and .rela.got in each bfd. Stash pointers in ppc64_elf_obj_tdata.
(ppc64_elf_create_dynamic_sections): Don't call create_got_section.
Look for dynobj .got, and test it.
(ppc64_elf_copy_indirect_symbol): Adjust for changed got.
(update_local_sym_info): Likewise.
(ppc64_elf_check_relocs): Likewise.
(ppc64_elf_gc_sweep_hook): Likewise.
(ppc64_elf_tls_optimize): Likewise.
(allocate_dynrelocs): Likewise.
(ppc64_elf_size_dynamic_sections): Likewise.
(ppc64_elf_relocate_section): Likewise.
(ppc64_elf_next_toc_section): Update comment.
(toc_adjusting_stub_needed): Remove unneeded cast.
(ppc64_elf_build_stubs): Check for stub sections in stub bfd by
testing section flags.
(ppc64_elf_build_stubs): Likewise.
(ppc64_elf_size_stubs): Likewise. Remove stub_bfd param.
(ppc64_elf_finish_dynamic_sections): Write out got sections.
(func_desc_adjust): Copy over dynamic info for undef weaks.
* elf64-ppc.h (ppc64_elf_init_stub_bfd): Declare.
(ppc64_elf_size_stubs): Update prototype.
* elflink.h (elf_link_sort_relocs): Use link_orders to find reldyn
input sections rather than scanning dynobj.
2003-07-10 00:37:27 +00:00
Alan Modra
149ebfb1de
daily update
2003-07-10 00:00:06 +00:00
Richard Sandiford
18ad015f6c
* elfxx-mips.c (mips_elf_link_hash_entry): Remove min_dyn_reloc_index.
...
(bfd_mips_elf_swap_msym_in, bfd_mips_elf_swap_msym_out): Delete.
(mips_elf_create_msym_section): Delete.
(mips_elf_create_dynamic_relocation): Don't set min_dyn_reloc_index.
(_bfd_mips_elf_copy_indirect_symbol): Likewise.
(_bfd_mips_elf_create_dynamic_sections): Don't create .msym.
(_bfd_mips_elf_size_dynamic_sections): Don't calculate its size.
(_bfd_mips_elf_size_dynamic_sections): Don't add DT_MIPS_MSYM.
(_bfd_mips_elf_finish_dynamic_symbol): Don't add symbols to .msym.
(_bfd_mips_elf_finish_dynamic_sections): Likewise.
2003-07-09 11:55:49 +00:00
Richard Sandiford
e10609d3f7
* elfxx-mips.c (mips_elf_irix6_finish_dynamic_symbol): Make the
...
symbols protected.
2003-07-09 11:53:36 +00:00
Richard Sandiford
0d591ff7fb
* elfxx-mips.c (mips_elf_create_dynamic_relocation): Fix handling
...
of relocations whose offset is -2.
2003-07-09 11:52:52 +00:00
Richard Sandiford
fdd0740558
* bfd/elfxx-mips.c (mips_elf_create_dynamic_relocation): Treat
...
forced-local symbols like other locals. Don't create relocations
against STN_UNDEF in irix objects.
2003-07-09 11:51:53 +00:00
Richard Sandiford
d2fba50dd9
* bfd/elfxx-mips.c (mips_elf_create_dynamic_relocation): In SGI-
...
compatible objects, add the values of defined external symbols
to the addend.
2003-07-09 11:50:16 +00:00
Richard Sandiford
6eaa6adc99
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Always
...
initialize a GOT entry to the symbol's st_value.
2003-07-09 11:48:17 +00:00
Alan Modra
bc50d3dd0c
daily update
2003-07-09 00:00:05 +00:00
Alan Modra
43c40ab2d9
* elf-bfd.h (struct elf_obj_tdata): Move linker_section_pointers..
...
* elf32-ppc.c (struct ppc_elf_obj_tdata): ..to here. New.
(ppc_elf_tdata): Define.
(elf_local_ptr_offsets): Adjust.
(ppc_elf_mkobject): New function.
(bfd_elf32_mkobject): Define.
2003-07-08 13:10:51 +00:00
Alan Modra
0c83546ac6
* elfcode.h (elf_object_p): Allocate tdata via _bfd_set_format.
...
* elfcore.h (elf_core_file_p): Likewise.
* section.c (bfd_section_init): Remove prototype.
2003-07-08 08:08:00 +00:00
Alan Modra
234d84da5b
daily update
2003-07-08 00:00:05 +00:00
Alan Modra
58111eb706
* elf-bfd.h (struct elf_link_hash_entry): Remove linker_section_pointer
...
field.
(enum elf_linker_section_enum): Delete.
(struct elf_linker_section): Delete.
(struct elf_linker_section_pointers): Delete.
(struct elf_obj_tdata): Remove #if 0 chunk. Remove linker_section.
Make linker_section_pointers a void**.
(elf_local_ptr_offsets, elf_linker_section): Don't define.
* elf32-ppc.c (enum elf_linker_section_enum): New, cut-down version
of old item in elf-bfd.h.
(struct elf_linker_section): Likewise.
(struct elf_linker_section_pointers): Likewise.
(elf_local_ptr_offsets): Define.
(struct ppc_elf_link_hash_entry): Add linker_section_pointer.
(ppc_elf_link_hash_newfunc): Init it.
(struct ppc_elf_link_hash_table): Add sbss.
(ppc_elf_link_hash_table_create): zmalloc rather than clearing
individual fields.
(elf_create_linker_section): Fold into..
(ppc_elf_create_linker_section): ..here. Remove hole_size code.
Make rela section here if shared.
(elf_find_pointer_linker_section): Pass lsect rather than enum.
(elf_create_pointer_linker_section): Adjust. zalloc rather than
clearing in a loop.
(elf_finish_pointer_linker_section): Adjust. Don't make rela
section here.
(ppc_elf_check_relocs): Adjust.
(ppc_elf_add_symbol_hook): Tighten hash creator test. Remove code
creating .sbss by hand.
* elf.c (_bfd_elf_link_hash_newfunc): Adjust.
2003-07-07 15:51:57 +00:00
Jakub Jelinek
15f8604d21
* elf32-s390.c (elf_howto_table): Change R_390_GOT12 to
...
complain_overflow_bitfield.
* elf64-s390.c (elf_howto_table): Change R_390_GOT12 to
complain_overflow_bitfield.
2003-07-07 11:14:40 +00:00
Nick Clifton
e0a868d179
Add Clarke's surname to ChangeLog entry
2003-07-07 09:40:16 +00:00
Alan Modra
1d6f398dc5
daily update
2003-07-07 00:00:05 +00:00
Alan Modra
bebd9d3f19
daily update
2003-07-06 00:00:05 +00:00
Alan Modra
81563749a4
daily update
2003-07-05 00:00:05 +00:00
Nick Clifton
32a3339c51
(MKDOC rule): Add $(CFLAGS) in case it contains CC_FOR_BUILD specific switches.
2003-07-04 14:46:14 +00:00
Jakub Jelinek
3368a7fb7a
* elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Return
...
true even if -pie.
2003-07-04 13:57:14 +00:00
Jakub Jelinek
9203ba999f
bfd/
...
* elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add rel_fptr_sec.
(elfNN_ia64_dynamic_symbol_p): Change info->shared into
!info->executable.
(get_fptr): For -pie create .opd as writable section and create
.rela.opd as well.
(elfNN_ia64_check_relocs): Change info->shared into
!info->executable.
(allocate_fptr): Likewise.
(allocate_dynrel_entries): Account for a relative reloc for -pie
@fptr(). Don't account for a relative reloc if -pie want_ltoff_fptr
for undefweak symbol. Account for an IPLT reloc in .rela.opd
section if -pie.
(set_got_entry): Don't create a relative reloc if -pie
want_ltoff_fptr for undefweak symbol.
(set_fptr_entry): Emit an IPLT reloc in .rela.opd for -pie.
(elfNN_ia64_relocate_section): Emit a relative reloc for -pie
@fptr().
* elfxx-ia64.c (elfNN_ia64_relocate_section): Issue undefined_symbol
even if -pie.
* elf32-i386.c (elf_i386_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
* elf64-s390.c (elf_s390_relocate_section): Likewise.
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
* elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
* elf32-s390.c (elf_s390_relocate_section): Likewise.
* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
ld/
* emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't include
.opd if -pie.
(OTHER_READWRITE_SECTIONS): Include .opd if -pie.
* scripttempl/elf.sc: Use SHLIB_DATA_ADDR instead of DATA_ADDR
if -pie.
2003-07-04 13:53:38 +00:00
Nick Clifton
8c17da6e59
* elf32-h8300.c (R_H8_DIR32A16): Fix name field.
...
(elf32_h8_relax_section) <R_H8_DIR16A8>: Adjust position of relocation.
<R_H8_DIR32A16>: Fix type of relocation.
* ld-h8300/h8300.exp: Replace loop with explicit list. Run relax.d
unconditionally. Run relax-2.d for *-elf targets.
* ld-h8300/relax.d: Fix typo.
* ld-h8300/relax.s: Add 0x prefixes.
* ld-h8300/relad-2.[sd]: New test.
2003-07-04 10:25:14 +00:00
Kaz Kojima
35cad4c475
* elf32-sh.c (sh_elf_create_dynamic_sections): Return if dynamic
...
sections were created already. Remove unnecessary tests of
the previous change.
2003-07-04 08:41:57 +00:00
Kaz Kojima
03151a5a11
* elf32-sh.c (sh_elf_create_dynamic_sections): Don't call
...
bfd_make_section for existing sections.
2003-07-04 07:38:33 +00:00
Alan Modra
2293c4998c
* elf32-sparc.c (elf32_sparc_check_relocs): Don't call
...
create_got_section if we already have done so.
* elf32-sh.c (sh_elf_create_dynamic_sections): Likewise.
(sh_elf_check_relocs): Likewise.
(sh_elf_adjust_dynamic_symbol): Delete "dynobj" var. Use
htab->root.dynobj instead.
(sh_elf_check_relocs): Likewise.
(sh_elf_finish_dynamic_sections): Likewise.
2003-07-04 04:58:03 +00:00
Alan Modra
003d627e6e
* section.c (bfd_make_section): Return NULL for existing section.
2003-07-04 04:14:56 +00:00
Alan Modra
fa681e5d43
* elf32-ppc.c (ppc_elf_create_dynamic_sections): Don't call
...
ppc_elf_create_got if we've already done so.
2003-07-04 01:57:26 +00:00
Alan Modra
3dab13f62b
* elf-bfd.h (_bfd_elf_create_linker_section) Don't declare.
...
(_bfd_elf_find_pointer_linker_section): Likewise.
(bfd_elf32_create_pointer_linker_section): Likewise.
(bfd_elf32_finish_pointer_linker_section): Likewise.
(bfd_elf64_create_pointer_linker_section): Likewise.
(bfd_elf64_finish_pointer_linker_section): Likewise.
(_bfd_elf_make_linker_section_rela): Likewise.
* elfcode.h (elf_create_pointer_linker_section): Don't define.
(elf_finish_pointer_linker_section): Likewise.
* elflink.c (_bfd_elf_make_linker_section_rela): Delete.
(_bfd_elf_create_linker_section): Move this function..
(_bfd_elf_find_pointer_linker_section): ..and this..
* elflink.h (elf_create_pointer_linker_section): ..and this..
(elf_finish_pointer_linker_section): ..and this..
* elf32-ppc.c: ..to here, renaming to the following, and adjusting
calls.
(elf_create_linker_section): Convert to C90, tidy.
(elf_find_pointer_linker_section): Likewise.
(elf_create_pointer_linker_section): Likewise.
(elf_finish_pointer_linker_section): Likewise.
* elf32-i370.c: Delete #if 0 code.
2003-07-04 01:50:12 +00:00
Alan Modra
b214fcbec0
daily update
2003-07-04 00:00:05 +00:00
Alan Modra
3c5c592957
daily update
2003-07-03 00:00:05 +00:00
Alan Modra
772119ce53
* elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't allow _savef* and
...
_restf* to be satisfied by shared libs, and always force them local.
(toc_adjusting_stub_needed): Avoid scanning linker created sections.
Correct test for "bl".
(ppc64_elf_relocate_section <R_PPC64_TLS>): Correct test for
primary opcode 31.
2003-07-02 07:41:51 +00:00
Alan Modra
70f25c551c
daily update
2003-07-02 00:00:05 +00:00
Martin Schwidefsky
bd1ea41b84
* elf32-s390.c (s390_elf_ldisp_reloc): New prototype.
...
(s390_tls_reloc): New function.
(elf_howto_table): Add long displacement relocations R_390_20,
R_390_GOT20, R_390_GOTPLT20 and R_390_TLS_GOTIE20.
(elf_s390_reloc_type_lookup): Likewise.
(elf_s390_check_relocs): Likewise.
(elf_s390_gc_sweep_hook): Likewise.
(elf_s390_relocate_section): Likewise.
* elf64-s390.c: Same changes as for elf32-s390.c.
* reloc.c: Add long displacement relocations BFD_RELOC_390_20,
BFD_RELOC_390_GOT20, BFD_RELOC_390_GOTPLT20 and
BFD_RELOC_390_TLS_GOTIE20.
* bfd-in2.h: Regenerate.
* libbfd.h: Likewise.
2003-07-01 14:44:59 +00:00
Alan Modra
34fef7f4d8
daily update
2003-07-01 00:00:05 +00:00
Alan Modra
113202d6bc
* cpu-ia64-opc.c (ext_imms_scaled): Don't sign extend using shifts.
...
(ins_imms, ins_immsm1u4): Likewise. Warning fix.
2003-06-30 04:09:27 +00:00
Alan Modra
f1f18543ca
daily update
2003-06-30 00:00:05 +00:00
Alan Modra
c58b95236c
Convert to C90 and a few tweaks.
2003-06-29 10:06:40 +00:00
Andreas Jaeger
58611256d8
Add forgotten ChangeLog snippet for last elf64-x86-64.c patch.
2003-06-29 10:02:24 +00:00
Andreas Jaeger
27482721cf
* elf64-x86-64.c: Convert to ISO C90 prototypes, remove
...
unnecessary prototypes. Replace PTR with void *.
2003-06-29 05:57:36 +00:00
Alan Modra
7cfbef4774
daily update
2003-06-29 00:00:37 +00:00
Thiemo Seufer
2b86c02e74
* elfxx-mips.c: Allow lazy binding for R_MIPS_JALR.
2003-06-28 22:13:37 +00:00
Alan Modra
0d5b97c55d
daily update
2003-06-28 00:00:06 +00:00
Nick Clifton
e7c81c254c
Fix --add-gnu-debuglink
2003-06-27 08:01:28 +00:00
Thiemo Seufer
72b4917c07
* elfxx-mips.c: Revert .got alignment to 2**4.
2003-06-27 07:32:33 +00:00
Thiemo Seufer
917090909e
* elf32-mips.c: Fix addend for _gp_disp special symbol.
2003-06-27 07:31:27 +00:00
Thiemo Seufer
7a79a000c1
* elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove non-default
...
relocation header setup.
* binutils-all/readelf.ss-tmips: Adjust symbol indices.
2003-06-27 01:16:30 +00:00
Alan Modra
4be5b94a41
daily update
2003-06-27 00:00:05 +00:00
Alan Modra
f6b91f13b5
daily update
2003-06-26 00:00:05 +00:00
Alan Modra
51b1e980ba
Missed copyright update in last commit.
2003-06-25 11:07:05 +00:00
Alan Modra
e47cd12545
* elf32-ppc.c (ppc_elf_howto_table): Remove unnecessary cast.
...
(ppc_elf_reloc_type_lookup): Modify comment.
(ppc_elf_info_to_howto): Ditto.
(ppc_elf_relocate_section): Ditto.
(ppc_elf_check_relocs): Call ppc_elf_howto_init.
2003-06-25 11:05:58 +00:00
Alan Modra
1049f94e8e
Correct spelling of "relocatable".
2003-06-25 06:40:27 +00:00
Alan Modra
59861b363a
daily update
2003-06-25 00:00:05 +00:00
Alan Modra
d85f2c7d1f
* elf32-ppc.c (ppc_elf_check_relocs): Report plt reloc against
...
local sym errors.
2003-06-24 14:17:22 +00:00
Alan Modra
55fd94b056
* elf32-i386.c: Convert to C90 function definitions, remove unnecessary
...
prototypes and casts. Replace PTR with void *. Formatting.
* elf32-ppc.c: Likewise. Break long strings too.
(ppc_elf_relax_section): Use enum elf_ppc_reloc_type for r_type.
(ppc_elf_unhandled_reloc): Internationalize error message.
* elf32-ppc.h: Remove PARAMS.
2003-06-24 14:03:53 +00:00
Mark Mitchell
88810f8cd1
* elf32-ppc.c (ppc_elf_begin_write_processing): Use bytes to count
...
APUinfo slots.
(ppc_elf_final_write_processing): Likewise.
2003-06-24 06:41:36 +00:00
Alan Modra
8ee95d47b6
daily update
2003-06-24 00:00:05 +00:00
H.J. Lu
6e35c4dafc
2003-06-23 H.J. Lu <hongjiu.lu@intel.com>
...
* elflink.h (elf_link_input_bfd): Check raw size when using
kept_section to preserve debug information discarded by
linkonce.
2003-06-23 23:39:39 +00:00
Alan Modra
fbe56916cf
daily update
2003-06-23 00:09:44 +00:00
Alan Modra
cdff990c2f
daily update
2003-06-21 00:00:06 +00:00
Alan Modra
8f3bab5775
* elf64-ppc.c (struct ppc_link_hash_table): Add top_id.
...
(ppc64_elf_setup_section_lists): Set it.
(ppc64_elf_relocate_section): Check sym section id against top_id.
(ppc_build_one_stub): Comment on top_id.
2003-06-20 12:35:30 +00:00
Nick Clifton
efbc813eb3
Add tic4x-*-rtems*.
2003-06-20 08:36:19 +00:00
Alan Modra
4ce794b729
* elf64-ppc.c: Convert to C90 function definitions, remove unnecessary
...
prototypes and casts. Replace PTR with void *. Format copyright.
Mention ABI links.
(struct ppc_link_hash_table): Rename sgot, srelgot, splt, srelplt,
sdynbss, srelbss, sglink, sbrlt and srelbrlt to got, relgot .. relbrlt.
(ppc_type_of_stub): Make r_type an enum.
(ppc64_elf_size_stubs): Likewise.
* elf64-ppc.h: Remove PARAMS macro.
2003-06-20 05:30:46 +00:00
Alan Modra
1698d123e2
daily update
2003-06-20 00:00:05 +00:00
Alan Modra
3254fd24bd
* elf64-ppc.c (ppc64_elf_link_hash_table_create): Reinstate init of
...
elf hash tab fields.
2003-06-19 15:11:26 +00:00
Alan Modra
d2a300cfe3
* elf64-ppc.c (ppc64_elf_reloc_type_lookup): Tidy prototype.
...
(ppc64_elf_info_to_howto): Likewise.
(ppc64_elf_build_stubs): Add "stats" param, and print statistics.
* elf64-ppc.h (ppc64_elf_build_stubs): Adjust prototype.
2003-06-19 13:50:35 +00:00
Alan Modra
83615de03f
* elf64-sparc.c (sparc64_elf_relocate_section): Ignore R_SPARC_DISP32
...
reloc overflow on discarded eh_frame entries.
2003-06-19 13:21:53 +00:00
Alan Modra
9b5ecbd0c6
* elf64-ppc.c (toc_adjusting_stub_needed): New function.
...
(ppc64_elf_next_input_section): Use it here to set has_gp_reloc.
Return error condition.
(ppc64_elf_size_stubs): Restrict toc adjusting stubs to sections
that have has_gp_reloc set.
(struct ppc_link_hash_table): Add stub_count.
(ppc_build_one_stub): Increment it.
(ppc64_elf_link_hash_table_create): zmalloc rather than clearing
individual fields.
* elf64-ppc.h (ppc64_elf_next_input_section): Update prototype.
2003-06-19 11:49:02 +00:00
Alan Modra
c8b5eb5f85
daily update
2003-06-19 00:00:06 +00:00
Alan Modra
64c456e1a1
* elflink.h (elf_gc_record_vtentry): Revert last change. Correct
...
size calculation from addend. Round size up.
2003-06-18 05:18:06 +00:00
Hans-Peter Nilsson
3dab95d324
* elf32-cris.c (cris_elf_relocate_section) <case
...
R_CRIS_32_GOTREL>: When linking a program, don't complain about a
symbol from a normal object or an undefined weak symbol.
2003-06-18 04:14:14 +00:00
Alan Modra
0b13192e9f
* elf64-ppc.c (ppc64_elf_relocate_section): Accept a symbol on
...
R_PPC64_TOC relocs.
2003-06-18 03:26:22 +00:00
H.J. Lu
f97b9cb853
bfd/
...
2003-06-17 H.J. Lu <hongjiu.lu@intel.com>
* section.c (struct sec): Put back kept_section.
(STD_SECTION): Put back kept_section initialization.
* bfd-in2.h: Regenerate.
* elflink.h (elf_link_input_bfd): Also check discarded linkonce
sections for relocateable output. Use kept_section to preserve
debug information discarded by linkonce.
ld/
2003-06-17 H.J. Lu <hongjiu.lu@intel.com>
* ldlang.c (section_already_linked): Put back assignment of
kept_section.
2003-06-18 00:30:04 +00:00
Alan Modra
e6300d0dc6
daily update
2003-06-18 00:00:05 +00:00
H.J. Lu
9f1c3a0af7
2003-06-17 Roland McGrath <roland@redhat.com>
...
* elfxx-ia64.c (elfNN_ia64_relocate_section): Support
segment-relative relocation between different segments.
2003-06-17 23:43:18 +00:00
Alan Modra
1cf1f67042
* elf64-ppc.c (ppc64_elf_relocate_section): Do unaligned reloc
...
optimizations earlier.
2003-06-17 14:22:46 +00:00
Alan Modra
734b6cf9ae
* elf64-ppc.c (struct ppc_link_hash_table): Reinstate top_index.
...
Restore previous input_list type.
(ppc64_elf_link_hash_table_create): Undo last change.
(ppc64_elf_setup_section_lists): Reinstate code setting up input lists
per output section, but don't bother with bfd_abs_section marker.
(ppc64_elf_next_input_section): Adjust for multiple input section
lists.
(group_sections): Likewise.
2003-06-17 13:43:02 +00:00
Jakub Jelinek
23fbd6fa70
* elf64-ppc.c (ppc64_elf_relocation_section): Ensure
...
*r_offset == r_addend for RELATIVE relocs against .got.
2003-06-17 12:39:41 +00:00
Alan Modra
dad27d18ac
* elf64-ppc.c (ppc64_elf_relocate_section): Optimize unaligned relocs.
2003-06-17 12:37:26 +00:00
Nick Clifton
b613960add
(elf_gc_record_vtentry): Allocate an extra element in the vtable_entries_used
...
array to allow for the accessing the largest element.
2003-06-17 09:57:18 +00:00
Alan Modra
3d6f9012bb
* elf64-ppc.c (struct ppc_link_hash_table): Remove top_index. Modify
...
input_list.
(ppc64_elf_link_hash_table_create): Init input_list here.
(ppc64_elf_setup_section_lists): Remove code setting up input lists
per output section. Set toc_off for abs and other standard sections.
(ppc64_elf_reinit_toc): Don't set elf_gp on input bfds lacking a toc.
(ppc64_elf_next_input_section): Adjust for single input section list.
Don't set toc_curr from input bfds that haven't set elf_gp.
(group_sections): Adjust for single input section list.
2003-06-17 09:10:41 +00:00
Alan Modra
000732f753
* elf64-ppc.c (ppc64_elf_relocate_section): Correct pcrel section zero.
2003-06-17 00:25:45 +00:00
Alan Modra
6a3b19105f
daily update
2003-06-17 00:00:04 +00:00
Alan Modra
81407a69a5
* elf64-ppc.c (ppc64_elf_relocate_section): When optimizing toctprel
...
tls, check that a TOC16_DS or TOC16_LO_DS reloc isn't pointing to a
dtprel entry. Ensure TLS_LD DTPMOD reloc has a zero addend. Write
got section for RELATIVE relocs. Fix wrong comment. Change condition
under which dynamic relocs update the section contents.
2003-06-16 10:50:22 +00:00
Alan Modra
0e6b25ec0e
daily update
2003-06-16 00:00:05 +00:00
Alan Modra
3f8b8186e9
daily update
2003-06-15 00:00:04 +00:00
Alan Modra
54da0153dd
daily update
2003-06-14 00:00:06 +00:00
Nick Clifton
a06a29f25f
Add i386-netbsd-gnu target.
2003-06-13 13:17:58 +00:00
Alan Modra
3732bf5de3
daily update
2003-06-13 00:00:06 +00:00
Nick Clifton
2593f09acc
Add new switch to objcopy: --add-gnu-debuglink=<file>
...
Allows packages to be shipped in two forms, a stripped executable and debug
info file.
2003-06-12 07:23:31 +00:00
Nick Clifton
7d1ebfb2ed
(i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3]): New target (was i[3-7]86-*-openbsd* before).
...
(i[3-7]86-*-openbsd*): Change to use bfd_elf32_i386_vec.
(vax-*-openbsd*): New target.
2003-06-12 07:21:50 +00:00
Alan Modra
7282305265
daily update
2003-06-12 00:00:06 +00:00
Thiemo Seufer
d80dcc6af4
* elfxx-mips.c (MIPS_ELF_OPTIONS_SECTION_NAME): Use .MIPS.options
...
for n32, too.
(MIPS_ELF_STUB_SECTION_NAME): Use .MIPS.stubs for n32, too.
(mips_elf_rel_dyn_section): Use appropriate section alignment.
(mips_elf_create_got_section): Likewise.
(_bfd_mips_elf_create_dynamic_sections): Likewise.
* ld-mips-elf/multi-got-1.d: Adjust addresses.
* ld-mips-elf/rel32-n32.d: Likewise.
2003-06-11 21:01:50 +00:00
Thiemo Seufer
a7ebbfdf67
* elf32-mips.c (mips_elf_generic_reloc): New Function.
...
(elf_mips_howto_table_rel): Use it.
(gprel32_with_gp): Move prototype.
(mips_elf_hi16_reloc): Check for ! BSF_LOCAL instead of zero addend.
Use mips_elf_generic_reloc.
(mips_elf_got16_reloc): Check for ! BSF_LOCAL instead of zero addend.
Code cleanup.
(_bfd_mips_elf32_gprel16_reloc): Check for ! BSF_LOCAL instead of
zero addend.
(mips_elf_gprel32_reloc): Likewise. Use the same GP assignment logic
as in the other *_gprel*_reloc functions.
(gprel32_with_gp): Handle partial_inplace properly.
(mips32_64bit_reloc): Use mips_elf_generic_reloc.
(mips16_gprel_reloc): Check for ! BSF_LOCAL instead of zero addend.
Do addend handling directly instead of calling
_bfd_mips_elf_gprel16_with_gp. Handle partial_inplace properly.
* elf64-mips.c (mips_elf64_hi16_reloc): Check for ! BSF_LOCAL instead
of zero addend. Handle partial_inplace properly.
(mips_elf64_got16_reloc): Check for ! BSF_LOCAL instead of zero
addend.
(mips_elf64_gprel16_reloc): Likewise.
(mips_elf64_literal_reloc): Likewise.
(mips_elf64_gprel32_reloc): Likewise. Use the same GP assignment
logic as in the other *_gprel*_reloc functions. Handle
partial_inplace properly.
(mips_elf64_shift6_reloc): Check for ! BSF_LOCAL instead of zero
addend. Handle partial_inplace properly.
(mips16_gprel_reloc): Likewise. Do addend handling directly instead
of calling _bfd_mips_elf_gprel16_with_gp.
* elfn32-mips.c (mips_elf_got16_reloc): Check for BSF_LOCAL.
(mips_elf_gprel32_reloc): Check for ! BSF_LOCAL instead
of zero addend.
(mips_elf_shift6_reloc): Handle partial_inplace properly.
(mips16_gprel_reloc): Likewise. Do addend handling directly instead
of calling _bfd_mips_elf_gprel16_with_gp.
* elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Handle
partial_inplace properly. Fix wrong addend handling. Fix overflow
check.
(_bfd_mips_elf_sign_extend): Renamed from mips_elf_sign_extend and
exported.
(mips_elf_calculate_relocation): Use _bfd_mips_elf_sign_extend.
(_bfd_mips_elf_relocate_section): Likewise.
(mips_elf_create_dynamic_relocation): Update sec_info_type access.
* elfxx-mips.h (_bfd_mips_relax_section): Fix prototype declaration.
(_bfd_mips_elf_sign_extend): New prototype.
* config/tc-mips.c (md_pcrel_from): Return actual pcrel address.
(md_apply_fix3): Ignore non-special relocations. Remove superfluous
exceptions from size assert. Remove most of the addend fixup
specialcasing. Remove value, use valP directly. simplify fx_addnumber
handling. Remove zero addend specialcases.
(tc_gen_reloc): Use appropriate value for reloc2 addend. Remove
the addend fixup specialcase.
* config/tc-mips.h (MD_APPLY_SYM_VALUE): Define as 0.
2003-06-11 16:22:26 +00:00
Nick Clifton
de6e5e1a72
* configure.in (vax-*-openbsd*): Set COREFILE to netbsd-core.lo.
...
* configure: Regenerate.
2003-06-11 13:38:07 +00:00
Nick Clifton
49ba19a457
* config.bfd (sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1]): New target
...
(was sparc-*-openbsd* before).
(sparc-*-openbsd*): Change to use bfd_elf32_sparc_vec.
2003-06-11 13:34:50 +00:00
H.J. Lu
3b4433739c
bfd/
...
2003-06-06 H.J. Lu <hongjiu.lu@intel.com>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
binutils/
2003-06-06 H.J. Lu <hongjiu.lu@intel.com>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
gas/
2003-06-06 H.J. Lu <hongjiu.lu@intel.com>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
gprof/
2003-06-06 H.J. Lu <hongjiu.lu@intel.com>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
ld/
2003-06-06 H.J. Lu <hongjiu.lu@intel.com>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
opcodes/
2003-06-06 H.J. Lu <hongjiu.lu@intel.com>
* po/Make-in (DESTDIR): New.
(install-data-yes): Support $(DESTDIR).
(uninstall): Likewise.
2003-06-11 01:32:08 +00:00
Alan Modra
dacb1b5920
daily update
2003-06-11 00:00:05 +00:00
Alan Modra
795bb480ca
* bfd/Makefile.am (config.status): Depend on version.h.
...
Run "make dep-am" in bfd/ and elsewhere, and regen files.
2003-06-10 23:44:42 +00:00
Alan Modra
adadcc0cc9
Add "attn", "lq" and "stq" power4 insns.
2003-06-10 07:44:11 +00:00
Richard Sandiford
f4984206d8
include/elf/
...
* h8.h (E_H8_MACH_H8300SXN): New flag.
bfd/
* archures.c (bfd_mach_h8300sxn): New architecture.
* bfd-in2.h: Regenerate.
* cpu-h8300.c (h8300_scan): Check for 'sxn'.
(h8300sxn_info_struct): New.
(h8300sx_info_struct): Link to it.
* elf32-h8300.c (elf32_h8_mach): Add h8300sxn case.
(elf32_h8_final_write_processing): Likewise.
gas/
* config/tc-h8300.c (h8300sxnmode): New.
(md_pseudo_table): Add .h8300sxn entry. Sync others with FSF version.
ld/
* configure.tgt (h8300*): Add h8300sxn emulations.
* Makefile.am (ALL_EMULATIONS): Add eh8300sxn.o and eh8300sxnelf.o.
(eh8300sxn.c, eh8300sxnelf.c): New rules.
* Makefile.in: Regenerate.
* emulparams/h8300sxnelf.sh, emulparams/h8300sxn.sh: New files.
2003-06-10 07:09:31 +00:00
Alan Modra
ea1eda6a1f
daily update
2003-06-10 00:00:05 +00:00
Alan Modra
2596047a51
daily update
2003-06-09 00:00:05 +00:00
Alan Modra
ad8e1ba599
* elf64-ppc.c: Move TARGET_LITTLE_SYM and other macros used by
...
elfxx-target.h so that we can use elf_backend_got_header_size.
(ELF_MACHINE_ALT1, ELF_MACHINE_ALT2): Delete.
(GLINK_CALL_STUB_SIZE): Modify. Define new glink call stub and
associated macros.
(ppc64_elf_howto_raw <GOT_TPREL16_DS, GOT_TPREL16_LO_DS>): Correct
dst_mask.
(enum ppc_stub_type): Add ppc_stub_long_branch_r2off and
ppc_stub_plt_branch_r2off.
(struct ppc_stub_hash_entry): Reorganize.
(struct ppc_link_hash_table): Add no_multi_toc, multi_toc_needed,
toc_curr, toc_off and emit_stub_syms.
(ppc64_elf_link_hash_table_create): Init them.
(ppc_stub_name): Correct string size.
(ppc64_elf_check_relocs): Set has_gp_reloc on GOT and TOC relocs.
(ppc64_elf_size_dynamic_sections): Set no_multi_toc if GOT entries
used.
(ppc_type_of_stub): Tweak root.type test.
(build_plt_stub): Remove glink code. Adjust for insn macro changes.
(ppc_size_one_stub): Handle ppc_stub_long_branch_r2off and
ppc_stub_plt_branch_r2off.
(ppc_build_one_stub): Likewise. Fix var shadowing. Correct addis,addi
range test. Use toc_off to calculte r2 values. Handle emit_stub_syms.
(ppc64_elf_setup_section_lists): Remove htab creator flavour test.
Initialize elf_gp and toc_curr.
(ppc64_elf_next_toc_section, ppc64_elf_reinit_toc): New functions.
(ppc64_elf_next_input_section): Set toc_off.
(group_sections): Ensure groups have the same TOC.
(ppc64_elf_size_stubs): Check whether we need a TOC adjusting stub.
(ppc64_elf_build_stubs): Add emit_stub_syms param, and stash in htab.
Build new glink stub.
(ppc64_elf_relocate_section): Handle multiple TOCs. Fix comments.
(ppc64_elf_finish_dynamic_sections): Adjust DT_PPC64_GLINK.
* elf64-ppc.h (ppc64_elf_build_stubs): Update prototype.
(ppc64_elf_next_toc_section, ppc64_elf_reinit_toc): Declare.
* section.c (struct sec): Rename flag12 to has_gp_reloc.
(STD_SECTION): Update.
* ecoff.c (bfd_debug_section): Update comment.
* bfd-in2.h: Regenerate.
2003-06-08 14:06:38 +00:00
Alan Modra
5f7adbf064
daily update
2003-06-08 00:00:06 +00:00
Alan Modra
789b97bf70
daily update
2003-06-07 00:00:05 +00:00
Daniel Jacobowitz
90fff0d44f
* elfcode.h (elf_slurp_reloc_table_from_section): Don't dereference
...
NULL function pointers.
2003-06-06 02:12:04 +00:00
Alan Modra
3dc08f3180
daily update
2003-06-06 00:00:05 +00:00
Daniel Jacobowitz
c82b20e457
* simple.c (bfd_simple_get_relocated_section_contents): Call
...
_bfd_generic_link_add_symbols instead of bfd_link_add_symbols.
2003-06-05 14:07:52 +00:00
Svein Seldal
5a5b96513f
Moved the ticoff0/1 swaptables and coff0/1 bad format hooks to coffcode.h
2003-06-04 11:38:30 +00:00
Svein Seldal
53d4437ac6
Altered the CREATE_xxx_COFF_TARGET_VEC macro arguments -- changelog dropped out
2003-06-04 11:15:09 +00:00
Svein Seldal
3fa785190a
Altered the CREATE_xxx_COFF_TARGET_VEC macro arguments
2003-06-04 10:47:33 +00:00
Svein Seldal
736694c89e
Fixed initialization bug
2003-06-04 10:11:02 +00:00
Jakub Jelinek
9ee5e4996f
binutils/
...
* readelf.c (get_segment_type): Handle PT_GNU_STACK.
bfd/
* elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_STACK.
(bfd_section_from_phdr): Likewise.
(map_sections_to_segments): Create PT_GNU_STACK segment header.
(get_program_header_size): Count with PT_GNU_STACK.
* elf-bfd.h (struct elf_obj_tdata): Add stack_flags.
* elflink.h (bfd_elfNN_size_dynamic_sections): Set stack_flags.
include/
* bfdlink.h (struct bfd_link_info): Add execstack and noexecstack.
* elf/common.h (PT_GNU_STACK): Define.
ld/
* ldgram.y (phdr_type): Grok PT_GNU_STACK.
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
-z execstack and -z noexecstack.
(gld${EMULATION_NAME}_list_options): Likewise.
* scripttempl/elf.sc: If not -r, discard .note.GNU-stack section.
2003-06-03 22:27:24 +00:00
H.J. Lu
6f6f27f842
bfd/
...
2003-06-03 H.J. Lu <hongjiu.lu@intel.com>
* elflink.h (elf_link_input_bfd): Call linker error_handler
for discarded definitions.
include/
2003-06-03 H.J. Lu <hongjiu.lu@intel.com>
* bfdlink.h (LD_DEFINITION_IN_DISCARDED_SECTION): New.
ld/
2003-06-03 H.J. Lu <hongjiu.lu@intel.com>
* ldmisc.c: Include "bfdlink.h".
(error_handler): Handle LD_DEFINITION_IN_DISCARDED_SECTION
and -LD_DEFINITION_IN_DISCARDED_SECTION.
* Makefile.am: Rebuild dependency.
* Makefile.in: Regenerated.
ld/testsuite/
2003-06-03 H.J. Lu <hongjiu.lu@intel.com>
* ld-discard/extern.d: Updated.
* ld-discard/start.d: Likewise.
* ld-discard/static.d: Likewise.
2003-06-03 18:15:05 +00:00
Nick Clifton
a3b6428fe7
Return 'n' if section flags are SEC_HAS_CONTENTS && SEC_READONLY.
2003-06-03 17:45:49 +00:00
Nick Clifton
e30ddb24b3
Add pc-relative 32-bit reloc to v850 port. Fixes ld-elf/merge test failure.
2003-06-03 16:24:06 +00:00
Kaz Kojima
2558b9a9f0
* elf32-sh.c (sh_elf_size_dynamic_sections): Create .interp section
...
and DT_DEBUG dynamic tag even for position independent executables.
* elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewize.
2003-06-03 04:50:20 +00:00
Daniel Jacobowitz
f15398ef83
* config.bfd: Move obsolete entries out of the range of the
...
targmatch sed script.
2003-06-02 19:25:51 +00:00
Daniel Jacobowitz
cad2898553
* config.bfd (mips*-dec-bsd*, mips*-*-pe*): Mark as obsolete.
2003-06-02 18:59:49 +00:00
Alan Modra
12be538b0b
daily update
2003-06-02 00:00:05 +00:00
Alan Modra
e8898e69f1
daily update
2003-06-01 00:00:05 +00:00
Jakub Jelinek
f2c822e386
* elf32-ppc.c (allocate_dynrelocs): Use single slot for first 8192
...
plt entries, not just 8191.
2003-05-31 07:55:10 +00:00
Alan Modra
081933c009
daily update
2003-05-31 00:57:55 +00:00
Daniel Jacobowitz
c9c27aad54
* elfxx-mips.c (_bfd_mips_elf_discard_info): Correct loop index.
...
Reported by Ken Faiczak <kfaiczak@SANDVINE.com>.
2003-05-30 19:13:36 +00:00
Jakub Jelinek
36af4a4e51
bfd/
...
* elflink.h (elf_link_add_object_symbols): Use !info->executable
instead of info->shared where appropriate.
(bfd_elfNN_size_dynamic_sections, elf_link_output_extsym): Likewise.
* elflink.c (_bfd_elf_create_got_section): Likewise.
(_bfd_elf_link_create_dynamic_sections): Likewise.
(_bfd_elf_link_assign_sym_version): Likewise.
* elf32-i386.c (elf_i386_size_dynamic_sections): Create .interp section
and DT_DEBUG dynamic tag even for position independent executables.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
* elf32-s390.c (elf_s390_size_dynamic_sections: Likewise.
* elf64-ppc.c (ppc64_elf_size_dynamic_sections: Likewise.
* elf64-s390.c (elf_s390_size_dynamic_sections: Likewise.
* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections: Likewise.
* elfxx-ia64.c (elfNN_ia64_size_dynamic_sections: Likewise.
* elf32-sparc.c (elf32_sparc_size_dynamic_sections: Likewise.
* elf64-alpha.c (elf64_alpha_size_dynamic_sections: Likewise.
* elf64-sparc.c (sparc64_elf_size_dynamic_sections: Likewise.
include/
* bfdlink.h (struct bfd_link_info): Add pie and executable
bits.
ld/
* lexsup.c (OPTION_PIE): Define.
(ld_options): Add -pie and --pic-executable options.
(parse_args): Handle OPTION_PIE.
* ldmain.c (main): Initialize link_info.pie and
link_info.executable.
* genscripts.sh: Generate PIE scripts.
* ld.texinfo: Document -pie and --pic-executable options.
* emultempl/elf32.em (gld${EMULATION_NAME}_after_open):
(gld${EMULATION_NAME}_place_orphan): Likewise.
(gld${EMULATION_NAME}_get_script): Include PIE scripts.
* scripttempl/elf.sc: In PIE scripts set . the same way as in
shared scripts.
* emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Set to yes.
* emulparams/elf64_ia64.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf32ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf_x86_64.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf32_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64alpha.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Likewise.
2003-05-30 15:50:12 +00:00
Alan Modra
027e4eea9c
daily update
2003-05-30 00:00:04 +00:00
Alan Modra
f8843e8713
* elf.c (elfcore_grok_nto_status): Only set lwpid for the active or
...
signalled thread.
(elfcore_grok_nto_gregs): Only make .reg section for the active thread.
2003-05-29 23:50:04 +00:00
Nick Clifton
29e1a6e4ca
Replace <ctype.h> with "safe-ctype.h"
2003-05-29 15:05:41 +00:00
Thiemo Seufer
4b55507088
* elfxx-mips.c: Don't force symbols local unconditionally.
2003-05-29 02:28:32 +00:00
Alan Modra
7bd7a2abff
daily update
2003-05-29 00:00:05 +00:00
H.J. Lu
0236e03ee7
2003-05-28 Alan Modra <amodra@bigpond.net.au>
...
* elf32-hppa.c (elf32_hppa_relocate_section): Delete bogus
undefined_symbol call.
2003-05-28 20:27:51 +00:00
Richard Sandiford
9e4aeb9307
* elfxx-mips.c (mips_elf_hash_sort_data): Fix formattting.
...
(mips_elf_link_hash_table): Likewise.
2003-05-27 08:04:12 +00:00
Alan Modra
0b4ffb6c40
daily update
2003-05-23 00:00:06 +00:00
Thiemo Seufer
d0c728db63
* elf64-mips.c (elf_mips_gnu_rel16_s2): Add internally used
...
R_MIPS_GNU_REL16_S2 support.
(bfd_elf64_bfd_reloc_type_lookup): Use it.
(mips_elf64_rtype_to_howto): Use it.
* elfn32-mips.c (elf_mips_gnu_rel16_s2): Add internally used
R_MIPS_GNU_REL16_S2 support.
(bfd_elf32_bfd_reloc_type_lookup): Use it.
(mips_elf_n32_rtype_to_howto): Use it.
2003-05-22 09:27:52 +00:00
Dave Anglin
759ebd765d
* som.h: Define PA_2_0 before including a.out.h
2003-05-22 03:34:52 +00:00
Alan Modra
2e7b6c08fd
daily update
2003-05-22 00:00:06 +00:00
Eric Christopher
143d77c5e9
2003-05-07 Eric Christopher <echristo@redhat.com>
...
Alexandre Oliva <aoliva@redhat.com>
* elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Adjust
pic tests, change to warning.
(_bfd_mips_elf_final_link): Remove EF_MIPS_CPIC flag setting.
2003-05-07 Eric Christopher <echristo@redhat.com>
* config/tc-mips.c (mips_abicalls): New variable.
(md_parse_option): Use.
(s_option): Ditto.
(s_abicalls): Ditto.
(mips_elf_final_processing): Set EF_MIPS_PIC and
EF_MIPS_CPIC dependent on above.
2003-05-21 21:53:33 +00:00
Nick Clifton
cea3d58d02
Check for a target triplet of shl-...-netbsdelf as well as shle-...-netbsdelf.
2003-05-21 13:06:30 +00:00
Nick Clifton
60e424089f
Fix dst_mask for X_STORMY16_REL_12 reloc.
2003-05-21 12:36:46 +00:00
Nick Clifton
385a4c14f3
USe is_elf_hash_table() to check for the presence of an elf_link_hash_table
2003-05-21 09:23:07 +00:00
Roland McGrath
129b8c20a8
.
2003-05-21 00:57:35 +00:00