* hppa-tdep.c (hppa32_push_dummy_call): Set the Stack Pointer.
authorJoel Brobecker <brobecker@gnat.com>
Wed, 31 Mar 2004 17:44:09 +0000 (17:44 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Wed, 31 Mar 2004 17:44:09 +0000 (17:44 +0000)
        (hppa64_push_dummy_call): Likewise.

gdb/ChangeLog
gdb/hppa-tdep.c

index f45dc68ec984f628ac12c211793266334a6c38fd..924a256c8d8e8bf403928cf560bad240f33706b5 100644 (file)
@@ -1,3 +1,8 @@
+2004-04-31  J. Brobecker  <brobecker@gnat.com>
+
+       * hppa-tdep.c (hppa32_push_dummy_call): Set the Stack Pointer.
+       (hppa64_push_dummy_call): Likewise.
+
 2004-03-30  Jim Blandy  <jimb@redhat.com>
 
        From Ulrich Weigand:
index f96a21132d1bb731a3e3a5374ff6e5959130e8a7..432507169bbecb01dee143df38fc63db31a38809 100644 (file)
@@ -911,6 +911,9 @@ hppa32_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
   /* Set the return address.  */
   regcache_cooked_write_unsigned (regcache, RP_REGNUM, bp_addr);
 
+  /* Update the Stack Pointer.  */
+  regcache_cooked_write_unsigned (regcache, SP_REGNUM, param_end + 32);
+
   /* The stack will have 32 bytes of additional space for a frame marker.  */
   return param_end + 32;
 }
@@ -1032,6 +1035,9 @@ hppa64_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr,
   /* Set the return address.  */
   regcache_cooked_write_unsigned (regcache, RP_REGNUM, bp_addr);
 
+  /* Update the Stack Pointer.  */
+  regcache_cooked_write_unsigned (regcache, SP_REGNUM, param_end + 64);
+
   /* The stack will have 32 bytes of additional space for a frame marker.  */
   return param_end + 64;
 }