2003-08-04 Andrew Cagney <cagney@redhat.com>
authorAndrew Cagney <cagney@redhat.com>
Mon, 4 Aug 2003 20:52:27 +0000 (20:52 +0000)
committerAndrew Cagney <cagney@redhat.com>
Mon, 4 Aug 2003 20:52:27 +0000 (20:52 +0000)
* 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.

gdb/ChangeLog
gdb/remote.c

index 32fe0d9129e81945d2ed61678227d1f8d119a653..1d7dad7abc907991a8f7e75e9c1ed4983265fac8 100644 (file)
@@ -1,3 +1,10 @@
+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.
+
 2003-08-04  Andrew Cagney  <cagney@redhat.com>
 
        * reggroups.c (struct reggroup_el): Define.
index e6c4fbc44908167ab524a0e7b476f7058cf6d1a9..0da3fecff8a3b5a4d82b3fd480575f09e2ede682 100644 (file)
@@ -256,7 +256,7 @@ static void *
 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 @@ init_remote_state (struct gdbarch *gdbarch)
     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 @@ init_remote_state (struct gdbarch *gdbarch)
   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 @@ _initialize_remote (void)
   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.  */