Lines Matching defs:dtp
62 dt_pcb_push(dtrace_hdl_t *dtp, dt_pcb_t *pcb)
73 assert(yypcb->pcb_hdl == dtp);
80 dt_idstack_push(&pcb->pcb_globals, dtp->dt_globals);
83 pcb->pcb_hdl = dtp;
84 pcb->pcb_prev = dtp->dt_pcb;
86 dtp->dt_pcb = pcb;
87 dtp->dt_gen++;
95 dtrace_hdl_t *dtp = arg;
97 if (idp->di_gen == dtp->dt_gen)
109 dt_pcb_pop(dtrace_hdl_t *dtp, int err)
115 assert(pcb == dtp->dt_pcb);
131 dt_program_destroy(dtp, pcb->pcb_prog);
133 dtrace_stmt_destroy(dtp, pcb->pcb_stmt);
135 dt_ecbdesc_release(dtp, pcb->pcb_ecbdesc);
137 for (dxp = dt_list_next(&dtp->dt_xlators); dxp; dxp = nxp) {
139 if (dxp->dx_gen == dtp->dt_gen)
140 dt_xlator_destroy(dtp, dxp);
143 for (pvp = dt_list_next(&dtp->dt_provlist); pvp; pvp = nvp) {
145 if (pvp->pv_gen == dtp->dt_gen)
146 dt_provider_destroy(dtp, pvp);
149 (void) dt_idhash_iter(dtp->dt_aggs, dt_pcb_pop_ident, dtp);
150 dt_idhash_update(dtp->dt_aggs);
152 (void) dt_idhash_iter(dtp->dt_globals, dt_pcb_pop_ident, dtp);
153 dt_idhash_update(dtp->dt_globals);
155 (void) dt_idhash_iter(dtp->dt_tls, dt_pcb_pop_ident, dtp);
156 dt_idhash_update(dtp->dt_tls);
158 (void) ctf_discard(dtp->dt_cdefs->dm_ctfp);
159 (void) ctf_discard(dtp->dt_ddefs->dm_ctfp);
176 dt_free(dtp, pcb->pcb_asxrefs[i]);
178 dt_free(dtp, pcb->pcb_asxrefs);
179 dt_difo_free(dtp, pcb->pcb_difo);
184 dtp->dt_pcb = pcb->pcb_prev;
186 yyinit(dtp->dt_pcb);