aboutsummaryrefslogtreecommitdiff
path: root/gdb/sparc-tdep.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2003-05-15 22:58:39 +0000
committerAndrew Cagney <cagney@redhat.com>2003-05-15 22:58:39 +0000
commitaaab4dba8639bf42d0f6d79ca33dd6867e212fed (patch)
treece4927d40da7489449f224ef720b6788866ccca0 /gdb/sparc-tdep.c
parente06963ffef465de9702443d1f3e04b7d34fa5616 (diff)
downloadgdb-aaab4dba8639bf42d0f6d79ca33dd6867e212fed.zip
gdb-aaab4dba8639bf42d0f6d79ca33dd6867e212fed.tar.gz
gdb-aaab4dba8639bf42d0f6d79ca33dd6867e212fed.tar.bz2
2003-05-15 Andrew Cagney <cagney@redhat.com>
* arch-utils.h (legacy_breakpoint_from_pc): Delete declaration. * target.h (memory_breakpoint_from_pc): Delete declaration. * mem-break.c (memory_breakpoint_from_pc): Delete function. * arch-utils.c (legacy_breakpoint_from_pc): Delete function. * monitor.c (monitor_insert_breakpoint): Use gdbarch_breakpoint_from_pc instead of memory_breakpoint_from_pc. * gdbarch.sh (BREAKPOINT_FROM_PC): Do not provide a default. * gdbarch.h, gdbarch.c: Re-generate. * sparc-tdep.c (sparc_breakpoint_from_pc): New function. (sparc_gdbarch_init): Set breakpoint_from_pc to sparc_breakpoint_from_pc. * config/sparc/tm-sparc.h (BREAKPOINT): Delete macro. (BREAKPOINT_FROM_PC): Define. (sparc_breakpoint_from_pc): Declare. * hppa-tdep.c (hppa_breakpoint_from_pc): New function. * config/pa/tm-hppa.h (hppa_breakpoint_from_pc): Declare. (BREAKPOINT_FROM_PC): Define. (BREAKPOINT): Delete macro. * target.h: Update comment. * s390-tdep.c (s390_gdbarch_init): Update comments. * remote.c: Update comments. * remote-mips.c: Update comments. * proc-api.c (write_with_trace): Do not check for a breakpoint. * mem-break.c: Update comment. * ia64-tdep.c (IA64_BREAKPOINT): Rename BREAKPOINT. (ia64_memory_insert_breakpoint): Update. * config/sparc/tm-sparc.h: Update comment. * config/pa/tm-hppa64.h: Update comment. * rs6000-tdep.c (BIG_BREAKPOINT, LITTLE_BREAKPOINT): Delete macro. (rs6000_breakpoint_from_pc): Update. * mips-tdep.c (BIG_BREAKPOINT, LITTLE_BREAKPOINT): Delete macro. (PMON_BIG_BREAKPOINT, PMON_LITTLE_BREAKPOINT): Delete macro. (IDT_LITTLE_BREAKPOINT, IDT_LITTLE_BREAKPOINT): Delete macro. (MIPS16_LITTLE_BREAKPOINT, MIPS16_BIG_BREAKPOINT): Delete macro. (mips_breakpoint_from_pc): Update. (mips_dump_tdep): Update.
Diffstat (limited to 'gdb/sparc-tdep.c')
-rw-r--r--gdb/sparc-tdep.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/gdb/sparc-tdep.c b/gdb/sparc-tdep.c
index cf5d9c5..f278bd6 100644
--- a/gdb/sparc-tdep.c
+++ b/gdb/sparc-tdep.c
@@ -151,6 +151,14 @@ int deferred_stores = 0; /* Accumulated stores we want to do eventually. */
#endif
+const unsigned char *
+sparc_breakpoint_from_pc (CORE_ADDR *pc, int *len)
+{
+ static const char breakpoint[] = {0x91, 0xd0, 0x20, 0x01};
+ (*len) = sizeof (breakpoint);
+ return breakpoint;
+}
+
/* Fetch a single instruction. Even on bi-endian machines
such as sparc86x, instructions are always big-endian. */
@@ -3153,7 +3161,7 @@ sparc_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
/* First set settings that are common for all sparc architectures. */
set_gdbarch_believe_pcc_promotion (gdbarch, 1);
- set_gdbarch_breakpoint_from_pc (gdbarch, memory_breakpoint_from_pc);
+ set_gdbarch_breakpoint_from_pc (gdbarch, sparc_breakpoint_from_pc);
set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_double_bit (gdbarch, 8 * TARGET_CHAR_BIT);
set_gdbarch_deprecated_extract_struct_value_address (gdbarch, sparc_extract_struct_value_address);