2005-02-03 Andrew Cagney <cagney@gnu.org>
authorAndrew Cagney <cagney@redhat.com>
Sun, 6 Feb 2005 16:22:14 +0000 (16:22 +0000)
committerAndrew Cagney <cagney@redhat.com>
Sun, 6 Feb 2005 16:22:14 +0000 (16:22 +0000)
* utils.c (xzalloc): New function.
* defs.h (XZALLOC): Use xzalloc.
(xzalloc): Declare.
* value.c (allocate_value): Allocate a zeroed buffer.
* mdebugread.c (xzalloc): Delete.

gdb/ChangeLog
gdb/defs.h
gdb/mdebugread.c
gdb/utils.c
gdb/value.c

index e2e38a2138820e77bc1246584f94df034d153195..325de500ee668ed41bdfeffd421d18fa1dc52d15 100644 (file)
@@ -1,3 +1,11 @@
+2005-02-03  Andrew Cagney  <cagney@gnu.org>
+
+       * utils.c (xzalloc): New function.
+       * defs.h (XZALLOC): Use xzalloc.
+       (xzalloc): Declare.
+       * value.c (allocate_value): Allocate a zeroed buffer.
+       * mdebugread.c (xzalloc): Delete.
+
 2005-02-02  Andrew Cagney  <cagney@gnu.org>
 
        * value.h (value_lazy): Declare.
index 44eb9c1d604111fa555f0ced4cf7374b11884efa..d749d593d4c64f606e059fd58a0e10aac49fa384 100644 (file)
@@ -856,10 +856,13 @@ extern char *savestring (const char *, size_t);
    "libiberty.h". */
 extern void xfree (void *);
 
+/* Like xmalloc, but zero the memory.  */
+extern void *xzalloc (size_t);
+
 /* Utility macros to allocate typed memory.  Avoids errors like:
    struct foo *foo = xmalloc (sizeof struct bar); and memset (foo,
    sizeof (struct foo), 0).  */
-#define XZALLOC(TYPE) ((TYPE*) memset (xmalloc (sizeof (TYPE)), 0, sizeof (TYPE)))
+#define XZALLOC(TYPE) ((TYPE*) xzalloc (sizeof (TYPE)))
 #define XMALLOC(TYPE) ((TYPE*) xmalloc (sizeof (TYPE)))
 #define XCALLOC(NMEMB, TYPE) ((TYPE*) xcalloc ((NMEMB), sizeof (TYPE)))
 
index c179f87ed0b20022a3002c83d33838925f860d51..2300e3ec735b2244cc93170b6cb7848ef3074a47 100644 (file)
@@ -297,17 +297,6 @@ static void handle_psymbol_enumerators (struct objfile *, FDR *, int,
 
 static char *mdebug_next_symbol_text (struct objfile *);
 \f
-/* Allocate zeroed memory */
-
-static void *
-xzalloc (unsigned int size)
-{
-  void *p = xmalloc (size);
-
-  memset (p, 0, size);
-  return p;
-}
-
 /* Exported procedure: Builds a symtab from the PST partial one.
    Restores the environment in effect when PST was created, delegates
    most of the work to an ancillary procedure, and sorts
index 1bdcb6338b02c4087ee309f7e47e64d528c93aa3..d93e55f72ae76de92a5d7bcdadeb764137032864 100644 (file)
@@ -947,6 +947,12 @@ xmalloc (size_t size)
   return (val);
 }
 
+void *
+xzalloc (size_t size)
+{
+  return xcalloc (1, size);
+}
+
 PTR                            /* OK: PTR */
 xrealloc (PTR ptr, size_t size)        /* OK: PTR */
 {
index 3ff911ccba6b86441d4d7baff0aee01baa9427a6..a871df31283c83c520c50117b98cacb5e14b5699 100644 (file)
@@ -83,7 +83,7 @@ allocate_value (struct type *type)
   struct value *val;
   struct type *atype = check_typedef (type);
 
-  val = (struct value *) xmalloc (sizeof (struct value) + TYPE_LENGTH (atype));
+  val = (struct value *) xzalloc (sizeof (struct value) + TYPE_LENGTH (atype));
   val->next = all_values;
   all_values = val;
   val->type = type;