aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/arm-tdep.c6
-rw-r--r--gdb/config/arm/tm-arm.h8
-rw-r--r--gdb/config/arm/tm-embed.h4
4 files changed, 18 insertions, 9 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 87f7c59..ddb8c84 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,12 @@
+2001-12-19 Fernando Nasser <fnasser@redhat.com>
+
+ * config/arm/tm-arm.h: Properly define SOFTWARE_SINGLE_STEP_P.
+ Always define SOFTWARE_SINGLE_STEP.
+ * config/arm/tm-embed.h: Properly define SOFTWARE_SINGLE_STEP_P.
+ * arm-tdep.c (arm_get_next_pc, thumb_get_next_pc, bitcount,
+ shifted_reg_val): Always compile these functions.
+ (arm_software_single_step): Fix second argument in function calls.
+
2001-12-19 Andrew Cagney <ac131313@redhat.com>
* arch-utils.h (gdbarch_info_init): Declare.
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index bec9c80..434b26f 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -1532,7 +1532,6 @@ condition_true (unsigned long cond, unsigned long status_reg)
return 1;
}
-#if SOFTWARE_SINGLE_STEP_P
/* Support routines for single stepping. Calculate the next PC value. */
#define submask(x) ((1L << ((x) + 1)) - 1)
#define bit(obj,st) (((obj) >> (st)) & 1)
@@ -1887,12 +1886,11 @@ arm_software_single_step (ignore, insert_bpt)
if (insert_bpt)
{
next_pc = arm_get_next_pc (read_register (PC_REGNUM));
- target_insert_breakpoint (next_pc, &break_mem);
+ target_insert_breakpoint (next_pc, break_mem);
}
else
- target_remove_breakpoint (next_pc, &break_mem);
+ target_remove_breakpoint (next_pc, break_mem);
}
-#endif /* SOFTWARE_SINGLE_STEP_P */
#include "bfd-in2.h"
#include "libcoff.h"
diff --git a/gdb/config/arm/tm-arm.h b/gdb/config/arm/tm-arm.h
index c9b91c9..6436d4a 100644
--- a/gdb/config/arm/tm-arm.h
+++ b/gdb/config/arm/tm-arm.h
@@ -453,13 +453,11 @@ void arm_fix_call_dummy (char *dummy, CORE_ADDR pc, CORE_ADDR fun,
/* Most ARMs don't have single stepping capability, so provide a
single-stepping mechanism by default */
-#ifndef SOFTWARE_SINGLE_STEP_P
-#define SOFTWARE_SINGLE_STEP_P 1
-#endif
-#if SOFTWARE_SINGLE_STEP_P
+#undef SOFTWARE_SINGLE_STEP_P
+#define SOFTWARE_SINGLE_STEP_P() 1
+
#define SOFTWARE_SINGLE_STEP(sig,bpt) arm_software_single_step((sig), (bpt))
void arm_software_single_step PARAMS((int, int));
-#endif
CORE_ADDR arm_get_next_pc (CORE_ADDR pc);
diff --git a/gdb/config/arm/tm-embed.h b/gdb/config/arm/tm-embed.h
index 3a4a5e6..20ac798 100644
--- a/gdb/config/arm/tm-embed.h
+++ b/gdb/config/arm/tm-embed.h
@@ -25,6 +25,10 @@
/* Include the common ARM definitions. */
#include "arm/tm-arm.h"
+/* The remote stub should be able to single-step. */
+#undef SOFTWARE_SINGLE_STEP_P
+#define SOFTWARE_SINGLE_STEP_P() 0
+
/* I don't know the real values for these. */
#define TARGET_UPAGES UPAGES
#define TARGET_NBPG NBPG