This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[patch/rfc] Give decr pc after break a default of zero
- From: Andrew Cagney <cagney at gnu dot org>
- To: gdb-patches at sources dot redhat dot com
- Date: Thu, 15 Jan 2004 18:00:10 -0500
- Subject: [patch/rfc] Give decr pc after break a default of zero
Almost all architectures are setting DECR_PC_AFTER_BREAK to zero, this
makes that value the default.
The main exception is i386, and even that has an exception to the
exception - Neutrino. For Neutrino I've left the set-to-zero as is so
that it's clear that it is overriding the i386.
baring comments I'll look to commit this in a few days,
Andrew
2004-01-14 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (DECR_PC_AFTER_BREAK): Make zero the default.
* gdbarch.c: Re-generate.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Do not set
DECR_PC_AFTER_BREAK to zero.
* vax-tdep.c (vax_gdbarch_init): Ditto.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* sparc-tdep.c (sparc32_gdbarch_init): Ditto.
* sh64-tdep.c (sh64_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* ns32k-tdep.c (ns32k_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* mips-tdep.c (mips_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* m32r-tdep.c (m32r_gdbarch_init): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* i386-interix-tdep.c (i386_interix_init_abi): Ditto.
* hppa-tdep.c (hppa_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* arm-tdep.c (arm_gdbarch_init): Ditto.
* i386-nto-tdep.c (i386nto_init_abi): Add comment.
Index: arm-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/arm-tdep.c,v
retrieving revision 1.156
diff -u -r1.156 arm-tdep.c
--- arm-tdep.c 13 Jan 2004 21:38:45 -0000 1.156
+++ arm-tdep.c 15 Jan 2004 19:13:33 -0000
@@ -2877,7 +2877,6 @@
/* Breakpoint manipulation. */
set_gdbarch_breakpoint_from_pc (gdbarch, arm_breakpoint_from_pc);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
/* Information about registers, etc. */
set_gdbarch_print_float_info (gdbarch, arm_print_float_info);
Index: avr-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/avr-tdep.c,v
retrieving revision 1.74
diff -u -r1.74 avr-tdep.c
--- avr-tdep.c 13 Jan 2004 21:38:45 -0000 1.74
+++ avr-tdep.c 15 Jan 2004 19:13:34 -0000
@@ -1319,7 +1319,6 @@
set_gdbarch_skip_prologue (gdbarch, avr_skip_prologue);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_breakpoint_from_pc (gdbarch, avr_breakpoint_from_pc);
set_gdbarch_frame_args_skip (gdbarch, 0);
Index: cris-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/cris-tdep.c,v
retrieving revision 1.92
diff -u -r1.92 cris-tdep.c
--- cris-tdep.c 13 Jan 2004 21:38:45 -0000 1.92
+++ cris-tdep.c 15 Jan 2004 19:13:36 -0000
@@ -4281,10 +4281,6 @@
set_gdbarch_breakpoint_from_pc (gdbarch, cris_breakpoint_from_pc);
- /* The PC must not be decremented after a breakpoint. (The breakpoint
- handler takes care of that.) */
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
-
/* The number of bytes at the start of arglist that are not really args,
0 in the CRIS ABI. */
set_gdbarch_frame_args_skip (gdbarch, 0);
Index: frv-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/frv-tdep.c,v
retrieving revision 1.65
diff -u -r1.65 frv-tdep.c
--- frv-tdep.c 13 Jan 2004 21:38:45 -0000 1.65
+++ frv-tdep.c 15 Jan 2004 19:13:36 -0000
@@ -1420,8 +1420,6 @@
set_gdbarch_write_pc (gdbarch, generic_target_write_pc);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
-
set_gdbarch_remote_translate_xfer_address
(gdbarch, generic_remote_translate_xfer_address);
Index: gdbarch.sh
===================================================================
RCS file: /cvs/src/src/gdb/gdbarch.sh,v
retrieving revision 1.289
diff -u -r1.289 gdbarch.sh
--- gdbarch.sh 13 Jan 2004 21:38:45 -0000 1.289
+++ gdbarch.sh 15 Jan 2004 19:13:38 -0000
@@ -632,7 +632,7 @@
M:2:ADJUST_BREAKPOINT_ADDRESS:CORE_ADDR:adjust_breakpoint_address:CORE_ADDR bpaddr:bpaddr
f:2:MEMORY_INSERT_BREAKPOINT:int:memory_insert_breakpoint:CORE_ADDR addr, char *contents_cache:addr, contents_cache::0:default_memory_insert_breakpoint::0
f:2:MEMORY_REMOVE_BREAKPOINT:int:memory_remove_breakpoint:CORE_ADDR addr, char *contents_cache:addr, contents_cache::0:default_memory_remove_breakpoint::0
-v:2:DECR_PC_AFTER_BREAK:CORE_ADDR:decr_pc_after_break::::0:-1
+v:2:DECR_PC_AFTER_BREAK:CORE_ADDR:decr_pc_after_break::::0:::0
v:2:FUNCTION_START_OFFSET:CORE_ADDR:function_start_offset::::0:::0
#
m::REMOTE_TRANSLATE_XFER_ADDRESS:void:remote_translate_xfer_address:struct regcache *regcache, CORE_ADDR gdb_addr, int gdb_len, CORE_ADDR *rem_addr, int *rem_len:regcache, gdb_addr, gdb_len, rem_addr, rem_len:::generic_remote_translate_xfer_address::0
Index: h8300-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/h8300-tdep.c,v
retrieving revision 1.88
diff -u -r1.88 h8300-tdep.c
--- h8300-tdep.c 13 Jan 2004 21:38:46 -0000 1.88
+++ h8300-tdep.c 15 Jan 2004 19:13:39 -0000
@@ -1323,9 +1323,6 @@
*/
/* Stack grows up. */
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- /* PC stops zero byte after a trap instruction
- (which means: exactly on trap instruction). */
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
/* This value is almost never non-zero... */
set_gdbarch_frame_args_skip (gdbarch, 0);
set_gdbarch_frameless_function_invocation (gdbarch,
Index: hppa-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/hppa-tdep.c,v
retrieving revision 1.110
diff -u -r1.110 hppa-tdep.c
--- hppa-tdep.c 13 Jan 2004 21:38:46 -0000 1.110
+++ hppa-tdep.c 15 Jan 2004 19:13:40 -0000
@@ -5196,7 +5196,6 @@
hppa_in_solib_return_trampoline);
set_gdbarch_deprecated_saved_pc_after_call (gdbarch, hppa_saved_pc_after_call);
set_gdbarch_inner_than (gdbarch, hppa_inner_than);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_deprecated_register_size (gdbarch, tdep->bytes_per_address);
set_gdbarch_deprecated_fp_regnum (gdbarch, 3);
set_gdbarch_sp_regnum (gdbarch, 30);
Index: i386-interix-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/i386-interix-tdep.c,v
retrieving revision 1.12
diff -u -r1.12 i386-interix-tdep.c
--- i386-interix-tdep.c 22 Sep 2003 17:45:01 -0000 1.12
+++ i386-interix-tdep.c 15 Jan 2004 19:13:40 -0000
@@ -325,7 +325,6 @@
tdep->struct_return = reg_struct_return;
tdep->jb_pc_offset = jump_buffer_Eip_offset;
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_pc_in_sigtramp (gdbarch, i386_interix_pc_in_sigtramp);
set_gdbarch_in_solib_call_trampoline (gdbarch,
i386_interix_in_solib_call_trampoline);
Index: i386-nto-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/i386-nto-tdep.c,v
retrieving revision 1.7
diff -u -r1.7 i386-nto-tdep.c
--- i386-nto-tdep.c 28 Sep 2003 13:35:44 -0000 1.7
+++ i386-nto-tdep.c 15 Jan 2004 19:13:40 -0000
@@ -270,7 +270,10 @@
/* NTO uses ELF. */
i386_elf_init_abi (info, gdbarch);
- /* Neutrino rewinds to look more normal. */
+ /* Neutrino rewinds to look more normal.
+
+ NOTE: cagney/2004-01-14: This would be overriding the default
+ i386 value which is to decrement the PC. */
set_gdbarch_decr_pc_after_break (gdbarch, 0);
/* NTO has shared libraries. */
Index: ia64-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/ia64-tdep.c,v
retrieving revision 1.108
diff -u -r1.108 ia64-tdep.c
--- ia64-tdep.c 13 Jan 2004 21:38:46 -0000 1.108
+++ ia64-tdep.c 15 Jan 2004 19:13:41 -0000
@@ -3425,7 +3425,6 @@
/* Settings that should be unnecessary. */
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_frame_args_skip (gdbarch, 0);
set_gdbarch_remote_translate_xfer_address (
Index: m32r-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/m32r-tdep.c,v
retrieving revision 1.21
diff -u -r1.21 m32r-tdep.c
--- m32r-tdep.c 13 Jan 2004 21:38:46 -0000 1.21
+++ m32r-tdep.c 15 Jan 2004 19:13:41 -0000
@@ -945,7 +945,6 @@
set_gdbarch_skip_prologue (gdbarch, m32r_skip_prologue);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_breakpoint_from_pc (gdbarch, m32r_breakpoint_from_pc);
set_gdbarch_memory_insert_breakpoint (gdbarch,
m32r_memory_insert_breakpoint);
Index: m68hc11-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/m68hc11-tdep.c,v
retrieving revision 1.94
diff -u -r1.94 m68hc11-tdep.c
--- m68hc11-tdep.c 13 Jan 2004 21:38:46 -0000 1.94
+++ m68hc11-tdep.c 15 Jan 2004 19:13:41 -0000
@@ -1556,7 +1556,6 @@
set_gdbarch_use_struct_convention (gdbarch, m68hc11_use_struct_convention);
set_gdbarch_skip_prologue (gdbarch, m68hc11_skip_prologue);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_breakpoint_from_pc (gdbarch, m68hc11_breakpoint_from_pc);
set_gdbarch_deprecated_stack_align (gdbarch, m68hc11_stack_align);
set_gdbarch_print_insn (gdbarch, gdb_print_insn_m68hc11);
Index: mcore-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/mcore-tdep.c,v
retrieving revision 1.81
diff -u -r1.81 mcore-tdep.c
--- mcore-tdep.c 13 Jan 2004 21:38:46 -0000 1.81
+++ mcore-tdep.c 15 Jan 2004 19:13:42 -0000
@@ -1071,7 +1071,6 @@
set_gdbarch_deprecated_sizeof_call_dummy_words (gdbarch, 0);
set_gdbarch_deprecated_save_dummy_frame_tos (gdbarch, generic_save_dummy_frame_tos);
set_gdbarch_deprecated_saved_pc_after_call (gdbarch, mcore_saved_pc_after_call);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_breakpoint_from_pc (gdbarch, mcore_breakpoint_from_pc);
set_gdbarch_deprecated_push_return_address (gdbarch, mcore_push_return_address);
set_gdbarch_deprecated_push_arguments (gdbarch, mcore_push_arguments);
Index: mips-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/mips-tdep.c,v
retrieving revision 1.272
diff -u -r1.272 mips-tdep.c
--- mips-tdep.c 14 Jan 2004 02:51:42 -0000 1.272
+++ mips-tdep.c 15 Jan 2004 19:13:44 -0000
@@ -6046,7 +6046,6 @@
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
set_gdbarch_breakpoint_from_pc (gdbarch, mips_breakpoint_from_pc);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_skip_prologue (gdbarch, mips_skip_prologue);
set_gdbarch_deprecated_saved_pc_after_call (gdbarch, mips_saved_pc_after_call);
Index: mn10300-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/mn10300-tdep.c,v
retrieving revision 1.96
diff -u -r1.96 mn10300-tdep.c
--- mn10300-tdep.c 13 Jan 2004 21:38:46 -0000 1.96
+++ mn10300-tdep.c 15 Jan 2004 19:13:44 -0000
@@ -1173,7 +1173,6 @@
/* Breakpoints. */
set_gdbarch_breakpoint_from_pc (gdbarch, mn10300_breakpoint_from_pc);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
/* Stack unwinding. */
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
Index: ns32k-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/ns32k-tdep.c,v
retrieving revision 1.63
diff -u -r1.63 ns32k-tdep.c
--- ns32k-tdep.c 13 Jan 2004 21:38:47 -0000 1.63
+++ ns32k-tdep.c 15 Jan 2004 19:13:44 -0000
@@ -598,7 +598,6 @@
set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_on_stack);
/* Breakpoint info */
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_breakpoint_from_pc (gdbarch, ns32k_breakpoint_from_pc);
/* Should be using push_dummy_call. */
Index: rs6000-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/rs6000-tdep.c,v
retrieving revision 1.174
diff -u -r1.174 rs6000-tdep.c
--- rs6000-tdep.c 13 Jan 2004 21:38:47 -0000 1.174
+++ rs6000-tdep.c 15 Jan 2004 19:13:45 -0000
@@ -2886,7 +2886,6 @@
set_gdbarch_skip_prologue (gdbarch, rs6000_skip_prologue);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_breakpoint_from_pc (gdbarch, rs6000_breakpoint_from_pc);
/* Handle the 64-bit SVR4 minimal-symbol convention of using "FN"
Index: sh-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sh-tdep.c,v
retrieving revision 1.154
diff -u -r1.154 sh-tdep.c
--- sh-tdep.c 13 Jan 2004 21:38:47 -0000 1.154
+++ sh-tdep.c 15 Jan 2004 19:13:45 -0000
@@ -2244,7 +2244,6 @@
set_gdbarch_skip_prologue (gdbarch, sh_skip_prologue);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_push_dummy_call (gdbarch, sh_push_dummy_call_nofpu);
Index: sh64-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sh64-tdep.c,v
retrieving revision 1.16
diff -u -r1.16 sh64-tdep.c
--- sh64-tdep.c 13 Jan 2004 21:38:47 -0000 1.16
+++ sh64-tdep.c 15 Jan 2004 19:13:46 -0000
@@ -2848,7 +2848,6 @@
set_gdbarch_skip_prologue (gdbarch, sh_skip_prologue);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_frame_args_skip (gdbarch, 0);
set_gdbarch_frameless_function_invocation (gdbarch, frameless_look_for_prologue);
Index: sparc-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sparc-tdep.c,v
retrieving revision 1.140
diff -u -r1.140 sparc-tdep.c
--- sparc-tdep.c 13 Jan 2004 21:38:47 -0000 1.140
+++ sparc-tdep.c 15 Jan 2004 19:13:46 -0000
@@ -1080,7 +1080,6 @@
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
set_gdbarch_breakpoint_from_pc (gdbarch, sparc_breakpoint_from_pc);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_frame_args_skip (gdbarch, 8);
Index: v850-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/v850-tdep.c,v
retrieving revision 1.77
diff -u -r1.77 v850-tdep.c
--- v850-tdep.c 13 Jan 2004 21:38:47 -0000 1.77
+++ v850-tdep.c 15 Jan 2004 19:13:46 -0000
@@ -1259,9 +1259,6 @@
*/
/* Stack grows up. */
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
- /* PC stops zero byte after a trap instruction
- (which means: exactly on trap instruction). */
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
/* This value is almost never non-zero... */
set_gdbarch_frame_args_skip (gdbarch, 0);
Index: vax-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/vax-tdep.c,v
retrieving revision 1.65
diff -u -r1.65 vax-tdep.c
--- vax-tdep.c 2 Oct 2003 20:28:30 -0000 1.65
+++ vax-tdep.c 15 Jan 2004 19:13:47 -0000
@@ -406,7 +406,6 @@
/* Breakpoint info */
set_gdbarch_breakpoint_from_pc (gdbarch, vax_breakpoint_from_pc);
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
/* Misc info */
set_gdbarch_function_start_offset (gdbarch, 2);
Index: xstormy16-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/xstormy16-tdep.c,v
retrieving revision 1.67
diff -u -r1.67 xstormy16-tdep.c
--- xstormy16-tdep.c 13 Jan 2004 21:38:47 -0000 1.67
+++ xstormy16-tdep.c 15 Jan 2004 19:13:47 -0000
@@ -1069,9 +1069,6 @@
*/
/* Stack grows up. */
set_gdbarch_inner_than (gdbarch, core_addr_greaterthan);
- /* PC stops zero byte after a trap instruction
- (which means: exactly on trap instruction). */
- set_gdbarch_decr_pc_after_break (gdbarch, 0);
/* This value is almost never non-zero... */
set_gdbarch_frame_args_skip (gdbarch, 0);