This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] Deprecate generic_get_saved_register()


Hello,

The function generic_get_saved_register() was, some time ago, superseeded by the generic_unwind_get_saved_register(). This patch follows the change through by deprecating the old function.

Since GET_SAVED_REGISTER() now defaults to generic_unwind_get_saved_register() upgrading an architecture should simple - don't set the GET_SAVED_REGISTER() method.

I should also note that, not to far into the future, GET_SAVED_REGISTER() is going to also be deprecated. In its place will be something that directly sets frame->unwind(), just need to figure out what that `something' is :-)

committed,
Andrew
2002-11-01  Andrew Cagney  <cagney@redhat.com>

	* frame.h (deprecated_generic_get_saved_register): Rename
	generic_get_saved_register.
	* blockframe.c (deprecated_generic_get_saved_register): Update.
	* xstormy16-tdep.c (xstormy16_get_saved_register): Update.
	(xstormy16_frame_saved_register): Update.
	* sh-tdep.c (sh_gdbarch_init): Update.
	* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
	* ia64-tdep.c (ia64_get_saved_register): Update.
	* cris-tdep.c (cris_gdbarch_init): Update.
	* config/m32r/tm-m32r.h (GET_SAVED_REGISTER): Update.
	* arm-tdep.c (arm_gdbarch_init): Update.

Index: arm-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/arm-tdep.c,v
retrieving revision 1.73
diff -u -r1.73 arm-tdep.c
--- arm-tdep.c	17 Sep 2002 20:42:00 -0000	1.73
+++ arm-tdep.c	1 Nov 2002 21:10:19 -0000
@@ -2858,7 +2858,7 @@
   set_gdbarch_push_return_address (gdbarch, arm_push_return_address);
 #endif
 
-  set_gdbarch_get_saved_register (gdbarch, generic_get_saved_register);
+  set_gdbarch_get_saved_register (gdbarch, deprecated_generic_get_saved_register);
   set_gdbarch_push_arguments (gdbarch, arm_push_arguments);
   set_gdbarch_coerce_float_to_double (gdbarch,
 				      standard_coerce_float_to_double);
Index: blockframe.c
===================================================================
RCS file: /cvs/src/src/gdb/blockframe.c,v
retrieving revision 1.42
diff -u -r1.42 blockframe.c
--- blockframe.c	12 Oct 2002 01:48:16 -0000	1.42
+++ blockframe.c	1 Nov 2002 21:10:19 -0000
@@ -1550,9 +1550,10 @@
    The argument RAW_BUFFER must point to aligned memory.  */
 
 void
-generic_get_saved_register (char *raw_buffer, int *optimized, CORE_ADDR *addrp,
-			    struct frame_info *frame, int regnum,
-			    enum lval_type *lval)
+deprecated_generic_get_saved_register (char *raw_buffer, int *optimized,
+				       CORE_ADDR *addrp,
+				       struct frame_info *frame, int regnum,
+				       enum lval_type *lval)
 {
   if (!target_has_registers)
     error ("No registers.");
Index: cris-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/cris-tdep.c,v
retrieving revision 1.23
diff -u -r1.23 cris-tdep.c
--- cris-tdep.c	27 Sep 2002 19:33:48 -0000	1.23
+++ cris-tdep.c	1 Nov 2002 21:10:21 -0000
@@ -4289,7 +4289,7 @@
   set_gdbarch_call_dummy_stack_adjust_p (gdbarch, 0);
   set_gdbarch_fix_call_dummy (gdbarch, generic_fix_call_dummy);
 
-  set_gdbarch_get_saved_register (gdbarch, generic_get_saved_register);
+  set_gdbarch_get_saved_register (gdbarch, deprecated_generic_get_saved_register);
   
   /* No register requires conversion from raw format to virtual format.  */
   set_gdbarch_register_convertible (gdbarch, generic_register_convertible_not);
Index: frame.h
===================================================================
RCS file: /cvs/src/src/gdb/frame.h,v
retrieving revision 1.27
diff -u -r1.27 frame.h
--- frame.h	31 Oct 2002 20:14:33 -0000	1.27
+++ frame.h	1 Nov 2002 21:10:21 -0000
@@ -325,9 +325,14 @@
 				    int nargs, struct value **args,
 				    struct type *type, int gcc_p);
 
-extern void generic_get_saved_register (char *, int *, CORE_ADDR *,
-					struct frame_info *, int,
-					enum lval_type *);
+/* The function generic_get_saved_register() has been made obsolete.
+   GET_SAVED_REGISTER now defaults to the recursive equivalent -
+   generic_unwind_get_saved_register() - so there is no need to even
+   set GET_SAVED_REGISTER.  Architectures that need to override the
+   register unwind mechanism should modify frame->unwind().  */
+extern void deprecated_generic_get_saved_register (char *, int *, CORE_ADDR *,
+						   struct frame_info *, int,
+						   enum lval_type *);
 
 extern void generic_unwind_get_saved_register (char *raw_buffer,
 					       int *optimized,
Index: ia64-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/ia64-tdep.c,v
retrieving revision 1.34
diff -u -r1.34 ia64-tdep.c
--- ia64-tdep.c	17 Sep 2002 20:42:01 -0000	1.34
+++ ia64-tdep.c	1 Nov 2002 21:10:22 -0000
@@ -1375,8 +1375,8 @@
 	         + ((regnum - IA64_FR32_REGNUM) + rrb_fr) % 96;
 	}
 
-      generic_get_saved_register (raw_buffer, optimized, addrp, frame,
-                                  regnum, lval);
+      deprecated_generic_get_saved_register (raw_buffer, optimized, addrp,
+					     frame, regnum, lval);
     }
 }
 
Index: m68hc11-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/m68hc11-tdep.c,v
retrieving revision 1.29
diff -u -r1.29 m68hc11-tdep.c
--- m68hc11-tdep.c	24 Aug 2002 00:21:34 -0000	1.29
+++ m68hc11-tdep.c	1 Nov 2002 21:10:22 -0000
@@ -1345,7 +1345,7 @@
                                        sizeof (m68hc11_call_dummy_words));
   set_gdbarch_call_dummy_p (gdbarch, 1);
   set_gdbarch_call_dummy_stack_adjust_p (gdbarch, 0);
-  set_gdbarch_get_saved_register (gdbarch, generic_get_saved_register);
+  set_gdbarch_get_saved_register (gdbarch, deprecated_generic_get_saved_register);
   set_gdbarch_fix_call_dummy (gdbarch, generic_fix_call_dummy);
   set_gdbarch_deprecated_extract_return_value (gdbarch, m68hc11_extract_return_value);
   set_gdbarch_push_arguments (gdbarch, m68hc11_push_arguments);
@@ -1368,7 +1368,7 @@
   set_gdbarch_frame_num_args (gdbarch, frame_num_args_unknown);
 
   set_gdbarch_frame_chain_valid (gdbarch, func_frame_chain_valid);
-  set_gdbarch_get_saved_register (gdbarch, generic_get_saved_register);
+  set_gdbarch_get_saved_register (gdbarch, deprecated_generic_get_saved_register);
 
   set_gdbarch_store_struct_return (gdbarch, m68hc11_store_struct_return);
   set_gdbarch_deprecated_store_return_value (gdbarch, m68hc11_store_return_value);
Index: sh-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sh-tdep.c,v
retrieving revision 1.73
diff -u -r1.73 sh-tdep.c
--- sh-tdep.c	26 Oct 2002 17:19:27 -0000	1.73
+++ sh-tdep.c	1 Nov 2002 21:10:24 -0000
@@ -4292,7 +4292,7 @@
   set_gdbarch_deprecated_do_registers_info (gdbarch, sh_do_registers_info);
   set_gdbarch_breakpoint_from_pc (gdbarch, sh_breakpoint_from_pc);
   set_gdbarch_frame_chain (gdbarch, sh_frame_chain);
-  set_gdbarch_get_saved_register (gdbarch, generic_get_saved_register);
+  set_gdbarch_get_saved_register (gdbarch, deprecated_generic_get_saved_register);
   set_gdbarch_init_extra_frame_info (gdbarch, sh_init_extra_frame_info);
   set_gdbarch_deprecated_extract_return_value (gdbarch, sh_extract_return_value);
   set_gdbarch_push_arguments (gdbarch, sh_push_arguments);
Index: xstormy16-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/xstormy16-tdep.c,v
retrieving revision 1.7
diff -u -r1.7 xstormy16-tdep.c
--- xstormy16-tdep.c	17 Sep 2002 20:42:01 -0000	1.7
+++ xstormy16-tdep.c	1 Nov 2002 21:10:24 -0000
@@ -186,7 +186,7 @@
 			      struct frame_info *fi,
 			      int regnum, enum lval_type *lval)
 {
-  generic_get_saved_register (raw_buffer, optimized, addrp, fi, regnum, lval);
+  deprecated_generic_get_saved_register (raw_buffer, optimized, addrp, fi, regnum, lval);
 }
 
 /* Function: xstormy16_type_is_scalar
@@ -439,7 +439,7 @@
   int size = xstormy16_register_raw_size (regnum);
   char *buf = (char *) alloca (size);
 
-  generic_get_saved_register (buf, NULL, NULL, fi, regnum, NULL);
+  deprecated_generic_get_saved_register (buf, NULL, NULL, fi, regnum, NULL);
   return (CORE_ADDR) extract_unsigned_integer (buf, size);
 }
 
Index: config/m32r/tm-m32r.h
===================================================================
RCS file: /cvs/src/src/gdb/config/m32r/tm-m32r.h,v
retrieving revision 1.8
diff -u -r1.8 tm-m32r.h
--- config/m32r/tm-m32r.h	24 Aug 2002 00:21:35 -0000	1.8
+++ config/m32r/tm-m32r.h	1 Nov 2002 21:10:25 -0000
@@ -221,7 +221,7 @@
 /* override the standard get_saved_register function with 
    one that takes account of generic CALL_DUMMY frames */
 #define GET_SAVED_REGISTER(raw_buffer, optimized, addrp, frame, regnum, lval) \
-     generic_get_saved_register (raw_buffer, optimized, addrp, frame, regnum, lval)
+     deprecated_generic_get_saved_register (raw_buffer, optimized, addrp, frame, regnum, lval)
 
 
 #define USE_GENERIC_DUMMY_FRAMES 1

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]