/* Create and return pseudo live range with given attributes. */ static lra_live_range_t create_live_range (int regno, int start, int finish, lra_live_range_t next) { lra_live_range_t p = lra_live_range_pool.allocate (); p->regno = regno; p->start = start; p->finish = finish; p->next = next; return p; }
struct et_node * et_new_tree (void *data) { et_node *nw = et_nodes.allocate (); nw->data = data; nw->father = NULL; nw->left = NULL; nw->right = NULL; nw->son = NULL; nw->rightmost_occ = et_new_occ (nw); nw->parent_occ = NULL; return nw; }
static struct et_occ * et_new_occ (struct et_node *node) { et_occ *nw = et_occurrences.allocate (); nw->of = node; nw->parent = NULL; nw->prev = NULL; nw->next = NULL; nw->depth = 0; nw->min_occ = nw; nw->min = 0; return nw; }