Ian Lance Taylor [Fri, 28 Mar 1997 19:18:11 +0000 (19:18 +0000)]
* config/tc-mips.c (struct mips_set_options): Define.
(mips_opts): New static variable.
(mips_isa): Remove. Now a field in mips_opts. Change all
references.
(mips16, mips16_autoextend, mips_warn_about_macros): Likewise.
(mips_noreorder, mips_nomove, mips_noat, mips_nobopt): Likewise.
(struct mips_option_stack): Define.
(mips_opts_stack): New static variable.
(s_mipsset): Add support for .set push and .set pop.
* doc/c-mips.texi: Document .set push and .set pop.
Ian Lance Taylor [Fri, 28 Mar 1997 18:10:09 +0000 (18:10 +0000)]
* config/obj-elf.c (obj_elf_section_change_hook): New function.
* config/obj-elf.h (obj_elf_section_change_hook): Declare it.
* config/tc-mips.c (s_change_sec): Call it if OBJ_ELF.
Ian Lance Taylor [Fri, 28 Mar 1997 17:39:23 +0000 (17:39 +0000)]
* config.bfd: Add bfd_elf64_{big,little}mips_vec to targ_selvecs
for mips*el*-*-linux* and mips*-*-linux*. From H.J. Lu
<[email protected]> and Ralf Baechle <[email protected]>.
Ian Lance Taylor [Fri, 28 Mar 1997 17:11:55 +0000 (17:11 +0000)]
* configure.in: Add stdlib.h to AC_CHECK_HEADERS list.
* configure, config.in: Rebuild.
* sysdep.h: Include <stdlib.h> if it exists.
* sparc-dis.c: Include <stdio.h> and "sysdep.h". Don't include
<string.h>.
* Makefile.in: Rebuild dependencies.
Ian Lance Taylor [Thu, 27 Mar 1997 18:45:20 +0000 (18:45 +0000)]
* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Generate a COPY
reloc even if the symbol is in the .bss section.
* elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
* elf32-sparc.c (elf32_sparc_adjust_dynamic_symbol): Likewise.
Ian Lance Taylor [Thu, 27 Mar 1997 18:01:55 +0000 (18:01 +0000)]
* coffcode.h (bfd_coff_backend_data): Add new field
_bfd_coff_default_section_alignment_power.
(bfd_coff_default_section_alignment_power): Define.
(bfd_coff_std_swap_table): Initialize new field.
* libcoff.h: Rebuild.
* cofflink.c (coff_link_add_symbols): Limit alignment of a common
symbol to the default section alignment.
Ian Lance Taylor [Thu, 27 Mar 1997 17:31:06 +0000 (17:31 +0000)]
* read.c (s_comm): Check S_IS_COMMON as well as S_IS_DEFINED.
(s_mri_common): Check S_IS_COMMON unconditionally.
* symbols.c (colon): Check S_IS_COMMON as well as S_IS_DEFINED.
* config/tc-alpha.c (s_alpha_comm): Likewise.
* config/tc-mips.c (nopic_need_relax): Likewise.
* config/tc-ppc.c (ppc_elf_lcomm): Likewise.
(ppc_pe_comm): Likewise.
* config/obj-elf.c (obj_elf_common): Likewise. Set segment of
common symbol to bfd_com_section_ptr.
* config/tc-sparc.c (s_common): Likewise.
(tc_gen_reloc): Likewise.
Ian Lance Taylor [Wed, 26 Mar 1997 22:26:14 +0000 (22:26 +0000)]
* listing.c (print_lines): Add lineno parameter. Change all
callers.
(listing_listing): Only call calc_hex for the right line.
(listing_list): Set the new edict based on the current edict, in
order to handle listing commands in macros correctly.
Mark Alexander [Wed, 26 Mar 1997 14:48:59 +0000 (14:48 +0000)]
Fix from Peter Schauer:
* mdebugread.c (parse_procedure): Set address of procedure to
block start; this fixes problems with shared libraries introduced
by change of Mar 21.
* config/tc-d30v.c (md_assemble): If two instructions
are supposed to be assembled in parallel and the first one is
long, print an error and stop.
(md_apply_fix3): Don't calculate absolute relocs. Just write
them out.
Ian Lance Taylor [Tue, 25 Mar 1997 19:46:12 +0000 (19:46 +0000)]
* stabs.c (_bfd_link_section_stabs): Copy over the first header
symbol. Check for memory allocation failure of *psinfo.
(_bfd_write_section_stabs): Add psinfo parameter. Change all
callers. Set the value of the header symbol.
* libbfd-in.h (_bfd_write_section_stabs): Update declaration.
* libbfd.h: Rebuild.
* symtab.c (find_pc_symtab): change to support the case
where the objfile is reordered and contains both coff and
stabs debugging info (continue on if a psymtab isn't found).
Fred Fish [Tue, 25 Mar 1997 03:07:35 +0000 (03:07 +0000)]
* coff-tic80.c (tic80_howto_table): Add R_ABS entry.
(rtype2howto): Handle R_ABS reloc type. Also abort on unhandled
reloc types, rather than silently failing to generate an output file.
Jeff Law [Mon, 24 Mar 1997 21:48:36 +0000 (21:48 +0000)]
* gdb.disasm/mn10300.s: New test file for mn10300 disassembler.
* gdb.disasm/mn10300.exp: Run mn10300 disassembler tests.
* gdb.disasm/Makefile.in: Remove "mn10300" when cleaning.
disassembler testsuite for the mn10300.
Ian Lance Taylor [Mon, 24 Mar 1997 21:22:00 +0000 (21:22 +0000)]
* targmatch.sed: Use the hold space to put the #ifdef around the
the string constant.
* targets.c (UNSUPPORTED_TARGET): Don't define.
(find_target): Don't check for UNSUPPORTED_TARGET.
(bfd_set_default_target): Don't try to optimize by checking for
default.
Ian Lance Taylor [Mon, 24 Mar 1997 18:42:09 +0000 (18:42 +0000)]
* elf32-sparc.c (elf32_sparc_size_dynamic_sections): Don't
count section symbols for sections that were created by the
linker, or are not allocatable or not loadable.
(elf32_sparc_finish_dynamic_sections): Output output section
symbols for section for which we made space for them.
Ian Lance Taylor [Mon, 24 Mar 1997 17:14:06 +0000 (17:14 +0000)]
* config/tc-alpha.h (tc_frob_file_before_adjust): Define if
OBJ_ECOFF.
(alpha_frob_file_before_adjust): Declare if OBJ_ECOFF.
* config/tc-alpha.c (alpha_debug): New static variable.
(md_parse_option): Set alpha_debug if -g is seen.
(alpha_frob_file_before_adjust): New function if OBJ_ECOFF.
Mark Alexander [Mon, 24 Mar 1997 00:29:12 +0000 (00:29 +0000)]
Fixes from Peter Schauer:
* config/mips/tm-mips.h (REGISTER_CONVERT_TO_TYPE,
REGISTER_CONVERT_FROM_TYPE): Swap words if target, not host,
is big-endian and if registers are 32 bits.
* mips-tdep.c (mips_print_register, mips_extract_return_value,
mips_store_return_value): Fix floating-point word-order problems on
little-endian targets introduced by changes of Mar 21.
Stan Shebs [Mon, 24 Mar 1997 00:08:26 +0000 (00:08 +0000)]
* remote.c (target_resume_hook, target_wait_loop_hook): New
globals.
(remote_resume, remote_wait): Use them.
* d10v-tdep.c: Set the above hooks.
(tracesource): New GDB variable, controls source display in
traces.
(display_trace): Find and display source line if requested.
(trace_info): Mention empty trace buffer if appropriate.
(tdisassemble_command): Robustify argument handling.
Mark Alexander [Sat, 22 Mar 1997 04:40:03 +0000 (04:40 +0000)]
* mips-tdep.c (mips_push_arguments): On non-EABI architectures,
copy first two floating point arguments to general registers, so that
MIPS16 functions will receive the arguments correctly.
(mips_print_register): Print double registers correctly on
little-endian hosts.
(mips_extract_return_value): Return double values correctly
on little-endian hosts.
* mdebugread.c (parse_procedure): Adjust address of procedure relative
to address in file descriptor record; this accounts for constant
strings that may precede functions in the text section. Remove
now-useless lowest_pdr_addr from argument list and all calls.
David Edelsohn [Fri, 21 Mar 1997 20:51:17 +0000 (20:51 +0000)]
* elf32-m32r.c (m32r_elf_howto_table): Use special function for LO16.
(m32r_hi16_list): New static local.
(m32r_elf_hi16_reloc): Don't perform reloc, just queue it up.
(m32r_elf_do_hi16_reloc): Delete.
(m32r_elf_relocate_hi16): New function.
(m32r_elf_lo16_reloc): New function.
(m32r_elf_relocate_section): For HI16 relocs, scan for corresponding
LO16 reloc.
* elf32-m32r.c (m32r_elf_create_linker_section): Delete.
(m32r_elf_add_symbol_hook): Rewrite _SDA_BASE_ support.
(m32r_elf_final_sda_base): New function.
(m32r_elf_relocate_section): Rewrite sdata support.
(m32r_elf_finish_dynamic_sections): Delete.
Bring over from m32r-970131 branch.
Ian Lance Taylor [Fri, 21 Mar 1997 20:48:27 +0000 (20:48 +0000)]
* configure.in: Don't set files and links. Don't call
AC_LINK_FILES. Substitute te_file. Create targ-cpu.h,
obj-format.h, targ-env.h, and itbl-cpu.h in AC_OUTPUT.
* configure: Rebuild.
* Makefile.in (TARG_CPU_C): New variable.
(TARG_CPU_O, TARG_CPU_H): New variables.
(OBJ_FORMAT_C, OBJ_FORMAT_O, OBJ_FORMAT_H): New variables.
(TARG_ENV_H, ATOF_TARG_C, ATOF_TARG_O): New variables.
(SOURCES): Rename from REAL_SOURCES. Delete old definition.
(LINKED_SOURCES): Remove.
(HEADERS): Rename from REAL_HEADERS. Delete old definition.
(LINKED_HEADERS): Remove.
(OBJS): Use $(TARG_CPU_O), etc., rather than targ-cpu.o, etc.
($(OBJS)): Depend upon $(TARG_ENV_H), etc., rather than
targ-cpu.h, etc.
($(TARG_CPU_O), $(OBJ_FORMAT_O) $(ATOF_TARG_O)): New targets.
(targ-cpu.o, obj-format.o, atof-targ.o): Remove targets.
(itbl-cpu.h): Remove target.
(DISTCLEAN_HERE): Remove targ-cpu.c, obj-format.c, atof-targ.c,
atof-targ.h.
Ian Lance Taylor [Fri, 21 Mar 1997 19:39:26 +0000 (19:39 +0000)]
* Makefile.in (BFD_H): New variable.
(HFILES): New variable.
(CFILES): Add all C files.
(.dep, .dep1, dep.sed, dep, dep-in): New targets.
Delete old dependencies, and build new ones.
* dep-in.sed: New file.
Ian Lance Taylor [Fri, 21 Mar 1997 18:09:12 +0000 (18:09 +0000)]
* elf32-sparc.c (elf32_sparc_size_dynamic_sections): If there is
no .rela.plt section, don't output a DT_PLTGOT dynamic entry.
Handles the case of a shared library with no function calls.