2003-06-01 Andrew Cagney <cagney@redhat.com>
authorAndrew Cagney <cagney@redhat.com>
Sun, 1 Jun 2003 19:02:19 +0000 (19:02 +0000)
committerAndrew Cagney <cagney@redhat.com>
Sun, 1 Jun 2003 19:02:19 +0000 (19:02 +0000)
* infcall.c (call_function_by_hand): Update comment on
DEPRECATED_DUMMY_WRITE_SP.

* mips-tdep.c (mips_gdbarch_init): Do not set
deprecated_dummy_write_sp.
(mips_eabi_push_dummy_call): Set the SP register.
(mips_o64_push_dummy_call): Set the SP register.
(mips_o32_push_dummy_call): Set the SP register.
(mips_n32n64_push_dummy_call): Set the SP register.

gdb/ChangeLog
gdb/mips-tdep.c

index 279d9819417485f2b01c8a4f45ffaf365eefaa7b..1a1ba34304f47fde97e4a6c2223b170712812f20 100644 (file)
@@ -1,3 +1,15 @@
+2003-06-01  Andrew Cagney  <cagney@redhat.com>
+
+       * infcall.c (call_function_by_hand): Update comment on
+       DEPRECATED_DUMMY_WRITE_SP.
+
+       * mips-tdep.c (mips_gdbarch_init): Do not set
+       deprecated_dummy_write_sp.
+       (mips_eabi_push_dummy_call): Set the SP register.
+       (mips_o64_push_dummy_call): Set the SP register.
+       (mips_o32_push_dummy_call): Set the SP register.
+       (mips_n32n64_push_dummy_call): Set the SP register.
+
 2003-06-01  Richard Henderson  <rth@redhat.com>
 
         * alpha-nat.c (fetch_osf_core_registers): Use ALPHA_REGISTER_SIZE
index 7b2a7004a4fd44f5d68c471c4c0fc3506ba9f8b6..7bc4aebf5e378f301a6c830d415df104c255a87a 100644 (file)
@@ -2969,6 +2969,8 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
        fprintf_unfiltered (gdb_stdlog, "\n");
     }
 
+  regcache_cooked_write_signed (regcache, SP_REGNUM, sp);
+
   /* Return adjusted stack pointer.  */
   return sp;
 }
@@ -3198,6 +3200,8 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
        fprintf_unfiltered (gdb_stdlog, "\n");
     }
 
+  regcache_cooked_write_signed (regcache, SP_REGNUM, sp);
+
   /* Return adjusted stack pointer.  */
   return sp;
 }
@@ -3504,6 +3508,8 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
        fprintf_unfiltered (gdb_stdlog, "\n");
     }
 
+  regcache_cooked_write_signed (regcache, SP_REGNUM, sp);
+
   /* Return adjusted stack pointer.  */
   return sp;
 }
@@ -3810,6 +3816,8 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
        fprintf_unfiltered (gdb_stdlog, "\n");
     }
 
+  regcache_cooked_write_signed (regcache, SP_REGNUM, sp);
+
   /* Return adjusted stack pointer.  */
   return sp;
 }
@@ -5927,7 +5935,6 @@ mips_gdbarch_init (struct gdbarch_info info,
   set_gdbarch_write_pc (gdbarch, generic_target_write_pc);
   set_gdbarch_deprecated_target_read_fp (gdbarch, mips_read_sp); /* Draft FRAME base.  */
   set_gdbarch_read_sp (gdbarch, mips_read_sp);
-  set_gdbarch_deprecated_dummy_write_sp (gdbarch, generic_target_write_sp);
 
   /* Add/remove bits from an address.  The MIPS needs be careful to
      ensure that all 32 bit addresses are sign extended to 64 bits.  */