OSDN Git Service

* i386-tdep.c (i386_saved_pc_after_call): New function.
authorkettenis <kettenis>
Tue, 17 Apr 2001 23:20:54 +0000 (23:20 +0000)
committerkettenis <kettenis>
Tue, 17 Apr 2001 23:20:54 +0000 (23:20 +0000)
* config/i386/tm-i386.h (SAVED_PC_AFTER_CALL): Redefine in terms
of i386_saved_pc_after_call.
(i386_saved_pc_after_call): New prototype.

gdb/ChangeLog
gdb/config/i386/tm-i386.h
gdb/i386-tdep.c

index f95d737..3377633 100644 (file)
@@ -1,3 +1,10 @@
+2001-04-18  Mark Kettenis  <kettenis@gnu.org>
+
+       * i386-tdep.c (i386_saved_pc_after_call): New function.
+       * config/i386/tm-i386.h (SAVED_PC_AFTER_CALL): Redefine in terms
+       of i386_saved_pc_after_call.
+       (i386_saved_pc_after_call): New prototype.
+
 2001-04-16  Andrew Cagney  <ac131313@redhat.com>
 
        * configure.host (m68030-sony-*, m68*-isi-*, m68*-sony-*):
index 8370441..c4b64a5 100644 (file)
@@ -68,12 +68,10 @@ struct type;
 
 extern int i386_skip_prologue (int);
 
-/* Immediately after a function call, return the saved pc.  Can't always go
-   through the frames for this because on some machines the new frame is not
-   set up until the new function executes some instructions.  */
+/* Immediately after a function call, return the saved pc.  */
 
-#define SAVED_PC_AFTER_CALL(frame) \
-     (read_memory_unsigned_integer (read_register (SP_REGNUM), 4))
+#define SAVED_PC_AFTER_CALL(frame) i386_saved_pc_after_call (frame)
+extern CORE_ADDR i386_saved_pc_after_call (struct frame_info *frame);
 
 /* Stack grows downward.  */
 
index f654d6f..15b261c 100644 (file)
@@ -365,6 +365,14 @@ i386_frame_chain (struct frame_info *frame)
   return 0;
 }
 
+/* Immediately after a function call, return the saved pc.  */
+
+CORE_ADDR
+i386_saved_pc_after_call (struct frame_info *frame)
+{
+  return read_memory_unsigned_integer (read_register (SP_REGNUM), 4);
+}
+
 /* Return number of args passed to a frame.
    Can return -1, meaning no way to tell.  */