Lines Matching refs:type

20 	e->type = E_SYMBOL;  in expr_alloc_symbol()
25 struct expr *expr_alloc_one(enum expr_type type, struct expr *ce) in expr_alloc_one() argument
28 e->type = type; in expr_alloc_one()
33 struct expr *expr_alloc_two(enum expr_type type, struct expr *e1, struct expr *e2) in expr_alloc_two() argument
36 e->type = type; in expr_alloc_two()
42 struct expr *expr_alloc_comp(enum expr_type type, struct symbol *s1, struct symbol *s2) in expr_alloc_comp() argument
45 e->type = type; in expr_alloc_comp()
74 switch (org->type) { in expr_copy()
97 fprintf(stderr, "can't copy type %d\n", e->type); in expr_copy()
111 switch (e->type) { in expr_free()
130 fprintf(stderr, "how to free type %d?\n", e->type); in expr_free()
149 static void __expr_eliminate_eq(enum expr_type type, struct expr **ep1, struct expr **ep2) in __expr_eliminate_eq() argument
153 if (e1->type == type) { in __expr_eliminate_eq()
154 __expr_eliminate_eq(type, &e1->left.expr, &e2); in __expr_eliminate_eq()
155 __expr_eliminate_eq(type, &e1->right.expr, &e2); in __expr_eliminate_eq()
158 if (e2->type == type) { in __expr_eliminate_eq()
159 __expr_eliminate_eq(type, &e1, &e2->left.expr); in __expr_eliminate_eq()
160 __expr_eliminate_eq(type, &e1, &e2->right.expr); in __expr_eliminate_eq()
166 if (e1->type == E_SYMBOL && e2->type == E_SYMBOL && in __expr_eliminate_eq()
177 switch (type) { in __expr_eliminate_eq()
224 switch (e1->type) { in expr_eliminate_eq()
227 __expr_eliminate_eq(e1->type, ep1, ep2); in expr_eliminate_eq()
231 if (e1->type != e2->type) switch (e2->type) { in expr_eliminate_eq()
234 __expr_eliminate_eq(e2->type, ep1, ep2); in expr_eliminate_eq()
255 if (e1->type != e2->type) in expr_eq()
257 switch (e1->type) { in expr_eq()
275 res = (e1->type == E_SYMBOL && e2->type == E_SYMBOL && in expr_eq()
312 if (e) switch (e->type) { in expr_eliminate_yn()
316 if (e->left.expr->type == E_SYMBOL) { in expr_eliminate_yn()
320 e->type = E_SYMBOL; in expr_eliminate_yn()
332 if (e->right.expr->type == E_SYMBOL) { in expr_eliminate_yn()
336 e->type = E_SYMBOL; in expr_eliminate_yn()
352 if (e->left.expr->type == E_SYMBOL) { in expr_eliminate_yn()
362 e->type = E_SYMBOL; in expr_eliminate_yn()
368 if (e->right.expr->type == E_SYMBOL) { in expr_eliminate_yn()
378 e->type = E_SYMBOL; in expr_eliminate_yn()
398 switch (e->type) { in expr_trans_bool()
407 if (e->left.sym->type == S_TRISTATE) { in expr_trans_bool()
409 e->type = E_SYMBOL; in expr_trans_bool()
430 if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT) in expr_join_or()
432 if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT) in expr_join_or()
434 if (e1->type == E_NOT) { in expr_join_or()
436 if (tmp->type != E_EQUAL && tmp->type != E_UNEQUAL && tmp->type != E_SYMBOL) in expr_join_or()
441 if (e2->type == E_NOT) { in expr_join_or()
442 if (e2->left.expr->type != E_SYMBOL) in expr_join_or()
449 if (sym1->type != S_BOOLEAN && sym1->type != S_TRISTATE) in expr_join_or()
451 if (sym1->type == S_TRISTATE) { in expr_join_or()
452 if (e1->type == E_EQUAL && e2->type == E_EQUAL && in expr_join_or()
458 if (e1->type == E_EQUAL && e2->type == E_EQUAL && in expr_join_or()
464 if (e1->type == E_EQUAL && e2->type == E_EQUAL && in expr_join_or()
471 if (sym1->type == S_BOOLEAN && sym1 == sym2) { in expr_join_or()
472 if ((e1->type == E_NOT && e1->left.expr->type == E_SYMBOL && e2->type == E_SYMBOL) || in expr_join_or()
473 (e2->type == E_NOT && e2->left.expr->type == E_SYMBOL && e1->type == E_SYMBOL)) in expr_join_or()
494 if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT) in expr_join_and()
496 if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT) in expr_join_and()
498 if (e1->type == E_NOT) { in expr_join_and()
500 if (tmp->type != E_EQUAL && tmp->type != E_UNEQUAL && tmp->type != E_SYMBOL) in expr_join_and()
505 if (e2->type == E_NOT) { in expr_join_and()
506 if (e2->left.expr->type != E_SYMBOL) in expr_join_and()
513 if (sym1->type != S_BOOLEAN && sym1->type != S_TRISTATE) in expr_join_and()
516 if ((e1->type == E_SYMBOL && e2->type == E_EQUAL && e2->right.sym == &symbol_yes) || in expr_join_and()
517 (e2->type == E_SYMBOL && e1->type == E_EQUAL && e1->right.sym == &symbol_yes)) in expr_join_and()
521 if ((e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_no) || in expr_join_and()
522 (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_no)) in expr_join_and()
526 if ((e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_mod) || in expr_join_and()
527 (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_mod)) in expr_join_and()
531 if (sym1->type == S_TRISTATE) { in expr_join_and()
532 if (e1->type == E_EQUAL && e2->type == E_UNEQUAL) { in expr_join_and()
539 if (e1->type == E_UNEQUAL && e2->type == E_EQUAL) { in expr_join_and()
546 if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && in expr_join_and()
552 if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && in expr_join_and()
558 if (e1->type == E_UNEQUAL && e2->type == E_UNEQUAL && in expr_join_and()
564 if ((e1->type == E_SYMBOL && e2->type == E_EQUAL && e2->right.sym == &symbol_mod) || in expr_join_and()
565 (e2->type == E_SYMBOL && e1->type == E_EQUAL && e1->right.sym == &symbol_mod) || in expr_join_and()
566 (e1->type == E_SYMBOL && e2->type == E_UNEQUAL && e2->right.sym == &symbol_yes) || in expr_join_and()
567 (e2->type == E_SYMBOL && e1->type == E_UNEQUAL && e1->right.sym == &symbol_yes)) in expr_join_and()
588 static void expr_eliminate_dups1(enum expr_type type, struct expr **ep1, struct expr **ep2) in expr_eliminate_dups1() argument
596 if (e1->type == type) { in expr_eliminate_dups1()
597 expr_eliminate_dups1(type, &e1->left.expr, &e2); in expr_eliminate_dups1()
598 expr_eliminate_dups1(type, &e1->right.expr, &e2); in expr_eliminate_dups1()
601 if (e2->type == type) { in expr_eliminate_dups1()
602 expr_eliminate_dups1(type, &e1, &e2->left.expr); in expr_eliminate_dups1()
603 expr_eliminate_dups1(type, &e1, &e2->right.expr); in expr_eliminate_dups1()
612 switch (e1->type) { in expr_eliminate_dups1()
614 expr_eliminate_dups1(e1->type, &e1, &e1); in expr_eliminate_dups1()
619 switch (type) { in expr_eliminate_dups1()
665 switch (e->type) { in expr_eliminate_dups()
667 expr_eliminate_dups1(e->type, &e, &e); in expr_eliminate_dups()
692 switch (e->type) { in expr_transform()
707 switch (e->type) { in expr_transform()
709 if (e->left.sym->type != S_BOOLEAN) in expr_transform()
712 e->type = E_NOT; in expr_transform()
719 e->type = E_SYMBOL; in expr_transform()
725 e->type = E_SYMBOL; in expr_transform()
731 if (e->left.sym->type != S_BOOLEAN) in expr_transform()
734 e->type = E_SYMBOL; in expr_transform()
740 e->type = E_SYMBOL; in expr_transform()
746 e->type = E_NOT; in expr_transform()
753 switch (e->left.expr->type) { in expr_transform()
768 e->type = e->type == E_EQUAL ? E_UNEQUAL : E_EQUAL; in expr_transform()
776 e->type = e->type == E_LEQ ? E_GTH : E_LTH; in expr_transform()
784 e->type = e->type == E_LTH ? E_GEQ : E_LEQ; in expr_transform()
789 e->type = E_AND; in expr_transform()
791 tmp->type = E_NOT; in expr_transform()
798 e->type = E_OR; in expr_transform()
800 tmp->type = E_NOT; in expr_transform()
810 e->type = E_SYMBOL; in expr_transform()
819 e->type = E_SYMBOL; in expr_transform()
828 e->type = E_SYMBOL; in expr_transform()
848 switch (dep->type) { in expr_contains_symbol()
876 switch (dep->type) { in expr_depends_symbol()
914 struct expr *expr_trans_compare(struct expr *e, enum expr_type type, struct symbol *sym) in expr_trans_compare() argument
920 if (type == E_UNEQUAL) in expr_trans_compare()
924 switch (e->type) { in expr_trans_compare()
932 if (type == E_UNEQUAL) in expr_trans_compare()
942 if (type == E_UNEQUAL) in expr_trans_compare()
946 return expr_trans_compare(e->left.expr, type == E_EQUAL ? E_UNEQUAL : E_EQUAL, sym); in expr_trans_compare()
953 if (type == E_EQUAL) { in expr_trans_compare()
970 return expr_alloc_comp(type, e->left.sym, sym); in expr_trans_compare()
992 enum symbol_type type, in expr_parse_string() argument
999 switch (type) { in expr_parse_string()
1037 switch (e->type) { in expr_calc_value()
1060 printf("expr_calc_value: %d?\n", e->type); in expr_calc_value()
1069 if (e->left.sym->type != S_STRING || e->right.sym->type != S_STRING) { in expr_calc_value()
1070 k1 = expr_parse_string(str1, e->left.sym->type, &lval); in expr_calc_value()
1071 k2 = expr_parse_string(str2, e->right.sym->type, &rval); in expr_calc_value()
1077 if (e->type != E_EQUAL && e->type != E_UNEQUAL) { in expr_calc_value()
1087 switch(e->type) { in expr_calc_value()
1101 printf("expr_calc_value: relation %d?\n", e->type); in expr_calc_value()
1149 if (expr_compare_type(prevtoken, e->type) > 0) in expr_print()
1151 switch (e->type) { in expr_print()
1176 fn(data, NULL, e->type == E_LEQ ? "<=" : "<"); in expr_print()
1185 fn(data, NULL, e->type == E_GEQ ? ">=" : ">"); in expr_print()
1223 sprintf(buf, "<unknown type %d>", e->type); in expr_print()
1228 if (expr_compare_type(prevtoken, e->type) > 0) in expr_print()
1268 if (sym && sym->type != S_UNKNOWN) in expr_print_gstr_helper()
1286 if (e->type == E_OR) { in expr_print_revdep()