Lines Matching refs:sdp
236 dtrace_stmtdesc_t *sdp;
238 if ((sdp = dt_zalloc(dtp, sizeof (dtrace_stmtdesc_t))) == NULL)
242 sdp->dtsd_ecbdesc = edp;
243 sdp->dtsd_descattr = _dtrace_defattr;
244 sdp->dtsd_stmtattr = _dtrace_defattr;
246 return (sdp);
250 dtrace_stmt_action(dtrace_hdl_t *dtp, dtrace_stmtdesc_t *sdp)
253 dtrace_ecbdesc_t *edp = sdp->dtsd_ecbdesc;
258 if (sdp->dtsd_action_last != NULL) {
259 assert(sdp->dtsd_action != NULL);
260 assert(sdp->dtsd_action_last->dtad_next == NULL);
261 sdp->dtsd_action_last->dtad_next = new;
265 assert(sdp->dtsd_action == NULL);
266 sdp->dtsd_action = new;
277 sdp->dtsd_action_last = new;
279 new->dtad_uarg = (uintptr_t)sdp;
285 dtrace_stmt_add(dtrace_hdl_t *dtp, dtrace_prog_t *pgp, dtrace_stmtdesc_t *sdp)
293 stp->ds_desc = sdp;
315 dtrace_stmt_destroy(dtrace_hdl_t *dtp, dtrace_stmtdesc_t *sdp)
317 dtrace_ecbdesc_t *edp = sdp->dtsd_ecbdesc;
323 if (sdp->dtsd_action != NULL) {
324 dtrace_actdesc_t *last = sdp->dtsd_action_last;
330 if (ap == sdp->dtsd_action)
333 if (ap->dtad_next == sdp->dtsd_action)
350 for (ap = sdp->dtsd_action; ap != NULL; ap = next) {
351 assert(ap->dtad_uarg == (uintptr_t)sdp);
358 if (sdp->dtsd_fmtdata != NULL)
359 dt_printf_destroy(sdp->dtsd_fmtdata);
361 dt_ecbdesc_release(dtp, sdp->dtsd_ecbdesc);
362 dt_free(dtp, sdp);