X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firnodeset.c;h=2d59b6ce2b07ffa6a01f3e23ac8cac4c4bdbb605;hb=11b00882d8ddbf207c31565a51030408c8fd646b;hp=d6ccb557dd897ee0a0118d4374a009db88314df3;hpb=f97fd9ebeff21c0457c415c5c57708e4807d8919;p=libfirm diff --git a/ir/ir/irnodeset.c b/ir/ir/irnodeset.c index d6ccb557d..2d59b6ce2 100644 --- a/ir/ir/irnodeset.c +++ b/ir/ir/irnodeset.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved. + * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. * * This file is part of libFirm. * @@ -23,7 +23,6 @@ * @date 30.03.2007 * @brief A nodeset. This should be preferred over a simple pset, because it tries to guarantee deterministic behavior. - * @version $Id$ */ #include "config.h" @@ -38,45 +37,25 @@ #define ValueType ir_node* #define NullValue NULL #define DeletedValue ((ir_node*)-1) -#ifdef DEBUG_libfirm #define Hash(this,key) ((unsigned)((key)->node_nr)) -#else -#define Hash(this,key) HASH_PTR(key) -#endif #define KeysEqual(this,key1,key2) (key1) == (key2) #define SetRangeEmpty(ptr,size) memset(ptr, 0, (size) * sizeof((ptr)[0])) -#define ValueCmp(a,b) ((int) get_irn_idx(a) - (int) get_irn_idx(b)) -#define hashset_init _ir_nodeset_init +void ir_nodeset_init_(ir_nodeset_t *self); +#define hashset_init ir_nodeset_init_ #define hashset_init_size ir_nodeset_init_size #define hashset_destroy ir_nodeset_destroy #define hashset_insert ir_nodeset_insert #define hashset_remove ir_nodeset_remove -#define hashset_find _ir_nodeset_find +#define hashset_find ir_nodeset_contains #define hashset_size ir_nodeset_size #define hashset_iterator_init ir_nodeset_iterator_init #define hashset_iterator_next ir_nodeset_iterator_next #define hashset_remove_iterator ir_nodeset_remove_iterator -#ifdef IR_NODESET_USE_ORDERED_SETS - -#define hashset_insert_quick ir_nodeset_insert_quick -#define hashset_remove_quick ir_nodeset_remove_quick -#define hashset_fixup ir_nodeset_fixup -#include "arrayset.c" - -#else - -#include "hashset.c" - -#endif /* IR_NODESET_USE_ORDERED_SETS */ +#include "hashset.c.inl" void ir_nodeset_init(ir_nodeset_t *nodeset) { ir_nodeset_init_size(nodeset, 16); } - -int ir_nodeset_contains(const ir_nodeset_t *nodeset, const ir_node *node) -{ - return _ir_nodeset_find(nodeset, node) != NULL; -}