Lines Matching refs:pseudo
24 static inline unsigned int storage_hash(struct basic_block *bb, pseudo_t pseudo, enum inout_enum inout)
26 unsigned hash = hashval(bb) + hashval(pseudo) + hashval(inout);
35 if (a->pseudo != b->pseudo)
36 return a->pseudo < b->pseudo ? -1 : 1;
62 if (prev && entry->pseudo == prev->pseudo) {
88 struct storage *lookup_storage(struct basic_block *bb, pseudo_t pseudo, enum inout_enum inout)
90 struct storage_hash_list *list = storage_hash_table[storage_hash(bb,pseudo,inout)];
94 if (hash->bb == bb && hash->pseudo == pseudo && hash->inout == inout)
100 void add_storage(struct storage *storage, struct basic_block *bb, pseudo_t pseudo, enum inout_enum inout)
102 struct storage_hash_list **listp = storage_hash_table + storage_hash(bb,pseudo,inout);
106 hash->pseudo = pseudo;
152 show_pseudo(last->pseudo),
153 show_pseudo(entry->pseudo));
220 pseudo_t pseudo;
221 FOR_EACH_PTR(child->needs, pseudo) {
224 parent_out = lookup_storage(bb, pseudo, STOR_OUT);
225 child_in = lookup_storage(child, pseudo, STOR_IN);
229 add_storage(parent_out, child, pseudo, STOR_IN);
238 add_storage(child_in, bb, pseudo, STOR_OUT);
242 add_storage(parent_out, bb, pseudo, STOR_OUT);
243 add_storage(parent_out, child, pseudo, STOR_IN);
244 } END_FOR_EACH_PTR(pseudo);