Lines Matching refs:np

51 static struct node *eval_dup(struct node *np, struct lut *ex,
54 enum datatype dtype, struct node *np);
55 static struct node *eval_fru(struct node *np);
56 static struct node *eval_asru(struct node *np);
120 struct node *np, struct lut **globals, in eval_getname() argument
127 if (np->t == T_NAME) in eval_getname()
128 nodep = np; in eval_getname()
129 else if (np->t == T_FUNC && np->u.func.s == L_fru) in eval_getname()
130 nodep = eval_fru(np->u.func.arglist); in eval_getname()
131 else if (np->t == T_FUNC && np->u.func.s == L_asru) in eval_getname()
132 nodep = eval_asru(np->u.func.arglist); in eval_getname()
133 else if (np->t == T_FUNC) { in eval_getname()
134 if (eval_expr(np, ex, events, globals, croot, arrowp, try, in eval_getname()
148 return (np); in eval_getname()
151 funcname, ptree_nodetype2str(np->t)); in eval_getname()
166 eval_cat(struct node *np, struct lut *ex, struct node *events[], in eval_cat() argument
170 if (np->t == T_LIST) { in eval_cat()
176 if (!eval_cat(np->u.expr.left, ex, events, globals, croot, in eval_cat()
179 if (!eval_cat(np->u.expr.right, ex, events, globals, croot, in eval_cat()
188 outfl(O_ALTFP|O_VERB2, np->file, np->line, in eval_cat()
195 if (!eval_expr(np, ex, events, globals, croot, in eval_cat()
198 if (check_expr_args(valuep, NULL, STRING, np)) in eval_cat()
212 struct node *np, struct lut **globals, in eval_func() argument
230 lhs = eval_getname(funcnp, ex, events, np->u.expr.left, globals, in eval_func()
232 rhs = eval_getname(funcnp, ex, events, np->u.expr.right, in eval_func()
258 ASSERT(np->u.expr.right->t == T_QUOTE); in eval_func()
260 nodep = eval_getname(funcnp, ex, events, np->u.expr.left, in eval_func()
294 s = config_getprop(cp, np->u.expr.right->u.quote.s); in eval_func()
295 if (s == NULL && strcmp(np->u.expr.right->u.quote.s, in eval_func()
302 funcname, np->u.expr.right->u.quote.s); in eval_func()
325 np->u.expr.right->u.quote.s, in eval_func()
341 lhs = eval_getname(funcnp, ex, events, np->u.expr.left, globals, in eval_func()
343 rhs = eval_getname(funcnp, ex, events, np->u.expr.right, in eval_func()
411 nodep = eval_getname(funcnp, ex, events, np, globals, in eval_func()
449 nodep = eval_getname(funcnp, ex, events, np, globals, in eval_func()
486 nodep = eval_getname(funcnp, ex, events, np, globals, in eval_func()
513 nodep = eval_getname(funcnp, ex, events, np->u.expr.left, in eval_func()
525 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, "has_fault("); in eval_func()
528 np->u.expr.right->u.quote.s); in eval_func()
539 strcmp(np->u.expr.right->u.quote.s, "") == 0 ? in eval_func()
540 NULL : (char *)np->u.expr.right->u.quote.s); in eval_func()
550 ASSERTinfo(np->t == T_EVENT, ptree_nodetype2str(np->t)); in eval_func()
552 nodep = np->u.event.epname; in eval_func()
562 ent.ename = np->u.event.ename->u.name.s; in eval_func()
574 outfl(O_DIE, np->file, np->line, in eval_func()
583 valuep->v = (uintptr_t)eval_fru(np); in eval_func()
587 valuep->v = (uintptr_t)eval_asru(np); in eval_func()
590 ASSERTeq(np->t, T_GLOBID, ptree_nodetype2str); in eval_func()
593 (void *)np->u.globid.s, NULL) != NULL); in eval_func()
596 return (! platform_call(np, globals, croot, arrowp, valuep)); in eval_func()
598 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, in eval_func()
599 "payloadprop(\"%s\") ", np->u.quote.s); in eval_func()
607 } else if (platform_payloadprop(np, valuep)) { in eval_func()
644 ASSERTinfo(np->t == T_LIST, ptree_nodetype2str(np->t)); in eval_func()
645 ASSERTinfo(np->u.expr.left->t == T_QUOTE, in eval_func()
646 ptree_nodetype2str(np->u.expr.left->t)); in eval_func()
651 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, in eval_func()
654 np->u.expr.left->u.quote.s); in eval_func()
655 ptree_name_iter(O_ALTFP|O_VERB2|O_NONL, np->u.expr.right); in eval_func()
665 (void *)np->u.expr.left->u.quote.s, NULL)) == NULL) { in eval_func()
670 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_func()
695 (void *)np->u.expr.left->u.quote.s, in eval_func()
703 int retval = eval_cat(np, ex, events, globals, croot, in eval_func()
706 outfl(O_ALTFP|O_VERB2, np->file, np->line, in eval_func()
740 if (!eval_expr(np, ex, events, globals, croot, arrowp, try, in eval_func()
742 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, in eval_func()
745 ptree_name_iter(O_ALTFP|O_VERB2|O_NONL, np); in eval_func()
751 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, in eval_func()
754 ptree_name_iter(O_ALTFP|O_VERB2|O_NONL, np); in eval_func()
757 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, in eval_func()
760 ptree_name_iter(O_ALTFP|O_VERB2|O_NONL, np); in eval_func()
803 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, in eval_func()
804 "payloadprop_defined(\"%s\") ", np->u.quote.s); in eval_func()
812 } else if (platform_payloadprop(np, NULL)) { in eval_func()
827 ASSERTinfo(np->t == T_LIST, ptree_nodetype2str(np->t)); in eval_func()
828 ASSERTinfo(np->u.expr.left->t == T_QUOTE, in eval_func()
829 ptree_nodetype2str(np->u.expr.left->t)); in eval_func()
831 outfl(O_ALTFP|O_VERB2|O_NONL, np->file, np->line, in eval_func()
833 np->u.expr.left->u.quote.s); in eval_func()
834 ptree_name_iter(O_ALTFP|O_VERB2|O_NONL, np->u.expr.right); in eval_func()
838 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_func()
869 vals = platform_payloadprop_values(np->u.expr.left->u.quote.s, in eval_func()
894 UNDEFINED, np)) in eval_func()
931 return (!platform_confcall(np, globals, croot, arrowp, valuep)); in eval_func()
933 outfl(O_DIE, np->file, np->line, in eval_func()
950 eval_dup(struct node *np, struct lut *ex, struct node *events[]) in eval_dup() argument
954 if (np == NULL) in eval_dup()
957 switch (np->t) { in eval_dup()
959 return (tree_globid(np->u.globid.s, np->file, np->line)); in eval_dup()
982 return (tree_expr(np->t, in eval_dup()
983 eval_dup(np->u.expr.left, ex, events), in eval_dup()
984 eval_dup(np->u.expr.right, ex, events))); in eval_dup()
987 switch (np->u.expr.temp) { in eval_dup()
989 return (eval_dup(np->u.expr.left, ex, events)); in eval_dup()
991 return (eval_dup(np->u.expr.right, ex, events)); in eval_dup()
993 return (tree_expr(np->t, in eval_dup()
994 eval_dup(np->u.expr.left, ex, events), in eval_dup()
995 eval_dup(np->u.expr.right, ex, events))); in eval_dup()
999 switch (np->u.expr.temp) { in eval_dup()
1001 return (eval_dup(np->u.expr.left, ex, events)); in eval_dup()
1003 return (eval_dup(np->u.expr.right, ex, events)); in eval_dup()
1006 eval_dup(np->u.expr.left, ex, events), in eval_dup()
1007 eval_dup(np->u.expr.right, ex, events))); in eval_dup()
1022 for (np1f = np, np2f = events[0]->u.event.oldepname; in eval_dup()
1039 for (np1t = np, np2t = events[1]->u.event.oldepname; in eval_dup()
1056 nprest = np; in eval_dup()
1076 newnp = newnode(T_NAME, np->file, np->line); in eval_dup()
1083 newnode(T_NUM, np->file, np->line); in eval_dup()
1087 outfl(O_DIE, np->file, np->line, in eval_dup()
1089 "iterator of %s", np->u.name.s); in eval_dup()
1101 newnp = newnode(T_NAME, np->file, np->line); in eval_dup()
1108 newnode(T_NUM, np->file, np->line); in eval_dup()
1112 outfl(O_DIE, np->file, np->line, in eval_dup()
1114 "iterator of %s", np->u.name.s); in eval_dup()
1128 iterinfop = lut_lookup(ex, (void *)np->u.name.s, NULL); in eval_dup()
1131 newnp = newnode(T_NUM, np->file, np->line); in eval_dup()
1144 newnp = newnode(T_NAME, np->file, np->line); in eval_dup()
1151 newnode(T_NUM, np->file, np->line); in eval_dup()
1155 outfl(O_DIE, np->file, np->line, in eval_dup()
1157 "iterator of %s", np->u.name.s); in eval_dup()
1171 newnp = newnode(T_NAME, np->file, np->line); in eval_dup()
1173 newnp->u.name.t = np->u.event.ename->u.name.t; in eval_dup()
1174 newnp->u.name.s = np->u.event.ename->u.name.s; in eval_dup()
1175 newnp->u.name.it = np->u.event.ename->u.name.it; in eval_dup()
1179 eval_dup(np->u.event.epname, ex, events), in eval_dup()
1180 eval_dup(np->u.event.eexprlist, ex, events))); in eval_dup()
1183 return (tree_func(np->u.func.s, in eval_dup()
1184 eval_dup(np->u.func.arglist, ex, events), in eval_dup()
1185 np->file, np->line)); in eval_dup()
1188 newnp = newnode(T_QUOTE, np->file, np->line); in eval_dup()
1189 newnp->u.quote.s = np->u.quote.s; in eval_dup()
1193 newnp = newnode(T_NUM, np->file, np->line); in eval_dup()
1194 newnp->u.ull = np->u.ull; in eval_dup()
1198 newnp = newnode(T_TIMEVAL, np->file, np->line); in eval_dup()
1199 newnp->u.ull = np->u.ull; in eval_dup()
1203 outfl(O_DIE, np->file, np->line, in eval_dup()
1205 ptree_nodetype2str(np->t)); in eval_dup()
1245 eval_potential(struct node *np, struct lut *ex, struct node *events[], in eval_potential() argument
1251 if (eval_expr(np, ex, events, NULL, croot, NULL, 1, &value) == 0) { in eval_potential()
1258 newnp = eval_dup(np, ex, events); in eval_potential()
1292 struct node *np) in check_expr_args() argument
1352 outfl(O_DIE, np->file, np->line, in check_expr_args()
1354 ptree_nodetype2str(np->t)); in check_expr_args()
1360 outfl(O_DIE, np->file, np->line, in check_expr_args()
1362 ptree_nodetype2str(np->t)); in check_expr_args()
1387 eval_expr(struct node *np, struct lut *ex, struct node *events[], in eval_expr() argument
1395 if (np == NULL) { in eval_expr()
1403 switch (np->t) { in eval_expr()
1412 gval = lut_lookup(*globals, (void *)np->u.globid.s, NULL); in eval_expr()
1429 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1433 ASSERT(np->u.expr.left->t == T_GLOBID); in eval_expr()
1435 (void *)np->u.expr.left->u.globid.s, NULL); in eval_expr()
1440 (void *) np->u.expr.left->u.globid.s, gval, NULL); in eval_expr()
1449 np->u.expr.left->u.globid.s, gval->v); in eval_expr()
1453 np->u.expr.left->u.globid.s, in eval_expr()
1477 np->u.expr.left->t == T_GLOBID && in eval_expr()
1479 (void *)np->u.expr.left->u.globid.s, NULL)) == NULL) { in eval_expr()
1480 if (!eval_expr(np->u.expr.right, ex, events, globals, in eval_expr()
1486 (void *) np->u.expr.left->u.globid.s, in eval_expr()
1497 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1500 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1504 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1507 if (check_expr_args(&lval, &rval, UNDEFINED, np)) in eval_expr()
1516 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1519 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1522 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1530 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1533 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1536 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1544 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1547 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1550 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1558 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1561 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1564 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1572 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1575 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1578 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1586 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1589 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1592 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1600 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1603 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1606 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1614 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1617 ASSERT(np->u.expr.right == NULL); in eval_expr()
1618 if (check_expr_args(&lval, NULL, UINT64, np)) in eval_expr()
1626 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1629 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1632 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1640 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1643 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1646 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1666 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1673 ASSERT(np->u.expr.right != NULL); in eval_expr()
1674 if (np->u.expr.right->t == T_CONDELSE) { in eval_expr()
1676 retnp = np->u.expr.right->u.expr.left; in eval_expr()
1678 retnp = np->u.expr.right->u.expr.right; in eval_expr()
1682 retnp = np->u.expr.right; in eval_expr()
1684 outfl(O_DIE, np->file, np->line, in eval_expr()
1701 ptree_nodetype2str(np->t)); in eval_expr()
1706 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1709 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1713 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1716 if (check_expr_args(&lval, &rval, UNDEFINED, np)) in eval_expr()
1726 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1733 np->u.expr.temp = EXPR_TEMP_BOTH_UNK; in eval_expr()
1736 if (!eval_expr(np->u.expr.right, ex, events, globals, in eval_expr()
1738 np->u.expr.temp = EXPR_TEMP_BOTH_UNK; in eval_expr()
1742 np->u.expr.temp = EXPR_TEMP_LHS_UNK; in eval_expr()
1750 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1752 np->u.expr.temp = EXPR_TEMP_RHS_UNK; in eval_expr()
1760 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1767 np->u.expr.temp = EXPR_TEMP_BOTH_UNK; in eval_expr()
1770 if (!eval_expr(np->u.expr.right, ex, events, globals, in eval_expr()
1772 np->u.expr.temp = EXPR_TEMP_BOTH_UNK; in eval_expr()
1776 np->u.expr.temp = EXPR_TEMP_LHS_UNK; in eval_expr()
1785 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1787 np->u.expr.temp = EXPR_TEMP_RHS_UNK; in eval_expr()
1795 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1803 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1806 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1809 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1817 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1820 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1823 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1828 outfl(O_DIE, np->file, np->line, in eval_expr()
1837 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1840 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1843 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1851 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1854 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1857 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1862 outfl(O_DIE, np->file, np->line, in eval_expr()
1871 if (!eval_expr(np->u.expr.left, ex, events, globals, croot, in eval_expr()
1874 if (!eval_expr(np->u.expr.right, ex, events, globals, croot, in eval_expr()
1877 if (check_expr_args(&lval, &rval, UINT64, np)) in eval_expr()
1882 outfl(O_DIE, np->file, np->line, in eval_expr()
1902 for (np1 = np, in eval_expr()
1936 iterinfop = lut_lookup(ex, (void *)np->u.name.s, in eval_expr()
1953 valuep->v = (uintptr_t)np; in eval_expr()
1958 valuep->v = (uintptr_t)np->u.quote.s; in eval_expr()
1962 return (eval_func(np, ex, events, np->u.func.arglist, in eval_expr()
1968 valuep->v = np->u.ull; in eval_expr()
1972 outfl(O_DIE, np->file, np->line, in eval_expr()
1974 ptree_nodetype2str(np->t)); in eval_expr()
1985 eval_fru(struct node *np) in eval_fru() argument
1987 ASSERT(np->t == T_NAME); in eval_fru()
1988 return (np); in eval_fru()
1992 eval_asru(struct node *np) in eval_asru() argument
1994 ASSERT(np->t == T_NAME); in eval_asru()
1995 return (np); in eval_asru()