Commit Graph

26381 Commits

Author SHA1 Message Date
Alan Modra
911c6daef6 Return bfd_error_wrong_format on a format mismatch. 2000-03-11 23:09:42 +00:00
Geoffrey Keating
7893e6a2a7 * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper
sign-extension and big-endian compensation for
R_MIPS_64 even in ld -r.
2000-03-11 02:23:10 +00:00
Geoffrey Keating
bb2d6cd7b1 In bfd/:
* elf32-mips.c (mips_elf_next_relocation): Rename from
	mips_elf_next_lo16_relocation, and generalize to look
	for any relocation type.
	(elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset.
	(elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16.
	(elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16.
	(elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2.
	(elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64.
	(elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32.
	(bfd_elf32_bfd_reloc_type_lookup): Add new relocs.
	(mips_rtype_to_howto): Likewise.
	(mips_elf_calculate_relocation): Handle new relocs.
	(_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs
	are paired.  The addend for R_MIPS_GNU_REL16_S2
	is shifted right two bits.
In gas/:
	* config/tc-mips.c (mips_ip): Don't put stuff in .rodata
	when embedded-pic.

	* config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
 	implementation doesn't have special handling for switch
 	statements.
	(macro_build): Allow for code in sections other than .text.
	(macro): Likewise.
	(mips_ip): Likewise.
	(md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
  	Don't perform relocs if we will be outputting them.
	(tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
 	relocations.  Allow BFD_RELOC_16_PCREL_S2 relocs when
 	embedded-pic.
In gas/testsuite/:
	* gas/mips/empic.d: New file.
	* gas/mips/empic.s: New file.
	* gas/mips/mips16-e.d: New file.
	* gas/mips/mips16-e.s: New file.
	* gas/mips/mips16-f.d: New file.
	* gas/mips/mips16-f.s: New file.
	* gas/mips/mips.exp: Add empic, mips16-e.  Add mips16-f as an
	expected failure.
In include/elf:
	* mips.h: Add R_MIPS_GNU_REL_HI16, R_MIPS_GNU_REL_LO16,
 	R_MIPS_GNU_REL16_S2, R_MIPS_PC64 and R_MIPS_PC32 relocation
 	numbers.
2000-03-11 02:16:25 +00:00
Alan Modra
88b6bae086 Fix typos in comments, and restore comment formatting destroyed by emacs at
some stage.
2000-03-11 01:16:52 +00:00
Mark Kettenis
fb5577443e 2000-03-11 Mark Kettenis <kettenis@gnu.org>
* i386gnu-nat.c (gnu_store_registers): Make sure the T bit in the
	%eflags isn't modified.  This fixes a bug where every call to a
	function in the program beyond the first call would fail.
2000-03-11 00:34:50 +00:00
H.J. Lu
042c8311c7 2000-03-10 H.J. Lu <hjl@gnu.org>
* Makefile.in (all-gcc): Backed out the last change.
2000-03-10 21:21:16 +00:00
H.J. Lu
1b26604121 2000-03-10 H.J. Lu <hjl@gnu.org>
* Makefile.in (all-gcc): Run ld/ld-new if necessary.
2000-03-10 20:50:45 +00:00
Daniel Berlin
09b59ee380 Fix C++ overload support, see through references 2000-03-10 08:02:58 +00:00
Andrew Cagney
36c2118fc9 Devolve area maintaineship responsibilities. 2000-03-10 00:52:40 +00:00
Elena Zannoni
a79dea61e7 2000-03-06 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* minsyms.c (prim_record_minimal_symbol_and_info): Add comment.
2000-03-09 22:58:49 +00:00
Catherine Moore
5c86cbc78f * config/tc-m32r.c (m32r_fix_adjustable): Look up the
relocation type based on the entry in the fixup structure.
2000-03-09 22:07:28 +00:00
Scott Bambrough
f1a6b754ab 2000-02-25 Scott Bambrough <scottb@netwinder.org>
* gdb.base/long_long.exp: Correct test suite failure when printing
	a long long value as a double on ARM platforms.

ARM doubles use a hybrid endian format.  It is not strictly little or big
endian.  It is little endian with the words swapped.
2000-03-09 21:55:40 +00:00
H.J. Lu
9282ff4155 2000-03-09 Andreas Jaeger <aj@suse.de>
* Makefile.am (check-DEJAGNU): Also unset LANG.
	* Makefile.in: Rebuild.
2000-03-09 16:41:21 +00:00
Andrew Cagney
513d6ebaf7 Anthony Green is Java maintainer. 2000-03-09 03:32:09 +00:00
H.J. Lu
f8c827e940 2000-03-08 H.J. Lu (hjl@gnu.org)
* Makefile.am (install-exec-tooldir): Depend on
	install-exec-bindir for parallel make.
	* Makefile.in: Regenerated.
2000-03-09 03:14:44 +00:00
H.J. Lu
9c28aef393 2000-03-08 H.J. Lu <hjl@gnu.org>
* Makefile.am (install-exec-local): Depend on
	install-binPROGRAMS for parallel make.
	* Makefile.in: Regenerated.
2000-03-09 03:13:21 +00:00
Mark Kettenis
4cc2418890 2000-03-08 Mark Kettenis <kettenis@gnu.org>
* i386-tdep.c (i386_linux_saved_pc_after_call): New function.
	* config/i386/tm-linux.h (SAVED_PC_AFTER_CALL): Define to call
	i386_linux_saved_pc_after_call.
2000-03-08 22:34:19 +00:00
Frank Ch. Eigler
e88acae792 * extension
2000-03-08  Dave Brolley  <brolley@redhat.com>

	* cgen-par.h (cgen_write_queue_kind): Add CGEN_FN_SF_WRITE.
	(CGEN_WRITE_QUEUE_ELEMENT): Add fn_sf_write.
	(sim_queue_fn_si_write): Last argument is has type USI.
	(sim_queue_fn_sf_write): New function.
	* cgen-par.c (sim_queue_fn_si_write): Declare 'value' as USI.
	(sim_queue_fn_sf_write): New function.
	(cgen_write_queue_element_execute): Handle CGEN_FN_SF_WRITE.
2000-03-08 21:09:41 +00:00
Doug Evans
c1b7949f6e * reloc.c (reloc_howto_struct): Fix partial_inplace comment.
* bfd-in2.h: Rebuild.
2000-03-07 21:04:31 +00:00
Frank Ch. Eigler
a05391975e * build fix
2000-03-07  Frank Ch. Eigler  <fche@redhat.com>

	From John Dallaway  <jld@redhat.co.uk>:
	* Makefile.in (install-sis): Add $(EXEEXT) for Windows host.
2000-03-07 15:32:49 +00:00
Jim Blandy
9227b5eb3d From Tom Tromey <tromey@cygnus.com> and Keith Seitz <?>:
* minsyms.c: #include <ctype.h>, for msymbol_hash_iw.
(compact_minimal_symbols): Added `objfile' argument.
Put symbols in the objfile's hash table.
(install_minimal_symbols): Put symbols in the objfile's demangled
hash table.
(lookup_minimal_symbol): Use hash table to find symbol in
objfile.
(msymbol_hash_iw, msymbol_hash, add_minsym_to_hash_table): New
functions.
(prim_record_minimal_symbol_and_info): Initialize the
hash link fields of the new minimal symbol.
* symtab.h (struct minimal_symbol): New fields `hash_next',
`demangled_hash_next'.
(msymbol_hash_iw, msymbol_hash, add_minsym_to_hash_table): Declare.
* objfiles.h (MINIMAL_SYMBOL_HASH_SIZE): New define.
(struct objfile): New fields `msymbol_hash',
`msymbol_demangled_hash'.
2000-03-07 04:33:52 +00:00
Nick Clifton
ded0aeb791 Document new -m32r command line switch 2000-03-07 00:06:52 +00:00
Nick Clifton
8ad9e709b4 treat -m32r as a seperate, specific command line switch. 2000-03-06 23:37:57 +00:00
Elena Zannoni
24e8cecf49 2000-03-06 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* mi-cmds.h: Export mi_cmd_data_write_register_values.

	* mi-cmds.c (mi_cmds): Implement data-write-register-values with
 	mi_cmd_data_write_register_values.

	* mi-main.c (mi_cmd_data_write_register_values): New
 	function. Write a value into a register.
2000-03-06 22:57:52 +00:00
Nick Clifton
108213226d Further LINK6 bug fix. 2000-03-06 22:38:43 +00:00
Elena Zannoni
cdffbaa2d2 2000-03-06 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* gdbmi.texinfo: Update data-disassemble documentation.
2000-03-06 22:14:44 +00:00
Elena Zannoni
19e08fb3c9 2000-03-06 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* mi-disassemble.exp: Don't assume numbers for the offset
 	values. They can be different depending on the architecture.

	* mi-watch.exp (test_watchpoint_triggering): In same cases the
 	type can be 'hw wathcpoint' not just 'watchpoint'. Adjust for that.

	* basics.c (callee4): Make the function return something,
 	otherwise the return value is undefined.
2000-03-06 21:33:38 +00:00
Joern Rennecke
05102e700f * sh-opc.h (sh_table): ldre and ldrs have a *signed* displacement. 2000-03-06 21:13:15 +00:00
Elena Zannoni
2231a1e869 2000-03-06 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* mi-basics.exp: Comment out test for a still unimplemented operation.
2000-03-06 20:00:53 +00:00
Nick Clifton
11c8a8d1b7 fix LINK6 code. 2000-03-06 19:49:58 +00:00
Elena Zannoni
e2d008317c 2000-03-06 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* mi-disassemble.exp: Rewrite most of the tests to conform to new
 	disassemble interface.
2000-03-06 19:46:40 +00:00
Nick Clifton
347dad9e10 Remove extraneous CYGNUYS LOCAL markers. 2000-03-06 18:09:38 +00:00
Ian Lance Taylor
a999880517 * ldfile.c (ldfile_try_open_bfd): Don't crash if we see an empty
archive.
2000-03-06 18:08:38 +00:00
Jim Blandy
ef7904ee59 *** empty log message *** 2000-03-06 18:06:04 +00:00
Jim Blandy
9ddea9f1c1 Doc fix. 2000-03-06 18:04:56 +00:00
Elena Zannoni
2f16bb3237 2000-03-06 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
From  Eli Zaretskii  <eliz@is.elta.co.il>:

	* event-loop.c (poll_timers): Don't compare delta.tv_sec with
	zero, since time_t might be unsigned.
2000-03-06 17:07:03 +00:00
Mark Kettenis
b948cda90b 2000-03-06 Mark Kettenis <kettenis@gnu.org>
* i386-linux-nat.c (supply_fpregset): Mask off the reserved bits
	in *FPREGSETP.
	(convert_to_fpregset): Don't touch the reserved bits in *FPREGSETP.
2000-03-06 16:08:12 +00:00
Catherine Moore
b47e35fc72 * elf.c (swap_out_syms): Check for null type_ptr. 2000-03-06 15:44:25 +00:00
Mark Kettenis
64bb16715d Double Oops! I forgot the regenerated configure too. 2000-03-05 23:00:32 +00:00
Mark Kettenis
9eaaac1650 Oops, forgot to save ChangeLog before commit. 2000-03-05 22:57:57 +00:00
Mark Kettenis
f60300e72c 2000-03-05 Mark Kettenis <kettenis@gnu.org>
Allow GDB to run on Linux 2.0 again.
	* config.in: Add HAVE_PTRACE_GETREGS.
	* configure.in: Check if <sys/ptrace.h> defines PTRACE_GETREGS.
	* configure: Regenerated.
	* config/i386/nm-linux.h (CANNOT_FETCH_REGISTER,
	CANNOT_STORE_REGISTER): New defines.
	* i386-linux-nat.c (have_ptrace_getregs): New variable.
	(PTRACE_XFER_TYPE, CANNOT_FETCH_REGISTER, fetch_register,
	old_fetch_inferior_registers, CANNOT_STORE_REGISTER,
	store_register, old_store_inferior_registers): Copied over from
	`inptrace.c' as a temporary measure.
	(fetch_regs, store_regs, fetch_fpregs, store_fpregs):
	Conditionalize on HAVE_PTRACE_GETREGS.  Define stubs if
	HAVE_PTRACE_GETREGS isn't defined.
	(fetch_regs): Reset `have_ptrace_getregs' if ptrace call fails
	with EIO.
	(fetch_inferior_registers, store_inferior_registers): Fall back on
	the method use in `infptrace.c' (by calling
	old_fetch_inferior_registers and old_store_inferior_registers) if
	`have_ptrace_getregs' isn't set.
2000-03-05 22:57:06 +00:00
Mark Kettenis
04cd15b61d 2000-01-29 Mark Kettenis <kettenis@gnu.org>
* i386-linux-nat.c: Use elf_gregset_t and elf_fpregset_t instead
	of gregset_t and fpregset_t.  Those are the only names that are
	guaranteed to specify the right types for all supported Linux
	systems out there.
	Various doc fixes and gratitious local variable renames, all in an
	attempt to stress similarities between the code and unify the
	terminology used.  Use ISO-C all over.
	(regmap): Remove trailing comma.
	(FPREG_ADDR): Renamed from FPREGSET_T_FPREG_ADDR.
	(convert_to_gregset): Make static.  Remove GDB_REGS argument.  It
	is unnecessary and wasn't used anyway.  All callers changed.
	(convert_to_fpregset, convert_to_xfpregset): Likewise.
	(fetch_regs, store_regs): Remove unused variable `regno'.
	(fill_fpregs): If REGNO is not -1, only update the specified
	register.
	(fetch_core_registers): Renamed from
	i386_linux_fetch_core_registers.  There is no need for a unique
	name since the function is static anyway.
	(linux_elf_core_fns): Renamed from i386_linux_nat_core_functions
	since it is more descriptive.
2000-03-05 16:39:11 +00:00
Andrew Cagney
9ec7faef59 Expand readline/ maintainers. 2000-03-05 08:46:56 +00:00
Mark Kettenis
45a816d93e 2000-03-04 Mark Kettenis <kettenis@gnu.org>
Fix support for Linux/i386 signal trampolines.  The old approach
	didn't work for Linux 2.2 and beyond, and didn't work with recent
	versions of the GNU C library.
	* i386-tdep.c (LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
	LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1): New defines.
	(linux_rt_sigtramp_code): New variable.
	(LINUX_RT_SIGTRAMP_LEN): New define.
	(i386_linux_rt_sigtramp_start): New function.  Detect start of
	signal trampolines for RT signals.
	(i386_linux_sigtramp): Removed.
	(i386_linux_in_sigtramp): New function.
	(i386_linux_sigcontext_addr): New function.  Recognize the names
	of the signal tranmpolines used by recent versions of the GNU C
	library, and add support for RT signals.
        (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET):  New
	defines.  Moved here from config/i386/tm-linux.h.
	(i386_linux_sigtramp_saved_pc, i386_linux_sigtramp_saved_sp):
	Reimplement in terms of i386_linux_sigcontext_addr.
	* config/i386/tm-linux.h (LINUX_SIGCONTEXT_SIZE): Removed.
        (LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_SP_OFFSET):
        Moved to i386-tdep.c.
	(IN_SIGTRAMP): Redefine to call i386_linux_in_sigtramp.
2000-03-04 23:37:33 +00:00
Frank Ch. Eigler
8ae7f924f3 * moved misplaced ChangeLog entry 2000-03-04 12:46:44 +00:00
Andrew Cagney
109213fcda Re-do checkin by Alexandre Oliva <oliva@lsd.ic.unicamp.br>. Pointed
out maintainer rules.
2000-03-04 08:40:22 +00:00
Alexandre Oliva
b70bc471df * Makefile.in (all-gdbtk): Fix $srcdir to ${srcdir}. 2000-03-04 07:11:38 +00:00
Andrew Cagney
7158fd7f9b Transfer SIM maintainership to Frank. 2000-03-04 06:27:00 +00:00
Andrew Cagney
e7411eaaec Add MichaelS and PeterS to all privs list. 2000-03-04 05:21:51 +00:00
Andrew Cagney
392746e563 Don't use LONG_LONG when it isn't available. 2000-03-04 05:11:19 +00:00