little cleanup
[libfirm] / ir / adt / xmalloc.c
index f2b1554..7680c4b 100644 (file)
 #endif
 
 #ifdef HAVE_ALLOCA_H
-#include <alloca.h>
+# include <alloca.h>
 #endif
 #ifdef HAVE_MALLOC_H
-#include <malloc.h>
+# include <malloc.h>
 #endif
 #ifdef HAVE_STRING_H
-#include <string.h>
+# include <string.h>
+#endif
+#ifdef HAVE_STDLIB_H
+# include <stdlib.h>
 #endif
-
-#include <stdlib.h>
 
 #include "xmalloc.h"
 #include "panic.h"
@@ -37,20 +38,22 @@ xmalloc(size_t size) {
   void *res = malloc (size);
 
   if (!res) xnomem();
+  return res;
+}
 
-  memset(res, 0x00, size);
+void *xcalloc(size_t num, size_t size) {
+  void *res = calloc(num, size);
 
+  if (!res) xnomem();
   return res;
 }
 
-
 void *
 xrealloc(void *ptr, size_t size) {
   /* ANSI blesses realloc (0, x) but SunOS chokes on it */
   void *res = ptr ? realloc (ptr, size) : malloc (size);
 
   if (!res) xnomem ();
-
   return res;
 }