X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Fvalueset.c;h=6a7e96873b8f8c6f61872ce02f49024ff8a79c3a;hb=7d070c58e7bef1ed875fac066b57f29de449724b;hp=7f99aa290b26d18d4ccb34707e70af3672d2f9f9;hpb=01e004951e60cd0c91f689262bce61acada91f0c;p=libfirm diff --git a/ir/ir/valueset.c b/ir/ir/valueset.c index 7f99aa290..6a7e96873 100644 --- a/ir/ir/valueset.c +++ b/ir/ir/valueset.c @@ -40,21 +40,24 @@ static ir_valueset_entry_t null_valueset_entry; #define KeyType ir_node* #define ConstKeyType const ir_node* #define GetKey(entry) (entry).value -#define InitData(self,entry,key) do { (entry).value = (key); (entry).list.next = NULL; (entry).list.prev = NULL; } while(0) +#define InitData(self,entry,key) do { (entry).value = (key); (entry).list.next = NULL; (entry).list.prev = NULL; } while (0) #define Hash(self,key) ir_node_hash(key) #define KeysEqual(self,key1,key2) (key1) == (key2) #define SetRangeEmpty(ptr,size) memset(ptr, 0, (size) * sizeof((ptr)[0])) #define EntrySetEmpty(entry) (entry).value = NULL -#define EntrySetDeleted(entry) do { (entry).data.value = (ir_node*) -1; list_del(&(entry).data.list); } while(0) +#define EntrySetDeleted(entry) do { (entry).data.value = (ir_node*) -1; list_del(&(entry).data.list); } while (0) #define EntryIsEmpty(entry) ((entry).data.value == NULL) #define EntryIsDeleted(entry) ((entry).data.value == (ir_node*)-1) #define hashset_init ir_valueset_init #define hashset_init_size ir_valueset_init_size #define hashset_destroy ir_valueset_destroy -#define hashset_insert _ir_valueset_insert +ir_valueset_entry_t *ir_valueset_insert_(ir_valueset_t *self, ir_node *value); +#define hashset_insert ir_valueset_insert_ #define hashset_remove ir_valueset_remove -#define hashset_find _ir_valueset_find +ir_valueset_entry_t *ir_valueset_find_(const ir_valueset_t *self, + const ir_node *value); +#define hashset_find ir_valueset_find_ #define hashset_size ir_valueset_size #define ADDITIONAL_INIT INIT_LIST_HEAD(&self->elem_list); INIT_LIST_HEAD(&self->all_iters); @@ -69,8 +72,7 @@ static ir_valueset_entry_t null_valueset_entry; * Resize the hashset * @internal */ -static -void resize(HashSet *self, size_t new_size) +static void resize(HashSet *self, size_t new_size) { HashSetEntry *old_entries = self->entries; HashSetEntry *new_entries; @@ -110,7 +112,7 @@ void resize(HashSet *self, size_t new_size) int ir_valueset_insert(ir_valueset_t *valueset, ir_node *value, ir_node *expr) { - ir_valueset_entry_t *entry = _ir_valueset_insert(valueset, value); + ir_valueset_entry_t *entry = ir_valueset_insert_(valueset, value); if (entry->list.next != NULL) { /* this value is already inserted, do nothing */ @@ -126,7 +128,7 @@ int ir_valueset_insert(ir_valueset_t *valueset, ir_node *value, ir_node *expr) int ir_valueset_replace(ir_valueset_t *valueset, ir_node *value, ir_node *expr) { int res = 0; - ir_valueset_entry_t *entry = _ir_valueset_insert(valueset, value); + ir_valueset_entry_t *entry = ir_valueset_insert_(valueset, value); if (entry->expr != expr) { entry->expr = expr; @@ -142,19 +144,21 @@ int ir_valueset_replace(ir_valueset_t *valueset, ir_node *value, ir_node *expr) void *ir_valueset_lookup(const ir_valueset_t *valueset, const ir_node *value) { - ir_valueset_entry_t *entry = _ir_valueset_find(valueset, value); + ir_valueset_entry_t *entry = ir_valueset_find_(valueset, value); if (entry != NULL) return entry->expr; return NULL; } void ir_valueset_iterator_init(ir_valueset_iterator_t *iterator, - const ir_valueset_t *valueset) { + const ir_valueset_t *valueset) +{ iterator->iter = valueset->elem_list.next; iterator->valueset = valueset; } -ir_node *ir_valueset_iterator_next(ir_valueset_iterator_t *iterator, ir_node **expr) { +ir_node *ir_valueset_iterator_next(ir_valueset_iterator_t *iterator, ir_node **expr) +{ ir_valueset_entry_t *entry; if (iterator->iter == &iterator->valueset->elem_list) { @@ -169,7 +173,8 @@ ir_node *ir_valueset_iterator_next(ir_valueset_iterator_t *iterator, ir_node **e return entry->value; } -void ir_valueset_remove_iterator(ir_valueset_t *valueset, ir_valueset_iterator_t *iterator) { +void ir_valueset_remove_iterator(ir_valueset_t *valueset, ir_valueset_iterator_t *iterator) +{ ir_valueset_entry_t *rem = list_entry(iterator->iter->prev, ir_valueset_entry_t, list); ir_valueset_remove(valueset, rem->value);