From: Andrew Cagney Date: Sat, 17 Jan 2004 15:34:13 +0000 (+0000) Subject: 2004-01-17 Andrew Cagney X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=71bd6bd4140e48a003268c31ca6ea9251cdff604;p=binutils-gdb.git 2004-01-17 Andrew Cagney * 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. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f2316ffa253..c45438b9729 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,31 @@ +2004-01-17 Andrew Cagney + + * 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. + 2004-01-17 J. Brobecker * dwarf2read.c (dwarf2_non_const_array_bound_ignored_complaint): diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c index 9794141fe8f..1099a69d534 100644 --- a/gdb/arm-tdep.c +++ b/gdb/arm-tdep.c @@ -2877,7 +2877,6 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) /* 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); diff --git a/gdb/avr-tdep.c b/gdb/avr-tdep.c index f4fe6319bd4..b381adfc5be 100644 --- a/gdb/avr-tdep.c +++ b/gdb/avr-tdep.c @@ -1319,7 +1319,6 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/cris-tdep.c b/gdb/cris-tdep.c index 05fe319f393..0b1005ff684 100644 --- a/gdb/cris-tdep.c +++ b/gdb/cris-tdep.c @@ -4281,10 +4281,6 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/frv-tdep.c b/gdb/frv-tdep.c index 007d031538c..50a421c0533 100644 --- a/gdb/frv-tdep.c +++ b/gdb/frv-tdep.c @@ -1420,8 +1420,6 @@ frv_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c index cb8bbb9197d..0acb14cb5bc 100644 --- a/gdb/gdbarch.c +++ b/gdb/gdbarch.c @@ -525,7 +525,6 @@ gdbarch_alloc (const struct gdbarch_info *info, current_gdbarch->prologue_frameless_p = generic_prologue_frameless_p; current_gdbarch->memory_insert_breakpoint = default_memory_insert_breakpoint; current_gdbarch->memory_remove_breakpoint = default_memory_remove_breakpoint; - current_gdbarch->decr_pc_after_break = -1; current_gdbarch->remote_translate_xfer_address = generic_remote_translate_xfer_address; current_gdbarch->frame_args_skip = -1; current_gdbarch->frameless_function_invocation = generic_frameless_function_invocation_not; @@ -708,9 +707,7 @@ verify_gdbarch (struct gdbarch *current_gdbarch) /* Skip verify of adjust_breakpoint_address, has predicate */ /* Skip verify of memory_insert_breakpoint, invalid_p == 0 */ /* Skip verify of memory_remove_breakpoint, invalid_p == 0 */ - if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) - && (current_gdbarch->decr_pc_after_break == -1)) - fprintf_unfiltered (log, "\n\tdecr_pc_after_break"); + /* Skip verify of decr_pc_after_break, invalid_p == 0 */ /* Skip verify of function_start_offset, invalid_p == 0 */ /* Skip verify of remote_translate_xfer_address, invalid_p == 0 */ if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) @@ -4623,8 +4620,7 @@ CORE_ADDR gdbarch_decr_pc_after_break (struct gdbarch *gdbarch) { gdb_assert (gdbarch != NULL); - /* Check variable changed from pre-default. */ - gdb_assert (gdbarch->decr_pc_after_break != -1); + /* Skip verify of decr_pc_after_break, invalid_p == 0 */ if (gdbarch_debug >= 2) fprintf_unfiltered (gdb_stdlog, "gdbarch_decr_pc_after_break called\n"); return gdbarch->decr_pc_after_break; diff --git a/gdb/gdbarch.sh b/gdb/gdbarch.sh index e5400b97fb2..e35948e8e81 100755 --- a/gdb/gdbarch.sh +++ b/gdb/gdbarch.sh @@ -632,7 +632,7 @@ f::BREAKPOINT_FROM_PC:const unsigned char *:breakpoint_from_pc:CORE_ADDR *pcptr, 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 diff --git a/gdb/h8300-tdep.c b/gdb/h8300-tdep.c index 150bac48803..c87dfab61f7 100644 --- a/gdb/h8300-tdep.c +++ b/gdb/h8300-tdep.c @@ -1323,9 +1323,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) */ /* 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, diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c index 33b3cb459c2..58ad55dd05b 100644 --- a/gdb/hppa-tdep.c +++ b/gdb/hppa-tdep.c @@ -5196,7 +5196,6 @@ hppa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/i386-interix-tdep.c b/gdb/i386-interix-tdep.c index ea9f8c43e86..0d2af2f0cf2 100644 --- a/gdb/i386-interix-tdep.c +++ b/gdb/i386-interix-tdep.c @@ -325,7 +325,6 @@ i386_interix_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) 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); diff --git a/gdb/i386-nto-tdep.c b/gdb/i386-nto-tdep.c index a80c7a47f98..4a1eaace828 100644 --- a/gdb/i386-nto-tdep.c +++ b/gdb/i386-nto-tdep.c @@ -270,7 +270,8 @@ i386nto_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) /* NTO uses ELF. */ i386_elf_init_abi (info, gdbarch); - /* Neutrino rewinds to look more normal. */ + /* Neutrino rewinds to look more normal. Need to override the i386 + default which is [unfortunatly] to decrement the PC. */ set_gdbarch_decr_pc_after_break (gdbarch, 0); /* NTO has shared libraries. */ diff --git a/gdb/ia64-tdep.c b/gdb/ia64-tdep.c index d31b05bf06d..6b2dba652ba 100644 --- a/gdb/ia64-tdep.c +++ b/gdb/ia64-tdep.c @@ -3425,7 +3425,6 @@ ia64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) /* 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 ( diff --git a/gdb/m32r-tdep.c b/gdb/m32r-tdep.c index 86335d60f34..16ec1ffe240 100644 --- a/gdb/m32r-tdep.c +++ b/gdb/m32r-tdep.c @@ -945,7 +945,6 @@ m32r_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/m68hc11-tdep.c b/gdb/m68hc11-tdep.c index fdf006f892f..c920ea67d31 100644 --- a/gdb/m68hc11-tdep.c +++ b/gdb/m68hc11-tdep.c @@ -1556,7 +1556,6 @@ m68hc11_gdbarch_init (struct gdbarch_info info, 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); diff --git a/gdb/mcore-tdep.c b/gdb/mcore-tdep.c index 863a8c3a480..5382f7ebc02 100644 --- a/gdb/mcore-tdep.c +++ b/gdb/mcore-tdep.c @@ -1071,7 +1071,6 @@ mcore_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c index a7d4af445f0..fa78a1ac9c2 100644 --- a/gdb/mips-tdep.c +++ b/gdb/mips-tdep.c @@ -6046,7 +6046,6 @@ mips_gdbarch_init (struct gdbarch_info info, 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); diff --git a/gdb/mn10300-tdep.c b/gdb/mn10300-tdep.c index cd145ecdd8e..904a37576ba 100644 --- a/gdb/mn10300-tdep.c +++ b/gdb/mn10300-tdep.c @@ -1173,7 +1173,6 @@ mn10300_gdbarch_init (struct gdbarch_info info, /* 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); diff --git a/gdb/ns32k-tdep.c b/gdb/ns32k-tdep.c index f42a7c52cec..b0a133c3313 100644 --- a/gdb/ns32k-tdep.c +++ b/gdb/ns32k-tdep.c @@ -598,7 +598,6 @@ ns32k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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. */ diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c index a1edf5ae8f3..57fe902feeb 100644 --- a/gdb/rs6000-tdep.c +++ b/gdb/rs6000-tdep.c @@ -2897,7 +2897,6 @@ rs6000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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" diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c index 7f1dad510a0..8c7408b015c 100644 --- a/gdb/sh-tdep.c +++ b/gdb/sh-tdep.c @@ -2244,7 +2244,6 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/sh64-tdep.c b/gdb/sh64-tdep.c index f871d1e6e76..c78a137097f 100644 --- a/gdb/sh64-tdep.c +++ b/gdb/sh64-tdep.c @@ -2843,7 +2843,6 @@ sh64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/sparc-tdep.c b/gdb/sparc-tdep.c index 805f64ed15d..1bcdeb8b7c5 100644 --- a/gdb/sparc-tdep.c +++ b/gdb/sparc-tdep.c @@ -1080,7 +1080,6 @@ sparc32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) 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); diff --git a/gdb/v850-tdep.c b/gdb/v850-tdep.c index e482038709c..44ea93b3032 100644 --- a/gdb/v850-tdep.c +++ b/gdb/v850-tdep.c @@ -1259,9 +1259,6 @@ v850_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) */ /* 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); diff --git a/gdb/vax-tdep.c b/gdb/vax-tdep.c index 5c99aa859d9..e7f68998adb 100644 --- a/gdb/vax-tdep.c +++ b/gdb/vax-tdep.c @@ -406,7 +406,6 @@ vax_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) /* 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); diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c index c4925f07d51..00520a554c5 100644 --- a/gdb/xstormy16-tdep.c +++ b/gdb/xstormy16-tdep.c @@ -1069,9 +1069,6 @@ xstormy16_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) */ /* 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);