Ian Lance Taylor
e900e695a2
* elf32-mips.c (FN_STUB, CALL_STUB, CALL_FP_STUB): Define.
...
(struct mips_elf_link_hash_entry): Add new fields fn_stub,
need_fn_sub, call_stub, and call_fp_stub.
(struct mips_elf_link_hash_table): Add field mips16_stubs_seen.
(mips_elf_link_hash_newfunc): Initialize new fields.
(mips_elf_link_hash_table_create): Likewise.
(mips_elf_relocate_section): Redirect relocations to use mips16
stubs when appropriate.
(mips_elf_check_relocs): Attach stub sections to the appropriate
symbol. Set need_fn_stub when appropriate.
(mips_elf_always_size_sections): New static function.
(mips_elf_check_mips16_stubs): New static function.
(elf_backend_always_size_sections): Define.
* elf-bfd.h (struct elf_obj_tdata): Add local_stubs field.
1997-02-06 22:15:37 +00:00
Ian Lance Taylor
258b1f5d18
* elflink.h (elf_link_input_bfd): Discard local symbols that are
...
attached to sections which are not being included in the link.
1997-02-06 22:02:51 +00:00
Ian Lance Taylor
5b61a02aae
* cofflink.c (_bfd_coff_generic_relocate_section): Ignore the
...
symbol value when computing the addend for a pc_relative
pcrel_offset reloc.
1997-02-05 18:21:08 +00:00
Ian Lance Taylor
5a50eec623
* cofflink.c (_bfd_coff_generic_relocate_section): If doing a
...
relocateable link, just skip pc_relative pcrel_offset relocs.
* coff-arm.c (coff_arm_rtype_to_howto): Return a different howto
structure for an ARM26 reloc which can be resolved.
(coff_arm_adjust_symndx): Only convert ARM26 to ARM26D if the
reloc can be resolved.
PR 11599.
1997-02-03 20:31:39 +00:00
Ian Lance Taylor
bcb686ca09
* coff-h8300.c (h8300_reloc16_extra_cases): Correct off by one
...
error in overflow check for R_RELBYTE.
PR 11591.
1997-02-03 16:54:36 +00:00
Ian Lance Taylor
e9797c8ae5
comment fix
1997-01-31 23:15:42 +00:00
Ian Lance Taylor
6c58561e7a
* ieee.c (ieee_slurp_section_data): Pick up the start address.
...
From Mark Rasin <mark.rasin@telrad.co.il>.
1997-01-31 19:15:40 +00:00
Ian Lance Taylor
167dc907f2
* aoutx.h (aout_link_write_symbols): Don't apply discard_l to
...
debugging symbols.
Mentioned in PR 11540.
1997-01-31 19:08:31 +00:00
Jeff Law
1a2faf1f1e
* elf32-mn10200.c (reloc_type): Add 16bit pc-relative reloc.
...
(elf_mn10200_howto_table): Likewise.
(mn10200_reloc_map): Likewise.
How did I miss the 16bit pc-relative relocs?!?
1997-01-29 07:02:22 +00:00
David Edelsohn
1d5c6cfdf0
* reloc.c: Add relocs BFD_RELOC_M32R_{HI16_[US]LO,LO16}.
...
* bfd-in2.h, libbfd.h: Regenerated.
* elf32-m32r.c: Add support for them.
1997-01-27 20:35:24 +00:00
Ian Lance Taylor
54aa1deab3
* aout-arm.c (MY_swap_std_reloc_in): Remove unused r_length.
...
* elf32-ppc.c (ppc_elf_check_relocs): Remove unused plt.
start-sanitize-v850
* elf32-v850.c (v850_elf_final_link_relocate): Remove used
r_format and r_pcrel. Always return a value.
end-sanitize-v850
* riscix.c (MY_final_link_callback): Define to dummy value.
1997-01-27 18:22:54 +00:00
Ian Lance Taylor
9950f925f7
* elf32-i386.c (elf_i386_size_dynamic_sections): When checking for
...
relocations against the text segment, look up the output name of
the reloc section.
* elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
* elf32-mips.c (mips_elf_size_dynamic_sections): Likewise.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise.
* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
1997-01-27 18:13:01 +00:00
Fred Fish
8c00b01dee
* coff-tic80.c (tic80coff_vec): Use correct data put/get
...
routines for little endian data.
* coffcode.h (coff_write_object_contents): Set magic to
TIC80_ARCH_MAGIC for TIc80.
1997-01-23 03:09:05 +00:00
Fred Fish
0716c2e910
* coff-tic80.c (tic80coff_vec): Change to little endian data
...
as the default.
1997-01-21 20:15:46 +00:00
Ian Lance Taylor
db109ca2d8
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Change type of
...
auxiliary_filters parameter to be const char * const *. Accept a
NULL terminated array.
* bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
(bfd_elf32_size_dynamic_sections): Update declaration.
* bfd-in2.h: Rebuild.
1997-01-16 22:48:57 +00:00
Ian Lance Taylor
c7f8d0a524
update copyright
1997-01-16 22:48:24 +00:00
David Edelsohn
e1616e16d8
* libaout.h (machine_type): Reserve several values for sparclet.
1997-01-14 16:47:40 +00:00
Michael Meissner
91eb4378ee
Fix sanitize string
1997-01-14 03:45:40 +00:00
Michael Meissner
4af93ad0dc
Allow tic80-*-*, not just tic80-*-coff
1997-01-14 03:45:03 +00:00
Michael Meissner
0ce71ebd3d
Cleanup; fix some aborts
1997-01-14 00:41:55 +00:00
Jeff Law
09a7bde377
Fix typo.
1997-01-06 22:23:08 +00:00
Jeff Law
4013169286
* elf32-mn10200.c (elf_mn10200_howto): Don't ever set partial-inplace.
...
Use bfd_elf_generic_reloc as special function for all relocs.
(bfd_elf32_mn10200_reloc): Remove unnecessary function.
Working on relocs for the mn10200.
1997-01-06 22:20:38 +00:00
Jeff Law
483e1b9161
* elf32-mn10200.c (elf_mn10200_howto): Set partial_inplace for
...
24bit pc-relative reloc.
1997-01-06 20:33:53 +00:00
Fred Fish
28eb95aa33
* Makefile.in (coff-tic80.o): Add coffcode.h to dependency list.
...
* coff-tic80.c (tic80coff_vec): Data byte order is big endian and
header byte order is little endian. Use correct bfd_get and
bfd_put routines for little endian headers.
* coffcode.h (coff_set_arch_mach_hook): Set arch to
bfd_arch_tic80 for TIC80_ARCH_MAGIC number.
1997-01-04 01:24:50 +00:00
Jeff Law
b3ef389468
* reloc.c: Add BFD_RELOC_24.
...
* elf32-mn10200.c (enum reloc_type): Add 24bit and pcrel relocs.
(elf_mn10200_howto, mn10200_reloc_map): Corresponding changes.
* bfd-in2.h, libbfd.h: Rebuilt.
Starting on relocs for the mn10200.
1997-01-04 00:02:12 +00:00
Ian Lance Taylor
56f3b62cf5
fix copyrights
1997-01-03 22:17:57 +00:00
Ian Lance Taylor
ff12f30335
Fri Jan 3 16:58:31 1997 Richard Henderson <rth@tamu.edu>
...
elf64-alpha multiple .got rewrite:
* elf-bfd.h (struct elf_backend_data): Add always_size_sections entry.
(bfd_elf*_mkobject): Don't define here ...
* elfxx-target.h: ... but rather here. Default always_size_sections
hook to NULL.
* elf.c (elf_mkobject): Rename to bfd_elf_mkobject, since that was
what the #defines in elf-bfd.h transmuted it to anyway.
* section.c: Add SEC_LINKER_CREATED flag.
* bfd-in2.h: Rebuild.
* elf32-i386.c (elf_i386_check_relocs): Add SEC_LINKER_CREATED to
relocation section flags.
(elf_i386_size_dynamic_sections): Use SEC_LINKER_CREATED instead of
SEC_IN_MEMORY to recognize generated bits.
* elf32-m68k.c (elf_m68k_check_relocs, elf_m68k_size_dynamic_sections):
Likewise.
* elf32-mips.c (mips_elf_final_link, mips_elf_create_dynamic_sections,
mips_elf_create_compact_rel_section, mips_elf_create_got_section,
mips_elf_check_relocs, mips_elf_size_dynamic_sections): Likewise.
* elf32-ppc.c (ppc_elf_create_linker_section,
ppc_elf_size_dynamic_sections): Likewise.
* elf32-sparc.c (elf32_sparc_check_relocs,
elf32_sparc_size_dynamic_sections): Likewise.
* elflink.c (_bfd_elf_create_got_section): Add SEC_LINKER_CREATED to
section flags.
(_bfd_elf_create_dynamic_sections): Likewise.
(_bfd_elf_make_linker_section_rela): Likewise.
* elflink.h (elf_link_create_dynamic_sections): Likewise.
(bfd_elf,size_dynamic_sections): Call the always_size_sections hook.
(elf_bfd_final_link): Use SEC_LINKER_CREATED instead of SEC_IN_MEMORY
to identify generated bits.
(elf_link_input_bfd): Likewise.
* elf64-alpha.c: Rewrite everything touching relocations.
1997-01-03 22:09:40 +00:00
Michael Meissner
de224d6a49
Put common variables into the appropriate section, based on relocation types
1997-01-03 16:55:34 +00:00
Ian Lance Taylor
7c342fc5b0
* config.bfd (mips*el-*-linux*): New target.
...
(mips*-*-linux*): New target.
1996-12-31 21:27:05 +00:00
Ian Lance Taylor
99f1722b7c
* elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Clean up.
...
Return a useful value.
1996-12-31 21:26:27 +00:00
Ian Lance Taylor
6ded661565
* Makefile.in (ALL_CFLAGS): Add -D_GNU_SOURCE.
1996-12-31 20:43:28 +00:00
Ian Lance Taylor
ab98712ad0
* configure.host: Use ac_cv_func_mmap_fixed_mapped instead of
...
ac_cv_func_mmap in bfd/configure.host.
1996-12-31 20:30:36 +00:00
Michael Meissner
afaed5e906
Fix some spacing
1996-12-31 20:17:33 +00:00
Ian Lance Taylor
dda7af9f14
* configure.in: Check ac_cv_func_mmap_fixed_mapped, not
...
ac_cv_func_mmap.
* configure: Rebuild.
1996-12-31 19:56:49 +00:00
Ian Lance Taylor
148437ec14
* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Add
...
filter_shlib and auxiliary_filter_shlib parameters.
* elf.c (_bfd_elf_print_private_bfd_data): Handle DT_AUXILIARY and
DT_FILTER.
* bfd-in.h (bfd_elf32_size_dynamic_sections): Update declaration.
(bfd_elf64_size_dynamic_sections): Likewise.
* bfd-in2.h: Rebuild.
1996-12-31 19:46:37 +00:00
Ian Lance Taylor
1eeccb2271
* xcofflink.c (xcoff_build_ldsyms): When exporting all defined
...
symbols, don't export a symbol which is defined by an object in an
archive which contains shared objects.
PR 11379.
1996-12-30 23:50:56 +00:00
Fred Fish
fc46a9ec7a
* archures.c (enum bfd_architecture): Add bfd_arch_tic80
...
for TI TMS320c80 (MVP).
(bfd_archures_list): Add bfd_tic80_arch.
* bfd-in2.h: Regenerate by running "make headers".
1996-12-30 23:25:26 +00:00
Fred Fish
60b2671252
* cpu-tic80.c (bfd_tic80_arch): Add struct.
...
* configure.in (case $vec): Correct typo, "tb" not "tp".
Also add cofflink.o for tic80coff_vec.
* configure: Regenerate with autoconf.
1996-12-30 22:09:39 +00:00
Ian Lance Taylor
412f8c9336
* libbfd.c: Patch up the mmap code so that it is only built if BFD
...
is configured with --with-mmap.
1996-12-30 16:56:05 +00:00
Fred Fish
5a608f5bf1
* Makefile.in (BFD32_BACKENDS): Add coff-tic80.o
...
(ALL_MACHINES): Add cpu-tic80.o
(cpu-tic80.o, coff-tic80.o): Add dependencies.
* coff-tic80.c: Add skeleton, cloned from another coff config.
* coffcode.h (coff_write_object_contents): Set magic to TIC80MAGIC
for TIc80.
1996-12-29 17:56:24 +00:00
Fred Fish
2a0a42d300
Add TIc80 stuff keep/lose stuff.
1996-12-28 04:16:24 +00:00
Fred Fish
cd6213ffae
(Lay some groundwork for TIc80 port that will be filled in incrementally.)
...
* TODO: Correct a misspelling.
start-sanitize-tic80
* coff-tic80.c: New file for TI TMS320C80 (MVP).
* cpu-tic80.c: New file for TI TMS320C80 (MVP).
* configure.in (case $vec): Add tic80coff_vec entry.
* configure: Regenerate with autoconf.
* archures.c (bfd_tic80_arch): Declare.
* bfd-in2.h (enum bfd_architecture): Add bfd_arch_tic80.
* config.bfd (case ${targ}): Add tic80*-*-coff* target.
* targets.c (tic80coff_vec): Add decl as extern bfd_target.
(bfd_target_vector): Add tic80coff_vec entry.
end-sanitize-tic80
1996-12-28 04:09:34 +00:00
Ian Lance Taylor
2503987b96
fix typoo in comment
1996-12-27 17:24:12 +00:00
Ian Lance Taylor
6b8ec6f321
* elflink.h (elf_buckets): Add some more values for larger
...
binaries.
1996-12-27 16:51:27 +00:00
Ian Lance Taylor
78650abdef
* Makefile.in (install): Move subdir_do out of conditional. From
...
Fred Fish <fnf@cygnus.com>.
1996-12-26 23:37:43 +00:00
Jeff Law
8d16fe5cdb
* elf32-mn10200.c (enum reloc_type): Enable basic 8, 16, and
...
32 bit relocs.
(elf_mn10200_howto_table): Likewise.
(mn10200_reloc_map): Likewise.
To keep the assembler quiet.
1996-12-18 17:09:59 +00:00
Ian Lance Taylor
e4f4813f9c
* elf32-mips.c (mips_elf_add_symbol_hook): Add 1 to the value of a
...
mips16 symbol during the link.
(mips_elf_finish_dynamic_symbol): Subtract 1 from the value of a
mips16 symbol.
(mips_elf_link_output_symbol_hook): New static function.
(elf_backend_link_output_symbol_hook): Define.
1996-12-17 18:58:59 +00:00
Ian Lance Taylor
69e2ff181d
* elf.c (bfd_elf_print_symbol): Print the st_other field if it is
...
not zero.
1996-12-17 16:12:58 +00:00
Ian Lance Taylor
e85f2fbd15
* elf.c (bfd_section_from_shdr): Don't check for reloc sections
...
against SEC_DEBUGGING sections here (revert patch of December 5).
* elfcode.h (elf_object_p): Check for them here, instead.
1996-12-16 19:39:39 +00:00
Ian Lance Taylor
e35765a9a2
* elfcode.h (elf_slurp_reloc_table): Add dynamic parameter.
...
* elf.c (_bfd_elf_canonicalize_reloc): Pass new argument to
slurp_reloc_table.
(_bfd_elf_get_dynamic_reloc_upper_bound): New function.
(_bfd_elf_canonicalize_dynamic_reloc): New function.
* elf-bfd.h (struct elf_size_info): Update declaration of
slurp_reloc_table.
(_bfd_elf_get_dynamic_reloc_upper_bound): Declare.
(_bfd_elf_canonicalize_dynamic_reloc): Declare.
* elfxx-target.h: Use new dynamic reloc routines by default.
* elf64-mips.c (mips_elf64_slurp_reloc_table): Add dynamic
parameter.
1996-12-15 19:59:18 +00:00