2003-04-01 Andrew Cagney <cagney@redhat.com>
authorAndrew Cagney <cagney@redhat.com>
Tue, 1 Apr 2003 14:38:51 +0000 (14:38 +0000)
committerAndrew Cagney <cagney@redhat.com>
Tue, 1 Apr 2003 14:38:51 +0000 (14:38 +0000)
* gdbarch.sh (CALL_DUMMY_BREAKPOINT_OFFSET): Default to zero.
(CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
* gdbarch.h, gdbarch.c: Re-generate.
* config/sparc/tm-sp64.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
(CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
* config/pa/tm-hppa64.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
* inferior.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
(CALL_DUMMY_BREAKPOINT_OFFSET): Delete.
* infcmd.c (run_stack_dummy): Simplify assuming
CALL_DUMMY_BREAKPOINT_OFFSET_P.
* infrun.c (handle_inferior_event): Ditto.
* alpha-tdep.c (alpha_gdbarch_init): Do not set
call_dummy_breakpoint_offset or call_dummy_breakpoint_offset_p.
* arm-tdep.c (arm_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* d10v-tdep.c (d10v_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* i386-tdep.c (i386_gdbarch_init): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* m68k-tdep.c (m68k_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* mips-tdep.c (mips_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* ns32k-tdep.c (ns32k_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* sparc-tdep.c (sparc_gdbarch_init): Ditto.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* vax-tdep.c (vax_gdbarch_init): Ditto.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Ditto.

31 files changed:
gdb/ChangeLog
gdb/alpha-tdep.c
gdb/arm-tdep.c
gdb/avr-tdep.c
gdb/config/pa/tm-hppa64.h
gdb/config/sparc/tm-sp64.h
gdb/cris-tdep.c
gdb/d10v-tdep.c
gdb/frv-tdep.c
gdb/gdbarch.c
gdb/gdbarch.h
gdb/gdbarch.sh
gdb/h8300-tdep.c
gdb/i386-tdep.c
gdb/ia64-tdep.c
gdb/infcmd.c
gdb/inferior.h
gdb/infrun.c
gdb/m68hc11-tdep.c
gdb/m68k-tdep.c
gdb/mcore-tdep.c
gdb/mips-tdep.c
gdb/mn10300-tdep.c
gdb/ns32k-tdep.c
gdb/rs6000-tdep.c
gdb/s390-tdep.c
gdb/sh-tdep.c
gdb/sparc-tdep.c
gdb/v850-tdep.c
gdb/vax-tdep.c
gdb/xstormy16-tdep.c

index c6d9db5058efd8b2521c60cc24c66f1ef6556e9e..4cba99a33db2d0cd75142e25b29485db06176538 100644 (file)
@@ -1,3 +1,40 @@
+2003-04-01  Andrew Cagney  <cagney@redhat.com>
+
+       * gdbarch.sh (CALL_DUMMY_BREAKPOINT_OFFSET): Default to zero.
+       (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
+       * gdbarch.h, gdbarch.c: Re-generate.
+       * config/sparc/tm-sp64.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
+       (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
+       * config/pa/tm-hppa64.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
+       * inferior.h (CALL_DUMMY_BREAKPOINT_OFFSET_P): Delete.
+       (CALL_DUMMY_BREAKPOINT_OFFSET): Delete.
+       * infcmd.c (run_stack_dummy): Simplify assuming
+       CALL_DUMMY_BREAKPOINT_OFFSET_P.
+       * infrun.c (handle_inferior_event): Ditto.
+       * alpha-tdep.c (alpha_gdbarch_init): Do not set
+       call_dummy_breakpoint_offset or call_dummy_breakpoint_offset_p.
+       * arm-tdep.c (arm_gdbarch_init): Ditto.
+       * avr-tdep.c (avr_gdbarch_init): Ditto.
+       * cris-tdep.c (cris_gdbarch_init): Ditto.
+       * d10v-tdep.c (d10v_gdbarch_init): Ditto.
+       * frv-tdep.c (frv_gdbarch_init): Ditto.
+       * h8300-tdep.c (h8300_gdbarch_init): Ditto.
+       * i386-tdep.c (i386_gdbarch_init): Ditto.
+       * ia64-tdep.c (ia64_gdbarch_init): Ditto.
+       * m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
+       * m68k-tdep.c (m68k_gdbarch_init): Ditto.
+       * mcore-tdep.c (mcore_gdbarch_init): Ditto.
+       * mips-tdep.c (mips_gdbarch_init): Ditto.
+       * mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
+       * ns32k-tdep.c (ns32k_gdbarch_init): Ditto.
+       * rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
+       * s390-tdep.c (s390_gdbarch_init): Ditto.
+       * sh-tdep.c (sh_gdbarch_init): Ditto.
+       * sparc-tdep.c (sparc_gdbarch_init): Ditto.
+       * v850-tdep.c (v850_gdbarch_init): Ditto.
+       * vax-tdep.c (vax_gdbarch_init): Ditto.
+       * xstormy16-tdep.c (xstormy16_gdbarch_init): Ditto.
+
 2003-04-01  Daniel Jacobowitz  <drow@mvista.com>
 
        * symfile.c (symfile_relocate_debug_section): Update call to
index 6944d8a019a262d71423baf5452dc39292c5977b..feb332698b46ba3b156f9a96a709f7743cf33570 100644 (file)
@@ -1869,8 +1869,6 @@ alpha_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
      no need for a dummy on the Alpha.  PUSH_ARGUMENTS takes care of all
      argument handling and bp_call_dummy takes care of stopping the dummy.  */
   set_gdbarch_call_dummy_address (gdbarch, alpha_call_dummy_address);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
   set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_at_entry_point);
   set_gdbarch_deprecated_push_dummy_frame (gdbarch, alpha_push_dummy_frame);
index 2f60f30e5bd9a76304bed13ee28d093de9172dce..ea97f82a8ac94e099c5bb909b979c9b254b8a1ef 100644 (file)
@@ -2930,9 +2930,6 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   tdep->lowest_pc = 0x20;
   tdep->jb_pc = -1;    /* Longjump support not enabled by default.  */
 
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
-
   set_gdbarch_call_dummy_words (gdbarch, arm_call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
index 6ad20474bea11e9f43f1d65ef864cf456c6f727b..f6c6ca65af74f60e224029093af09c7f74131fe5 100644 (file)
@@ -1169,8 +1169,6 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_call_dummy_address (gdbarch, avr_call_dummy_address);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_length (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, avr_call_dummy_words);
 
index 2610caceedd8a5cf70d154b6edcf8c5d3701e762..b2b98e408952206df9f40894fa16800abee65b96 100644 (file)
@@ -183,7 +183,6 @@ call_dummy
                     0xe820f0000fb110d3LL, 0x0001000400151820LL,\
                     0xe6c0000008000240LL}
 
-#define CALL_DUMMY_BREAKPOINT_OFFSET_P 1
 #define CALL_DUMMY_BREAKPOINT_OFFSET 22 * 4
 
 /* CALL_DUMMY_LENGTH is computed based on the size of a word on the target
index b4417b806136ec50122bfb3dfe19408233938f41..0f20c5fc1449e18ea23781d2a888235911ecd44d 100644 (file)
@@ -96,8 +96,6 @@
 #define CALL_DUMMY_START_OFFSET 0
 #undef  CALL_DUMMY_BREAKPOINT_OFFSET
 #define CALL_DUMMY_BREAKPOINT_OFFSET 0
-#undef  CALL_DUMMY_BREAKPOINT_OFFSET_P
-#define CALL_DUMMY_BREAKPOINT_OFFSET_P 1
 #undef  CALL_DUMMY_LOCATION 
 #define CALL_DUMMY_LOCATION AT_ENTRY_POINT
 #undef  DEPRECATED_PC_IN_CALL_DUMMY
@@ -162,10 +160,6 @@ extern void sparc_at_entry_store_struct_return (CORE_ADDR addr, CORE_ADDR sp);
 #undef  CALL_DUMMY_BREAKPOINT_OFFSET
 #define CALL_DUMMY_BREAKPOINT_OFFSET (CALL_DUMMY_START_OFFSET + (8 * 4))
 
-/* Let's GDB know that it can make a call_dummy breakpoint.  */
-#undef  CALL_DUMMY_BREAKPOINT_OFFSET_P
-#define CALL_DUMMY_BREAKPOINT_OFFSET_P 1
-
 /* Call dummy will be located on the stack.  */
 #undef  CALL_DUMMY_LOCATION
 #define CALL_DUMMY_LOCATION ON_STACK
index 4b812e2931ac17e9688eb4aa6064e7f17486c6a7..ae792b38d7450b6ec7dfe1b2d4615a49e022620b 100644 (file)
@@ -4257,10 +4257,6 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   
   /* Start execution at the beginning of dummy.  */
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
-  
-  /* Set to 1 since call_dummy_breakpoint_offset was defined.  */
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   
   /* Read all about dummy frames in blockframe.c.  */
   set_gdbarch_call_dummy_length (gdbarch, 0);
index 1a8410cefcc3ebc7153fce8b045ddfa4e75615ab..23184cecaa3ffc72c3e903ef21a55cd553cd5753 100644 (file)
@@ -1673,8 +1673,6 @@ d10v_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
     }
 
   set_gdbarch_call_dummy_length (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
 
   set_gdbarch_extract_return_value (gdbarch, d10v_extract_return_value);
index 2d42333b1523c7d7d0b071df8ba73de254ef58c4..b5ff5699c1f39cfed8b67bcf2b159f9b26d3e122 100644 (file)
@@ -1095,7 +1095,6 @@ frv_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_call_dummy_words (gdbarch, frv_call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, sizeof (frv_call_dummy_words));
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_deprecated_init_extra_frame_info (gdbarch, frv_init_extra_frame_info);
 
   /* Settings that should be unnecessary.  */
@@ -1107,7 +1106,6 @@ frv_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_read_sp (gdbarch, generic_target_read_sp);
   set_gdbarch_deprecated_dummy_write_sp (gdbarch, generic_target_write_sp);
 
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
   set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_at_entry_point);
 
index e753331df6459d1434175e74a33b6c5845890e32..0c896999b61c67b5c459f5bbff154a8860871861 100644 (file)
@@ -190,7 +190,6 @@ struct gdbarch
   gdbarch_call_dummy_address_ftype *call_dummy_address;
   CORE_ADDR call_dummy_start_offset;
   CORE_ADDR call_dummy_breakpoint_offset;
-  int call_dummy_breakpoint_offset_p;
   int call_dummy_length;
   gdbarch_deprecated_pc_in_call_dummy_ftype *deprecated_pc_in_call_dummy;
   LONGEST * call_dummy_words;
@@ -357,7 +356,6 @@ struct gdbarch startup_gdbarch =
   0,
   0,
   0,
-  0,
   generic_pc_in_call_dummy,
   0,
   0,
@@ -530,8 +528,6 @@ gdbarch_alloc (const struct gdbarch_info *info,
   current_gdbarch->call_dummy_location = AT_ENTRY_POINT;
   current_gdbarch->call_dummy_address = entry_point_address;
   current_gdbarch->call_dummy_start_offset = -1;
-  current_gdbarch->call_dummy_breakpoint_offset = -1;
-  current_gdbarch->call_dummy_breakpoint_offset_p = -1;
   current_gdbarch->call_dummy_length = -1;
   current_gdbarch->deprecated_pc_in_call_dummy = generic_pc_in_call_dummy;
   current_gdbarch->call_dummy_words = legacy_call_dummy_words;
@@ -678,12 +674,6 @@ verify_gdbarch (struct gdbarch *gdbarch)
   if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
       && (gdbarch->call_dummy_start_offset == -1))
     fprintf_unfiltered (log, "\n\tcall_dummy_start_offset");
-  if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
-      && (gdbarch->call_dummy_breakpoint_offset_p && gdbarch->call_dummy_breakpoint_offset == -1))
-    fprintf_unfiltered (log, "\n\tcall_dummy_breakpoint_offset");
-  if ((GDB_MULTI_ARCH >= GDB_MULTI_ARCH_PARTIAL)
-      && (gdbarch->call_dummy_breakpoint_offset_p == -1))
-    fprintf_unfiltered (log, "\n\tcall_dummy_breakpoint_offset_p");
   if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
       && (gdbarch->call_dummy_length == -1))
     fprintf_unfiltered (log, "\n\tcall_dummy_length");
@@ -946,18 +936,9 @@ gdbarch_dump (struct gdbarch *gdbarch, struct ui_file *file)
   fprintf_unfiltered (file,
                       "gdbarch_dump: CALL_DUMMY_BREAKPOINT_OFFSET # %s\n",
                       XSTRING (CALL_DUMMY_BREAKPOINT_OFFSET));
-  if (CALL_DUMMY_BREAKPOINT_OFFSET_P)
-    fprintf_unfiltered (file,
-                        "gdbarch_dump: CALL_DUMMY_BREAKPOINT_OFFSET = 0x%08lx\n",
-                        (long) CALL_DUMMY_BREAKPOINT_OFFSET);
-#endif
-#ifdef CALL_DUMMY_BREAKPOINT_OFFSET_P
-  fprintf_unfiltered (file,
-                      "gdbarch_dump: CALL_DUMMY_BREAKPOINT_OFFSET_P # %s\n",
-                      XSTRING (CALL_DUMMY_BREAKPOINT_OFFSET_P));
   fprintf_unfiltered (file,
-                      "gdbarch_dump: CALL_DUMMY_BREAKPOINT_OFFSET_P = %d\n",
-                      CALL_DUMMY_BREAKPOINT_OFFSET_P);
+                      "gdbarch_dump: CALL_DUMMY_BREAKPOINT_OFFSET = %ld\n",
+                      (long) CALL_DUMMY_BREAKPOINT_OFFSET);
 #endif
 #ifdef CALL_DUMMY_LENGTH
   fprintf_unfiltered (file,
@@ -3763,9 +3744,6 @@ CORE_ADDR
 gdbarch_call_dummy_breakpoint_offset (struct gdbarch *gdbarch)
 {
   gdb_assert (gdbarch != NULL);
-  if (gdbarch->call_dummy_breakpoint_offset_p && gdbarch->call_dummy_breakpoint_offset == -1)
-    internal_error (__FILE__, __LINE__,
-                    "gdbarch: gdbarch_call_dummy_breakpoint_offset invalid");
   if (gdbarch_debug >= 2)
     fprintf_unfiltered (gdb_stdlog, "gdbarch_call_dummy_breakpoint_offset called\n");
   return gdbarch->call_dummy_breakpoint_offset;
@@ -3778,25 +3756,6 @@ set_gdbarch_call_dummy_breakpoint_offset (struct gdbarch *gdbarch,
   gdbarch->call_dummy_breakpoint_offset = call_dummy_breakpoint_offset;
 }
 
-int
-gdbarch_call_dummy_breakpoint_offset_p (struct gdbarch *gdbarch)
-{
-  gdb_assert (gdbarch != NULL);
-  if (gdbarch->call_dummy_breakpoint_offset_p == -1)
-    internal_error (__FILE__, __LINE__,
-                    "gdbarch: gdbarch_call_dummy_breakpoint_offset_p invalid");
-  if (gdbarch_debug >= 2)
-    fprintf_unfiltered (gdb_stdlog, "gdbarch_call_dummy_breakpoint_offset_p called\n");
-  return gdbarch->call_dummy_breakpoint_offset_p;
-}
-
-void
-set_gdbarch_call_dummy_breakpoint_offset_p (struct gdbarch *gdbarch,
-                                            int call_dummy_breakpoint_offset_p)
-{
-  gdbarch->call_dummy_breakpoint_offset_p = call_dummy_breakpoint_offset_p;
-}
-
 int
 gdbarch_call_dummy_length (struct gdbarch *gdbarch)
 {
index fabe6bebbb3301ab25ee05cd6f1abe0488e47a7c..8974185178e1157e1c5c5bc5f08b359e1ff0216c 100644 (file)
@@ -1174,22 +1174,9 @@ extern void set_gdbarch_call_dummy_breakpoint_offset (struct gdbarch *gdbarch, C
 #if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (CALL_DUMMY_BREAKPOINT_OFFSET)
 #error "Non multi-arch definition of CALL_DUMMY_BREAKPOINT_OFFSET"
 #endif
-#if GDB_MULTI_ARCH
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (CALL_DUMMY_BREAKPOINT_OFFSET)
+#if !defined (CALL_DUMMY_BREAKPOINT_OFFSET)
 #define CALL_DUMMY_BREAKPOINT_OFFSET (gdbarch_call_dummy_breakpoint_offset (current_gdbarch))
 #endif
-#endif
-
-extern int gdbarch_call_dummy_breakpoint_offset_p (struct gdbarch *gdbarch);
-extern void set_gdbarch_call_dummy_breakpoint_offset_p (struct gdbarch *gdbarch, int call_dummy_breakpoint_offset_p);
-#if (GDB_MULTI_ARCH >= GDB_MULTI_ARCH_PARTIAL) && defined (CALL_DUMMY_BREAKPOINT_OFFSET_P)
-#error "Non multi-arch definition of CALL_DUMMY_BREAKPOINT_OFFSET_P"
-#endif
-#if GDB_MULTI_ARCH
-#if (GDB_MULTI_ARCH >= GDB_MULTI_ARCH_PARTIAL) || !defined (CALL_DUMMY_BREAKPOINT_OFFSET_P)
-#define CALL_DUMMY_BREAKPOINT_OFFSET_P (gdbarch_call_dummy_breakpoint_offset_p (current_gdbarch))
-#endif
-#endif
 
 extern int gdbarch_call_dummy_length (struct gdbarch *gdbarch);
 extern void set_gdbarch_call_dummy_length (struct gdbarch *gdbarch, int call_dummy_length);
index 9d4dbd1be7a3054c29e6fe1e5ce18f67e611a14a..bf2ebd0f4bb06b03ec169b37746d292714d69b01 100755 (executable)
@@ -522,8 +522,7 @@ v:1:DEPRECATED_USE_GENERIC_DUMMY_FRAMES:int:deprecated_use_generic_dummy_frames:
 v:1:CALL_DUMMY_LOCATION:int:call_dummy_location:::::AT_ENTRY_POINT::0
 f::CALL_DUMMY_ADDRESS:CORE_ADDR:call_dummy_address:void::::entry_point_address::0
 v:2:CALL_DUMMY_START_OFFSET:CORE_ADDR:call_dummy_start_offset::::0:-1:::0x%08lx
-v:2:CALL_DUMMY_BREAKPOINT_OFFSET:CORE_ADDR:call_dummy_breakpoint_offset::::0:-1::gdbarch->call_dummy_breakpoint_offset_p && gdbarch->call_dummy_breakpoint_offset == -1:0x%08lx::CALL_DUMMY_BREAKPOINT_OFFSET_P
-v:1:CALL_DUMMY_BREAKPOINT_OFFSET_P:int:call_dummy_breakpoint_offset_p::::0:-1
+v::CALL_DUMMY_BREAKPOINT_OFFSET:CORE_ADDR:call_dummy_breakpoint_offset
 v:2:CALL_DUMMY_LENGTH:int:call_dummy_length::::0:-1:::::gdbarch->call_dummy_length >= 0
 # NOTE: cagney/2002-11-24: This function with predicate has a valid
 # (callable) initial value.  As a consequence, even when the predicate
index 27330e6c7c8c266d9f1d4771c1596650fdcb4042..0d680c9c1a690b88170c14ccea66f7fd341fd8fc 100644 (file)
@@ -1157,8 +1157,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_deprecated_extract_struct_value_address (gdbarch, h8300_extract_struct_value_address);
   set_gdbarch_use_struct_convention (gdbarch, h8300_use_struct_convention);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_call_dummy_length (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, 0);
index 2f00dfb10a986a0747ecd86e4d6a0a861550c917..7253a41364cfe723ccc2bc5b800088d46f76e4e9 100644 (file)
@@ -1560,8 +1560,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   /* Call dummy code.  */
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_call_dummy_length (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, NULL);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, 0);
index 8762e50c28d2c9016a97cb987c8f856ab90788df..7d1d8fa9437404ca9f6cc0bcd9ff1cb6b9188c69 100644 (file)
@@ -2220,7 +2220,6 @@ ia64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_call_dummy_words (gdbarch, ia64_call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, sizeof (ia64_call_dummy_words));
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_deprecated_init_extra_frame_info (gdbarch, ia64_init_extra_frame_info);
   set_gdbarch_frame_args_address (gdbarch, ia64_frame_args_address);
   set_gdbarch_frame_locals_address (gdbarch, ia64_frame_locals_address);
@@ -2238,7 +2237,6 @@ ia64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_read_sp (gdbarch, generic_target_read_sp);
   set_gdbarch_deprecated_dummy_write_sp (gdbarch, generic_target_write_sp);
 
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
 
   set_gdbarch_decr_pc_after_break (gdbarch, 0);
index 19077b4a54d45d91f715e1a7bc12f96410a0e353..38666905706fa5feaa5655d74e444c7d39a48ee9 100644 (file)
@@ -986,50 +986,46 @@ run_stack_dummy (CORE_ADDR addr, struct regcache *buffer)
 {
   struct cleanup *old_cleanups = make_cleanup (null_cleanup, 0);
   int saved_async = 0;
+  struct breakpoint *bpt;
+  struct symtab_and_line sal;
 
   /* Now proceed, having reached the desired place.  */
   clear_proceed_status ();
 
-  if (CALL_DUMMY_BREAKPOINT_OFFSET_P)
+  init_sal (&sal);             /* initialize to zeroes */
+  if (CALL_DUMMY_LOCATION == AT_ENTRY_POINT)
     {
-      struct breakpoint *bpt;
-      struct symtab_and_line sal;
-
-      init_sal (&sal);         /* initialize to zeroes */
-      if (CALL_DUMMY_LOCATION == AT_ENTRY_POINT)
-       {
-         sal.pc = CALL_DUMMY_ADDRESS ();
-       }
-      else
-       {
-         /* If defined, CALL_DUMMY_BREAKPOINT_OFFSET is where we need
-            to put a breakpoint instruction.  If not, the call dummy
-            already has the breakpoint instruction in it.
-
-            ADDR IS THE ADDRESS of the call dummy plus the
-            CALL_DUMMY_START_OFFSET, so we need to subtract the
-            CALL_DUMMY_START_OFFSET.  */
-         sal.pc = addr - CALL_DUMMY_START_OFFSET + CALL_DUMMY_BREAKPOINT_OFFSET;
-       }
-      sal.section = find_pc_overlay (sal.pc);
-
-      {
-       /* Set up a frame ID for the dummy frame so we can pass it to
-          set_momentary_breakpoint.  We need to give the breakpoint a
-          frame ID so that the breakpoint code can correctly
-          re-identify the dummy breakpoint.  */
-       struct frame_id frame = frame_id_build (read_fp (), sal.pc);
-       /* Create a momentary breakpoint at the return address of the
-           inferior.  That way it breaks when it returns.  */
-       bpt = set_momentary_breakpoint (sal, frame, bp_call_dummy);
-       bpt->disposition = disp_del;
-      }
-
-      /* If all error()s out of proceed ended up calling normal_stop (and
-         perhaps they should; it already does in the special case of error
-         out of resume()), then we wouldn't need this.  */
-      make_cleanup (breakpoint_auto_delete_contents, &stop_bpstat);
+      sal.pc = CALL_DUMMY_ADDRESS ();
+    }
+  else
+    {
+      /* If defined, CALL_DUMMY_BREAKPOINT_OFFSET is where we need to
+        put a breakpoint instruction.  If not, the call dummy already
+        has the breakpoint instruction in it.
+
+        ADDR IS THE ADDRESS of the call dummy plus the
+        CALL_DUMMY_START_OFFSET, so we need to subtract the
+        CALL_DUMMY_START_OFFSET.  */
+      sal.pc = addr - CALL_DUMMY_START_OFFSET + CALL_DUMMY_BREAKPOINT_OFFSET;
     }
+  sal.section = find_pc_overlay (sal.pc);
+  
+  {
+    /* Set up a frame ID for the dummy frame so we can pass it to
+       set_momentary_breakpoint.  We need to give the breakpoint a
+       frame ID so that the breakpoint code can correctly re-identify
+       the dummy breakpoint.  */
+    struct frame_id frame = frame_id_build (read_fp (), sal.pc);
+    /* Create a momentary breakpoint at the return address of the
+       inferior.  That way it breaks when it returns.  */
+    bpt = set_momentary_breakpoint (sal, frame, bp_call_dummy);
+    bpt->disposition = disp_del;
+  }
+
+  /* If all error()s out of proceed ended up calling normal_stop (and
+     perhaps they should; it already does in the special case of error
+     out of resume()), then we wouldn't need this.  */
+  make_cleanup (breakpoint_auto_delete_contents, &stop_bpstat);
 
   disable_watchpoints_before_interactive_call_start ();
   proceed_to_finish = 1;       /* We want stop_registers, please... */
index e2f4881686e70444c1d9d0c3b8af41007e824f26..6f2411cb8fd2bee03284e6d34befd29a18a06cda 100644 (file)
@@ -421,13 +421,6 @@ extern int attach_flag;
 #if !defined (CALL_DUMMY_START_OFFSET)
 #define CALL_DUMMY_START_OFFSET (internal_error (__FILE__, __LINE__, "CALL_DUMMY_START_OFFSET"), 0)
 #endif
-#if !defined (CALL_DUMMY_BREAKPOINT_OFFSET)
-#define CALL_DUMMY_BREAKPOINT_OFFSET_P (0)
-#define CALL_DUMMY_BREAKPOINT_OFFSET (internal_error (__FILE__, __LINE__, "CALL_DUMMY_BREAKPOINT_OFFSET"), 0)
-#endif
-#if !defined CALL_DUMMY_BREAKPOINT_OFFSET_P
-#define CALL_DUMMY_BREAKPOINT_OFFSET_P (1)
-#endif
 #if !defined (CALL_DUMMY_LENGTH)
 #define CALL_DUMMY_LENGTH (internal_error (__FILE__, __LINE__, "CALL_DUMMY_LENGTH"), 0)
 #endif
index 7066a52de2ba33f691fac44f81d79f9b5ee5969c..74f1de1f672a36dab02039a44d3cd71c52bf58e0 100644 (file)
@@ -1812,26 +1812,30 @@ handle_inferior_event (struct execution_control_state *ecs)
          stop_print_frame = 1;
        }
 
+      /* NOTE: cagney/2003-03-29: These two checks for a random signal
+        at one stage in the past included checks for an inferior
+        function call's call dummy's return breakpoint.  The original
+        comment, that went with the test, read:
+
+        ``End of a stack dummy.  Some systems (e.g. Sony news) give
+        another signal besides SIGTRAP, so check here as well as
+        above.''
+
+         If someone ever tries to get get call dummys on a
+         non-executable stack to work (where the target would stop
+         with something like a SIGSEG), then those tests might need to
+         be re-instated.  Given, however, that the tests were only
+         enabled when momentary breakpoints were not being used, I
+         suspect that it won't be the case.  */
+
       if (stop_signal == TARGET_SIGNAL_TRAP)
        ecs->random_signal
          = !(bpstat_explains_signal (stop_bpstat)
              || trap_expected
-             || (!CALL_DUMMY_BREAKPOINT_OFFSET_P
-                 && DEPRECATED_PC_IN_CALL_DUMMY (stop_pc, read_sp (),
-                                      get_frame_base (get_current_frame ())))
              || (step_range_end && step_resume_breakpoint == NULL));
-
       else
        {
-         ecs->random_signal = !(bpstat_explains_signal (stop_bpstat)
-                                /* End of a stack dummy.  Some systems (e.g. Sony
-                                   news) give another signal besides SIGTRAP, so
-                                   check here as well as above.  */
-                                || (!CALL_DUMMY_BREAKPOINT_OFFSET_P
-                                    && DEPRECATED_PC_IN_CALL_DUMMY (stop_pc, read_sp (),
-                                                         get_frame_base
-                                                         (get_current_frame
-                                                          ()))));
+         ecs->random_signal = !bpstat_explains_signal (stop_bpstat);
          if (!ecs->random_signal)
            stop_signal = TARGET_SIGNAL_TRAP;
        }
@@ -2173,31 +2177,6 @@ process_event_stop_test:
       return;
     }
 
-  if (!CALL_DUMMY_BREAKPOINT_OFFSET_P)
-    {
-      /* This is the old way of detecting the end of the stack dummy.
-         An architecture which defines CALL_DUMMY_BREAKPOINT_OFFSET gets
-         handled above.  As soon as we can test it on all of them, all
-         architectures should define it.  */
-
-      /* If this is the breakpoint at the end of a stack dummy,
-         just stop silently, unless the user was doing an si/ni, in which
-         case she'd better know what she's doing.  */
-
-      if (CALL_DUMMY_HAS_COMPLETED (stop_pc, read_sp (),
-                                   get_frame_base (get_current_frame ()))
-         && !step_range_end)
-       {
-         stop_print_frame = 0;
-         stop_stack_dummy = 1;
-#ifdef HP_OS_BUG
-         trap_expected_after_continue = 1;
-#endif
-         stop_stepping (ecs);
-         return;
-       }
-    }
-
   if (step_resume_breakpoint)
     {
       /* Having a step-resume breakpoint overrides anything
index d9c86a9aac2eab27fc45d4d7bb71d217a5abeaf3..03c4c417b9bd06d2273a992980ce49f2103c4ac0 100644 (file)
@@ -1382,8 +1382,6 @@ m68hc11_gdbarch_init (struct gdbarch_info info,
 
   set_gdbarch_call_dummy_length (gdbarch, 0);
   set_gdbarch_call_dummy_address (gdbarch, m68hc11_call_dummy_address);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1); /*???*/
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, m68hc11_call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch,
index a913ebe72f3a09d535794b7e433f27d000df291d..7a9886b50760e33509ae3e010ffcafeb55c6a66f 100644 (file)
@@ -1038,7 +1038,6 @@ m68k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   set_gdbarch_deprecated_use_generic_dummy_frames (gdbarch, 0);
   set_gdbarch_call_dummy_location (gdbarch, ON_STACK);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 24);
   set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_on_stack);
   set_gdbarch_call_dummy_length (gdbarch, 28);
index 05b1544673dd1e87ed5dc6a8d87bff7f6c582242..785b73d220163d193d0c58062870aa369f6655b1 100644 (file)
@@ -1119,8 +1119,6 @@ mcore_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_call_dummy_words (gdbarch, call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_save_dummy_frame_tos (gdbarch, generic_save_dummy_frame_tos);
   set_gdbarch_saved_pc_after_call (gdbarch, mcore_saved_pc_after_call);
   set_gdbarch_function_start_offset (gdbarch, 0);
index 85a523fd31f5cb3f1fa76c2d19f3ad51191e3a7f..724fb183170b16354cbd93664e02abc72bd009b7 100644 (file)
@@ -6030,8 +6030,6 @@ mips_gdbarch_init (struct gdbarch_info info,
   set_gdbarch_deprecated_push_return_address (gdbarch, mips_push_return_address);
   set_gdbarch_deprecated_pop_frame (gdbarch, mips_pop_frame);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_length (gdbarch, 0);
   set_gdbarch_fix_call_dummy (gdbarch, mips_fix_call_dummy);
   set_gdbarch_call_dummy_words (gdbarch, mips_call_dummy_words);
index bb5274bbfdddb4cc7e523c68f84f50f62a27a3ed..eb96f7ddde6b687d775e207d356455a47815b90e 100644 (file)
@@ -1185,8 +1185,6 @@ mn10300_gdbarch_init (struct gdbarch_info info,
   set_gdbarch_read_fp (gdbarch, generic_target_read_sp);
 
   /* Calling functions in the inferior from GDB.  */
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, mn10300_call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, 
                                        sizeof (mn10300_call_dummy_words));
index f65fff26514db70335ef29e62d61c34e4a5b0c0c..c451ed929d13e7d8af219347825a9eff20b2c743 100644 (file)
@@ -599,7 +599,6 @@ ns32k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_sizeof_call_dummy_words (gdbarch, sizeof_ns32k_call_dummy_words);
   set_gdbarch_fix_call_dummy (gdbarch, ns32k_fix_call_dummy);
   set_gdbarch_call_dummy_start_offset (gdbarch, 3);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 15);
   set_gdbarch_deprecated_use_generic_dummy_frames (gdbarch, 0);
   set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_on_stack);
index 5d873bc394bcec8cfc1a7e7c7060816ea652c665..458b375b8f0b08d6678ff2ca5e3e67ac6bacb816 100644 (file)
@@ -2901,8 +2901,6 @@ rs6000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_char_signed (gdbarch, 0);
 
   set_gdbarch_call_dummy_length (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
   set_gdbarch_fix_call_dummy (gdbarch, rs6000_fix_call_dummy);
   set_gdbarch_frame_align (gdbarch, rs6000_frame_align);
index 78ce8a16693bef8eca2fab1121296906c35f4628..7c2689f6221563347af1fc4819e472f5f798ce92 100644 (file)
@@ -1866,8 +1866,6 @@ s390_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_at_entry_point);
   set_gdbarch_deprecated_push_arguments (gdbarch, s390_push_arguments);
   set_gdbarch_save_dummy_frame_tos (gdbarch, generic_save_dummy_frame_tos);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_deprecated_push_return_address (gdbarch, s390_push_return_address);
   set_gdbarch_sizeof_call_dummy_words (gdbarch,
                                        sizeof (s390_call_dummy_words));
index 15cbd8ecad96e6640e1058d06ccb2f7a31d38e14..e118fe3f2190341e8fcdac2dfd6c5bf23f577581 100644 (file)
@@ -4654,8 +4654,6 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_long_double_bit (gdbarch, 8 * TARGET_CHAR_BIT);
 
   set_gdbarch_call_dummy_length (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1); /*???*/
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, sh_call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, sizeof (sh_call_dummy_words));
index c8748fdbd580d5e231fbeabe42ecd5e7b0dce2b9..10bf92b96a205e9ad51759b530a1a9029a8afd2d 100644 (file)
@@ -3137,7 +3137,6 @@ 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_call_dummy_breakpoint_offset_p (gdbarch, 1);
   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);
@@ -3245,7 +3244,6 @@ sparc_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       set_gdbarch_call_dummy_words (gdbarch, call_dummy_32);
 #else
       set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_at_entry_point);
-      set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
       set_gdbarch_call_dummy_length (gdbarch, 0);
       set_gdbarch_call_dummy_words (gdbarch, call_dummy_nil);
 #endif
@@ -3300,7 +3298,6 @@ sparc_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
       set_gdbarch_call_dummy_words (gdbarch, call_dummy_64);
 #else
       set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_at_entry_point);
-      set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
       set_gdbarch_call_dummy_length (gdbarch, 0);
       set_gdbarch_call_dummy_start_offset (gdbarch, 0);
       set_gdbarch_call_dummy_words (gdbarch, call_dummy_nil);
index 6d969a4640c2a50421f6212418951894ecf528d9..77464448a9eea6520f45b22e67937f10d9ff6134 100644 (file)
@@ -1277,8 +1277,6 @@ v850_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_deprecated_extract_struct_value_address (gdbarch, v850_extract_struct_value_address);
   set_gdbarch_use_struct_convention (gdbarch, v850_use_struct_convention);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_call_dummy_length (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, call_dummy_nil);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, 0);
index 8b16e2e22f8aea46ced52c8980654e8f3b44414b..6ffa70921439f9e86b673e9cbba3f3ac1a5ed6a1 100644 (file)
@@ -672,7 +672,6 @@ vax_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_sizeof_call_dummy_words (gdbarch, sizeof_vax_call_dummy_words);
   set_gdbarch_fix_call_dummy (gdbarch, vax_fix_call_dummy);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 7);
   set_gdbarch_deprecated_use_generic_dummy_frames (gdbarch, 0);
   set_gdbarch_deprecated_pc_in_call_dummy (gdbarch, deprecated_pc_in_call_dummy_on_stack);
index 45b008baf136bb41d435518b49c30f0deddd4552..040fd7097616673903913ab7d56016fcb9ac28b5 100644 (file)
@@ -1094,8 +1094,6 @@ xstormy16_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_use_struct_convention (gdbarch,
                                     xstormy16_use_struct_convention);
   set_gdbarch_call_dummy_start_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset (gdbarch, 0);
-  set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
   set_gdbarch_call_dummy_length (gdbarch, 0);
   set_gdbarch_call_dummy_words (gdbarch, call_dummy_words);
   set_gdbarch_sizeof_call_dummy_words (gdbarch, 0);