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]

[commit] Switch remote.c to gdbarch obstack


This one is pretty straight forward, committed.

Andrew
2003-08-04  Andrew Cagney  <cagney@redhat.com>

	* remote.c (free_remote_state): Delete function.
	(_initialize_remote): Update register_gdbarch_data.
	(init_remote_state): Use GDBARCH_OBSTACK_XALLOC and
	GDBARCH_OBSTACK_CALLOC instead of xmalloc / xcalloc.

Index: remote.c
===================================================================
RCS file: /cvs/src/src/gdb/remote.c,v
retrieving revision 1.111
diff -u -r1.111 remote.c
--- remote.c	4 Aug 2003 17:08:22 -0000	1.111
+++ remote.c	4 Aug 2003 20:35:32 -0000
@@ -256,7 +256,7 @@
 init_remote_state (struct gdbarch *gdbarch)
 {
   int regnum;
-  struct remote_state *rs = xmalloc (sizeof (struct remote_state));
+  struct remote_state *rs = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct remote_state);
 
   if (DEPRECATED_REGISTER_BYTES != 0)
     rs->sizeof_g_packet = DEPRECATED_REGISTER_BYTES;
@@ -264,7 +264,8 @@
     rs->sizeof_g_packet = 0;
 
   /* Assume a 1:1 regnum<->pnum table.  */
-  rs->regs = xcalloc (NUM_REGS + NUM_PSEUDO_REGS, sizeof (struct packet_reg));
+  rs->regs = GDBARCH_OBSTACK_CALLOC (gdbarch, NUM_REGS + NUM_PSEUDO_REGS,
+				     struct packet_reg);
   for (regnum = 0; regnum < NUM_REGS + NUM_PSEUDO_REGS; regnum++)
     {
       struct packet_reg *r = &rs->regs[regnum];
@@ -303,14 +304,6 @@
   return rs;
 }
 
-static void
-free_remote_state (struct gdbarch *gdbarch, void *pointer)
-{
-  struct remote_state *data = pointer;
-  xfree (data->regs);
-  xfree (data);
-}
-
 static struct packet_reg *
 packet_reg_from_regnum (struct remote_state *rs, long regnum)
 {
@@ -6063,8 +6056,7 @@
   struct cmd_list_element *tmpcmd;
 
   /* architecture specific data */
-  remote_gdbarch_data_handle = register_gdbarch_data (init_remote_state,
-						      free_remote_state);
+  remote_gdbarch_data_handle = register_gdbarch_data (init_remote_state, NULL);
 
   /* Old tacky stuff.  NOTE: This comes after the remote protocol so
      that the remote protocol has been initialized.  */

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