/* -*- c -*- */
/*
- * Time-stamp: <17.12.2004 20:26:51h liekweg>
- * Project: libFIRM
- * File name: ir/ana2/qset.c
- * Purpose: yet another set implementation
- * Author: Florian
- * Modified by:
- * Created: Mon 18 Oct 2004
- * CVS-ID: $Id$
- * Copyright: (c) 1999-2004 Universität Karlsruhe
- * Licence: This file is protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved.
+ *
+ * This file is part of libFirm.
+ *
+ * This file may be distributed and/or modified under the terms of the
+ * GNU General Public License version 2 as published by the Free Software
+ * Foundation and appearing in the file LICENSE.GPL included in the
+ * packaging of this file.
+ *
+ * Licensees holding valid libFirm Professional Edition licenses may use
+ * this file in accordance with the libFirm Commercial License.
+ * Agreement provided with the Software.
+ *
+ * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+ * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE.
*/
+/**
+ * @file
+ * @brief yet another set implementation
+ * @author Florian
+ * @date Mon 18 Oct 2004
+ * @version $Id$
+ */
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
# include <stdio.h>
# include <stdlib.h>
# include <assert.h>
# include <string.h>
-# include <sys/time.h>
-# include <obstack.h>
+# include "obst.h"
# include "timing.h"
# include "qset.h"
static void q_sort (sortable_t*, const int);
/* Compare funktion, meant to be qsort(3)-compatible */
-static __inline__ int sortable_compare (const void *pa, const void *pb)
+static INLINE int sortable_compare (const void *pa, const void *pb)
{
const int a = * (unsigned int*) pa;
const int b = * (unsigned int*) pb;
if (NULL != obst) {
return (obstack_alloc (obst, size));
} else {
- return (malloc (size));
+ return (xmalloc (size));
}
}
}
/*
- Test wether the given qset contains the given value.
+ Test whether the given qset contains the given value.
*/
int qset_contains (qset_t *qset, sortable_t val)
{
*/
sortable_t *qset_start (qset_t *qset)
{
+ sortable_t *start;
+
qset->cursor = 0;
- sortable_t *start = qset_next (qset);
+ start = qset_next (qset);
return (start); /* works for empty sets, too */
}
/*
$Log$
+ Revision 1.12 2006/06/06 12:06:27 beck
+ use xmalloc instead of malloc
+
+ Revision 1.11 2005/06/22 09:34:11 beck
+ typo fixed
+
+ Revision 1.10 2004/12/21 15:37:31 beck
+ added config.h include
+ removed unused sys/times.h
+ removed C99 constructs
+
Revision 1.9 2004/12/20 17:34:35 liekweg
fix recursion handling