Lines Matching defs:dt_node

1599 class dt_node
1606 dt_node *parent;
1607 vec<dt_node *> kids;
1614 dt_node (enum dt_type type_, dt_node *parent_)
1617 dt_node *append_node (dt_node *);
1618 dt_node *append_op (operand *, dt_node *parent, unsigned pos);
1619 dt_node *append_true_op (operand *, dt_node *parent, unsigned pos);
1620 dt_node *append_match_op (operand *, dt_operand *, dt_node *parent,
1622 dt_node *append_simplify (simplify *, unsigned, dt_operand **);
1629 vec<dt_operand *>, vec<dt_operand *>, vec<dt_node *>);
1636 class dt_operand : public dt_node
1647 : dt_node (type, parent_), op (op_), match_dop (match_dop_),
1663 class dt_simplify : public dt_node
1672 : dt_node (DT_SIMPLIFY, NULL), s (s_), pattern_no (pattern_no_),
1682 is_a_helper <dt_operand *>::test (dt_node *n)
1684 return (n->type == dt_node::DT_OPERAND
1685 || n->type == dt_node::DT_MATCH
1686 || n->type == dt_node::DT_TRUE);
1692 is_a_helper <dt_simplify *>::test (dt_node *n)
1694 return n->type == dt_node::DT_SIMPLIFY;
1704 dt_node *root;
1710 decision_tree () { root = new dt_node (dt_node::DT_NODE, NULL); }
1712 static dt_node *insert_operand (dt_node *, operand *, dt_operand **indexes,
1713 unsigned pos = 0, dt_node *parent = 0);
1714 static dt_node *find_node (vec<dt_node *>&, dt_node *);
1715 static bool cmp_node (dt_node *, dt_node *);
1716 static void print_node (dt_node *, FILE *f = stderr, unsigned = 0);
1748 decision_tree::cmp_node (dt_node *n1, dt_node *n2)
1756 if (n1->type == dt_node::DT_TRUE)
1759 if (n1->type == dt_node::DT_OPERAND)
1762 else if (n1->type == dt_node::DT_MATCH)
1772 dt_node *
1773 decision_tree::find_node (vec<dt_node *>& ops, dt_node *p)
1776 if (p->type == dt_node::DT_TRUE
1778 && ops.last ()->type == dt_node::DT_TRUE)
1786 if (ops[i]->type == dt_node::DT_TRUE)
1803 if (p->type == dt_node::DT_OPERAND)
1806 if (ops[i]->type == dt_node::DT_OPERAND)
1829 dt_node *
1830 dt_node::append_node (dt_node *n)
1832 dt_node *kid;
1846 dt_node *
1847 dt_node::append_op (operand *op, dt_node *parent, unsigned pos)
1856 dt_node *
1857 dt_node::append_true_op (operand *op, dt_node *parent, unsigned pos)
1866 dt_node *
1867 dt_node::append_match_op (operand *op, dt_operand *match_dop,
1868 dt_node *parent, unsigned pos)
1877 dt_node *
1878 dt_node::append_simplify (simplify *s, unsigned pattern_no,
1901 dt_node::analyze (sinfo_map_t &map)
1939 dt_node *
1940 decision_tree::insert_operand (dt_node *p, operand *o, dt_operand **indexes,
1941 unsigned pos, dt_node *parent)
1943 dt_node *q, *elm = 0;
1969 dt_operand temp (dt_node::DT_TRUE, 0, 0, 0, 0);
1974 dt_operand match (dt_node::DT_MATCH, 0, match_op, 0, 0);
1981 dt_operand temp (dt_node::DT_OPERAND, c->what, 0, 0, 0);
1986 gcc_assert (elm->type == dt_node::DT_TRUE
1987 || elm->type == dt_node::DT_OPERAND
1988 || elm->type == dt_node::DT_MATCH);
2021 dt_node *p = decision_tree::insert_operand (root, s->match, indexes);
2028 decision_tree::print_node (dt_node *p, FILE *f, unsigned indent)
2030 if (p->type == dt_node::DT_NODE)
2038 if (p->type == dt_node::DT_OPERAND)
2043 else if (p->type == dt_node::DT_TRUE)
2045 else if (p->type == dt_node::DT_MATCH)
2047 else if (p->type == dt_node::DT_SIMPLIFY)
2727 else if (parent->type == dt_node::DT_MATCH)
2903 dt_node::gen_kids (FILE *f, int indent, bool gimple, int depth)
2910 auto_vec<dt_node *> others;
2914 if (kids[i]->type == dt_node::DT_OPERAND)
2944 else if (kids[i]->type == dt_node::DT_SIMPLIFY)
2946 else if (kids[i]->type == dt_node::DT_MATCH
2947 || kids[i]->type == dt_node::DT_TRUE)
2977 dt_node::gen_kids_1 (FILE *f, int indent, bool gimple, int depth,
2983 vec<dt_node *> others)