OSDN Git Service

* config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Define.
authorschauer <schauer>
Thu, 13 Apr 2000 18:10:17 +0000 (18:10 +0000)
committerschauer <schauer>
Thu, 13 Apr 2000 18:10:17 +0000 (18:10 +0000)
* 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.

gdb/config/i386/nm-i386sol2.h
gdb/config/i386/tm-i386sol2.h

index 2c4b4d4..8f29711 100644 (file)
    It will *NOT* be necessary for GDB to step over the watchpoint. */
 #define HAVE_CONTINUABLE_WATCHPOINT
 
+/* Solaris x86 2.6 and 2.7 targets have a kernel bug when stepping
+   over an instruction that causes a page fault without triggering
+   a hardware watchpoint. The kernel properly notices that it shouldn't
+   stop, because the hardware watchpoint is not triggered, but it forgets
+   the step request and continues the program normally.
+   Work around the problem by removing hardware watchpoints if a step is
+   requested, GDB will check for a hardware watchpoint trigger after the
+   step anyway.  */
+#define CANNOT_STEP_HW_WATCHPOINTS
+
 extern int procfs_stopped_by_watchpoint PARAMS ((int));
 #define STOPPED_BY_WATCHPOINT(W) \
   procfs_stopped_by_watchpoint(inferior_pid)
index da231eb..a15d812 100644 (file)
@@ -21,6 +21,7 @@
 #ifndef TM_I386SOL2_H
 #define TM_I386SOL2_H 1
 
+#define HAVE_I387_REGS
 #include "i386/tm-i386v4.h"
 
 /* Signal handler frames under Solaris 2 are recognized by a return address