static void dt_dis_lda(const dtrace_difo_t *dp, const char *name, dif_instr_t in, FILE *fp) { uint_t var = DIF_INSTR_R1(in); const char *vname; (void) fprintf(fp, "%-4s DT_VAR(%u), %%r%u, %%r%u", name, var, DIF_INSTR_R2(in), DIF_INSTR_RD(in)); if ((vname = dt_dis_varname(dp, var, dt_dis_scope(name))) != NULL) (void) fprintf(fp, "\t\t! DT_VAR(%u) = \"%s\"", var, vname); }
/*ARGSUSED*/ static void dis_pushts(const dtrace_difo_t *dp, const char *name, dif_instr_t instr) { static const char *const tnames[] = { "TYPE_CTF", "TYPE_STRING" }; uint_t type = DIF_INSTR_TYPE(instr); mdb_printf("%-4s DIF_TYPE(%u), %%r%u, %%r%u", name, type, DIF_INSTR_R2(instr), DIF_INSTR_RS(instr)); if (type < sizeof (tnames) / sizeof (tnames[0])) mdb_printf("\t\t! %s", tnames[type]); }
static void dis_lda(const dtrace_difo_t *dp, const char *name, dif_instr_t instr) { uint_t var = DIF_INSTR_R1(instr); const char *vname; mdb_printf("%-4s DIF_VAR(%x), %%r%u, %%r%u", name, var, DIF_INSTR_R2(instr), DIF_INSTR_RD(instr)); if ((vname = dis_varname(dp, var, dis_scope(name))) != NULL) mdb_printf("\t\t! %s", vname); }
/*ARGSUSED*/ static void dt_dis_pushts(const dtrace_difo_t *dp, const char *name, dif_instr_t in, FILE *fp) { static const char *const tnames[] = { "D type", "string" }; uint_t type = DIF_INSTR_TYPE(in); (void) fprintf(fp, "%-4s DT_TYPE(%u), %%r%u, %%r%u", name, type, DIF_INSTR_R2(in), DIF_INSTR_RS(in)); if (type < sizeof (tnames) / sizeof (tnames[0])) (void) fprintf(fp, "\t! DT_TYPE(%u) = %s", type, tnames[type]); }
/*ARGSUSED*/ static void dt_dis_cmp(const dtrace_difo_t *dp, const char *name, dif_instr_t in, FILE *fp) { (void) fprintf(fp, "%-4s %%r%u, %%r%u", name, DIF_INSTR_R1(in), DIF_INSTR_R2(in)); }
/*ARGSUSED*/ static void dis_cmp(const dtrace_difo_t *dp, const char *name, dif_instr_t instr) { mdb_printf("%-4s %%r%u, %%r%u", name, DIF_INSTR_R1(instr), DIF_INSTR_R2(instr)); }