* 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.
Mark Mitchell [Wed, 4 Aug 1999 03:52:59 +0000 (03:52 +0000)]
* elf32-mips.c (mips_elf_next_lo16_addend): Rename to ...
(mips_elf_next_lo16_relocation): Don't compute the addend here.
Just return the relocation found.
(mips_elf_relocate_section): Pull the LO16 addend out of the
section itself when using REL relocations.
* elf32-ppc.c (ppc_elf_relocate_section): Don't use the relocation
value of a symbol in a SEC_DEBUGGING section. Warn when doing a
relocation against a symbol in an input section with no output
section. From Daniel Jacobowitz <[email protected]>.
Mark Mitchell [Tue, 3 Aug 1999 06:04:21 +0000 (06:04 +0000)]
* elf32-mips.c (_bfd_mips_elf_relocate_section): Handle R_MIPS_26
and R_MIPS16_26 relocations correctly when relocating.
(_bfd_mips_elf_check_relocs): Don't assume that R_MIPS_CALL_HI16
and R_MIPS_CALL_LO16 are for global symbols.
* elflink.h (elf_bfd_final_link): Copy the whole isym, not just
some fields.
* elf64-sparc.c (sparc64_elf_output_arch_syms): Declare used
variables and initialize them.
Mark Mitchell [Sun, 1 Aug 1999 22:38:53 +0000 (22:38 +0000)]
* elf32-mips.c (_bfd_mips_elf_final_link): Handle the case where
there are no global symbols requiring GOT entries.
(_bfd_mips_elf_size_dynamic_sections): Likewise.
(_bfd_mips_elf_finish_dynamic_symbol): Likewise.
(_bfd_mips_elf_finish_dynamic_sections): Likewise.
Mark Mitchell [Sun, 1 Aug 1999 20:58:19 +0000 (20:58 +0000)]
* elf32-mips.c (mips_elf_calculate_relocation): Undefined weak
symbols are considered to have the value zero.
(_bfd_mips_elf_relocate_section): Don't try to perform a
relocation for an undefined symbol.
(_bfd_mips_elf_check_relocs): Allocate locate GOT space for local
GOT16 relocations.
* elf64-sparc.c (sparc64_elf_build_plt): Cosmetic change - ABI
wants ba,a,pt %xcc instead of %icc.
Emit correct .PLT0-(.PLTN+4) initial value into the pointer slots
of large PLT entries.
(sparc64_elf_plt_ptr_offset): Fix calculation.
(sparc64_elf_finish_dynamic_symbol): Negative value of R_SPARC_JMP_SLOT
addend should be relative to load address, not .plt section start.
(sparc64_elf_size_info): Sparc64 uses 32bit .hash entries.
* config/tc-sparc.c (md_longopts): Add --no-undeclared-regs option.
(sparc_ip): Warn if %g2 or %g3 register is used and not covered
by .register pseudo-op if -64 and --no-undeclared-regs.
(s_register, sparc_adjust_symtab): New functions.
* config/tc-sparc.h (tc_adjust_symtab, sparc_adjust_symtab):
Declare sparc_adjust_symtab as tc_adjust_symtab.
* doc/c-sparc.texi: Add description of #ignore special literal
for .register pseudo-op.
* elf-bfd.h (struct elf_backend_data): Add
print_symbol_all and output_arch_syms backend methods.
* elfxx-target.h: Likewise.
* elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create,
sparc64_elf_add_symbol_hook, sparc64_elf_output_arch_syms,
sparc64_elf_get_symbol_type, sparc64_elf_symbol_processing): New
functions.
(sparc64_elf_size_dynamic_sections): Leave space for STT_REGISTER
symbols in .dynsym, add their names into .dynstr. Put those symbols
into dynlocal.
(sparc64_elf_finish_dynamic_sections): Fix up DT_SPARC_REGISTER
pointers to STT_REGISTER symbols in dynsym section.
(sparc64_elf_print_symbol_all): New function.
* elf.c (bfd_elf_print_symbol): Allow special backend symbol
printing using the print_symbol_all hook.
* coffcode.h (styp_to_sec_flags): If COFF_LONG_SECTION_NAMES and
COFF_SUPPORT_GNU_LINKONCE, mark sections whose names begin with
.gnu.linkonce with SEC_LINKONCE and SEC_LINK_DUPLICATES_DISCARD.
* coff-go32.c: (COFF_LONG_SECTION_NAMES): Define.
(COFF_SUPPORT_GNU_LINKONCE): Define.
* coff-stgo32.c: (COFF_LONG_SECTION_NAMES): Define.
(COFF_SUPPORT_GNU_LINKONCE): Define.