* regcache.c (TARGET_WRITE_PC, TARGET_READ_PC, TARGET_READ_FP,
authorAndrew Cagney <cagney@redhat.com>
Fri, 11 Aug 2000 03:19:22 +0000 (03:19 +0000)
committerAndrew Cagney <cagney@redhat.com>
Fri, 11 Aug 2000 03:19:22 +0000 (03:19 +0000)
        TARGET_WRITE_FP, TARGET_READ_SP, TARGET_WRITE_SP): Move
        initialization from here.
        * gdbarch.sh: To here.
        * gdbarch.h, gdbarch.c: Regenerate.

gdb/ChangeLog
gdb/gdbarch.c
gdb/gdbarch.h
gdb/gdbarch.sh
gdb/regcache.c

index a19064e4224f2d9037b644527814b266d8035a65..48a6c199bd6475b572184756cc54a46c4e04b3b3 100644 (file)
@@ -1,3 +1,11 @@
+2000-08-10  Andrew Cagney  <cagney@ops1.cygnus.com>
+
+       * regcache.c (TARGET_WRITE_PC, TARGET_READ_PC, TARGET_READ_FP,
+       TARGET_WRITE_FP, TARGET_READ_SP, TARGET_WRITE_SP): Move
+       initialization from here.
+       * gdbarch.sh: To here.
+       * gdbarch.h, gdbarch.c: Regenerate.
+
 Thu Aug 10 18:58:04 2000  Andrew Cagney  <cagney@makita.cygnus.com>
 
        * defs.h (TARGET_BFD_VMA_BIT, TARGET_SHORT_BIT, TARGET_INT_BIT,
index 31993f189978a0208b69df87049cacca817ab2ad..aa62d1302eb73ccd2e48665d59fc7d85cd953568 100644 (file)
@@ -383,6 +383,12 @@ gdbarch_alloc (const struct gdbarch_info *info,
   gdbarch->long_double_bit = 2*TARGET_DOUBLE_BIT;
   gdbarch->ptr_bit = TARGET_INT_BIT;
   gdbarch->bfd_vma_bit = TARGET_ARCHITECTURE->bits_per_address;
+  gdbarch->read_pc = generic_target_read_pc;
+  gdbarch->write_pc = generic_target_write_pc;
+  gdbarch->read_fp = generic_target_read_fp;
+  gdbarch->write_fp = generic_target_write_fp;
+  gdbarch->read_sp = generic_target_read_sp;
+  gdbarch->write_sp = generic_target_write_sp;
   gdbarch->num_regs = -1;
   gdbarch->sp_regnum = -1;
   gdbarch->fp_regnum = -1;
@@ -465,24 +471,12 @@ verify_gdbarch (struct gdbarch *gdbarch)
   /* Skip verify of ptr_bit, invalid_p == 0 */
   /* Skip verify of bfd_vma_bit, invalid_p == 0 */
   /* Skip verify of ieee_float, invalid_p == 0 */
-  if ((GDB_MULTI_ARCH >= 1)
-      && (gdbarch->read_pc == 0))
-    internal_error ("gdbarch: verify_gdbarch: read_pc invalid");
-  if ((GDB_MULTI_ARCH >= 1)
-      && (gdbarch->write_pc == 0))
-    internal_error ("gdbarch: verify_gdbarch: write_pc invalid");
-  if ((GDB_MULTI_ARCH >= 1)
-      && (gdbarch->read_fp == 0))
-    internal_error ("gdbarch: verify_gdbarch: read_fp invalid");
-  if ((GDB_MULTI_ARCH >= 1)
-      && (gdbarch->write_fp == 0))
-    internal_error ("gdbarch: verify_gdbarch: write_fp invalid");
-  if ((GDB_MULTI_ARCH >= 1)
-      && (gdbarch->read_sp == 0))
-    internal_error ("gdbarch: verify_gdbarch: read_sp invalid");
-  if ((GDB_MULTI_ARCH >= 1)
-      && (gdbarch->write_sp == 0))
-    internal_error ("gdbarch: verify_gdbarch: write_sp invalid");
+  /* Skip verify of read_pc, invalid_p == 0 */
+  /* Skip verify of write_pc, invalid_p == 0 */
+  /* Skip verify of read_fp, invalid_p == 0 */
+  /* Skip verify of write_fp, invalid_p == 0 */
+  /* Skip verify of read_sp, invalid_p == 0 */
+  /* Skip verify of write_sp, invalid_p == 0 */
   if ((GDB_MULTI_ARCH >= 2)
       && (gdbarch->num_regs == -1))
     internal_error ("gdbarch: verify_gdbarch: num_regs invalid");
index fb07b93c9bfb44e1c949f8808aa241e940d0b64a..0b8b64143a5499b53e99fce404182d606f98254d 100644 (file)
@@ -232,6 +232,11 @@ extern void set_gdbarch_ieee_float (struct gdbarch *gdbarch, int ieee_float);
 #endif
 #endif
 
+/* Default (function) for non- multi-arch platforms. */
+#if (!GDB_MULTI_ARCH) && !defined (TARGET_READ_PC)
+#define TARGET_READ_PC(pid) (generic_target_read_pc (pid))
+#endif
+
 typedef CORE_ADDR (gdbarch_read_pc_ftype) (int pid);
 extern CORE_ADDR gdbarch_read_pc (struct gdbarch *gdbarch, int pid);
 extern void set_gdbarch_read_pc (struct gdbarch *gdbarch, gdbarch_read_pc_ftype *read_pc);
@@ -241,6 +246,11 @@ extern void set_gdbarch_read_pc (struct gdbarch *gdbarch, gdbarch_read_pc_ftype
 #endif
 #endif
 
+/* Default (function) for non- multi-arch platforms. */
+#if (!GDB_MULTI_ARCH) && !defined (TARGET_WRITE_PC)
+#define TARGET_WRITE_PC(val, pid) (generic_target_write_pc (val, pid))
+#endif
+
 typedef void (gdbarch_write_pc_ftype) (CORE_ADDR val, int pid);
 extern void gdbarch_write_pc (struct gdbarch *gdbarch, CORE_ADDR val, int pid);
 extern void set_gdbarch_write_pc (struct gdbarch *gdbarch, gdbarch_write_pc_ftype *write_pc);
@@ -250,6 +260,11 @@ extern void set_gdbarch_write_pc (struct gdbarch *gdbarch, gdbarch_write_pc_ftyp
 #endif
 #endif
 
+/* Default (function) for non- multi-arch platforms. */
+#if (!GDB_MULTI_ARCH) && !defined (TARGET_READ_FP)
+#define TARGET_READ_FP() (generic_target_read_fp ())
+#endif
+
 typedef CORE_ADDR (gdbarch_read_fp_ftype) (void);
 extern CORE_ADDR gdbarch_read_fp (struct gdbarch *gdbarch);
 extern void set_gdbarch_read_fp (struct gdbarch *gdbarch, gdbarch_read_fp_ftype *read_fp);
@@ -259,6 +274,11 @@ extern void set_gdbarch_read_fp (struct gdbarch *gdbarch, gdbarch_read_fp_ftype
 #endif
 #endif
 
+/* Default (function) for non- multi-arch platforms. */
+#if (!GDB_MULTI_ARCH) && !defined (TARGET_WRITE_FP)
+#define TARGET_WRITE_FP(val) (generic_target_write_fp (val))
+#endif
+
 typedef void (gdbarch_write_fp_ftype) (CORE_ADDR val);
 extern void gdbarch_write_fp (struct gdbarch *gdbarch, CORE_ADDR val);
 extern void set_gdbarch_write_fp (struct gdbarch *gdbarch, gdbarch_write_fp_ftype *write_fp);
@@ -268,6 +288,11 @@ extern void set_gdbarch_write_fp (struct gdbarch *gdbarch, gdbarch_write_fp_ftyp
 #endif
 #endif
 
+/* Default (function) for non- multi-arch platforms. */
+#if (!GDB_MULTI_ARCH) && !defined (TARGET_READ_SP)
+#define TARGET_READ_SP() (generic_target_read_sp ())
+#endif
+
 typedef CORE_ADDR (gdbarch_read_sp_ftype) (void);
 extern CORE_ADDR gdbarch_read_sp (struct gdbarch *gdbarch);
 extern void set_gdbarch_read_sp (struct gdbarch *gdbarch, gdbarch_read_sp_ftype *read_sp);
@@ -277,6 +302,11 @@ extern void set_gdbarch_read_sp (struct gdbarch *gdbarch, gdbarch_read_sp_ftype
 #endif
 #endif
 
+/* Default (function) for non- multi-arch platforms. */
+#if (!GDB_MULTI_ARCH) && !defined (TARGET_WRITE_SP)
+#define TARGET_WRITE_SP(val) (generic_target_write_sp (val))
+#endif
+
 typedef void (gdbarch_write_sp_ftype) (CORE_ADDR val);
 extern void gdbarch_write_sp (struct gdbarch *gdbarch, CORE_ADDR val);
 extern void set_gdbarch_write_sp (struct gdbarch *gdbarch, gdbarch_write_sp_ftype *write_sp);
index 9f2581801c408115fef1976d728f8a818e940383..2cffe3e220c766af172f06cefbbe265052a0b331 100755 (executable)
@@ -324,15 +324,14 @@ v::TARGET_PTR_BIT:int:ptr_bit::::8 * sizeof (void*):TARGET_INT_BIT::0
 # Number of bits in a BFD_VMA for the target object file format.
 v::TARGET_BFD_VMA_BIT:int:bfd_vma_bit::::8 * sizeof (void*):TARGET_ARCHITECTURE->bits_per_address::0
 #
-v:1:IEEE_FLOAT:int:ieee_float::::0:0::0:::
-#
-f:1:TARGET_READ_PC:CORE_ADDR:read_pc:int pid:pid::0:0
-f:1:TARGET_WRITE_PC:void:write_pc:CORE_ADDR val, int pid:val, pid::0:0
-f:1:TARGET_READ_FP:CORE_ADDR:read_fp:void:::0:0
-f:1:TARGET_WRITE_FP:void:write_fp:CORE_ADDR val:val::0:0
-f:1:TARGET_READ_SP:CORE_ADDR:read_sp:void:::0:0
-f:1:TARGET_WRITE_SP:void:write_sp:CORE_ADDR val:val::0:0
+v::IEEE_FLOAT:int:ieee_float::::0:0::0:::
 #
+f::TARGET_READ_PC:CORE_ADDR:read_pc:int pid:pid::0:generic_target_read_pc::0
+f::TARGET_WRITE_PC:void:write_pc:CORE_ADDR val, int pid:val, pid::0:generic_target_write_pc::0
+f::TARGET_READ_FP:CORE_ADDR:read_fp:void:::0:generic_target_read_fp::0
+f::TARGET_WRITE_FP:void:write_fp:CORE_ADDR val:val::0:generic_target_write_fp::0
+f::TARGET_READ_SP:CORE_ADDR:read_sp:void:::0:generic_target_read_sp::0
+f::TARGET_WRITE_SP:void:write_sp:CORE_ADDR val:val::0:generic_target_write_sp::0
 #
 v:2:NUM_REGS:int:num_regs::::0:-1
 # This macro gives the number of pseudo-registers that live in the
index f449189795e10c8e5fbdc0c62dd3539231f484b0..337f57a7a530929b0754d90aee10e2a956d1729b 100644 (file)
@@ -200,11 +200,6 @@ default_get_saved_register (char *raw_buffer,
     *addrp = addr;
 }
 
-#if !defined (GET_SAVED_REGISTER)
-#define GET_SAVED_REGISTER(raw_buffer, optimized, addrp, frame, regnum, lval) \
-  default_get_saved_register(raw_buffer, optimized, addrp, frame, regnum, lval)
-#endif
-
 void
 get_saved_register (char *raw_buffer,
                    int *optimized,
@@ -715,10 +710,6 @@ supply_register (int regno, char *val)
    eliminate the intermediate read_pc_pid().  The client would call
    TARGET_READ_PC directly. (cagney). */
 
-#ifndef TARGET_READ_PC
-#define TARGET_READ_PC generic_target_read_pc
-#endif
-
 CORE_ADDR
 generic_target_read_pc (int pid)
 {
@@ -755,10 +746,6 @@ read_pc (void)
   return read_pc_pid (inferior_pid);
 }
 
-#ifndef TARGET_WRITE_PC
-#define TARGET_WRITE_PC generic_target_write_pc
-#endif
-
 void
 generic_target_write_pc (CORE_ADDR pc, int pid)
 {
@@ -796,10 +783,6 @@ write_pc (CORE_ADDR pc)
 
 /* Cope with strage ways of getting to the stack and frame pointers */
 
-#ifndef TARGET_READ_SP
-#define TARGET_READ_SP generic_target_read_sp
-#endif
-
 CORE_ADDR
 generic_target_read_sp (void)
 {
@@ -816,10 +799,6 @@ read_sp (void)
   return TARGET_READ_SP ();
 }
 
-#ifndef TARGET_WRITE_SP
-#define TARGET_WRITE_SP generic_target_write_sp
-#endif
-
 void
 generic_target_write_sp (CORE_ADDR val)
 {
@@ -839,10 +818,6 @@ write_sp (CORE_ADDR val)
   TARGET_WRITE_SP (val);
 }
 
-#ifndef TARGET_READ_FP
-#define TARGET_READ_FP generic_target_read_fp
-#endif
-
 CORE_ADDR
 generic_target_read_fp (void)
 {
@@ -859,10 +834,6 @@ read_fp (void)
   return TARGET_READ_FP ();
 }
 
-#ifndef TARGET_WRITE_FP
-#define TARGET_WRITE_FP generic_target_write_fp
-#endif
-
 void
 generic_target_write_fp (CORE_ADDR val)
 {