Lines Matching refs:dp

88 dt_sugar_append_clause(dt_sugar_parse_t *dp, dt_node_t *clause)  in dt_sugar_append_clause()  argument
90 dp->dtsp_clause_list = dt_node_link(dp->dtsp_clause_list, clause); in dt_sugar_append_clause()
97 dt_sugar_prepend_clause(dt_sugar_parse_t *dp, dt_node_t *clause) in dt_sugar_prepend_clause() argument
99 dp->dtsp_clause_list = dt_node_link(clause, dp->dtsp_clause_list); in dt_sugar_prepend_clause()
142 dt_sugar_new_condition_impl(dt_sugar_parse_t *dp, in dt_sugar_new_condition_impl() argument
171 return (dt_node_clause(dp->dtsp_pdescs, newpred, body)); in dt_sugar_new_condition_impl()
180 dt_sugar_new_condition(dt_sugar_parse_t *dp, dt_node_t *pred, int condid) in dt_sugar_new_condition() argument
182 dp->dtsp_num_conditions++; in dt_sugar_new_condition()
183 dt_sugar_append_clause(dp, dt_sugar_new_condition_impl(dp, in dt_sugar_new_condition()
184 pred, condid, dp->dtsp_num_conditions)); in dt_sugar_new_condition()
185 return (dp->dtsp_num_conditions); in dt_sugar_new_condition()
193 dt_sugar_visit_all(dt_sugar_parse_t *dp, dt_node_t *dnp) in dt_sugar_visit_all() argument
210 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
214 dt_sugar_visit_all(dp, dnp->dn_child); in dt_sugar_visit_all()
218 dt_sugar_visit_all(dp, dnp->dn_left); in dt_sugar_visit_all()
219 dt_sugar_visit_all(dp, dnp->dn_right); in dt_sugar_visit_all()
223 dt_sugar_visit_all(dp, ln->dn_list); in dt_sugar_visit_all()
230 dt_sugar_visit_all(dp, dnp->dn_expr); in dt_sugar_visit_all()
231 dt_sugar_visit_all(dp, dnp->dn_left); in dt_sugar_visit_all()
232 dt_sugar_visit_all(dp, dnp->dn_right); in dt_sugar_visit_all()
237 dt_sugar_visit_all(dp, dnp->dn_expr); in dt_sugar_visit_all()
242 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
245 dt_sugar_visit_all(dp, dnp->dn_aggfun); in dt_sugar_visit_all()
250 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
253 dt_sugar_visit_all(dp, dnp->dn_pred); in dt_sugar_visit_all()
256 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
262 dt_sugar_visit_all(dp, inp->din_root); in dt_sugar_visit_all()
267 dt_sugar_visit_all(dp, dnp->dn_membexpr); in dt_sugar_visit_all()
272 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
277 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
282 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
286 dp->dtsp_num_ifs++; in dt_sugar_visit_all()
287 dt_sugar_visit_all(dp, dnp->dn_conditional); in dt_sugar_visit_all()
290 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
293 dt_sugar_visit_all(dp, arg); in dt_sugar_visit_all()
313 dt_sugar_new_clearerror_clause(dt_sugar_parse_t *dp) in dt_sugar_new_clearerror_clause() argument
317 return (dt_node_clause(dp->dtsp_pdescs, NULL, stmt)); in dt_sugar_new_clearerror_clause()
325 dt_sugar_do_if(dt_sugar_parse_t *dp, dt_node_t *if_stmt, int precondition) in dt_sugar_do_if() argument
332 newid = dt_sugar_new_condition(dp, in dt_sugar_do_if()
336 dt_sugar_visit_stmts(dp, if_stmt->dn_body, newid); in dt_sugar_do_if()
346 dt_sugar_visit_stmts(dp, if_stmt->dn_alternate_body, in dt_sugar_do_if()
347 dt_sugar_new_condition(dp, pred, precondition)); in dt_sugar_do_if()
362 dt_sugar_new_basic_block(dt_sugar_parse_t *dp, int condid, dt_node_t *stmts) in dt_sugar_new_basic_block() argument
372 if (dp->dtsp_num_conditions != 0) { in dt_sugar_new_basic_block()
381 dt_sugar_append_clause(dp, in dt_sugar_new_basic_block()
382 dt_node_clause(dp->dtsp_pdescs, pred, stmts)); in dt_sugar_new_basic_block()
390 dt_sugar_visit_stmts(dt_sugar_parse_t *dp, dt_node_t *stmts, int precondition) in dt_sugar_visit_stmts() argument
418 dt_sugar_new_basic_block(dp, precondition, in dt_sugar_visit_stmts()
422 dt_sugar_do_if(dp, stmt, precondition); in dt_sugar_visit_stmts()
431 dt_sugar_new_basic_block(dp, precondition, in dt_sugar_visit_stmts()
463 dt_sugar_parse_t dp = { 0 }; in dt_compile_sugar() local
466 dp.dtsp_dtp = dtp; in dt_compile_sugar()
467 dp.dtsp_pdescs = clause->dn_pdescs; in dt_compile_sugar()
474 dt_sugar_visit_all(&dp, clause); in dt_compile_sugar()
476 if (dp.dtsp_num_ifs == 0 && dp.dtsp_num_conditions == 0) { in dt_compile_sugar()
484 dt_sugar_append_clause(&dp, dt_node_clause(clause->dn_pdescs, in dt_compile_sugar()
488 condid = dt_sugar_new_condition(&dp, in dt_compile_sugar()
499 dt_sugar_new_basic_block(&dp, condid, NULL); in dt_compile_sugar()
501 dt_sugar_visit_stmts(&dp, clause->dn_acts, condid); in dt_compile_sugar()
505 if (dp.dtsp_num_conditions != 0) { in dt_compile_sugar()
506 dt_sugar_prepend_clause(&dp, in dt_compile_sugar()
507 dt_sugar_new_clearerror_clause(&dp)); in dt_compile_sugar()
510 if (dp.dtsp_clause_list != NULL && in dt_compile_sugar()
511 dp.dtsp_clause_list->dn_list != NULL && !dtp->dt_has_sugar) { in dt_compile_sugar()
513 dt_sugar_prepend_clause(&dp, dt_sugar_makeerrorclause()); in dt_compile_sugar()
515 return (dp.dtsp_clause_list); in dt_compile_sugar()