Commit graph

219 commits

Author SHA1 Message Date
Mark Kettenis
a6abb2c0e9 2000-04-30 Mark Kettenis <kettenis@gnu.org>
Fix single-stepping out of signal trampolines.
	* config/i386/nm-linux.h (CHILD_RESUME): Define.
	* i386-linux-nat.c (child_resume): New function.
2000-04-30 09:34:13 +00:00
Jim Blandy
7355ddbace Bring IEEE_FLOAT under gdbarch's control.
* gdbarch.sh (IEEE_FLOAT): New entry.
* gdbarch.c, gdbarch.h: Regenerated.
* valprint.c (IEEE_FLOAT): Provide a default #definition for this.
(print_floating): Use IEEE_FLOAT as if it were an expression; use
the code specific to IEEE-format numbers whenever the value of
IEEE_FLOAT is non-zero.
* config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
config/arc/tm-arc.h, config/arm/tm-arm.h, config/fr30/tm-fr30.h,
config/h8300/tm-h8300.h, config/i386/tm-i386.h,
config/i960/tm-i960.h, config/m88k/tm-m88k.h,
config/mips/tm-mips.h, config/pa/tm-hppa.h,
config/sparc/tm-sparc.h, config/delta/tm-delta.h,
config/frv/tm-frv.h (IEEE_FLOAT): For all ports that #define
IEEE_FLOAT, make sure they give it the value (1).
2000-04-14 19:14:19 +00:00
Peter Schauer
14164c30b6 * config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Define.
* config/i386/tm-i386sol2.h (HAVE_I387_REGS):  Define.
	* i386v4-nat.c (supply_fpregset, fill_fpregset):  Add code
	to handle floating point registers if NUM_FREGS is not zero.
2000-04-13 18:11:41 +00:00
Nicholas Duffek
2f09097b73 * sol-thread.c (GET_LWP, GET_THREAD, BUILD_LWP, BUILD_THREAD):
Change to rely on PIDGET etc.
	* config/i386/nm-i386sol2.h (TARGET_HAS_WATCHPOINTS,
	TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_CONTINUABLE_WATCHPOINT,
	STOPPED_BY_WATCHPOINT, target_[insert/remove]_watchpoint):
	define.  Allow target to use procfs hardware watchpoints.
	* config/sparc/nm-sun4sol2.h: ditto.
	* config/i386/tm-i386sol2.h (PIDGET, TIDGET, MERGEPID): modify
	definitions to use 16 bits for the pid, 15 bits for the tid, and
	1 bit for the flag.
	* config/sparc/tm-sun4sol2.h: ditto.
	(SOFTWARE_SINGLE_STEP, SOFTWARE_SINGLE_STEP_P): undefine.
	* testsuite/gdb.threads/pthreads.exp (all_threads_running): Allow
	for more than 15 thread increments.
2000-04-07 01:14:10 +00:00
J.T. Conklin
c1ed99b861 2000-04-03 J.T. Conklin <jtc@redback.com>
* config/i386/xm-nbsd.h (HOST_LONG_DOUBLE_FORMAT): Define.
2000-04-03 21:33:21 +00:00
Eli Zaretskii
7f668b8658 * config/i386/xm-go32.h (HOST_LONG_DOUBLE_FORMAT): Define.
* config/i386/tm-go32.h (TARGET_LONG_DOUBLE_BIT): Remove
	definition (and use the common one in tm-i386.h).
	(REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Likewise.
	(I386_DJGPP_TARGET): Don't define, it's no longer required.
	(LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): Remove definition,
	i386-tdep.c defines it for all x86 targets.
	(LD_I387, HEX_LONG_DOUBLE_INPUT): Remove.

	* config/djgpp/fnchange.lst: Add i386-linux-tdep.c.

	* config/djgpp/djcheck.sh: Edit the copyright year out of the test
	results.  Fix editing of `main' arguments for non-GNU Sed.
2000-04-03 15:24:17 +00:00
Mark Kettenis
b1ced0139c 2000-04-02 Mark Kettenis <kettenis@gnu.org>
* config/i386/xm-linux.h (HOST_LONG_DOUBLE_FORMAT): Define as
	&floatformat_i387_ext.
	* config/i386/xm-i386gnu.h (HOST_LONG_DOUBLE_FORMAT): Likewise.
2000-04-02 14:41:45 +00:00
Mark Kettenis
6e2e8c243b 2000-03-27 Mark Kettenis <kettenis@gnu.org>
* config/i386/tm-i386.h: Fix typo.  It is TARGET_LONG_DOUBLE_BIT
	instead of TARGET_LONG_DOUBLE_BITS.
	* config/i386/tm-i386mk.h: Likewise.
2000-03-26 22:10:59 +00:00
Mark Kettenis
ac27f131b2 2000-03-26 Mark Kettenis <kettenis@gnu.org>
Provide `long double' support for most i386 targets.
	* config/i386/tm-i386.h (TARGET_LONG_DOUBLE_FORMAT): Define as
	&floatformat_i387_ext.
	(TARGET_LONG_DOUBLE_BITS): Define as 96.
	(REGISTER_VIRTUAL_TYPE): Change type for FPU registers to
	`builtin_type_long_double'.
	(REGISTER_CONVERT_TO_VIRTUAL): Call
	i386_register_convert_to_virtual.
	(REGISTER_CONVERT_TO_RAW): Call i386_register_convert_to_raw.
	(i387_to_double, double_to_i387): Remove prototypes.
	(i386_extract_return_value): Change prototype to match definition
	in i386-tdep.c.
	* config/i386/tm-i386mk.h (TARGET_LONG_DOUBLE_FORMAT): #undef.
	(TARGET_LONG_DOUBLE_BITS): #undef.
	* config/i386/tm-linux.h (TARGET_LONG_DOUBLE_BIT): Remove.
	[HAVE_LONG_DOUBLE && HOST_I386] (LD_I387): Remove.
	(i387_extract_floating, i387_store_floating): Remove prototypes.
	(TARGET_EXTRACT_FLOATING, TARGET_STORE_FLOATING): Remove.
	(REGISTER_CONVERT_TO_VIRTUAL, REGOISTER_CONVERT_TO_RAW): Remove.
	(REGISTER_VIRTUAL_TYPE): Remove.
	* i386-tdep.c (i386_register_convert_to_virtual): New function.
	(i386_register_convert_to_raw): New function.
	* i387-tdep.c [LD_I387] (i387_extract_floating): Remove.
	(i387_store_floating): Remove.
2000-03-26 21:21:50 +00:00
Christopher Faylor
8227c82d1d * win32-nat.c: Back out special frame walking code. It was broken.
(handle_exception): Correctly identify an illegal instruction.
* config/tm-cygwin.h: Eliminate special frame handling.  Just use normal i386
handling.
2000-03-25 02:26:21 +00:00
J.T. Conklin
76a2220988 2000-03-24 J.T. Conklin <jtc@redback.com>
* i386/tm-nbsd.h (USE_STRUCT_CONVENTION): Define.
        * i386nbsd-nat.c (i386nbsd_use_struct_convention): New function.
        (fetch_core_registers): Read fp registers.
        (i386nbsd_core_fns, _initialize_i386nbsd_nat): Added.
2000-03-24 23:06:57 +00:00
Mark Kettenis
1a309862a7 2000-03-22 Mark Kettenis <kettenis@gnu.org>
* config/i386/tm-i386aix.h (I386_AIX_TARGET): Remove.
	* config/i386/tm-linux.h (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM):
	Remove
	* i386-tdep.c (LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): New defines.
	(i386_extract_return_value): Rewritten.  Correctly support all
	floating-point types and large integer types on targets that use
	the standard i386 GDB register layout and return floating-point
	values in the FPU.
2000-03-22 09:45:01 +00:00
J.T. Conklin
5f04ac3de9 2000-03-21 J.T. Conklin <jtc@redback.com>
* i386/nbsd.mh (NATDEPFILES): Change i386b-nat.o to i386nbsd-nat.o.
        * i386nbsd-nat.c: New file.

        * i386/tm-nbsd.h (NUM_REGS): Removed.
        (HAVE_I387_REGS): Defined.
        * i386/nm-nbsd.h (FLOAT_INFO): Removed.

        * tm-nbsd.h (IN_SOLIB_CALL_TRAMPOLINE): Define if not
        SVR4_SHARED_LIBS.
2000-03-22 01:36:31 +00:00
Jim Blandy
e7ee86a99a * i386-linux-nat.c: No need to #include "frame.h" any more.
(LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
i386_linux_sigtramp_saved_sp):	Deleted.  Folks rightly pointed
out that these are target-dependent, and useful in non-native
configurations.  Moved to...
* i386-linux-tdep.c: ... Here, a new file.
* Makefile.in (ALLDEPFILES): Add i386-linux-tdep.c.
(i386-linux-tdep.o): New rule.
(i386-linux-nat.o): We no longer depend on frame.h.
* config/i386/linux.mt (TDEPFILES): Add i386-linux-tdep.o.
2000-03-20 20:38:29 +00:00
Elena Zannoni
58a2c44a26 2000-03-04 Eli Zaretskii <eliz@is.elta.co.il>
* event-loop.c (top-level) [NO_FD_SET]: Deprecate this branch.
	Print an error at compile time if we are to use select, but FD_SET
	is not available.
	(SELECT_MASK, NBBY, FD_SETSIZE, NFDBITS, MASK_SIZE): Define only
	if HAVE_POLL is not defined and NO_FD_SET *is* defined.
	(create_file_handler) [!HAVE_POLL]: Use FD_SET and FD_CLR.
	(delete_file_handler) [!HAVE_POLL]: Use FD_CLR and FD_ISSET.
	(gdb_wait_for_event) [!HAVE_POLL]: Copy fd_set sets directly
	instead of using memcpy and memset.  Use FD_ISSET.

	* config/i386/xm-go32.h (fd_mask): Remove typedef.
2000-03-20 19:59:38 +00:00
Jim Blandy
11708b95a3 * i386-tdep.c (LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2, linux_sigtramp_code,
LINUX_SIGTRAMP_LEN, i386_linux_sigtramp_start,
LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1,
linux_rt_sigtramp_code, LINUX_RT_SIGTRAMP_LEN,
i386_linux_rt_sigtramp_start, i386_linux_in_sigtramp,
i386_linux_sigcontext_addr, LINUX_SIGCONTEXT_PC_OFFSET,
i386_linux_sigtramp_saved_pc, LINUX_SIGCONTEXT_SP_OFFSET,
i386_linux_sigtramp_saved_sp): Deleted.  These all implement
Linux-specific signal trampoline detection, and should be moved to...
* i386-linux-nat.c: ... here.
* config/i386/tm-linux.h (I386_LINUX_SIGTRAMP): No need to define
this any more, since we're not enabling OS-specific code in a
OS-independent file.
2000-03-16 22:46:30 +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
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
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
Mark Kettenis
667620fa27 Attempt to fix AIX/i386 target. 2000-03-02 15:44:27 +00:00
Andrew Cagney
b241ba8eab From Peter Schauer: Define Solaris/x86 MERGEPID. 2000-02-29 13:38:55 +00:00
Andrew Cagney
1211c4e429 From J.T.: Convert i386 to updated frame_saved_regs. 2000-02-29 13:28:24 +00:00
Andrew Cagney
024094993c From Eli. Bring go32 target up-to-date with recent GDB i386 changes. 2000-02-29 08:16:40 +00:00
Mark Kettenis
75c6e08a8a 2000-02-26 Mark Kettenis <kettenis@gnu.org>
Make cross-compilation for the Hurd more friendly.
	From Jeff Bailey <jbailey@gnu.org>:
	* configure.in: Use AC_CHECK_TOOL to find MiG.
	* Makefile.in (MIG): New variable.
	* config/i386/i386gnu.mh (MIG): Remove.
	* configure: Regenerated.
2000-02-26 13:46:56 +00:00
Jim Kingdon
d6e9fb0513 2000-02-10 J.T. Conklin <jtc@redback.com>
* config/i386/nbsd.mt (GDBSERVER_DEPFILES): Add low-nbsd.o
	* configure.tgt (i[3456]86-*-netbsd*): add gdbserver to
 	configdirs.
	* gdbserver/low-nbsd.c: New file.

	* gdbserver/Makefile.in: convert to autoconf.
	* gdbserver/configure.in: likewise.
	* gdbserver/configure: generate.
2000-02-13 01:06:58 +00:00
Jason Molenda
1171f8d754 2000-02-07 Jason Molenda (jsm@bugshack.cygnus.com)
* gdb/config/i386/windows.mh,
	 gdb/doc/GDBvn.texi, gdb/doc/remote.texi,
	 gdb/testsuite/gdb.base/README, gdb/testsuite/gdb.base/crossload.exp,
	 gdb/testsuite/gdb.base/i486-elf.u, gdb/testsuite/gdb.base/i860-elf.u,
	 gdb/testsuite/gdb.base/m68k-aout.u,
	 gdb/testsuite/gdb.base/m68k-aout2.u,
	 gdb/testsuite/gdb.base/m68k-elf.u, gdb/testsuite/gdb.base/mips-ecoff.u,
	 gdb/testsuite/gdb.base/sparc-aout.u,
	 gdb/testsuite/gdb.base/sparc-elf.u,
	 gdb/tui/Makefile,
	 readline/ChangeLog: These files have been removed over the course
	 of the last year, but weren't cvs removed from the old GDB repository
	 on sourceware.
2000-02-08 03:37:34 +00:00
Jason Molenda
da59e08184 import gdb-2000-01-31 snapshot 2000-02-01 03:19:29 +00:00
Jason Molenda
0d06e24ba7 import gdb-2000-01-10 snapshot 2000-01-11 03:07:37 +00:00
Jason Molenda
c3f6f71df3 import gdb-2000-01-05 snapshot 2000-01-06 03:07:20 +00:00
Jason Molenda
ed9a39ebf9 import gdb-1999-12-21 snapshot 1999-12-22 21:45:38 +00:00
Jason Molenda
c4093a6ab3 import gdb-1999-12-13 snapshot 1999-12-14 01:06:04 +00:00
Jason Molenda
de57eccd12 import gdb-1999-12-07 snapshot 1999-12-08 02:51:13 +00:00
Jason Molenda
c2d11a7da0 import gdb-1999-12-06 snapshot 1999-12-07 03:56:43 +00:00
Jason Molenda
4ce44c668d import gdb-1999-11-16 snapshot 1999-11-17 02:31:06 +00:00
Jason Molenda
11cf874164 import gdb-1999-11-08 snapshot 1999-11-09 01:23:30 +00:00
Jason Molenda
5c44784c11 import gdb-1999-11-01 snapshot 1999-11-02 04:44:47 +00:00
Jason Molenda
e514a9d642 import gdb-1999-10-25 snapshot 1999-10-26 03:43:48 +00:00
Jason Molenda
917317f4c6 import gdb-1999-10-18 snapshot 1999-10-19 02:47:02 +00:00
Jason Molenda
2df3850c7b import gdb-1999-10-11 snapshot 1999-10-12 04:37:53 +00:00
Jason Molenda
c2c6d25f0d import gdb-1999-09-21 1999-09-22 03:28:34 +00:00
Stan Shebs
d4f3574e77 import gdb-1999-09-08 snapshot 1999-09-09 00:02:17 +00:00
Jason Molenda
104c1213b4 import gdb-1999-08-30 snapshot 1999-08-31 01:14:27 +00:00
Jason Molenda
53a5351d90 import gdb-1999-08-23 snapshot 1999-08-23 22:40:00 +00:00
Jason Molenda
7be570e7ce import gdb-1999-08-16 snapshot 1999-08-16 19:57:19 +00:00
Jason Molenda
a0b3c4fd32 import gdb-1999-08-02 snapshot 1999-08-02 23:48:37 +00:00
Jason Molenda
adf40b2e16 import gdb-1999-07-19 snapshot 1999-07-19 23:30:11 +00:00
Jason Molenda
c5aa993b1f import gdb-1999-07-07 post reformat 1999-07-07 20:19:36 +00:00
Jason Molenda
cce74817d9 import gdb-1999-06-07 snapshot 1999-06-07 19:19:32 +00:00
Jason Molenda
ac9a91a77c import gdb-1999-06-01 snapshot 1999-06-01 15:44:41 +00:00
Jason Molenda
392a587b05 import gdb-1999-05-25 snapshot 1999-05-25 18:09:09 +00:00