Lines Matching full:dp

152 dt_as_xlate(dt_pcb_t *pcb, dtrace_difo_t *dp,  in dt_as_xlate()  argument
158 assert(i < dp->dtdo_len); in dt_as_xlate()
159 assert(xi < dp->dtdo_xlmlen); in dt_as_xlate()
182 dp->dtdo_buf[i] = DIF_INSTR_XLATE( in dt_as_xlate()
183 DIF_INSTR_OP(dp->dtdo_buf[i]), xi, DIF_INSTR_RD(dp->dtdo_buf[i])); in dt_as_xlate()
186 dp->dtdo_xlmtab[xi] = dnp; in dt_as_xlate()
215 dtrace_difo_t *dp; in dt_as() local
269 if ((dp = pcb->pcb_difo) == NULL) in dt_as()
272 dp->dtdo_buf = dt_alloc(dtp, sizeof (dif_instr_t) * dlp->dl_len); in dt_as()
274 if (dp->dtdo_buf == NULL) in dt_as()
292 dp->dtdo_buf[i++] = dip->di_instr; in dt_as()
316 dp->dtdo_len = dlp->dl_len; in dt_as()
323 for (i = 0; i < dp->dtdo_len; i++) { in dt_as()
324 dif_instr_t instr = dp->dtdo_buf[i]; in dt_as()
330 dp->dtdo_destructive = 1; in dt_as()
336 dp->dtdo_buf[i] = DIF_INSTR_BRANCH(op, in dt_as()
354 dp->dtdo_vartab = dt_alloc(dtp, n * sizeof (dtrace_difv_t)); in dt_as()
355 dp->dtdo_varlen = (uint32_t)n; in dt_as()
357 if (dp->dtdo_vartab == NULL) in dt_as()
370 dp->dtdo_kreltab = dt_alloc(dtp, in dt_as()
372 dp->dtdo_krelen = krel; in dt_as()
374 if (dp->dtdo_kreltab == NULL) in dt_as()
379 dp->dtdo_ureltab = dt_alloc(dtp, in dt_as()
381 dp->dtdo_urelen = urel; in dt_as()
383 if (dp->dtdo_ureltab == NULL) in dt_as()
388 dp->dtdo_xlmtab = dt_zalloc(dtp, sizeof (dt_node_t *) * xlrefs); in dt_as()
389 dp->dtdo_xlmlen = xlrefs; in dt_as()
391 if (dp->dtdo_xlmtab == NULL) in dt_as()
403 dof_relodesc_t *krp = dp->dtdo_kreltab; in dt_as()
404 dof_relodesc_t *urp = dp->dtdo_ureltab; in dt_as()
405 dt_node_t **xlp = dp->dtdo_xlmtab; in dt_as()
422 assert(dp->dtdo_buf[i - 1] == dip->di_instr); in dt_as()
423 dt_as_xlate(pcb, dp, i - 1, (uint_t) in dt_as()
424 (xlp++ - dp->dtdo_xlmtab), dip->di_extern); in dt_as()
458 assert(krp == dp->dtdo_kreltab + dp->dtdo_krelen); in dt_as()
459 assert(urp == dp->dtdo_ureltab + dp->dtdo_urelen); in dt_as()
460 assert(xlp == dp->dtdo_xlmtab + dp->dtdo_xlmlen); in dt_as()
461 assert(i == dp->dtdo_len); in dt_as()
469 if ((dp->dtdo_strtab = dt_alloc(dtp, n)) == NULL) in dt_as()
474 dp->dtdo_strlen = (uint32_t)n; in dt_as()
482 if ((dp->dtdo_inttab = dt_alloc(dtp, in dt_as()
486 dt_inttab_write(pcb->pcb_inttab, dp->dtdo_inttab); in dt_as()
487 dp->dtdo_intlen = (uint32_t)n; in dt_as()
495 dt_node_diftype(dtp, pcb->pcb_dret, &dp->dtdo_rtype); in dt_as()
500 dt_dis(dp, stderr); in dt_as()
502 return (dp); in dt_as()