Ian Lance Taylor [Tue, 17 Aug 1999 07:50:30 +0000 (07:50 +0000)]
* elf32-mips.c (_bfd_mips_elf_add_symbol_hook): Set BSF_DYNAMIC
for special section symbols.
* elflink.h (elf_merge_symbol): If we have no old BFD, check
BSF_DYNAMIC on the section symbol to see whether the old BFD is
dynamic.
Jeff Law [Tue, 10 Aug 1999 19:02:30 +0000 (19:02 +0000)]
* config/tc-hppa.c (UNWIND_SECTION_NAME): Define for ELF.
(pa_build_unwind_subspace): Remove #if 0 wrapper. Select a
suitable relocation based on the size of the target's pointer.
Always Use subsegment zero for the unwinders.
(pa_level): Handle "2.0w".
Jeff Law [Tue, 10 Aug 1999 18:51:53 +0000 (18:51 +0000)]
* elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle
R_HPPA_SEGBASE and R_HPPA_SEGREL32.
* cpu-hppa.c (bfd_hppa20w_arch): New entry in architecture info
list.
Ian Lance Taylor [Tue, 10 Aug 1999 15:02:41 +0000 (15:02 +0000)]
From Wally Iimura <[email protected]>:
* dis-buf.c (buffer_read_memory): Rewrite expression to avoid
overflow at end of address space.
(generic_print_address): Use sprintf_vma.
Mark Mitchell [Tue, 10 Aug 1999 06:43:11 +0000 (06:43 +0000)]
* elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Always
output DT_MIPS_GOTSYM.
(_bfd_mips_elf_finish_dynamic_sections): Use the same value as
DT_MIPS_SYMTABNO if there are no global GOT symbols.
Mark Mitchell [Tue, 10 Aug 1999 03:36:28 +0000 (03:36 +0000)]
* elflink.h (elf_link_size_reloc_section): Use the counts in the
elf-section data to allocate just the right amount of relocation
space. Don't allocate the hash space twice.
(elf_bfd_final_link): Calculate the amount of space to allocate in
each relocation section.
Jeff Law [Mon, 9 Aug 1999 23:47:04 +0000 (23:47 +0000)]
* elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case 32): When in
64bit mode, generate a section relative relocation for a 32bit
wide relocation.
(elf_hppa_is_local_label_name): New function.
* elf32-hppa.c (elf_hppa_is_local_label_name): Deleted. To be
shared between 32bit and 64bit port.
Mark Mitchell [Mon, 9 Aug 1999 22:45:39 +0000 (22:45 +0000)]
* elf32-mips.c (elf_mips_howto_table): Fix src_mask for
R_MIPS_GOT16 and R_MIPS_CALL16.
(mips_elf_got16_entry): Use mips_elf_high to calculate the value
to use wheen looking for a preexisting GOT entry.
* elf64-sparc.c (sparc64_elf_relocate_section): Back out part of
the Sep. 4th, 1998 change. glibc 2.0.x dynamic linker had bug,
not binutils.
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
From Wally Iimura <[email protected]>:
* ldlang.c (lang_size_sections): When checking whether an address
is within a region, don't get confused by wrapping around at the
end of the address space.
* objdump.c (exit_status): New static variable.
(nonfatal): New static function.
(disassemble_data): Set exit_status on error.
(read_section_stabs): Likewise.
(display_bfd): Likewise. Call nonfatal rather than bfd_nonfatal.
(display_file): Call nonfatal rather than bfd_nonfatal.
(display_target_list, display_info_table): Likewise.
(main): Return exit_status rather than 0.
* coffgen.c (coff_find_nearest_line): When looking for file, use
last best match rather than first. If address is beyond last line
number record, don't return the last line as the correct value.
* configure.in: Define and substitute DEMANGLER_NAME.
* Makefile.am (DEMANGLER_PROG): Set to cxxfilt.
(man_MANS): Use DEMANGLER_NAME rather than DEMANGLER_PROG.
(bin_PROGRAMS): Remove $(DEMANGLER_PROG).
(noinst_PROGRAMS): Add $(DEMANGLER_PROG).
(cxxfilt_SOURCES): Rename from c__filt_SOURCES.
(cxxfilt_LDADD): Rename from c__filt_LDADD.
($(DEMANGLER_NAME).1): Rename from $(DEMANGLER_PROG).1. Use
DEMANGLER_NAME rather than DEMANGLER_PROG in substitution.
(MOSTLYCLEANFILES): Use DEMANGLER_NAME rather than
DEMANGLER_PROG.
(install-exec-local): When installing noinst_PROGRAMS, change
cxxfilt to $(DEMANGLER_NAME).
* configure, Makefile.in: Rebuild.
* Makefile.am: Rename .dep* files to DEP*.
(MKDEP): Rename from DEP. Change all uses. Use $${srcdir} rather
than $(srcdir). Rename TCDEP targets to DEPTC. Rename OBJDEP
targets to DEPOBJ.
* Makefile.in: Rebuild.
* configure.in: Define and substitute GDBINIT. Change AC_OUTPUT
line to crate ${GDBINIT} rather than .gdbinit.
* configure, Makefile.in, doc/Makefile.in: Rebuild.
* emultempl/ostring.sed: Rename from stringify.sed.
* emultempl/astring.sed: New file.
* Makefile.am (stringify.sed): New target.
(GEN_DEPENDS): Change $(srcdir)/emultempl/stringify.sed to
stringify.sed.
* configure.in: Define and substitute STRINGIFY.
* emultempl/*.em: Use stringify.sed from build directory rather
than source directory.
* emultempl/elf32.em: Use stringify.sed rather than inline sed
script.
* emultempl/gld960.em, emultempl/gld960c.em: Likewise.
* emultempl/hppaelf.em, emultempl/linux.em: Likewise.
* emultempl/lnk960.em, emultempl/sunos.em: Likewise.
* configure, Makefile.in: Rebuild.
Mark Mitchell [Fri, 6 Aug 1999 02:44:41 +0000 (02:44 +0000)]
* elf32-mips.c (mips_elf_got16_entry): Don't multiply GOT index by
the size of a GOT entry here.
(mips_elf_calculate_relocation): Don't create a local GOT entry
for the symbol in a GOT16 relocation; just for it's high-order bit
(_bfd_mips_elf_relocate_section): Fix thinko.
Revert last patch to xmalloc.c, and instead bring over this patch from
egcs:
Thu Apr 15 23:00:55 1999 Mumit Khan <[email protected]>
* configure.in (checkfuncs): Check for sbrk.
* config.in: Rebuilt.
* configure: Likewise.
* xmalloc.c: Use HAVE_SBRK instead of the host specific definitions.
Based on patches from Donn Terry <[email protected]>:
* coffcode.h (enum coff_symbol_classification): Define.
(bfd_coff_backend_data): Rename _bfd_coff_sym_is_global to
_bfd_coff_classify_symbol. Change return type.
(bfd_coff_classify_symbol): Rename from bfd_coff_sym_is_global.
(coff_slurp_symbol_table): Use coff_classify_symbol.
(coff_classify_symbol): New static function.
(coff_sym_is_global): Never define.
(bfd_coff_std_swap_table): Initialize with coff_classify_symbol.
* cofflink.c (coff_link_check_ar_symbols): Use
bfd_coff_classify_symbol rather than bfd_coff_sym_is_global.
(coff_link_add_symbols): Likewise.
(_bfd_coff_link_input_bfd): Likewise.
* coff-sh.c (bfd_coff_small_swap_table): Initialize with
coff_classify_symbol.
* libcoff.h: Rebuild.
* emulparams/i386pe.sh: Define ENTRY, SUBSYSTEM, and
INITIAL_SYMBOL_CHAQR.
* emulparams/i386pe_posix.sh: New file.
* Makefile.am (YACC): If bison is not in the source tree, use
@YACC@ rather than bison -y.
(LEX): If flex is not in the source tree, use @LEX@ rather than
flex.
(ALL_EMULATIONS): Add ei386pe_posix.o.
(ei386pe_posix.c): New target.
* configure.tgt (i[3456]86-*-interix*): New target.
* configure.host (i[3456]86-pc-interix*): New host.
* Makefile.in: Rebuild.
* Makefile.am (YACC): If bison is not in the source tree, use
@YACC@ rather than bison -y.
(LEX): If flex is not in the source tree, use @LEX@ rather than
flex.
* configure.in: Build dlltool for i[3-6]86-*-interix.
* Makefile.in, configure: Rebuild.
Mark Mitchell [Wed, 4 Aug 1999 16:32:34 +0000 (16:32 +0000)]
* elf32-mips.c (_bfd_mips_elf_relocate_section): Tweak HI16/LO16
handling for REL relocations. And only left-shift R_MIPS26
relocation addends where necessary.